CN116664859A - 移动端实时目标检测方法、终端设备及存储介质 - Google Patents
移动端实时目标检测方法、终端设备及存储介质 Download PDFInfo
- Publication number
- CN116664859A CN116664859A CN202310661782.2A CN202310661782A CN116664859A CN 116664859 A CN116664859 A CN 116664859A CN 202310661782 A CN202310661782 A CN 202310661782A CN 116664859 A CN116664859 A CN 116664859A
- Authority
- CN
- China
- Prior art keywords
- module
- channel
- features
- convolution
- mlp
- 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
- 238000003860 storage Methods 0.000 title claims abstract description 9
- 238000001514 detection method Methods 0.000 title abstract description 48
- 238000000034 method Methods 0.000 claims abstract description 42
- 230000003993 interaction Effects 0.000 claims abstract description 17
- 238000000605 extraction Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010606 normalization Methods 0.000 claims description 6
- 238000002474 experimental method Methods 0.000 description 19
- 230000000694 effects Effects 0.000 description 14
- 238000013527 convolutional neural network Methods 0.000 description 12
- 238000013461 design Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 230000007246 mechanism Effects 0.000 description 12
- 239000012014 frustrated Lewis pair Substances 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 238000002679 ablation Methods 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000012549 training Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 101100153591 Cricetulus griseus TOP1 gene Proteins 0.000 description 4
- 238000012512 characterization method Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 230000018109 developmental process Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000011897 real-time detection Methods 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 2
- 239000000306 component Substances 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000006698 induction Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- BASFCYQUMIYNBI-UHFFFAOYSA-N platinum Chemical compound [Pt] BASFCYQUMIYNBI-UHFFFAOYSA-N 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 description 1
- 229920002430 Fibre-reinforced plastic Polymers 0.000 description 1
- 101000822633 Pseudomonas sp 3-succinoylsemialdehyde-pyridine dehydrogenase Proteins 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 239000011151 fibre-reinforced plastic Substances 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 229910052697 platinum Inorganic materials 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- 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/42—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
-
- 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
- G06N3/045—Combinations of networks
-
- 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
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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/084—Backpropagation, e.g. using gradient descent
-
- 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/0985—Hyperparameter optimisation; Meta-learning; Learning-to-learn
-
- 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/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- 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
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Telephone Function (AREA)
Abstract
本发明公开了一种移动端实时目标检测方法、终端设备及存储介质,目标检测方法包括对输入的特征图分通道提取特征后进行拼接,得到信息交互后的特征图;将信息交互后的特征图分为第一通道和第二通道;利用PGConv模块提取第一通道中的局部特征,利用PGConv模块和ShiftMLP模块分别提取第二通道中的局部特征和全局特征;拼接第一通道中的局部特征以及第二通道中的局部特征和全局特征,得到目标的特征。本发明的移动端实时目标检测方法,能够解决通道无法相互通信的问题,同时能够大量的降低计算量与参数量,可在移动端获取精确的目标检测结果。
Description
技术领域
本发明属于实时目标检测技术领域,具体是涉及一种针对轻量级、多尺度对象的移动端实时目标检测方法、终端设备及计算机可读存储介质。
背景技术
目标检测是计算机视觉领域的重要任务之一,其主要目标是在图像中定位和识别出特定的物体。在过去的几十年中,研究者们提出了许多目标检测方法,其中包括基于传统的机器学习算法和基于深度学习的方法。虽然这些方法在一定程度上取得了成功,但是它们仍然存在一些问题,例如计算复杂度高、精度不高、适应性差等。特别是在多尺度目标检测中,由于卷积的局部性和下采样操作的影响,可能会出现物体的尺度变化导致检测不准确的问题。与此同时,随着计算机不断发展,计算机运算性能的提升、神经网络模型的发展以及便捷的数据获取方式,目标检测技术在自动驾驶、安防监控、智能家居等领域都取得了突破性进展。但是深度神经网络对硬件平台的要求也在日益提高。目标检测已不满足于仅在云端进行复杂数据运算和推理,逐渐开始向有实时检测需求的移动端迁移,如智能手机、车载电脑、智能传感器等。
针对上述问题,研究者们提出了各种轻量化网络来提高检测速度和降低模型参数量和计算复杂度。2015年,研究者在提出YOLO v1算法的同时提出了一个轻量化版本Tiny-YOLO v1,该算法将YOLO v1原有的24层卷积结构简化为9层,在VOC2007数据集上以相比YOLO v1降低10.7%mAP的代价实现了检测速度的3.4倍提升,由于该算法的特征提取网络采用的是全卷积网络,因此输入图像的大小必须是固定的。这导致当输入图像尺寸变化较大时,网络对目标的检测能力会受到影响,检测精度会下降。同时,YOLO v1采用的是单尺度预测框,无法适应不同尺度目标的检测需求,对于较小的目标,检测效果会相对较差。这些问题限制了YOLO v1在实际应用中的性能表现。2016年,Iandola等提出了SqueezeNet轻量化网络,该网络借鉴了Inception网络的设计思想利,通过利用卷积层、Fire module和池化层构建的SqueezeNet模型大小只有4.8MB,却在ImageNet上达到了相比AlexNet略优的57.5%的TOP-1分类精度,由于采用了较少的卷积层和卷积核,导致其特征提取能力相对较弱,无法提取出复杂的图像特征。2017年,Howard等提出了MobileNetv1轻量化网络,该网络使用了深度可分离卷积(Depthwise Separable Convolution,DWConv)结构代替传统卷积结构,通过该方法可使卷积操作运算量降低为原有的1/8~1/9。与此同时,通过引入时间因子α和分辨率因子ρ进一步降低模型参数量,最终MobileNetv1参数量约为4.2M,且在ImageNet数据集上实现了70.6%的TOP-1分类精度,MobileNetv1采用可分离卷积虽然降低了计算复杂度,但是却导致了精度损失和特征表达能力的不足。同年,Zhang等提出了ShuffleNetv1轻量化网络,该模型对常规残差结构进行了改进,将与输入特征图相连的第一个卷积层替换为分组卷积,并利用Channel shuffle操作对分组卷积各组输出结果进行信息交互,以此实现在降低运算量的情况下保证网络性能,ShuffleNetv1最终在ImageNet数据集上实现了73.7%的TOP-1分类精度。2018年,Ma等在ShuffleNetv1的基础上又提出了ShuffleNetv2轻量化网络,如图1所示,图1中的Channel Split为通道分离模块,1×1Conv为1×1卷积模块,3×3DWConv为3×3深度可分离卷积模块,Concat为拼接模块,ChannelShuffle为通道混洗模块。ShuffleNetv2轻量化网络对输入特征图进行处理时首先进行了通道划分,其中一个分支不采取任何操作,另一个分支经过卷积处理后,与前一个分支拼接后再进行Channel Shuffle操作,以此实现信息交互,最终ShuffleNetv2在ImageNet数据集上实现了74.9%的TOP-1分类精度。ShuffleNet采用卷积与深度可分离卷积来降低计算量,但卷积网络的局部性始终无法进行全局特征处理。
由于卷积网络的局部性,其难以获得全局特征。而基于自注意力机制的模型提出,可以让神经网络更加专注于重要信息,同时能够自适应地关注到不同位置的信息,从而使得神经网络能够处理全局特征。2021年,Dosovitskiy等提出了ViT模型,该模型作为卷积神经网络的替代方案,能够有效的提高网络性能,同时也会增加网络的计算量与参数量,若将其应用到移动端将无法进行推理,其主要原因是由于移动端属于算力低的设备之一,因此无法进行计算量与参数量较大的模型推理。为了减少网络参数,同年,Touvron等人提出了DelT模型,此模型拥有大约5~6百万的参数,同时准确度比MobileNetv3低3%。2022年,MobileViT系列模型,致力于轻量化ViT模型,由于MobileViTv1采用传统的ViT模型,导致网络模型较重,于是在MobileViTv2和MobileViTv3中采用线性复杂度的自注意力机制来提高网络推理时间,由于堆叠大量的ViT模型,能够提高精度,但依然还是无法避免大量参数的困扰,难以将其应用于移动端。
发明内容
本发明要解决的技术问题是现有目标检测方法应用在移动端时,存在的参数量大、精度低的问题,因此提供了一种针对轻量级、多尺度对象的移动端实时目标检测方法、终端设备及计算机可读存储介质。
本发明的第一方面公开了一种针对轻量级、多尺度对象的移动端实时目标检测方法,包括:
对输入的特征图分通道提取特征后进行拼接,得到信息交互后的特征图;
将信息交互后的特征图分为第一通道和第二通道共2个通道;
利用PGConv模块提取所述第一通道中的局部特征,利用PGConv模块和ShiftMLP模块分别提取所述第二通道中的局部特征和全局特征;
拼接所述第一通道中的局部特征以及所述第二通道中的局部特征和全局特征,得到目标的特征;
所述PGConv模块包括依次设置的第一卷积模块和组卷积模块;
所述ShiftMLP模块包括依次设置的Shift操作模块和MLP网络模块。
优选地,对输入的特征图分通道提取特征后进行拼接,得到信息交互后的特征图,具体包括:
将输入的特征图分为第三通道和第四通道共2个通道;
所述第四通道包括依次设置的1×1卷积模块和ShiftMLP模块;
将所述第四通道提取的特征与所述第三通道的特征进行拼接,得到信息交互后的特征图。
优选地,利用PGConv模块提取所述第一通道中的局部特征,具体包括:
依次利用1×1卷积模块、3×3PGConv模块和1×1卷积模块提取所述第一通道中的局部特征。
优选地,利用PGConv模块和ShiftMLP模块分别提取所述第二通道中的局部特征和全局特征,具体包括:
利用3×3PGConv模块提取所述第二通道中的局部特征;
利用与所述3×3PGConv模块连接的所述ShiftMLP模块提取所述第二通道中的全局特征;
所述ShiftMLP模块还与1×1卷积模块连接。
优选地,所述第一卷积模块包括第一通道划分模块、1×1卷积模块和第一拼接模块;
所述第一通道划分模块用于将信息交互后的特征图分为第五通道和第六通道共2个通道;
所述第六通道包括1×1卷积模块;
所述第一拼接模块用于将所述第六通道提取的特征与所述第五通道的特征进行拼接。
优选地,所述组卷积模块包括第二通道划分模块、1×1卷积模块、第二拼接模块和3×3深度可分离卷积模块;
所述第二通道划分模块用于所述第一拼接模块输出的特征分为第七通道和第八通道共2个通道;
所述第八通道包括1×1卷积模块;
所述第二拼接模块用于将所述第八通道提取的特征与所述第七通道的特征进行拼接;
所述3×3深度可分离卷积模块与所述第二拼接模块连接。
优选地,ShiftMLP模块还包括层归一化模块和正则化模块;
所述ShiftMLP模块具体包括依次设置的Shift操作模块、归一化模块、MLP网络模块和正则化模块。
优选地,所述MLP网络模块包括依次设置的1×1卷积模块、Dropout模块、1×1卷积模块和Dropout模块。
本发明的第二方面公开了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本发明的第三方面公开了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明的有益效果是:
卷积神经网络(Convolution Neural Network,CNN)是一种局部连接和权值共享的神经网络,其空间归纳偏置使得它们能够使用相对较少的参数来学习表征。然而,由于卷积操作的局部性质,CNN难以获取到全局的信息特征。为了学习全局特征,可以采用基于Self-Attention的ViT模型。ViT虽然表征能力更强,但是参数量往往较大。因而,本发明提出一种面向多尺度对象的、能在移动端运行的轻量级的实时检测模型,即通道洗牌更快的网络(Channel Shuffling Faster Networks,SFasterNet)。SFasterNet是基于ViT和CNNs两者的优点设计出来的高效的轻量级网络。由于ShuffleNet采用CNNs作为主干网来实现移动端的目标检测,存在全局表征能力弱、对目标提取特征少等问题,本发明提出的ShiftMLP模块拥有较少的参数量来有效的提高全局表征能力。与此同时,采用多尺度单通道卷积网络结构作为主干网,并且对不同尺度提取出来的特征使用PAN-FPN特征金字塔进行特征融合,存在高FLOPS和大量冗余计算的问题,为此设计了一个替代普通卷积的模块PGConv,该模块能够有效减少冗余计算和内存访问,并且可以更有效地提取空间特征。在Pascal VOC2007目标检测任务上,SFasterNet获得42%的mAP,在相同的网络结构下,采用常规卷积的网络ShuffleNetv2有1%的提升;采用ViT结构的网络MobileViTv3有7.4%的提升。与此同时,SFasterNet能够在各项指标上均能涨点0.3%~4.5%,并且仅拥有1.4G的FLOPs和1.3M的参数量。
附图说明
图1为现有技术中的ShuffleNetV2的构建模块,其中(a)为ShuffleNet的基本单元;(b)为ShuffleNet下采样(2×)的单元;
图2为本发明实施例中针对轻量级、多尺度对象的移动端实时目标检测方法(SFasterNet)的构建模块,其中(a)为SFasterNet的轻量层基本单元;(b)为SFasterNet核心单元;
图3为标准ViT模型的结构示意图;
图4为卷积过程示意图,其中(a)为常规卷积过程示意图;(b)为深度可分离卷积过程示意图;(c)为局部卷积过程示意图;(d)为本发明PGConv卷积过程示意图;
图5为特征图可视化,其中(a)为SFasterNet中间层特征图;(b)ShuffleNetv2中间层特征图,其是Stage3的特征图;
图6为Shift操作示意图;
图7为各阶段特征对比图,其中(a)为SFasterNet各阶段特征图;(b)为ShuffleNetv2各阶段特征图;
图8为ShuffleNetv2中Stage4对应特征图,其中(a)为PGConv版本所得Stage4的特征图;(b)为DWConv版本所得Stage4的特征图;
图9为MobileViTv3各阶段的特征图,其中(a)为采用ShiftMLP模块的MobileViTv3各阶段的特征图;(b)采用Linear Transformer模块的MobileViTv3各阶段的特征图;
图10为本发明实施例中针对轻量级、多尺度对象的移动端实时目标检测方法的流程图。
具体实施方式
随着深度学习技术的发展,目标检测算法也得到了极大的改善。其中,多尺度处理技术已经成为了目标检测算法中的一个重要的发展方向。因为在自然场景中,目标的大小和位置会随着摄像机的距离、场景的变化而变化,而且不同的目标也会有不同的大小。因此,为了提高目标检测算法的鲁棒性,多尺度处理技术成为了必要的一步。
另外,随着移动端设备的普及,轻量级模型的研究也得到了广泛的关注。由于移动端设备的计算能力和存储资源有限,因此需要设计出轻量级模型来满足移动端设备的需求。一种常见的解决方案是通过网络压缩和量化技术来减小模型的大小和计算量,另一种解决方案是设计出针对移动端设备的特定骨干网络。
综合考虑多尺度处理和轻量级模型的需求,目前已经有一些成功的解决方案。例如,基于MobileNetv2骨干网络的YOLOv3-Tiny和基于ShuffleNet骨干网络的SSDMobileNetv2等轻量级目标检测检测模型,都采用了多尺度处理技术,可以适应不同大小的目标,并且可以在移动设备上高效地运行。其中,MobileNet使用深度可分离卷积来构建轻量级神经网络,同时,还引入了两个简单的全局超参数,可以有效地在延迟和准确性之间进行权衡。MobileNet将图像经过深度可分离卷积层、激活函数、池化层等处理后得到最终的输出结果。与此同时,在训练过程中使用全局超参数来控制模型大小和延迟,并且通过宽度乘数和分辨率乘数来进一步优化模型效率。ShuffleNet是一种卷积神经网络架构,其中有两个关键技术,分别是逐通道组卷积核通道重排。逐通道组卷积将输入张量分成多个较小的张量,然后对每个小张量进行卷积操作。这种方法可以减少计算复杂度和内存消耗。而通道重排技术则可以将输入张量中的通道重新排列,以便在逐通道组卷积之前最大程度地减少计算复杂度。
自注意力机制在目标检测领域的应用越来越受到关注。在多尺度目标检测中,自注意力机制可以自适应地学习不同尺度特征之间的相关性,从而更好地捕获目标的语义信息。此外,自注意力机制还可以在轻量级模型中提高性能。目前,一些基于自注意力机制的多尺度目标检测模型已经被提出,例如SAPD、SOGNet等。这些模型采用自注意力机制来融合不同尺度的特征,从而更好地捕获目标的细节信息和上下文信息。此外,在轻量级模型中,自注意力机制也被广泛应用。例如,EfficientDet-Lite模型中采用了基于深度可分离卷积和自注意力机制的轻量级骨干网络来提高模型的性能。同样,MobileViT结合了CNN和ViT的优势构建了一个轻量级网络模型。利用Transformer对全局信息进行编码学习patches之间信息。MobileViT首先对图像采用卷积核大小为n×n来进行局部建模,然后使用Transformer进行全局建模,从而达到更好的性能与泛化能力。
基于此,一些模型仍然存在问题,例如,ShuffleNet采用逐通道组卷积,能够减少计算复杂度和内存消耗,但通道之间无法相互通信,为解决该问题,使用通道重排的方法尽可能的还原,使其通信。但该问题依然无法完美的解决。MobileViT为解决通道之间无法通信,于是引入Transformer结构来实现全局通信。由于Transformer结构参数较多,对于移动端来说,推理速度慢,无法得到实际的应用。MobileViTv2将原来标准版Transformer结构替换成线性时间复杂度的Transformer结构,有效的减少了参数。基于此,MobileViTv3发现在MobileViTv2中,采用线性Transformer结构来进行全局建模的效果没有标准的Transformer结构高,于是采用残差结构来进行特征融合来提高精度。
通过对上面的问题进行分析发现,采用组卷积可以减少计算复杂度和内存消耗,为此,本发明设计出来了PGConv来替换深度可分离卷积,能够有效的解决通道之间无法通信问题,通过将特征图的通道按照一定的比例分成两份,其中一部分通道进行卷积提取特征,另一部分与其进行残差拼接。由于该模块无法完全实现全局建模,基于此,本发明通过对MobileViT模型发现,MLP模块是ViT模型中的一个核心组件之一,其作用是在不需要卷积的情况下,能够提取有用的特征。于是,本发明设计出ShiftMLP模块来替代Transformer模块,能够减少参数和计算量,同时也能有效的提高精度。如表1所示,在同等尺度下,各个模块的参数量和计算量对比如下,本发明以牺牲适当的FLOPs来提高检测精度。本发明的整体方案如图2和图10所示,图2中Channel Split为通道分离模块,1×1Conv为1×1卷积模块,ShiftMLP为由Shift操作和MLP模块组成的模块,Concat为拼接模块,PGConv模块为由PConv和GConv组成的模块,3×3DWConv为3×3深度可分离卷积模块,Channel Shuffle为通道混洗模块,BatchNorm为层归一化模块,MLP为多层感知器,DropPath为正则化模块。
表1.各模块参数对比
一个标准的ViT模型,如图3所示,将输入分割成大小相等的图像块,并且每个图像块调整为固定大小。然后将每个图像块展平为向量/>并通过一个可学习的线性变换将其映射到一个d维嵌入空间/>中。在计算机视觉中,Transformer中自注意力的计算成本是O(N2d)。其中C、H和W分别表示张量的通道、高度和宽度,P=wh是高h和宽w的patch中的像素个数,N是patch的个数。由于这些模型忽视了CNN固有的空间归纳偏差,因此他们需要更多的参数来学习视觉表征。例如,与基于CNN的网络DeepLabv3相比,基于ViT的网络DPT学习了多达6倍的参数,以提供相似的分割性能(DPTvs.DeepLabv3:345M vs.59M)。此外,与CNN相比,这些模型表现出不符合标准的可优化性。这些模型对L2正则化很敏感,需要大量数据增强以防止过拟合。
本发明提出了一种轻量级的模型,SFasterNet,核心思想是用PGConv来对图像进行局部特征提取,然后采用ViT中MLP组件和Shift操作构成的ShiftMLP模块作为全局特征提取。这使得本发明能够更好提取有价值的特征。
本发明的针对轻量级、多尺度对象的移动端实时目标检测方法,如图2所示,包括:
步骤1、对输入的特征图分通道提取特征后进行拼接,得到信息交互后的特征图,具体包括:
将输入的特征图分为第三通道和第四通道共2个通道,其中第三通道为图2(a)左侧的从Channel Split直至Concat的通道,第四通道为图2(a)右侧的通道,其包括依次设置的1×1卷积模块和ShiftMLP模块;其中ShiftMLP模块包括依次设置的Shift操作模块和MLP网络模块。
然后将第四通道提取的特征与第三通道的特征进行拼接(Concat),得到信息交互后的特征图。
步骤2、将信息交互后的特征图分为第一通道和第二通道共2个通道,图2(b)中的左侧通道为第一通道,右侧通道为第二通道;
步骤3、利用PGConv模块提取第一通道中的局部特征,利用PGConv模块和ShiftMLP模块分别提取第二通道中的局部特征和全局特征。
步骤4、拼接第一通道中的局部特征以及第二通道中的局部特征和全局特征,得到目标的特征。
本发明实施例步骤3中的利用PGConv模块提取第一通道中的局部特征,具体为:依次利用1×1卷积模块、3×3PGConv模块和1×1卷积模块提取第一通道中的局部特征。
本发明实施例步骤3中的利用PGConv模块和ShiftMLP模块分别提取第二通道中的局部特征和全局特征,具体包括:
利用3×3PGConv模块提取第二通道中的局部特征;
利用与3×3PGConv模块连接的ShiftMLP模块提取第二通道中的全局特征;
ShiftMLP模块还与1×1卷积模块连接。
其中PGConv模块包括依次设置的第一卷积模块和组卷积模块;
进一步地,第一卷积模块包括第一通道划分模块、1×1卷积模块和第一拼接模块;
第一通道划分模块用于将信息交互后的特征图分为第五通道和第六通道共2个通道;
第六通道包括1×1卷积模块;
第一拼接模块用于将第六通道提取的特征与第五通道的特征进行拼接。
组卷积模块包括第二通道划分模块、1×1卷积模块、第二拼接模块和3×3深度可分离卷积模块(3×3DWConv);
第二通道划分模块用于将第一拼接模块输出的特征分为第七通道和第八通道共2个通道;
第八通道包括1×1卷积模块;
第二拼接模块用于将第八通道提取的特征与第七通道的特征进行拼接;
3×3深度可分离卷积模块与第二拼接模块连接。
深度可分离卷积(Depthwise Separable Convolution,DWConv)是Conv的一个流行的变体,已被广泛用作许多神经网络的关键模块中。对于输入DWConv采用c个过滤器/>来计算输出/>如图4(b)所示,每个滤波器在一个输入通道上空间滑动,并贡献给一个输出通道。与具有h×w×k2×c2的常规Conv相比,这种深度计算使得DWConv的FLOPs降低至h×w×k2×c。虽然可以有效减少FLOPs,但DWConv不能简单的替代常规Conv,因为它会导致精度严重下降。因此,在实践中,DWConv的通道数c增加到c′(c′>c)以补偿精度下降,例如,在倒置残差块中DWConv的宽度扩大了6倍。然而,这会导致更高的内存访问,从而导致不可忽略的延迟并降低减慢整体计算速度,尤其是对于I/O绑定设备。特别是内存访问次数现在升级为
h×w×2c′+k2≈h×w×2c′ (1)
这比常规的Conv要高,即,
h×w×2c+k2×c2≈h×w×2c (2)
注意h×w×2c′内存访问花费在I/O操作上。
由于直接采用DWConv替代常规的Conv会导致精度下降,于是Chen等人提出PConv,如图4(c)所示,PConv将输入分割成不同的两部分,其中一部分通道使用常规Conv来进行空间特征提取,并计算出的结果与另外一部分通道进行拼接得到最终的结果。PConv比常规的Conv的计算量要低,同时计算量又高于DWConv和组卷积,其作用是用来减少计算冗余和内存访问。PConv卷积的FLOPs只有:
其中cp是过滤器的通道数,对于特定部分的比率PConv的FLOPs仅为常规Conv的1/16,此外PConv的内存访问量较小,即,
为此本发明结合三者的优点综合考虑,设计出了PGConv,将输入分割成不同的两部分,其中一部分通道采用与常规Conv进行特征提取,然后与其余通道进行拼接,最后将拼接后的结果作为输入,并采用组卷积来降低FLOPs,其中组的大小与前面的过滤器大小相同,即cp。由于对于不同尺度的特征图进行PConv,所对应的计算量也不同,对于尺度大特征图,计算量相对于尺度小的要大,如果采用PConv来替代常规Conv,能够有效降低计算量,但计算量始终比采用DWConv和组卷积构建的网络要高,基于此,本发明在每个阶段开始时,采用PGConv来对特征图进行处理,能够有效降低不同尺度特征图的计算量,对于中间阶段采用PConv能够提高精度。如图5所示,图5中的(a)为SFasterNet中间层特征图,(a)的左上角的图像作为输入,(a)的整幅图是Stage2的特征图,输入图像下方一行是Stage3的特征图,Stage3的特征图下的一行为Stage4的特征图,图5中的(b)为ShuffleNetv2中间层特征图,其是Stage3的特征图。SFasterNet采用PGConv和ShuffleNetv2采用DWConv的效果对比,DWConv破坏了通道之间的通信,使之无法提取更为细的特征。因此,PGConv的两种灵活变换,不仅可以用于通道对齐,也可以用于充当深度卷积使用,更为重要的是能够使通道之间相互通信,尽最大可能减少通道分离。不失一般性,该模块输入和输出特征图具有相同数量的通道。
由于采用PConv的比率替代常规Conv,能够有效降低FLOPs,但我们通过实验分析,在数据集Pascal VOC 2007目标检测任务上发现,检测效果提升并不是很明显,于是本发明重新设计了比率因子取值方式,针对不同通道,采用比率因子应该要有所不同,于是本发明通过消融实验发现,输入通道为c,当gi∈[1,c],i∈[1,n]能够被c整除时,视gi为一个合法比率因子,其中n表示为有n个合法比率因子。本发明通过实验表明合法比率因子取g(n+1)/2-1能够达到最优,检测效果有明显的提升,同时大幅度降低了FLOPs。为此,本发明中的改进版PConv的FLOPs为:
其中故PGConv的FLOPs为:
本发明的ShiftMLP模块的详细架构如图2所示,具体来说,这个模块由四个顺序堆叠的组件组成:Shift操作模块、层归一化模块、MLP网络模块和正则化模块(DropPath模块)。其中MLP网络模块包括依次设置的1×1卷积模块、Dropout模块、1×1卷积模块和Dropout模块。
Shift运算在CNNs中得到了很好的研究。它可以由许多设计选择,例如主动移位、稀疏移位。在这项工作中,本发明遵循TSM中的部分Shift操作,如图6所示。给定一个输入张量,一小部分通道将沿着四个空间方向移动,即左、右、上、下,而其余通道保持不变。移位后范围外的像素将被简单地丢弃,空像素将被零填充。由此可见,Shift操作不包含如何参数或算术计算。唯一的实现是内存复制。因此,Shift操作效率高,实现起来非常容易,与自注意力机制相比,Shift操作干净利落,对TensorRT等深度学习推理库更友好。同时,本发明将移位步长设置为1个像素。
通常,我们假设输入特征其中C是通道数,H和W分别是空间高度和宽度。输出特征/>具有与输入相同的形状。它可以写成:
其中γ是一个比率因子,用于控制将移动多少百分比的通道。在大多数实验中,γ的值设置为
本发明的ShiftMLP与最近的多层感知器(MLP)变体相关。具体来说,MLP变体提出纯MLP-like架构来提取图像特征。他们也跳出了ViT中基于注意力的框架。例如,MLP-Mixer没有使用自注意力矩阵,而是引入了一个token-mixing MLP来直接连接所有空间位置。它消除了ViT的动态特性,但没有损失准确性。后续工作研究了更多MLP设计,例如空间门控单元或循环连接。
本发明的ShiftMLP模块中的MLP对其进行简单的变体,即采用1×1的卷积来替代线性层,以牺牲少量的FLOPs来提高准确性。与现有的MLP工作相比,本发明的ShiftMLP更简单、高效。此外,由于固定的线性权重,普通MLP变体无法处理可变输入大小,本发明的ShitMLP克服了这个障碍,因此本发明的模型适用于轻量化网络结构当中。
利用Channel Shuffle操作,本发明设计出了SFasterNetBlock,我们从图1(a)的设计原理出发。它是一个残差块。在其残差分支中,对于深度卷积和常规卷积我们替换为ShiftMLP模块,同时去掉最后的Channel Shuffle操作,这样做的目的是能够提高一定的准确性,如图2(a)所示。对于图1(b),本发明将其左分支中的深度卷积替换为常规卷积和PGConv模块,右分支中的深度卷积和常规卷积替换为PGConv和ShiftMLP模块,最后将其结果进行拼接,然后进行Channel Shuffle操作,最终构成SFasterBlock,如图2(b)所示。
基于SFasterBlock单元构建,本发明在表2中展示了整体SFasterNet架构。所提出的网络主要由分为三个阶段的一堆SFasterBlock单元组成。每个阶段的第一个构建块采用stride=2。一个阶段内的其他超参数保持不变,而下一阶段的输出通道加倍。本发明将瓶颈通道的数量设置为每个SFasterBlcok单元输出通道的1/4。其余部分与ShuffleNetv2网络结构相似,其中每个块中的通道数被缩放以生成不同复杂度的网络,标记为
0.5x、1.0x等,如表2所示。本发明的目的是提供尽可能简单的参考设计,尽管我们发现进一步的调整超参数可能会产生更好的结果。
表2.SFasterNet的总体结构
本发明的第二方面公开了一种终端设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述方法的步骤。
本发明的第三方面公开了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述方法的步骤。
本发明为解决深度可分离卷积使通道无法相互通信,提出了PGConv,能够解决通道无法相互通信问题,同时能够大量的降低计算量。
自注意力机制能够很好的处理全局特征,但存在大量的计算量与参数量,使得移动端无法进行推理,为此,本发明提出了ShiftMLP,能够替代自注意力模块,以极低的计算量与参数量完成全局特征处理。
SFasterNet采用双分支结构,灵活有效的选择不同结构单元,能够更好适用较为复杂的环境。
本发明能够以少量参数和FLOPS来提高网络性能,并且,本发明重新设计了轻量化ViT模型,即SFasterViT,该模型以极少的参数来学习全局特征。由于之前的网络大量使用DWConv来减少网路参数和减低FLOPS导致精度极低,为此,本发明针对此问题,设计出了SFasterConv,在不影响性能的情况下,能够有效的减少网络参数和降低FLOPS,从而提高精度。
为验证本发明方法的效果,下面将详细介绍SFasterNet在不同数据集的实验结果,在Pascal VOC 2007数据集上进行更为详细的消融实验,主要有PGConv模块与ShiftMLP模块的消融实验,并且通过实验分析各模块的参数选取方案。与此同时,我们在该数据集上与最新的方法进行详细的实验对比,通过不同评价指标来分析模型的有效性。为了进一步证明本发明模型的优劣性,我们针对SFasterNet每个阶段所对应的特征图信息与ShuffleNet进行对比分析。在Microsoft COCO数据集上进行应用,我们通过对目前主流的轻量级网络模型进行分析,并且采用不同评价指标来评判模型的优劣性。本实验训练环境为15vCPU Intel(R)Xeon(R)Platinum 8350C CPU@2.60GHz,NVIDIA RTX4090(24G),30GRAM,Python解释器版本3.9,在Pytorch版本1.9.1中使用CUDA 10.2加速进行训练。同时,我们遵循《Aggregated residual transformations for deep neural networks》中使用的大部分训练设置和超参数。
评估指标主要有以下几种:
(1)mAP:各类检测精度的平均值。
(2)AP50和AP75:分别表示IoU≥0.5和IoU≥0.75,其中IoU表示真实框和预测框之间交集和并集的比。
(3)APs:表示像素面积小于322的目标框的AP测量值。
(4)APm:表示像素面积在322~962之间的目标框的AP测量值。
(5)AP1:表示像素面积大于962的目标框的AP测量值。
(6)FLOPs:指浮点运算数,即计算量,用来衡量算法或者模型的复杂度。
(7)Params:参数数量,关系到模型大小。
1、Pascal VOC 2007数据集实验结果
该小结主要在Pascal VOC 2007目标检测数据集上评估本发明的模型。该数据集包含超过20个对象类别的大约5k trainval图像和5k测试图像。SFasterNet网络使用PyTorch在NVIDIA GPU上训练了600个epochs,并使用图片大小为416×416和320×320进行实验。为了对比实验的公平性,各网络模型采用NanaoDet框架进行对比试验。SFasterNet的AdamW优化器超参数及学习率均采用《Shufflenet v2:Practical guidelines forefficient cnn architecture design》中的设定。我们主要的评估检测均值平均精度(mAP),因为这是对象检测的实际指标,如表3所示,SFasterNet在Pascal VOC 2007数据集上各类别的检测结果。
表3.SFasterNet在Pascal VOC 2007各类别上的效果
1.1与state-of-the-art方法对比
本发明将与以下模型进行对比:
(1)ShuffleNetv2:我们将使用原论文中的设定参数,并且采用1.5x的模型大小进行对比。
(2)Mobilevitv3:我们将使用原论文中的设定参数,由于采用ShuffleNetv2中各阶段的重复次数为4、8、4,FLOPs远大于我们的预期,因此,我们将其设定为2、2、2使其FLOPs满足我们的预期。
(3)GhostNet:我们将使用原论文中的设定参数,并且使用midth_mult=1.0大小模型进行对比。
(4)Efficientnet:我们将使用原论文中的设定参数,并且使用efficientnet_lite4大小模型进行对比。
表4展示了所有比对结果,我们从不同方面分析结果。
表4.各网络对比情况
EfficientNet虽然精度比其他模型高,但FLOPs达到了近9G,对于移动端来说,难以接受。GhostNet虽然FLOPs只有0.9G但检测效果太低。MobileViTv3由于各阶段重复次数采用2、2、2的设定导致精度下降,但即使这样FLOPs也达到了近13G,并且参数量达到22.8M,因此应用于移动端目标检测,将会导致推理过慢。基于以上综合考虑,ShuffleNetv2大量采用Conv和DWConv使其FLOPs降低至1.8G。基于以上的种种不足,本发明的SFasterNet在各方面表现十分突出,由于SFasterNet采用PGConv来替代传统的Conv与DWConv不仅FLOPs有所降低,同时参数量也下降了。因此,SFasterNet不仅在计算量和参数量上突出,而且在精度上也有所提升,当取也就是意味着损失大量的FLOPs来提升精度,则SFasterNet在各项指标上提升1%以上。当取/>时,SFasterNet模型达到最优,不仅在各项指标上均能涨0.3%~4.5%,而且FLOPs仅仅只有1.4G,参数量也只有1.3M。其中对于小尺度检测效果能够提高4.5%。
1.2各阶段特征图分析
SFasterNet在小目标上面效果能够提高4.5%,其主要原因是与不同阶段所提取出的特征图的信息相关。
如图7(a)所示,展示每个阶段所提取出来的特征图信息,从图中可以看出,由于每个阶段开始前采用了PGConv对后面的阶段以及每个阶段的中间部分影响较小。图7(b)所示,是ShuffleNetv2各阶段提取特征图的情况,由于ShuffleNet采用了大量的DWConv使其各通道之前无法通信,而且像素面积小于322的目标在后面的阶段中无法提取更多的特征信息。因此后层影响较大,例如图7(b)中第4阶段,可以看到有较多的噪音,并且可提取的特征较为模糊。
1.3PGConv消融实验
为了证明本发明提出的PGConv的有效性,我们将在ShuffleNetv2网络模型,采用PGConv对DWConv进行全部替换,以此来进行该模块的消融实验。与此同时,我们采用比例系数g(n+1)/2-1来进行训练。由公式(6)可知,当g(n+1)/2-1过大时,则FLOPs也会随之增加,当g(n+1)/2-1过小时,则前面的PConv随之增大,如表5所示,输入尺寸为416×416,通道数为100的不同比例系数所对应的参数和计算量的变化。由此可见,当比例系数取能被通道数整除的中位数时,FLOPs达到最小,其中
表5.不同比例系数所对应情况
实验结果如表6所示,将DWConv直接替换为PGConv只是FLOPs和参数量少量增加,但各项直接均有增加,mAP从原来的40.9%增加到41.2%。如图8所示,可以看到采用DWConv与PGConv的效果对比,采用PGConv效果更佳。
表6.ShuffleNetv2中的DWConv与PGConv的对应情况
1.4ShiftMLP消融实验
ShiftMLP模块的消融实验,采用MobileViTv3骨干网络在NanoDet进行对比分析,MobileViTv3中采用线性复杂度的自注意力机制来进行全局特征处理,即LinearTransformer。我们使用ShiftMLP将Linear Transformer模块替换。并且采用同样的参数,且各阶段分别采用2、2、2,即Stage2~Stage3各重复2次。如表7所示,采用ShiftMLP替代Linear Transformer结构的MobileViTv3模型计算复杂度仅仅只有3.5G,参数量只有4.6M。
表7.Linear Transformer与ShiftMLP消融实验
如图9所示,分别是ShiftMLP和Linear Transformer在MobileViTv3中各个阶段的特征图对比。当采用ShiftMLP来替代Linear Transformer时,各阶段所表现的特征信息差不多。由于采用ShiftMLP来进行全局特征信息处理所表现的效果会略低于采用LinearTransformer来处理全局特征信息。但ShiftMLP的FLOPs和参数量要远低于LinearTransformer,故在轻量化网络模型中采用ShiftMLP更合适。
1.2COCO数据集实验结果
我们在Microsoft COCO目标检测数据集上面进行实验,该数据集涉及80个对象类别。我们对使用80k的图像作为训练集、40k的图像作为验证集和20k图像作为测试集进行实验。同样,我们采用mAP(IoU∈[0.5:0.95])作为模型的评估指标。为了更好的移植于移动端平台,我们将SFasterNet与NanoDet相结合。SFasterNet网络使用PyTorch在NVIDIA GPU上训练了300个epochs,实验结果如表8所示。
我们将与以下模型进行对比:
(1)YOLOv3-Tiny:采用论文中的实验结果,其骨干网络使用小型的DarkNet。
(2)YOLOv4-Tiny:采用论文中的实验结果,其骨干网络使用CSPDarkNet。
(3)YOLOX-Nano:采用论文中的实验结果,其骨干网络使用GhostNet。
(4)YOLOv5-n:采用论文中的实验结果,其骨干网络使用CSPDarkNet53。
(5)MobileDet:采用论文中的实验结果,其骨干网络使用MobileNetv3。
(6)SSDLite:采用MobileViTv1论文中的实验结果,其骨干网络使用MobileNet系列。
(7)MobileViT-S:SSDLite采用MobileViT作为骨干网络,实验结果采用论文中的结果。
(8)NanoDet:采用SFasterNet作为骨干网络进行训练,分别采用cp=c/2和cp=c/g(n+1)/2-1进行实验。
表8.各模型在COCO数据集上面的对比情况
通过在COCO数据集上的应用,SFasterNet在NanoDet上能够达到实时检测效果。与此同时,当模型采用SFasterNet作为骨干网络不仅参数量和FLOPs低,同时检测的精度也比其他模型高。为此,SFasterNet可以作为通用且高效的骨干网络。
本发明通过实验证明了,SFasterNet以牺牲少量的FLOPs可以提高准确性。与此同时,本发明所提出的PGConv可以有效的替代DWConv,可以增强通道之间的通信。对于将大模型中的ViT结构直接运用于轻量化网络结构中,不仅FLOPs达到了移动端无法承受的级别,同时带来了巨大的参数量对于移动设备的算力无法高效的进行推理。因此本发明所提出的ShiftMLP来替代ViT模型在轻量化网络结构中的地位,可以有效提高准确性且低FLOPs和少量的参数量,可以完美的适用于移动设备中。本发明的SFasterNet不仅广泛的应用于轻量化的网络中,并且可在未来实现移动端小目标检测的检测任务。
Claims (10)
1.一种移动端实时目标检测方法,其特征是,包括:
对输入的特征图分通道提取特征后进行拼接,得到信息交互后的特征图;
将信息交互后的特征图分为第一通道和第二通道共2个通道;
利用PGConv模块提取所述第一通道中的局部特征,利用PGConv模块和ShiftMLP模块分别提取所述第二通道中的局部特征和全局特征;
拼接所述第一通道中的局部特征以及所述第二通道中的局部特征和全局特征,得到目标的特征;
所述PGConv模块包括依次设置的第一卷积模块和组卷积模块;
所述ShiftMLP模块包括依次设置的Shift操作模块和MLP网络模块。
2.如权利要求1所述的方法,其特征是,对输入的特征图分通道提取特征后进行拼接,得到信息交互后的特征图,具体包括:
将输入的特征图分为第三通道和第四通道共2个通道;
所述第四通道包括依次设置的1×1卷积模块和ShiftMLP模块;
将所述第四通道提取的特征与所述第三通道的特征进行拼接,得到信息交互后的特征图。
3.如权利要求1所述的方法,其特征是,利用PGConv模块提取所述第一通道中的局部特征,具体包括:
依次利用1×1卷积模块、3×3PGConv模块和1×1卷积模块提取所述第一通道中的局部特征。
4.如权利要求1所述的方法,其特征是,利用PGConv模块和ShiftMLP模块分别提取所述第二通道中的局部特征和全局特征,具体包括:
利用3×3PGConv模块提取所述第二通道中的局部特征;
利用与所述3×3PGConv模块连接的所述ShiftMLP模块提取所述第二通道中的全局特征;
所述ShiftMLP模块还与1×1卷积模块连接。
5.如权利要求1所述的方法,其特征是,所述第一卷积模块包括第一通道划分模块、1×1卷积模块和第一拼接模块;
所述第一通道划分模块用于将信息交互后的特征图分为第五通道和第六通道共2个通道;
所述第六通道包括1×1卷积模块;
所述第一拼接模块用于将所述第六通道提取的特征与所述第五通道的特征进行拼接。
6.如权利要求5所述的方法,其特征是,所述组卷积模块包括第二通道划分模块、1×1卷积模块、第二拼接模块和3×3深度可分离卷积模块;
所述第二通道划分模块用于所述第一拼接模块输出的特征分为第七通道和第八通道共2个通道;
所述第八通道包括1×1卷积模块;
所述第二拼接模块用于将所述第八通道提取的特征与所述第七通道的特征进行拼接;
所述3×3深度可分离卷积模块与所述第二拼接模块连接。
7.如权利要求1所述的方法,其特征是,ShiftMLP模块还包括层归一化模块和正则化模块;
所述ShiftMLP模块具体包括依次设置的Shift操作模块、归一化模块、MLP网络模块和正则化模块。
8.如权利要求7所述的方法,其特征是,所述MLP网络模块包括依次设置的1×1卷积模块、Dropout模块、1×1卷积模块和Dropout模块。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征是,所述处理器执行所述计算机程序时实现如权利要求1至8任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征是,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310661782.2A CN116664859A (zh) | 2023-06-06 | 2023-06-06 | 移动端实时目标检测方法、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310661782.2A CN116664859A (zh) | 2023-06-06 | 2023-06-06 | 移动端实时目标检测方法、终端设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116664859A true CN116664859A (zh) | 2023-08-29 |
Family
ID=87716832
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310661782.2A Pending CN116664859A (zh) | 2023-06-06 | 2023-06-06 | 移动端实时目标检测方法、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116664859A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116823812A (zh) * | 2023-08-25 | 2023-09-29 | 中国农业大学 | 一种青贮玉米田间生命检测方法 |
-
2023
- 2023-06-06 CN CN202310661782.2A patent/CN116664859A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116823812A (zh) * | 2023-08-25 | 2023-09-29 | 中国农业大学 | 一种青贮玉米田间生命检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114120019B (zh) | 一种轻量化的目标检测方法 | |
WO2023185243A1 (zh) | 基于注意力调制上下文空间信息的表情识别方法 | |
CN112257794B (zh) | 一种基于yolo的轻量级的目标检测方法 | |
CN111209921A (zh) | 基于改进的YOLOv3网络的车牌检测模型及构建方法 | |
WO2021018163A1 (zh) | 神经网络的搜索方法及装置 | |
WO2022052601A1 (zh) | 神经网络模型的训练方法、图像处理方法及装置 | |
CN109934285B (zh) | 一种基于深度学习的图像分类神经网络压缩模型的系统 | |
CN111046821B (zh) | 一种视频行为识别方法、系统及电子设备 | |
CN114445430B (zh) | 轻量级多尺度特征融合的实时图像语义分割方法及系统 | |
CN112561027A (zh) | 神经网络架构搜索方法、图像处理方法、装置和存储介质 | |
CN111696110B (zh) | 场景分割方法及系统 | |
CN113191489B (zh) | 二值神经网络模型的训练方法、图像处理方法和装置 | |
CN113449573A (zh) | 一种动态手势识别方法及设备 | |
CN115082293A (zh) | 一种基于Swin Transformer和CNN双分支耦合的图像配准方法 | |
WO2023280113A1 (zh) | 数据处理方法、神经网络模型的训练方法及装置 | |
CN111666948A (zh) | 一种基于多路聚合的实时高性能语义分割方法和装置 | |
CN116664859A (zh) | 移动端实时目标检测方法、终端设备及存储介质 | |
CN113723366A (zh) | 一种行人重识别方法、装置及计算机设备 | |
CN113298032A (zh) | 基于深度学习的无人机视角图像的车辆目标检测方法 | |
CN113066018A (zh) | 一种图像增强方法及相关装置 | |
CN112464954A (zh) | 一种应用于嵌入式设备的轻量级目标检测网络及训练方法 | |
US20180114109A1 (en) | Deep convolutional neural networks with squashed filters | |
CN117037215B (zh) | 人体姿态估计模型训练方法、估计方法、装置及电子设备 | |
Yuan et al. | Low-res MobileNet: An efficient lightweight network for low-resolution image classification in resource-constrained scenarios | |
Liu et al. | Lightweight target detection algorithm based on YOLOv4 |
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 |