自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(238)
  • 收藏
  • 关注

原创 如何在GitHub中下载YOLOv5

(该加速器可以对GitHub进行加速)根据自己的电脑,下载对应的版本加速模式建议改成PAC代理模式下载完成后点击GitHub,一键加速。

2023-11-15 22:53:47 566

原创 yolov5中train.py运行配置以及报错解决方案

yolov5中不同版本的依赖库要求可以在requirements.txt查看。根据你的yolov5版本,选择好满足条件的版本。

2023-11-15 20:14:29 753

原创 注意力机制:一种解决深度学习中的选择问题的方法

自底向上的注意力机制通常基于卷积神经网络(CNN)实现。在CNN中,输入图像被一系列卷积层、池化层和全连接层处理,以提取和聚合图像的特征表示。自底向上的注意力机制从图像的底层特征开始,通过逐步将低级别特征汇聚到高级别特征,逐渐形成对输入图像的完整表示。具体来说,自底向上的注意力机制从图像的像素级特征开始,通过卷积层提取局部特征,如边缘、角点等。随后,这些特征被逐步聚合到更高层,以形成更抽象的语义表示。在这个过程中,不同的特征通道会根据其对任务的重要性进行加权处理,以调整不同特征对最终结果的影响。

2023-11-15 16:08:53 507

原创 yolov5 中detect.py的步骤

该参数指定输入源,可以是文件或文件夹,也可以是0(表示网络摄像头)。默认值是'inference/images',表示使用位于'inference/images'目录下的图像作为输入源。默认值是'yolov5s.pt',表示使用名为'yolov5s.pt'的模型权重文件。你可以指定多个文件路径,用空格分隔。:该参数指定输出文件夹的路径。默认值是'inference/output',表示输出结果将保存在'inference/output'文件夹中。默认值是640,表示将输入图像缩放到640x640的大小。

2023-11-15 10:25:43 351

原创 PAnet网络(路径聚合网络)

PANet(Path Aggregation Network)是一种用于目标检测的神经网络模型,由谢正辉等人于2018年提出。其旨在解决目标检测模型在处理小目标和遮挡目标时的性能问题。PANet 的设计思想在于引入了一种路径聚合机制,以更好地捕获和整合多尺度信息。在传统的目标检测模型中,如 Faster R-CNN,多尺度特征的处理通常采用金字塔结构或特征融合的方式。PANet 通过引入自上而下和自下而上的路径聚合,有效利用不同层次的特征图,使得模型能够更好地适应不同尺度目标和场景。

2023-11-14 21:50:44 1321

原创 GitHub加速神器—Watt Toolkit(原steam++)安装与使用(含443端口占用解决)

「Watt Toolkit」是一个开源跨平台的多功能 Steam 工具箱。它是由江苏蒸汽凡星科技有限公司开发与维护的(GNU)自由开源软件,采用GPL v3开源协议同时发布于Github及Gitee。可用于加速GitHub,其他有趣功能可以自行探索哦!

2023-11-14 20:16:32 20883 3

原创 损失函数DIOU的计算方法

DIOU是的缩写,它是一种衡量预测框与真实框重叠程度的指标,常用于深度学习领域的目标检测或语义分割任务中。

2023-11-14 10:23:20 279

原创 非极大值抑制(Soft-NMS)

在计算机视觉领域,目标检测是一项重要的任务。它的目的是在图像或视频中识别并定位物体。然而,这些传统NMS方法在处理密集物体时可能会产生问题。为了解决这个问题,一种名为Soft-NMS的方法被提出。

2023-11-14 08:57:15 732

原创 CutMix数据增强:提高目标检测模型性能的技术

