上一篇在树莓派上搭建好了Openvino的环境,现在在此环境上运行yolov4。
流程:
Tensorflow模型:先将权重文件.weight转化为.pb文件,然后再转化为IR模型的.bin和.xml文件,最后部署到神经计算棒NCS2运行。
Pytorch模型:先将权重文件.pt转化为onnx格式,然后再转化为IR模型的.bin和.xml文件,最后部署到神经计算棒NCS2运行。
1.下载yolov4源码
git clone https://github.com/TNTWEN/OpenVINO-YOLOV4.git
cd OpenVINO-YOLOV4
2.将weight文件转化为pb文件
下载 yolov4.weight 和 yolov4-tiny.weight 放入OpenVINO-YOLOV4下
百度网盘链接:链接:https://pan.baidu.com/s/1lEu2UPsF-EVdPA_1Aao4iw
提取码:az4r
python convert_weights_pb.py --class_names cfg/coco.names --weights_file yolov4-tiny.weights --data_format NHWC --tiny
目录下有输出 frozen_darknet_yolov4_model.pb 就转化成功了。
✎ Tip
如遇到有 ‘cloud’ 导入错误的信息,那是由于编译 TF 时开启了 --nogcp 标志,导致 tensorflow/contrib/cloud 没有被加入 pip 的安装包。这里只要将 init 里的两行代码注释掉即可修复这个bug了。其中必须指定数据格式为NHWC,所以这里需要 reverse_input_channels 翻转一下对应的输入通道。
# 文件位置
/home/pi/my_envs/tensorflow/lib/python3.7/site-packages/tensorflow/contrib/__init__.py
# 把此文件的第30和31行注释掉就可以
本文参考大佬的文章,然后在自己踩坑的地方做一下记录。
大佬文章的链接:用树莓派4b构建深度学习应用(九)Yolo篇