CN116486155A - 基于Transformer和级联特征的目标检测方法 - Google Patents
基于Transformer和级联特征的目标检测方法 Download PDFInfo
- Publication number
- CN116486155A CN116486155A CN202310451310.4A CN202310451310A CN116486155A CN 116486155 A CN116486155 A CN 116486155A CN 202310451310 A CN202310451310 A CN 202310451310A CN 116486155 A CN116486155 A CN 116486155A
- Authority
- CN
- China
- Prior art keywords
- module
- layer
- feature
- fusion
- window
- 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.)
- Withdrawn
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 62
- 230000004927 fusion Effects 0.000 claims abstract description 60
- 238000000605 extraction Methods 0.000 claims abstract description 12
- 230000007246 mechanism Effects 0.000 claims description 34
- 238000000034 method Methods 0.000 claims description 25
- 239000011159 matrix material Substances 0.000 claims description 21
- 238000004364 calculation method Methods 0.000 claims description 20
- 238000010586 diagram Methods 0.000 claims description 14
- 238000010606 normalization Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 10
- 230000009466 transformation Effects 0.000 claims description 10
- 238000005070 sampling Methods 0.000 claims description 9
- 238000007667 floating Methods 0.000 claims description 7
- 238000013139 quantization Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 6
- 238000009499 grossing Methods 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 238000012935 Averaging Methods 0.000 claims description 2
- 230000009467 reduction Effects 0.000 claims description 2
- 230000001629 suppression Effects 0.000 claims description 2
- 230000011218 segmentation Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 6
- 238000011176 pooling Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000001373 regressive effect Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001131 transforming effect Effects 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- 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
-
- 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/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
-
- 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
- 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
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (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
基于Transformer和级联特征的目标检测方法涉及计算机视觉技术技术领域,解决了现有检测精度有待提高的问题,该方法包括:将原始图像通过Patch分割模块划分为若干图像片;将图像片输入到由基于移位窗口的TransformerBlock模块构成的四阶段特征提取骨干网络得到由浅到深的四个不同尺度的特征图;将特征图输入级联特征融合模块进行不同尺度间的特征图融合得到五个不同尺度的融合特征图;根据融合特征图进行候选框的提取得到可能存在目标的候选框;将融合特征图和可能存在目标的候选框输入到基于ROIAlign的目标检测头得到目标检测结果。本发明提高了目标检测方法的多尺度融合能力、检测框的准确度以及网络检测小物体的能力。
Description
技术领域
本发明涉及计算机视觉技术领域,尤其涉及基于Transformer和级联特征的目标检测方法。
背景技术
目标检测也是一项基础且重要的任务,具体来说是找到图像中所有感兴趣的目标,并使用矩形边界框来定位检测到的物体位置及大小,即确定它们的类别和位置,这是计算机视觉领域的核心问题之一。图像实例和语义分割、物体追踪、医学图像分割等等通常都以目标检测为基础。在进行目标检测时,由于每张图像中物体的数量、大小及姿态各有不同,也就是非结构化的输出,而且图像中的目标会有被截断、模糊的情况,这导致目标检测任务富有挑战性。
自从AlexNet卷积神经网络结构模型出现以来,卷积神经网络在计算机视觉领域具有绝对地位,随着研究人员对算法和网络结构越来越深入的探索,目标检测大致可分为基于候选(两阶段)和基于回归(一阶段)这两类算法,二者在准确率和检测速度上分别占据优势,但随着对目标检测的高性能和高效率的追求,研究人员不断的尝试各种突破手段来兼顾精度和速度的要求。近年来,自然语言处理(NLP)领域的Transformer模型被应用于计算机视觉,2021年ICLR(国际学习表征会议)上关于的一篇文章—《Vision Transformer》创造性的实现了这一思路,同年微软研究院发表在ICCV(国际计算机视觉大会)上的一篇《Swin Transformer》让Transformer在视觉领域又一次碰撞出了火花,Transformer的全局交互机制可以迅速的扩大特征的有效感受野,其展现出了与卷积神经网络相似甚至优于神经网络的算法能力,这让很多研究人员认为这开创了计算机视觉领域研究的新纪元。在不断的探索研究下计算机视觉领域取得了重大的突破,目标检测算法的准确率以及轻量化也在不断的被研究。
尽管目标检测技术已经取得了巨大的进步,但是在较复杂的环境下检测精度仍有待提高,以及对浅层特征信息利用不足造成目标信息丢失和误检漏检的问题,这对所提出来的目标检测算法也有了更高的要求。
发明内容
为了解决上述问题,本发明提出一种基于Transformer和级联特征融合的目标检测方法,基于FasterR-CNN架构下以基于移位窗口Transformer的网络作为骨干网络,并通过级联特征融合模块对不同阶段由浅到深的特征进行融合,同时利用浅层特征的高分辨率信息和深层特征的高语义信息,以达到提高目标检测精度的目的。
本发明解决其技术问题采用了如下技术方案:
基于Transformer和级联特征的目标检测方法,包括:
步骤一、将原始图像通过Patch分割模块划分为若干图像片;
步骤二、将所述步骤一得到的图像片输入到由基于移位窗口的TransformerBlock模块构成的四阶段特征提取骨干网络,得到由浅到深的四个不同尺度的特征图;
步骤三、将所述四个不同尺度的特征图输入级联特征融合模块进行不同尺度间的特征图融合,得到融合后五个不同尺度的融合特征图;
步骤四、根据所述五个不同尺度的融合特征图进行候选框的提取,得到可能存在目标的候选框;
步骤五、将所述融合特征图和所述可能存在目标的候选框输入到基于RoI Align的目标检测头,得到目标检测结果。
本发明的有益效果:
1、本发明基于Transformer和级联特征的目标检测方法通过使用基于移位窗口Transformer的网络,解决了传统算法特征提取不充分,优化检测框冗余以及误检漏检的问题,提高了检测精准度。
2、本发明利用级联特征融合模块,同时利用浅层特征的高分辨率和深层特征的高语义信息,来提高目标检测方法的多尺度融合能力。
3、本发明在检测头模块中采用RoI Align,消除了现有RoI Pooling的两次浮点数取整量化造成的误差,提高了检测框的准确度以及网络检测小物体的能力。
附图说明
图1为本发明提出的一种基于Transformer和级联特征的目标检测方法的流程示意图;
图2为本发明的基于移位窗口的Transformer模块构成的四阶段特征提取骨干网络结构示意图;
图3为本发明的一个Transformer模块的结构示意图;
图4为本发明的级联特征融合模块的示意图。
具体实施方式
为使本专利的技术方案和优点能够更清晰完整易懂,下面将结合附图和具体实施方式对本发明进行进一步的详细描述。
应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明,以使得本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
本实施例提供基于Transformer和级联特征的目标检测方法,其流程如图1所示。包括如下步骤:
步骤一、将原始图像通过Patch分割模块划分为若干图像片;
步骤二、将步骤一得到的图像片输入到由基于移位窗口的Transformer Block模块构成的四阶段特征提取骨干网络,得到由浅到深的四个不同尺度的特征图;
步骤三、将所述四个不同尺度的特征图输入级联特征融合模块进行不同尺度间的特征图融合,得到级联融合后五个不同尺度的融合特征图;
步骤四、根据五个不同尺度的融合特征图进行候选框的提取,得到可能存在目标的候选框;
步骤五、将融合特征图和可能存在目标的候选框输入到基于RoI Align(反向传播)的目标检测头,得到目标检测结果。
下面对一种基于Transformer和级联特征融合的目标检测方法进行详述,具体包括以下步骤:
步骤一、将原始图像经过Patch分割模块划分,得到若干固定尺寸的图像片(patch),具体为:将大小为H×W×3的输入图像中进行分块,把每4×4大小的相邻像素划分为一个patch,即相邻patch不存在重叠,然后在通道方向展开,则每个patch的特征维度为4×4×3=48,patch的数量为H/4×W/4。其中,H、W分别表示原始图像的像素高度和宽度。
步骤二、然后将上述patches输入到由基于移位窗口的TransformerBlock模块构成的四阶段特征提取骨干网络中,如图2所示,具体包括四个阶段,按照顺序分别记为阶段一、阶段二、阶段三和阶段四,顺次输出由浅到深的四个不同尺度的特征。网络层数由浅到深,随着网络层数的不断加深,图像片会不断减少,而每个图像片的感知范围会扩大。其中,阶段一包括顺次连接的线性嵌入模块和第一TransformerBlock模块;阶段二包括顺次连接的第二patch融合模块和第二Transformer Block模块;阶段三包括顺次连接的第三patch融合模块和第三Transformer Block模块;阶段四包括顺次连接的第四patch融合模块和第四TransformerBlock模块。其中,第一Transformer Block模块、第二Transformer Block模块、第三TransformerBlock模块和第四Transformer Block模块的结构相同,均称为Transformer Block模块。
线性嵌入模块用于对划分后的一堆Patches进行维度变换,图像的格式由(H/4,W/4,48)变成了(H/4,W/4,C),C表示图像片的特征维度,即通过线性嵌入模块将划分后的patch特征维度变成C,再将H和W两个维度展平,即将每个patch通过线性映射到一维向量,最终得到图像全部数据的二维向量信息表达XP。
一个Transformer Block模块包括第一Transformer Block子模块和第二Transformer Block子模块。如图3所示,第一Transformer Block子模块包括顺次连接的第一归一化操作层(Layer Normalization,即图3的LayerNorm)、窗口自注意力机制层(Windows Multi-Head Self-Attention,W-MSA)、第一残差层、第二归一化操作层、第一多层感知机模块(MLP)和第二残差层,且第一残差层的输出连接第二残差层,第二残差层用于将第一多层感知机模块的输出和第一残差层的输出进行残差操作。第二TransformerBlock子模块包括顺次连接的第三归一化操作层、转换窗口自注意力机制层(ShiftedWindows Multi-Head Self-Attention,SW-MSA)、第三残差层、第四归一化操作层、第二多层感知机模块(MLP)、第四残差层,且第三残差层的输出连接第四残差层,第四残差层用于将第二多层感知机模块的输出和第三残差层的输出进行残差操作。第一TransformerBlock子模块的输出作为第二Transformer Block子模块的输入,二者顺次连接。
Transformer Block模块对每个窗口内的patch进行多头自注意力操作,其中每个窗口内的patch个数设置为M*M。该模块最主要的结构是包含W-MSA层或SW-MSA层,其中顺次连接的第一Transformer Block子模块中的W-MSA层为减少注意力机制的计算量,将输入的特征划分为不同的窗口,分别在每个窗口内进行自注意力机制的运算,得到了图片的局部信息。另外,在顺次连接的第二TransformerBlock子模块的SW-MSA层中添加移位窗口操作,实现跨窗口连接,从而获取图像的全局注意力信息。同时为避免移动窗口后形成的新窗口中不同区域的信息混乱,而造成提前学习到之后序列的特征,在该模块中的注意力计算增加了mask操作。其他部分和标准的Transformer结构类似,连续Transformer提取模块如图3所示,可以表示为:
fW-MSA=MSA(fW(LN(xj)))+xj (1)
fSW-MSA=MSA(fSW(LN(xj)))+xj (2)
fMLP=MLP((LN(xj')))+xj'(3)
XT=Mn(fMLP(fSW-MSA(fMLP(fW-MSA(XP))))) (4)
其中,xj表示输入特征图;x'j表示经过注意力计算和残差连接后的输出;fW-MSA和fSW-MSA分别表示W-MSA层和SW-MSA层中多头注意力计算及残差连接;fW和fSW分别表示将特征图划分为窗口和移位窗口,并重构为查询(Query)、键(Key)和值(Value);fMLP表示具有GELU()激活函数的两层MLP及残差连接;Mn表示整个编码过程循环n次,LN()表示归一化操作。
Patch融合模块(第二patch融合模块、第三patch融合模块、第四patch融合模块)用于对特征图在进入TransformerBlock模块前,先对输入特征图进行下采样操作。为达到该目的,该模块在输入特征图的行方向和列方向上,按位置间隔2选取元素拼成新的patch,然后将每个新patch中相同位置的像素给拼在一起就得到4个特征图,再将这4个特征图在深度方向进行Concat()拼接,就得到了通道数为原来4倍的结果4C(EPATCH),然后通过全连接层的线性变化(Linear)调整特征图通道数为2C,最终得到高和宽各为原来1/2,通道数为原来2倍的特征表达。该模块可简化为:
XM=fLinear(EPATCH(XT)) (5)
再重复三次基于Transformer提取模块的学习过程,最后图像通过基于移位窗口Transformer的网络输出4个特征图。阶段一、阶段二、阶段三和阶段四输出的特征图分别为X1、X2、X3、X4。
窗口自注意力机制层(即W-MSA模块)学习特征执行如下步骤:
S11、首先通过Wq、Wk、Wv获得对应第i个head的查询矩阵Q、键矩阵K和值矩阵V。其中Wq表示Q(即Qhw×C)的可学习参数,Wk表示K(即Khw×C)的可学习参数,Wv表示V(即Vhw×C)的可学习参数。假设查询矩阵Q、键矩阵K、值矩阵V的向量长度与特征图的维度C保持一致,那么对应所有窗口生成Q、K和V的过程如下式:
其中Ahw×C为窗口内所有patch拼接在一起得到的矩阵,共有hw个patch,每个patch深度为C;分别表示生成Q、K、V的变换矩阵。
S12、接下来针对每个head使用单注意力机制进行计算,如式(9)所示。
其中,公式(9)表示单头注意力机制,Softmax()表示归一化指数函数,dk表示K向量的长度;
S13、接下来进行多头注意力机制过程,该机制能够联合来自不同head部分学习到的信息,针对每个head使用多注意力机制计算,最后得到每个head的多注意力机制下的自注意力结果一。首先将每个head的自注意力结果一进行Concat拼接,再通过线性变换的权重矩阵WO进行融合,得到多头注意力机制下的注意力结果一,计算过程如公式(10)和(11)所示。
MultiHead(Q,K,V)=Concat(head1,...,headh)WO (10)
Where headi=Attention(QWi Q,KWi K,VWi V) (11)
其中,公式(10)表示多头自注意力机制,WO表示线性变换的权重矩阵;Concat()表示矩阵拼接,headi表示第i个子空间,1≤i≤h;公式(11)表示多头自注意力机制中的单头注意力函数,其中,Wi Q表示第i个头的查询矩阵Q的可学习参数,Wi K表示第i个头的键矩阵K的可学习参数,Wi V表示第i个头的值矩阵V的可学习参数。
至此完成了每个窗口中的多头注意力计算,也就是W-MSA模块的过程。它与传统的Multi-Head Attention的区别就在于它先会通过一系列操作将特征图分成一个个第一窗口,以达到减少计算量的效果,二者的复杂度分别为(忽略了Softmax()的计算复杂度):
Ω(MSA)=4hwC2+2(hw)2C (12)
Ω(W-MSA)=4hwC2+2M2hwC (13)
其中,h,w分别代表特征图的高度、宽度,特征图的深度即是图像片的特征维度;M代表每个窗口(Window)的大小。则采用W-MSA模块相比于MSA模块能够节省2(hw)2C-2M2hwC(FLOPs)。
转换窗口自注意力机制层(即SW-MSA模块)学习特征执行如下步骤:
S21、对第一窗口使用向左上方向循环移位的批处理计算方法,得到第二窗口;
对W-MSA模块中的第一窗口使用向左上方向循环移位的高效批处理计算移位配置方法得到新的批处理窗口,它由多个子窗口组成,子窗口即所述第二窗口;
S22、上述S21生成的子窗口在特征图中不相邻,因此采用mask机制将自注意力计算限制在每个原有子窗口内,这样通过设置mask来隔绝不同区域的信息就不会使原有窗口间信息混淆;
S23、在S22产生的第二窗口中进行多头自注意力机制的计算得到多头注意力机制下的注意力结果二,该过程与W-MSA模块的执行步骤基本类似。这使得原先不相邻的像素之间做自注意力机制计算;
即,在进行偏移后的W-MSA产生的第二窗口内的每一个像素进行多头自注意力计算,首先生成每个head的查询矩阵Q、键矩阵K和值矩阵V,对于偏移后产生的Q要与每一个像素的K进行匹配,接下来就是W-MSA模块学习特征的步骤,但是,在SW-MSA模块中另外还使用了mask机制,目的是希望只在偏移后的新窗口中的原有区域进行的自注意力机制计算。最后通过计算得到多头注意力机制下的注意力结果二。
S24、每个第二窗口完成计算后需要将数据循环移位还原得到最终特征图,这样批处理窗口的数量与常规窗口分区的数量相同,同时也解决了不同窗口之间无法进行信息交流的问题。
步骤三、受FPN特征金字塔网络结构的启发,提出在特征提取骨干网络和RPN网络之间增加级联特征融合模块,将Transformer Block模块每个阶段输出的特征图进行特征融合,把网络深层和浅层的信息结合,使网络具有多尺度特征检测的能力,级联特征融合模块网络结构示意图如图4所示。
具体操作分为以下两个级联部分:
在第一部分中,①首先对阶段四输出的特征图X4进行2倍下采样的额外操作,得到融合特征图K4;
②将阶段四输出的特征图X4上采样到与阶段三输出的特征图X3相同大小(分辨率大小相同),具体将X4两次上采样,上采样结果传递给卷积单元F(·),卷积操作得到和然后将/>与X3相乘(Hadamard乘积),输出结果与X42进行Concat()拼接,产生融合特征图K3;
③将K3、X4和X3上采样到与阶段二输出的特征图X2相同大小,并分别通过卷积单元F(·)对它们进行平滑处理,一一对应的得到和/>随后将/> 和X2相乘,输出结果与/>进行Concat()拼接,产生融合特征图K2;
④将K2、X4、X3和X2上采样到与阶段一输出的特征图X1相同大小,再将结果分别传递给卷积单元F(·)进行平滑处理,一一对应的得到随后将与X1相乘,输出结果与/>进行Concat()拼接,产生融合特征图K1。
在第二部分中,K4、X4、K3、K2、K1分别通过卷积单元F(·)进行降维,产生级联特征融合模块输出的融合特征图T5、T4、T3、T2、T1。
具体过程如式(14)-(22)所示:
K4=F[Down(X4)] (14)
T5=F(K4) (15)
T4=F(X4) (16)
K3=Concat{F[Up(X4)] X3,F[Up(X4)]} (17)
T3=F(K3) (18)
K2=Concat{F[Up(X4)] F[Up(X3)] X2,Up[F(K3)]} (19)
T2=F(K2) (20)
K1=Concat{F[Up(X4)] F[Up(X3)] F[Up(X2)] X1,Up[F(K2)]} (21)
T1=F(K1) (22)
其中,Down(·)表示上采样,Up(·)表示下采样,卷积单元F(·)为1*1卷积层。
经过级联融合特征模块处理后得到由浅到深的五个不同尺度的融合特征图,分别为T1、T2、T3、T4、T5。
步骤四、将五个不同尺度的融合特征图输入到区域候选网络RPN进行候选框的提取,得到可能存在目标的候选框。RPN网络采用移动窗口机制,其工作流程分为以下几个步骤:
S41、把步骤二得到的特征图中的每个点映射回原始图像感受野的中心点,将该中心点作为一个基准点,然后围绕这个基准点选取n个不同的尺寸和比例的锚框(anchor),不同锚框的尺寸不同,比例(宽高比)也不同,对于大小为h×w的卷积特征图,共有h×w×n个锚点。
S42、使用Softmax分类器给上述产生的锚框分配一个二进制标签,来确定该锚框为前景还是背景,最后提取出前景锚框。
S43、通过边框回归器(Bounding-box Regression)得到前景锚框到真实框之间的变换参数,以此来对S42提取的前景锚框进行微调,得到调整后的前景锚框相对于真实框的偏移量,使其更加接近于物体的真实框(groundtruthbox)。
S44、S43中得到的调整后的前景锚框作为候选框,再通过非极大值抑制(NMS)算法剔除重叠和超出边界的候选框,得到可能存在目标的候选框,至此完成RPN网络的目标检测定位功能。
RPN网络的损失值由分类分支和回归分支组成。其中,分类分支采用二值交叉熵损失,回归分支采用smooth L1损失。
步骤五、将通过步骤三得到的融合特征图{T1,T2,T3,T4}和通过RPN网络得到的可能存在目标的候选框输入到基于RoI Align的目标检测头,得到目标检测结果。
可以是融合特征图{T1,T2,T3,T4}都输入到基于RoI Align的目标检测头,也可以将{T1,T2,T3,T4}其中一个融合特征图输入到基于RoI Align的目标检测头。
具体的,作为一种优选,基于RoI Align的目标检测头首先通过式(23)将RPN输出的可能存在目标的候选框和步骤三得到的融合特征图{T1,T2,T3,T4}中尺寸最合适的对应起来执行RoI Align操作,即让感受野更接近对象尺寸的融合特征图来预测该对象,例如{T1,T2,T3,T4}中的融合特征图T4感受野最接近可能存在目标的候选框的尺寸。接下来通过RoI Align操作统一预测候选框特征图的大小,再将得到指定大小的特征图输入到检测头后续部分,进一步预测候选框中对象的具体类别,得到最终的目标检测结果。
其中,224表示骨干网络在ImageNet上预训练的尺寸;w、h表示proposal的宽和高;k表示适合尺寸为w*h的proposal的特征图位置,即对应{T1,T2,T3,T4}的下标值;k0表示proposal大致为224*224时对应特征图的位置;式(23)中k0=3,具体可求得k值,如式(24)所示。
其中RoI Align是RoI Pooling的改进,前者克服了后者操作过程中的两次浮点数取整量化造成的检测框检测误差。在RoI Align中首先将可能存在目标的候选框划分为L×L个子区域,将每个子区域映射到一个特征图中,在每个子区域中做最大池化操作,具体操作分为以下步骤:
S51、遍历可能存在目标的候选框,保持可能存在目标的候选框浮点数边界不做量化取整操作;
S52、将可能存在目标的候选框划分为L×L个子区域,对每个子区域中的边界也不做量化取整操作,L为大于1的正整数;
S53、在每个子区域内均匀的取N个点(N为大于1的正整数),对于N个点中的每个点,找到在融合特征图T4上与其离得最近的4个像素点,通过双线性差值的方式,获得坐标为浮点数的像素点在特征图上的数值;
S54、对每个子区域,均对该子区域内得到的N个点对应的所述数值取平均值,得到该子区域的输出。
通过RoI Align得到每个候选框映射到特征图的目标候选框特征图,而且对于具有不同特征大小的输入区域(子区域),都可以得到相同大小的输出特征。最后根据每个子区域的输出,通过检测头的全连接层的分类和回归分支得到目标检测结果。其中分类分支学习每个候选框内物体所属的类别,采用多分类交叉熵损失函数;回归分支学习每个候选框和真实框的偏移量,采用smooth L1损失函数。
本发明基于Transformer和级联特征的目标检测方法通过在Faster-RCNN模型的基础上,将原有骨干网络VGG16改进为基于移位窗口Transformer的网络,解决传统算法特征提取不充分,优化检测框冗余以及误检漏检的问题。通过提出的级联特征融合模块,能同时利用浅层特征的高分辨率和深层特征的高语义信息,来提高模型的多尺度融合能力;通过将检测头模块中的RoI Pooling改进为RoI Align,以消除RoI Pooling的两次浮点数取整量化造成的误差,提高了检测框的准确度,同时也提高了网络检测小物体的能力。
Claims (10)
1.基于Transformer和级联特征的目标检测方法,其特征在于,包括:
步骤一、将原始图像通过Patch分割模块划分为若干图像片;
步骤二、将所述步骤一得到的图像片输入到由基于移位窗口的Transformer Block模块构成的四阶段特征提取骨干网络,得到由浅到深的四个不同尺度的特征图;
步骤三、将所述四个不同尺度的特征图输入级联特征融合模块进行不同尺度间的特征图融合,得到融合后的五个不同尺度的融合特征图;
步骤四、根据所述五个不同尺度的融合特征图进行候选框的提取,得到可能存在目标的候选框;
步骤五、将所述融合特征图和所述可能存在目标的候选框输入到基于RoI Align的目标检测头,得到目标检测结果。
2.如权利要求1所述的基于Transformer和级联特征的目标检测方法,其特征在于,所述四阶段特征提取骨干网络的四阶段按照顺序分别记为阶段一、阶段二、阶段三和阶段四,顺次输出由浅到深的四个不同尺度的特征图;
所述阶段一包括顺次连接的线性嵌入模块和第一TransformerBlock模块;所述线性嵌入模块用于对步骤一得到的图像片进行维度变换;所述阶段二包括顺次连接的第二patch融合模块和第二TransformerBlock模块;阶段三包括顺次连接的第三patch融合模块和第三TransformerBlock模块;阶段四包括顺次连接的第四patch融合模块和第四TransformerBlock模块;
所述第一TransformerBlock模块、第二TransformerBlock模块、第三TransformerBlock模块和第四TransformerBlock模块结构相同,均包括第一TransformerBlock子模块和第二TransformerBlock子模块;
所述第一TransformerBlock子模块包括顺次设置的第一归一化操作层、窗口自注意力机制层、第二归一化操作层、第一多层感知机模块;所述第二TransformerBlock子模块包括顺次设置的第三归一化操作层、转换窗口自注意力机制层、第四归一化操作层、第二多层感知机模块。
3.如权利要求2所述的基于Transformer和级联特征的目标检测方法,其特征在于,所述第一TransformerBlock子模块包括顺次连接的第一归一化操作层、窗口自注意力机制层、第一残差层、第二归一化操作层、第一多层感知机模块和第二残差层,且第一残差层的输出连接第二残差层,第二残差层用于将第一多层感知机模块的输出和第一残差层的输出进行残差操作;所述第二TransformerBlock子模块包括顺次连接的第三归一化操作层、转换窗口自注意力机制层、第三残差层、第四归一化操作层、第二多层感知机模块和第四残差层,且所述第三残差层的输出连接第四残差层,所述第四残差层用于将第二多层感知机模块的输出和第三残差层的输出进行残差操作。
4.如权利要求2所述的基于Transformer和级联特征的目标检测方法,其特征在于,所述窗口自注意力机制层学习特征的步骤为:
S11、获得每个head的查询矩阵Q、键矩阵K和值矩阵V,针对每个head使用多注意力机制计算得到每个head的自注意力结果一;
所述自注意力结果一的计算过程包括:对每个第一窗口内部进行自注意力操作,得到每个第一窗口的Q、K和V;根据Q、K和V,使用单头注意力机制计算注意力结果;所述第一窗口为通过第二Patch融合模块、第三Patch融合模块或第四Patch融合模块进行下采样操作获得,或者,输入到窗口自注意力机制层中的图像片作为第一窗口;
S12、将每个head的自注意力结果一进行拼接,将拼接后的结果通过线性变换的权重矩阵进行融合,得到的多注意力机制下的注意力结果一。
5.如权利要求4所述的基于Transformer和级联特征的目标检测方法,其特征在于,所述转换窗口自注意力机制层学习特征的步骤为:
S21、对第一窗口使用向左上方向循环移位的批处理计算方法,得到第二窗口;
S22、设置mask来隔绝各个第二窗口;
S23、在S22产生的第二窗口中进行多头自注意力机制的计算,得到每个head的自注意力结果二;
S24、将数据循环移位还原得到特征图。
6.如权利要求2所述的基于Transformer和级联特征的目标检测方法,其特征在于,所述步骤三包括:
首先对阶段四输出的特征图X4进行2倍下采样操作,得到特征图K4;
将X4上采样到与阶段三输出的特征图X3分辨率相同,上采样结果传递给卷积单元F(·)进行卷积操作得到和/>然后将/>与X3相乘,相乘的输出结果与/>进行Concat拼接,产生融合特征图K3;
将K3、X4和X3上采样到与阶段二输出的特征图X2分辨率相同,再将上采样的结果分别通过F(·)进行平滑处理一一对应的得到和/>将/>和X2相乘,输出结果与/>进行Concat拼接,产生融合特征图K2;
将K2、X4、X3和X2上采样到与阶段一的X1分辨率相同,再将上采样的结果分别通过F(·)进行平滑处理一一对应的得到将/>与X1相乘,输出结果与/>进行Concat拼接,产生融合特征图K1;
将K4、X4、K3、K2、K1分别通过F(·)进行降维,得到级联特征融合模块输出的融合特征图T5、T4、T3、T2、T1。
7.如权利要求1所述的基于Transformer和级联特征的目标检测方法,其特征在于,所述步骤四包括:
S41、把所述步骤二得到的特征图中的每个点映射回所述原始图像感受野的中心点,并将所述中心点作为基准点,围绕所述基准点选取n个不同的尺寸和比例的锚框;
S42、使用Softmax分类器给所述锚框分配一个二进制标签,所述二进制标签为前景锚框和背景锚框,提取前景锚框;
S43、通过边框回归器得到前景锚框到真实框之间的变换参数,根据所述变换参数调整前景锚框使前景锚框更接近真实框;
S44、根据调整后的前景锚框获取候选框,再通过非极大值抑制算法剔除重叠和超出边界的候选框,得到可能存在目标的候选框。
8.如权利要求1所述的基于Transformer和级联特征的目标检测方法,其特征在于,所述五个不同尺度的融合特征图由浅到深分别为T1、T2、T3、T4、T5,所述步骤五中将所述T1、T2、T3、T4输入到基于RoI Align的目标检测头。
9.如权利要求8所述的基于Transformer和级联特征的目标检测方法,其特征在于,所述步骤五为:
S51、遍历所述可能存在目标的候选框,对所述可能存在目标的候选框浮点数边界不做量化取整操作;
S52、将所述可能存在目标的候选框划分为L×L个子区域,对每个子区域中的边界也不做量化取整操作,L为大于1的正整数;
S53、在每个子区域内均匀的取N个点;在融合特征图上、对于N个点中的每个点,均找到与其离得最近的4个像素点;通过双线性差值的方式,获得坐标为浮点数的像素点在特征图上的数值;
S54、对每个子区域内N个点的所述数值取平均值,得到每个子区域的输出;
S55、根据每个子区域的输出,所述通过检测头的全连接层的分类和回归分支得到目标检测结果。
10.如权利要求9所述的基于Transformer和级联特征的目标检测方法,其特征在于,所述S53中所述融合特征图为:融合特征图T1、T2、T3、T4中感受野最接近可能存在目标的候选框尺寸的融合特征图。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310451310.4A CN116486155A (zh) | 2023-04-25 | 2023-04-25 | 基于Transformer和级联特征的目标检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310451310.4A CN116486155A (zh) | 2023-04-25 | 2023-04-25 | 基于Transformer和级联特征的目标检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116486155A true CN116486155A (zh) | 2023-07-25 |
Family
ID=87215191
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310451310.4A Withdrawn CN116486155A (zh) | 2023-04-25 | 2023-04-25 | 基于Transformer和级联特征的目标检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116486155A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117726991A (zh) * | 2024-02-07 | 2024-03-19 | 金钱猫科技股份有限公司 | 一种高空吊篮安全带检测方法及终端 |
-
2023
- 2023-04-25 CN CN202310451310.4A patent/CN116486155A/zh not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117726991A (zh) * | 2024-02-07 | 2024-03-19 | 金钱猫科技股份有限公司 | 一种高空吊篮安全带检测方法及终端 |
CN117726991B (zh) * | 2024-02-07 | 2024-05-24 | 金钱猫科技股份有限公司 | 一种高空吊篮安全带检测方法及终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112347859B (zh) | 一种光学遥感图像显著性目标检测方法 | |
CN112435282B (zh) | 一种基于自适应候选视差预测网络的实时双目立体匹配方法 | |
CN112396607A (zh) | 一种可变形卷积融合增强的街景图像语义分割方法 | |
CN115482382A (zh) | 一种基于Transformer架构的图像语义分割方法 | |
CN113870335A (zh) | 一种基于多尺度特征融合的单目深度估计方法 | |
CN115908517B (zh) | 一种基于对应点匹配矩阵优化的低重叠点云配准方法 | |
CN116486155A (zh) | 基于Transformer和级联特征的目标检测方法 | |
CN116758130A (zh) | 一种基于多路径特征提取和多尺度特征融合的单目深度预测方法 | |
CN115631127A (zh) | 一种工业缺陷检测的图像分割方法 | |
CN113554039A (zh) | 基于多注意力机制的动态图像的光流图生成方法和系统 | |
CN113284251A (zh) | 一种自适应视角的级联网络三维重建方法及系统 | |
CN112101113B (zh) | 一种轻量化的无人机图像小目标检测方法 | |
CN114723951B (zh) | 一种用于rgb-d图像分割的方法 | |
CN117197632A (zh) | 一种基于Transformer的电镜花粉图像目标检测方法 | |
CN116612283A (zh) | 一种基于大卷积核骨干网络的图像语义分割方法 | |
US5887078A (en) | Apparatus and method for classifying and recognizing image patterns using neural network | |
CN115661451A (zh) | 一种深度学习单帧红外弱小目标高分辨率分割方法 | |
CN111899284A (zh) | 一种基于参数化esm网络的平面目标跟踪方法 | |
CN115909045B (zh) | 一种基于对比学习的two-stage滑坡图谱特征智能识别方法 | |
CN116665033A (zh) | 一种卫星遥感影像建筑物提取方法 | |
CN115019022B (zh) | 一种基于双深度融合网络的轮廓检测方法 | |
CN115496910B (zh) | 基于全连接图编码及双重扩张残差的点云语义分割方法 | |
CN117237623B (zh) | 一种无人机遥感图像语义分割方法及系统 | |
CN115131559A (zh) | 一种基于多尺度特征自适应融合的道路场景语义分割方法 | |
CN115984620A (zh) | 基于轻量化LA Transformer网络的图像分类系统及方法 |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20230725 |
|
WW01 | Invention patent application withdrawn after publication |