海思Hi3516DV300---部署yolov5检测+Sort跟踪算法

Posted Panda_Java

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了海思Hi3516DV300---部署yolov5检测+Sort跟踪算法相关的知识,希望对你有一定的参考价值。

1. 部署yolov5检测+Sort跟踪算法—统计地铁中人流量(双向计数+tof相机)

先用python—yolov5s训练一个best.pt模型
我们与大家部署的更多一个跟踪Sort算法
我们已上传github:如下链接
链接: 海思Hi3516DV300-部署yolov5检测+Sort跟踪算法.

2. yolov5s模型转换onnx模型

  1. pip安装onnx和onnx-simplifier
  2. pip install onnx
  3. pip install onnx-simplifier
  4. git clone https://github.com/ultralytics/yolov5.git
  5. 训练自己的模型步骤参考yolov5官方介绍,训练完成后我们得到了一个模型文件
  6. cd yolov5
  7. python models/export.py --weights 训练得到的模型权重路径 --img-size 训练图片输入尺寸
  8. python -m onnxsim onnx模型名称 yolov5s-simple.onnx 得到最终简化后的onnx模型

3. 在虚拟机中安装caffe (caffe模型的转化是在虚拟机中完成的)

有点复杂,拷贝我的虚拟机吧。在我的笔记本上,我已经装好了。
密码:123

4. onnx模型转换caffe模型

  1. git clone https://github.com/Wulingtian/yolov5_onnx2caffe.git
  2. 解压 yolov5_onnx2caffe
  3. cd yolov5_onnx2caffe
  4. vim convertCaffe.py
  5. 设置onnx_path(上面转换得到的onnx模型),prototxt_path(caffe的prototxt保存路径),caffemodel_path(caffe的caffemodel保存路径)
  6. python convertCaffe.py 得到转换好的caffe模型(可得到一个.prototext文件和一个.caffemodel文件)

5. caffe模型转换wk模型

1.链接: 华为Hi3516DV300 系列芯片平台模型转换,caffe 转NNIE wk注意事项.
2. caffe模型转换wk模型本质:利用.prototext文件和一个.caffemodel文件生成.wk文件
3. 步骤: 按照上述链接新建工程—>双击左边的最下的.cfg文件

4. cfg配置如下:

5. 注意将.cfg文件中compile_mode = 0 改成compile_mode = 1

6. 点击执行 需要一些时间,这取决于你在Ruyi studio 用了多少张图片

6. 在虚拟机中利用RuyiStudio生成的.wk文件转换成model.o文件(最终目标)

  1. mkdir build
  2. cd build
  3. cmake
  4. make
  5. make之后可生成一个可执行文件yolov5_sample
    如图下:

7. 可以用MobaXterm(或者Shell)连接上海思Hi3516DV300开发板

  1. mkdir scw
  2. cd scw
  3. 将yolov5_sample 和检测的视频放在同一个文件夹(scw)下
  4. 并对文件夹scw授权,执行命令:chmod -R 777 scw
  5. 执行可执行文件yolov5_sample: ./yolov5_sample

8. 计数平均准确度超过95%。




9. 参考文献

链接: 基于Caffe格式部署YOLOV5模型.

以上是关于海思Hi3516DV300---部署yolov5检测+Sort跟踪算法的主要内容,如果未能解决你的问题,请参考以下文章

海思芯片(hi3516dv300)uboot启动过程分析

Hi3516开发笔记:海思HI3516DV300芯片介绍,入手开发板以及Demo测试

海思Hi3516DV300之Ubuntu20.04环境搭建和编译

海思Hi3516DV300之Ubuntu20.04环境搭建和编译

海思Hi3516DV300之Ubuntu20.04环境搭建和编译

基于海思Hi3516dv300的u-boot-2016.11分析