三维物体检测方法、装置、设备及存储介质
文献发布时间:2023-06-19 11:02:01
技术领域
本申请涉及图像处理技术领域,具体涉及计算机视觉技术。
背景技术
物体检测是计算机视觉领域的重要研究方向。目前,物体检测主要包括二维物体检测和三维物体检测。其中,二维物体检测通常是在图像中识别和定位到物体后,紧紧围绕物体圈出一个矩形框来表示物体在图像中所在位置。三维物体检测通过识别和定位三维物体,得到物体的三维信息,紧紧围绕物体圈出一个立方体框来表示物体在真实世界中的位置。三维物体检测在智能机器人、自动驾驶、虚拟现实及增强现实等领域都有着重要的应用价值。
发明内容
本申请实施例提供了一种三维物体检测方法、装置、设备、介质及程序产品,以提高基于单帧图像的三维物体检测精度。
第一方面,本申请实施例提供了一种三维物体检测方法,包括:
获取待检测的单帧彩色图像;
获取所述单帧彩色图像的前景物体特征和物体约束特征;
根据所述前景物体特征和所述物体约束特征对所述单帧彩色图像进行三维物体检测。
第二方面,本申请实施例提供了一种三维物体检测装置,包括:
单帧彩色图像获取模块,用于获取待检测的单帧彩色图像;
特征获取模块,用于获取所述单帧彩色图像的前景物体特征和物体约束特征;
三维物体检测模块,用于根据所述前景物体特征和所述物体约束特征对所述单帧彩色图像进行三维物体检测。
第三方面,本申请实施例提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面实施例所提供的三维物体检测方法。
第四方面,本申请实施例还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行第一方面实施例所提供的三维物体检测方法。
第五方面,本申请实施例还提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现第一方面实施例所提供的三维物体检测方法。
本申请实施例通过获取待检测的单帧彩色图像的前景物体特征和物体约束特征,以根据前景物体特征和物体约束特征对单帧彩色图像进行三维物体检测,解决现有基于单帧图像进行三维物体检测存在的检测精度较低的问题,从而提高基于单帧图像的三维物体检测精度。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是本申请实施例提供的一种三维物体检测方法的流程图;
图2是本申请实施例提供的一种三维物体检测方法的流程图;
图3是本申请实施例提供的一种三维物体检测方法的流程示意图图;
图4是本申请实施例提供的一种利用物体级别transformer网络获取物体约束特征的流程示意图;
图5是本申请实施例提供的一种物体级别transformer网络的结构示意图;
图6是本申请实施例提供的一种三维物体检测装置的结构图;
图7是用来实现本申请实施例的三维物体检测方法的电子设备的结构示意图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
基于单帧图像的三维物体检测方法是三维物体检测中的一种主要技术,可以仅以单帧图像实现物体的三维标定。目前,大部分基于单帧图像的三维物体检测方法都是以单帧图像的图像特征为基础,根据稀疏的特定像素点,得到多个可能存在物体的位置或区域,也称为物体proposal结构。还有部分三维物体检测方法对图像中的每个像素点进行检测,以判断是否存在物体的中心点,并在确定存在物体中心点的情况下,根据中心点估计三维包围框的信息。
上述三维物体检测方法都存在明显的缺陷,即仅仅将物体检测作为一个regress(多元线性回归)问题,所有物体的检测都是相互独立的。可以理解的是,在实际的三维世界中物体与物体之间存在很强的约束关系,例如,车辆必须位于地平线之上,且与地平线相接。现有的三维物体检测方没有考虑物体之间的约束关系,导致降低了三维物体的检测精度。
在一个示例中,图1是本申请实施例提供的一种三维物体检测方法的流程图,本实施例可适用于根据单帧彩色图像的前景物体特征和物体约束特征进行三维物体检测的情况,该方法可以由三维物体检测装置来执行,该装置可以由软件和/或硬件的方式来实现,并一般可集成在电子设备中。该电子可以是服务器设备或计算机设备等。相应的,如图1所示,该方法包括如下操作:
S110、获取待检测的单帧彩色图像。
其中,单帧彩色图像也即单张RGB(Red-Green-Blue,三原色)图像。在本申请实施例中,可以获取待检测的单帧彩色图像,并以该单帧彩色图像为基准,对图像中包括的物体进行三维物体检测。基于单帧图像的三维物体检测也即利用三维标识框,对图像中的各个物体进行标识。例如,利用三维立体框对图像中的汽车等物体进行标识,以表示物体在真实世界中的位置。
S120、获取所述单帧彩色图像的前景物体特征和物体约束特征。
其中,前景物体特征可以是从单帧彩色图像提取的物体的图像特征,如物体的颜色特征、纹理特征或形状特征等。物体约束特征可以是根据单帧彩色图像估计的,包括物体与物体之间约束关系的特征,如车辆1与车辆2需要保持一定间距,车道线之间具有一定宽度等。
相应的,在获取到待检测的单帧彩色图像之后,可以进一步获取该单帧彩色图像的前景物体特征和物体约束特征。其中,前景物体特征可以表征单帧彩色图像中各独立物体的多特征维度的图像特征,而物体约束特征可以表征单帧彩色图像中各物体之间的约束关系特征。也即,前景物体特征和物体约束特征均属于单帧彩色图像中物体的特征,但特征类型不同,侧重的特征属性也不同。
S130、根据所述前景物体特征和所述物体约束特征对所述单帧彩色图像进行三维物体检测。
进一步的,可以根据单帧彩色图像的前景物体特征和物体约束特征对单帧彩色图像中包括的物体进行三维物体检测。由于前景物体特征中可以包含单帧彩色图像的各独立物体的特征,而物体约束特征可以包含图像中各物体之间的约束关系特征。因此,根据单帧彩色图像的前景物体特征和物体约束特征对单帧彩色图像中包括的物体进行三维物体检测,可以有效利用单帧彩色图像中各物体之间的约束关系,实现了对单帧彩色图像特征信息的全面挖掘和利用,从而提高单帧彩色图像中三维物体的检测精度。
本申请实施例通过获取待检测的单帧彩色图像的前景物体特征和物体约束特征,以根据前景物体特征和物体约束特征对单帧彩色图像进行三维物体检测,解决现有基于单帧图像进行三维物体检测存在的检测精度较低的问题,从而提高基于单帧图像的三维物体检测精度。
在一个示例中,图2是本申请实施例提供的一种三维物体检测方法的流程图,图3是本申请实施例提供的一种三维物体检测方法的流程示意图图,本申请实施例在上述各实施例的技术方案的基础上,进行了优化改进,给出了获取所述单帧彩色图像的前景物体特征和物体约束特征,以及根据所述前景物体特征和所述物体约束特征对所述单帧彩色图像进行三维物体检测的多种具体可选的实现方式。
如图2和图3所示的一种三维物体检测方法,包括:
S210、获取待检测的单帧彩色图像。
S220、将所述单帧彩色图像输入至深度特征估计网络,获取所述深度特征估计网络的第一输出数据,作为所述单帧彩色图像的深度图像特征。
其中,深度特征估计网络可以提取单帧彩色图像的深度图像特征。第一输出数据可以是深度特征估计网络的输出数据。深度图像特征可以是从单帧彩色图像提取的具有高特征维度的图像特征,如颜色特征、纹理特征或形状特征等。
可选的,可以将单帧彩色图像输入至深度特征估计网络,以根据深度特征估计网络提取单帧彩色图像的深度图像特征(也即图3中的骨干特征图)。其中,深度特征估计网络可以是深度神经网络、残差网络、(Visual Geometry Group,一种卷积神经网络)VGG网络以及DLA(Deep Layer Aggregation,深层聚合)34网络等,只要能够提取单帧彩色图像的深度图像特征即可,本申请实施例并不对深度特征估计网络的具体网络类型进行限定。
单帧彩色图像对深度特征估计网络的输入为W*H*3,其中,W表示单帧彩色图像的宽度像素,H表示单帧彩色图像的高度像素,也即W*H代表单帧彩色图像的宽度和高度信息,而3则表示RGB维度。单帧彩色图像输入至深度特征估计网络得到的第一输出数据为w*h*c,也即深度图像特征的大小为w*h*c。其中,c表示特征维度。可以理解的是,c的取值越大,表明特征维度越高。通常情况下,c的取值可以为32或64等。需要说明的是,由于受到计算资源或计算设备的性能等限制,通常w要小于W,且h要小于H。
上述技术方案,通过利用深度特征估计网络提取单帧彩色图像的深度图像特征,可以获取到更高特征维度的深度图像特征。
S230、将所述深度图像特征输入至两层全连接神经网络,获取所述两层全连接神经网络的第二输出数据,作为热力分布特征。
其中,第二输出数据可以是两层全连接神经网络的输出数据。热力分布特征可以是图像中各像素点热力值的分布图,也可称为热力图。
在本申请实施例中,当获取到单帧彩色图像的深度图像特征之后,可以进一步将获取到的深度图像特征输入至两层全连接神经网络,以得到单帧彩色图像对应的物体兴趣区域的热力分布特征(也即图3中的物体中心点热力图)。热力分布特征可以包括每个像素点对应的具体的热力值。
S240、根据所述深度图像特征和所述热力分布特征获取所述前景物体特征。
相应的,在得到单帧彩色图像对应的热力分布特征之后,即可根据深度图像特征和热力分布特征获取前景物体特征。首先,以热力分布特征为基础确定各物体的中心点。可以预先设定一个中心点热力阈值,以对热力分布特征中各像素点的热力值进行对比。当单帧彩色图像中的像素点的热力值超过中心点热力阈值时,则可以确定该像素点为一个待确认的物体中心点。其中,中心点热力阈值可以根据实际需求设定,本申请实施例并不对中心点热力阈值的具体数值进行限定。为了保证物体中心点的准确性,在获取所有待确认的物体中心点之后,可以对各待确认的物体中心点按照热力值从大到小的顺序排序,并根据排序顺序获热力值排名靠前的一定数量的待确认的物体中心点作为真正的物体中心点。示例性的,可以取热力值排名前50的待确认的物体中心点作为真正的物体中心点。得到估计的物体中心点之后,即可利用物体中心点结合深度图像特征进一步获取前景物体特征(也即图3中的物体特征)。
上述方案中,通过利用热力分布特征可以快速确定物体中心点,从而提高物体定位效率。同时,根据物体中心点的相关信息可以快速从深度图像提取特征作为前景物体特征。
在本申请的一个可选实施例中,所述根据所述深度图像特征和所述热力分布特征获取所述前景物体特征,可以包括:根据所述热力分布特征确定前景物体对象;获取所述前景物体对象的坐标位置数据;根据所述坐标位置数据从所述深度图像特征中提取目标深度图像特征,作为目标前景物体特征;根据所述目标前景物体特征构建所述前景物体特征。
其中,前景物体对象也即单帧彩色图像中包括的物体。示例性的,前景物体对象可以是单帧彩色图像中包括的车辆、行人、建筑或其他物体等,本申请实施例并不对前景物体对象的具体物体类型进行限定。目标深度图像特征可以是每个前景物体对象在深度图像特征中的局部图像特征。目标前景物体特征可以是每个前景物体对应的前景物体特征。
在本申请实施例中,在利用热力分布特征获取到各物体中心点之后,可以将物体中心点在单帧彩色图像中的对应区域确定为前景物体对象。为了获取到前景物体对象对应的前景物体特征,可以将各物体中心点对应的坐标位置数据作为前景物体对象的坐标位置数据,以根据确定的坐标位置数据从深度图像特征中提取目标深度图像特征,作为各前景物体对象的目标前景物体特征。
可以理解的是,深度图像特征和热力分布特征中的各个像素点是一一对应的,也即,深度图像特征和热力分布特征中的像素宽度的值相同,且像素高度的值也相同。示例性的,假设一前景物体对象对应的物体中心点的坐标位置数据为(x,y),则可以从深度图像特征中获取坐标位置数据为(x,y)的像素点对应的目标深度图像特征,作为该前景物体对象的目标前景物体特征。
在得到所有前景物体对象对应的目标前景物体特征之后,可以进一步将各目标前景物体特征组成一个矩阵,得到前景物体特征。假设前景物体对象的数量为50,则前景物体特征的大小为50*c,其中,c为深度图像特征中的特征维度。
上述技术方案,通过利用各前景物体对象的坐标位置数据可以快速确定各前景物体对象在深度图像特征中的目标深度图像特征,进而根据获取的各目标深度图像特征构建得到前景物体特征。
S250、将所述前景物体特征输入至物体级别transformer网络,获取所述物体级别transformer网络的第三输出数据。
S260、将所述第三输出数据输入至两层全连接神经网络,得到第四输出数据,将所述第四输出数据作为所述物体约束特征。
其中,物体级别transformer网络是在现有transformer网络基础上进行改进得到的网络,可以有效获取图像中各物体之间的约束关系。第三输出数据可以是物体级别transformer网络的输出数据。第四输出数据可以是第三输出数据经过两层全连接神经网络学习后得到的输出数据,也即物体约束特征。
现有的transformer网络主要用于自然语言处理,可以很好的学习到单词与单词之间的有效联系。本申请实施例对现有的transformer网络进行改进,得到可以有效学习物体与物体之间约束关系的物体级别transformer网络。图4是本申请实施例提供的一种利用物体级别transformer网络获取物体约束特征的流程示意图,如图4所示,将获取到的前景物体特征输入至物体级别transformer网络,得到物体级别transformer网络的第三输出数据后,将第三输出数据再输入至两层全连接神经网络,即可快速而有效地获取包含物体之间约束关系的物体约束特征(也即图3中的加强后的物体特征)。
在本申请的一个可选实施例中,所述获取所述物体级别transformer网络的第三输出数据,可以包括:将所述前景物体特征输入至所述物体级别transformer网络的物体编码器;获取所述物体编码器的编码输出结果,并将所述编码输出结果输入至所述物体级别transformer网络的物体译码器;获取所述物体译码器的译码输出结果,作为所述第三输出数据。
其中,物体编码器也即物体级别transformer网络的Encoder结构,也可称为Object Encoder,编码输出结果也即物体编码器的输出结果。物体译码器也即物体级别transformer网络的Decoder结构,也可称为Object Decoder,译码输出结果也即物体译码器的输出结果。
可选的,将前景物体特征作为输入数据输入至物体级别transformer网络的物体编码器,并将物体编码器的编码输出结果作为物体译码器的其中一个输入,最终将物体译码器的译码输出结果作为物体级别transformer网络的输出的第三输出数据。
在本申请的一个可选实施例中,所述获取所述物体编码器的编码输出结果,可以包括:根据所述前景物体特征和二维位置信息编码获取第一物体特征向量;将所述第一物体特征向量输入至所述物体编码器的第一多头注意力模块,得到第一注意力模块输出数据;将所述第一注意力模块输出数据与所述第一物体特征向量进行相加处理,得到第一相加处理结果,并对所述第一相加处理结果进行归一化处理,得到第一归一化输出数据;将所述第一归一化输出数据输入至所述物体编码器的前向网络,得到第一前向网络输出数据;将所述第一归一化输出数据和所述第一前向网络输出数据进行相加处理,得到第二相加处理结果,并对所述第二相加处理结果再次进行归一化处理,得到所述编码输出结果。
其中,第一物体特征向量可以是二维位置信息编码根据前景物体特征进行编码得到的向量。第一多头注意力模块可以是物体编码器的一个多头注意力模块。第一注意力模块输出数据可以是第一多头注意力模块输出的数据。第一相加处理结果可以是第一注意力模块输出数据与第一物体特征向量相加处理得到的结果。第一归一化输出数据可以是对第一相加处理结果进行归一化处理得到的结果。第一前向网络输出数据可以是物体编码器中前向网络的输出数据。第二相加处理结果可以是第一归一化输出数据和第一前向网络输出数据相加处理得到的结果。
图5是本申请实施例提供的一种物体级别transformer网络的结构示意图。在一个示例性的例子中,如图5所示,物体级别transformer网络包括物体编码器Object Encoder和物体译码器Object Decoder两部分结构。其中,Object Encoder的输入包括两部分:每一个前景物体特征(图5所示的Feature1...Feature n)和positional encoding(二维位置信息编码)。二维位置信息编码可以根据前景物体特征中的物体中心点的位置编码出来的一个与前景物体特征维度一致的第一物体特征向量。得到第一物体特征向量之后,将第一物体特征向量输入到一个第一多头注意力模块,得到的第一注意力模块输出数据与输入的第一物体特征向量做一个相加处理,得到第一相加处理结果,并对第一相加处理结果进行归一化处理,得到第一归一化输出数据。第一归一化输出数据可以经过一个前向网络,得到第一归一化输出数据,与前向网络输入的第一归一化输出数据相加,得到第二相加处理结果,再对得到第二相加处理结果进行归一化处理,得到编码输出结果。其中,Object Encoder模块可以重复M次,当M取值为4时,Object Encoder模块的效果最优。
由此可见,物体级别transformer网络与现有transformer网络在编码器方面的区别在于,现有transformer网络使用一维的位置信息编码对输入数据(即前景物体特征)进行编码,而物体级别transformer网络使用二维的位置信息编码对输入数据(即前景物体特征)进行编码,以实现与前景物体特征的匹配。
在本申请的一个可选实施例中,所述获取所述物体编码器的编码输出结果,可以包括:根据初始物体向量和二维位置信息编码获取第二物体特征向量;将所述第二物体特征向量输入至所述物体译码器的第二多头注意力模块,得到第二注意力模块输出数据;将所述第二注意力模块输出数据与所述第二物体特征向量进行相加处理,得到第三相加处理结果,并对所述第三相加处理结果进行归一化处理,得到第三归一化输出数据;将所述第三归一化输出数据和所述编码输出结果输入至所述物体译码器的第三多头注意力模块,得到第三注意力模块输出数据;将所述第三注意力模块输出数据与所述第三归一化输出数据进行相加处理,得到第四相加处理结果,并对所述第四相加处理结果进行归一化处理,得到第四归一化输出数据;将所述第四归一化输出数据输入至所述物体译码器的前向网络,得到第二前向网络输出数据;将所述第四归一化输出数据和所述第二前向网络输出数据进行相加处理,得到第五相加处理结果,并对所述第五相加处理结果再次进行归一化处理,得到所述译码输出结果。
其中,初始物体向量可以是零向量(Zero vector),第二物体特征向量可以是二维位置信息编码根据初始物体特征进行编码得到的向量。第二多头注意力模块可以是物体译码器的一个多头注意力模块,相当于现有transformer网络Decoder结构中的maskedmulti-head attention模块。第二注意力模块输出数据可以是第二多头注意力模块输出的数据。第三相加处理结果可以是第二注意力模块输出数据与第二物体特征向量相加处理得到的结果。第三归一化输出数据可以是对第三相加处理结果进行归一化处理得到的结果。第三多头注意力模块可以是物体译码器的另一个多头注意力模块。第三注意力模块输出数据可以是第三多头注意力模块输出的数据。第四相加处理结果可以是第三注意力模块输出数据与第三归一化输出数据相加处理得到的结果。第四归一化输出数据可以是对第四相加处理结果进行归一化处理得到的结果。第二前向网络输出数据可以是物体译码器中前向网络的输出数据。第五相加处理结果可以是第四归一化输出数据和第二前向网络输出数据相加处理得到的结果。
在一个示例性的例子中,如图5所示,Object Decoder的输入包括三部分:初始物体向量、二维位置信息编码和编码输出结果。与Object Encoder类似,Object Decoder的输入也包括一个特征向量,该特征向量为初始物体向量zero vector,并不是前景物体特征。Object Decoder中二维位置信息编码positional encoding与Object Encoder的positional encoding编码方式一致。二维位置信息编码可以根据初始物体特征的位置编码出来的一个与初始物体特征维度一致的第二物体特征向量。其中,第二物体特征向量与第一物体特征向量的特征维度相同。得到第二物体特征向量之后,将第二物体特征向量输入到物体译码器的第二多头注意力模块,得到第二注意力模块输出数据,将第二注意力模块输出数据与第二物体特征向量做一个相加处理,得到第三相加处理结果,并对第三相加处理结果进行归一化处理,可以得到第三归一化输出数据。此时,将第三归一化输出数据与Object Encoder模块的输出即编码输出结果一起在输入至物体译码器的第三多头注意力模块,得到第三注意力模块输出数据,将第三注意力模块输出数据与第三归一化输出数据进行相加处理,得到第四相加处理结果后,对第四相加处理结果进行归一化处理,得到第四归一化输出数据。上述输出的第四归一化输出数据经过一个前向网络,得到第二前向网络输出数据,与前向网络输入的第四归一化输出数据相加处理,得到第五相加处理结果后,再对第五相加处理结果进行归一化操作,得到Object Decoder的输出,即译码输出结果。同样的,Object Decoder也可以重复M次,当M取值为4时,Object Decoder模块的效果最优。最终Object Decoder输出的译码输出结果,在经过两层全连接神经网络之后,得到最终的物体约束特征。
由此可见,物体级别transformer网络与现有transformer网络在译码器方面的区别在于,现有transformer网络使用一维的位置信息编码对上一个输入数据的翻译结果进行编码,这种方式针对一次性输入的多个输入数据,每次只能输出一个学习结果,也即每次只能针对一个输入数据输出一个学习结果。而物体级别transformer网络使用二维的位置信息编码对初始物体向量进行编码,可以实现“同时输入同时输出”的学习效果,也即,针对一次性输入的多个输入数据,可以一次性输出所有输入数据的学习结果。
S270、对所述前景物体特征和所述物体约束特征进行特征融合,得到融合图像特征。
其中,融合图像特征可以是前景物体特征和物体约束特征融合得到的图像特征。
由于前景物体特征和物体约束特征是不同类型的特征,因此,需要将前景物体特征和物体约束特征进行融合,得到同时包括前景物体特征和物体约束特征的融合图像特征。
在本申请的一个可选实施例中,所述对所述前景物体特征和所述物体约束特征进行特征融合,可以包括:确定物体约束特征权重;根据所述物体约束特征权重和所述物体约束特征确定待融合物体约束特征;将所述前景物体特征和所述待融合物体约束特征进行特征相加融合处理,得到所述融合图像特征;或,将所述前景物体特征和所述物体约束特征进行特征拼接融合处理,得到所述融合图像特征。
其中,物体约束特征权重可以是用于确定物体约束特征重要程度的权重参数。待融合物体约束特征可以是利用物体约束特征权重对物体约束特征在融合图像特征中的占比进行调节后得到的物体约束特征。
在本申请实施例中,可以采用两种特征融合方式对前景物体特征和物体约束特征进行融合。第一种特征融合方式为特征相加方式,可选的,可以利用公式F=F1+a*F2实现特征相加融合处理。其中,F表示融合图像特征,F1表示前景物体特征,F2表示物体约束特征,a表示物体约束特征权重。其中,a的取值范围可以根据实际需求设定。示例性的,如果融合图像特征需要侧重前景物体特征,则a的取值范围可以为[0,1]。相应的,a*F2即为根据物体约束特征权重和物体约束特征确定的待融合物体约束特征。第二种特征融合方式为特征拼接方式,可选的,可以利用公式F=[F1,F2]实现特征拼接融合处理。
上述技术方案,通过利用不同的特征融合处理方式对前景物体特征和物体约束特征进行特征融合,丰富了前景物体特征和物体约束特征的特征融合方式,同时可以利用物体约束特征权重实现按需进行特征融合。
S280、将所述融合图像特征输入至两层全连接神经网络,获取所述两层全连接神经网络的输出回归数据。
S290、根据所述输出回归数据对所述单帧彩色图像进行三维物体检测。
其中,输出回归数据也即两层全连接神经网络输出的回归参数。
在本申请实施例中,在得到融合图像特征后,可以进一步将融合图像特征输入至两层全连接神经网络,以获取两层全连接神经网络的输出回归数据,最终根据获取到的输出回归数据对所述单帧彩色图像进行三维物体检测。由于融合图像特征包括了单帧彩色图像中各物体之间的约束关系,实现了对单帧彩色图像特征信息的全面挖掘,因此,对包括物体之间的约束关系的融合特征估计的回归参数的精度也较高。
在本申请的一个可选实施例中,所述输出回归数据包括物体三维尺寸、物体方向角度、物体中心点位置以及物体中心点深度;所述根据所述输出回归数据对所述单帧彩色图像进行三维物体检测,可以包括:根据所述输出回归数据确定所述单帧彩色图像中各物体对应的三维包围框;根据所述三维包围框对各所述物体进行标识。
可选的,两层全连接网络输出的输出回归数据可以包括但不限于物体三维尺寸、物体方向角度、物体中心点位置以及物体中心点深度等信息,根据上述信息可以确定单帧彩色图像中各物体对应的三维包围框。该三维包围框可以是三维立体框,如长方体、正方体或圆柱体等,本申请实施例并不对三维包围框的具体类型进行限定,只要能够采用三维标定的方式对单帧彩色图像中的物体进行标定即可。示例性的,可以根据物体三维尺寸确定长方体的长、宽、高,根据物体方向角度确定各边长之间的角度关系,根据物体中心点位置确定三维包围框的中心点,并根据物体中心点深度确定与深度相关的边长等。
上述技术方案,通过利用物体级别transformer网络获取包括物体之间约束关系的物体约束特征,并在根据深度图像特征获取到的前景物体特征的基础上,融合物体约束特征,得到融合图像特征之后,利用最终的融合图像特征获取用于标识物体的三维包围框的相关数据,可以提高三维包围框的准确率和精度,进而提高基于单帧图像的三维物体检测精度。
在一个示例中,图6是本申请实施例提供的一种三维物体检测装置的结构图,本申请实施例可适用于根据单帧彩色图像的前景物体特征和物体约束特征进行三维物体检测的情况,该装置通过软件和/或硬件实现,并具体配置于电子设备中。该电子可以是服务器设备或计算机设备等。
如图6所示的一种三维物体检测装置300,包括:单帧彩色图像获取模块310、特征获取模块320和三维物体检测模块330。其中,
单帧彩色图像获取模块310,用于获取待检测的单帧彩色图像;
特征获取模块320,用于获取所述单帧彩色图像的前景物体特征和物体约束特征;
三维物体检测模块330,用于根据所述前景物体特征和所述物体约束特征对所述单帧彩色图像进行三维物体检测。
本申请实施例通过获取待检测的单帧彩色图像的前景物体特征和物体约束特征,以根据前景物体特征和物体约束特征对单帧彩色图像进行三维物体检测,解决现有基于单帧图像进行三维物体检测存在的检测精度较低的问题,从而提高基于单帧图像的三维物体检测精度。
可选的,特征获取模块320具体用于:将所述单帧彩色图像输入至深度特征估计网络;获取所述深度特征估计网络的第一输出数据,作为所述单帧彩色图像的深度图像特征;将所述深度图像特征输入至两层全连接神经网络;获取所述两层全连接神经网络的第二输出数据,作为热力分布特征;根据所述深度图像特征和所述热力分布特征获取所述前景物体特征。
可选的,特征获取模块320具体用于:根据所述热力分布特征确定前景物体对象;获取所述前景物体对象的坐标位置数据;根据所述坐标位置数据从所述深度图像特征中提取目标深度图像特征,作为目标前景物体特征;根据所述目标前景物体特征构建所述前景物体特征。
可选的,特征获取模块320具体用于:将所述前景物体特征输入至物体级别transformer网络;获取所述物体级别transformer网络的第三输出数据;将所述第三输出数据输入至两层全连接神经网络,得到第四输出数据;将所述第四输出数据作为所述物体约束特征。
可选的,特征获取模块320具体用于:将所述前景物体特征输入至所述物体级别transformer网络的物体编码器;获取所述物体编码器的编码输出结果,并将所述编码输出结果输入至所述物体级别transformer网络的物体译码器;获取所述物体译码器的译码输出结果,作为所述第三输出数据。
可选的,特征获取模块320具体用于:根据所述前景物体特征和二维位置信息编码获取第一物体特征向量;将所述第一物体特征向量输入至所述物体编码器的第一多头注意力模块,得到第一注意力模块输出数据;将所述第一注意力模块输出数据与所述第一物体特征向量进行相加处理,得到第一相加处理结果,并对所述第一相加处理结果进行归一化处理,得到第一归一化输出数据;将所述第一归一化输出数据输入至所述物体编码器的前向网络,得到第一前向网络输出数据;将所述第一归一化输出数据和所述第一前向网络输出数据进行相加处理,得到第二相加处理结果,并对所述第二相加处理结果再次进行归一化处理,得到所述编码输出结果。
可选的,特征获取模块320具体用于:根据初始物体向量和二维位置信息编码获取第二物体特征向量;将所述第二物体特征向量输入至所述物体译码器的第二多头注意力模块,得到第二注意力模块输出数据;将所述第二注意力模块输出数据与所述第二物体特征向量进行相加处理,得到第三相加处理结果,并对所述第三相加处理结果进行归一化处理,得到第三归一化输出数据;将所述第三归一化输出数据和所述编码输出结果输入至所述物体译码器的第三多头注意力模块,得到第三注意力模块输出数据;将所述第三注意力模块输出数据与所述第三归一化输出数据进行相加处理,得到第四相加处理结果,并对所述第四相加处理结果进行归一化处理,得到第四归一化输出数据;将所述第四归一化输出数据输入至所述物体译码器的前向网络,得到第二前向网络输出数据;将所述第四归一化输出数据和所述第二前向网络输出数据进行相加处理,得到第五相加处理结果,并对所述第五相加处理结果再次进行归一化处理,得到所述译码输出结果。
可选的,三维物体检测模块330具体用于:对所述前景物体特征和所述物体约束特征进行特征融合,得到融合图像特征;将所述融合图像特征输入至两层全连接神经网络;获取所述两层全连接神经网络的输出回归数据;根据所述输出回归数据对所述单帧彩色图像进行三维物体检测。
可选的,三维物体检测模块330具体用于:确定物体约束特征权重;根据所述物体约束特征权重和所述物体约束特征确定待融合物体约束特征;将所述前景物体特征和所述待融合物体约束特征进行特征相加融合处理,得到所述融合图像特征;或,将所述前景物体特征和所述物体约束特征进行特征拼接融合处理,得到所述融合图像特征。
可选的,所述输出回归数据包括物体三维尺寸、物体方向角度、物体中心点位置以及物体中心点深度;三维物体检测模块330具体用于:根据所述输出回归数据确定所述单帧彩色图像中各物体对应的三维包围框;根据所述三维包围框对各所述物体进行标识。
上述三维物体检测装置可执行本申请任意实施例所提供的三维物体检测方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请任意实施例提供的三维物体检测方法。
由于上述所介绍的三维物体检测装置为可以执行本申请实施例中的三维物体检测方法的装置,故而基于本申请实施例中所介绍的三维物体检测方法,本领域所属技术人员能够了解本实施例的三维物体检测装置的具体实施方式以及其各种变化形式,所以在此对于该三维物体检测装置如何实现本申请实施例中的三维物体检测方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中三维物体检测方法所采用的装置,都属于本申请所欲保护的范围。
在一个示例中,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图7示出了可以用来实施本公开的实施例的示例电子设备400的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图7所示,设备400包括计算单元401,其可以根据存储在只读存储器(ROM)402中的计算机程序或者从存储单元408加载到随机访问存储器(RAM)403中的计算机程序,来执行各种适当的动作和处理。在RAM 403中,还可存储设备400操作所需的各种程序和数据。计算单元401、ROM 402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
设备400中的多个部件连接至I/O接口405,包括:输入单元406,例如键盘、鼠标等;输出单元407,例如各种类型的显示器、扬声器等;存储单元408,例如磁盘、光盘等;以及通信单元409,例如网卡、调制解调器、无线通信收发机等。通信单元409允许设备400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元401可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元401的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元401执行上文所描述的各个方法和处理,例如三维物体检测方法。例如,在一些实施例中,三维物体检测方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元408。在一些实施例中,计算机程序的部分或者全部可以经由ROM 402和/或通信单元409而被载入和/或安装到设备400上。当计算机程序加载到RAM 403并由计算单元401执行时,可以执行上文描述的三维物体检测方法的一个或多个步骤。备选地,在其他实施例中,计算单元401可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行三维物体检测方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
本申请实施例通过获取待检测的单帧彩色图像的前景物体特征和物体约束特征,以根据前景物体特征和物体约束特征对单帧彩色图像进行三维物体检测,解决现有基于单帧图像进行三维物体检测存在的检测精度较低的问题,从而提高基于单帧图像的三维物体检测精度。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
- 三维物体检测方法、装置、电子设备和可读存储介质
- 三维物体检测方法、装置、设备及存储介质