在目标检测任务中,我们常使用yolov3, yolov4作为目标检测模型,在实际部署工作中,我们很多边缘设备需要把模型转换成caffe。在次记录下转换过程。
  我们需要在caffe框架中,添加所需要的层。这个转换工具可以参考github上一位大佬项目:

git clone https://github.com/ChenYingpeng/darknet2caffe.git

把大佬mish_layer文件中的mish_layer.hpp和upsample_layer文件中的upsample_layer.hpp复制到安装caffe目录下的include/caffe/layers/文件夹中。

├── mish_layer
│   ├── mish_layer.cpp
│   ├── mish_layer.cu
│   └── mish_layer.hpp
├── pooling_layer
│   └── pooling_layer.cpp
└── upsample_layer├── upsample_layer.cpp├── upsample_layer.cu└── upsample_layer.hpp

把大佬mish_layer文件中的mish_layer.cpp、mish_layer.cu 和 upsample_layer文件中的
upsample_layer.cpp、upsample_layer.cu复制到caffe目录下的/src/caffe/layers/文件夹中。
最后在caffe目录下的/src/caffe/proto/caffe.proto。打开这个文件,添加以下内容:
在423行下面添加:

optional UpsampleParameter upsample_param = 149;
optional MishParameter mish_param = 150;

在最后一行下添加如下内容:

message UpsampleParameter{optional int32 scale = 1 [default = 1];}message MishParameter {enum Engine {DEFAULT = 0;CAFFE = 1;CUDNN = 2;}optional Engine engine = 2 [default = DEFAULT];
}


然后我们重新编译一下caffe,在caffe/build目录下

sudo make clean
sudo make all -j8
sudo make pycaffe -j8

最后执行转换命令

python3 darknet2caffe.py

打印信息如下

I1030 22:34:06.650609  7437 net.cpp:202] layer1-conv does not need backward computation.
I1030 22:34:06.650612  7437 net.cpp:202] input does not need backward computation.
I1030 22:34:06.650614  7437 net.cpp:244] This network produces output layer139-conv
I1030 22:34:06.650619  7437 net.cpp:244] This network produces output layer150-conv
I1030 22:34:06.650621  7437 net.cpp:244] This network produces output layer161-conv
I1030 22:34:06.650758  7437 net.cpp:257] Network initialization done.
unknow layer type yolo
unknow layer type yolo
save prototxt to ./yolov4.protofile
save caffemodel to ./yolov4.caffemode


darknet yolov3 yolov4转caffe 教程相关推荐

  1. 一步一步教你如何将 yolov3/yolov4 转为 caffe 模型

    实际工作中,目标检测 yolov3 或者 yolov4 模型移植到 AI 芯片中,经常需要将其先转换为 caffe1.x 模型,大家可能或多或少也有这方面的需求.例如华为海思 NNIE 只支持caff ...

  2. 小白教程:Ubuntu下使用Darknet/YOLOV3训练自己的数据集

    小白教程:Ubuntu下使用Darknet/YOLOV3训练自己的数据集 YOLOV3官网教程:https://pjreddie.com/darknet/yolo/ 使用预训练模型进行检测 git c ...

  3. AlexeyAB DarkNet YOLOv3框架解析与应用实践(三)

    AlexeyAB DarkNet YOLOv3框架解析与应用实践(三) ImageNet分类 您可以使用Darknet为1000级ImageNet挑战赛分类图像.如果你还没有安装Darknet,你应该 ...

  4. alexeyab darknet 编译_【目标检测实战】Darknet—yolov3模型训练(VOC数据集)

    原文发表在:语雀文档 0.前言 本文为Darknet框架下,利用官方VOC数据集的yolov3模型训练,训练环境为:Ubuntu18.04下的GPU训练,cuda版本10.0:cudnn版本7.6.5 ...

  5. YOLO系列:YOLOv1,YOLOv2,YOLOv3,YOLOv4,YOLOv5简介

    原文链接: https://zhuanlan.zhihu.com/p/136382095 YOLO系列:YOLOv1,YOLOv2,YOLOv3,YOLOv4,YOLOv5简介 YOLO系列是基于深度 ...

  6. YOLO系列总结:YOLOv1, YOLOv2, YOLOv3, YOLOv4, YOLOv5, YOLOX

    文章目录 YOLO系列总结:YOLOv1, YOLOv2, YOLOv3, YOLOv4, YOLOv5, YOLOX 前言 YOLO v1: You Only Look Once: Unified, ...

  7. TVM darknet yolov3算子优化与量化代码的配置方法

    TVM darknet yolov3算子优化与量化代码的配置方法 使用以下接口函数  tvm.relay.optimize  quantize.quantize 实际代码: convert nnv ...

  8. AlexeyAB DarkNet YOLOv3框架解析与应用实践(六)

    AlexeyAB DarkNet YOLOv3框架解析与应用实践(六) Tiny Darknet 听过很多人谈论SqueezeNet. SqueezeNet很酷,但它只是优化参数计数.当大多数高质量的 ...

  9. AlexeyAB DarkNet YOLOv3框架解析与应用实践(五)

    AlexeyAB DarkNet YOLOv3框架解析与应用实践(五) RNNs in Darknet 递归神经网络是表示随时间变化的数据的强大模型.为了更好地介绍RNNs,我强烈推荐Andrej K ...

  10. AlexeyAB DarkNet YOLOv3框架解析与应用实践(四)

    AlexeyAB DarkNet YOLOv3框架解析与应用实践(四) Nightmare 从前,在一所大学的大楼里,西蒙尼亚.维达第和齐瑟曼有一个很好的主意,几乎和你现在坐的大楼完全不同.他们想,嘿 ...

最新文章

  1. C++中“引用”的底层实现
  2. Kettle, Solr
  3. NSOperationQueue线程队列完毕finished状态检测
  4. 南京工程学院计算机组成原理第二版答案,南大__计算机组成原理第二次作业
  5. Oracle入门(十四.4)之在PL / SQL中使用变量
  6. 做一个高一致性、高性能的Flutter动态渲染,真的很难么?
  7. 机器学习--决策树(熵、信息增益(ID3)、C4.5、多方式源码实战)
  8. PyTorch中查看GPU使用情况以及一些重要函数
  9. 怎么用软件测试PSP硬件,PSP适用FC模拟器从安装到使用全面教程
  10. Solidity 教程系列2 - 地址类型介绍
  11. python 第一行包含一个整数n、表示行数_输入 第一行输入一个整数n(1 = n = 100)表示测试样例个数 接下来n行,一...
  12. IDEA-自定义常用代码块
  13. linux的层次结构模型,linux 设备模型(1)
  14. linux 笔记本电脑_购买支持Linux的笔记本电脑
  15. python飞机大战简单的实现
  16. TLS/SSL双向认证
  17. Python黑科技:暴力破解你的密码
  18. 大暑节气海报图片|大暑节气海报文案
  19. Windows下使用GitHub Pages搭建hexo博客详细教程以及Next主题超全配置
  20. Unity读取json大文件卡顿

热门文章

  1. java NumberFormat数字格式化
  2. 黑链-最高明的网站隐藏链接方法
  3. GULP案例1:计算声子色散曲线和态密度
  4. 基于websocket单台机器支持百万连接分布式聊天(IM)系统
  5. Webpack5构建微前端和Web应用程序2022教程
  6. 微PE制作U盘启动盘图文详细教程
  7. Web前端三大框架的总结,你是否知道呢?
  8. 机器人工程师学习计划(计算机相关专业学习计划)
  9. 计算机毕业设计基于asp.net企业差旅管理系统
  10. win10照片不能下一张的解决办法