本文旨在记录如何将YOLO系列模型转换IR数据格式,所有的YOLO模型最初实现框架是Darkent,而Darknet包含有两个文件:
- .cfg 模型配置文件
- .weights 模型权重文件
Intel OpenVINO中并没有直接封装从darknet转换IR的脚本,需要先将Darknet转换Tensorflow,然后再有TensorFlow转换至IR。
1. 转换YOLOv3模型到Tensorflow*
这里我们基于https://github.com/mystic123/tensorflow-yolo-v3 (commit ed60b90)将Darknet转换至TensorFlow,步骤如下:
git clone https://github.com/mystic123/tensorflow-yolo-v3
cd tensorflow-yolo-v3
git checkout ed60b90
准备coco.names和yolov3.weights(yolov3 模型) or yolov3-tiny.weights(yolov3-tiny 模型)
运行转换脚本:
# yolov3
python3 convert_weights_pb.py --class_names coco.names --data_format NHWC --weights_file yolov3.weights
# yolov3-tiny
python3 convert_weights_pb.py --class_names coco.names --data_format NHWC --weights_