CutMix是一种数据增强技术,通过将随机的两张样本按比例混合,并按照比例分配分类结果,以丰富数据集的多样性,提高模型的鲁棒性和泛化能力。具体来说,CutMix首先随机生成一个裁剪框,然后裁剪掉A图中的相应位置,用B图相应位置的区域(ROI)放到A中被裁剪的区域中形成新的样本。在计算损失时,将A区域中被cut掉的位置随机填充训练集中其他数据的区域像素值,分类结果按一定比例分配。与Mixup类似,CutMix也是通过将两张图按比例进行插值来混合样本。

2023-11-13 23:34:30 527

原创 非极大值抑制中的DIOU-nms

非极大值抑制(Non-maximum supression)简称NMS,其作用是去除冗余的检测框,去冗余手段是剔除与极大值重叠较多的检测框结果。简单来说,非极大值抑制的作用就是模型检测出了很多框,我应该留下哪些。核心思想是搜索目标局部范围内的边界框置信度最大的这个最优值,去除目标邻域内的冗余边界框。

2023-11-13 21:11:01 621

原创 深入理解 YOLOv4 中的 CIOU 损失函数计算方法

CIOU 损失函数是 YOLOv4 在原有 IOU(Intersection over Union)损失函数基础上的改进版本。它考虑了目标框之间的完整交叉,并引入了修正因子,以更精准地度量目标框之间的相似性。CIOU 损失函数的计算方法相比于传统 IOU 更为复杂,但这也使得模型在训练过程中能够更好地理解目标框的准确位置和形状。CIOU 损失函数在设计上考虑了目标框的形状信息,通过引入修正因子,使得损失对于不同形状的目标框更具鲁棒性。这使得模型更容易捕捉目标的准确形状。

2023-11-13 20:55:32 3953

原创 【目标检测】SPP-Net网络

在此之前,所有的神经网络都是需要输入固定尺寸的图片,比如224*224(ImageNet)、32*32(LenNet)、96*96等。这样对于我们希望检测各种大小的图片的时候,需要经过crop,或者warp等一系列操作,这都在一定程度上导致图片信息的丢失和变形,限制了识别精确度。而且,从生理学角度出发,人眼看到一个图片时,大脑会首先认为这是一个整体,而不会进行crop和warp,所以更有可能的是,我们的大脑通过搜集一些浅层的信息,在更深层才识别出这些任意形状的目标。

2023-11-13 20:30:22 136

原创 Dropblock的处理方法

DropBlock 是一种正则化技术,用于深度神经网络的训练。它是对传统的 Dropout 方法的一种改进,旨在更好地处理卷积神经网络(CNN)中的特征图。

2023-11-13 20:25:01 244

原创 深入理解 YOLOv4 中的 GIOU 损失函数计算方法

虽然GIOU具有上述一些局限性,但它在许多情况下仍然是一个有效的损失函数,并且在实践中被广泛应用。在选择损失函数时,通常需要根据具体任务和数据集的特性来权衡不同的损失函数的优缺点,以取得最佳的性能。

2023-11-13 19:48:19 249

原创 使用ListDataset类加载图像数据集:一种高效的数据加载策略

类提供了一种方便的方式来加载和处理图像数据集,适用于各种机器学习任务中使用图像数据的情况。

2023-11-12 22:54:16 284

原创 json数据的存取

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,以易于人阅读和编写的文本形式表示数据。它基于JavaScript编程语言的子集,但由于其简洁性和易读性,已经成为一种通用的数据格式,被广泛用于前端和后端之间的数据交换。JSON 数据由键值对组成,类似于字典(在Python中的数据结构)或关联数组。

2023-11-12 22:49:13 174

原创 深入了解yolo中的一些函数理解

函数中正确地处理图像。增加的维度是在批量维度(即第一个维度),所以现在你有一个批量的图像,每个图像都是一个单独的批次。用于移除批量维度,因为你可能希望在接下来的处理中只处理单个图像,而不是一个批量的图像。是将一个图像张量增加一个维度,这样做是为了在。函数用于重新调整图像的大小。主要用来显示标量的信息,一般在画。用于对输入的图像进行调整大小。

