CN113591840A - 一种目标检测方法、装置、设备和存储介质 - Google Patents
一种目标检测方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN113591840A CN113591840A CN202110736490.1A CN202110736490A CN113591840A CN 113591840 A CN113591840 A CN 113591840A CN 202110736490 A CN202110736490 A CN 202110736490A CN 113591840 A CN113591840 A CN 113591840A
- Authority
- CN
- China
- Prior art keywords
- target
- coordinate
- decoding
- feature
- attention
- 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 263
- 238000010586 diagram Methods 0.000 claims abstract description 35
- 238000000034 method Methods 0.000 claims abstract description 30
- 238000004364 calculation method Methods 0.000 claims abstract description 16
- 238000000605 extraction Methods 0.000 claims abstract description 15
- 238000010606 normalization Methods 0.000 claims description 41
- 238000012545 processing Methods 0.000 claims description 25
- 238000012549 training Methods 0.000 claims description 25
- 230000008447 perception Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012423 maintenance Methods 0.000 abstract 1
- 102100028162 ATP-binding cassette sub-family C member 3 Human genes 0.000 description 4
- 101000986633 Homo sapiens ATP-binding cassette sub-family C member 3 Proteins 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 230000005484 gravity Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 102100028187 ATP-binding cassette sub-family C member 6 Human genes 0.000 description 3
- 101000986621 Homo sapiens ATP-binding cassette sub-family C member 6 Proteins 0.000 description 3
- 101001014572 Homo sapiens MARCKS-related protein Proteins 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000005065 mining Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- 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/047—Probabilistic or stochastic 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/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
本申请提供一种目标检测方法、装置、设备和存储介质,所述方法,包括:获取待检测图像;将所述待检测图像输入特征提取网络,得到所述待检测图像的特征图;对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,所述目标特征坐标图中记录了所述待检测图像的特征图中的各个位置上的特征对应在所述待检测图像上的坐标;将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果。上述目标检测方法、装置、设备和存储介质实现了对坐标位置的维护。
Description
技术领域
本申请涉及图像检索领域,具体而言,涉及一种目标检测方法、装置、设备和存储介质。
背景技术
Transformer是2017年提出的自然语言处理模型,被广泛用于自然语言处理。近期,很多研究学者将Transformer应用在计算机视觉领域,用作目标检测。
基于Transformer的目标检测的大致流程为:首先基于一个大型的卷积神经网络提取图像特征,然后利用编码器对特征编码,最后利用解码器得到输出,输出包含目标检测框。
由于现有的Transformer的目标检测方法需要输出目标检测框,即输出目标坐标,但是,现有的Transformer是基于目标的特征输出目标的检测框,因此,现有的Transformer存在收敛速度慢的问题。
发明内容
本申请实施例的目的在于提供一种目标检测方法、装置、设备和存储介质,用以现有技术存在的目标检测网络在输出检测框时收敛慢的问题。
第一方面,提供了一种目标检测方法,包括:
获取待检测图像;
将所述待检测图像输入特征提取网络,得到所述待检测图像的特征图;
对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,所述目标特征坐标图中记录了所述待检测图像的特征图中的各个位置上的特征对应在所述待检测图像上的坐标;
将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果。
上述目标检测方法,将待检测图像的特征图和目标特征坐标图同时作为目标检测网络的输入,得到待检测图像的目标检测结果,由于不仅输入了特征,还输入了特征的坐标,因此,在训练目标检测网络(即预测目标的检测框的坐标)的时候,并不是毫无方向的去训练目标检测网络,即不是毫无方向的去让目标检测网络收敛,而是相当于给出了一定的先验信息,从而提高目标检测网络的收敛速度。
在一个实施例中,所述目标检测网络中包括编码网络、解码网络以及检测网络;所述将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果,包括:将所述待检测图像的特征图和所述目标特征坐标图输入所述编码网络,得到目标编码特征和目标编码坐标,所述编码网络中包括至少一个编码器,若所述编码网络中的编码器的数量大于一个,则所述编码网络中的各个编码器依次连接,所述编码网络中的第一个编码器的输入中包括所述编码网络的输入,所述编码网络中的最后一个编码器的输出为所述编码网络的输出,在所述编码网络中,除第一个编码器以外的编码器的输入中均包括上一个编码器的输出;将所述目标编码特征和所述目标编码坐标输入所述解码网络,得到目标解码特征和目标解码坐标,所述解码网络中包括至少一个解码器,若所述解码网络中的解码器的数量大于一个,则所述解码网络中的各个解码器依次连接,所述解码网络中的各个解码器的输入中均包括所述解码网络的输入,所述解码网络中的最后一个解码器的输出为所述解码网络的输出,在所述解码网络中,除第一个解码器以外的解码器的输入中还包括上一个解码器的输出;将所述目标解码特征和所述目标解码坐标输入所述检测网络,得到所述待检测图像的目标检测结果。
上述实施例,目标检测网络中包括至少一个编码器和至少一个解码器,实现了更深层次的特征挖掘和解码,提高了目标检测网络在检测目标时的精确度。
在一个实施例中,所述编码器中包括自注意力编码模块和编码感知模块,所述自注意力编码模块中包括自注意力模块和归一化编码模块;所述将所述待检测图像的特征图和所述目标特征坐标图输入所述编码网络,得到目标编码特征和目标编码坐标,包括:将中间编码特征输入当前编码器中的自注意力模块,得到自注意力特征图和编码自注意力特征;将所述自注意力特征图与所述中间编码坐标相乘,得到自注意力坐标图;将所述编码自注意力特征、所述中间编码特征、所述中间编码坐标和所述自注意力坐标图输入所述当前编码器中的归一化编码模块,得到自注意力编码特征和作为下一个编码器的输入的中间编码坐标;将所述自注意力编码特征输入所述当前编码器中的编码感知模块,得到作为下一个编码器的输入的中间编码特征。
上述实施例,是对编码器的具体设计,在编码器中设计了自注意力编码模块,用来对不同的特征进行关注,最后通过编码感知模块对关注结果进行感知得到编码结果,从而在训练目标检测网络时候,加快目标检测网络的收敛。
在一个实施例中,所述将所述编码自注意力特征、所述中间编码特征、所述中间编码坐标和所述自注意力坐标图输入所述当前编码器中的归一化编码模块,得到自注意力编码特征和作为下一个编码器的输入的中间编码坐标,包括:将第一权重与所述中间编码坐标相乘,得到第一编码坐标图;将第二权重与所述自注意力坐标图相乘,得到第二编码坐标图;将所述第一编码坐标图和第二编码坐标图相加,得到作为下一个编码器的输入的中间编码坐标。
上述实施例,由于特征的相加操作会影响到坐标,因此,归一化模块还需要对坐标进行处理,以实现特征和坐标的同步处理。
在一个实施例中,所述解码器中包括自注意力解码模块、跨注意力模块和解码感知模块,所述跨注意力模块中包括注意力解码模块和归一化解码模块;所述将所述目标编码特征和所述目标编码坐标输入所述解码网络,得到目标解码特征和目标解码坐标,包括:将中间解码特征和中间解码坐标输入当前解码器中的自注意力解码模块,得到自注意力解码特征和自注意力解码坐标;将所述自注意力解码特征和所述目标编码特征输入所述当前解码器中的注意力解码模块,得到跨注意力特征图和跨注意力特征;将所述跨注意力特征图与所述目标编码坐标相乘,得到跨注意力坐标;将所述目标编码特征、所述跨注意力特征、所述自注意力解码坐标和所述跨注意力坐标输入所述归一化解码模块,得到归一化解码特征和作为下一个解码器的输入的中间解码坐标;将所述归一化解码特征输入所述当前解码器中的解码感知模块,得到作为下一个解码器的输入的中间解码特征。
上述实施例,是对解码器的具体设计,在解码器中设计了跨注意力模块,用来对目标编码特征和目标编码坐标进行关注,从而得到目标解码坐标和目标解码特征,从而在训练目标检测网络时候,加快了目标检测网络的收敛。
在一个实施例中,所述解码网络中的第一个解码器的输入中还包括可学向量;所述方法,还包括:在训练所述目标检测网络时,将初始特征零向量替换为可学向量。
上述实施例,在训练目标检测网络的时候,如果输入第一个编码器的是初始特征零向量(现有的目标检测网络是输入的初始特征零向量),那么可学查询向量需要学习的信息量比较多,所以将初始特征零向量替换为可学向量,从而让可学查询向量学习可学查询向量应该学习的信息,让可学向量学习可学向量应该学习的信息,减少可学查询向量需要学习的信息量,使得可学查询向量不需要再去学习可学向量需要学习的信息,从而提高目标检测网络的收敛速度以及学习精度。
在一个实施例中,所述检测网络中包括中心点检测模块、宽高检测模块和类别检测模块,所述中心点检测模块中包括偏移感知模块和求和模块;所述将所述目标解码特征和所述目标解码坐标输入所述检测网络,得到所述待检测图像的目标检测结果,包括:将所述目标解码特征输入所述偏移感知模块,得到所述目标解码坐标到检测框的中心点的坐标偏移量;将所述目标解码坐标到检测框的中心点的坐标偏移量和所述目标解码坐标输入所述求和模块进行求和处理,得到检测框的中心点的坐标;将所述目标解码特征输入所述宽高检测模块,得到检测框的宽和高;将所述目标解码特征输入所述类别检测模块,得到检测框中的目标的类别。
上述实施例,在对检测框的中心点的坐标进行预测的时候,并没有直接预测检测框的中心点的坐标,而是采用的将目标解码坐标与坐标偏移量相加的方式得到检测框的中心点的坐标,从而只需要对坐标偏移量进行预测,由于在一定程度上知晓了中心点的范围(重心附近),相较于漫无目的的直接预测中心点的方式,这样的方式能够提高模型的收敛速度。
在一个实施例中,所述对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,包括:获取所述待检测图像的特征图的尺寸;获取目标特征点在所述特征图中的目标坐标,所述目标特征点为所述特征图中的一个特征点;根据所述特征图的尺寸和所述目标特征点在所述特征图中的目标坐标计算所述目标特征点的归一化坐标;在初步特征坐标图中的所述目标坐标处,填入所述目标特征点的归一化坐标,得到目标特征坐标图。
上述实施例,由于不同的待检测图像的尺寸不同,特征图的尺寸也不同,因此,为了使得目标检测网络能够适应不同尺寸的图像,对坐标点的表示进行归一化处理。
第二方面,提供了一种目标检测装置,包括:
获取模块,用于获取待检测图像;
特征模块,用于将所述待检测图像输入特征提取网络,得到所述待检测图像的特征图;
坐标模块,用于对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,所述目标特征坐标图中记录了所述待检测图像的特征图中的各个位置上的特征对应在所述待检测图像上的坐标;
检测模块,用于将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果。
在一个实施例中,所述目标检测网络中包括编码网络、解码网络以及检测网络;所述检测模块,具体用于:将所述待检测图像的特征图和所述目标特征坐标图输入所述编码网络,得到目标编码特征和目标编码坐标,所述编码网络中包括至少一个编码器,若所述编码网络中的编码器的数量大于一个,则所述编码网络中的各个编码器依次连接,所述编码网络中的第一个编码器的输入中包括所述编码网络的输入,所述编码网络中的最后一个编码器的输出为所述编码网络的输出,在所述编码网络中,除第一个编码器以外的编码器的输入中均包括上一个编码器的输出;将所述目标编码特征和所述目标编码坐标输入所述解码网络,得到目标解码特征和目标解码坐标,所述解码网络中包括至少一个解码器,若所述解码网络中的解码器的数量大于一个,则所述解码网络中的各个解码器依次连接,所述解码网络中的各个解码器的输入中均包括所述解码网络的输入,所述解码网络中的最后一个解码器的输出为所述解码网络的输出,在所述解码网络中,除第一个解码器以外的解码器的输入中还包括上一个解码器的输出;将所述目标解码特征和所述目标解码坐标输入所述检测网络,得到所述待检测图像的目标检测结果。
在一个实施例中,所述编码器中包括自注意力编码模块和编码感知模块,所述自注意力编码模块中包括自注意力模块和归一化编码模块;所述检测模块,具体用于:将中间编码特征输入当前编码器中的自注意力模块,得到自注意力特征图和编码自注意力特征;将所述自注意力特征图与所述中间编码坐标相乘,得到自注意力坐标图;将所述编码自注意力特征、所述中间编码特征、所述中间编码坐标和所述自注意力坐标图输入所述当前编码器中的归一化编码模块,得到自注意力编码特征和作为下一个编码器的输入的中间编码坐标;将所述自注意力编码特征输入所述当前编码器中的编码感知模块,得到作为下一个编码器的输入的中间编码特征。
在一个实施例中,所述检测模块,具体用于:将第一权重与所述中间编码坐标相乘,得到第一编码坐标图;将第二权重与所述自注意力坐标图相乘,得到第二编码坐标图;将所述第一编码坐标图和第二编码坐标图相加,得到作为下一个编码器的输入的中间编码坐标。
在一个实施例中,所述解码器中包括自注意力解码模块、跨注意力模块和解码感知模块,所述跨注意力模块中包括注意力解码模块和归一化解码模块;所述检测模块,具体用于:将中间解码特征和中间解码坐标输入当前解码器中的自注意力解码模块,得到自注意力解码特征和自注意力解码坐标;将所述自注意力解码特征和所述目标编码特征输入所述当前解码器中的注意力解码模块,得到跨注意力特征图和跨注意力特征;将所述跨注意力特征图与所述目标编码坐标相乘,得到跨注意力坐标;将所述目标编码特征、所述跨注意力特征、所述自注意力解码坐标和所述跨注意力坐标输入所述归一化解码模块,得到归一化解码特征和作为下一个解码器的输入的中间解码坐标;将所述归一化解码特征输入所述当前解码器中的解码感知模块,得到作为下一个解码器的输入的中间解码特征。
在一个实施例中,所述解码网络中的第一个解码器的输入中还包括可学向量;所述装置,还包括:替换训练模块,用于在训练所述目标检测网络时,将初始特征零向量替换为可学向量。
在一个实施例中,所述检测网络中包括中心点检测模块、宽高检测模块和类别检测模块,所述中心点检测模块中包括偏移感知模块和求和模块;所述检测模块,具体用于:将所述目标解码特征输入所述偏移感知模块,得到所述目标解码坐标到检测框的中心点的坐标偏移量;将所述目标解码坐标到检测框的中心点的坐标偏移量和所述目标解码坐标输入所述求和模块进行求和处理,得到检测框的中心点的坐标;将所述目标解码特征输入所述宽高检测模块,得到检测框的宽和高;将所述目标解码特征输入所述类别检测模块,得到检测框中的目标的类别。
在一个实施例中,所述坐标模块,具体用于:获取所述待检测图像的特征图的尺寸;获取目标特征点在所述特征图中的目标坐标,所述目标特征点为所述特征图中的一个特征点;根据所述特征图的尺寸和所述目标特征点在所述特征图中的目标坐标计算所述目标特征点的归一化坐标;在初步特征坐标图中的所述目标坐标处,填入所述目标特征点的归一化坐标,得到目标特征坐标图。
第三方面,提供了一种计算机设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述目标检测方法的步骤。
第四方面,提供了一种计算机可读存储介质,所述计算机可读取存储介质中存储有计算机程序指令,所述计算机程序指令被处理器读取并运行时,执行如上所述目标检测方法的步骤。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的目标检测方法的实现流程示意图;
图2为本申请实施例提供的特征提取网络提取待检测图像的特征得到特征图的示意图;
图3为本申请实施例提供的目标特征坐标图的示意图;
图4为本申请实施例提供的步骤300的实现流程示意图;
图5为本申请实施例提供的步骤400的实现流程示意图;
图6为本申请实施例提供的目标检测网络的组成结构示意图;
图7为本申请实施例提供的步骤401的实现流程示意图;
图8为本申请实施例提供的编码器和解码器的组成结构示意图;
图9为本申请实施例提供的步骤402的实现流程示意图;
图10为本申请实施例提供的解码器中的自注意力解码模块的组成结构示意图;
图11为本申请实施例提供的步骤403的实现流程示意图;
图12为本申请实施例提供的目标检测装置的组成结构示意图;
图13为本申请实施例提供的计算机设备的组成结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在一个实施例中,提供了一种目标检测方法,本发明实施例所述的目标检测方法的执行主体为能够实现本发明实施例所述的目标检测方法的设备,该设备可以包括但不限于终端和服务器。其中,终端包括台式终端和移动终端,台式终端包括但不限于台式电脑和车载电脑;移动终端包括但不限于手机、平板、笔记本电脑和智能手表。服务器包括高性能计算机和高性能计算机集群。
图1为本申请实施例提供的目标检测方法,包括:
步骤100,获取待检测图像。
待检测图像,可以是包含有目标的图像,也可以是不包含有目标的图像。其中,目标,为待检测图像中的前景,目标可以是人、动物,也可以是植物,还可以是物件,例如,凳子。当待检测图像是包含有目标的图像时,待检测图像中的目标的数量为至少一个,即待检测图像可以是包含有多个目标的图像,从而实现对待检测图像中的多个目标的检测。
当待检测图像是包含有目标的图像时,目标检测结果为对待检测图像中的目标的检测结果,例如,对待检测图像中的目标的检测结果为紧致包围该目标的检测框;当待检测图像是不包含目标的图像时,则待检测图像的目标检测结果为空。
步骤200,将所述待检测图像输入特征提取网络,得到所述待检测图像的特征图。
特征提取网络,为用于提取待检测图像中的特征的网络,例如,特征提取网络为VGG、ResNet或者ShuffleNet;特征图,为特征提取网络提取出来的待检测图像的特征。如图2所示,待检测图像的维度和待检测图像的特征图的维度通常不同,例如,待检测图像为RGB彩色图像,假设待检测图像的维度为:W×H×3,经过特征提取网络之后,得到的特征图的维度为:w×h×c,其中,c为正整数,例如,c=256。
步骤300,对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,所述目标特征坐标图中记录了所述待检测图像的特征图中的各个位置上的特征对应在所述待检测图像上的坐标。
由于特征图记载的是待检测图像的特征,因此,通过对特征图进行坐标计算,可以得到目标特征坐标图,即可以得到特征图中的各个位置上的特征对应在所述待检测图像上的坐标。示例性的,如图3所示,特征图中的特征点A,坐标为(i,j),则目标特征坐标图中,坐标为(i,j)处的值为(i,j),该值(i,j)即认为是特征点A对应在待检测图像上的坐标((i,j)其实并不是特征点A对应在待检测图像上的坐标,但是可以根据(i,j)计算出特征点A对应在待检测图像上的坐标,例如,下采样倍数为S,特征图的维度为:w×h×c,待检测图像的维度为W×H×3,此时W=S×w,H=S×h,特征点A对应在待检测图像上的坐标可以为((S×(2×i+1))/(2×W),(S×(2×j+1))/(2×H)))。于是,当特征图的维度为:w×h×c时,根据特征图得到的目标特征坐标图的维度为:w×h×2。
步骤400,将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果。
目标检测网络,为用于对待检测图像中的目标进行检测的网络,例如,基于transformer结构构建的目标检测网络。
目标检测结果,为对待检测图像中的目标进行检测得到的结果,示例性的,每个目标的目标检测结果包括目标类别以及检测框结果。
其中,目标类别,为目标的类别,可以根据不同的类别划分方式去划分目标的类别,例如,目标类别为人类别、车类别、猫类别和狗类别。
检测框结果,为用于构建检测框的结果。例如,检测框为方框,可以根据方框的左上角的第一关键点以及右下角的第二关键点实现该方框的构建,此时,检测框结果即为第一关键点的坐标和第二关键点的坐标;再如,检测框为方框,可以根据方框的中心点,方框的宽和高实现该方框的构建,此时,检测框结果即为中心点的坐标,方框的宽和方框的高。
上述目标检测方法,将待检测图像的特征图和目标特征坐标图同时作为目标检测网络的输入,得到待检测图像的目标检测结果,由于不仅输入了特征,还输入了特征的坐标,因此,在训练目标检测网络(即预测目标的检测框的坐标)的时候,并不是毫无方向的去训练目标检测网络,即不是毫无方向的去让目标检测网络收敛,而是相当于给出了一定的先验信息,从而提高目标检测网络的收敛速度。
在一个实施例中,如图4所示,步骤300所述对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,包括:
步骤301,获取所述待检测图像的特征图的尺寸。
例如,特征图的维度为w×h×c,则特征图的尺寸为w×h。
步骤302,获取目标特征点在所述特征图中的目标坐标,所述目标特征点为所述特征图中的一个特征点。
目标坐标,为目标特征点在特征图中的坐标。如图3所示,特征图中的目标特征点A(i,j),则目标特征点A的目标坐标为:(i,j),其中,i为0到w-1之间的整数,i的取值包括0和w-1,j为0到h-1之间的整数,j的取值包括0和h-1。
步骤303,根据所述特征图的尺寸和所述目标特征点在所述特征图中的目标坐标计算所述目标特征点的归一化坐标。
假设归一化坐标为(xi,xj),则xi=(2×i+1)/(2×w),xj=(2×j+1)/(2×h)。
步骤304,在初步特征坐标图中的所述目标坐标处,填入所述目标特征点的归一化坐标,得到目标特征坐标图。
初步特征坐标图,为预先建立的内容为空的特征坐标图,当特征图中的所有特征点的坐标全部被归一化并填入到初步特征坐标图之后,即可得到目标特征坐标图,如图3所示。
上述实施例,由于不同的待检测图像的尺寸不同,特征图的尺寸也不同,因此,为了使得目标检测网络能够适应不同尺寸的图像,对坐标点的表示进行归一化处理。
在一个实施例中,所述目标检测网络中包括编码网络、解码网络以及检测网络。如图5所示,步骤400所述将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果,包括:
步骤401,将所述待检测图像的特征图和所述目标特征坐标图输入所述编码网络,得到目标编码特征和目标编码坐标,所述编码网络中包括至少一个编码器,若所述编码网络中的编码器的数量大于一个,则所述编码网络中的各个编码器依次连接,所述编码网络中的第一个编码器的输入中包括所述编码网络的输入,所述编码网络中的最后一个编码器的输出为所述编码网络的输出,在所述编码网络中,除第一个编码器以外的编码器的输入中均包括上一个编码器的输出。
编码网络,为用于对特征图和目标特征坐标图进行编码得到目标编码特征和目标编码坐标的网络,其中,目标编码特征,为输入解码网络中用于生成目标解码特征的特征,目标编码坐标,为输入解码网络中用于生成目标解码坐标的坐标。
如图6所示,编码网络中包括多个编码器,各个编码器之间依次连接,待检测图像的特征图和目标特征坐标图是编码网络的输入,即编码网络中第一个编码器的输入,除第一个编码器以外的编码器的输入中均包括上一个编码器的输出。通过在编码网络中设置多个编码器,能够提取到特征图中的更深层次的特征。
如图6所示,编码网络中的各个编码器的输入中还可以包括位置向量,位置向量用于记载特征图中的特征的空间位置信息,由于位置向量记载了特征的空间位置信息,使得编码网络在编码时还能考虑到空间位置维度,从而提高编码准确率。位置向量的维度和中间编码特征的维度一致。
步骤402,将所述目标编码特征和所述目标编码坐标输入所述解码网络,得到目标解码特征和目标解码坐标,所述解码网络中包括至少一个解码器,若所述解码网络中的解码器的数量大于一个,则所述解码网络中的各个解码器依次连接,所述解码网络中的各个解码器的输入中均包括所述解码网络的输入,所述解码网络中的最后一个解码器的输出为所述解码网络的输出,在所述解码网络中,除第一个解码器以外的解码器的输入中还包括上一个解码器的输出。
解码网络,为用于对目标编码特征和目标编码坐标进行解码得到目标解码特征和目标解码坐标的网络,其中,目标解码特征,为检测网络用于解码的特征,目标解码坐标,为检测网络用于解码的坐标。
如图6所示,解码网络中包括多个解码器,各个解码器之间依次连接,目标编码特征和目标编码坐标是每个解码器的输入,同时,除第一个解码器以外的解码器的输入中还包括上一个解码器的输出,通过在解码网络中设置多个解码器,以便从目标编码特征中恢复出更加精准的解码信息。
如图6所示,解码网络中的每个解码器的输入中还可以包括位置向量,由于位置向量记载了特征的空间位置,使得解码网络在解码时还能考虑到空间位置维度,从而提高解码准确率。
如图6所示,解码网络中的每个解码器的输入中还可以包括可学查询向量,可学查询向量用于记载对待检测图像中的不同区域(不同特征)的关注程度,由于在解码网络中加入了可学查询向量,从而实现了对不同区域进行不同程度的关注,使得目标检测网络在训练时能够更快的收敛。
步骤403,将所述目标解码特征和所述目标解码坐标输入所述检测网络,得到所述待检测图像的目标检测结果。
检测网络,为用于根据解码特征(即目标解码特征和目标解码坐标)预测目标检测结果的网络。
当目标检测结果中包括检测框的中心点的坐标、检测框的宽和高、目标类别时,示例性的,检测网络中包括检测框模块和类别模块,其中,检测框模块中包括第一多层感知机,将目标解码特征和目标解码坐标输入第一多层感知机,得到检测框的中心点的坐标、检测框的宽和高,类别模块中包括第二多层感知机,将目标解码特征输入第二多层感知机,得到检测框中的目标的类别。其中,多层感知机,为层与层之间为全连接的神经网络。
上述实施例,目标检测网络中包括至少一个编码器和至少一个解码器,实现了更深层次的特征挖掘和解码,提高了目标检测网络在检测目标时的精确度。
在一个实施例中,如图7所示,所述编码器中包括自注意力编码模块和编码感知模块,所述自注意力编码模块中包括自注意力模块和归一化编码模块。
自注意力编码模块,根据相同的输入生成Q、K、V,从而实现对自身各个组成部分的关注;编码感知模块,用于根据自注意力编码模块输出的关注结果输出编码特征;归一化编码模块,对输入进行求和处理和归一化处理。
步骤401所述将所述待检测图像的特征图和所述目标特征坐标图输入所述编码网络,得到目标编码特征和目标编码坐标,包括:
步骤401A,将中间编码特征输入当前编码器中的自注意力模块,得到自注意力特征图和编码自注意力特征。
中间编码特征,为与当前编码器连接的上一个编码器输出的编码特征;当前编码器,为当前正在编码的编码器,当前编码器可以是编码网络包含的多个编码器中的任意一个编码器;自注意力特征图,为反映Q中的各个特征与K中的各个特征的相似程度的矩阵,Q中的某个特征与K中的某个特征越相似,则计算后的相似度得分越高,反之,相似度得分越低,从而形成不同程度的注意力,实现对特征不同程度的关注;编码自注意力特征,为对中间编码特征进行自注意力处理后得到的编码特征,即使用自注意力特征图对中间编码特征进行处理后得到的编码特征。
将中间编码特征输入当前编码器中的自注意力模块,自注意力模块将根据中间编码特征进行注意力计算,假设中间编码特征为X,中间编码特征的维度为wh×c,首先根据中间编码特征X生成Q、K和V,自注意力模块的计算如下:
如图8所示,自注意力特征图attention=softmax(Q·KT),其中,KT为K的转置矩阵,编码自注意力特征output=attention·V。可见,自注意力特征图的维度为wh×wh,编码自注意力特征的维度为wh×c。
其中,根据中间编码特征X生成Q、K和V,包括:当编码器的输入中还包括位置向量的时候,将中间编码特征X直接作为V,将中间编码特征X与位置向量相加,得到K和Q。
步骤401B,将所述自注意力特征图与所述中间编码坐标相乘,得到自注意力坐标图。
中间编码坐标,为与当前编码器连接的上一个编码器输出的编码坐标;自注意力坐标图,为对中间编码坐标进行注意力处理后得到的坐标,即:使用自注意力特征图对中间编码坐标进行处理后得到的坐标。假设中间编码坐标为Coor_in,自注意力坐标图为Coor_out,于是,自注意力坐标图Coor_out=attention·Coor_in。假设自注意力特征图的维度为wh×wh,中间编码坐标的维度为wh×2,于是,自注意力坐标图的维度为wh×2。由于自注意力特征图中记载的是0到1之间的相似度得分(且自注意力特征图中的一行的相似度得分之和为1),因此,将自注意力特征图与中间编码坐标相乘,得到的是对坐标的加权结果,即得到了多个坐标的重心的坐标。步骤401C,将所述编码自注意力特征、所述中间编码特征、所述中间编码坐标和所述自注意力坐标图输入所述当前编码器中的归一化编码模块,得到自注意力编码特征和作为下一个编码器的输入的中间编码坐标。
归一化编码模块,为对输入进行求和处理以及归一化处理的模块;自注意力编码特征,为编码器中的自注意力编码模块输出的编码特征。
将编码自注意力特征和中间编码特征输入当前编码器中的归一化编码模块,得到自注意力编码特征,包括:将编码自注意力特征和中间编码特征求和,得到求和特征T,随着网络层数的增加,网络的检测效果不一定会有更好的提升,因此,将处理后的结果和处理前的结果相加,用于防止网络退化;对所述求和特征T的第i行,计算第i行的均值ui,其中,ui=(Ti1+Ti2+…Tin)/n;计算第i行的方差gi,其中,对第i行的第j个值Tij的归一化结果为:其中,Δ是很小的值,防止gi2为0,并且,α以及β都是在训练目标检测网络的时候可以学习得到的。通过上述方法可以对求和矩阵T中的每一行中的每一个值进行归一化,从而得到自注意力编码特征。随着神经网络参数的迭代更新,靠近输出层的参数将发生剧烈变化,因此,为了在一定程度上使得神经网络各层输出的数据更加的稳定,对数据进行归一化处理。
在一个实施例中,步骤401C所述将所述编码自注意力特征、所述中间编码特征、所述中间编码坐标和所述自注意力坐标图输入所述当前编码器中的归一化编码模块,得到自注意力编码特征和作为下一个编码器的输入的中间编码坐标,包括:
步骤401C1,将第一权重与所述中间编码坐标相乘,得到第一编码坐标图。
如图8所示,假设第一权重为η2,第一编码坐标图为Coor_out2,于是,Coor_out2=η2×Coor_in。
步骤401C2,将第二权重与所述自注意力坐标图相乘,得到第二编码坐标图。
如图8所示,假设第二权重为η1,第二编码坐标图为Coor_out1,于是,Coor_out1=η1×Coor_out。
步骤401C3,将所述第一编码坐标图和第二编码坐标图相加,得到作为下一个编码器的输入的中间编码坐标。
Coor_in'=Coor_out1+Coor_out2,将Coor_in'作为下一个编码器的输入的中间编码坐标。
上述实施例,由于特征的相加操作会影响到坐标,因此,归一化模块还需要对坐标进行处理,以实现特征和坐标的同步处理。
步骤401D,将所述自注意力编码特征输入所述当前编码器中的编码感知模块,得到作为下一个编码器的输入的中间编码特征。
编码感知模块,用于对自注意力编码模块对特征的关注结果进行感知,得到感知结果(即得到作为下一个编码器的输入的中间编码特征)。示例性的,编码感知模块中包括多层感知机,以及,相加及归一化模块,通过该多层感知机、相加及归一化模块,对输入的自注意力编码特征进行感知。
需要说明的是,若当前编码器是编码网络中的第一个编码器,则输入当前编码器的中间编码特征为待检测图像的特征图,输入当前编码器的中间编码坐标为目标特征坐标图。
若当前编码器是编码网络中的第一个编码器,则输入该第一个编码器中的Q、K和V的维度需要是二维的,即n×c这种二维的形式,但是,待检测图像的特征图的维度是w×h×c,目标特征坐标图的维度是wh×2,因此,为了便于第一个编码器的自注意力编码模块的处理,对待检测图像的特征图以及目标特征坐标图进行维度处理,具体的,将待检测图像的特征图的维度变换为wh×c,其中,wh=w×h,同样的,将目标特征坐标图变换为wh×2。
若当前编码器是编码网络中的最后一个编码器,则步骤401C所述得到自注意力编码特征和作为下一个编码器的输入的中间编码坐标,包括:得到自注意力编码特征和目标编码坐标(如图8所示,目标编码坐标表示为Coor_out_b);步骤401D所述得到作为下一个编码器的输入的中间编码特征,包括:得到目标编码特征(如图8所示,目标编码特征表示为output_b)。
上述实施例,是对编码器的具体设计,在编码器中设计了自注意力编码模块,用来对不同的特征进行关注,最后通过编码感知模块对关注结果进行感知得到编码结果,从而在训练目标检测网络时候,加快目标检测网络的收敛。
在一个实施例中,所述解码器中包括自注意力解码模块、跨注意力模块和解码感知模块,所述跨注意力模块中包括注意力解码模块和归一化解码模块。
自注意力解码模块,根据相同的输入生成Q、K、V(输入来自于解码网络端),从而实现对自身各个组成部分的关注;跨注意力模块,根据不同的输入生成Q、K、V(输入来自于编码网络和解码网络),从而实现对编码网络的输出的关注;解码感知模块,用于根据跨注意力模块输出的关注结果输出解码特征和解码坐标;归一化解码模块,对输入进行求和处理和归一化处理。
如图9所示,步骤402所述将所述目标编码特征和所述目标编码坐标输入所述解码网络,得到目标解码特征和目标解码坐标,包括:
步骤402A,将中间解码特征和中间解码坐标输入当前解码器中的自注意力解码模块,得到自注意力解码特征和自注意力解码坐标。
中间解码特征,为与当前解码器连接的上一个解码器输出的解码特征;当前解码器,为当前正在解码的解码器,当前解码器可以是解码网络中包含的多个解码器中的任意一个解码器;自注意力解码特征,为解码器中的自注意力解码模块输出的解码特征;自注意力解码坐标,为解码器中的自注意力解码模块输出的解码坐标。
如图10所示,中间解码特征为Y,维度为z×c,其中,z为想要得到的检测框的个数,将中间编码特征Y与可学查询向量(维度与Y相同)相加,得到K和Q,将中间解码特征Y直接作为V,按照和编码网络中的自注意力编码模块的方式,得到自注意力解码特征dd(维度与Y相同)和自注意力解码坐标C_1(维度为z×2)。在此不再详述。
步骤402B,将所述自注意力解码特征和所述目标编码特征输入所述当前解码器中的注意力解码模块,得到跨注意力特征图和跨注意力特征。
跨注意力特征图,为反映不同特征的相似度得分的矩阵,相似度得分越大的特征的关注度越高,相似度得分越小的特征的关注度越小,从而形成不同程度的注意力,实现对特征不同程度的关注;跨注意力特征,为对自注意力解码特征和目标编码特征进行跨注意力处理后得到的解码特征,即使用跨注意力特征图对目标编码特征进行处理后得到的解码特征。
如图8所示,将自注意力解码特征dd与可学查询向量相加,得到Q(维度为z×c),将目标编码特征output_b与位置向量相加,得到K(维度为wh×c),将目标编码特征output_b直接作为V(维度为wh×c),计算跨注意力特征图attention”=softmax(Q·KT),维度为z×wh,维度为z×c的跨注意力特征output”=attention”·V。
步骤402C,将所述跨注意力特征图与所述目标编码坐标相乘,得到跨注意力坐标。
跨注意力坐标,为对目标编码坐标进行跨注意力处理后得到的坐标,即使用跨注意力特征图对目标编码坐标进行处理后得到的坐标。如图8所示,假设目标编码坐标为Coor_out_b,跨注意力坐标为Coor_out”,于是,Coor_out”=attention”·Coor_out_b。跨注意力特征图的维度为z×wh,目标编码坐标的维度为wh×2,于是,跨注意力坐标的维度为z×2。可见,由于跨注意力特征图中记载的是0到1之间的相似度得分,因此,将跨注意力特征图与目标编码坐标相乘,得到的是对目标编码坐标的加权结果,即得到了各个查询对应的特征的重心的坐标。
步骤402D,将所述目标编码特征、所述跨注意力特征、所述自注意力解码坐标和所述跨注意力坐标输入所述归一化解码模块,得到归一化解码特征和作为下一个解码器的输入的中间解码坐标。
归一化解码模块对目标编码特征和跨注意力特征进行求和处理和归一化处理,得到归一化解码特征。归一化解码模块对特征的处理方式和归一化编码模块相同,在此不再详述。
归一化解码模块对自注意力解码坐标和跨注意力坐标进行加权求和处理,得到作为下一个解码器的输入的中间解码坐标。具体的,如图8所示,将自注意力解码坐标C_1与第一解码权重η2”相乘,得到第一解码坐标图Coor_out2”;将跨注意力坐标Coor_out”与第二解码权重η1”相乘,第二解码坐标图Coor_out1”;将第一解码坐标图与第二解码坐标图相加,得到作为下一个解码器的输入的中间解码坐标Coor_cetr’。
步骤402E,将所述归一化解码特征输入所述当前解码器中的解码感知模块,得到作为下一个解码器的输入的中间解码特征。
解码感知模块,用于对跨注意力模块对特征的关注结果进行感知,得到感知结果(即得到作为下一个解码器的输入的中间解码特征)。示例性的,解码感知模块中包括多层感知机,以及,相加及归一化模块,通过该多层感知机、相加及归一化模块,对输入的归一化解码特征进行感知。
需要说明的是,若当前解码器是解码网络中的第一个解码器,则输入当前解码器中的中间解码特征为可学向量,输入当前解码器中的中间解码坐标为初始坐标零向量,如图6所示。
可学向量,为作为初始解码特征的向量,可学向量的维度为z×c;初始坐标零向量,为作为初始解码坐标的向量,初始坐标零向量的维度为z×2。
若当前解码器是解码网络中的第一个解码器,则输入该第一个解码器中的Q、K和V的维度需要是二维的,即L×K,因此,可学向量的维度为z×c,初始坐标零向量的维度为z×2。
若当前解码器是解码网络中的最后一个解码器,则步骤402D所述得到归一化解码特征和作为下一个解码器的输入的中间解码坐标,包括:得到归一化解码特征和目标解码坐标(如图8所示,目标解码坐标为Coor_out_j);步骤402E所述得到作为下一个解码器的输入的中间解码特征,包括:得到目标解码特征(如图8所示,目标解码特征表示为output_j)。
上述实施例,是对解码器的具体设计,在解码器中设计了跨注意力模块,用来对目标编码特征和目标编码坐标进行关注,从而得到目标解码坐标和目标解码特征,从而在训练目标检测网络时候,加快了目标检测网络的收敛。
在一个实施例中,所述解码网络中的第一个解码器的输入中还包括可学向量;
所述方法,还包括:
在训练所述目标检测网络时,将初始特征零向量替换为可学向量。
其中,可学向量是随机初始化的向量,在训练目标检测网络的时候,对可学向量进行学习。
上述实施例,在训练目标检测网络的时候,如果输入第一个编码器的是初始特征零向量(现有的目标检测网络是输入的初始特征零向量),那么可学查询向量需要学习的信息量比较多,所以将初始特征零向量替换为可学向量,从而让可学查询向量学习可学查询向量应该学习的信息,让可学向量学习可学向量应该学习的信息,减少可学查询向量需要学习的信息量,使得可学查询向量不需要再去学习可学向量需要学习的信息,从而提高目标检测网络的收敛速度以及学习精度。
在一个实施例中,所述检测网络中包括中心点检测模块、宽高检测模块和类别检测模块,所述中心点检测模块中包括偏移感知模块和求和模块。
中心点检测模块,用于确定检测框的中心点;宽高检测模块,用于确定检测框的宽和高;类别检测模块,用于确定检测框的类别;偏移感知模块,用于确定目标解码坐标到检测框的中心点的坐标偏移量;求和模块,用于将坐标偏移量和目标解码坐标进行求和,得到中心点的坐标。
如图11所示,步骤403所述将所述目标解码特征和所述目标解码坐标输入所述检测网络,得到所述待检测图像的目标检测结果,包括:
步骤403A,将所述目标解码特征输入所述偏移感知模块,得到所述目标解码坐标到检测框的中心点的坐标偏移量。
偏移感知模块,包括一个多层感知机,假设偏移量为kk,于是,kk=MLP1(output_j)。
步骤403B,将所述目标解码坐标到检测框的中心点的坐标偏移量和所述目标解码坐标输入所述求和模块进行求和处理,得到检测框的中心点的坐标。
示例性的,假设中心点的坐标用box_xy表示,则:
box_xy=(MLP1(output_j)+Coor_out_j)×(W,H)。
其中,W为待检测图像的宽,H为待检测图像的高。
步骤403C,将所述目标解码特征输入所述宽高检测模块,得到检测框的宽和高。
宽高检测模块,包括一个多层感知机,示例性的,检测框的宽和高为:
box_WH=sigmoid(MLP2(output_j))×(W,H)。
由于宽高必须为正数,所以采用sigmoid函数对多层感知机MLP2的输出进行符号限制,防止MLP2的输出为负的情况出现。
步骤403D,将所述目标解码特征输入所述类别检测模块,得到检测框中的目标的类别。
类别检测模块,包括一个多层感知机,示例性的,目标的类别为:
score=softmax(MLP3(output_j))。
其中,MLP1、MLP2和MLP3指代不同的多层感知机。
上述实施例,在对检测框的中心点的坐标进行预测的时候,并没有直接预测检测框的中心点的坐标,而是采用的将目标解码坐标与坐标偏移量相加的方式得到检测框的中心点的坐标,从而只需要对坐标偏移量进行预测,由于在一定程度上知晓了中心点的范围(重心附近),相较于漫无目的的直接预测中心点的方式,这样的方式能够提高模型的收敛速度。
在一个实施例中,提供了一种训练目标检测网络的方法,包括:
获取训练图像;将所述训练图像输入特征提取网络,得到所述训练图像的特征图;对所述训练图像的特征图进行坐标计算,得到训练特征坐标图,所述训练特征坐标图中记录了所述训练图像的特征图中的各个特征对应在所述训练图像上的坐标;将所述训练图像的特征图和所述训练特征坐标图输入初步的目标检测网络,得到所述训练图像的目标检测结果;获取训练图像对应的标注检测结果;根据训练图像的目标检测结果和训练图像对应的标注检测结果计算网络损失;根据所述网络损失对所述初步的目标检测网络进行训练,在所述网络损失收敛时,得到所述目标检测网络。
在一个实施例中,如图12所示,提供了一种目标检测装置1200,包括:
获取模块1201,用于获取待检测图像。
特征模块1202,用于将所述待检测图像输入特征提取网络,得到所述待检测图像的特征图。
坐标模块1203,用于对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,所述目标特征坐标图中记录了所述待检测图像的特征图中的各个位置上的特征对应在所述待检测图像上的坐标。
检测模块1204,用于将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果。
在一个实施例中,所述目标检测网络中包括编码网络、解码网络以及检测网络;所述检测模块1204,具体用于:将所述待检测图像的特征图和所述目标特征坐标图输入所述编码网络,得到目标编码特征和目标编码坐标,所述编码网络中包括至少一个编码器,若所述编码网络中的编码器的数量大于一个,则所述编码网络中的各个编码器依次连接,所述编码网络中的第一个编码器的输入中包括所述编码网络的输入,所述编码网络中的最后一个编码器的输出为所述编码网络的输出,在所述编码网络中,除第一个编码器以外的编码器的输入中均包括上一个编码器的输出;将所述目标编码特征和所述目标编码坐标输入所述解码网络,得到目标解码特征和目标解码坐标,所述解码网络中包括至少一个解码器,若所述解码网络中的解码器的数量大于一个,则所述解码网络中的各个解码器依次连接,所述解码网络中的各个解码器的输入中均包括所述解码网络的输入,所述解码网络中的最后一个解码器的输出为所述解码网络的输出,在所述解码网络中,除第一个解码器以外的解码器的输入中还包括上一个解码器的输出;将所述目标解码特征和所述目标解码坐标输入所述检测网络,得到所述待检测图像的目标检测结果。
在一个实施例中,所述编码器中包括自注意力编码模块和编码感知模块,所述自注意力编码模块中包括自注意力模块和归一化编码模块;所述检测模块1204,具体用于:将中间编码特征输入当前编码器中的自注意力模块,得到自注意力特征图和编码自注意力特征;将所述自注意力特征图与所述中间编码坐标相乘,得到自注意力坐标图;将所述编码自注意力特征、所述中间编码特征、所述中间编码坐标和所述自注意力坐标图输入所述当前编码器中的归一化编码模块,得到自注意力编码特征和作为下一个编码器的输入的中间编码坐标;将所述自注意力编码特征输入所述当前编码器中的编码感知模块,得到作为下一个编码器的输入的中间编码特征。
在一个实施例中,所述检测模块1204,具体用于:将第一权重与所述中间编码坐标相乘,得到第一编码坐标图;将第二权重与所述自注意力坐标图相乘,得到第二编码坐标图;将所述第一编码坐标图和第二编码坐标图相加,得到作为下一个编码器的输入的中间编码坐标。
在一个实施例中,所述解码器中包括自注意力解码模块、跨注意力模块和解码感知模块,所述跨注意力模块中包括注意力解码模块和归一化解码模块;所述检测模块1204,具体用于:将中间解码特征和中间解码坐标输入当前解码器中的自注意力解码模块,得到自注意力解码特征和自注意力解码坐标;将所述自注意力解码特征和所述目标编码特征输入所述当前解码器中的注意力解码模块,得到跨注意力特征图和跨注意力特征;将所述跨注意力特征图与所述目标编码坐标相乘,得到跨注意力坐标;将所述目标编码特征、所述跨注意力特征、所述自注意力解码坐标和所述跨注意力坐标输入所述归一化解码模块,得到归一化解码特征和作为下一个解码器的输入的中间解码坐标;将所述归一化解码特征输入所述当前解码器中的解码感知模块,得到作为下一个解码器的输入的中间解码特征。
在一个实施例中,所述解码网络中的第一个解码器的输入中还包括可学向量;所述装置1200,还包括:替换训练模块,用于在训练所述目标检测网络时,将初始特征零向量替换为可学向量。
在一个实施例中,所述检测网络中包括中心点检测模块、宽高检测模块和类别检测模块,所述中心点检测模块中包括偏移感知模块和求和模块;所述检测模块1204,具体用于:将所述目标解码特征输入所述偏移感知模块,得到所述目标解码坐标到检测框的中心点的坐标偏移量;将所述目标解码坐标到检测框的中心点的坐标偏移量和所述目标解码坐标输入所述求和模块进行求和处理,得到检测框的中心点的坐标;将所述目标解码特征输入所述宽高检测模块,得到检测框的宽和高;将所述目标解码特征输入所述类别检测模块,得到检测框中的目标的类别。
在一个实施例中,所述坐标模块1203,具体用于:获取所述待检测图像的特征图的尺寸;获取目标特征点在所述特征图中的目标坐标,所述目标特征点为所述特征图中的一个特征点;根据所述特征图的尺寸和所述目标特征点在所述特征图中的目标坐标计算所述目标特征点的归一化坐标;在初步特征坐标图中的所述目标坐标处,填入所述目标特征点的归一化坐标,得到目标特征坐标图。
在一个实施例中,如图13所示,提供了一种计算机设备,该计算机设备具体可以是终端或服务器。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口,存储器包括非易失性存储介质和内存储器,该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现目标检测方法。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行目标检测方法。本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本申请提供的目标检测方法可以实现为一种计算机程序的形式,计算机程序可在如图13所示的计算机设备上运行。计算机设备的存储器中可存储组成目标检测装置的多个程序模板。比如,获取模块1201、特征模块1202和坐标模块1203。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:获取待检测图像;将所述待检测图像输入特征提取网络,得到所述待检测图像的特征图;对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,所述目标特征坐标图中记录了所述待检测图像的特征图中的各个位置上的特征对应在所述待检测图像上的坐标;将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:获取待检测图像;将所述待检测图像输入特征提取网络,得到所述待检测图像的特征图;对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,所述目标特征坐标图中记录了所述待检测图像的特征图中的各个位置上的特征对应在所述待检测图像上的坐标;将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果。
需要说明的是,上述目标检测方法、目标检测装置、计算机设备及计算机可读存储介质属于一个总的发明构思,目标检测方法、目标检测装置、计算机设备及计算机可读存储介质实施例中的内容可相互适用。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。再者,在本申请多个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是多个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种目标检测方法,其特征在于,包括:
获取待检测图像;
将所述待检测图像输入特征提取网络,得到所述待检测图像的特征图;
对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,所述目标特征坐标图中记录了所述待检测图像的特征图中的各个位置上的特征对应在所述待检测图像上的坐标;
将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果。
2.根据权利要求1所述的方法,其特征在于,所述目标检测网络中包括编码网络、解码网络以及检测网络;
所述将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果,包括:
将所述待检测图像的特征图和所述目标特征坐标图输入所述编码网络,得到目标编码特征和目标编码坐标,所述编码网络中包括至少一个编码器,若所述编码网络中的编码器的数量大于一个,则所述编码网络中的各个编码器依次连接,所述编码网络中的第一个编码器的输入中包括所述编码网络的输入,所述编码网络中的最后一个编码器的输出为所述编码网络的输出,在所述编码网络中,除第一个编码器以外的编码器的输入中均包括上一个编码器的输出;
将所述目标编码特征和所述目标编码坐标输入所述解码网络,得到目标解码特征和目标解码坐标,所述解码网络中包括至少一个解码器,若所述解码网络中的解码器的数量大于一个,则所述解码网络中的各个解码器依次连接,所述解码网络中的各个解码器的输入中均包括所述解码网络的输入,所述解码网络中的最后一个解码器的输出为所述解码网络的输出,在所述解码网络中,除第一个解码器以外的解码器的输入中还包括上一个解码器的输出;
将所述目标解码特征和所述目标解码坐标输入所述检测网络,得到所述待检测图像的目标检测结果。
3.根据权利要求2所述的方法,其特征在于,所述编码器中包括自注意力编码模块和编码感知模块,所述自注意力编码模块中包括自注意力模块和归一化编码模块;
所述将所述待检测图像的特征图和所述目标特征坐标图输入所述编码网络,得到目标编码特征和目标编码坐标,包括:
将中间编码特征输入当前编码器中的自注意力模块,得到自注意力特征图和编码自注意力特征;
将所述自注意力特征图与所述中间编码坐标相乘,得到自注意力坐标图;
将所述编码自注意力特征、所述中间编码特征、所述中间编码坐标和所述自注意力坐标图输入所述当前编码器中的归一化编码模块,得到自注意力编码特征和作为下一个编码器的输入的中间编码坐标;
将所述自注意力编码特征输入所述当前编码器中的编码感知模块,得到作为下一个编码器的输入的中间编码特征。
4.根据权利要求3所述的方法,其特征在于,所述将所述编码自注意力特征、所述中间编码特征、所述中间编码坐标和所述自注意力坐标图输入所述当前编码器中的归一化编码模块,得到自注意力编码特征和作为下一个编码器的输入的中间编码坐标,包括:
将第一权重与所述中间编码坐标相乘,得到第一编码坐标图;
将第二权重与所述自注意力坐标图相乘,得到第二编码坐标图;
将所述第一编码坐标图和第二编码坐标图相加,得到作为下一个编码器的输入的中间编码坐标。
5.根据权利要求2至4任一项所述的方法,其特征在于,所述解码器中包括自注意力解码模块、跨注意力模块和解码感知模块,所述跨注意力模块中包括注意力解码模块和归一化解码模块;
所述将所述目标编码特征和所述目标编码坐标输入所述解码网络,得到目标解码特征和目标解码坐标,包括:
将中间解码特征和中间解码坐标输入当前解码器中的自注意力解码模块,得到自注意力解码特征和自注意力解码坐标;
将所述自注意力解码特征和所述目标编码特征输入所述当前解码器中的注意力解码模块,得到跨注意力特征图和跨注意力特征;
将所述跨注意力特征图与所述目标编码坐标相乘,得到跨注意力坐标;
将所述目标编码特征、所述跨注意力特征、所述自注意力解码坐标和所述跨注意力坐标输入所述归一化解码模块,得到归一化解码特征和作为下一个解码器的输入的中间解码坐标;
将所述归一化解码特征输入所述当前解码器中的解码感知模块,得到作为下一个解码器的输入的中间解码特征。
6.根据权利要求5所述的方法,其特征在于,所述解码网络中的第一个解码器的输入中还包括可学向量;
所述方法,还包括:
在训练所述目标检测网络时,将初始特征零向量替换为可学向量。
7.根据权利要求2至6任一项所述的方法,其特征在于,所述检测网络中包括中心点检测模块、宽高检测模块和类别检测模块,所述中心点检测模块中包括偏移感知模块和求和模块;
所述将所述目标解码特征和所述目标解码坐标输入所述检测网络,得到所述待检测图像的目标检测结果,包括:
将所述目标解码特征输入所述偏移感知模块,得到所述目标解码坐标到检测框的中心点的坐标偏移量;
将所述目标解码坐标到检测框的中心点的坐标偏移量和所述目标解码坐标输入所述求和模块进行求和处理,得到检测框的中心点的坐标;
将所述目标解码特征输入所述宽高检测模块,得到检测框的宽和高;
将所述目标解码特征输入所述类别检测模块,得到检测框中的目标的类别。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,包括:
获取所述待检测图像的特征图的尺寸;
获取目标特征点在所述特征图中的目标坐标,所述目标特征点为所述特征图中的一个特征点;
根据所述特征图的尺寸和所述目标特征点在所述特征图中的目标坐标计算所述目标特征点的归一化坐标;
在初步特征坐标图中的所述目标坐标处,填入所述目标特征点的归一化坐标,得到目标特征坐标图。
9.一种目标检测装置,其特征在于,包括:
获取模块,用于获取待检测图像;
特征模块,用于将所述待检测图像输入特征提取网络,得到所述待检测图像的特征图;
坐标模块,用于对所述待检测图像的特征图进行坐标计算,得到目标特征坐标图,所述目标特征坐标图中记录了所述待检测图像的特征图中的各个位置上的特征对应在所述待检测图像上的坐标;
检测模块,用于将所述待检测图像的特征图和所述目标特征坐标图输入目标检测网络,得到所述待检测图像的目标检测结果。
10.一种计算机设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至8任一项所述的方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读取存储介质中存储有计算机程序指令,所述计算机程序指令被处理器读取并运行时,执行权利要求1至8任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110736490.1A CN113591840A (zh) | 2021-06-30 | 2021-06-30 | 一种目标检测方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110736490.1A CN113591840A (zh) | 2021-06-30 | 2021-06-30 | 一种目标检测方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113591840A true CN113591840A (zh) | 2021-11-02 |
Family
ID=78245396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110736490.1A Pending CN113591840A (zh) | 2021-06-30 | 2021-06-30 | 一种目标检测方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113591840A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024044947A1 (zh) * | 2022-08-30 | 2024-03-07 | 宁德时代新能源科技股份有限公司 | 缺陷检测的方法、装置和计算机可读存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016106595A1 (en) * | 2014-12-30 | 2016-07-07 | Nokia Technologies Oy | Moving object detection in videos |
CN109670517A (zh) * | 2018-12-24 | 2019-04-23 | 北京旷视科技有限公司 | 目标检测方法、装置、电子设备和目标检测模型 |
CN111091091A (zh) * | 2019-12-16 | 2020-05-01 | 北京迈格威科技有限公司 | 目标对象重识别特征的提取方法、装置、设备及存储介质 |
CN111259940A (zh) * | 2020-01-10 | 2020-06-09 | 杭州电子科技大学 | 一种基于空间注意力地图的目标检测方法 |
CN111444807A (zh) * | 2020-03-19 | 2020-07-24 | 北京迈格威科技有限公司 | 目标检测方法、装置、电子设备和计算机可读介质 |
CN112036555A (zh) * | 2020-11-05 | 2020-12-04 | 北京亮亮视野科技有限公司 | 目标检测框架的优化方法及装置、存储介质、电子设备 |
US20200410273A1 (en) * | 2018-08-24 | 2020-12-31 | Tencent Technology (Shenzhen) Company Limited | Target detection method and apparatus, computer-readable storage medium, and computer device |
CN112307978A (zh) * | 2020-10-30 | 2021-02-02 | 腾讯科技(深圳)有限公司 | 目标检测方法、装置、电子设备及可读存储介质 |
CN112633355A (zh) * | 2020-12-18 | 2021-04-09 | 北京迈格威科技有限公司 | 图像数据处理方法及装置、目标检测模型训练方法及装置 |
CN113034500A (zh) * | 2021-05-25 | 2021-06-25 | 紫东信息科技(苏州)有限公司 | 基于多通道结构的消化道内窥镜图片病灶识别系统 |
-
2021
- 2021-06-30 CN CN202110736490.1A patent/CN113591840A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016106595A1 (en) * | 2014-12-30 | 2016-07-07 | Nokia Technologies Oy | Moving object detection in videos |
US20200410273A1 (en) * | 2018-08-24 | 2020-12-31 | Tencent Technology (Shenzhen) Company Limited | Target detection method and apparatus, computer-readable storage medium, and computer device |
CN109670517A (zh) * | 2018-12-24 | 2019-04-23 | 北京旷视科技有限公司 | 目标检测方法、装置、电子设备和目标检测模型 |
CN111091091A (zh) * | 2019-12-16 | 2020-05-01 | 北京迈格威科技有限公司 | 目标对象重识别特征的提取方法、装置、设备及存储介质 |
CN111259940A (zh) * | 2020-01-10 | 2020-06-09 | 杭州电子科技大学 | 一种基于空间注意力地图的目标检测方法 |
CN111444807A (zh) * | 2020-03-19 | 2020-07-24 | 北京迈格威科技有限公司 | 目标检测方法、装置、电子设备和计算机可读介质 |
CN112307978A (zh) * | 2020-10-30 | 2021-02-02 | 腾讯科技(深圳)有限公司 | 目标检测方法、装置、电子设备及可读存储介质 |
CN112036555A (zh) * | 2020-11-05 | 2020-12-04 | 北京亮亮视野科技有限公司 | 目标检测框架的优化方法及装置、存储介质、电子设备 |
CN112633355A (zh) * | 2020-12-18 | 2021-04-09 | 北京迈格威科技有限公司 | 图像数据处理方法及装置、目标检测模型训练方法及装置 |
CN113034500A (zh) * | 2021-05-25 | 2021-06-25 | 紫东信息科技(苏州)有限公司 | 基于多通道结构的消化道内窥镜图片病灶识别系统 |
Non-Patent Citations (1)
Title |
---|
XIZHOU ZHU等: "DEFORMABLE DETR: DEFORMABLE TRANSFORMERS FOR END-TO-END OBJECT DETECTION", ARXIV, pages 1 - 16 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024044947A1 (zh) * | 2022-08-30 | 2024-03-07 | 宁德时代新能源科技股份有限公司 | 缺陷检测的方法、装置和计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110738090B (zh) | 使用神经网络进行端到端手写文本识别的系统和方法 | |
WO2020221200A1 (zh) | 神经网络的构建方法、图像处理方法及装置 | |
EP3923233A1 (en) | Image denoising method and apparatus | |
CN111353076A (zh) | 训练跨模态检索模型的方法、跨模态检索的方法和相关装置 | |
EP4163831A1 (en) | Neural network distillation method and device | |
CN113807399B (zh) | 一种神经网络训练方法、检测方法以及装置 | |
CN111695673B (zh) | 训练神经网络预测器的方法、图像处理方法及装置 | |
CN112183491A (zh) | 表情识别模型及训练方法、识别方法、装置和计算设备 | |
CN114266897A (zh) | 痘痘类别的预测方法、装置、电子设备及存储介质 | |
CN113128527B (zh) | 基于变换器模型和卷积神经网络的图像场景分类方法 | |
CN112699215B (zh) | 基于胶囊网络与交互注意力机制的评级预测方法及系统 | |
CN114418030A (zh) | 图像分类方法、图像分类模型的训练方法及装置 | |
CN111046771A (zh) | 用于恢复书写轨迹的网络模型的训练方法 | |
CN115170746B (zh) | 一种基于深度学习的多视图三维重建方法、系统及设备 | |
CN114581502A (zh) | 基于单目图像的三维人体模型联合重建方法、电子设备及存储介质 | |
CN112001399A (zh) | 基于局部特征显著化的图像场景分类方法和装置 | |
CN113435594A (zh) | 安防检测模型训练方法、装置、设备及存储介质 | |
CN117576783A (zh) | 基于手部关键点与双层双向lstm网络的动态手势识别方法 | |
CN110807463B (zh) | 图像分割方法、装置、计算机设备和存储介质 | |
CN116486422A (zh) | 数据处理的方法和相关设备 | |
CN113591840A (zh) | 一种目标检测方法、装置、设备和存储介质 | |
CN116519106B (zh) | 一种用于测定生猪体重的方法、装置、存储介质和设备 | |
CN113159053A (zh) | 图像识别方法、装置及计算设备 | |
CN113313127B (zh) | 文本图像识别方法、装置、计算机设备和存储介质 | |
CN114913339A (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 |