• 地平线J3平台yolov3模型部署


    1  环境搭建(参看另外文档)

    2 将caffe模型(浮点型)定点量化

    2.1  在工作目录下创建个人目录

       (1) 工作目录为:/tp_work/ddk/samples/ai_toolchain/horizon_model_convert_sample/04_detection

       (2) 在该目录下创建个人目录 08_tp_yolov3

       (3) 将02_yolov3里的mapper文件夹全部拷贝进 08_tp_yolov3

       (4) cd 08_tp_yolov3/mapper  进入mapper目录

    (5)创建weights文件夹,用于存放训练权重文件和网络文件 mkdir weights

    (6)拷贝 model_zoo里的yolov3的示例权重和网络文件

    cp ../../../../model_zoo/mapper/detection/yolov3/* weights/

    也可以用自己训练出来的权重文件,如果使用darknet框架,则需要将模型文件转成caffemodel,参见另外文档。

    此时目录树为:

     2.2   模型验证

    验证所使用的网络模型是否符合地平线的算子约束,并生成相应结果信息。

    vim 01_check.sh

     将proto和caffe_model的路径改为自己的模型网络文件(*.prototxt)和权重文件(*.caffemodel)的路径。

    执行脚本: sh 01_ckeck.sh

     结果没有报错,说明网络模型符合地平线J3平台算子约束。

    2.3  模型转换

    将训练出来的复电模型转换为J3平台支持的混合异构模型。

    vim yolov3_config.yaml

     

     将图中三个路径改为自己的路径,将preprocess_on 设置为True,确保校准图像和训练图像大小不一致时进行适配。

    执行 sh 03_build.sh

     该脚本完成 模型解析(转成onnx)->模型优化->模型校准->模型量化->模型编译过程,最终生成结果如下图所示:

     完成整个转换过程。

  • 相关阅读:
    day40_jQuery学习笔记_01
    jQuery选择什么版本 1.x? 2.x? 3.x?
    6个关于dd命令备份Linux系统的例子
    快速掌握grep命令及正则表达式
    Linux下删除乱码或特殊字符文件
    在 Linux 中永久修改 USB 设备权限
    CentOS 7 中 hostnamectl 的使用
    申请红帽企业版Linux开发者订阅
    CentOS6 下rsync服务器配置
    Centos6下DRBD的安装配置
  • 原文地址:https://www.cnblogs.com/tianpeng-blog/p/15151445.html
Copyright © 2020-2023  润新知