2023-11-10 23:32:10 205

原创 非极大值抑制(NMS)工作原理

非极大值抑制背后的基本思想是将对同一对象的多次检测减少到一次检测。在对象检测算法中,该模型预测图像中潜在对象周围的边界框。每个边界框都与置信度分数相关联,指示模型对该边界框内存在对象的信念。边界框根据其置信度分数降序进行排序。这个想法是首先考虑置信度分数较高的框。从置信度分数最高的边界框开始。将此框与其余框进行比较。如果存在明显的重叠,请以较低的置信度删除重叠框。移动到下一个得分最高的框并重复该过程,直到所有框都被考虑在内。置信度分数或 IoU 的阈值通常用于确定何时禁止显示边界框。

2023-11-10 23:04:08 219

原创 python中除法的使用

很简单,就是正常的除法运算。

2023-11-10 22:56:42 159

原创 理解机器学习中的prediction[..., 0]和prediction[..., :5]

机器学习中,我们常常需要处理大量的数据,而对这些数据进行操作和提取信息是非常重要的一部分。在深度学习中,经常会遇到类似和的操作,它们其实是一种灵活而强大的数据索引和切片方式,用于获取我们关心的特定部分信息。在这篇博客中,我们将深入探讨这两种操作的意义和作用,并通过具体的例子进行解释。

2023-11-10 21:32:52 314

原创 深入理解 PyTorch 中的 torch.cat 函数

PyTorch 是深度学习领域中广泛使用的框架之一,提供了丰富的工具和函数来处理张量。其中,torch.cat 函数是一个重要的工具,用于在给定维度上拼接张量的函数。也就是说它作用是将一组张量沿着指定的维度连接在一起。

2023-11-10 20:43:22 424

原创 python中torch.unsqueeze()函数理解

是PyTorch库中的一个函数,它被用来在输入张量的特定维度上增加一个维度。这是一个很常用的函数,可以用来改变张量的形状和结构。函数的参数是输入张量和要增加的维度的位置。具体来说,如果你有一个形状为(N, M)的二维张量,会在第一维(即N)后面增加一个维度,得到形状为(1, N, M)的张量。如果你在第二维(即M)后面增加一个维度,那么你会得到形状为(N, 1, M)的张量。

2023-11-10 20:19:57 2028

原创 Python os.makedirs和​os.mkdir详细介绍

os.mkdir(path),他的功能是一级一级的创建目录,前提是前面的目录已存在,如果不存在会报异常,比较麻烦,但是存在即有他的道理,当你的目录是根据文件名动态创建的时候,你会发现他虽然繁琐但是很有保障,不会因为你的一时手抖,创建而创建了双层或者多层错误路径,os.makedirs(path),单从写法上就能猜出他的区别,他可以一次创建多级目录,哪怕中间目录不存在也能正常的(替你)创建,想想都可怕,万一你中间目录写错一个单词.........

2023-11-10 19:38:25 2149

原创 深入探讨PyTorch中的model.apply()方法:初始化神经网络权值的利器

通过方法,我们可以更加好地对整个神经网络进行操作,特别是在初始化权值的场景下。这一方法不仅使代码结构更清晰,而且提高了代码的灵活性和可维护性。希望本文对读者理解并应用提供了一些帮助。如果有任何疑问或建议,欢迎在评论区留言。

2023-11-09 22:45:40 819

原创 pop()函数在python中的用法

方法,你可以方便地从字典中删除指定键对应的键值对,并且可以在删除键值对的同时获取到被删除的值。如果指定的键不存在,你可以通过提供默认值作为参数来控制返回的结果。是一个常用的列表方法,用于删除并返回列表中指定索引位置的元素。方法在字典中用于删除指定键并返回对应的值。,其中包含了几种水果及其对应的数量。在上面的示例中,我们定义了一个列表。,其中包含了一些水果。在上面的示例中,我们定义了一个字典。对应的键值对已经从字典中删除。删除了索引为 2 的元素。

2023-11-09 22:39:17 293

原创 YOLOv3中的目标检测算法解析:前向传播

通过对YOLOv3中的forward_pass()函数的解析,我们深入了解了该函数在目标检测算法中的重要作用。该函数通过预处理、网络前向传播、回归预测和后处理等步骤,实现了高效而准确的目标检测。YOLOv3的算法思想和实现细节为实时目标检测提供了强大的基础,并在许多应用领域取得了广泛的应用。

2023-11-09 22:20:15 129

原创 一文搞懂 python--endswith 的使用

在Python中,endswith是一个字符串方法,用于检查字符串是否以指定的后缀结尾。如果是,返回True,否则返回False。

2023-11-09 20:05:55 779

原创 yolov3的先验框设计方法

2、计算每个真实框和1中初始化先验框1,2.......9的交并比值(IOU),在Yolov3中使用交并比的大小来判断聚类的距离大小;针对先验框所属的真实框,对其按宽高进行排序,取中间值作为新的先验框的尺寸,按照此种方法对所有先验框进行更新;3、经过上一步计算得到每一个真实框和所有先验框的距离D,将其中小于某一阈值的真实框留下来,代表这些框属于该先验框;Yolov3的先验框是通过K-means聚类得到的,Yolov3一共有三个特征层,每个特征层有三种不同类型的先验框,所以Yolov3聚类的先验框个数是九。

2023-11-08 22:37:20 232

原创 一文搞懂 Python--startswith 的使用

startswith是 Python 中的字符串方法,用于检查一个字符串是否以指定的前缀开头。如果字符串以指定的前缀开头,则返回 True,否则返回 False。参数说明:以下是startswithstartend。

2023-11-08 20:40:12 3075

原创 YOLOv3:优化网络结构提升小目标检测能力,并引入多标签分类任务

YOLOv3(You Only Look Once version 3)的设计引入了一些重要的改进,使其在目标检测任务中表现更出色。下面我将介绍其中的一些关键结构和改进。。在目标检测任务中,很多算法在最后一层使用softmax作为分类器,这是因为softmax可以输出所有分类的概率。然而,YOLOv3没有采用这种方法,主要原因是softmax假设每个框只分配一个类别(得分最高的一个),而在一些复杂场景下,一个目标可能有重叠的类别标签,因此softmax不适用于多标签分类。

2023-11-08 19:54:30 533

原创 PyTorch模型组合——深入探讨nn.ModuleList和nn.Sequential

nn.ModuleList 适用于需要在运行时根据条件动态构建不同子模块的情况,而 nn.Sequential 适用于构建线性堆叠的模块序列,适合简化模型的构建和参数管理。通常,你可以在一个模型中同时使用这两种容器,根据需求组合它们以构建更复杂的模型。

2023-11-08 19:49:51 508

原创 神经网络--感受野

在神经网络中,尤其是卷积神经网络(CNN)中,感受野(Receptive Field)是指特征图上的某个点能看到的输入图像的区域。换句话说,特征图上的一个点对应输入图上的一个区域,这个区域就是感受野。它反映的是神经网络中每个神经元(或特征图上的点)对输入图像中不同位置的感受范围。在典型的CNN结构中,FC层(全连接层)每个输出节点的值都依赖FC层所有的输入,而CONV层(卷积层)每个输出节点的值仅依赖CONV层输入的一个区域,这个区域之外的其他输入值都不会影响输出值,该区域就是感受野。

2023-11-07 10:11:43 752

原创 yolov3预测框

预测框是目标检测算法根据图像特征和锚定框的信息,通过模型预测出的物体位置和尺寸。具体来说,预测框是算法根据锚定框(anchor box)和图像特征进行预测得到的物体边界框,包括预测的边界框坐标和类别概率。

2023-11-07 01:26:04 259

