CN116189012A - 一种基于改进yolox的无人机地面小目标检测方法 - Google Patents
一种基于改进yolox的无人机地面小目标检测方法 Download PDFInfo
- Publication number
- CN116189012A CN116189012A CN202211467687.0A CN202211467687A CN116189012A CN 116189012 A CN116189012 A CN 116189012A CN 202211467687 A CN202211467687 A CN 202211467687A CN 116189012 A CN116189012 A CN 116189012A
- Authority
- CN
- China
- Prior art keywords
- network
- training
- image
- yolox
- improved
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
- G06V20/17—Terrestrial scenes taken from planes or by drones
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/766—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using regression, e.g. by projecting features on hyperplanes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Remote Sensing (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于改进YOLOX的无人机地面小目标检测方法,属于无人机技术领域。在YOLOX神经网络的Neck层添加了通道注意力机制(DW‑CBAM),加强网络对小目标的特征提取能力,抑制非重要特征,在head层增加了一层检测小目标的检测头并对其进行轻量化。在正负样本的选择上,提出带位置引导的标签分配策略(LB‑SimOTA),使网络更加关注定位精度较差的边界框。最终形成了改进的YOLOX无人机小目标检测模型。应用无人机小目标检测模型,获得对车和人在图像中对应的标签。本发明提出的注意力机制模块和正负样本选择策略,用在YOLOX检测方法中,在无人机场景下检测精度提升明显。
Description
技术领域
本发明属于无人机技术领域,涉及一种基于改进YOLOX的无人机地面小目标检测方法。
背景技术
随着科技的迅速发展,无人机因其视野广阔,灵活性强等特点,被广泛的应用于各行各业。在无人机对地面目标检测领域中,由于无人机对地拍摄的图像为俯视视角,容易丢失很多细节,且拍摄的图像中存在大量的小目标,其所占的像素较小(小于32×32),分辨率较低,因此目标比较难识别,使得传统的检测方法在某些复杂的场景下往往受到环境的影响,不容易提取出目标的特征,从而严重的漏检和误检现象。但随着深度学习在目标检测领域中取得的重大突破,通过神经网络对目标进行识别,相较于传统的目标检测方法,在检测精度和速度方面提升巨大,推动了无人机对地面目标检测的蓬勃发展。如今,基于深度学习的目标检测方法主要有两类,分别为双阶段检测方法和单阶段检测方法。双阶段检测方法如Faster-RCNN,其先通过候选区域提取网络(Region Proposal Network,RPN)生成高质量的候选框,再在候选框上进行分类和回归,因此检测精度得到了提升。单阶段目标检测方法如SSD和YOLO,通过使用不同分辨率的特征图来检测不同尺度的目标,且这类方法只需经过一次前馈网络,所以具有更快的检测速度和实时性强的优点,更适合应用在需要实时检测的场景下。
但是由于在不同场景下的对性能评判标准和重点不同,目前YOLO系列方法并不能实现性能的最优平衡,且对小目标的检测也不是特别理想。因此很多研究者为了使YOLO系列方法能够的在一些特殊的应用需求提升其检测性能,纷纷进行很多有针对性的改进。有文献表示在对遮挡行人检测中,加入了语义转换模块和位置引导模块,通过更多的上下文信息和重新加权回归损失,提高了被遮挡行人的检测精度。还有文献提出了YOLOSA模型,通过YOLOX中的解耦头方法应用于YOLOV5中,使得模型精度有了进一步的提升。然后,这些目标检测模型都是基于自然场景图像数据集进行设计,自然场景图像与无人机航拍图像之间存在显著差异,导致对小目标的检测性能不佳和实时性不强的问题。
发明内容
有鉴于此,本发明的目的在于提供一种基于改进YOLOX的无人机地面小目标检测方法,该方法对YOLOX方法做出了进一步改进。其思想为(1)将注意力机制模块DW-CBAM加入特征融合网络中,该模块使网络将更多注意力聚集到小目标区域,提高对小目标的特征提取能力(2)在head层添加一层分辨率更高的检测头,用以检测图像中微小目标,且为了防止模型过大,将检测头进行了轻量化。(3)针对预测框定位精度不高的问题,提出带位置引导的标签分配策略(LB-SimOTA),在选取最优的正样本数量前提下,使网络更加关注定位精度较差的边界框,提高边界框的回归精度。
为达到上述目的,本发明提供如下技术方案:
一种基于改进YOLOX的无人机地面小目标检测方法,该方法包括以下步骤:
S1:图像的获取:用户利用无人机对目标对象进行图像采集,并将采集到的图像按照Pascal VOC数据集的格式将图片命名,同时创建名为Annotations、ImageSets、JPEGImages的三个文件夹;
S2:图像预处理:
S2-1:图像标记:在S1采集到的图像中,运用图像标注工具LabelImg对图像中的目标进行标记,标注出目标的位置、类别名称;
S2-2:图像扩增:若S1用户拍摄的图片不能达到识别单个类别目标所需3000张图片的要求,则采用缩放、翻转、平移和Mosaic数据增强的方法对图像进行扩增;
S2-3:划分数据集:将扩增得到的图像和标记文件分成训练集、测试集、验证集;其中训练集、测试集、验证集分别占60%、20%和20%;
S3:设置模型超参数:根据计算机内存、GPU能力和用户所需的识别效果和训练速度设计卷积神经网络输入图像的尺寸、识别种类的数量、训练次数、学习率,网络的层数;
S3-1:当选择输入网络的图像尺寸为640*640,epoch为200,训练分为两个部分,冻结阶段和解冻阶段,前50个epoch采用冻结训练,将模型的主干进行冻结,特征提取网络将不发生改变,占用的显存较小,仅对网络进行微调,batch_size为8,学习率为0.001;后150个epoch采用解冻训练,此时模型的主干不被冻结了,特征提取网络会发生变化,占用的内存较大,网络所有的参数都会发生改变,batch_size为4,学习率为0.0001;
S4:对原YOLOX网络结构进行改进,得到改进后的YOLOX网络结构,改进过程如下:
S4-1:在YOLOX的特征融合网络中加入DW-CBAM通道-空间注意力机制,其基本思想是将输入特征图经过空间和通道两个维度得到相应的权重向量,得到的权重向量根据其值的大小,将输入特征图分为不同重要性的特征区域,权重越大表示该区域包含更多的正样本,模型会更多的关注该区域来学习其特征,使模型能够做出更加准确的判断;DW-CBAM首先对特征图通过两层,空洞率依次为1,2的空洞卷积用以提升输入特征图的感受野,并保证输出特征图和输入特征图的高宽一致,得到的特征图在输入特征图上的感受野扩大为7×7的区域,感受野的提升,会使每个特征点的映射区域更大;然后将特征图输入改进的通道注意力模块W-CAM中,这时经过池化后的两个输出特征向量各个点的全局信息更强,更好的区分各个通道的重要性;其次,将MLP用两个的卷积层代替,用卷积层代替可以大幅减少参数,增加推理速度;经过卷积层后的特征向量在相加前乘以各自的权重系数,用以调整各自的贡献程度,然后在将乘以权重系数后的特征向量相加后的用sigmoid函数激活后和最先输入特征图逐点相乘得到特征图,然后将输入空间注意力模块SAM中,将经过最大池化和平均池化的特征向量进行拼接,再用的卷积进行特征提取,并使通道数整合为1,最后用sigmoid激活得到的空间注意力向量和特征图逐点相乘,得到最终输入特征图;计算公式如下:
F'=Dilate_Conv(3×3,r=2,Dilate_Conv(3×3,r=1,F))
MC'(F)=sigmoid(w1MLP(AvgPool(F))+w2MLP(MaxPool(F)))
MS(F)=sigmoid(Conv(Concat(AvgPool(F”)+MaxPool(F”))),1)
其中F∈RC H W代表输入特征图,F'∈RC H W,F”∈RC H W和F”'∈RC H W分别表示经过两层空洞卷积,通道注意力模块和空间注意力模块得到输出特征图;MC′为改进后的通道特征向量计算函数,MS为空间特征向量计算函数,w1,w2分别为W-CAM中相加时的权重系数,取值分别为0.7和0.3;MC'(F')∈RC 11,MS(F”)∈R1 H W为其分别得到的通道特征向量和空间特征向量;
S4-2:使用SIOU进行边界框损失函数,通过引入回归之间的向量角度,使得预测框在训练能快速定位真实框的位置和方向,从而降低回归的自由度,加快网络的训练速度,进一步提升边界框的回归精度;
S4-3:使用LB-simOTA正样本选择策略中,对不同质量的预测框分配不同的权重;对于训练中的正样本,将其按和相应真实框IOU大小不同分配不同的权重wi j,权重wi j在计算每个预测框的回归框损失时,将那些远离GT的预测框赋予较大的权重,靠近GT的预测框权重相对较小,这使网络更加关注那些回归精度差的预测框,从而训练网络的定位能力,提高预测框回归精度;
S4-4:在原YOLOX网络结构中,增加一层分辨率为160×160的检测分支,通过更好的分辨率,使得特征图保留更多位置信息和细节信息,更有利于对小目标的检测,同减少检测头一层的3×3的卷积层,并调整其通道数用以对检测头进行轻量化处理;
S5:训练网络模型:对改进后的YOLOX网络配置文件train.py和Classes.txt进行参数设置,将设置的Classes.txt文件及改进后YOLOX网络结构放入配置好环境的计算机中,运用训练集和验证集中标记好的图片进行训练,训练过程中,将测试集中划分好的图片放入计算机中进行测试,得到每一个阶段训练的效果,训练结束后保存训练好的网络模型权重pt;
S6:运用训练完成的网络模型权重进行识别:在计算机上准备好待检测的图像,更改detect.py中配置文件model_path和待检测的图片路径,通过执行detect.py,运行后加载网络模型权重,最终计算机保存识别目标结果的图片;
S7:对改进的目标检测方法YOLOX采用平均精度AP、召回率Recall,简称R,精度Precision,简称P,参数量Params、帧率FPS作为模型性能的评价指标;其中TP为正样本中检测正确的数量,FP为正样本中检测错误的数量,FN是未被检测出的正样本数量;
可选的,所述S2具体为:
S2-1:图像标记:在S1采集到的图像中,运用图像标注工具LabelImg对图像中的目标进行标记,标注出目标的位置、类别名称;
S2-2:图像扩增:若S1用户拍摄的图片不能达到识别单个类别目标所需3000张图片的要求,则采用缩放、翻转、平移和Mosaic数据增强的方法对图像进行扩增;
S2-3:划分数据集:将扩增得到的图像和标记文件分成训练集、测试集、验证集;其中训练集、测试集、验证集分别占60%、20%和20%。
可选的,所述S3具体为:
S3-1:当选择输入网络的图像尺寸为640*640,epoch为200,训练分为两个部分,冻结阶段和解冻阶段,前50个epoch采用冻结训练,将模型的主干进行冻结,特征提取网络将不发生改变,占用的显存较小,仅对网络进行微调,batch_size为8,学习率为0.001;后150个epoch采用解冻训练,此时模型的主干不被冻结了,特征提取网络会发生变化,占用的内存较大,网络所有的参数都会发生改变,batch_size为4,学习率为0.0001。
本发明的有益效果在于:该方法通过添加一层分辨率更高的检测头,用以检测图像中微小目标,且为了防止模型过大,将检测头进行了轻量化。其次,将通道-空间注意力机制模块DW-CBAM加入特征融合网络中,该模块使网络将更多注意力聚集到小目标区域,提高对小目标的特征提取能力;以及针对预测框定位精度不高的问题,使用了带位置引导的标签分配策略LB-SimOTA。与现有技术相比,本发明具有如下优点:
(1)进行目标检测时,采用了改进的YOLOX网络结构对数据集进行训练,训练得到的检测模型不仅检测精度高,且参数量少。
(2)在进行无人机航拍图像识别时,采用了改进的YOLOX模型对图像数据集进行训练,训练得到的模型能够更精确的识别密集的小目标,并且能够精准识别大面积聚簇重叠的目标对象。
(3)可以应用在实际无人机实时目标检测任务中,具有速度快,实时性强的特点。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
图1为本发明一种基于改进YOLOX方法的无人机地面小目标检测方法的流程图;
图2为DW-CBAM通道-空间注意力机制图;
图3为轻量化的多尺度检测架构图;
图4为LB-simOTA计算过程图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
本实施例以车(汽车,卡车,面包车等都归为一类)、人为例,以无人机视角下一些具有代表性且场景变化比较大的图像中进行识别。
请参阅图1~图4,一为种基于改进YOLOX方法的无人机地面小目标检测方法,包括如下步骤:
S1、图像的获取:用户利用无人机对目标对象进行图像采集,并将采集到的图像按照Pascal VOC数据集的格式将图片命名,同时创建名为Annotations、ImageSets、JPEGImages的三个文件夹。
S2、图像预处理:
S2-1、图像标记:在步骤S1采集到的图像中,运用图像标注工具LabelImg对图像中的进行标记,标注出目标的位置、类别名称;本实施例选取了车和人连个类别,因此下面以这连个列别为例说明。
(1)框选人时,标签可命名为people,框选车时,标签可命名为car;
(2)框选密集聚簇重叠的小目标时,逐一框选,手工准确框选出目标;
(3)框选遮挡超过95%的目标时,则舍弃当前目标;
S2-2、图像扩增:若步骤S1用户拍摄的图片不能达到识别单个类别目标所需3000张图片的要求,则采用缩放、翻转、平移和Mosaic数据增强的方法对图像进行扩增。
S2-3、划分数据集:将扩增得到的图像和标记文件分成训练集、测试集、验证集。其中训练集、测试集、验证集分别占60%、20%、20%。
S3、设置模型超参数:根据计算机内存、GPU能力和用户所需的识别效果和训练速度设计卷积神经网络输入图像的尺寸、识别种类的数量、训练次数、学习率,网络的层数。
S3-1、当选择输入网络的图像尺寸为640*640,epoch为200,训练分为两个部分,冻结阶段和解冻阶段,前50个epoch采用冻结训练,将模型的主干进行冻结,特征提取网络将不发生改变,占用的显存较小,仅对网络进行微调,batch_size为8,学习率为0.001。后150个epoch采用解冻训练,此时模型的主干不被冻结了,特征提取网络会发生变化,占用的内存较大,网络所有的参数都会发生改变,batch_size为4,学习率为0.0001。
S4、对原YOLOX网络结构进行改进,得到改进后的YOLOX网络结构,改进过程如下:
S4-1:在YOLOX的特征融合网络中加入DW-CBAM通道-空间注意力机制,其基本思想是将输入特征图经过空间和通道两个维度得到相应的权重向量,得到的权重向量根据其值的大小,将输入特征图分为不同重要性的特征区域,权重越大表示该区域包含更多的正样本,模型会更多的关注该区域来学习其特征,使模型能够做出更加准确的判断。DW-CBAM首先对特征图通过两层,空洞率依次为1,2的空洞卷积用以提升输入特征图的感受野,并保证输出特征图和输入特征图的高宽一致,得到的特征图在输入特征图上的感受野扩大为7×7的区域,感受野的提升,会使每个特征点的映射区域更大。然后将特征图输入改进的通道注意力模块W-CAM中,这时经过池化后的两个输出特征向量各个点的全局信息更强,更好的区分各个通道的重要性。其次,将MLP用两个的卷积层代替,用卷积层代替可以大幅减少参数,增加推理速度。经过卷积层后的特征向量在相加前乘以各自的权重系数,用以调整各自的贡献程度,然后在将乘以权重系数后的特征向量相加后的用sigmoid函数激活后和最先输入特征图逐点相乘得到特征图,然后将输入空间注意力模块SAM中,将经过最大池化和平均池化的特征向量进行拼接,再用的卷积进行特征提取,并使通道数整合为1,最后用sigmoid激活得到的空间注意力向量和特征图逐点相乘,得到最终输入特征图。计算公式如下:
F'=Dilate_Conv(3×3,r=2,Dilate_Conv(3×3,r=1,F))
MC'(F)=sigmoid(w1MLP(AvgPool(F))+w2MLP(MaxPool(F)))
MS(F)=sigmoid(Conv(Concat(AvgPool(F”)+MaxPool(F”))),1)
其中F∈RC H W代表输入特征图,F'∈RC H W,F”∈RC H W和F”'∈RC H W分别表示经过两层空洞卷积,通道注意力模块和空间注意力模块得到输出特征图;MC′为改进后的通道特征向量计算函数,MS为空间特征向量计算函数,w1,w2分别为W-CAM中相加时的权重系数,取值分别为0.7和0.3;MC'(F')∈RC 11,MS(F”)∈R1 H W为其分别得到的通道特征向量和空间特征向量;
S4-2:使用SIOU进行边界框损失函数,通过引入回归之间的向量角度,使得预测框在训练能快速定位真实框的位置和方向,从而降低回归的自由度,加快网络的训练速度,进一步提升边界框的回归精度。
S4-3:使用LB-simOTA正样本选择策略中,对不同质量的预测框分配不同的权重。对于训练中的正样本,将其按和相应真实框IOU大小不同分配不同的权重wi j,权重wi j在计算每个预测框的回归框损失时,将那些远离GT的预测框赋予较大的权重,靠近GT的预测框权重相对较小,这使网络更加关注那些回归精度差的预测框,从而训练网络的定位能力,提高预测框回归精度。
S4-4:在原YOLOX网络结构中,增加一层分辨率为160×160的检测分支,通过更好的分辨率,使得特征图保留更多位置信息和细节信息,更有利于对小目标的检测,同减少检测头一层的3×3的卷积层,并调整其通道数用以对检测头进行轻量化处理。
S5、训练网络模型:对改进后的YOLOX网络配置文件train.py和Classes.txt进行参数设置,将设置的Classes.txt文件及改进后YOLOX网络结构放入配置好环境的计算机中,运用训练集和验证集中标记好的图片进行训练,训练过程中,将测试集中划分好的图片放入计算机中进行测试,得到每一个阶段训练的效果,训练结束后保存训练好的网络模型权重pt。
S6、运用训练完成的网络模型权重进行识别:在计算机上准备好待检测的图像,更改detect.py中配置文件model_path和待检测的图片路径,通过执行detect.py,运行后加载网络模型权重,最终计算机保存识别目标结果的图片。
S7、对改进的目标检测方法YOLOX采用平均精度AP、召回率Recall,简称R,精度Precision,简称P,参数量Params、帧率FPS作为模型性能的评价指标。其中TP为正样本中检测正确的数量,FP为正样本中检测错误的数量,FN是未被检测出的正样本数量。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (3)
1.一种基于改进YOLOX的无人机地面小目标检测方法,其特征在于:该方法包括以下步骤:
S1:图像的获取:用户利用无人机对目标对象进行图像采集,并将采集到的图像按照Pascal VOC数据集的格式将图片命名,同时创建名为Annotations、ImageSets、JPEGImages的三个文件夹;
S2:图像预处理:
S2-1:图像标记:在S1采集到的图像中,运用图像标注工具LabelImg对图像中的目标进行标记,标注出目标的位置、类别名称;
S2-2:图像扩增:若S1用户拍摄的图片不能达到识别单个类别目标所需3000张图片的要求,则采用缩放、翻转、平移和Mosaic数据增强的方法对图像进行扩增;
S2-3:划分数据集:将扩增得到的图像和标记文件分成训练集、测试集、验证集;其中训练集、测试集、验证集分别占60%、20%和20%;
S3:设置模型超参数:根据计算机内存、GPU能力和用户所需的识别效果和训练速度设计卷积神经网络输入图像的尺寸、识别种类的数量、训练次数、学习率,网络的层数;
S3-1:当选择输入网络的图像尺寸为640*640,epoch为200,训练分为两个部分,冻结阶段和解冻阶段,前50个epoch采用冻结训练,将模型的主干进行冻结,特征提取网络将不发生改变,占用的显存较小,仅对网络进行微调,batch_size为8,学习率为0.001;后150个epoch采用解冻训练,此时模型的主干不被冻结了,特征提取网络会发生变化,占用的内存较大,网络所有的参数都会发生改变,batch_size为4,学习率为0.0001;
S4:对原YOLOX网络结构进行改进,得到改进后的YOLOX网络结构,改进过程如下:
S4-1:在YOLOX的特征融合网络中加入DW-CBAM通道-空间注意力机制,其基本思想是将输入特征图经过空间和通道两个维度得到相应的权重向量,得到的权重向量根据其值的大小,将输入特征图分为不同重要性的特征区域,权重越大表示该区域包含更多的正样本,模型会更多的关注该区域来学习其特征,使模型能够做出更加准确的判断;DW-CBAM首先对特征图通过两层,空洞率依次为1,2的空洞卷积用以提升输入特征图的感受野,并保证输出特征图和输入特征图的高宽一致,得到的特征图在输入特征图上的感受野扩大为7×7的区域,感受野的提升,会使每个特征点的映射区域更大;然后将特征图输入改进的通道注意力模块W-CAM中,这时经过池化后的两个输出特征向量各个点的全局信息更强,更好的区分各个通道的重要性;其次,将MLP用两个的卷积层代替,用卷积层代替可以大幅减少参数,增加推理速度;经过卷积层后的特征向量在相加前乘以各自的权重系数,用以调整各自的贡献程度,然后在将乘以权重系数后的特征向量相加后的用sigmoid函数激活后和最先输入特征图逐点相乘得到特征图,然后将输入空间注意力模块SAM中,将经过最大池化和平均池化的特征向量进行拼接,再用的卷积进行特征提取,并使通道数整合为1,最后用sigmoid激活得到的空间注意力向量和特征图逐点相乘,得到最终输入特征图;计算公式如下:
F'=Dilate_Conv(3×3,r=2,Dilate_Conv(3×3,r=1,F))
MC'(F)=sigmoid(w1MLP(AvgPool(F))+w2MLP(MaxPool(F)))
MS(F)=sigmoid(Conv(Concat(AvgPool(F”)+MaxPool(F”))),1)
其中F∈RCHW代表输入特征图,F'∈RCHW,F”∈RCHW和F”'∈RCHW分别表示经过两层空洞卷积,通道注意力模块和空间注意力模块得到输出特征图;MC′为改进后的通道特征向量计算函数,MS为空间特征向量计算函数,w1,w2分别为W-CAM中相加时的权重系数,取值分别为0.7和0.3;MC'(F')∈RC11,MS(F”)∈R1HW为其分别得到的通道特征向量和空间特征向量;
S4-2:使用SIOU进行边界框损失函数,通过引入回归之间的向量角度,使得预测框在训练能快速定位真实框的位置和方向,从而降低回归的自由度,加快网络的训练速度,进一步提升边界框的回归精度;
S4-3:使用LB-simOTA正样本选择策略中,对不同质量的预测框分配不同的权重;对于训练中的正样本,将其按和相应真实框IOU大小不同分配不同的权重wi j,权重wi j在计算每个预测框的回归框损失时,将那些远离GT的预测框赋予较大的权重,靠近GT的预测框权重相对较小,这使网络更加关注那些回归精度差的预测框,从而训练网络的定位能力,提高预测框回归精度;
S4-4:在原YOLOX网络结构中,增加一层分辨率为160×160的检测分支,通过更好的分辨率,使得特征图保留更多位置信息和细节信息,更有利于对小目标的检测,同减少检测头一层的3×3的卷积层,并调整其通道数用以对检测头进行轻量化处理;
S5:训练网络模型:对改进后的YOLOX网络配置文件train.py和Classes.txt进行参数设置,将设置的Classes.txt文件及改进后YOLOX网络结构放入配置好环境的计算机中,运用训练集和验证集中标记好的图片进行训练,训练过程中,将测试集中划分好的图片放入计算机中进行测试,得到每一个阶段训练的效果,训练结束后保存训练好的网络模型权重pt;
S6:运用训练完成的网络模型权重进行识别:在计算机上准备好待检测的图像,更改detect.py中配置文件model_path和待检测的图片路径,通过执行detect.py,运行后加载网络模型权重,最终计算机保存识别目标结果的图片;
S7:对改进的目标检测方法YOLOX采用平均精度AP、召回率Recall,简称R,精度Precision,简称P,参数量Params、帧率FPS作为模型性能的评价指标;其中TP为正样本中检测正确的数量,FP为正样本中检测错误的数量,FN是未被检测出的正样本数量;
2.根据权利要求1所述的一种基于改进YOLOX的无人机地面小目标检测方法,其特征在于:所述S2具体为:
S2-1:图像标记:在S1采集到的图像中,运用图像标注工具LabelImg对图像中的目标进行标记,标注出目标的位置、类别名称;
S2-2:图像扩增:若S1用户拍摄的图片不能达到识别单个类别目标所需3000张图片的要求,则采用缩放、翻转、平移和Mosaic数据增强的方法对图像进行扩增;
S2-3:划分数据集:将扩增得到的图像和标记文件分成训练集、测试集、验证集;其中训练集、测试集、验证集分别占60%、20%和20%。
3.根据权利要求2所述的一种基于改进YOLOX的无人机地面小目标检测方法,其特征在于:所述S3具体为:
S3-1:当选择输入网络的图像尺寸为640*640,epoch为200,训练分为两个部分,冻结阶段和解冻阶段,前50个epoch采用冻结训练,将模型的主干进行冻结,特征提取网络将不发生改变,占用的显存较小,仅对网络进行微调,batch_size为8,学习率为0.001;后150个epoch采用解冻训练,此时模型的主干不被冻结了,特征提取网络会发生变化,占用的内存较大,网络所有的参数都会发生改变,batch_size为4,学习率为0.0001。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211467687.0A CN116189012A (zh) | 2022-11-22 | 2022-11-22 | 一种基于改进yolox的无人机地面小目标检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211467687.0A CN116189012A (zh) | 2022-11-22 | 2022-11-22 | 一种基于改进yolox的无人机地面小目标检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116189012A true CN116189012A (zh) | 2023-05-30 |
Family
ID=86437145
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211467687.0A Pending CN116189012A (zh) | 2022-11-22 | 2022-11-22 | 一种基于改进yolox的无人机地面小目标检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116189012A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117058232A (zh) * | 2023-07-27 | 2023-11-14 | 大连海洋大学 | 一种改进YOLOv8模型的养殖鱼群中鱼类目标个体的位置检测方法 |
-
2022
- 2022-11-22 CN CN202211467687.0A patent/CN116189012A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117058232A (zh) * | 2023-07-27 | 2023-11-14 | 大连海洋大学 | 一种改进YOLOv8模型的养殖鱼群中鱼类目标个体的位置检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110796168B (zh) | 一种基于改进YOLOv3的车辆检测方法 | |
CN108596101B (zh) | 一种基于卷积神经网络的遥感图像多目标检测方法 | |
CN112200161A (zh) | 一种基于混合注意力机制的人脸识别检测方法 | |
CN111222396B (zh) | 一种全天候多光谱行人检测方法 | |
CN111368769B (zh) | 基于改进锚点框生成模型的船舶多目标检测方法 | |
CN112069868A (zh) | 一种基于卷积神经网络的无人机实时车辆检测方法 | |
CN113255589B (zh) | 一种基于多卷积融合网络的目标检测方法及系统 | |
CN113420607A (zh) | 无人机多尺度目标检测识别方法 | |
CN113160062B (zh) | 一种红外图像目标检测方法、装置、设备及存储介质 | |
CN111340855A (zh) | 一种基于轨迹预测的道路移动目标检测方法 | |
CN113762209A (zh) | 一种基于yolo的多尺度并行特征融合路标检测方法 | |
CN113516664A (zh) | 一种基于语义分割动态点的视觉slam方法 | |
CN113313047B (zh) | 一种基于车道结构先验的车道线检测方法及系统 | |
CN112489089B (zh) | 一种微型固定翼无人机机载地面运动目标识别与跟踪方法 | |
CN113269133A (zh) | 一种基于深度学习的无人机视角视频语义分割方法 | |
CN110659601A (zh) | 基于中心点的深度全卷积网络遥感图像密集车辆检测方法 | |
CN111611918B (zh) | 基于航拍数据和深度学习的交通流数据集采集及构建方法 | |
CN115376019A (zh) | 一种异源遥感影像对象级变化检测方法 | |
CN113610905A (zh) | 基于子图像匹配的深度学习遥感图像配准方法及应用 | |
CN116189012A (zh) | 一种基于改进yolox的无人机地面小目标检测方法 | |
CN107170004A (zh) | 一种无人车单目视觉定位中对匹配矩阵的图像匹配方法 | |
CN116363532A (zh) | 基于注意力机制和重参数化的无人机图像交通目标检测方法 | |
CN115984646A (zh) | 面向遥感跨卫星观测的分布式目标检测方法、装置和卫星 | |
CN112069997B (zh) | 一种基于DenseHR-Net的无人机自主着陆目标提取方法及装置 | |
CN115171001A (zh) | 基于改进ssd的增强热红外图像上车辆检测方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |