物体识别方法及装置、存储介质与流程

专利2022-06-29  89


本申请涉及计算机视觉技术领域,具体涉及一种物体识别方法及装置、存储介质。



背景技术:

目前的物体识别方法大多关注在单一类别的物体识别上,对于多类别物体识别的探索比较少,特别是在点云数据上。因为点云数据有一些独特的特征和限制,比如没有纹理和颜色,给多类别物体的识别增加了难度。



技术实现要素:

本申请提供一种物体识别的技术方案。

第一方面,本申请实施例提供了一种物体识别方法,所述方法包括:

获取待处理点云数据,并对所述待处理点云数据进行处理,得到目标点云数据,所述待处理点云数据包括待识别物体的点云数据;

从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征;

根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的识别结果,其中,所述识别结果至少包括所述目标类别。

上述方案中,可选地,所述对所述待处理点云数据进行处理,得到目标点云数据,包括:

通过目标几何体,按照目标步长,遍历所述待处理点云数据,以得到所述目标点云数据;

其中,所述目标几何体的维度与所述待处理点云数据相同,所述目标几何体包括形状规则的几何体。

上述方案中,可选地,属于不同类别的物体的头部形状不同;

所述根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,包括:

根据所述目标特征,分别确定所述待识别物体的头部形状与所述多个类别中每个类别对应的头部形状之间的相似度;

将得到的多个相似度中最高相似度对应的类别,确定为所述目标类别。

上述方案中,可选地,在所述待处理点云数据包括样本点云数据的情况下,所述识别结果还包括所述待识别物体的形状特征;

在所述得到所述待识别物体的识别结果之前,所述方法还包括:

从所述样本点云数据中识别所述待识别物体,以得到所述待识别物体对应的目标样本点云数据;

将所述目标样本点云数据中各点映射到多个目标平面,以得到所述多个目标平面中每个平面上所述目标样本点云数据对应的形状信息,所述多个目标平面中每两个平面垂直;

根据多个所述形状信息,得到所述待识别物体的形状特征。

上述方案中,可选地,所述从所述样本点云数据中识别所述待识别物体,以得到所述待识别物体对应的目标样本点云数据,包括:

根据所述样本点云数据,确定所述待识别物体对应的形状;

根据所述待识别物体对应的形状,从所述样本点云数据中,获取所述待识别物体对应的第一点云数据;

对所述第一点云数据进行补全,以得到与所述第一点云数据对应的第二点云数据,并将所述第二点云数据确定为所述目标样本点云数据。

上述方案中,可选地,所述对所述第一点云数据进行补全,以得到与所述第一点云数据对应的第二点云数据,包括:

确定所述待识别物体对应的形状的中心,并以所述中心为对称中心,采用中心对称对所述第一点云数据进行补全,以得到所述第二点云数据。

上述方案中,可选地,所述根据多个所述形状信息,得到所述待识别物体的形状特征,包括:

对多个所述形状信息进行拟合,得到所述待识别物体的形状特征。

上述方案中,可选地,所述目标点云数据包括各点的位置信息,所述识别结果还包括所述待识别物体的位置信息。

第二方面,本申请实施例提供了一种物体识别装置,所述装置包括:

第一确定模块,用于获取待处理点云数据,并对所述待处理点云数据进行处理,得到目标点云数据,所述待处理点云数据包括待识别物体的点云数据;

第二确定模块,用于从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征;

识别模块,用于根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的识别结果,其中,所述识别结果至少包括所述目标类别。

上述方案中,可选地,所述第一确定模块,用于:

通过目标几何体,按照目标步长,遍历所述待处理点云数据,以得到所述目标点云数据;

其中,所述目标几何体的维度与所述待处理点云数据相同,所述目标几何体包括形状规则的几何体。

上述方案中,可选地,属于不同类别的物体的头部形状不同;

所述识别模块,用于:根据所述目标特征,分别确定所述待识别物体的头部形状与所述多个类别中每个类别对应的头部形状之间的相似度;将得到的多个相似度中最高相似度对应的类别,确定为所述目标类别。

上述方案中,可选地,在所述待处理点云数据包括样本点云数据的情况下,所述识别结果还包括所述待识别物体的形状特征;

所述装置还包括:

训练模块,用于:

从所述样本点云数据中识别所述待识别物体,以得到所述待识别物体对应的目标样本点云数据;

将所述目标样本点云数据中各点映射到多个目标平面,以得到所述多个目标平面中每个平面上所述目标样本点云数据对应的形状信息,所述多个目标平面中每两个平面垂直;

根据多个所述形状信息,得到所述待识别物体的形状特征。

上述方案中,可选地,所述训练模块,用于:

根据所述样本点云数据,确定所述待识别物体对应的形状;

根据所述待识别物体对应的形状,从所述样本点云数据中,获取所述待识别物体对应的第一点云数据;

对所述第一点云数据进行补全,以得到与所述第一点云数据对应的第二点云数据,并将所述第二点云数据确定为所述目标样本点云数据。

上述方案中,可选地,所述训练模块,用于:

确定所述待识别物体对应的形状的中心,并以所述中心为对称中心,采用中心对称对所述第一点云数据进行补全,以得到所述第二点云数据。

上述方案中,可选地,所述训练模块,用于:

对多个所述形状信息进行拟合,得到所述待识别物体的形状特征。

上述方案中,可选地,所述目标点云数据包括各点的位置信息,所述识别结果还包括所述待识别物体的位置信息。

第三方面,本申请实施例提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行本申请实施例所述的神经网络的训练方法的步骤。

第四方面,本申请实施例提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行本申请实施例所述的物体识别方法的步骤。

本申请提供的技术方案,获取待处理点云数据,并对所述待处理点云数据进行处理,得到目标点云数据,所述待处理点云数据包括待识别物体的点云数据;从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征;根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的识别结果,其中,所述识别结果至少包括所述目标类别。如此,本申请在对点云数据进行识别前,先对待处理数据进行处理得到目标点云数据,从而减少了在识别过程中点云的稀疏性和点云中的噪音所带来的影响;从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征;根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的至少包括所述目标类别的识别结果,相对于现有的点云数据大多只能识别单一类别的物体而言,在本申请中,可以结合待识别物体的目标特征,对待识别物体所属的类别进行判别,以确定待识别物体属于多个类别中的哪个类别,即能够对多个类别的物体进行识别,以确定待识别物体所属的类别。

附图说明

图1为本申请实施例提供的一种物体识别方法的实现流程示意图;

图2为本申请实施例提供的形状表示的提取过程示意图;

图3为本申请实施例提供的基于点云数据的物体识别神经网络架构示意图;

图4为本申请实施例提供的一种物体识别装置的组成结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请实施例方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。

本申请的说明书实施例和权利要求书及上述附图中的术语“第一”、“第二”、和“第三”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

下面结合附图和具体实施例对本申请的物体识别的方案进行详细阐述。

本申请实施例提供一种物体识别方法,此物体识别方法可应用于终端设备、服务器或其他电子设备。其中,终端设备可以为用户设备(ue,userequipment)、移动设备、蜂窝电话、无绳电话、个人数字处理(pda,personaldigitalassistant)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该处理方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。如图1所示,所述方法主要包括:

步骤s11、获取待处理点云数据,并对所述待处理点云数据进行处理,得到目标点云数据,所述待处理点云数据包括待识别物体的点云数据;

步骤s12、从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征;

步骤s13、根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的识别结果,其中,所述识别结果至少包括所述目标类别。

本实施例中,所述待处理点云数据是采集到的物体外观表面的至少部分点的数据集合。

本实施例中,并不对待处理点云数据的获取方式进行限定。比如,通过雷达采集得到。又比如,通过测量仪器采集得到。

本实施例中,并不对待识别物体的种类进行限定。比如,所述待识别物体包括车辆,所述车辆具体可以是卡车、公共汽车、轿车、摩托车、自行车等;所述待识别物体还可以包括建筑物,如高楼;所述待识别物体还可以包括行人。

本实施例中,所述目标特征至少包括高层特征,比如,所述高层特征包括至少含有类别信息的语义特征。本实施例中,所述目标特征还可以包括底层特征,比如,所述底层特征包括形状特征和/或纹理特征。

本实施例中,所述目标类别可以是物体的真实类别,比如,待识别物体为卡车,那么,其对应的目标类别为卡车;若待识别物体为轿车,那么,与该轿车对应的目标类别为轿车;若待识别物体为货车,那么,与该轿车对应的目标类别为货车。当然,所述目标类别还可以是由用户如数据维护人员自定义的类别,比如,目标类别包括大型车辆、中型车辆和小型车辆,若待识别物体为卡车,那么,与该卡车对应的目标类别为大型车辆;若待识别物体为轿车,那么,与该轿车对应的目标类别为小型车辆;若待识别物体为货车,那么,与该轿车对应的目标类别为中型车辆。

本申请所述技术方案可用于各种物体检测任务中,对检测场景不做限定,比如检测场景包括环境感知场景、辅助驾驶场景、跟踪场景等。

本申请提供的技术方案,获取待处理点云数据,并对所述待处理点云数据进行处理,得到目标点云数据,所述待处理点云数据包括待识别物体的点云数据;从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征;根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的识别结果,其中,所述识别结果至少包括所述目标类别。如此,本申请在对点云数据进行识别前,先对待处理数据进行处理得到目标点云数据,从而减少了在识别过程中点云的稀疏性和点云中的噪音所带来的影响;从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的至少包括所述目标类别的识别结果,相对于现有的点云数据大多只能识别单一类别的物体而言,在本申请中,可以结合待识别物体的目标特征,对待识别物体所属的类别进行判别,以确定待识别物体属于多个类别中的哪个类别,即能够对多个类别的物体进行识别,以确定待识别物体所属的类别。

由于采集的点云数据只是一些独立的散点,这些散点通常用三维空间坐标表示,此时的点云数据不含有结构化信息如相对的位置信息,因此,在本申请中,在对获取的待处理点云数据识别之前,对所述待处理点云数据进行处理,得到目标点云数据,所述目标点云数据包含有结构化信息。在一些实施方式中,所述对所述待处理点云数据进行处理,得到目标点云数据,包括:

通过目标几何体,按照目标步长,遍历所述待处理点云数据,以得到所述目标点云数据;

其中,所述目标几何体的维度与所述待处理点云数据相同,所述目标几何体包括形状规则的几何体。

本实施例中,并不对目标几何体的类别进行限定。比如,所述目标几何体可以是圆柱体,或是正方体,或是长方体,或是球体等。

本实施例中,并不对目标几何体的大小进行限定。所述大小可以根据需求如时间需求或精度需求进行设定或调整。

本实施例中,所述目标步长可以根据需求如时间需求或精度需求进行设定或调整。

在一些实施方式中,通过目标几何体在所述待处理点云数据上移动的方式完成对所述待处理点云数据的扫描,且在所述目标几何体移动过程中,不重叠地提取所述目标几何体所覆盖到的点云数据;根据提取的所述目标几何体所覆盖到的点云数据,得到含有位置信息的目标点云数据。

假设待处理点云数据包括m个点,每个点的坐标为(x,y,z)。目标点云数据中的点的表示为w×h×n×(xi,yi,zi)的形式;n表示每一个目标几何体中有n个点,w×h表示预先设定好的点云的范围;n一般可根据需求如精度需求进行设定或调整。示例性地,若预先设定好的点云的范围为100米×100米,n=16,目标几何体的大小为0.5米×0.5米,则目标点云数据中的点的表示为100米×100米×16×(xi,yi,zi)的形式。由于100米除以0.5米=2000,那么,用目标几何体扫描完该预先设定好的点云的范围之后,得到的目标点云数据中的点的个数为2000×2000×16,能使目标点云数据中的点具有位置信息,方便后续确定目标特征;由于目标几何体包括的点的个数是固定的,从待处理点云数据确定目标点云数据的过程中,能减少点的数量,从而有助于提高后续确定目标特征的速度。

如此,相对于待处理数据中的独立的散点而言,本申请通过目标几何体按照目标步长,遍历所述待处理点云数据,以得到含有位置信息的目标点云数据,能够实现将无结构信息的待处理数据表示成含有结构信息的目标点云数据,从而有助于得到更准确的语义特征,进而提高物体识别准确率。

以车辆识别场景为例,考虑到不同车型的头部形状不同,因此,通过识别物体的头部即能确定物体所属的类别。因此,在一些实施例中,属于不同类别的物体的头部形状不同;所述根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,包括:

根据所述目标特征,分别确定所述待识别物体的头部形状与所述多个类别中每个类别对应的头部形状之间的相似度;

将得到的多个相似度中最高相似度对应的类别,确定为所述目标类别。

如此,通过比对待识别物体的头部形状与所述多个类别中每个类别对应的头部形状之间的相似度的方式,来确定待识别物体所属类别,相对于分析待识别物体全部特征来确定待识别物体所属类别而言,能提高识别效率。

下面,对本申请的物体识别的方案中用到的神经网络的训练方法进行详细阐述。

为了使物体识别结果更准确,在神经网络学习和训练过程中,将考虑物体的形状特征。在一些实施例中,在所述待处理点云数据包括样本点云数据的情况下,所述识别结果还包括所述待识别物体的形状特征;在所述得到所述待识别物体的识别结果之前,所述方法还包括:

从所述样本点云数据中识别所述待识别物体,以得到所述待识别物体对应的目标样本点云数据;

将所述目标样本点云数据中各点映射到多个目标平面,以得到所述多个目标平面中每个平面上所述目标样本点云数据对应的形状信息,所述多个目标平面中每两个平面垂直;

根据多个所述形状信息,得到所述待识别物体的形状特征。

本实施例中,所述目标平面为二维平面。比如,所述二维平面可以包括待识别物体的正视图所在平面,还可以包括待识别物体的侧视图所在平面,还可以包括待识别物体的俯视图所在平面。

如此,通过映射到多个目标平面上的目标点云数据对应的形状信息,来表示待识别物体,给出了待识别物体的一种形状表示形式,有助于通过该多个形状信息与训练样本中的形状标注结果,来监督神经网络的训练,从而使得训练好的神经网络能够识别多类物体,且识别效果更准确。

需要说明的是,在实际应用过程中,由于从同一个物体的不同面看到的形状可能不同。比如,从物体的前面向后面所看到的视图称为正视图,该正视图能反映物体前面的形状;从物体的左面向右面投射所得的视图称为侧视图,该侧视图能反映物体的左面形状;从物体的上面向下面投射所得的视图称为俯视图,该俯视图能反映物体的上面形状;为了更全面或更完整的表示物体的形状,通常选用3个目标平面进行点的映射,比如,3个目标平面可以分别是正视图所在平面、侧视图所在平面和俯视图所在平面。

为了减少在识别过程中点云的稀疏性和点云中的噪音所带来的影响,因此,需要对点云数据进行补全。作为一种实现方式,从所述样本点云数据中识别所述待识别物体,以得到所述待识别物体对应的目标样本点云数据,包括:

根据所述样本点云数据,确定所述待识别物体对应的形状;

根据所述待识别物体对应的形状,从所述样本点云数据中,获取所述待识别物体对应的第一点云数据;

对所述第一点云数据进行补全,以得到与所述第一点云数据对应的第二点云数据,并将所述第二点云数据确定为所述目标样本点云数据。

如此,通过对点云数据进行补全处理,弥补了所采集的关于同一个物体的点云数据较少或不全的问题,能获得更多的点云数据,从而有助于对物体形状有更准确的表示,进而有助于促进待训练的神经网络的泛化能力。

由于物体一般具有中心对称性,作为一种实施方式,所述对所述第一点云数据进行补全,以得到与所述第一点云数据对应的第二点云数据,包括:

确定所述待识别物体对应的形状的中心,并以所述中心为对称中心,采用中心对称对所述第一点云数据进行补全,以得到所述第二点云数据。

在一些例子中,将所述待识别物体对应的形状的中心对齐到坐标原点,同时旋转所述待识别物体,将所述待识别物体前进方向作为y轴,垂直方向作为x轴;确定所述待识别物体的一个点如q点在x轴的坐标x1,在y轴的坐标y1以及z轴的坐标z1,基于以待识别物体自身为中心的坐标系,采用中心对称对第一点云数据中的q点进行补全,即,得到q点的对称点q’在x轴的另一坐标x1’,在y轴的另一坐标y1’,在z轴的另一坐标z1’,即:第一点云数据包括q点(x1,y1,z1),第二点云数据包括q点(x1,y1,z1)和其对称点q’(x1’,y1’,z1’)。

如此,由于雷达在采集物体表面的点时只能扫到最多3个面,这里用中心对称将点数据进行补齐,可以实现快速对样本点云数据进行补全处理,同时能够弥补样本点云数据的稀疏问题。

可以理解,对于每一个待识别物体,都对应有一个中心。待识别物体之间是相互独立的,也即,每一个待识别物体和每一个待识别物体都是独立的,都会分别转换到以它自己中心为原点的坐标系中。

如此,能够将样本点云数据,转换到以待识别物体自身为中心的坐标系中,方便后续数据处理。

为了高效简洁地表示物体的形状信息,在一实施方式中,所述根据多个所述形状信息,得到所述待识别物体的形状特征,包括:

对多个所述形状信息进行拟合,得到所述待识别物体的形状特征。

在一些例子中,根据每个目标平面上的点的分布情况,用凸包将每个目标平面上的外围点框起来,得到物体的形状表示。进一步地,为了更好地表示凸包,引入了角半径函数,利用角半径函数来表示凸包。具体地,利用角半径函数来表示凸包,包括:以物体框的中心为原点,根据目标步长散发出多条射线;以射线和凸包的交点之间的距离为半径,得到角和半径函数。这里,所述的物体框是根据样本点云数据标注出来的物体的框。比如,目标步长是1°,即相邻两条射线间的角度为1°,将散发出360条射线。当然,可以理解,目标步长可调,因此,射线的个数可以根据需求如精度需求进行设定或调整。比如,目标步长为2°,即相邻两条射线间的角度为2°,那么将散发出180条射线。再比如,目标步长为4°,即相邻两个射线间的角度为4°,将散发出90条射线。

为了将上面得到的形状表示进行高效简洁的压缩,在一些例子中,基于所述角半径函数建立切比雪夫拟合函数,确定所述切比雪夫拟合函数的前三个系数,将所述前三个系数代入到目标平面的形状表示,得到每个物体的形状表示。如此,可以得到高效简洁的形状表示,从而有助于提高识别效率。

为了更好地对物体的形状进行识别,在一些实施例中,引入关于形状的监督信号,在训练之前,提取训练样本中的样本点云数据的形状表示。

在一些实施例中,如图2所示,提取所述样本点云数据的形状表示。其中,图2以一个待识别物体为例,即以一个待识别物体对应的物体框为例,对整个实现过程进行阐述。具体实现过程可以包括以下步骤。

步骤a、基于样本点云数据确定所述样本点云数据所包括的多个物体框,将所述多个物体框中每个物体框中的点映射到坐标系里,得到每个物体框的第一坐标。

其中,将所述多个物体框中每个物体框中的点映射到坐标系里,得到每个物体框的第一坐标,包括:

