CN116310899A - 基于YOLOv5改进的目标检测方法及装置、训练方法 - Google Patents
基于YOLOv5改进的目标检测方法及装置、训练方法 Download PDFInfo
- Publication number
- CN116310899A CN116310899A CN202310180011.1A CN202310180011A CN116310899A CN 116310899 A CN116310899 A CN 116310899A CN 202310180011 A CN202310180011 A CN 202310180011A CN 116310899 A CN116310899 A CN 116310899A
- Authority
- CN
- China
- Prior art keywords
- image
- target
- features
- detected
- module
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 332
- 238000012549 training Methods 0.000 title claims abstract description 92
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000004927 fusion Effects 0.000 claims abstract description 168
- 238000000605 extraction Methods 0.000 claims abstract description 96
- 230000006872 improvement Effects 0.000 claims abstract description 15
- 238000004590 computer program Methods 0.000 claims description 19
- 238000004422 calculation algorithm Methods 0.000 claims description 12
- 230000003247 decreasing effect Effects 0.000 claims description 7
- 230000001629 suppression Effects 0.000 claims description 7
- 238000012216 screening Methods 0.000 claims description 4
- 230000009466 transformation Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 abstract description 11
- 230000008569 process Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 10
- 230000007423 decrease Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 238000013500 data storage Methods 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 102100022430 Melanocyte protein PMEL Human genes 0.000 description 1
- 108091058557 SILV Proteins 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/04—Architecture, e.g. interconnection topology
-
- 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/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
- G06V10/464—Salient features, e.g. scale invariant feature transforms [SIFT] using a plurality of salient features, e.g. bag-of-words [BoW] representations
-
- 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/40—Extraction of image or video features
- G06V10/52—Scale-space analysis, e.g. wavelet analysis
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Remote Sensing (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
本申请涉及一种基于YOLOv5改进的目标检测方法及装置、训练方法。目标检测方法包括:将各关键特征提取层输出的加权主干特征输入到特征融合模块指定的关键特征融合节点,将加权主干特征与原始FPN融合特征进行再次融合,得到目标融合特征;并增加一个子检测网络,将最浅层次关键特征提取层获得的高分辨率特征进行加权和再融合,得到高细节特征,并将高细节特征输入到新的小检测头和特征融合模块中;通过各检测头输出各待检测图像的预测框,得到待检测图像的目标检测结果;在网络训练过程中,引入了考虑角度损失等多种损失的SIOU损失函数;采用本方法能够提高小目标检测的准确性。
Description
技术领域
本申请涉及人工智能技术领域,特别是涉及一种基于YOLOv5改进的目标检测方法及装置、训练方法。
背景技术
随着无人机技术的普及,无人机在环境勘测、道路交通流量监管、安全巡检等领域得到了广泛的应用。利用无人机进行环境勘测、道路交通流量监管、安全巡检时,需要对无人机航拍得到的图像进行目标检测。
相关技术中,直接采取传统的目标检测算法对无人机航拍得到的图像进行目标检测,然而,无人机拍摄得到的图像中的目标较小,直接采取传统的目标检测算法进行目标检测,容易导致对小目标的检测识别错误,即传统的目标检测算法在无人机航拍场景中对目标检测的准确性较低。因此,如何提高对小目标检测的准确性,成为本领域技术人员亟需解决的技术问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高目标检测准确性的基于YOLOv5改进的目标检测方法及装置、训练方法。
第一方面,本申请提供了一种目标检测方法。所述方法包括:
获取待检测图像;
将所述待检测图像输入基于YOLOv5改进的目标检测网络中,其中,所述基于YOLOv5改进的目标检测网络包括特征提取模块和特征融合模块,所述特征提取模块的输出作为所述特征融合模块的输入;
通过特征提取模块的多个关键特征提取层对待检测图像进行特征提取,依次得到多个尺度的目标主干特征,其中,所述目标主干特征是指在所述特征提取模块中按照连接顺序依次得到的关键图像特征,随着网络深度的增加,对应的所述目标主干特征携带的关于所述待检测图像的细节信息递减,携带的关于所述待检测图像的语义信息递增;
将所述多个尺度的目标主干特征分别进行加权处理,得到多个尺度的加权主干特征;
将所述多个尺度的加权主干特征分别输入到所述特征融合模块中对应层级的关键融合节点,并与所述特征融合模块中的原始融合特征进行再次融合,得到目标融合特征;
将所述目标融合特征输入至检测头中,并获取所述检测头的输出,得到所述待检测图像对应的预测框,并根据所述预测框确定所述待检测图像的目标检测结果。
第二方面,本申请还提供了一种目标检测网络的训练方法。所述方法包括:
获取训练图像集以及所述训练图像集中各训练图像中的待检测目标对应的真实框;
将所述训练图像输入基于YOLOv5改进的原始检测网络中,其中,所述基于YOLOv5改进的原始检测网络包括特征提取模块和特征融合模块,所述特征提取模块的输出作为所述特征融合模块的输入;
通过特征提取模块的多个关键特征提取层对待检测图像进行特征提取,依次得到多个尺度的目标主干特征,其中,所述目标主干特征是指在所述特征提取模块中按照连接顺序依次得到的关键图像特征,随着网络深度的增加,对应的所述目标主干特征携带的关于所述训练图像的细节信息递减,携带的关于所述训练图像的语义信息递增;
将所述多个尺度的目标主干特征分别进行加权处理,得到多个尺度的加权主干特征;
将所述多个尺度的加权主干特征分别输入到所述特征融合模块中对应层级的关键融合节点,并与所述特征融合模块中的原始融合特征进行再次融合,得到目标融合特征;
将所述目标融合特征输入至检测头中,并获取所述检测头的输出,得到所述训练图像对应的预测框;
根据所述训练图像对应的预测框和所述真实框之间的差异,调整所述原始检测网络,直到所述原始检测网络收敛时,得到目标检测网络。
第三方面,本申请还提供了一种目标检测装置。所述装置包括:
图像获取模块,用于获取待检测图像;
图像输入模块,用于将所述待检测图像输入基于YOLOv5改进的目标检测网络中,其中,所述基于YOLOv5改进的目标检测网络包括特征提取模块和特征融合模块,所述特征提取模块的输出作为所述特征融合模块的输入;
提取模块,用于通过特征提取模块的多个关键特征提取层对待检测图像进行特征提取,依次得到多个尺度的目标主干特征,其中,所述目标主干特征是指在所述特征提取模块中按照连接顺序依次得到的关键图像特征,随着网络深度的增加,对应的所述目标主干特征携带的关于所述待检测图像的细节信息递减,携带的关于所述待检测图像的语义信息递增;
加权模块,用于将所述多个尺度的目标主干特征分别进行加权处理,得到多个尺度的加权主干特征;
融合模块,用于将所述多个尺度的加权主干特征分别输入到所述特征融合模块中对应层级的关键融合节点,并与所述特征融合模块中的原始融合特征进行再次融合,得到目标融合特征;
预测模块,用于将所述目标融合特征输入至检测头中,并获取所述检测头的输出,得到所述待检测图像对应的预测框,并根据所述预测框确定所述待检测图像的目标检测结果。
第四方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现第一方面实施例的目标检测方法的步骤,或者实现第二方面实施例的目标检测网络的训练方法的步骤。
第五方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面实施例的目标检测方法的步骤,或者实现第二方面实施例的目标检测网络的训练方法的步骤。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面实施例的目标检测方法的步骤,或者实现第二方面实施例的目标检测网络的训练方法的步骤。
上述基于YOLOv5改进的目标检测方法及装置、训练方法,通过将原YOLOv5特征提取模块中多个尺度的目标主干特征进行加权处理后输入到原YOLOv5特征融合模块中指定深度的关键节点,与原始融合特征进行再次融合,得到目标融合特征,使得携带细节信息较多的目标主干特征和携带语义信息较丰富的融合特征进行再次融合,使得特征融合模块更加关注浅层的细节丰富的目标主干特征,以更加关注待检测图像的细节信息,从而便于识别出待检测图像中的小目标,避免目标检测网络对待检测图像中的小目标漏捡,提高了目标检测的准确性。
附图说明
图1为一个实施例中目标检测方法和目标检测网络的训练方法的应用环境图;
图2为一个实施例中目标检测方法的第一流程示意图;
图3为一个实施例中目标检测网络的第一结构示意图;
图4为一个实施例中目标检测网络的第二结构示意图;
图5为一个实施例中目标检测方法的第二流程示意图;
图6为一个实施例中目标检测方法的第三流程示意图;
图7为一个实施例中目标检测方法的第四流程示意图;
图8为一个实施例中目标检测网络的训练方法的流程示意图;
图9为一个实施例中对目标检测网络的调整步骤的流程示意图;
图10为一个实施例中真实框和预测框之间的角度差异示意图;
图11为一个实施例中真实框和预测框之间的距离差异示意图;
图12为一个实施例中预测框和真实框之间的尺度信息示意图;
图13为一个实施例中预测框和真实框之间的重叠区域示意图;
图14为一个实施例中目标检测方法的第五流程示意图;
图15为一个实施例中目标检测装置的结构框图;
图16为一个实施例中目标检测网络的训练装置的结构框图;
图17为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的目标检测方法和目标检测网络的训练方法,可以应用在小目标检测领域,如无人机航拍领域,可以应用于如图1所示的应用环境中。其中,目标检测方法可以由终端102或者服务器104执行,目标检测网络的训练方法可以由服务器104执行,当服务器104训练得到目标检测网络后,可以将目标检测网络存储在数据存储系统上,或者存储在终端的本地存储器中。终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据,如待检测图像、原始图像、训练图像集和目标检测网络等。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。终端102获取待检测图像,将待检测图像输入至基于YOLOv5改进的目标检测网络中,其中,目标检测网络包括特征提取模块和特征融合模块,特征提取模块的输出作为特征融合模块的输入;通过特征提取模块对待检测图像进行特征提取,依次得到多个尺度的目标主干特征,其中,目标主干特征是指在特征提取模块中按照连接顺序依次得到的关键图像特征,随着网络深度的增加,对应的目标主干特征携带的关于待检测图像的细节信息递减,携带的关于待检测图像的语义信息递增;将多个尺度的目标主干特征分别进行加权处理,得到多个尺度的加权主干特征;将多个尺度的加权主干特征分别输入到特征融合模块中对应层级的关键融合节点,并与特征融合模块中的原始融合特征进行再次融合,得到目标融合特征,将目标融合特征输入至检测头中,并获取检测头的输出,得到待检测图像对应的预测框,并根据预测框确定待检测图像的目标检测结果。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种目标检测方法,以该方法应用于图1中的终端102为例进行说明,包括以下步骤:
步骤202,获取待检测图像。
其中,待检测图像可以指待进行目标检测的图像。该待检测图像可以是无人机航拍领域中无人机拍摄得到的高视角高分辨率图像,如可以是车流量图像、农业监控图像、安全监控图像,还可以是道路上安装的车辆探头拍摄得到的车辆图像等。该待检测图像可以是实时拍摄的,也可以是存储在终端102或服务器104中的。
示例性地,可以通过网络获取存储在服务器104中的待检测图像。
步骤204,将待检测图像输入基于YOLOv5改进的目标检测网络中,其中,基于YOLOv5改进的目标检测网络包括特征提取模块和特征融合模块,特征提取模块的输出作为特征融合模块的输入。
其中,目标检测网络可以指用于对待检测图像中存在的目标进行检测的网络。该目标检测网络可以通过原始的YOLOv5网络改进得到,该目标检测网络的结构如图3所示。该目标检测网络包括特征提取模块和特征融合模块,特征提取模块的输出作为特征融合模块的输入。
特征提取模块包括多个ConvBNSILU模块、C3模块和SPFF模块。其中,上采样模块用于对输入的特征进行上采样,ConvBNSILU模块由CONV卷积操作、BN操作(BatchNormalization,批量归一化)和SILU激活函数组成,用于对输入的特征进行卷积、批量归一化和激活处理,C3模块的结构和作用与原YOLO系列中的CSP一样,用于提高CNN的学习能力,减少计算时间,减少内存。
特征融合模块包括多个ConvBNSILU模块、Concat模块和C3模块。Concat模块包含的Concat操作用于将输入的大小通道相同的两层特征叠加,通道数相加。特征提取模块和特征融合模块对应的具体结构和各层级的连接方式可以参考图3。
步骤206,通过特征提取模块的多个关键特征提取层对待检测图像进行特征提取,依次得到多个尺度的目标主干特征,其中,目标主干特征是指在特征提取模块中按照连接顺序依次得到的关键图像特征,随着网络深度的增加,对应的目标主干特征携带的关于待检测图像的细节信息递减,携带的关于待检测图像的语义信息递增。
其中,关键特征提取层可以指图3中的C3模块所处网络层。例如,第4层网络对应的C3模块、第6层网络对应的C3模块、第8层网络对应的C3模块。该关键特征提取层的连接方式如图3所示。
目标主干特征可以指特征提取模块对待检测图像进行特征提取得到的关键图像特征。网络深度的不同,对应输出的目标主干特征的尺度不同。
网络深度可以指目标检测网络中各层网络的深度。各层的深度可以如图3所示。
示例性地,通过特征提取模块对待检测图像进行特征提取,并获取特征提取模块的输出,得到对应的目标主干特征。随着目标主干特征尺度的变小(网络深度的增加),其携带的关于待检测图像的细节信息递减,携带的关于待检测图像的语义信息递增。
步骤208,将多个尺度的目标主干特征分别进行加权处理,得到多个尺度的加权主干特征。
其中,加权主干特征可以指根据权重系数对目标主干特征进行加权处理后得到的特征。
权重系数为预先设定的,可以根据实际情况进行修改。例如,可以根据目标主干特征的尺度大小和待检测目标的尺度进行设定。例如,在进行尺度较小目标的检测时,可以将尺度较大的目标主干特征对应的权重系数设置较大,将尺度较小的目标主干特征对应的权重系数设置较小,以使得目标检测网络的小检测头更加关注细节信息。例如,第4层网络对应的C3模块输出的目标主干特征,其对应的权重系数命名为weight3,第6层网络对应的C3模块输出的目标主干特征,其对应的权重系数命名为weight4,第8层网络对应的C3模块输出的目标主干特征,其对应的权重系数命名为weight5,当待检测图像包含大量小目标时,可以将weight3设置为2,将weight4设置为1,将weight5设置为0.5。当待检测图像几乎不包含微小目标或者基本为大目标时,可以将所有的权重系数均设置为0。此外,也可以是其他的设置方式,在此不再一一举例说明。
示例性地,根据预先设定的权重系数对各指定浅层输出的目标主干特征进行加权,得到加权主干特征。
例如,可以将第4层网络对应的C3模块对应的权重系数设置为2,然后根据权重系数对第4层网络对应的C3模块输出的目标主干特征进行加权,得到对应的加权主干特征。可以将第6层网络对应的C3模块对应的权重系数设置为1,根据,然后根据权重系数对第6层网络对应的C3模块输出的目标主干特征进行加权,得到对应的加权主干特征。可以将第8层网络对应的C3模块对应的权重系数设置为0.5,然后根据权重系数对第8层网络对应的C3模块输出的目标主干特征进行加权,得到对应的加权主干特征。
步骤210,将多个尺度的加权主干特征分别输入到特征融合模块中对应层级的关键融合节点,并与特征融合模块中的原始融合特征进行再次融合,得到目标融合特征。
其中,特征融合模块中对应层级的关键融合节点可以指预先设定层级的Concat模块,如第20层(属于检测子网络),第23层,第26层,第29层。
示例性地,可以将第4层网络对应的C3模块输出的加权主干特征输入到第23层的Concat模块中进行融合,将第6层网络对应的C3模块输出的加权主干特征输入到第26层的Concat模块中进行融合,将第8层网络对应的C3模块输出的加权主干特征输入到第29层的Concat模块中进行融合。这些Concat模块输出的经过再次融合后的特征具有更多的细节信息。
步骤212,将目标融合特征输入至检测头中,并获取检测头的输出,得到待检测图像对应的预测框,并根据预测框确定待检测图像的目标检测结果。
预测框可以用于表征待检测图像中的一个目标。当待检测图像中仅存在一个目标时,对应的预测框为一个,当待检测图像中存在多个目标时,对应的预测框有多个。
示例性地,在得到目标融合特征后,将目标融合特征输入至检测头中进行处理,并获取检测头的输出,得到待检测图像对应的预测框。当预测框只有一个时,直接将该预测框作为目标检测结果,当预测框存在多个时,将多个预测框作为目标检测结果。
本申请实施例的技术方案,通过将多个尺度的加权主干特征分别输入到特征融合模块中对应层级的关键融合节点,并与特征融合模块中的原始融合特征进行融合,使得携带细节信息较多的主干特征和携带语义信息较丰富的原始融合特征进行再次融合,得到目标融合特征,融合得到的特征具有更多细节信息,并且,目标主干特征的加权机制使得目标检测网络的小检测头更加关注待检测图像的细节信息,从而便于识别出待检测图像中的小目标,避免目标检测网络对待检测图像中的小目标漏捡,提高了目标检测的准确性。
请参见图4和图5,在一些实施例中,目标检测网络还包括检测子网络,特征提取模块的输出作为检测子网络的输入,检测子网络的输出作为特征融合模块的输入。其中,目标检测网络的结构请参见图4所示。
目标检测方法还包括但不限于以下步骤:
步骤502,获取特征提取模块输出的最大尺度的目标主干特征,得到高分辨率特征。
其中,高分辨率特征可以指特征提取模块中第一个C3模块输出的特征。该高分辨率特征为输出的所有目标主干特征中携带的待测图像的细节信息最多且尺度最大的特征。
示例性地,获取图3所示的第2层网络对应的C3模块输出的目标主干特征,得到高分辨率特征。
步骤504,根据权重系数对高分辨率特征进行加权,得到加权高分辨率特征。
其中,权重系数为预先设定的系数,该权重系数可以根据实际情况进行设置。
示例性地,可以将第2层网络对应的权重系数设置为3,然后再根据权重系数对高分辨率特征进行加权,得到加权高分辨率特征。
步骤506,将加权高分辨率特征和YOLOv5相应FPN结构输出的融合特征输入至检测子网络中,得到高细节检测特征。
其中,YOLOv5相应FPN结构输出的融合特征可以指第19层网络输出的特征。
示例性地,检测子网络将加权高分辨率特征和YOLOv5相应FPN结构输出的融合特征进行融合处理,然后再通过C3模块进行处理,得到高细节检测特征。该高细节检测特征具有丰富的细节信息。
例如,可以将加权高分辨率特征输入至特征融合模块中第20层网络对应的Concat模块,以使该特征融合层将网络19层对应的Upsample上采样模块输出的原始FPN融合特征和高分辨率特征进行再次融合。
步骤508,将高细节特征输入至对应的高分辨率检测头和特征融合模块中。
其中,高分辨率检测头可以指用于根据高细节检测特征进行目标检测的检测头。
示例性地,将高细节特征输入至图3中的高分辨率检测头P2中,并将高细节特征输入至第22层ConvBNSILU模块中,以输入至特征融合模块中,以便于实现对细小目标的检测。
本申请实施例的技术方案,通过对特征提取模块的加权高分辨率特征输入至该检测子网络,使得该检测子网络更加关注细节信息,得到细节信息特别丰富的高分辨率特征,使得该子网络的检测头更加关注细节信息,进一步提高了尺度较小目标的检测准确性。
请参见图6,在一些实施例中,在步骤“获取待检测图像”之前,目标检测方法还包括但不限于以下步骤:
步骤602,获取原始图像以及原始图像的图像分辨率。
其中,原始图像可以是无人机、道路探头、卫星等具有拍摄功能设备拍摄得到图像。该原始图像可以存储在服务器104的数据存储系统中,也可以存储在终端102的本地存储器中。
图像分辨率可以指原始图像中存储的信息量,即每英寸图像内有多少个像素点。
示例性地,可以通过网络获取存储在服务器104的数据存储系统中的原始图像和该原始图像对应的图像分辨率。
步骤604,若图像分辨率大于或等于分辨率阈值,则分割原始图像,得到多个待检测图像;其中,待检测图像和相邻的待检测图像存在重叠区域。
其中,分辨率阈值为预先设定的阈值。可以根据具体的情况进行修改。
示例性地,当图像分辨率大于或等于分辨率阈值时,说明原始图像的图像分辨率过大,为便于检测,提高检测的准确性和效率,降低计算量,对原始图像进行分割,得到多个待检测图像。其中,待检测图像和相邻的待检测图像存在重叠区域。
例如,当图像分辨率大于或等于分辨率阈值时,将原始图像分割为6个待检测图像,待检测图像和相邻的待检测图像存在25%的重叠区域。
本申请实施例的技术方案,通过将原始图像的图像分辨率和分辨率阈值进行判断,以当图像分辨率大于或等于分辨率阈值时,将原始图像进行分割,得到多个待检测图像,以提高后续目标检测网络对原始图像检测的准确性和效率,降低计算量,并且,通过将待检测图像和相邻的待检测图像设置为存在重叠区域,能够避免在切割区域存在待检测目标时,对该待检测目标的漏检,使得检测更加完整,提高了目标检测的准确性。
在一些实施例中,目标检测方法还包括:当图像分辨率小于分辨率阈值时,将原始图像作为待检测图像。
具体地,当图像分辨率小于分辨率阈值时,说明原始图像的图像分辨率不大,此时为了节约检测资源,提高检测效率,可以直接将原始图像作为待检测图像。
请参见图7,在一些实施例中,目标检测方法还包括但不限于以下步骤:
步骤702,获取属于同一原始图像的待检测图像对应的目标检测结果。
其中,属于同一原始图像的待检测图像可以指在对原始图像进行分割时,从原始图像中分割得到的多个待检测图像。例如,可以在对原始图像进行分割时,可以对分割得到的待检测图像进行命名标记,如对于原始图像A,在分割得到6个待检测图像时,这6个待检测图像可以分别命名为A-1、A-2、A-3、A-4、A-5、A-6、A-7和A-8。在获取同一原始图像的待检测图像对应的目标检测结果,可以获取带有A标识的所有待检测图像对应的目标检测结果。各待检测图像的目标检测结果可以存储在服务器104的数据存储系统中,也可以存储在终端102的本地存储器中。
示例性地,可以通过网络获取同一标识的待检测图像对应的目标检测结果,以得到属于同一原始图像的待检测图像对应的目标检测结果。
步骤704,对各目标检测结果进行坐标转换,得到各目标检测结果在原始图像中的位置。
其中,坐标转换可以指将待检测图像中各坐标对应的像素点转换到原始图像中对应的坐标的方式。
示例性地,可以获取对原始图像进行分割时的分割方式,并获取各待检测图像建立坐标系的方式,然后根据分割方式和各待检测图像建立坐标系的方式对各待检测图像中各像素点的坐标进行坐标转换,以得到各待检测图像中各像素点在原始图像中的位置,进而确定各目标检测结果在原始图像中的位置。
步骤706,根据各目标检测结果在原始图像中的位置确定原始图像的检测结果。
示例性地,可以将所有的目标检测结果进行合并,并将重复的目标检测结果去除,即可得到原始图像的检测结果。
本申请实施例的技术方案,通过对各待检测图像对应的目标检测结果进行坐标转换,以确定各目标检测结果在原始图像中的位置,从而便于确定原始图像的检测结果,提高了原始图像的检测结果的准确性。
在一些实施例中,步骤“根据各目标检测结果在原始图像中的位置确定原始图像的检测结果”包括:根据各目标检测结果在原始图像中的位置对各目标检测结果进行合并,得到合并检测结果;根据非极大值抑制算法对合并检测结果进行筛选,得到原始图像的检测结果。
其中,非极大值抑制算法可以指Non-Maximum Suppression(NMS算法),指的是搜索局部最大值、抑制极大值的算法。
在本实施例中,各待检测图像的各预测框可能会有重叠,即在本方案中在同一目标的位置上会产生大量的预测框,这些预测框相互之间可能会有重叠,此时我们需要利用非极大值抑制找到最佳的预测框,消除冗余的预测框。
具体地,可以先直接将所有的目标检测结果进行合并,得到合并检测结果,该合并检测结果中包括了大量的预测框,然后采取NMS算法将冗余的预测框筛选掉,留下各目标最佳的预测框,这些最佳的预测框组成原始图像的检测结果。
本申请实施例的技术方案,通过采取NMS极大值去除了合并预测结果中的冗余的预测框,选择了最佳的预测框,提高了原始图像的检测结果的准确性。
请参见图8,本申请的一些实施例还提出了一种目标检测网络的训练方法,以该目标检测网络的训练方法应用于图1中的服务器104为例进行说明,包括但不限于以下步骤:
步骤802,获取训练图像集以及训练图像集中各训练图像中各待检测目标对应的真实框。
其中,训练图像集可以指用于对原始检测网络进行训练,以得到目标检测网络的图像集,该训练图像集包括多个训练图像,且训练图像集中的各个训练图像中的待检测目标均被标注了真实框。该训练图像集可以存储在服务器104中。该训练图像集可以采取VisDrone2019数据集,也可以采取其他的图像集,对于此,本申请不作具体限制。
示例性地,可以获取存储在服务器104中的数据存储系统的训练图像集以及各训练图像中各待检测目标对应的真实框。
步骤804,将训练图像输入基于YOLOv5改进的原始检测网络中,其中原始检测网络包括特征提取模块和特征融合模块,特征提取模块的输出作为特征融合模块的输入。
其中,原始检测网络可以指未训练好的目标检测网络,其的结构和各网络层的连接关系如图3所示,包括了特征提取模块和特征融合模块,特征提取模块的输出作为特征融合模块的输入。该原始检测网络可以由YOLOv5网络改进得到。
示例性地,可以将训练图像集分为训练集(80%)、验证集(10%)和测试集(10%),然后将属于训练集中的训练图像输入至图3所示的目标检测网络中,以对目标检测网络进行训练处理。
步骤806,通过特征提取模块的多个关键特征提取层对待检测图像进行特征提取,依次得到多个尺度的目标主干特征,随着网络深度的增加,目标主干特征携带的关于待检测图像的细节信息递减,携带的关于待检测图像的语义信息递增。
其中,关键特征提取层可以指图3中的C3模块所处网络层。例如,第4层网络对应的C3模块、第6层网络对应的C3模块、第8层网络对应的C3模块。该关键特征提取层的连接方式如图3所示。
示例性地,通过特征提取模块对待检测图像进行特征提取,并获取各个关键特征提取层的输出,得到对应的目标主干特征。随着目标主干特征尺度的变小(网络深度的增加),其携带的关于待检测图像的细节信息递减,携带的关于待检测图像的语义信息递增。
步骤808,对多个尺度的目标主干特征进行加权,得到加权主干特征。
其中,加权主干特征可以指根据权重系数对目标主干特征进行加权处理后得到的特征。
权重系数为预先设定的,可以根据实际情况进行修改。例如,可以根据目标主干特征的尺度大小和待检测目标的尺度进行设定。例如,在进行尺度较小目标的检测时,可以将尺度较大的目标主干特征对应的权重系数设置较大,将尺度较小的目标主干特征对应的权重系数设置较小,以使得目标检测网络的小检测头更加关注细节信息。例如,第4层网络对应的C3模块输出的目标主干特征,其对应的权重系数命名为weight3,第6层网络对应的C3模块输出的目标主干特征,其对应的权重系数命名为weight4,第8层网络对应的C3模块输出的目标主干特征,其对应的权重系数命名为weight5,当待检测图像包含大量小目标时,可以将weight3设置为2,将weight4设置为1,将weight5设置为0.5。当待检测图像几乎不包含微小目标或者基本为大目标时,可以将所有的权重系数均设置为0。此外,也可以是其他的设置方式,在此不再一一举例说明。
示例性地,根据预先设定的权重系数对各指定浅层输出的目标主干特征进行加权,得到加权主干特征。
例如,可以将第4层网络对应的C3模块对应的权重系数设置为2,然后根据权重系数对第4层网络对应的C3模块输出的目标主干特征进行加权,得到对应的加权主干特征。可以将第6层网络对应的C3模块对应的权重系数设置为1,根据,然后根据权重系数对第6层网络对应的C3模块输出的目标主干特征进行加权,得到对应的加权主干特征。可以将第8层网络对应的C3模块对应的权重系数设置为0.5,根据,然后根据权重系数对第8层网络对应的C3模块输出的目标主干特征进行加权,得到对应的加权主干特征。
步骤810,将多个尺度的加权主干特征分别输入到特征融合模块中对应层级的关键融合节点,并与特征融合模块中的原始融合特征进行再次融合,得到目标融合特征。
其中,特征融合模块中对应层级的关键融合节点可以指预先设定层级的Concat模块,如第20层(属于检测子网络),第23层,第26层,第29层。
示例性地,可以将第4层网络对应的C3模块(关键特征提取层)输出的加权主干特征输入到第23层的Concat模块中进行融合,将第6层网络对应的C3模块(关键特征提取层)输出的加权主干特征输入到第26层的Concat模块中进行融合,将第8层网络对应的C3模块(关键特征提取层)输出的加权主干特征输入到第29层的Concat模块中进行融合。这些Concat模块输出的经过再次融合后的特征具有更多的细节信息。
步骤812,将目标融合特征输入至检测头中,并获取检测头的输出,得到训练图像对应的预测框。
预测框可以用于表征训练图像中的一个目标。当训练图像中仅存在一个目标时,对应的预测框为一个,当训练图像中存在多个目标时,对应的预测框有多个。
步骤814,根据训练图像对应的预测框和真实框之间的差异,调整原始检测网络,直到原始检测网络收敛时,得到目标检测网络。
具体地,可以根据各待检测目标实际的真实框和预测得到的预测框之间的差异,建立损失函数,然后根据损失函数对原始检测网络进行调整,得到训练好的目标检测网络。
本申请实施例的技术方案,通过将多个尺度的加权主干特征分别输入到特征融合模块中对应层级的关键融合节点,并与特征融合模块中的原始融合特征进行融合,使得携带细节信息较多的主干特征和携带语义信息较丰富的原始融合特征进行再次融合,融合得到的特征具有更多细节信息,并且,目标主干特征的加权机制使得目标检测网络的小检测头更加关注待检测图像的细节信息,从而便于识别出待检测图像中的小目标,避免目标检测网络对待检测图像中的小目标漏捡,提高了目标检测的准确性。
需要说明的是,当原始检测网络中还包括检测子网络时,其对应的处理过程与前述的实施例类似,高分辨率特征经过加权处理得到的加权高分辨率特征和YOLOv5相应FPN结构输出的融合特征是检测子网络的输入;检测子网络的输出也作为特征融合模块的新的输入之一。目标检测网络的训练方法还包括:获取特征提取模块中最浅层次关键特征提取层输出的高分辨率特征;根据权重系数对高分辨率特征进行加权,得到加权高分辨率特征;将加权高分辨率特征和YOLOv5相应FPN结构输出的融合特征输入至检测子网络中,得到高细节检测特征;将高细节特征输入至对应的高分辨率检测头和特征融合模块中。
其具体的过程与图4和图5所示的实施例类似,在此不再赘述,对应预测得到的预测框的处理过程,也是通过真实框和预测框之间的差异,对目标检测网络进行调整,直到目标检测网络收敛时,得到目标检测网络。
请参见图9至图13,在一些实施例中,步骤“根据各真实框和预测框之间的差异,调整目标检测网络”包括但不限于以下步骤:
步骤902,根据真实框和预测框之间的角度差异,计算得到角度损失。
其中,真实框和预测框之间的角度差异请参见图10,预测框B和真实框BGT形成的夹角如图10中所示的α和β,当α≤π/4时,收敛过程首先最小化α,否则首先最小化β。
角度损失的定义如下公式所示:
在公式(1)至(4)中,ch为真实框和预测框的中心点的高度差,Λ为角度损失,σ为真实框和预测框的中心点的距离,为真实框的中心点的坐标,(bcx,bcy)为预测框的中心点的坐标。可以注意到,当α为π/2或0时,角度损失为0。
通过上述公式(1)至公式(4),能够计算得到角度损失。
步骤904,根据真实框和预测框之间的距离差异,计算得到距离损失。
其中,真实框和预测框之间的距离差异如图11所示,由图11可以知道,当α→0时,距离损失的贡献大大降低。相反,α越接近π/4时,距离损失的贡献越大。
距离损失定义可以由以下公式(5)和(6)计算得到:
在公式(5)和公式(6)中,Δ表示距离损失,(cw,ch)为预测框和真实框最下外接矩形的宽和高。
示例性地,可以通过公式(1)至公式(4)计算得到角度损失Λ,然后根据角度损失Λ、公式(5)和公式(6)计算得到距离损失Δ。
步骤906,根据真实框和预测框之间的尺度信息,计算得到形状损失。
其中,预测框和真实框之间的尺度信息如图12所示,形状损失的定义可以由公式(7)和公式(8)表示。
Ω=∑t=w,h(1-e-wt)θ(7)
其中,在公式(7)和公式(8)中,Ω表示形状损失,(w,h)表示预测框的宽和高,(wgt,hgt)表示真实框的宽和高,θ控制对形状损失的关注程度,为了避免过于关注形状损失而降低对预测框的移动,θ的取值范围可以为[2,6],θ可以取4。
示例性地,可以通过公式(7)和公式(8)计算得到形状损失。
步骤908,根据真实框和预测框之间的重叠区域,计算重叠区域损失。
其中,重叠区域可以如图13所示,重叠区域损失可以由公式(9)定义:
其中,IOU可以指重叠区域损失,BGT可以指真实框的面积,B可以指预测框的面积。
示例性地,可以通过上述公式(9)计算得到重叠区域损失IOU。
步骤910,根据角度损失、距离损失、形状损失和重叠区域损失计算得到总损失,并根据总损失调整原始检测网络。
具体地,总损失可以用于以下公式(10)表示:
通过公式(10)能够计算得到总损失,再根据总损失通过反向传播算法对原始检测网络进行调整,直到原始检测网络收敛时,得到目标检测网络。
本申请实施例的技术方案,通过采取SIOU Loss作为总损失函数,能够便于获取预测框和真实框之间的差异,从而便于对原始检测网络进行调整,得到目标检测网络,提高了后续目标检测网络对目标检测的准确性。
本申请实施例的技术方案,在训练原始检测网络时,训练平台所用的显卡为Tesla-P100,训练epoch为300,imgsz设定为640,最终得到训练好的目标检测网络对应的权重文件。
在测试集上将原YOLOv5网络,YOLOv5-Snet网络(引入检测子网络),YOLOv5-SIOU网络(将SIOU Loss作为总损失函数),YOLOv5-AW网络(未使用SIOU Loss作为总损失函数、引入加权主干特征和检测子网络)与YOLOv5-AW-SIoU网络(将SIOU Loss作为总损失函数、引入加权主干特征和检测子网络)进行对比实验,得到的结果如下表1所示。
表1
mAP_0.5 | 达到最优值所用的epoch | |
YOLOv5 | 0.41473 | |
YOLOv5-SIOU | 0.42830 | |
YOLOv5-Snet | 0.44166 | |
YOLOv5-AW | 0.46207 | 232 |
YOLOv5-AW-SIOU | 0.46668 | 202 |
其中,mAP_0.5即是IoU取值为0.5时,计算出模型的mAP数值,mAP指的是meanAverage Precision,就是给每一类分别计算AP,然后做mean平均。这是目标检测中一个统计概念,一般用于检测模型效果的。epoch越小说明对应的网络训练得越快,越能快速达到最优解。
由表1可知,将SIOU Loss作为总损失函数并引入加权主干特征和检测子网络的YOLOv5网络显著提升了原YOLOv5网络对尺寸较小的目标的检测效率,MAP提升了5%以上。
请参见图14,本申请的一些实施例还提供了一种目标检测方法,包括但不限于以下步骤:
步骤1402,获取训练图像集以及训练图像集中各训练图像中各待检测目标对应的真实框。
步骤1404,将训练图像输入原始检测网络中,其中原始检测网络包括特征提取模块、特征融合模块和检测子网络,特征提取模块的输出作为特征融合模块和该个检测子网络的输入,检测子网络的输出还作为特征融合模块的输入。
步骤1406,通过特征提取模块的多个关键特征提取层对训练图像进行特征提取,依次得到各关键特征提取层输出的多个目标主干特征,随着网络深度的增加,对应的目标主干特征携带的关于待检测图像的细节信息递减,携带的关于待检测图像的语义信息递增。
步骤1408,将多个尺度的目标主干特征分别进行加权处理,得到多个尺度的加权主干特征。
步骤1410,将多个尺度的加权主干特征分别输入到特征融合模块中对应层级的关键融合节点,并与特征融合模块中的原始融合特征进行再次融合,得到目标融合特征。
步骤1412,将加权高分辨率特征和YOLOv5相应FPN结构输出的融合特征输入至检测子网络中,得到高细节检测特征。
步骤1414,将目标融合特征输入至检测头中,将高细节特征输入至对应的高分辨率检测头和特征融合模块中,并获取检测头的输出,得到各训练图像中各待检测目标的预测框。
步骤1416,根据真实框和预测框之间的角度差异,计算得到角度损失。
步骤1418,根据真实框和预测框之间的距离差异,计算得到距离损失。
步骤1420,根据真实框和预测框之间的尺度信息,计算得到形状损失。
步骤1422,根据真实框和预测框之间的重叠区域,计算重叠区域损失。
步骤1424,根据角度损失、距离损失、形状损失和重叠区域损失计算得到总损失,并根据总损失调整原始检测网络,直到原始检测网络收敛时,得到目标检测网络,目标检测网络用于进行目标检测。
步骤1426,获取原始图像以及原始图像的图像分辨率。
步骤1428,判断图像分辨率是否大于或等于分辨率阈值。
若是,执行步骤1432,若否,执行步骤1442。
步骤1430,分割原始图像,得到多个待检测图像;其中,待检测图像和相邻的待检测图像存在重叠区域。
步骤1432,将各待检测图像输入至目标检测网络中,并获取属于同一原始图像的待检测图像对应的目标检测结果。
步骤1434,对各目标检测结果进行坐标转换,得到各目标检测结果在原始图像中的位置。
步骤1436,根据各目标检测结果在原始图像中的位置对各目标检测结果进行合并,得到合并检测结果。
步骤1438,根据非极大值抑制算法对合并检测结果进行筛选,得到原始图像的检测结果。
步骤1440,将原始图像输入至目标检测网络中,并获取目标检测网络的输出,得到原始图像对应的检测结果。
需要说明的是,步骤1438~步骤1440的具体步骤请参见图2至图13所示的实施例,在此不再一一赘述。
本申请实施例的技术方案,通过将多个尺度的加权主干特征分别输入到特征融合模块中对应层级的关键融合节点,并与特征融合模块中的原始融合特征进行融合,使得携带细节信息较多的目标主干特征和携带语义信息较丰富的原始融合特征进行再次融合,融合得到的特征具有更多细节信息,并且,主干特征的加权机制使得目标检测网络的小检测头更加关注待检测图像的细节信息,从而便于识别出待检测图像中的小目标,避免目标检测网络对待检测图像中的小目标漏捡,提高了目标检测的准确性。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的目标检测方法的目标检测装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似。
在一个实施例中,如图15所示,提供了一种目标检测装置,包括:图像获取模块1502、图像输入模块1504、提取模块1506、加权模块1508、融合模块1510和预测模块1512,其中:
图像获取模块1502,用于获取待检测图像;
图像输入模块1504,用于将待检测图像输入基于YOLOv5改进的目标检测网络中,其中,基于YOLOv5改进的目标检测网络包括特征提取模块和特征融合模块,特征提取模块的输出作为特征融合模块的输入;
提取模块1506,用于通过特征提取模块的多个关键特征提取层对待检测图像进行特征提取,依次得到多个尺度的目标主干特征,其中,目标主干特征是指在特征提取模块中按照连接顺序依次得到的关键图像特征,随着网络深度的增加,对应的目标主干特征携带的关于待检测图像的细节信息递减,携带的关于待检测图像的语义信息递增;
加权模块1508,用于将多个尺度的目标主干特征分别进行加权处理,得到多个尺度的加权主干特征;
融合模块1510,用于将多个尺度的加权主干特征分别输入到特征融合模块中对应层级的关键融合节点,并与特征融合模块中的原始融合特征进行再次融合,得到目标融合特征;
预测模块1512,用于将目标融合特征输入至检测头中,并获取检测头的输出,得到待检测图像对应的预测框,并根据预测框确定待检测图像的目标检测结果。
在一些实施例中,目标检测装置还包括:
高分辨率特征获取模块,用于获取特征提取模块输出的最大尺度的目标主干特征,得到高分辨率特征。
高分辨率特征加权模块,用于根据权重系数对高分辨率特征进行加权,得到加权高分辨率特征。
检测子网络输入模块,用于将加权高分辨率特征和YOLOv5相应FPN结构输出的融合特征输入至检测子网络中,得到高细节检测特征。
高分辨率特征融合模块,用于将高细节特征输入至对应的高分辨率检测头和特征融合模块中。
在一些实施例中,目标检测装置还包括:
原始图像获取模块,用于获取原始图像以及原始图像的图像分辨率。
分割模块,用于若图像分辨率大于或等于分辨率阈值,则分割原始图像,得到多个待检测图像;其中,待检测图像和相邻的待检测图像存在重叠区域。
在一些实施例中,目标检测装置还包括:
目标检测结果获取模块,用于获取属于同一原始图像的待检测图像对应的目标检测结果。
坐标转换模块,用于对各目标检测结果进行坐标转换,得到各目标检测结果在原始图像中的位置;
检测结果确定模块,用于根据各目标检测结果在原始图像中的位置确定原始图像的检测结果。
在一些实施例中,检测结果确定模块,还用于根据各目标检测结果在原始图像中的位置对各目标检测结果进行合并,得到合并检测结果;根据非极大值抑制算法对合并检测结果进行筛选,得到原始图像的检测结果。
如图16所示,本申请的一些实施例还提出一种目标检测网络的训练装置,包括:
训练数据获取模块1602,用于获取训练图像集以及训练图像集中各训练图像中各待检测目标对应的真实框;
训练图像输入模块1604,用于将训练图像输入基于YOLOv5改进的原始检测网络中,其中,基于YOLOv5改进的原始检测网络包括特征提取模块和特征融合模块,特征提取模块的输出作为特征融合模块的输入;
训练图像提取模块1606,用于通过特征提取模块的多个关键特征提取层对待检测图像进行特征提取,依次得到多个尺度的目标主干特征,其中,目标主干特征是指在特征提取模块中按照连接顺序依次得到的关键图像特征,随着网络深度的增加,对应的目标主干特征携带的关于训练图像的细节信息递减,携带的关于训练图像的语义信息递增;
训练图像特征加权模块1608,用于将多个尺度的目标主干特征分别进行加权处理,得到多个尺度的加权主干特征;
训练图像特征融合模块1610,用于将多个尺度的加权主干特征分别输入到特征融合模块中对应层级的关键融合节点,并与特征融合模块中的原始融合特征进行再次融合,得到目标融合特征;
训练图像预测模块1612,用于将目标融合特征输入至检测头中,并获取检测头的输出,得到训练图像对应的预测框。
训练调整模块1614,用于根据训练图像对应的预测框和真实框之间的差异,调整原始检测网络,直到原始检测网络收敛时,得到目标检测网络。
在一些实施例中,训练调整模块还用于根据真实框和预测框之间的角度差异,计算得到角度损失;根据真实框和预测框之间的距离差异,计算得到距离损失;根据真实框和预测框之间的尺度信息,计算得到形状损失;根据真实框和预测框之间的重叠区域,计算重叠区域损失;根据角度损失、距离损失、形状损失和重叠区域损失计算得到总损失,并根据总损失调整目标检测网络。
上述目标检测装置或目标检测网络的训练装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图17所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种目标检测方法或者目标检测网络的训练方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图17中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述的目标检测方法或者目标检测网络的训练方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现目标检测方法或者目标检测网络的训练方法的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现目标检测方法或者目标检测网络的训练方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于YOLOv5改进的目标检测方法,其特征在于,所述方法包括:
获取待检测图像;
将所述待检测图像输入基于YOLOv5改进的目标检测网络中,其中,所述基于YOLOv5改进的目标检测网络包括特征提取模块和特征融合模块,所述特征提取模块的输出作为所述特征融合模块的输入;
通过所述特征提取模块的多个关键特征提取层对所述待检测图像进行特征提取,依次得到多个尺度的目标主干特征,其中,所述目标主干特征是指在所述特征提取模块中按照连接顺序依次得到的关键图像特征,随着网络深度的增加,对应的所述目标主干特征携带的关于所述待检测图像的细节信息递减,携带的关于所述待检测图像的语义信息递增;
将所述多个尺度的目标主干特征分别进行加权处理,得到多个尺度的加权主干特征;
将所述多个尺度的加权主干特征分别输入到所述特征融合模块中对应层级的关键融合节点,并与所述特征融合模块中的原始融合特征进行再次融合,得到目标融合特征;
将所述目标融合特征输入至检测头中,并获取所述检测头的输出,得到所述待检测图像对应的预测框,并根据所述预测框确定所述待检测图像的目标检测结果。
2.根据权利要求1所述的方法,其特征在于,所述目标检测网络还包括检测子网络,所述特征提取模块的输出作为所述检测子网络的输入,所述检测子网络的输出作为所述所述特征融合模块的输入;
所述方法还包括:
获取所述特征提取模块输出的最大尺度的目标主干特征,得到高分辨率特征;
根据权重系数对所述高分辨率特征进行加权,得到加权高分辨率特征;
将所述加权高分辨率特征和YOLOv5相应FPN结构输出的融合特征输入至检测子网络中,得到高细节检测特征;
将所述高细节特征输入至对应的高分辨率检测头和所述特征融合模块中。
3.根据权利要求1或2所述的方法,其特征在于,在获取待检测图像之前,所述方法还包括:
获取原始图像以及所述原始图像的图像分辨率;
若所述图像分辨率大于或等于分辨率阈值,则分割所述原始图像,得到多个待检测图像;其中,所述待检测图像和相邻的待检测图像存在重叠区域。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
获取属于同一所述原始图像的待检测图像对应的目标检测结果;
对各所述目标检测结果进行坐标转换,得到各所述目标检测结果在所述原始图像中的位置;
根据各所述目标检测结果在所述原始图像中的位置确定所述原始图像的检测结果。
5.根据权利要求4所述的方法,其特征在于,所述根据各所述目标检测结果在所述原始图像中的位置确定所述原始图像的检测结果包括:
根据各所述目标检测结果在所述原始图像中的位置对各所述目标检测结果进行合并,得到合并检测结果;
根据非极大值抑制算法对所述合并检测结果进行筛选,得到所述原始图像的检测结果。
6.一种目标检测网络的训练方法,其特征在于,所述方法包括:
获取训练图像集以及所述训练图像集中各训练图像中各待检测目标对应的真实框;
将所述训练图像输入基于YOLOv5改进的原始检测网络中,其中,所述基于YOLOv5改进的原始检测网络包括特征提取模块和特征融合模块,所述特征提取模块的输出作为所述特征融合模块的输入;
通过特征提取模块的多个关键特征提取层对待检测图像进行特征提取,依次得到多个尺度的目标主干特征,其中,所述目标主干特征是指在所述特征提取模块中按照连接顺序依次得到的关键图像特征,随着网络深度的增加,对应的所述目标主干特征携带的关于所述训练图像的细节信息递减,携带的关于所述训练图像的语义信息递增;
将所述多个尺度的目标主干特征分别进行加权处理,得到多个尺度的加权主干特征;
将所述多个尺度的加权主干特征分别输入到所述特征融合模块中对应层级的关键融合节点,并与所述特征融合模块中的原始融合特征进行再次融合,得到目标融合特征;
将所述目标融合特征输入至检测头中,并获取所述检测头的输出,得到所述训练图像对应的预测框;
根据所述训练图像对应的预测框和所述真实框之间的差异,调整所述原始检测网络,直到所述原始检测网络收敛时,得到目标检测网络。
7.根据权利要求6所述的方法,其特征在于,所述根据所述训练图像对应的预测框和所述真实框之间的差异,调整所述原始检测网络,包括:
根据所述真实框和所述预测框之间的角度差异,计算得到角度损失;
根据所述真实框和所述预测框之间的距离差异,计算得到距离损失;
根据所述真实框和所述预测框之间的尺度信息,计算得到形状损失;
根据所述真实框和所述预测框之间的重叠区域,计算重叠区域损失;
根据所述角度损失、距离损失、形状损失和重叠区域损失计算得到总损失,并根据所述总损失调整所述原始检测网络。
8.一种目标检测装置,其特征在于,所述装置包括:
图像获取模块,用于获取待检测图像;
图像输入模块,用于将所述待检测图像输入基于YOLOv5改进的目标检测网络中,其中,所述基于YOLOv5改进的目标检测网络包括特征提取模块和特征融合模块,所述特征提取模块的输出作为所述特征融合模块的输入;
提取模块,用于通过特征提取模块的多个关键特征提取层对待检测图像进行特征提取,依次得到多个尺度的目标主干特征,其中,所述目标主干特征是指在所述特征提取模块中按照连接顺序依次得到的关键图像特征,随着网络深度的增加,对应的所述目标主干特征携带的关于所述待检测图像的细节信息递减,携带的关于所述待检测图像的语义信息递增;
加权模块,用于将所述多个尺度的目标主干特征分别进行加权处理,得到多个尺度的加权主干特征;
融合模块,用于将所述多个尺度的加权主干特征分别输入到所述特征融合模块中对应层级的关键融合节点,并与所述特征融合模块中的原始融合特征进行再次融合,得到目标融合特征;
预测模块,用于将所述目标融合特征输入至检测头中,并获取所述检测头的输出,得到所述待检测图像对应的预测框,并根据所述预测框确定所述待检测图像的目标检测结果。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述的方法的步骤,或者实现权利要求6至7所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤,或者实现权利要求6至7所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310180011.1A CN116310899A (zh) | 2023-02-14 | 2023-02-14 | 基于YOLOv5改进的目标检测方法及装置、训练方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310180011.1A CN116310899A (zh) | 2023-02-14 | 2023-02-14 | 基于YOLOv5改进的目标检测方法及装置、训练方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116310899A true CN116310899A (zh) | 2023-06-23 |
Family
ID=86829942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310180011.1A Pending CN116310899A (zh) | 2023-02-14 | 2023-02-14 | 基于YOLOv5改进的目标检测方法及装置、训练方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116310899A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116645502A (zh) * | 2023-07-27 | 2023-08-25 | 云南大学 | 输电线路图像检测方法、装置及电子设备 |
-
2023
- 2023-02-14 CN CN202310180011.1A patent/CN116310899A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116645502A (zh) * | 2023-07-27 | 2023-08-25 | 云南大学 | 输电线路图像检测方法、装置及电子设备 |
CN116645502B (zh) * | 2023-07-27 | 2023-10-13 | 云南大学 | 输电线路图像检测方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109816012B (zh) | 一种融合上下文信息的多尺度目标检测方法 | |
CN109683699B (zh) | 基于深度学习实现增强现实的方法、装置及移动终端 | |
CN114202672A (zh) | 一种基于注意力机制的小目标检测方法 | |
CN111754394B (zh) | 鱼眼图像中的对象检测方法、装置及存储介质 | |
CN110176024B (zh) | 在视频中对目标进行检测的方法、装置、设备和存储介质 | |
CN111667001B (zh) | 目标重识别方法、装置、计算机设备和存储介质 | |
CN113076871A (zh) | 一种基于目标遮挡补偿的鱼群自动检测方法 | |
CN112668573B (zh) | 目标检测定位置信度确定方法、装置、电子设备及存储介质 | |
CN111079739A (zh) | 一种多尺度注意力特征检测方法 | |
CN111666922A (zh) | 视频匹配方法、装置、计算机设备和存储介质 | |
CN116052026B (zh) | 一种无人机航拍图像目标检测方法、系统及存储介质 | |
CN113850136A (zh) | 基于yolov5与BCNN的车辆朝向识别方法及系统 | |
CN114519819B (zh) | 一种基于全局上下文感知的遥感图像目标检测方法 | |
CN116310899A (zh) | 基于YOLOv5改进的目标检测方法及装置、训练方法 | |
CN116645592A (zh) | 一种基于图像处理的裂缝检测方法和存储介质 | |
CN114663598A (zh) | 三维建模方法、装置和存储介质 | |
CN117152484B (zh) | 基于改进的YOLOv5s的小目标布匹瑕疵检测方法 | |
CN111027551B (zh) | 图像处理方法、设备和介质 | |
CN114882490B (zh) | 一种基于点引导定位的无受限场景车牌检测分类方法 | |
CN116704511A (zh) | 设备清单文字识别方法和装置 | |
CN116310832A (zh) | 遥感图像处理方法、装置、设备、介质及产品 | |
CN115731442A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN116091946A (zh) | 一种基于YOLOv5的无人机航拍图像目标检测方法 | |
CN115713769A (zh) | 文本检测模型的训练方法、装置、计算机设备和存储介质 | |
CN115331146A (zh) | 一种基于数据增强与特征融合的微小目标自适应检测方法 |
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 |