原创 YOLOv1中的损失函数:分类、定位与置信度损失的详解与实现

分类损失:模型在分类任务中由于类别预测错误而产生的损失。在目标检测中,分类损失通常来自于模型对于每个网格单元预测的置信度和实际物体类别的误差。由于目标检测任务通常涉及到多个类别的物体,因此分类损失是一个非常重要的组成部分,它可以帮助模型更好地区分不同类别的物体,提高目标检测的准确性。定位损失:模型在定位任务中的误差值,即预测框与实际框之间的差异。在目标检测中,定位损失通常来自于模型对于每个网格单元中物体位置的预测误差。通过计算预测框和实际框之间的差异,定位损失可以用来衡量模型对于物体位置预测的准确性。

2023-11-06 23:40:51 1926

原创 深度解析Yolov2实现不同尺寸图片学习的原因

通过以上分析,我们可以得出结论:Yolov2之所以能够实现不同尺寸图片的学习,主要原因在于其采用了多尺度训练策略以及使用不同尺寸的先验框。这些方法使得Yolov2能够处理任意尺寸的图片,并在目标检测任务中取得良好的性能。这使得Yolov2在实际应用中具有很大的优势,特别是在需要处理各种尺寸图片的场景下。希望本文能够帮助您更好地理解Yolov2算法以及其在处理不同尺寸图片方面的优势。

2023-11-06 22:55:58 288

原创 yolov2中先验框的计算方法

网络(Faster RCNN、SSD、YOLO v2&v3等)中,均有先验框的说法,FasterRCNN中称之为anchor(锚点)SSD称之为prior bounding box(先验框),可以理解是一个概念。Anchor设置的合理与否,极大的影响着最终模型检测性能的好坏。同一位置设置多个不同尺度先验框。

2023-11-06 21:59:07 255

原创 YOLOv2中聚类(K-means)提取先验框的方法

先验框是在训练神经网络之前定义的框,用于指导网络学习如何预测目标的位置和类别。YOLOv2中的先验框是基于训练数据集中的目标边界框而来的,它们代表了不同尺寸和比例的目标。

2023-11-06 21:43:37 578

原创 Darknet网络(深度学习)

在深度学习中,Darknet是一个轻量级的神经网络框架,最初由Joseph Redmon开发,主要用于计算机视觉任务,尤其是目标检测。它以其速度和效率而闻名,尤其是YOLO(You Only Look Once)系列模型,它们可以在实时或接近实时的速度下进行目标检测。在深度学习中,残差块(Residual Block)是一种常用的建筑模块,最初由Kaiming He等人在提出的深度残差学习网络(ResNet)中引入。

2023-11-06 20:32:28 2856

原创 yolov3核心框架分析

Backbone Network(骨干网络):YOLOv3使用一个强大的卷积神经网络作为其骨干网络,用于从输入图像中提取特征。YOLOv3中使用了一个名为Darknet-53的骨干网络,它包含了53个卷积层,可以有效地学习并表示图像的高级特征。Detection Head(检测头):YOLOv3通过将骨干网络的输出连接到多个检测头来实现多尺度目标检测。每个检测头负责在特定的尺度上检测目标,并生成预测框。Anchor Boxes(锚框)

2023-11-06 20:09:00 205

原创 npz的存取

NPZ 是一种文件格式,它是 NumPy 库为了方便存储和读取大型数组而设计的。这种文件格式将多个 NumPy 数组保存在一个文件中,可以方便地在不同的计算机和操作系统之间共享和传输。

2023-11-06 00:43:08 192

深度学习-快速有效实现模型数据的保存和读取

深度学习-快速有效实现模型数据的保存和读取

2023-10-10

使用词向量分辨差评与优质评论-中文文本分类的实战指南数据集

使用词向量分辨差评与优质评论-中文文本分类的实战指南数据集

2023-09-27

对银行的贷款风险用户识别

对银行的贷款风险用户识别

2023-09-11

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除