将物体框的中心对齐到坐标原点,同时旋转物体,将物体前进方向作为y轴,垂直方向作为x轴。

这里,物体框是在训练前预先标好的。

这里,所述坐标原点是所述物体框的中心。

可以理解,对于每一个物体框,都对应有一个中心。物体之间是相互独立的,也即,每一个物体和每一个物体都是独立的,都会分别转换到以它自己中心为原点的坐标系中。

如此,能够将世界坐标系的点云数据,转换到以物体框自身为中心的坐标系中,方便后续数据处理。

步骤b、将所述第一坐标对应的第一点云数据进行对称处理,得到第二坐标对应的第二点云数据,所述第二点云数据包括所述第一点云数据。

其中,将所述第一坐标对应的第一点云数据进行对称处理,得到第二坐标对应的第二点云数据,包括:

以每个物体框的中心为对称中心,将所述第一坐标对应的第一点云数据进行对称处理,得到与所述第一坐标对应的第二坐标的第二点云数据。

如此,利用中心对称的处理方式将点进行补齐,弥补了点云的稀疏问题。步骤c、将所述第二点云数据,即目标样本点云数据,投影到三视图中,得到三视图的表示;其中,所述三视图包括正视图、俯视图和侧视图。

本实施例中,通过步骤c,能够将三维空间中的目标样本点云数据映射到三视图中,从而得到3个二维图的表示。

步骤d、通过凸包提取每个物体框的三视图的形状,得到每个物体框的形状表示。

本实施例中,由于在步骤d之前得到的是散点,同时内部大多存在稀疏和空洞,通过在步骤d中引入凸包来提取每个视图中的形状,把散点的外围框起来,弥补了内部稀疏的问题,同时也有利于后续的特征表示。

在本实施例中,为了更好地表示凸包,引入了角和半径函数。

步骤e、以每个物体框的中心为坐标原点,散发出360条射线,每一度发出一条射线,射线和凸包的交点之间的距离为半径,得到角和半径函数。

当然,可以理解,射线的个数可以根据需求如精度需求进行设定或调整。比如,还可以散发出180条射线,相邻两条射线间的角度为2°。再比如,还可以散发出90条射线,相邻两条射线间的角度为4°。

步骤f、基于所述角和半径函数建立切比雪夫拟合函数,确定所述切比雪夫拟合函数的前三个系数;将所述前三个系数代入到所述三视图的表示,得到每个物体框的形状表示,其中,所述形状表示包括三视图中正视图的三个形状表示、三视图中俯视图的三个形状表示、以及三视图中侧视图的三个形状表示。

在本实施例中,由于切比雪夫能够得到无限个系数,为了将上面得到的形状表示进行高效简洁的压缩,本申请只选取前3个系数,最后得到一个九维的形状表示。

切比雪夫拟合的定义如下:

t0(x)=1(1)

t1(x)=x(2)

tn 1(x)=2xtn(x)-tn-1(x)(3)

其中,x为因变量,t表示切比雪夫公式。

根据切比雪夫拟合的定义,定义成一个通用的表达式:

最后,本申请要求的是切比雪夫拟合的系数:

在一些实施方式中,角作为切比雪夫中的x;半径作为切比雪夫中的t,建立切比雪夫函数,根据公式(5)得到系数a0,根据公式(6)得到系数a1和a2,将a0、a1和a2作为三视图中每个视图的表示,最后,共得到一个9维的形状表示。

通过上面的a~f六个步骤,可以得到一个鲁棒高效的形状表示。

图3为本申请实施例提供的基于点云数据的物体识别神经网络架构示意图,如图3所示,将整个框架分为了四大部分,第一部分,用于根据采集到的原始点云数据进行处理,以得到点云数据的结构化表示,即在原始点云数据中增加点云数据中多个点之间的相对位置关系,即:将待处理点云数据转换成目标点云数据;第二部分,用于根据所述结构化表示,确定所述点云数据的高层特征与底层特征;其中,所述高层特征包括至少含有类别信息的语义特征;所述底层特征包括形状特征和/或纹理特征;即:根据所述目标点云数据确定目标特征;所述第二部分可以由卷积神经网络实现;第三部分,用于根据所述高层特征与所述底层特征进行识别,得到所述点云数据包含的各个物体的识别结果,其中,所述识别结果包括形状、位置和类别;即:根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的识别结果;比如,分别确定待识别物体的头部形状与多个类别中每个类别对应的头部形状之间的相似度,将得到的多个相似度中最高相似度对应的类别,确定为所述目标类别;所述第三部分可以由基于形状聚类的多分支物体识别器来实现,所述多分支物体识别器能将不同形状的物体送入到不同的分支中,每个分支对应一个类别;第四部分为网络的监督信号,该监督信号共包含物体的类别、位置和形状表示三类监督信号,网络的损失函数包括类别损失、位置损失和形状损失之和。

