目标检测实践
文章平均质量分 90
Clichong
这个作者很懒,什么都没留下…
展开
-
YOLOv7 | 模型结构与正负样本分配解析
贴的源码有点多,导致篇幅有点过长。最后对yolov7做一个总结。总的来说,在模型的结构上,yolov7的模型搭建延续了yolov5的手法,提出了ELAN的一个新颖concat结构和一个新颖的MP降维结构。同时,在部分版本中使用上了Rep结构(将3x3卷积,1x1卷积,残差链接)拓扑组合在一起。对于正负样本的匹配上,使用了yoloX的SimOTA匹配方法,与yolov5的匹配方法进行融合。也就是simOTA中的第一步“使用中心先验”替换成“yolov5中的策略”,提供了更加精确的先验知识。...原创 2022-08-28 12:24:04 · 9702 阅读 · 3 评论 -
YOLOv6 | 模型结构与训练策略详细解析
消融实验效果对比yolov6的实验对比更加偏向于轻量级模型的对比。对yolov6的提出,我主要从两个方面去做总结,一个是模型上的改进,另外一个是训练策略上的改进。但是可以看见,无论是模型上的改进还是训练策略上的改进并没有提出一些比较新颖的见解。对于网络结构上的改进,主要是利用了重结构化的思想改进了yolov5的框架,同时将head进行参数的完全独立不共享(这样做可能会有效,但是感觉增加了很大的参数量)。而参数重结构化可以使得推理过程的速度加快,改变网络的拓扑结构。...原创 2022-08-26 21:43:26 · 4013 阅读 · 1 评论 -
DETR | 基于匈牙利算法的样本分配策略
如有错误,恳请指出。前不久,沐神对DETR进行了讲解,其实之前也对DETR进行了介绍,见:论文阅读笔记 | 目标检测算法——DETR。现对DETR的核心内容进行重温,也就是其所提出的目标检测的end-to-end框架,输入的是一张图像,输出的直接是最后的预测标注结果,不再需要后处理(nms非极大值抑制)。为什么希望end-to-end,是因为nms对于模型的调参比较复杂。而且因为不是所有的硬件都支持这nms,所有即使训练好了模型,部署起来也比较困难。DETR既不需要proposal,也不需要anchor,直原创 2022-06-19 17:14:47 · 8245 阅读 · 1 评论 -
YoloX | SimOTA标签匹配策略
如有错误,恳请指出。在之前阅读YoloX的时候已经做过一次笔记,论文主要的重点与更改的地方,亮点介绍了一遍,见:论文阅读笔记 | 目标检测算法——YOLOX但对于YoloX的核心重点,其正负样本的匹配策略在当时其实只是一知半解,现在重新记录一下YoloX所提出的SimOTA标签匹配策略。以下内容是建立在参考内容整理之上的总结。SimOTA可以理解为是一种匹配策略的方法,可以看成是一个最优传输的问题。举一个通俗易懂的例子就是,有2个分配基地与6个周围城市,现在需要考虑一个最优的配送方式来确保分配东西到这几个城原创 2022-06-15 21:44:02 · 9782 阅读 · 8 评论 -
Yolov5-6.0系列 | yolov5的模型网络构建
如有错误,恳请指出。学习yolov5的代码,这里首先从yolov5模型的搭建整个流程来介绍。以yolov5-6.0版本为例,这篇笔记主要是关于yolov5模型的构建分析,其模型的搭建代码全部放在了moodel文件下,主要的yolo.py文件完成了整个模型的搭建(调用了其他的模块)。而关于具体的一些模块的实现,可以参考我的其他文章,这篇笔记主要记录yolo.py这个文件。在yolov5-6.0版本的yolo.py中,主要有3个内容,Detect类,Model类以及parse_model函数,以下就分别介绍这几原创 2022-06-06 11:05:14 · 8451 阅读 · 0 评论 -
Yolov5-6.0系列 | yolov5的模块设计
如有错误,恳请指出。设计思路:对于一张超高分辨率图像来说,理论上可以周期性的抽出像素点重构到低分辨率图像中。虽然也可以使用插值等数学方法直接对超高分辨率图像进行压缩,但是这无疑会丢到一些图像信息。而在Focus模块中,可以对一张超高分辨率图像进行周期性抽取像素点重构为4张低分辨图像,也就是将图像相邻的四个位置进行堆叠,聚焦wh维度信息到c通道空,提高每个点感受野,并减少原始信息的丢失。这样做是为了减少计算量,加开计算速度,而不是增加网络的精度。代码实现:2. Bottleneck这是yolo系列bac原创 2022-06-06 10:50:20 · 2243 阅读 · 3 评论 -
Yolo系列 | Yolov4v5的模型结构与正负样本匹配
如有错误,恳请指出。以下内容是学习了参考资料作的笔记,仅供参考,详细内容见参考资料。这里我主要是对yolov4和v5的模型结构记录,及其了解其正负样本匹配的方式。另外的就是介绍一下Albumentations工具包,这是专门用于计算机视觉中数据增强的一个工具包,提高的数据增强方式比较多,使用也比较方便。文章目录1. Yolov41.1 Yolov4结构1.2 训练策略1.3 正负样本匹配2. Yolov52.1 Yolov5结构2.2 训练策略2.3 正负样本匹配1. Yolov41.1 Yo.原创 2022-04-16 10:24:36 · 9995 阅读 · 16 评论 -
目标检测脚本 | 根据xml文件在原图上显示边界框并保存
"""目的:将原图片(img)与其xml(xml),合成为打标记的图片(labelled),矩形框标记用红色即可已有:(1)原图片文件夹(imgs_path),(2)xml文件夹(xmls_path)思路: step1: 读取(原图片文件夹中的)一张图片 step2: 读取(xmls_path)该图片的xml文件,并获取其矩形框的两个对角顶点的位置 step3: 依据矩形框顶点坐标,在该图片中画出该矩形框 step4: 图片另存为'原文件名'+'_labelled',存原创 2021-06-11 13:01:58 · 1061 阅读 · 0 评论 -
Yolov3-spp系列 | yolov3spp的训练验证与测试过程
如有错误,恳请指出。在上一篇文章中,见《Yolov3-spp系列 | yolov3spp的正负样本匹配》,介绍了yolov3spp的最难部分,就是正负样本的匹配以及损失计算,那么现在就可以了解整个训练的过程,以及验证与测试过程,在知道了yolov3spp如何进行正负样本的匹配,以及如何设置损失函数,剩下的就没有那么令人头疼了。所以接下来,用这一篇文章来对yolov3spp这个目标检测算法的训练、验证以及来做一个总结。文章目录1. 训练过程1.1 参考代码1.2 简要分析2. 验证过程2.1 参考代.原创 2022-04-15 21:58:19 · 1994 阅读 · 0 评论 -
Yolov3-spp系列 | yolov3spp的正负样本匹配
如有问题,恳请指出。在上一篇博客:Yolov3-spp系列 | 训练Pascal voc格式的数据集的基础上,可以跑通之后,就可以一步步调试理解代码了。对于整个yolov3spp的训练阶段,最最重要的就是正负样本匹配的实现。所以,下面,我会记录一下yolov3spp的正负样本匹配实现上。文章目录1. 正负样本匹配1.1 处理过程图1.2 build_targets代码1.3 简要分析2. 损失计算2.1 处理过程图2.2 compute_loss代码2.3 简要分析在yolov3-spp的正负样本.原创 2022-04-15 21:10:34 · 1377 阅读 · 2 评论 -
Yolov3-spp系列 | 训练Pascal voc格式的数据集
如有错误,恳请指出。最近想详细的了解yolov5的实现细节,无奈觉得一下子啃不动,只能出yolov3spp开始啃了,所以最近都在看yolov3spp的项目代码,这里的代码我看的b站博主:霹雳吧啦Wz,其在github提供的代码。这里用三篇博文来分别记录目标检测算法——yolov3spp的使用与大体实现,所以主题分别的数据集的准备、正负样本匹配、训练测试与验证过程。这篇先介绍一下yolov3spp如何跑自己的数据集,毕竟想看懂代码首先得跑通,所以从跑的动开始。这里记录的是比较早的yolov3spp项目.原创 2022-04-15 20:51:58 · 1198 阅读 · 0 评论