一种目标检测方法与流程

未命名 10-18 阅读:168 评论:0

k次重复后的特征图为featurek_2, featurek_1, featurek;k为大于等于5的正整数;(1.7)采用fpn模块将深层特征和浅层特征进行特征融合;(1.8)采用目标解析模块对步骤(1.7)融合后的特征图进行目标解析并获得所需的目标信息。
5.更进一步地,步骤(1.3)具体为:确定图像的感兴趣区域,对于感兴趣的区域采用第二特征提取模块进行特征提取,对于其他非感兴趣区域采用第一特征提取模块进行特征提取。
6.其中,第一特征提取模块和第二特征提取模块的最后一层卷积的输出通道数相同。
7.其中,每个小矩形区域使用的卷积核是独立的。
8.更进一步地,步骤(1.7)具体为:将特征图featurek上采样两倍并与特征图featurek_1进行特征融合后获得特征图featurem; 再将特征图featurem上采样两倍并与特征图featurek_2进行特征融合后获得特征图features。
9.更进一步地,,对特征图featurek, 特征图featurem和特征图 features使用类似yolov5中的目标解析模块进行目标解析。
10.更进一步地,步骤(2)具体包括:(2.1)每个训练批次随机设置图像的感兴趣区域, 以此确定该训练批次各小矩形区域使用的特征提取模块,即对于图像中感兴趣的小矩形区域, 使用第二特征提取模块进行特征提取, 对于非感兴趣区域, 使用第一特征提取模块进行特征提取;(2.2)将训练数据逐批次送入步骤(2.1)确定的神经网络进行前向传播;(2.3)用类似yolov5的损失函数将神经网络预测值和标签计算损失;(2.4)计算神经网络的梯度并将其反向传播;(2.5)利用梯度对神经网络的参数进行更新。更进一步地,步骤(3)具体包括:(3.1)对于视频序列的第一帧, 将每个小矩形区域都设置为感兴趣区域; 对于后续帧, 根据上一帧的检测结果确定当前帧的感兴趣区域;(3.2)根据所述确定的当前帧感兴趣区域定义当前帧推理所需的神经网络模型,即对于图像中感兴趣的小矩形区域, 使用第二特征提取模块进行特征提取, 对于非感兴趣区域, 使用第一特征提取模块进行特征提取;(3.3)将待检测图像输入到步骤(3.2)确定的神经网络模型进行预测,得到目标的概率,类别,检测框,车头框,车尾框,车灯框和车牌框信息。
11.其中,步骤(3.1)中根据上一帧的检测结果确定当前帧的感兴趣区域具体为:上一帧图像经过神经网络前向传播后,经目标解析模块能得到目标检测框以及该检测框的概率;将上一帧的检测框用于当前帧以确定感兴趣区域;对于当前帧划分的m
×
n个小矩形区域,若上一帧中该小矩形区域内有概率大于一定阈值的目标,则设置该小矩形区域为感兴趣区域, 否则为非感兴趣区域。通过本发明所构思的以上技术方案,与现有技术相比,本发明具体如下技术效果:(1) 现有的基于cnn的目标检测方案,对于整张输入特征图的所有区域,特征提取层的大小都是相同的,这样需要很大的计算量,而实际上图像的不同区域所需的特征提取
层的大小是不同的,所以这样存在较大的计算冗余。而本发明中将输入特征图划分为m
×
n个小矩形,对于每个小矩形动态选择不同大小的特征提取模块,这样可以大大减少模型的计算量,同样达到较高的检测精度。
12.(2) 现有的基于cnn的目标检测方案,对于整张输入特征图的所有区域,使用的是相同的卷积核。 而本发明中每个小矩形区域使用的卷积核是独立的,这样提高了各区域卷积核的针对性,有助于提高模型的精度,又没有增加模型的计算量。
13.(3)本发明中,m
×
n个小矩形拼接在一起后的特征图分别送入两个分支。 其中一个分支用特征交互模块进行交互,交互过后的特征趋于包含全局的特征,另一个分支做恒等映射,保留每个区域的局部特征。 然后将两个分支的结果进行相加操作,这样相加后的特征图既有每个区域的局部特征又有全局特征,两者进行融合,能够提高模型的精度。
附图说明
14.图1为本发明提供的目标检测方法的流程示意图;图2中(a)为本发明实施例提供的目标检测方法的具体实现流程图,(b)为本发明实施例提供的目标检测方法的训练流程图,(c)本发明实施例提供的目标检测方法的预测流程图;图3 为本发明实施例提供的神经网络结构示意图;图4 中(a)为本发明实施例提供的第一特征提取模块的结构示意图,(b)为本发明实施例提供的第二特征提取模块的结构示意图,(c)为本发明实施例提供的特征交互模块的结构示意图。
具体实施方式
15.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
16.本发明提供了一种目标检测方法,利用安装在车上的单目摄像头对车辆前方的目标进行识别,具体来讲需要在图像上框出目标所在的位置,识别出目标的类型,框出车辆目标的车头或车尾,车牌,以及识别转向灯状态等,以支撑后续的功能应用,如目标测距,目标轨迹预测,本车路径规划等任务;从而实现了在有限的算力情况下,达到较高的检测精度,降低成本,降低功耗。
17.本发明提供的目标检测方法如图1所示,具体包括如下步骤:(1)将输入特征图划分为m
×
n个小矩形,并通过判断该小矩形区域是否属于感兴趣区域来选择相应的特征提取模块,从而定义神经网络模型;其中,m、n均为大于等于2的正整数;(2)对神经网络模型进行训练;(3)将摄像头采集的连续视频序列逐帧送入步骤(2)训练好的神经网络模型进行预测并获得所需目标信息。
18.本发明实施例中,神经网络模型包括输入模块、特征图划分模块、特征提取模块、特征图拼接模块、 特征交互模块、特征融合层、降采样层、 fpn模块和目标解析模块;其中
步骤(1)具体为:(1.1)输入模块对待检测的图像进行归一化操作并获得归一化后的输入特征图;(1.2)特征图划分模块将所述输入特征图划分为m
×
n个小矩形并获得m
×
n个小矩形区域;(1.3)特征提取模块对于每个所述小矩形区域进行特征提取并获得m
×
n个小矩形特征图;(1.4)特征图拼接模块将所述m
×
n个小矩形特征图拼接为第一特征图;特征交互模块将所述第一特征图进行特征交互获得包含全局特征的第二特征图;特征融合层将所述第一特征图和所述第二特征图进行融合处理,获得既包含有每个区域的局部特征又包含有全局特征的第三特征图;(1.5)降采样层对所述第三特征图进行降采样操作;(1.6)重复步骤(1.2)至(1.5)k次后获得更深层次的特征图,依次记第k-2, k-1, k次重复后的特征图为featurek_2, featurek_1, featurek;k为大于等于5的正整数;(1.7)采用fpn模块将深层特征和浅层特征进行特征融合;(1.8)采用目标解析模块对步骤(1.7)融合后的特征图进行目标解析并获得所需的目标信息。
19.具体地,设置2种不同计算量的特征提取模块, 如图4中, 图4中(a)为第一特征提取模块, 图4中(b)为第二特征提取模块。两种特征提取模块的最后一层卷积的输出通道数要相同,以将所有提取后的小矩形特征图拼接为全局特征图。第二特征提取模块效果较好,但是计算量大,第一特征提取模块计算量小,但是效果稍差。
20.其中,步骤(1.3)具体为:确定图像的感兴趣区域,对于感兴趣的区域采用第二特征提取模块进行特征提取; 对于其他非感兴趣区域, 采用第一特征提取模块进行特征提取。
21.作为本发明的一个实施例,两种特征提取模块均由conv3*3,conv1*1,element-wise add组成,具体结构参考图4中的(a)和(b)所示的特征提取模块。 在通道方面,第二特征提取模块除了最后一层卷积的输出通道数和第一特征提取模块相应的通道数相同外,其他卷积层的输出通道数为第一特征提取模块相应卷积层输出通道数的2~3倍;通道数不同意味着两种特征提取模块的计算量不同,通道数越大计算量越大,同时通道数越多特征提取效果越好,可以根据情况动态选择使用大计算量的还是小计算量的特征提取模块,提高算力的利用率,大大减少算力浪费。之所以将第二特征提取模块的最后一层卷积的输出通道数和第一特征提取模块的最后一层卷积的输出通道数设置为相同,其目的是便于将这m
×
n小矩形的特征图拼起来。
22.在本发明实施例中,确定图像的感兴趣区域(这里的区域指划分的小矩形区域),也就是确定m
×
n个小矩形中哪些是感兴趣的小矩形,然后对每个小矩形区域使用相应的特征提取模块进行特征提取;对于感兴趣的区域,用第二特征提取模块进行特征提取,对于其他非感兴趣区域,用第一特征提取模块进行特征提取。 这样让网络的特征提取更加具有针对性,减少计算冗余。同时提高了模型的检测精度。
23.另外,每个小矩形区域使用的卷积核是独立的,这样提高了各区域卷积核的针对性,有助于提高模型的精度,又没有增加模型的计算量。
24.本发明实施例中将第一特征图和第二特征图进行相加操作获得融合后的第三特征图;其中,将提取的m
×
n个小矩形特征图进行拼接,组成一张完整的特征图,拼接后的完整特征图和原始图像在空间上保留了较强的对应关系,有利于提升检测精度。
25.本发明实施例中,将m
×
n个小矩形拼接在一起后的特征图分别送入两个分支。 其中一个分支用特征交互模块进行交互,交互过后的特征趋于包含全局的特征,另一个分支做恒等映射,保留每个区域的局部特征。然后将两个分支的结果进行相加操作,这样相加后的特征图既有每个区域的局部特征又有全局特征,两者进行融合,能够提高模型的精度。
26.作为本发明的一个实施例,特征交互模块可以由conv3*3,conv1*1,element-wise add组成,具体结构参考图4(c)所示的特征交互模块。
27.本发明实施例中,对上一步特征图进行降采样操作,其目的在于减少神经网络的计算量。
28.本发明实施例中,重复步骤(1.2)至(1.5)k次后获得更深层次的特征图,k为大于等于5的正整数, 优选为6;记重复第k-2, k-1, k次后的特征图为featurek_2, featurek_1, featurek。 之所以重复k次,其目的在于增加特征图的感受野,以及提取更高层次的特征, 同时减少计算量。
29.本发明实施例中,使用fpn模块将深层特征和浅层特征进行特征融合。具体为将特征图featurek上采样两倍, 和特征图featurek_1进行特征融合, 得到特征图featurem。 再将特征图featurem上采样两倍, 和特征图featurek_2进行特征融合, 得到特征图features。 这样将深层特征和浅层特征进行融合,能提高模型的检测精度。
30.具体的特征融合为将两张特征图进行逐点相加, 再使用卷积conv3*3, 卷积conv1*1进行卷积操作。对特征图featurek, 特征图featurem, 特征图features使用类似yolov5中的目标解析模块进行目标解析。由于对特征图featurek, 特征图featurem, 特征图features进行目标解析过程相同, 在此以对特征图featurek进行目标解析为例。由于不同目标的属性, 如车头框, 车尾框, 车牌框等属性的解析过程相同, 在此以解析目标的目标框, 概率, 类别, 车牌框为例。假定需要检测5种类型的目标, 分别为小车, 公交车, 货车, 三轮车, 行人。
31.特征图featurek的形状为(c, h, w), 其中。该形状表示featurek为3维的特征图, 由c张2维的特征图组成, 该c张二维特征图可以分为anchor_n组, 每组15张。anchor_n为锚框的数目, 一般取为3。
32.以对第一组二维特征图进行目标解析为例, 记第一组的二维特征图分别为f2d_1~f2d_15。
33.使用如下解析公式对相应二维的特征图进行目标解析,使用如下解析公式对相应二维的特征图进行目标解析,使用如下解析公式对相应二维的特征图进行目标解析,使用如下解析公式对相应二维的特征图进行目标解析,使用如下解析公式对相应二维的特征图进行目标解析,
其中表示图像中坐标(i, j)处存在目标的概率;表示图像中坐标(i, j)处的目标属于第一类的概率;表示图像中坐标(i, j)处的目标属于第二类的概率;表示图像中坐标(i, j)处的目标属于第三类的概率;表示图像中坐标(i, j)处的目标属于第四类的概率;表示图像中坐标(i, j)处的目标属于第五类的概率;表示图像中坐标(i, j)处的目标的中心的横坐标;表示图像中坐标(i, j)处的目标的中心的纵坐标;表示图像中坐标(i, j)处的目标的宽度;表示图像中坐标(i, j)处的目标的高度;表示图像中坐标(i, j)处的目标存在车牌的概率;表示图像中坐标(i, j)处的目标的车牌中心的横坐标;表示图像中坐标(i, j)处的目标的车牌中心的纵坐标;表示图像中坐标(i, j)处的目标的车牌的宽度;表示图像中坐标(i, j)处的目标的车牌的高度;为目标框使用的锚框的宽和高;为车牌框使用的锚框的宽和高。
34.使用解析公式对特征图featurek进行初步目标解析后会得到大量的目标检测框, 其中可能会存在同一目标有多个目标框, 或者把背景错检为目标的情况。所以需要用概率阈值对其进行过滤, 即概率大于设定阈值的框保留下来, 删除概率小于阈值的框;并使用nms对保留下来的目标框进行非极大值抑制。
35.在本发明实施例中,步骤(2)训练神经网络模型具体包括:
(2.1) 每个训练批次随机设置图像的感兴趣区域, 以此确定该训练批次各小矩形区域使用的特征提取模块, 即对于图像中感兴趣的小矩形区域, 使用第二特征提取模块进行特征提取, 对于非感兴趣区域, 使用第一特征提取模块进行特征提取。
36.模型训练时,对于划分的每个小的矩形区域,随机设置是否为感兴趣区域,即随机选择使用第一特征提取模块或者第二特征提取模块进行特征提取。 例如,对于划分的每个小的矩形区域, 设置50%的概率用第一特征提取模块进行特征提取,50%的概率用第二特征提取模块进行特征提取。每个训练批次确定一次感兴趣区域,这样能够让所有的特征提取层都能够被训练。
37.(2.2)将训练数据逐批次送入步骤(2.1)确定的神经网络进行前向传播。
38.(2.3)将神经网络预测值和标签计算损失,用类似yolov5的损失函数即可。
39.(2.4)计算神经网络的梯度并将其反向传播。
40.(2.5)利用梯度对神经网络的参数进行更新。在本发明实施例中,步骤(3)将摄像头采集的连续视频序列逐帧送入步骤(2)训练好的神经网络模型进行推理预测, 获得所需的目标信息具体包括:(3.1)对于视频序列的第一帧, 将每个小矩形区域都设置为感兴趣区域; 对于后续帧, 根据上一帧的检测结果确定当前帧的感兴趣区域;预测时是将摄像头采集的连续视频序列逐帧送入训练好的神经网络模型进行预测,由于视频的帧率较高,连续两帧的图像差异较小,所以预测时可根据上一帧的检测结果确定当前帧的感兴趣区域。对当前帧确定感兴趣区域方法具体为:上一帧图像经过神经网络前向传播后,经目标解析模块能得到目标检测框以及该检测框的概率。将上一帧的检测框用于当前帧以确定感兴趣区域。对于当前帧划分的m
×
n个小矩形区域,若上一帧中该小矩形区域内有概率大于一定阈值的目标,则设置该小矩形区域为感兴趣区域, 否则为非感兴趣区域。为了避免遗漏感兴趣区域,该阈值设置较小,如0. 3,同时该概率是该处是否有目标的概率,不是属于某类的概率。(3.2) 根据确定的当前帧感兴趣区域定义当前帧推理所需的神经网络,即对于图像中感兴趣的小矩形区域, 使用第二特征提取模块进行特征提取; 对于非感兴趣区域, 使用第一特征提取模块进行特征提取。
41.(3.3)将待检测图像输入到步骤(3.2)确定的神经网络模型进行预测,得到目标的概率,类别,检测框,车头框,车尾框,车灯框,车牌框等信息。
42.本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种目标检测方法,其特征在于,包括下述步骤:(1)将输入特征图划分为m
×
n个小矩形,并通过判断该小矩形区域是否属于感兴趣区域来选择相应的特征提取模块,从而定义神经网络模型;其中,m、n均为大于等于2的正整数;(2)对所述神经网络模型进行训练;(3)将摄像头采集的连续视频序列逐帧送入步骤(2)训练好的神经网络模型进行预测并获得所需目标信息。2.如权利要求1所述的目标检测方法,其特征在于,所述神经网络模型包括输入模块、特征图划分模块、特征提取模块、特征图拼接模块、 特征交互模块、特征融合层、降采样层、 fpn模块和目标解析模块;其中步骤(1)具体为:(1.1)输入模块对待检测的图像进行归一化操作并获得归一化后的输入特征图;(1.2)特征图划分模块将所述输入特征图划分为m
×
n个小矩形并获得m
×
n个小矩形区域;(1.3)特征提取模块对于每个所述小矩形区域进行特征提取并获得m
×
n个小矩形特征图;(1.4)特征图拼接模块将所述m
×
n个小矩形特征图拼接为第一特征图;特征交互模块将所述第一特征图进行特征交互获得包含全局特征的第二特征图;特征融合层将所述第一特征图和所述第二特征图进行融合处理,获得既包含有每个区域的局部特征又包含有全局特征的第三特征图;(1.5)降采样层对所述第三特征图进行降采样操作;(1.6)重复步骤(1.2)至(1.5)k次后获得更深层次的特征图,依次记第k-2, k-1, k次重复后的特征图为featurek_2, featurek_1, featurek;k为大于等于5的正整数;(1.7)采用fpn模块将深层特征和浅层特征进行特征融合;(1.8)采用目标解析模块对步骤(1.7)融合后的特征图进行目标解析并获得所需的目标信息。3.如权利要求2所述的目标检测方法,其特征在于,步骤(1.3)具体为:确定图像的感兴趣区域,对于感兴趣的区域采用第二特征提取模块进行特征提取,对于其他非感兴趣区域采用第一特征提取模块进行特征提取。4.如权利要求3所述的目标检测方法,其特征在于,第一特征提取模块和第二特征提取模块的最后一层卷积的输出通道数相同。5.如权利要求3所述的目标检测方法,其特征在于,每个小矩形区域使用的卷积核是独立的。6.如权利要求2所述的目标检测方法,其特征在于,步骤(1.7)具体为:将特征图featurek上采样两倍并与特征图featurek_1进行特征融合后获得特征图featurem; 再将特征图featurem上采样两倍并与特征图featurek_2进行特征融合后获得特征图features。7.如权利要求6所述的目标检测方法,其特征在于,对特征图featurek, 特征图featurem和特征图 features使用类似yolov5中的目标解析模块进行目标解析。8.如权利要求1-7任一项所述的目标检测方法,其特征在于,步骤(2)具体包括:(2.1)每个训练批次随机设置图像的感兴趣区域, 以此确定该训练批次各小矩形区域
使用的特征提取模块,即对于图像中感兴趣的小矩形区域, 使用第二特征提取模块进行特征提取, 对于非感兴趣区域, 使用第一特征提取模块进行特征提取;(2.2)将训练数据逐批次送入步骤(2.1)确定的神经网络进行前向传播;(2.3)用类似yolov5的损失函数将神经网络预测值和标签计算损失;(2.4)计算神经网络的梯度并将其反向传播;(2.5)利用梯度对神经网络的参数进行更新。9.如权利要求1-7任一项所述的目标检测方法,其特征在于,步骤(3)具体包括:(3.1)对于视频序列的第一帧, 将每个小矩形区域都设置为感兴趣区域; 对于后续帧, 根据上一帧的检测结果确定当前帧的感兴趣区域;(3.2)根据所述确定的当前帧感兴趣区域定义当前帧推理所需的神经网络模型,即对于图像中感兴趣的小矩形区域, 使用第二特征提取模块进行特征提取, 对于非感兴趣区域, 使用第一特征提取模块进行特征提取;(3.3)将待检测图像输入到步骤(3.2)确定的神经网络模型进行预测,得到目标的概率,类别,检测框,车头框,车尾框,车灯框和车牌框信息。10.如权利要求9所述的目标检测方法,其特征在于,步骤(3.1)中所述根据上一帧的检测结果确定当前帧的感兴趣区域具体为:上一帧图像经过神经网络前向传播后,经目标解析模块能得到目标检测框以及该检测框的概率;将上一帧的检测框用于当前帧以确定感兴趣区域;对于当前帧划分的m
×
n个小矩形区域,若上一帧中该小矩形区域内有概率大于一定阈值的目标,则设置该小矩形区域为感兴趣区域, 否则为非感兴趣区域。

技术总结
本发明公开了一种目标检测方法,包括下述步骤:(1)将输入特征图划分为M


技术研发人员:蒋海滨 李再兴 孙浩
受保护的技术使用者:深圳安智杰科技有限公司
技术研发日:2023.07.18
技术公布日:2023/10/11
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