yolov3使用openvino模型优化及推理加速流程

2 篇文章 0 订阅
1 篇文章 0 订阅

openvino官网写的比较详细,比较建议看官网学习


# 成功运行的环境 #
python3.5
tensorflow1.12


1.将yolov3模型从darknet转化成tensorflow模型

    git clone https://github.com/mystic123/tensorflow-yolo-v3.git

    cd tensorflow-yolo-v3

    下载coco.names文件以及YOLOv3模型(yolov3.weights)  或者  使用适合您任务的标签和模型

    #  运行转换器
    python3 convert_weights_pb.py --class_names coco.names --data_format NHWC --weights_file yolov3.weights
    #  这时候可以看到项目文件夹下有一个pb文件

    #  --output_graph可以指定输出pb文件的名称
    #  python3 convert_weights_pb.py --class_names coco.names --data_format NHWC --weights_file yolov3.weights  --output_graph yolov3.pb

    #  --size可以指定图像的大小(默认为416)
    #  python3 convert_weights_pb.py --class_names coco.names --data_format NHWC --weights_file yolov3_608.weights --size 608

 

2.将YOLOv3 TensorFlow模型转换为IR

    cd /opt/intel/openvino_2019.1.094/deployment_tools/model_optimizer/extensions/front/tf

    vim yolo_v3.json   #修改classes为你类别的数量并保存

    cd /opt/intel/openvino_2019.1.094/deployment_tools/model_optimizer/

    python3 mo_tf.py  --input_model /path/to/yolo_v3.pb  --tensorflow_use_custom_operations_config ./extensions/front/tf/yolo_v3.json  --batch 1
    #此时可以看到当前目录生成的xml和bin文件

ls 查看当前目录文件

3.使用openvino推理加速

官方运行yolov3的demo在这里

在文件的目录里输入命令

python3.5 object_detection_demo_yolov3_async.py -m pf/yolov3.xml -i cam -l /opt/intel/openvino_2019.1.094/inference_engine/lib/intel64/libcpu_extension_avx2.so

即可成功运行

注意:-i cam 是打开摄像头

4.openvino推理问题记录

问题1:


[ ERROR ] Error reading network: in Layer detector/darknet-53/Conv_1/Conv2D: trying to connect an edge to non existing output port: 2.1
是由于tensorflow版本造成的,tensorflow版本应该<=1.12

此时直接运行推理还是报同样的错误,应该在yolov3模型转化成pb这一部重新开始。

 

(ps:还有一些踩到的坑未记录)

 

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值