草庐IT

[YOLOv7/YOLOv5系列算法改进NO.4]添加ECA通道注意力机制

 前   言作为当前先进的深度学习目标检测算法YOLOv5,已经集合了大量的trick,但是在处理一些复杂背景问题的时候,还是容易出现错漏检的问题。此后的系列文章,将重点对YOLOv5的如何改进进行详细的介绍,目的是为了给那些搞科研的同学需要创新点或者搞工程项目的朋友需要达到更好的效果提供自己的微薄帮助和参考。一、解决问题加入ECA注意力机制,可以让网络更加关注待检测目标,提高检测效果。该注意力机制为一篇CVPR2020上对通道注意力进行改进的文章---ECANet,ECANet主要对SENet模块进行了一些改进,提出了一种不降维的局部跨信道交互策略(ECA模块)和自适应选择一维卷积核大小的方

YOLOv8 Bug及解决方案汇总

Traceback(mostrecentcalllast):File“D:\Anaconda\Scripts\yolo-script.py”,line33,insys.exit(load_entry_point(‘ultralytics==8.0.83’,‘console_scripts’,‘yolo’)())self.model,self.save=parse_model(deepcopy(self.yaml),ch=ch,verbose=verbose)#model,savelistFile“D:\Anaconda\lib\site-packages\ultralytics-8.0.83-

关于Yolov7-tiny模型瘦身(param、FLOPs)碎碎念

优于模型落地需要,yolov7-tiny版本的参数量(Param)为6.2M,FLOPs在输入为320*320下为3.46G,想着还能不能再进行减少这两者或其中之一(精度方面还未做效果验证)。于是翻遍了github,没有关于v7的剪枝方法,替换backbone也大部分是基于yolov5s的,眼花缭乱中看到yolov7的github官方作者的一句回复:接着去看了一下什么是ELAN,相关细节知识不做复制粘贴了,可以去看各大神的代价解读。在yolov7-tiny.yaml中,就是这个在被stride为2的卷积下采样后,被Concat整合前的这四个连续卷积层。这种结构在标准版和tiny版的backbo

两百行C++代码实现yolov5车辆计数部署(通俗易懂版)

本文是文章传统图像处理方法实现车辆计数的后续。这里用OpenCV实现了基于yolov5检测器的单向车辆计数功能,方法是撞线计数。该代码只能演示视频demo效果,一些功能未完善,离实际工程应用还有距离。实现流程:(1)训练yolov5模型,这里就没有自己训练了,直接使用官方的开源模型yolov5s.pt;(2)运行yolov5工程下面的export.py,将pt模型转成onnx模型;(3)编写yolov5部署的C++工程,包括前处理、推理和后处理部分;(4)读取视频第一帧,用yolov5检测第一帧图像的车辆目标,计算这些检测框的中心点,(5)读取视频的后续帧,用yolov5检测每帧图像上的车辆目

yolov7使用onnx推理(带&不带NMS)

官方代码:GitHub-WongKinYiu/yolov7:Implementationofpaper-YOLOv7:Trainablebag-of-freebiessetsnewstate-of-the-artforreal-timeobjectdetectors        上个月,官方放了个使用onnx推理的ipynb文件,过了几天上去看,官方又给删了,不知道是不是要更新波大的,还好手快保存了一份,这个可以作为备忘,懒得再重新写(不过这得是多懒,都在这码字了不去写代码。。。)不带NMS     先贴代码吧:importcv2importtimeimportrequestsimportr

YOLOv8入门教程:实现实时目标检测

摘要:在本教程中,我们将介绍YOLOv8的基本概念和原理,然后用Python实现一个简单的实时目标检测应用。正文:车牌识别视频车辆识别视频一、YOLOv8简介YOLOv8(YouOnlyLookOncev8)是一种快速、准确的实时目标检测算法。相较于前代YOLO版本,YOLOv8在检测速度和准确率上取得了显著的提升。它的主要优点包括:高性能:YOLOv8在保持较高准确率的同时实现了实时目标检测。泛化能力强:YOLOv8在多种场景和目标类型上表现优秀。易于集成:YOLOv8可以轻松集成到各种应用中,如无人驾驶、无人机监控等。二、YOLOv8实现实时目标检测本教程将使用Python和OpenCV实

YOLOv4之网络结构剖析

1.yolov4的网络结构yolov4的网络结构包括backboneCSPDarknet53NeckSPPPANetDencePredictionyolohead整个网络结构如下图1所示:图1yolov4结构1.1BackBone1.1.1CSP模块CSP在论文《CSP:ANewBackbonethatcanEnhanceLearningCapabilityofCNN》提出,把CSP(CrossStagePartial)应用到ResNe(X)t,模型结构如下图2所示。图2CSP结构应用到ResNe(X)t从结构上来看,CSP是将输入通道分成两部分,一部分经过常规Res(X)Block后跟另一部

使用Yolov5训练自己的模型

本文主要介绍如何运用开源Yolov5模型,结合自己的数据,训练其他目标检测模型。基础准备工作:anaconda适用Yolov5的虚拟环境git上下载Yolov5并调通测试代码https://github.com/ultralytics/yolov5https://github.com/ultralytics/yolov5本次用的环境:python==3.7pytorch==1.7.1torchvision==0.8.2torchaudio==0.7.0cudatoolkit==10.2环境配置好后运行测试代码:importtorch#GPUdevice=torch.device("cuda:0

Jetson Xavier NX学习笔记(三)系统烧录+开机教程+YOLOv7环境搭建+错误总结(详细版)

JetsonXavierNX系统烧录+开机教程+YOLOv7环境搭建+错误总结(详细版)文章目录JetsonXavierNX系统烧录+开机教程+YOLOv7环境搭建+错误总结(详细版)前言:一、NX系统烧录1.1硬件条件准备1.2烧录系统软件1.3下载官方镜像1.4格式化SD卡开始烧录二、NX开机详细教程2.1开机流程2.2开机后准备工作2.3python3pip下载2.4换源2.5安装中文系统环境和输入法三、YOLOv7环境搭建3.1yolov7的基础环境如下图所示:3.2源码下载3.3依赖关系3.4pip强制安装3.5验证opencv3.6安装numpy3.7Pythorch和torchv

使用YOLOv5实现人脸口罩佩戴检测(详细)

前言最近把李沐大神《动手学深度学习v2》的目标检测部分学完了,就想找一个项目练练手,学以致用嘛,觉着人脸口罩佩戴检测比较符合当下时代背景,所以就选择了这个项目,也是前几天刚刚完成的,写下这篇博客记录一下具体过程,废话不多说,现在开始吧。文章目录前言一、数据集获取与介绍二、数据预处理三、下载YOLOv5代码四、配置所需环境五、模型训练六、模型使用总结一、数据集获取与介绍获取人脸口罩的数据集有两种方式:第一种就是使用网络上现有的数据集第二种就是使用labelimg工具创建自己的数据集,可以参考一下这位博主的文章:labelImg使用教程图像标定工具注意!:无论哪种方式,都一定要弄清楚2点:1、数据