本实施例中,所述的形状表示是指物体的形状表示。可以理解,不同类别的物体,对应的形状不同,进而对应的形状表示也不同。比如,行人与汽车的形状不同。又比如,卡车与轿车的形状不同。

本实施例中,所述的位置是指物体所在的位置。可以理解,所述位置可以用空间坐标x、y、z表示。比如,物体1的位置为(x1、y1、z1),物体2的位置为(x2、y2、z2),物体n的位置为(xn、yn、zn)。

本实施例中,所述的类别是指物体的类别。可以理解,所述类别包括多个大类别,每一大类别可包括多个小类别。示例性地,所述类别包括行人、车辆、建筑物等;所述车辆分为轿车、卡车等小类别。需要说明的是,类别具体如何划分以及细分,可根据需求如精度要求、时间要求等进行设定或调整。

本申请所述技术方案可用于各种物体检测任务中,对检测场景不做限定,比如检测场景包括环境感知场景、辅助驾驶场景、跟踪场景等。

最后,根据损失函数,使得函数损失之和最小,调节第一部分、第二部分和第三部分这三个网络组成部分的参数。

本实施例提供的技术方案,由于在学习和训练物体识别网络时考虑到不同类别的物体在形状上具有明显的差异,将形状信息嵌入到网络的监督信号中,从而减少了在识别过程中点云的稀疏性和点云中的噪音所带来的影响,并促进神经网络方法的泛化能力,使训练好的神经网络具备识别多类物体的能力,得到更好的检测效果。应理解,图3所示的物体识别神经网络架构为一种可选的具体实现方式,本领域技术人员可以基于图3的例子进行各种显而易见的变化和/或替换,得到的技术方案仍属于本公开实施例的公开范围。

对应上述物体识别方法,本申请实施例提供了一种物体识别装置,如图4所示,所述装置包括:

第一确定模块10,用于获取待处理点云数据,并对所述待处理点云数据进行处理,得到目标点云数据,所述待处理点云数据包括待识别物体的点云数据;

第二确定模块20,用于从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征;

识别模块30,用于根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的识别结果,其中,所述识别结果至少包括所述目标类别。

作为一种实施方式,可选地,所述第一确定模块10,用于:

通过目标几何体,按照目标步长,遍历所述待处理点云数据,以得到所述目标点云数据;

其中,所述目标几何体的维度与所述待处理点云数据相同,所述目标几何体包括形状规则的几何体。

作为一种实施方式,可选地,属于不同类别的物体的头部形状不同;所述识别模块30,用于:根据所述目标特征,分别确定所述待识别物体的头部形状与所述多个类别中每个类别对应的头部形状之间的相似度;将得到的多个相似度中最高相似度对应的类别,确定为所述目标类别。

作为一种实施方式,可选地,在所述待处理点云数据包括样本点云数据的情况下,所述识别结果还包括所述待识别物体的形状特征;所述装置还包括:

训练模块40(图4中未示出),用于:

从所述样本点云数据中识别所述待识别物体,以得到所述待识别物体对应的目标样本点云数据;

将所述目标样本点云数据中各点映射到多个目标平面,以得到所述多个目标平面中每个平面上所述目标样本点云数据对应的形状信息,所述多个目标平面中每两个平面垂直;

根据多个所述形状信息,得到所述待识别物体的形状特征。

作为一种实施方式,可选地,所述训练模块40,用于:

根据所述样本点云数据,确定所述待识别物体对应的形状;

根据所述待识别物体对应的形状,从所述样本点云数据中,获取所述待识别物体对应的第一点云数据;

对所述第一点云数据进行补全,以得到与所述第一点云数据对应的第二点云数据,并将所述第二点云数据确定为所述目标样本点云数据。

作为一种实施方式,可选地,所述训练模块40,用于:

确定所述待识别物体对应的形状的中心,并以所述中心为对称中心,采用中心对称对所述第一点云数据进行补全,以得到所述第二点云数据。

作为一种实施方式,可选地,所述训练模块40,用于:

对多个所述形状信息进行拟合,得到所述待识别物体的形状特征。

上述方案中,可选地,所述目标点云数据包括各点的位置信息,所述识别结果还包括所述待识别物体的位置信息。

本领域技术人员应当理解,图4中所示的物体识别装置中的各处理模块的实现功能可参照前述物体识别方法的相关描述而理解。本领域技术人员应当理解,图4所示的物体识别装置中各处理单元的功能可通过运行于处理器上的程序而实现,也可通过具体的逻辑电路而实现。

