最近快要复试了,没怎么搞毕设,那就顺带补充补充理论知识,以后也用得上。
基本为搬运,主要写给自己看的。
神经网络学习小记录60——Pytorch GhostNet模型的复现详解_Bubbliiiing的博客-CSDN博客
Pytorch 搭建自己的Ghostnet-YoloV4目标检测平台(Bubbliiiing)-Ghostnet网络介绍与构建_哔哩哔哩_bilibili
相比yolov3的改进点:
1、Darknet53->CSPDarknet53。
2、加强特征提取网络的改进,使用了SPP和PANet结构。
3、数据增强方面使用Mosaic数据增强。
4、使用CIOU作为回归LOSS
5、使用MISH激活函数
首先学习基于pytorch的GhostNet-YOLOv4
由2020年华为新出的一个轻量级网络——GhostNet
使用ghost模块,代替普通3×3卷积(对比mobilenet v1使用深度可分离卷积代替普通3×3卷积)
核心思想:用计算量更低的操作去生成这些冗余的特征图
先用1×1的卷积对输入特征层进行一个通道数压缩。
当一张图片输入到Ghostnet当中时,我们首先进行一个16通道的普通1x1卷积块(卷积+标准化+激活函数)。
之后我们就开始Ghost Bottlenecks的堆叠了,利用Ghost Bottlenecks,我们最终获得了一个7x7x160的特征层(当输入是224x224x3的时候)。
然后我们会利用一个1x1的卷积块进行通道数的调整,此时我们可以获得一个7x7x960的特征层。
之后我们进行一次全局平均池化,然后再利用一个1x1的卷积块进行通道数的调整,获得一个1x1x1280的特征层。
最后提一嘴,将ghost-net运用到yolov4实际上就是把骨干网络backbone换成ghost-net,后面是一样的去特征金字塔融合。
注意两点:一点是类似yolov3要去指明提供的3个特征层位置。第二点是权值文件(预处理)要更换。
深入浅出Yolo系列之Yolov5核心基础知识完整讲解 - 知乎 (zhihu.com)
输入端:
Mosaic数据增强
自适应锚框计算
自适应图片缩放
backbone:
focus结构
CSP结构
Neck结构
输出端:
bounding box损失函数
nms非极大值抑制
特点:
1、使用了focus网络结构,对特征点信息进行划分,将特征点信息堆叠到通道上。
相当于压缩长宽,拓展通道。
2、使用了CSPnet网络结构,在残差模块堆叠的同时,构建大的残差边,经过少量处理直接连接到最后。
数据增强:Mosaic数据增强
up主:想变强的小应同学
又看了点rv1126,因为快复试不能系统学习。
瑞芯微只有buildroot,没有完整系统的概念,只要300块左右,便宜。不能进行本地编译,只能交叉编译,也就是在电脑上编译,板子上运行。
SDK的prebuild目录里有gcc(用于交叉编译的工具链)
因为学长不在学校,不太能直接上手帮忙,只能想办法自己解决了。
目前pc端代码都还有办法解决。(b站bubbliiing)
关键是部署:
1、ubuntu当时编译库有些问题,考虑重装系统。
2、toolkit工具用来模型转换
3、b站想变强的小应同学
4、tengine推理引擎用于部署
5、autoDL用来训练模型
6、csdn好像有关于yolov5在rv1126上部署的文章
7、gcc工具链用于交叉编译
8、群里说不定有东西(至少有虚拟机,但是教程没有)
9、整体流程
暂时就是上面这些需要后续搞定的了。