
YOLO系列
文章平均质量分 81
记录YOLO系列目标检测学习过程
彭祥.
本科主修软件开发,熟练掌握Spring、SpringBoot等主流开发框架。研究生期间专注于计算机视觉方向,深入研究目标检测技术,对DETR、YOLO等先进模型有深入理解和实践经验。目前工作主为图像与点云方面,涉及图像分类、实例分割、目标追踪、姿态估计等领域,目前完成无人机仿线飞行、安规考核系统等。点云方面主要完成航线规划单机版软件,包含点云分类、航线规划等功能。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
大疆无人机使用eport连接Jetson主板实现目标检测
本文详细介绍了在Jetson边缘计算主板上配置无人机导线追踪系统环境的过程。主要内容包括:更新软件库、安装Opus音频编解码器、FFmpeg多媒体框架、配置OpenCV/CUDA/cudNN推理环境,以及安装USB通信驱动。重点阐述了如何设置系统开机自启服务,包括djixunxian.service和jetsongadget.service的部署与启动,并提供了项目编译和常见错误解决方案。当出现USB设备无法识别时,可通过安装CH34驱动解决。最后展示了系统成功运行时的推理效果截图,验证了环境配置的正确性。原创 2025-08-06 22:23:43 · 696 阅读 · 0 评论 -
智能安规考核系统:AI(YOLO+讯飞语音)赋能千人千面
摘要 "千人千面智能安规考核系统"是一款基于PyQt5框架开发的智能化安全规程考核平台,融合了YOLOPose姿态估计、人脸识别、YOLOv11目标检测和语音识别等多模态AI技术。系统通过ONNX格式实现模型轻量化部署,利用ONNX Runtime和GPU加速提升性能,并打包为独立可执行程序便于工业现场部署。该系统可自动评估安全装备佩戴、操作规范等指标,实现了电力、建筑等行业安全考核的智能化与个性化。 关键特性: 多模态AI评估体系 跨平台ONNX模型部署 实时性能优化 一体化考核解决方原创 2025-07-30 14:17:06 · 2983 阅读 · 0 评论 -
YOLO+ONNX+PyQt打包为exe踩坑记录
摘要:博主开发了一款实时姿态估计和目标检测软件,最初使用PyTorch+PyQt方案导致打包文件过大(2.7G),后改用ONNXRuntime推理模型优化体积。在Python 3.8环境下成功打包时,发现缺少onnxruntime_providers_shared.dll依赖,通过修改spec文件添加依赖项和资源文件路径后解决。最终使用PyInstaller完成打包,生成的可执行文件位于dist目录。文章详细记录了开发过程中的环境配置(包含完整依赖列表)和打包技术细节。原创 2025-06-26 17:43:56 · 311 阅读 · 0 评论 -
千人千面电网安全规范考核系统
本文介绍了千人千面安全规范考核系统的算法实现,该系统包含安全帽、工作服及绝缘手套佩戴检测等功能,采用YOLO系列算法结合目标检测、姿态估计等技术。系统使用Ultralytics框架进行模型训练,并转换为ONNX/TFLite格式部署。环境配置基于Python 3.10,依赖ONNX Runtime、FastAPI等工具。项目提供两种运行方式:直接执行main.py或通过FastAPI接口调用(端口16566)。该系统实现了安全装备智能检测的算法集成与部署方案。原创 2025-06-25 09:54:20 · 210 阅读 · 0 评论 -
YOLO算法(姿态估计+ROI区域提取+图像分类)实现头发规范判断
本文提出了一种基于姿态估计和图像分类的头发长度检测方法。首先利用姿态估计算法提取人体关键点,通过耳朵和肩膀位置确定颈部ROI区域。然后构建一个二分类数据集(合格/不合格),并使用数据增强技术扩充样本。最后训练YOLO衍生的分类模型进行判断。该方法相比传统目标检测方案,计算效率更高,且能充分利用已有姿态估计结果。实验表明,该方法在头发长度检测任务上取得了良好效果。原创 2025-06-17 08:46:57 · 675 阅读 · 0 评论 -
记录从数据采集到模型部署全过程——带你快速入门算法工程师
本文介绍了基于深度学习的布控球检测系统实现方案。首先通过数据采集(57张原始图像)和标注,采用翻转、裁剪、色调调整等数据增强手段扩充至450余张训练样本。系统核心功能包括检测布控球与三脚架的摆放关系(要求放置在三角架上)、测量离地高度(>1米)以及计算布控球视角夹角(<45度)。技术实现流程涵盖数据集处理、模型训练与部署,重点展示了数据增强代码实现,包括保持长宽比的图像缩放、随机水平/垂直翻转、中心裁剪等方法,为后续目标检测模型的准确率提升奠定基础。原创 2025-06-16 11:27:15 · 1035 阅读 · 0 评论 -
YOLO电力物目标检测训练
摘要:本文介绍了电力物检测数据集的构建与YOLO目标检测实验过程。使用无人机采集600余张图像,包含防振锤、间隔棒和压接管三类目标。通过labelme标注工具生成JSON文件后,编写Python脚本将其转换为YOLO格式,并按8:2比例划分训练集和验证集。代码实现了矩形框坐标转换和数据集自动分割功能,为后续YOLO模型训练提供了规范化的数据准备流程。原创 2025-06-10 18:05:34 · 413 阅读 · 0 评论 -
安全帽目标检测
安全帽数据集处理摘要 本文介绍了如何使用HelmentDetection安全帽数据集(5000张VOC格式图像,包含head、helmet、person三类)进行YOLO格式转换。主要步骤包括: 收集VOC标注中的所有类别并创建类别映射 将VOC格式转换为YOLO格式(归一化坐标) 分割数据集为训练集(80%)、验证集(20%)和测试集(10%) 组织文件结构,创建images和labels目录并按子集分类 代码提供了完整的格式转换和数据集划分功能,实现从VOC到YOLO格式的无缝转换,为后续目标检测模型训原创 2025-05-30 16:35:07 · 582 阅读 · 0 评论 -
YOLO人体姿态估计Pytorch推理&&ONNX模型推理
本文介绍了基于YOLOv11n-pose模型的姿态估计方法,包含模型转换与两种推理方式。首先解析了COCO数据集的17个人体关键点(0-16序号),并说明YOLO-pose模型输出维度(1,56,8400)的含义:其中56包含4个坐标值、1个置信度及17个关键点(每个关键点含x,y坐标及可见性v值)。通过ultralytics框架可直接推理,同时演示了将pt模型转为onnx格式的方法。最后详细展示了onnx推理的后处理流程,包括坐标转换、非极大值抑制(NMS)以及关键点解析。实验结果表明,该方法能有效检测人原创 2025-05-28 11:27:19 · 545 阅读 · 0 评论 -
YOLO12的A2C2f模块解析
YOLOv12通过引入基于注意力机制的A2C2f模块,成功突破了传统基于卷积神经网络(CNN)的YOLO框架在速度与精度之间的权衡。A2C2f模块结合了Transformer注意力机制和多层感知机(MLP),在保持高效推理速度的同时,显著提升了目标检测性能。该模块包含卷积层(cv1和cv2)用于特征提取,以及多个ABlock,每个ABlock由注意力机制(AAttn)和MLP组成,分别用于生成查询、键、值向量和特征维度变换。YOLOv12的创新设计使其在实时性与检测精度之间实现了更好的平衡,为目标检测领域提原创 2025-05-17 12:06:22 · 1689 阅读 · 0 评论 -
关于ultralytics框架计算出的结果与COCOtools结果不一致问题
博主在实验中对比了ultralytics框架和COCOtools中不同目标检测方法(如YOLO和DETR)的AP(Average Precision)计算结果,发现两者存在显著差异。在ultralytics框架中,YOLO类方法的AP值高于DETR类方法,而在COCOtools中,DETR类方法的AP值则优于YOLO类方法。博主排除了IoU阈值、面积范围和最大检测数等常见因素,认为这些差异可能与计算方式或框架实现细节有关,但具体原因尚不明确,希望与读者进一步探讨。原创 2025-05-13 09:38:51 · 230 阅读 · 0 评论 -
ultralytics框架计算大中小目标检测精度
先前在跑DETR类目标检测算法时,由于其默认使用的是COCO数据集,所以输出结果中包含不同尺度的检测精度,即大、中、小目标。而现在博主在使用时,发现其并没有这个指标效果,但在先前的实验中,博主发现DETR中计算这些指标使用的是这个工具包,那么我们就可以将检测结果和标注数据采用这个工具进行计算。话不多说,我们开整。原创 2025-05-12 20:59:31 · 471 阅读 · 0 评论 -
YOLO使用CableInspect-AD数据集实现输电线路缺陷检测
本文介绍了使用CableInspect-AD数据集进行输电线路缺陷检测的流程。首先,将COCO格式的数据转换为YOLO格式,通过Python脚本将json文件转换为txt格式的标签文件,并存储在labels文件夹中。接着,提取数据集中的图像文件到images文件夹,并根据标签文件进行数据集的划分。整个过程包括数据格式转换、图像提取和数据集划分,为后续的模型训练和缺陷检测提供了基础。原创 2025-05-09 16:06:43 · 329 阅读 · 0 评论 -
大疆无人机搭载树莓派进行目标旋转检测
首先是环境创建,创建虚拟环境,名字叫。请求结果,可以看到基本稳定在。毫秒作用,足够满足我的要求。原创 2025-05-09 14:33:52 · 520 阅读 · 0 评论 -
基于 PyQt 的YOLO目标检测可视化界面+ nuitka 打包
在人工智能和计算机视觉领域,是一种广泛使用的实时目标检测算法。为了直观地展示YOLO算法的检测效果,我们使用Pyqt框架进行检测结果的可视化,同时为了使其能够脱离Python环境,我们将模型文件转换为ONNX格式,并使用nuitka进行打包。原创 2025-05-04 20:59:10 · 700 阅读 · 0 评论 -
YOLO旋转检测模型简化
尽管从精度角度来看,其检测效果下降了许多(大概30%),但其模型大小也由原本的32MB下降到了700KB,这等程度的模型体积下降幅度还是深得我心的,毕竟我的这个项目场景对精度的要求并没有很高。YOLO模型作为单阶段目标检测方法的代表,其已经应用在多个领域。原创 2025-04-27 16:48:30 · 297 阅读 · 0 评论 -
YOLO目标检测之模型剪枝
剪枝(Pruning)是一种模型压缩技术,旨在通过移除神经网络中不重要的权重或神经元来减少模型的大小和计算复杂度,同时尽量保持模型的性能。原创 2025-04-27 11:28:44 · 774 阅读 · 0 评论 -
YOLO系列模型格式转换为 tf-lite 与模型量化
在YOLO中,使用的是YOLO自己的数据格式,因此我们需要将其进行转换,并将其进行训练,这里我就不再赘述了。综上,由于我们需要将这个模型部署在安卓端等算力不足的边缘设备上,所以tf-lite变成了我们的首选。然而,不幸的是,量化后的int8模型精度很差,无法满足我们的需求,我们也就只能选择。格式,这里就来到了我们进入的重点,我们要实现将 .pt 格式的模型文件转换为。框架中,已经帮我们封装好了相关方法,我们只需要配置好环境,就可以了。这里我们需要注意的是,转换代码中,需要我们手动下载安装。原创 2025-04-10 16:57:41 · 1525 阅读 · 0 评论 -
ultralytics实现DeepSort之级联匹配
DeepSort算法引入的特征提取模块,并在匹配时首先使用特征作为匹配指标,因此,这使得DeepSort算法能够在目标遮挡后再次出现时能够重新匹配成功(ReID),当然这也意味着其速度上较不使用特征提取方法的跟踪算法,(如ByteTrack)速度慢了一些。原创 2024-09-12 18:09:20 · 4879 阅读 · 0 评论 -
ultralytics实现DeepSort目标追踪算法之特征提取网络
我们看下这个网络具体是如何实现的,其实这里我们并不需要了解其具体结构,只需要知道其输入输出即可,根据 x = torch.randn(4,3,128,64)可知,其传入的数据即为图像,即(batch-size,通道数,宽,高)的格式,而根据最后连接的分类头nn.Linear(256, num_classes),可知,其最终输出的结果必与类别数有关。事实上最终的结果为(batch-size,751)即该图像中目标的类别。原创 2024-09-07 00:07:24 · 6600 阅读 · 0 评论 -
ultralytics框架实现ByteTrack目标追踪算法
在框架中,提供了两种用于目标追踪的算法,分别是ByteTrack算法与Botsort算法,这两种算法都是在Sort算法的基础上改进的,今天,我们学习一下ByteTrack算法。原创 2024-09-04 23:22:10 · 8515 阅读 · 0 评论 -
YOLO+Sort实现目标追踪
在前面的目标检测、实例分割的学习中,我们多是对单张图像进行处理,而事实上在我们的实际应用中多数需要对视频进行操作,当然这个操作也是讲视频转换为一帧帧的图像,但博主发现在这个算法平台中,针对视频的处理多调用track方法,即跟踪算法,比如在车辆测速、车辆测距等应用中,那么跟踪算法到底是如何实现的呢,这便是我们今天要学习的内容。原创 2024-08-25 00:19:17 · 8751 阅读 · 0 评论 -
ultralytics实例分割mask读取
在前面学习YOLOv8时,博主对如何将坐标点转换为mask特征图较为疑惑,因此自己尝试一下。原创 2024-08-20 19:51:25 · 6298 阅读 · 0 评论 -
CV党福音:YOLOv8实现实例分割(三)之损失函数
本章梳理了预测结果与真值的损失计算过程,可以加深我们对模型训练的理解。原创 2024-08-17 13:25:15 · 7529 阅读 · 0 评论 -
利用YOLOv8实例分割实现图像抠图
实例分割可以提取出图像出目标的轮廓,因此我们可以用于图像抠图。原创 2024-08-16 13:28:49 · 5822 阅读 · 0 评论 -
CV党福音:YOLOv8实现实例分割(二)之训练过程
在上一篇博客中,我们已经了解了实例分割的基本流程,本章则是对数据集、以及训练过程等进行进一步的学习。在本次训练中,博主使用的是这个小数据集进行实验,该数据集内只有张图像:我们以第一张图像为例,其标签标注如下:按行划分目标,第一个数字为目标类别,后面每两个数值为一个坐标(即标注的关键点的坐标)第一张图像的检测与分割结果如下:与语义分割不同,实例分割一般是首先使用目标检测算法找到图像中的不同实例对象,然后对每个实例对象进行语义分割。在YOLOv8中则是在原本检测头的基础上增加了分割头,两者共同作用。总的来原创 2024-08-16 13:25:15 · 1792 阅读 · 0 评论 -
CV党福音:YOLOv8实现分类
YOLO作为目标检测领域的常青树,如今以及更新到了YOLOv10,并且还有YOLOXYOLOS等变体,可以说该系列已经在目标检测领域占据了半壁江山,如今,YOLOv8的发行者竟有一统江山之意,其在提出的框架中不但集成了v3到v10的YOLO目标检测模型,还包揽了分类,语义分割、目标追踪和姿态估计等计算机视觉任务。那么,今天我们就来看看YOLOv8是如何将这些计算机视觉任务融合在一起吧其实从思路上很简单,YOLOv8继续沿用了YOLO的基本架构,即将整个模型分为特征提取骨干网络(Backbone。原创 2024-08-07 21:02:23 · 3031 阅读 · 0 评论 -
YOLOv8目标检测算法改进之融合SCconv的特征提取方法
经过上述过程,我们便将SCconv模块插入到了YOLOv8模型中,当然这个改进是十分简单的,我们可以对SCconv模块再进行改进,让其更加的适配YOLOv8检测模型,同时我们需要记住的是,写一篇论文不但要求你的创新点要新颖,如何去描述你的创新更是重中之重,正所谓做的好不如说的好(博主还是希望能够既做的好,又说得好)。原创 2024-08-02 15:52:40 · 4058 阅读 · 2 评论 -
可视化目标检测算法推理部署(三)YOLOv8模型视频推理
至此,模型的视频推理过程便完成了,但我们在UI界面上却发现,上传的视频是没有画面的,同时,返回的视频虽然成果保存,但其在界面上却显示为NaN其实,对于学习YOLO模型推理的过程而言,这已无伤大雅,但博主还有那么一点完美主义精神的,看看能否解决呢?经过查询相关资料,发现这是由于OpenCV合成视频操作造成的,解决方式是使用moviepy,具体如何做呢?原创 2024-07-31 10:56:09 · 1318 阅读 · 0 评论 -
可视化目标检测算法推理部署(二)YOLOv8模型图像推理
在先前的RT-DETR中,博主使用ONNX模型文件进行了视频、图像的推理,在本章节,博主打算使用YOLOv8模型进行推理,因此,我们除了需要获取YOLOv8的ONNX模型文件外,还需要进行一些额外的操作,如NMS。原创 2024-07-30 16:08:42 · 1464 阅读 · 1 评论 -
可视化目标检测算法推理部署(一)Gradio的UI设计
自定制组件:Blocks构建应用相比Interface,Blocks提供了一个低级别的API,用于设计具有更灵活布局和数据流的网络应用。Blocks允许控制组件在页面上出现的位置,处理复杂的数据流(例如,输出可以作为其他函数的输入),并根据用户交互更新组件的属性可见性。#设置输入组件# 设置输出组件#设置按钮#设置按钮点击事件首先,注意子句。Blocks应用程序代码将包含在这个子句中。接下来是组件。这些是用于Interface的相同组件。然而,组件不是传递给某个构造函数,而是在with。原创 2024-07-29 17:28:18 · 1734 阅读 · 0 评论 -
RT-DETR:端到端的实时Transformer检测模型(目标检测+跟踪)
博主一直一来做的都是基于的目标检测领域,相较于基于卷积的目标检测方法,如YOLO等,其检测速度一直为人诟病。终于,RT-DETR横空出世,在取得高精度的同时,检测速度也大幅提升。那么RT-DETR是如何做到的呢?在研究RT-DETR的改进前,我们先来了解下DETR类目标检测方法的发展历程吧DETRNMSDAB-DETRDETR100DETRDAB-DETRH-DETR然而,上述方法尽管已经大幅提升了检测精度,降低了计算复杂度,但其受本身高计算复杂度的制约,DETR。原创 2024-05-31 16:45:01 · 8594 阅读 · 23 评论 -
YOLO实验记录
可以看出其准确度还是有的,但其召回率太低,很多物体都没检测出,博主这里将lou设置为0.5,置信度设置为0.5,理论上该数值算是较为正常的,想是否是由于远距离导致目标尺寸变小导致的呢?考虑到是否是模型问题,将模型进行修改并再次开始训练,此次没有从0开始训练,而是使用了预训练权重,并设置batch-size=24,epoch=600。cos下降策略到最后一步迭代的最后时,系数刚好为cos(pi/2),即为0,开始迭代时系数为为cos(0),即为1,中间遵循余弦曲线的方式下降。训练epoch:800。原创 2024-05-03 15:24:56 · 788 阅读 · 0 评论 -
YOLO目标检测算法调试过程学习记录
先前已经完成过YOLO系列目标检测算法的调试过程,今天主要是将所有的调试加以总结这里的conda环境就不再赘述了,直接使用requirement.txt文件的即可,也可以参考YOLOX的配置过程5。原创 2023-08-20 13:12:57 · 625 阅读 · 0 评论 -
YOLOX算法调试记录
YOLOX是在YOLOv3基础上改进而来,具有与YOLOv5相媲美的性能,其模型结构如下:由于博主只是要用YOLOX做对比试验,因此并不需要对模型的结构太过了解。先前博主调试过YOLOv5,YOLOv7,YOLOv8,相比而言,YOLOX的环境配置是类似的,但其参数设置太过分散,改动比较麻烦,就比如epoch这些参数竟然要放到yolox_base.py文件中去继承,而不是直接在train.py中指定。话不多说,我们开始调试过程。原创 2023-08-19 19:52:13 · 1565 阅读 · 0 评论 -
YOLO输出大中小目标的AP值
在进行实验的过程中,博主一直使用的是COCO数据集,其评价指标如下所示,包含大中小目标的AP值与AR值。博主选用了yolov5与yolov7进行实验,其中yolov5成功,yolov7却出现了问题。随后博主在进行对比实验时使用了YOLO模型,其默认是不输出大中小目标的AP值的,为了能够获取这个评价指标值,我们需要对val.py文件进行修改。原创 2023-06-12 10:47:55 · 4714 阅读 · 4 评论 -
YOLO断点训练
在使用服务器运行YOLO模型的过程中,时常会因为各种原因而中断,如断网、关机等情况,YOLO中给提供了一个参数 resume:意为断点训练,即可以接着之前的训练来进行训练。原创 2023-06-11 08:27:36 · 1339 阅读 · 0 评论 -
YOLOv5使用自定义数据集实验
上一篇博文中介绍了YOLOv7训练自定义数据集,在这篇文章中,我们主要记录YOLOv5模型的实验过程,用于对比实验。YOLOv5与YOLOv7毕竟一母同胞,因此部署起来也是极为类似。原创 2023-06-10 19:56:55 · 1544 阅读 · 0 评论 -
YOLOv7训练自定义数据集
使用YOLOv7做对比实验,需要重新部署一下YOLO环境,并将COCO格式数据集转换为YOLO格式博主的COCO数据集是由WiderPerson数据集转换来的,并且做了一些处理。原创 2023-06-10 11:25:03 · 2094 阅读 · 0 评论 -
ViT:Transformer在CV领域的开山之作
我们都知道,Transformer作为NLP算法的一员,擅长两者预测,分别是完形填空式与给出前句预测后句这两种类型,无论是那种,其处理的都是文本,抑或是一个序列,且由于序列长度的限制,其最佳为256,为了证明Transformer的通用性,那么将其转入计算机视觉时我们依旧是想将其转换为序列形式,这就产生了一个问题,如果是将图像按每个像素转换为扁平的一维序列,那么其长度是极大的,总所周知,Transformer的核心便是自注意力机制的引入,而自注意力机制便是将所有元素进行内积求权重,这是n。原创 2023-03-09 19:24:54 · 2305 阅读 · 1 评论