· 该项目全部经实测具有可行性,且经过比赛检验
· 不同时间软件版本可能不同,请按文中使用版本为准
软硬件要求
1.树莓派4B与16G及以上的SD卡和读卡器
2.intel NCS 2 神经网络计算棒
3.Windows电脑
4.稳定的WIFI网络
主要步骤
1、模型转化
2、树莓派环境部署
3、模型部署
--------下面开始部署过程--------
一、模型转化
1、weights转化为pb
现在假设你已经有darknet训练好的.weights模型文件
(如何训练请自行搜索)
clone这位PINTO0309日本工程师的仓库
https://github.com/PINTO0309/OpenVINO-YoloV3 # GitHub
https://pan.baidu.com/s/1BjVne9zN4AUpDACv3OBHTw #提取码yolo
得到OpenVINO-YoloV3-master文件夹后,用windows电脑打开cmd,cd到该目录下
运行如下指令
python convert_weights_pb.py --weights_file <path> --size 416 --data_format NHWC
path为 .weights文件的绝对路径
注意:该转化依赖tensorflow、numpy、pillow库,请提前安装好
转化成功后你会得到一个 .pb文件
接下来进行下一步
2、pb转化为IR
进入intel官网
https://software.intel.com/en-us/openvino-toolkit/choose-download/free-download-windows
选择完后点击Download,需要你填写一些信息,照着填就好
下载完进行安装,C盘有足够空间的话默认安装就就好
安装完后找到安装路径
我的是:
C:\Program Files (x86)\Intel\openvino_2021.1.110
在目录下找到deployment_tools文件夹,将其拷贝到任意地方(最好是工程文件夹下)
在cmd中,cd到 deployment_tools\model_optimizer目录下,执行命令
python mo_tf.py --input_model <path> --tensorflow_use_custom_operations_config model_optimizer\extensions\front\tf\yolo_v3.json --input_shape [1,416,416,3] --data_type=FP16
其中 yolo_v3.json 文件内容如下
[
{
"id": "TFYOLOV3",
"match_kind": "general",
"custom_attributes": {
"classes": 80,
"coords": 4,
"num": 9,
"mask": [0, 1, 2],
"entry_points": ["detector/yolo-v3/Reshape", "detector/yolo-v3/Reshape_4", "detector/yolo-v3/Reshape_8"]
}
}
]
classes改为自己模型文件的分类类别数即可
转换需要如下依赖项
tensorflow
network
numpy
test-generator
defusedxml
如果未安装就使用pip下载最新版
pip install <依赖项名>
转换成功后会在 deployment_tools\model_optimizer 目录下生成 .xml .bin .mapping 三个文件
模型转换完毕
下一篇文章将简介如何配置树莓派的环境,敬请期待