实际应用中,上述第一确定模块10、第二确定模块20、识别模块30和训练模块40的具体结构均可对应于处理器。所述处理器具体的结构可以为中央处理器(cpu,centralprocessingunit)、微处理器(mcu,microcontrollerunit)、数字信号处理器(dsp,digitalsignalprocessing)或可编程逻辑器件(plc,programmablelogiccontroller)等具有处理功能的电子元器件或电子元器件的集合。其中,所述处理器包括可执行代码,所述可执行代码存储在存储介质中,所述处理器可以通过总线等通信接口与所述存储介质中相连,在执行具体的各单元的对应功能时,从所述存储介质中读取并运行所述可执行代码。所述存储介质用于存储所述可执行代码的部分优选为非瞬间存储介质。

本申请实施例提供的物体识别装置,能够识别多类物体,且物体识别效果更准确,适应领域更广泛。

本申请实施例还记载了一种物体识别装置,所述装置包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述任意一个技术方案提供的物体识别方法。

作为一种实施方式,所述处理器执行所述程序时实现:

获取待处理点云数据,并对所述待处理点云数据进行处理,得到目标点云数据,所述待处理点云数据包括待识别物体的点云数据;

从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征;

根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的识别结果,其中,所述识别结果至少包括所述目标类别。

作为一种实施方式,所述处理器执行所述程序时实现:通过目标几何体,按照目标步长,遍历所述待处理点云数据,以得到所述目标点云数据;

其中,所述目标几何体的维度与所述待处理点云数据相同,所述目标几何体包括形状规则的几何体。

作为一种实施方式,所述处理器执行所述程序时实现:属于不同类别的物体的头部形状不同;根据所述目标特征,分别确定所述待识别物体的头部形状与所述多个类别中每个类别对应的头部形状之间的相似度;

将得到的多个相似度中最高相似度对应的类别,确定为所述目标类别。

作为一种实施方式,所述处理器执行所述程序时实现:在所述待处理点云数据包括样本点云数据的情况下,所述识别结果还包括所述待识别物体的形状特征;在所述得到所述待识别物体的识别结果之前,从所述样本点云数据中识别所述待识别物体,以得到所述待识别物体对应的目标样本点云数据;将所述目标样本点云数据中各点映射到多个目标平面,以得到所述多个目标平面中每个平面上所述目标样本点云数据对应的形状信息,所述多个目标平面中每两个平面垂直;根据多个所述形状信息,得到所述待识别物体的形状特征。

作为一种实施方式,所述处理器执行所述程序时实现:根据所述样本点云数据,确定所述待识别物体对应的形状;根据所述待识别物体对应的形状,从所述样本点云数据中,获取所述待识别物体对应的第一点云数据;对所述第一点云数据进行补全,以得到与所述第一点云数据对应的第二点云数据,并将所述第二点云数据确定为所述目标样本点云数据。

作为一种实施方式,所述处理器执行所述程序时实现:确定所述待识别物体对应的形状的中心,并以所述中心为对称中心,采用中心对称对所述第一点云数据进行补全,以得到所述第二点云数据。

作为一种实施方式,所述处理器执行所述程序时实现:对多个所述形状信息进行拟合,得到所述待识别物体的形状特征。

作为一种实施方式,所述处理器执行所述程序时实现:所述目标点云数据包括各点的位置信息,所述识别结果还包括所述待识别物体的位置信息。

本申请实施例提供的物体识别装置,能够识别多类物体,且物体识别效果更准确,适应领域更广泛。

本申请实施例还记载了一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行前述各个实施例所述的物体识别方法。也就是说,所述计算机可执行指令被处理器执行之后,能够实现前述任意一个技术方案提供的物体识别方法。

本领域技术人员应当理解,本实施例的计算机存储介质中各程序的功能,可参照前述各实施例所述的物体识别方法的相关描述而理解。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。


技术特征:

1.一种物体识别方法,其特征在于,所述方法包括:

获取待处理点云数据,并对所述待处理点云数据进行处理,得到目标点云数据,所述待处理点云数据包括待识别物体的点云数据;

从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征;

根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的识别结果,其中,所述识别结果至少包括所述目标类别。

2.根据权利要求1所述的方法,其特征在于,所述对所述待处理点云数据进行处理,得到目标点云数据,包括:

通过目标几何体,按照目标步长,遍历所述待处理点云数据,以得到所述目标点云数据;

其中,所述目标几何体的维度与所述待处理点云数据相同,所述目标几何体包括形状规则的几何体。

3.根据权利要求1或2所述的方法,其特征在于,属于不同类别的物体的头部形状不同;

所述根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,包括:

根据所述目标特征,分别确定所述待识别物体的头部形状与所述多个类别中每个类别对应的头部形状之间的相似度;

将得到的多个相似度中最高相似度对应的类别,确定为所述目标类别。

4.根据权利要求1至3任一项所述的方法,其特征在于,在所述待处理点云数据包括样本点云数据的情况下,所述识别结果还包括所述待识别物体的形状特征;

在所述得到所述待识别物体的识别结果之前,所述方法还包括:

从所述样本点云数据中识别所述待识别物体,以得到所述待识别物体对应的目标样本点云数据;

