【E2031】基于FPGA人脸口罩检测识别设计

2021-10-31 18:41:47      索炜达电子      784     

项目编号:E2031

文件大小:72M

源码说明:带中文注释

开发环境:C编译器、Python

简要概述

主框架使用:yolov2-yolov3_PyTorch

添加bn融合以及FPGA量化部分,并设计实际使用的网络结构slim_yolov2


安装依赖项:

-python3

-pytorch

-pycocotools

-numpy

-opencv


Dataset

将数据集软连接到该文件夹的dataset下


example:

ln -s /data/coco dataset/coco

ln -s /data/VOC dataset/VOC


运行结果:

【E2031】基于FPGA人脸口罩检测识别设计

【E2031】基于FPGA人脸口罩检测识别设计

【E2031】基于FPGA人脸口罩检测识别设计


Train

在此只展示训练口罩检测时用的代码,其余command可以从yolov2-yolov3_PyTorch 中自行查找


VOC

泛用用例:


python train.py -d dataset --cuda -v [select a model] -hr -ms

训练FP32模型:


python train.py -d mask --cuda -v slim_yolo_v2

BN融合:


python conv+bn2conv.py -d mask --cuda -v slim_yolo_v2 -r your_weight_path

BN融合后微调精度:


python retune_bias_quantize.py -d mask --cuda -v slim_yolo_v2_q_bf -r your_weight_path

FPGA模拟量化:


python retune_bias_quantize.py -d mask --cuda -v slim_yolo_v2_q_bf -q -r your_weight_path

寻找FPGA定点计算时防止溢出而加上的每层的scale_retune:


python retune_bias_quantize_findbest.py -d mask --cuda -v slim_yolo_v2_q_bf -q -r your_weight_path

You can run python train.py -h to check all optional argument. .


test

VOC

python test.py -v slim_yolo_v2_q_bf -d mask --cuda --trained_model your_weight_path 

Detection

python demo.py -v slim_yolo_v2_q_bf --mode camera --trained_model your_weight_path

目录│文件列表:

 ├ 主框架

 │  └ yolov2-yolov3_PyTorch.rar

 ├ 开源人脸口罩检测模型和数据

 │  └ FaceMaskDetection.rar

 └ 项目源码

    └ FPGA-YOLO-pytorch.rar


TAG口罩
  • 2 次
  • 200 分