YOLOV5从0到精通
文章平均质量分 72
本专栏介绍了本人再学习yolov5时的相关学习笔记
桦树无泪
智能环境感知博士
古月居签约作者 项目合作chengxiaolong658@163.com
展开
-
工程(八)——yolov5可见光+红外双模态融合(代码)
目前,多模态数据融合主要有三种融合方式:前端融合(early-fusion)或数据水平融合(data-level fusion)、后端融合(late-fusion)或决策水平融合(decision-level fusion)和中间融合(intermediate-fusion)。前端融合将多个独立的融合成一个单一的特征向量,然后输入到机器学习分类器中。由于多模态数据的前端融合往往无法充分利用多个模态数据间的互补性,且前端融合的原始数据通常包含大量的冗余信息。......原创 2022-08-10 22:42:41 · 29334 阅读 · 184 评论 -
Pytorch速成教程(一)整体流程
跟numpy功能一样,但可以GPU加速,和numpy可以相互转化。# 汉字均为我个人理解,英文为原文标注。#1、初始化定义# 继承原有模型# kernel# 定义了两个卷积层# 第一层是输入1维的(说明是单通道,灰色的图片)图片,输出6维的的卷积层(说明用到了6个卷积核,而每个卷积核是5*5的)。# 第一层是输入1维的(说明是单通道,灰色的图片)图片,输出6维的的卷积层(说明用到了6个卷积核,而每个卷积核是5*5的)。原创 2022-08-21 17:47:21 · 1803 阅读 · 3 评论 -
Pytorch速成教程(二) 常用函数
所有神经网络模块的基类,自己定义的模型也成为这个类的子类。在对子类赋值之前,必须对父类进行__init__()调用。原创 2022-09-18 20:37:19 · 1340 阅读 · 0 评论 -
YOLOV5学习笔记(五)——使用代码detect train讲解
代码】YOLOV5学习笔记(五)——使用代码detect train讲解。原创 2022-08-04 17:52:36 · 4550 阅读 · 0 评论 -
YOLOV5学习笔记(四)——项目目录及代码讲解
yolov5采用Mosaic方法,把几个图拼接一个大图,小图在拼接时候还会进行随机的处理。随机变换的yaml文件在data/hyps/hyp.scratch-high.yaml。通过图片处理方法,人为增加图片数据。(a)剪裁、旋转、色调、比例、亮度。utils/activations.py激活函数。它的激活区域不光是方形,还可以是斜边和带弧形的。mish函数比较复杂,为了简单表达,使用分段函数。yolo采用保持原图像宽高比。Hardswish函数。.........原创 2022-08-01 00:10:56 · 6854 阅读 · 0 评论 -
YOLOV5学习笔记(二)——环境安装+运行+训练
每个Epoch第二行是各参数的损失值,在整个Epoch训练结束后,给出精确度等总体信息,并将这个Epoch的过程文件保存在./runs/train/exp文件夹中。train_batch.jpg是一组batch的训练结果图,我们设置一个batch是16,所以16个图片。例如VOC.yaml,文件中给出了训练集和验证集的路径,种类数量为20以及名称。修改【utils】中的【loss.py】里面的两处内容。1.打开你的【utils】文件下的【loss.py】opt.yaml是整个训练过程的配置文件。......原创 2022-07-29 00:18:49 · 11833 阅读 · 2 评论 -
YOLOV5学习笔记(三)——网络组件详解
最大池化一般会导致特征图的减小,需要填充使特征图大小一样,最后拼接。可以增加感受野。原创 2022-07-30 00:11:50 · 1337 阅读 · 0 评论 -
YOLOV5学习笔记(一)——原理概述
先经过卷积神经网络得到特征图像,之后对图像进行网格划分,每个网格单独进行画框检测和类别的概率图,最终得到结果。经过卷积神经网络可以得到不同大小的特征图,对不同大小的特征图进行融合利于小目标的检测。一个网络往往有主干网络(Backbone)+颈部(Neck)+头部(Head)组成。图片卷积经过32倍下采样得到19*19的图片,每个网格都会单独预测和画锚框。mAP是衡量学习出来的模型在所有类别上的好坏是AP的平均值。每个小框内包含了边界框坐标、目标得分和类别得分。AP是衡量学习出来的模型在每个类别上的好坏。..原创 2022-07-27 22:41:29 · 10117 阅读 · 0 评论 -
YOLOV5学习笔记(八)——可视化任意特征层
神经网络是一个黑盒子的概念,能够让特征层可视化,对网络的更改有很大的作用。原创 2022-08-31 15:51:08 · 4811 阅读 · 17 评论 -
YOLOV5学习笔记(十)——GradCAM热力图可视化
将yolo,py文件的class Detect(nn.Module)的def forward(self, x)替换成如下代码。注意在网络训练时候需要改回原来,因为多返回了一个值影响到loss函数,会报错。针对双模态网络,我对代码做了如下修改。在yolo.py同目录下添加两个文件。原创 2022-11-02 17:19:25 · 8091 阅读 · 64 评论 -
YOLOV5学习笔记(九)——损失函数
目标置信度损失由正样本匹配得到的样本对计算,一是预测框中的目标置信度分数 p0,二是预测框和与之对应的目标框的 iou 值piou,其作为 ground-truth。两者计算二进制交叉熵得到最终的目标置信度损失。别损失与置信度损失类似,通过预测框的类别分数和目标框类别的 one-hot 表现来计算类别损失,目标置信度损失和类别损失使用的是带 sigmoid 的二进制交叉熵函数BCEWithLogitsLoss。v5 使用的是 CIoU Loss,后续又优化出EIOU Loss如下所示。原创 2022-10-22 00:11:43 · 7374 阅读 · 0 评论 -
YOLOV5学习笔记(六)——优化网络架构
利用多个小卷积核替代一个大卷积核,先将channel 数减小再扩大(默认减小到一半),具体做法是先进行1×1卷积将channel减小一半,再通过3×3卷积将通道数加倍,并获取特征(共使用两个标准卷积模块),其输入与输出的通道数是不发生改变的。Focus模块的作用是对图片进行切片,类似于下采样,先将图片变为320×320×12的特征图,再经过3×3的卷积操作,输出。32,最终变为320×320×32的特征图,是一般卷积计算量的4倍,如此做下采样将无信息丢失。2. yolo.py文件修改:在yolo.py的。.原创 2022-08-05 20:28:13 · 6530 阅读 · 2 评论 -
YOLOv7学习笔记(一)——概述+环境+训练
原文链接:https://blog.csdn.net/HUASHUDEYANJING/article/details/126045094。训练和yolov5步骤一样见其他笔记:YOLOV5学习笔记(七)——训练自己数据集。这里主要介绍一下训练参数。原创 2022-11-03 19:38:33 · 3421 阅读 · 3 评论 -
YOLOV5学习笔记(七)——训练自己数据集
根据YOLOV5学习笔记六所设计的轻量化小目标检测网络,本节将用tibnet制作的数据集进行训练测试,该数据集是用来检测空中无人机的,可以看到无人机十分的小。该数据集的labels文件是用labelme软件进行标注的xml形式。.........原创 2022-08-09 20:14:08 · 2393 阅读 · 3 评论