将所述目标样本点云数据中各点映射到多个目标平面,以得到所述多个目标平面中每个平面上所述目标样本点云数据对应的形状信息,所述多个目标平面中每两个平面垂直;

根据多个所述形状信息,得到所述待识别物体的形状特征。

5.根据权利要求4所述的方法,其特征在于,所述从所述样本点云数据中识别所述待识别物体,以得到所述待识别物体对应的目标样本点云数据,包括:

根据所述样本点云数据,确定所述待识别物体对应的形状;

根据所述待识别物体对应的形状,从所述样本点云数据中,获取所述待识别物体对应的第一点云数据;

对所述第一点云数据进行补全,以得到与所述第一点云数据对应的第二点云数据,并将所述第二点云数据确定为所述目标样本点云数据。

6.根据权利要求5所述的方法,其特征在于,所述对所述第一点云数据进行补全,以得到与所述第一点云数据对应的第二点云数据,包括:

确定所述待识别物体对应的形状的中心,并以所述中心为对称中心,采用中心对称对所述第一点云数据进行补全,以得到所述第二点云数据。

7.根据权利要求4所述的方法,其特征在于,所述根据多个所述形状信息,得到所述待识别物体的形状特征,包括:

对多个所述形状信息进行拟合,得到所述待识别物体的形状特征。

8.根据权利要求1至7任一项所述的方法,其特征在于,所述目标点云数据包括各点的位置信息,所述识别结果还包括所述待识别物体的位置信息。

9.一种物体识别装置,其特征在于,所述装置包括:

第一确定模块,用于获取待处理点云数据,并对所述待处理点云数据进行处理,得到目标点云数据,所述待处理点云数据包括待识别物体的点云数据;

第二确定模块,用于从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征;

识别模块,用于根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的识别结果,其中,所述识别结果至少包括所述目标类别。

10.根据权利要求9所述的装置,其特征在于,所述第一确定模块,用于:

通过目标几何体,按照目标步长,遍历所述待处理点云数据,以得到所述目标点云数据;

其中,所述目标几何体的维度与所述待处理点云数据相同,所述目标几何体包括形状规则的几何体。

11.根据权利要求9或10所述的装置,其特征在于,属于不同类别的物体的头部形状不同;

所述识别模块,用于:根据所述目标特征,分别确定所述待识别物体的头部形状与所述多个类别中每个类别对应的头部形状之间的相似度;将得到的多个相似度中最高相似度对应的类别,确定为所述目标类别。

12.根据权利要求9至11任一项所述的装置,其特征在于,在所述待处理点云数据包括样本点云数据的情况下,所述识别结果还包括所述待识别物体的形状特征;

所述装置还包括:

训练模块,用于:

从所述样本点云数据中识别所述待识别物体,以得到所述待识别物体对应的目标样本点云数据;

将所述目标样本点云数据中各点映射到多个目标平面,以得到所述多个目标平面中每个平面上所述目标样本点云数据对应的形状信息,所述多个目标平面中每两个平面垂直;

根据多个所述形状信息,得到所述待识别物体的形状特征。

13.根据权利要求12所述的装置,其特征在于,所述训练模块,用于:

根据所述样本点云数据,确定所述待识别物体对应的形状;

根据所述待识别物体对应的形状,从所述样本点云数据中,获取所述待识别物体对应的第一点云数据;

对所述第一点云数据进行补全,以得到与所述第一点云数据对应的第二点云数据,并将所述第二点云数据确定为所述目标样本点云数据。

14.根据权利要求13所述的装置,其特征在于,所述训练模块,用于:

确定所述待识别物体对应的形状的中心,并以所述中心为对称中心,采用中心对称对所述第一点云数据进行补全,以得到所述第二点云数据。

15.根据权利要求12所述的装置,其特征在于,所述训练模块,用于:

对多个所述形状信息进行拟合,得到所述待识别物体的形状特征。

16.根据权利要求9至15任一项所述的装置,其特征在于,所述目标点云数据包括各点的位置信息,所述识别结果还包括所述待识别物体的位置信息。

17.一种物体识别装置,所述装置包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至8任一项所述的物体识别方法。

18.一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,能够使得所述处理器执行权利要求1至8任一项所述的物体识别方法。

技术总结
本申请公开了一种物体识别方法及装置、存储介质,其中,所述方法包括:获取待处理点云数据,并对所述待处理点云数据进行处理,得到目标点云数据,所述待处理点云数据包括待识别物体的点云数据;从所述目标点云数据中识别所述待识别物体,并确定所述待识别物体的目标特征;根据所述目标特征,确定在多个类别中,所述待识别物体所属的目标类别,以得到所述待识别物体的识别结果,其中,所述识别结果至少包括所述目标类别。

技术研发人员:祝新革;王泰;许龑;石建萍;林达华
受保护的技术使用者:北京市商汤科技开发有限公司
技术研发日:2020.01.15
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-16615.html

最新回复(0)