掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本申请涉及探测技术领域,尤其涉及一种确定点云的边界框的方法及装置。

背景技术

目前,激光雷达可以完成对目标对象的追踪。例如,激光雷达可以对目标对象进行测量,得到目标对象的点云,再根据目标对象的点云得到目标对象的包络,根据目标对象的包络可以确定目标对象的边界框,从而就可以完成后续的对目标对象的识别或追踪等过程。

要根据目标对象的包络确定目标对象的边界框,可以有多种方式。例如可以根据点云直接获得目标对象的边界框,但这种方式需要对点云所包括的每个点都进行处理,过程较为复杂。或者,可以根据点云获得目标对象的凸多边形包络,再根据凸多边形包络获得目标对象的边界框。目前可以获得目标对象的多个边界框,再从多个边界框中选择一个作为目标对象的最终的边界框。这种方式相对来说较为简单,但是在从多个边界框中选择最终的边界框时,没有较为合理的选择方式,导致所选择的边界框误差较大。

发明内容

本申请实施例提供一种确定点云的边界框的方法及装置,用于确定较为合理的边界框,从而提高目标对象识别结果的准确性。

第一方面,提供一种确定点云的边界框的方法,该方法包括:根据第一位置信息将第一图形所在的第一平面划分为N个区域,所述第一位置信息是根据处理装置的位置和点云的位置确定的,所述第一图形为将所述点云投影到所述第一平面得到的二维图形,所述第一图形包括M条边,所述点云为所述处理装置对目标对象进行测量得到的点数据集合,N为大等于2的整数,M为正整数;以所述M条边中的每条边作为参考边,确定一个边界框,共得到M个边界框;确定所述M个边界框中的每个边界框对应于所述N个区域的N个子损失值,所述N个子损失值中的第一子损失值,用于度量所述第一子损失值对应的区域在所述每个边界框侵占的自由空间中所对应的部分,所述每个边界框侵占的自由空间是根据所述每个边界框和所述N个区域确定的;根据所述N个子损失值,确定所述每个边界框对应的损失值;将最小的损失值对应的边界框确定为所述点云的边界框。

该方法可以由处理装置执行,处理装置例如为探测设备或能够支持探测设备实现该方法所需的功能的探测装置,例如芯片系统。示例性地,所述探测设备为雷达,例如激光雷达或其他雷达,那么处理装置可以是雷达,或者可以是设置在雷达中的能够支持雷达实现该方法所需的功能的装置,例如芯片系统,或其他功能模块。

在本申请实施例中,第一位置信息例如可以表示处理装置与点云之间的相对位置,从而可以根据处理装置与点云之间的相对位置,将点云中的第一图形所在的第一平面划分为N个区域,对每个区域分别计算子损失值,这样就相当于在计算子损失值时考虑了处理装置与对象之间的相对位置。通过这种方式所确定的边界框,可以尽量减小自遮挡现象对观测结果的影响,提高了对目标对象的观测结果的准确性,进而可以提高后续对目标对象的追踪或识别等处理过程的准确性。而且本申请实施例在计算损失值时,计算的是边界框侵占的相应区域的自由空间的度量,有助于减少边界框所侵占的自由空间,这也就使得所确定的边界框更为准确。

在一种可选的实施方式中,根据第一位置信息将第一图形所在的第一平面划分为N个区域,包括:

根据所述第一位置信息,确定至少一条辅助线;

根据所述至少一条辅助线将所述第一平面划分为所述N个区域。

例如,点云中与处理装置之间的距离较近的区域,或者,点云中密度较大的区域,一般不存在自遮挡,对于点云的这些区域,点云的位置一般能够表示目标对象的真实外形,也就是说,处理装置对点云的这部分区域的观测准确度较高,使得处理装置得到的点云的这部分区域对应的目标对象的外形较为准确;而对于点云中离处理装置之间的距离较远的区域,或者,点云中密度较小的区域,就可能存在自遮挡的问题,对于点云的这些区域,点云的位置所表示目标对象的外形与目标对象的真实外形之间可能有偏差,也就是说,处理装置对点云的这部分区域的观测准确性较低。鉴于此,本申请实施例提出,可以将第一平面按照观测的可信赖程度,或者说按照观测准确度,划分为N个区域,从而便于对这N个区域分别进行考虑。而处理装置对点云进行观测的可信赖程度,与处理装置的位置和点云的位置有关,或者与点云的密度有关,因此,区域对应的置信度,也与处理装置的位置和点云的位置有关,或者与点云的密度有关。因此,处理装置可以根据第一位置信息,确定至少一条辅助线,从而通过至少一条辅助线,就可以将第一平面划分为N个区域。这种划分区域的方式,考虑了处理装置的位置和点云的位置,使得不同的区域的可信赖程度不同,从而可以对N个区域分别进行考虑,有助于提高所确定的边界框的准确度。

在一种可选的实施方式中,

所述方法还包括:

以所述至少一条辅助线中的每条辅助线作为参考边,确定一个边界框,共确定P个边界框;

将最小的损失值对应的边界框确定为所述点云的边界框,包括:

将所述M个边界框以及所述P个边界框中,最小的损失值对应的边界框确定为所述点云的边界框。

在确定边界框时,可以只是根据M条边确定M个边界框,无需考虑辅助线,这样有助于减小计算量。或者,除了可以根据M条边中的每条边确定边界框之外,还可以根据辅助线确定边界框。例如,还可以将至少一条辅助线中的每条辅助线作为参考边,确定边界框,共确定P个边界框。既根据M条边确定M个边界框,也根据至少一条辅助线确定P个边界框,在选择边界框时可以从M+P个边界框进行选择,扩大了选择范围,有利于选择到更为合适的边界框。

在一种可选的实施方式中,所述N个区域对应于N个置信度,所述N个置信度用于指示所述N个区域内的点数据表征目标对象的准确度。

本申请实施例中,可以将第一平面按照观测的可信赖程度,或者说按照观测准确度,划分为N个区域,从而便于对这N个区域分别进行考虑。例如,可信赖程度,或者说观测准确度,可以通过置信度来体现。对于第一平面的一个区域,如果处理装置对该区域进行观测的可信赖程度较高,则该区域的置信度就越高,而如果处理装置对该区域进行观测的可信赖程度较低,则该区域的置信度就越低。因此,一个区域的置信度可以指示该区域内的点数据表征目标对象的准确度。那么,N个区域就对应于N个置信度。将可信赖程度或观测准确度以置信度进行量化,更加方便了计算过程。

在一种可选的实施方式中,所述N个置信度是根据所述点云的密度和/或所述点云到所述处理装置的距离确定的。

在处理装置的感知过程中,点云中与处理装置之间的相对位置不同的区域,或者点云中的密度不同的区域,可能可信赖程度不同。例如,点云中与处理装置之间的距离较近的区域,或者,点云中密度较大的区域,一般不存在自遮挡,对于点云的这些区域,点云的位置一般能够表示目标对象的真实外形,也就是说,处理装置对点云的这部分区域的观测的可信赖程度较高,使得处理装置得到的点云的这部分区域对应的目标对象的外形较为准确;而对于点云中离处理装置之间的距离较远的区域,或者,点云中密度较小的区域,就可能存在自遮挡的问题,对于点云的这些区域,点云的位置所表示目标对象的外形与目标对象的真实外形之间可能有偏差,也就是说,处理装置对点云的这部分区域观测的可信赖程度较低。因此,可以根据点云的密度确定区域的可信赖程度,或者也可以根据点云到处理装置的距离确定区域的可信赖程度,或者也可以根据点云的密度和点云到处理装置的距离确定区域的可信赖程度,或者还可以根据其他因素确定区域的可信赖程度。

在一种可选的实施方式中,所述第一图形为凸多边形或椭圆形。

在得到目标对象的点云后,可以将该点云投影到第一平面,投影后可以得到一个二维图形,该图形例如称为第一图形。例如,第一图形可以是凸多边形,或者也可以是椭圆形等。这也可以理解为,是根据点云得到了该点云的凸多边形包络或椭圆形包络。当然第一图形也可以是其他的形状,这与点云投影到第一平面后的形状有关,具体的不做限制。

在一种可选的实施方式中,所述M个边界框包括第一边界框,所述第一边界框对应于所述N个子损失值,所述N个子损失值包括所述第一子损失值,所述第一子损失值对应于所述N个区域中的第一区域,所述第一子损失值是所述第一边界框侵占的所述自由空间中对应于所述第一区域的面积,所述第一边界框侵占的所述自由空间是根据所述第一边界框和所述N个区域确定的。

这里介绍了边界框、子损失值以及区域之间的关系。对于M个边界框中的每个边界框,这种关系都是类似的,因此这里只以第一边界框为例。第一边界框例如为M个边界框中的任意一个边界框。或者,如果还根据至少一条辅助线确定了P个边界框,那么第一边界框可以认为是M+P个边界框中的任意一个边界框。

在一种可选的实施方式中,所述第一边界框对应的损失值,满足如下关系:

cost=a

其中,cost表示所述第一边界框对应的损失值,a

一个区域的子损失值与该区域在边界框侵占的自由空间中对应的部分的面积有关,例如一种方式为,子损失值就是面积,或者另一种方式为,子损失值是面积的函数。例如,第一平面被划分为N个区域,对于一个边界框来说,这N个区域在该边界框侵占的自由空间中对应的N个部分的面积例如分别为S

在一种可选的实施方式中,a

N个系数中的每个系数,可以大于或等于0。N个系数中,可能有部分系数相同,或者N个系数也可以均不相同。例如,N个系数可以根据置信度来确定。确定N个系数的一种原则例如为,在计算损失值时,观测准确区对应的子损失值根据系数处理后的结果应该尽量大,而观测模糊区对应的子损失值根据系数处理后的结果应该尽量小,或者说,置信度较高的区域对应的子损失值根据系数处理后的结果应该尽量大,而置信度较小的区域对应的子损失值根据系数处理后的结果应该尽量小。对于M个边界框中的每个边界框,处理装置都可以按照类似的方式确定对应的N个子损失值,以及根据N个子损失值确定损失值。这样就可以确定M个边界框对应的M个损失值。在本申请实施例中,将边界框侵占的自由空间作为子损失值衡量的对象,可以使得减小自遮挡的现象对观测结果的影响,相对于将第一平面内的区域的面积作为衡量对象的方式来说,本申请实施例的方式更为合理。

第二方面,提供一种处理装置,例如该处理装置为如前所述的处理装置。所述处理装置用于执行上述第一方面或任一可能的实施方式中的方法。具体地,所述处理装置可以包括用于执行第一方面或任一可能的实施方式中的方法的模块,例如包括处理模块和采集模块。示例性地,所述处理装置为探测设备,或者为设置在探测设备中的芯片系统或其他部件。示例性地,所述探测设备为雷达。其中,

所述处理模块,用于根据第一位置信息将第一图形所在的第一平面划分为N个区域,所述第一位置信息是根据处理装置的位置和点云的位置确定的,所述第一图形为将所述点云投影到所述第一平面得到的二维图形,所述第一图形包括M条边,所述点云为所述采集模块对目标对象进行测量得到的点数据集合,N为大于或等于2的整数,M为正整数;

所述处理模块,还用于以所述M条边中的每条边作为参考边,确定一个边界框,共得到M个边界框;

所述处理模块,还用于确定所述M个边界框中的每个边界框对应于所述N个区域的N个子损失值,所述N个子损失值中的第一子损失值,用于度量所述第一子损失值对应的区域在所述每个边界框侵占的自由空间中所对应的部分,所述每个边界框侵占的自由空间是根据所述每个边界框和所述N个区域确定的;

所述处理模块,还用于根据所述N个子损失值,确定所述每个边界框对应的损失值;

所述处理模块,还用于将最小的损失值对应的边界框确定为所述点云的边界框。

在一种可选的实施方式中,所述处理模块用于通过如下方式根据第一位置信息将第一图形所在的第一平面划分为N个区域:

根据所述第一位置信息,确定至少一条辅助线;

根据所述至少一条辅助线将所述第一平面划分为所述N个区域。

在一种可选的实施方式中,

所述处理模块,还用于以所述至少一条辅助线中的每条辅助线作为参考边,确定一个边界框,共确定P个边界框;

所述处理模块用于通过如下方式将最小的损失值对应的边界框确定为所述点云的边界框:

将所述M个边界框以及所述P个边界框中,最小的损失值对应的边界框确定为所述点云的边界框。

在一种可选的实施方式中,所述N个区域对应于N个置信度,所述N个置信度用于指示所述N个区域内的点数据表征目标对象的准确度。

在一种可选的实施方式中,所述N个置信度是根据所述点云的密度和/或所述点云到所述处理装置的距离确定的。

在一种可选的实施方式中,所述第一图形为凸多边形或椭圆形。

在一种可选的实施方式中,所述M个边界框包括第一边界框,所述第一边界框对应于所述N个子损失值,所述N个子损失值包括所述第一子损失值,所述第一子损失值对应于所述N个区域中的第一区域,所述第一子损失值是所述第一边界框侵占的所述自由空间中对应于所述第一区域的面积,所述第一边界框侵占的所述自由空间是根据所述第一边界框和所述N个区域确定的。

在一种可选的实施方式中,所述第一边界框对应的损失值,满足如下关系:

cost=a

其中,cost表示所述第一边界框对应的损失值,a

在一种可选的实施方式中,a

第三方面,提供一种处理装置,该处理装置例如为如前所述的处理装置。该处理装置包括处理器和通信接口,例如处理器可实现如第二方面所述的处理模块的功能,通信接口可实现如第二方面所述的收发模块的功能。可选的,该处理装置还可以包括存储器,用于存储计算机指令。处理器、通信接口和存储器相互耦合,用于实现上述第一方面或各种可能的实施方式所描述的方法。或者,处理装置也可以不包括存储器,存储器可以位于处理装置外部。例如,当处理器执行所述存储器存储的计算机指令时,使处理装置执行上述第一方面或任意一种可能的实施方式中的方法。示例性地,所述处理装置为探测设备,或者为设置在探测设备中的芯片系统或其他部件。示例性的,所述探测设备为雷达。

其中,如果处理装置为探测设备,通信接口例如通过所述探测设备中的收发器(或者,发送器和接收器)实现,例如所述收发器通过所述探测设备中的天线、馈线和编解码器等实现。或者,如果处理装置为设置在探测设备中的芯片,那么通信接口例如为芯片的输入/输出接口,例如输入/输出管脚等,该通信接口与探测设备中的射频收发组件连接,以通过射频收发组件实现信息的收发。

在一种可选的实施方式中,由雷达装置和处理装置共同实现第一方面或各种可选的实施方式所提供的方法。所述处理装置为设置在雷达装置之外的处理器,或者也可以是设置在雷达装置内的处理器,例如中央处理器等。具体的,雷达装置用于执行上述探测器或采集模块所执行的内容,处理装置用于执行上述处理器或处理模块所执行的内容,也就是说本申请提供的方法可以由雷达装置和处理装置共同实现。

第四方面,提供一种探测系统,该探测系统包括第二方面所述的处理装置或第三方面所述的处理装置。

第五方面,提供一种智能车,所述智能车包括第二方面所述的处理装置或第三方面所述的处理装置。或者,所述智能车为第二方面所述的处理装置或第三方面所述的处理装置。

第六方面,提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机指令,当所述计算机指令在计算机上运行时,使得所述计算机执行上述第一方面或任意一种可能的实施方式中所述的方法。

第七方面,提供一种芯片,所述芯片包括处理器和通信接口,所述处理器与所述通信接口耦合,用于实现上述第一方面或任一种可选的实施方式所提供的方法。

可选的,所述芯片还可以包括存储器,例如,所述处理器可以读取并执行所述存储器所存储的软件程序,以实现上述第一方面或任一种可选的实施方式所提供的方法。或者,所述存储器也可以不包括在所述芯片内,而是位于所述芯片外部,相当于,所述处理器可以读取并执行外部存储器所存储的软件程序,以实现上述第一方面或任一种可选的实施方式所提供的方法。

第八方面,提供一种包含指令的计算机程序产品,所述计算机程序产品用于存储计算机指令,当所述计算机指令在计算机上运行时,使得所述计算机执行上述第一方面或的任意一种可能的实施方式中所述的方法。

在本申请实施例中,在计算子损失值时考虑了处理装置与对象之间的相对位置,通过这种方式所确定的边界框,可以尽量减小自遮挡的现象对观测结果的影响,提高对目标对象的观测结果的准确性,进而可以提高后续对目标对象的追踪或识别等处理过程的准确性。

附图说明

图1为所确定的边界框存在自遮挡现象的示意图;

图2为激光雷达对原始点云的基本处理过程的一种流程图;

图3A~图3C为三种点云包络的示意图;

图4为本申请实施例的一种应用场景示意图;

图5为本申请实施例提供的一种确定点云的边界框的方法的流程图;

图6A和图6B为本申请实施例中划分区域的两种示意图;

图6C为本申请实施例中确定辅助线的一种示意图;

图7为本申请实施例中的目标对象的示意图;

图8A为本申请实施例中根据目标对象得到的凸多边形的一种示意图;

图8B为本申请实施例中区域的子损失值的一种示意图;

图9A为本申请实施例中根据目标对象得到的凸多边形的另一种示意图;

图9B为本申请实施例中区域的子损失值的另一种示意图;

图10为本申请实施例提供的处理装置的一种结构示意图;

图11为本申请实施例提供的处理装置的一种结构示意图;

图12为本申请实施例提供的处理装置的一种结构示意图;

图13为本申请实施例提供的处理装置的一种结构示意图。

具体实施方式

为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例作进一步地详细描述。

以下,对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。

1)处理装置,或者也可以称为探测装置,例如为传感器,该传感器例如为雷达,例如激光雷达(light detection and ranging,lidar),或其他类型的雷达。或者,该传感器也可以是设置在雷达上的,用于采集目标对象的点云的传感器。

2)自由空间,是指非物体所占据的空间。同理,侵占自由空间是指,空间中不存在物体的点云,但该空间却被认为属于某个物体。

3)自遮挡,是指传感器在观测物体的过程中,物体自身的某部分遮挡了该物体的另一部分,造成该物体被遮挡的部分不可见、或者被遮挡的部分观测结果不准确的现象。

4)本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。

以及,除非有相反的说明,本申请实施例提及“第一”、“第二”等序数词是用于对多个对象进行区分,不用于限定多个对象的大小、形状、内容、顺序、时序、优先级或者重要程度等。例如,第一边界框和第二边界框,只是为了区分不同的边界框,而并不是表示这两个边界框的大小、形状、优先级或者重要程度等的不同。

前文介绍了本申请实施例所涉及到的一些名词概念,下面介绍本申请实施例涉及的技术特征。

在自动驾驶系统/辅助驾驶系统中,需要解决感知、决策和执行等层面的问题。所谓的感知,是指感知周围的环境,例如感知周围环境中的对象,并对所感知的对象进行识别和分析。感知在自动驾驶系统/辅助驾驶系统中扮演着极其重要的角色,激光雷达作为自动驾驶中最主要的感知传感器之一,其从原始点云到目标感知的基本过程可参考图2。图2中,原始点云是激光雷达对目标对象进行测量获得的。在获得原始点云后,激光雷达可以对原始点云进行去地处理,也就是去除原始点云中对应于地面的点,相当于消除地面的干扰。之后激光雷达对去地处理后的点云进行聚类处理。在获得的点云中可能包括了多个对象,例如,在激光雷达所采集的点云中,包括了行人、车辆、以及房屋等对象。则激光雷达可以通过聚类处理,将各个对象所对应的点聚集到一起,相当于,聚类得到的多个类别的点,就可以分别表示不同的对象。在进行聚类处理后,激光雷达可以得到聚类后得到的每个对象对应的点云包络,或者,聚类后可能得到了多个对象,而这多个对象中可能只有一部分对象是激光雷达想要得到的对象,则激光雷达也可以只得到这些对象的点云包络。在得到对象的点云包络后,激光雷达就可以根据点云包络确定对象的边界框,之后就可以根据边界框,对相应的对象进行跟踪或识别等操作。

其中,点云包络是对点云边缘的一种有效地简化表示,可以为后续的目标跟踪等操作提供极大的帮助。一般情况下,点云包络的主要形式有凸多边形(也可以称为凸多边形包络)、椭圆(也可以称为椭圆包络)以及边界框(bounding box,又称包围盒,也可以称为边界框包络)这三种形式。可以理解为,点云包络可包括凸多边形包络、椭圆包络和边界框包络等几种包络。其中,边界框包络又可以理解为是凸多边形包络的一种,例如,当凸多边形包络的形状为矩形时,该凸多边形包络也可以认为是边界框包络。而如果凸多边形包络的形状不是矩形,则该凸多边形包络不是边界框包络。如果是这种情况,还可以进一步根据凸多边形包络得到边界框包络。在下文中,为了简便,也将边界框包络简称为边界框,以及,将凸多边形包络简称为凸多边形。

边界框可以理解为,是围绕正在检测的对象的虚构的外框。在数字图像处理中,边界框可以是将数字图像放在页面、画布、屏幕或其他类似的二维背景上时完全包围该数字图像的矩形边框的坐标。可简单理解为,边界框是用体积稍大且特性简单的几何体来近似地表征复杂的几何对象。

可参考图3A~图3C,图3A为凸多边形包络的示意图,图3B为椭圆包络的示意图,图3C为边界框包络的示意图。图3A~图3C中,均以对象是车辆为例。另外可参考表1,为这三种形式的包络的各自的优缺点。

表1

由于边界框结构稳定,参数简单,且对于绝大多数道路交通参与目标表示的准确性较好,因此,边界框成为当前表示点云包络的主流方案。也就是说,在得到点云包络后,可以根据点云包络再得到对象的边界框。可以看到,点云包络的其中一种形式就是边界框包络,这种形式就相当于得到点云包络就是得到了边界框。而如果点云包络是凸多边形包络或椭圆包络,则在得到点云包络后,可以进一步根据点云包络得到对象的边界框。

例如,边界框可以通过两种方式获取:方式一,直接从点云获取(即,获得的点云包络是边界框包络);方式二,利用点云的二维的凸多边形包络,获取最终的边界框。

如果直接从点云获取边界框,一般需要遍历点云中所有的点,通过某种与点相关的损失函数(例如面积损失函数或距离损失函数等),确定最终的边界框。因此这种方法计算复杂度较高,算法耗时较长。

而通过凸多边形包络获取边界框的方式,一般而言计算量较少,实时性较好。但由于仅能利用凸多边形的几何结构,导致边界框的朝向稳定性较差。例如,如果根据凸多边形包络确定边界框,则根据一个凸多边形包络可能会确定出多个边界框,需要从中选择一个边界框作为最终的边界框。但目前在选择边界框时,并没有合理的选择标准,所选择的边界框很可能是不合理的。

例如请参考图1,其中的实线矩形框和虚线矩形框为目标对象的两个边界框,这两个边界框例如是根据点云的凸多边形包络得到的。矩形框中的黑色圆点表示对象的点云。在确定这两个边界框后,激光雷达可以从这两个边界框中选择一个作为对象的边界框。例如图1中,激光雷达最终选择的边界框是实线矩形框所示的边界框。但是采集点云的传感器位于实线矩形框所在的一侧,而实线矩形框中有一部分区域挡在了点云和传感器中间,导致点云被遮挡,这就是所谓的自遮挡现象,这会导致激光雷达对目标对象的观测结果不够合理,从而也会影响后续对目标对象的追踪或识别等处理过程的准确性。

鉴于此,提供本申请实施例的技术方案。在本申请实施例中,第一位置信息例如可以表示处理装置与点云之间的相对位置,从而可以根据处理装置与点云之间的相对位置,将点云中的第一图形所在的第一平面划分为N个区域,对每个区域分别计算子损失值,这样就相当于在计算子损失值时考虑了处理装置与对象之间的相对位置。通过这种方式所确定的边界框,可以尽量减小自遮挡的现象对观测结果的影响,可以提高后续对目标对象的追踪或识别等处理过程的准确性,进而提高对目标对象的观测结果的准确性。而且本申请实施例在计算损失值时,计算的是边界框侵占的相应区域的自由空间的度量,有助于减少边界框所侵占的自由空间,这也就使得所确定的边界框更为准确。

请参考图4,为本申请实施例的一种应用场景示意图。图4中有两个车辆行驶在一条道路上,例如车辆A上设置有雷达。该雷达可以对周围环境进行测量,以获得周围环境中对象的点云,且可以对获得的点云进行去地处理、聚类处理、以及点云包络等处理,从而后续可以根据获得的边界框对相应的对象进行追踪或识别等操作。例如该雷达可以获得车辆B的点云,并可以对车辆B的点云进行去地处理、聚类处理、以及点云包络等处理,从而可以根据获得的车辆B的边界框对车辆B进行追踪或识别等操作。图4中,雷达在车辆A上的位置只是示例,雷达在车辆上的具体位置不限于此。

当然图4只是一种示例,本申请实施例的应用场景不限于此。例如本申请实施例所提供的处理装置也可能不是雷达而是其他的设备,且处理装置也可能不设置在车辆上,而是设置在其他设备上,例如智能机器人或无人机,或者处理装置也可以单独设置。

本申请实施例提供一种确定点云的边界框的方法,请参见图5,为该方法的流程图。在下文的介绍过程中,以该方法应用于图4所示的网络架构为例。

为了便于介绍,在下文中,以该方法由处理装置执行为例。因为本实施例是以应用在图4所示的场景为例,因此,下文中所述的处理装置可以是图4所示的场景中的雷达,或者是设置在图4所示的场景中的雷达中的传感器等。

S51、根据第一位置信息将第一图形所在的第一平面划分为N个区域,N为大于或等于2的整数。

处理装置为用于采集该点云的装置,图5所示的实施例可以由处理装置来执行。例如处理装置对目标对象进行测量,可以得到多个点,这些点可以视为构成点数据集合(或者,称为点的集合),该点数据集合就可以对应该目标对象,该点数据集合也就是该目标对象的点云。

在得到目标对象的点云后,可以将该点云投影到第一平面,投影后可以得到一个二维图形,该图形例如称为第一图形。第一平面例如是根据处理装置和目标对象所确定的平面,例如目标物体位于地面,则第一平面可以是水平面,例如水平面也可以称为XY平面。或者,第一平面也可以是任意角度的平面,例如目标物体并没有位于地面,可能漂浮在空中,或者目标物体是车辆,但车辆在斜坡上行驶等,则第一平面就可以是任意角度的平面。较为合理的一种方式,第一平面可以是除了第二平面之外的任意角度的平面。例如,将处理装置和目标对象投影到一个平面,该平面可以认为是第二平面。

例如,第一图形可以是凸多边形,或者也可以是椭圆形等。这也可以理解为,是根据点云得到了该点云的凸多边形包络或椭圆形包络。当然第一图形也可以是其他的形状,这与点云投影到第一平面后的形状有关,具体的不做限制。

第一图形例如包括M条边,M为正整数。其中,如果第一图形为凸多边形,则M条边就是凸多边形的M条边,这M条边可以包括凸多边形的全部的边,或者包括凸多边形的部分的边。例如凸多边形为五边形,则M可以等于5,或者也可以小于5。因为有时只使用凸多边形的部分边就能够得到较为准确的结果,因此M条边就无需包括凸多边形的所有边,这样也有助于减少计算量。或者,如果第一图形为椭圆形,则M条边就是用于拟合得到该椭圆形的所有边或部分边。例如,通过对1132条边进行拟合,可以得到一个椭圆形,则M可以等于1132,或者也可以小于1132。M的取值可以取决于点云,如果点云的形状不同,则M的取值也可能有所不同,因此对于M的具体取值不做限制。

处理装置可以将第一平面划分为N个区域。其中,在处理装置的感知过程中,点云中与处理装置之间的相对位置不同的区域,或者点云中的密度不同的区域,可能观测准确度不同。所谓的观测准确度,是指点云中的区域内的点数据表征目标对象的准确度。处理装置对点云中的一个区域的观测准确度越高,表明该区域的可信赖程度越高,反之,处理装置对点云中的一个区域的观测准确度越低,表明该区域的可信赖程度越低。例如,点云中与处理装置之间的距离较近的区域,或者,点云中密度较大的区域,一般不存在自遮挡,对于点云的这些区域,点云的位置一般能够表示目标对象的真实外形,也就是说,处理装置对点云的这部分区域的观测准确度较高,使得处理装置得到的点云的这部分区域对应的目标对象的外形较为准确;而对于点云中离处理装置之间的距离较远的区域,或者,点云中密度较小的区域,就可能存在自遮挡的问题(关于自遮挡现象的介绍可参考前文),对于点云的这些区域,点云的位置所表示目标对象的外形与目标对象的真实外形之间可能有偏差,也就是说,处理装置对点云的这部分区域的观测准确性较低。

鉴于此,本申请实施例提出,可以将第一平面按照观测的可信赖程度,或者说按照观测准确度,划分为N个区域,从而便于对这N个区域分别进行考虑。例如,可信赖程度,或者说观测准确度,可以通过置信度来体现。对于第一平面的一个区域,如果处理装置对该区域进行观测的可信赖程度较高,则该区域的置信度就越高,而如果处理装置对该区域进行观测的可信赖程度较低,则该区域的置信度就越低。因此,一个区域的置信度可以指示该区域内的点数据表征目标对象的准确度。例如,置信度较高的区域也可以称为观测准确区,置信度较低的区域也可以称为观测模糊区。

根据前文的介绍可知,处理装置对点云进行观测的可信赖程度,与处理装置的位置和点云的位置有关,或者与点云的密度有关,因此,区域对应的置信度,也与处理装置的位置和点云的位置有关,或者与点云的密度有关。而一般来说,点云的密度也与处理装置的位置和点云的位置有关。例如,点云中与处理装置之间的距离较近的区域,可能密度较大,而点云中与处理装置之间的距离较远的区域,可能密度较小。因此,要表征第一平面的各个区域的观测准确度,或者说确定第一平面的各个区域的置信度,可以借助于第一位置信息,第一位置信息可以是根据处理装置的位置和点云的位置确定的,例如第一位置信息可以反映处理装置和点云之间的相对位置。例如,第一平面中与处理装置之间的距离较近的区域,对应的置信度可以较高,而第一平面中与处理装置之间的距离较远的区域,对应的置信度可以较低。因此,处理装置可以根据第一位置信息,确定至少一条辅助线,从而通过至少一条辅助线,就可以将第一平面划分为N个区域。这N个区域对应于N个置信度,其中,区域和置信度可以是一一对应的。在N个区域对应的N个置信度中,可能有部分置信度相同,或者,N个置信度均不相同。另外,对于N的取值不做限制。例如N的取值可以较大,这样使得划分粒度较低,能够得到更为准确的结果;或者,N的取值也可以较小,这样有助于减小计算量。

其中,所划分的N个区域中,可能每个区域都包括点云中的点数据,或者,也可能有些区域不包括点云中的点数据。或者说,所述的N个区域,可能每个区域都与第一图形有交集,或者也可能有些区域与第一图形没有交集。而置信度可以与点云的密度有关,那么可以理解的,所述的N个区域可以对应N个置信度,而所包括的点数据越少的区域,对应的置信度可能越小,所包括的点数据越多的区域,对应的置信度就可能越大。

在本申请实施例中,对于辅助线的个数不做限制,只要通过至少一条辅助线能将第一平面划分为N个区域即可。另外,辅助线的本质是不同的置信度的分界线(或者说是对应于不同的置信度的区域的分界线),因此对于辅助线的形状也不做限制。例如辅助线在二维空间中可以是任意的曲线或折线,且如果辅助线有多条,则不同的辅助线的形状可以相同,例如都是曲线或都是直线,或者也可以不同,例如有的辅助线是曲线,还有的辅助线是直线。

例如可参考图6A,图6A以第一图形是凸多边形且N=2为例,即,将第一平面划分为2个区域。那么,可以通过图6A中的曲线1这条辅助线将第一平面划分为2个区域,或者,也可以通过图6A中的直线2这条辅助线将第一平面划分为2个区域。对于这2个区域来说,与处理装置之间的距离是不同的,区域1与处理装置之间的距离较近,而区域2与处理装置之间的距离较远,则区域1对应的置信度较高,区域2对应的置信度较低。区域1可以称为观测准确区,区域2可以称为观测模糊区。

又例如,可参考图6B,图6B也以第一图形是凸多边形且N=2为例,即,将第一平面划分为2个区域。那么,可以通过图6B中的曲线1这条辅助线将第一平面划分为2个区域,或者,也可以通过图6B中的直线2这条辅助线将第一平面划分为2个区域。对于这2个区域来说,与处理装置之间的距离是不同的,区域1与处理装置之间的距离较近,而区域2与处理装置之间的距离较远,则区域1对应的置信度较高,区域2对应的置信度较低。区域1可以称为观测准确区,区域2可以称为观测模糊区。根据图6A和图6B可见,因为划分区域是与处理装置和点云之间的相对位置有关,因此,当处理装置的位置不同时,对区域的划分结果也会有所不同。

图6A和图6B,都是以N个区域均包括点数据为例的。或者也有可能,N个区域中有的区域不包括点数据。例如图6A中,可能区域1包括点数据,而区域2不包括点数据;或者图6B中,可能区域1包括点数据,而区域2不包括点数据。

处理装置根据第一位置信息确定至少一条辅助线,较为优选的,辅助线的数量可以为1条,当然也可以为多条。根据第一位置信息确定辅助线的方式可以有多种。在此,以第一图形是凸多边形、N=2、辅助线的个数为1、且辅助线是直线为例,介绍一种确定辅助线的方式:1)处理装置确定对目标对象进行扫描时确定最左端的扫描线与最右端的扫描线,如图6A或图6B中的两条虚线所示;2)处理装置选择这两条扫描线与凸多边形(即第一图形)的两个交点为两个扫描端点,如图6A或图6B中的A和B所示的两个点;3)处理装置将经过这两个端点的直线2确定为辅助线。

在前文介绍了,辅助线可以是直线,或者也可以是曲线等。下面再以第一图形是凸多边形、N=2、辅助线的个数为1、且辅助线是曲线为例,介绍一种确定辅助线的方式:1)处理装置确定对目标对象进行扫描时最左端的扫描线与最右端的扫描线,如图6A或图6B中的两条虚线所示。2)处理装置将∠AOB分成多份。可参考图6C,其中,最左端的扫描线和最右端的扫描线构成一个角度,例如将最左端的扫描线和最右端的扫描线所形成的角度称为∠AOB。例如,处理装置可以从∠AOB的点O处引出多条射线,将∠AOB覆盖的区域分成多个扇形部分。例如其中的一个部分为∠AOC覆盖的区域,其中的另一个部分为∠COD覆盖的区域,其中,C和D代表两条射线,以此类推。例如处理装置在扫描时,扫描线是逐渐移动的,可能每次移动一定的度数(例如每次移动0.2°),处理装置可以按照扫描线来将∠AOB覆盖的区域划分为多个部分,例如每个部分对应的角度为0.2°。3)对于将∠AOB划分得到的每一个部分,都可以找到临界点,将这多个部分对应的多个临界点连接起来,就可以得到一条曲线,这条曲线就可以作为一条辅助线。在将多个临界点连接起来后,还可以对连接后的线条进行平滑处理,以得到最终的辅助线。例如最终的辅助线为图6C中的曲线1。

以将∠AOB划分得到的一个部分为例,介绍一种获得临界点的方式。例如对于∠AOC覆盖的区域来说,与第一图形可以有交集。在该交集中包括一个或多个点数据。例如该交集包括的点数据的总数为F,例如可以从该交集的任一个方向(例如由靠近处理装置到远离处理装置的方向)开始对点数据进行计数,直到到达该交集的某个位置时,已计数的点数据的数量为Q,或者,已计数的点数据的数量与F的比值为第一比值,那么就可以将该位置确定为临界点所在的位置。其中,Q的取值或第一比值,可以通过协议规定,或者可以由处理装置确定,或者也可以预配置在处理装置中。

如上都是以辅助线的个数是1为例。或者,如果辅助线的个数大于1,则处理装置也可以通过其他的方式确定辅助线,对于确定辅助线的方式不做限制。

可以看出,在考虑了处理装置与点云之间的相对位置关系的前提下,处理装置与点云之间的不同的相对位置关系可能会导致得到的辅助线不同。这样就将处理装置的整个观测过程纳入了考虑范围。

S52、以M条边中的每条边作为参考边,确定一个边界框,共得到M个边界框。

第一图形对应M条边,用一条边作为参考边,可以得到一个边界框,那么根据M条边,就可以得到M个边界框。在本申请实施例中,以边界框的形状是矩形为例。例如对于M条边中的一条边来说,要确定这条边对应的边界框,可以将这条边作为边界框的一条边,以及所确定的边界框需要将第一图形包括在内,且使得该边界框中除了第一图形之外的区域的面积尽可能小,根据这种原则,就可以确定这条边所唯一对应的边界框。

可参考图7,为目标对象的示意图,目标对象例如为车辆。处理装置例如对该目标对象的车头部分进行测量(图7中的凸多边形表示对车头部分进行测量),得到车头部分对应的点云。处理装置将该点云投影到第一平面,得到第一图形,第一图形可参考图8A,为图8A中的凸多边形。处理装置根据第一位置信息,确定至少一条辅助线,并通过至少一条辅助线将第一平面划分为N个区域。在图8A中,以至少一条辅助线的个数为1,N=2为例。例如对于图8A中的第一图形来说,所述的M条边可以包括该第一图形的所有边,或者也可以包括该第一图形的部分边,例如只包括第一图形中位于辅助线下方的边。

对于M条边中的每条边,都可以按照上述方式确定对应的边界框,从而可以得到M个边界框。

另外,对于M条边来说,如果有两条边是平行的,或者是垂直的,那么只需根据这两条边中的任意一条边确定一个边界框即可,无需根据这两条边都确定边界框。因为根据这样的两条边所确定的边界框可能是相同的,因此确定一次即可,有助于减小计算量。

作为一种可选的方式,为了得到更多的边界框,使得选择范围更为宽泛,除了可以根据M条边中的每条边确定边界框之外,还可以根据辅助线确定边界框。例如,还可以将至少一条辅助线中的每条辅助线作为参考边,确定边界框,共确定P个边界框。其中,P的取值可以与至少一条辅助线的个数相同。例如,要根据图8A所示的辅助线确定边界框,因为所确定的边界框需要将第一图形包括在内,因此该辅助线不能作为边界框的一条边,而可能位于该边界框内。

如果要根据至少一条辅助线确定P个边界框,则也是同样的。对于M条边以及至少一条辅助线来说,如果有两条边是平行的,或者是垂直的,那么只需根据这两条边中的任意一条边确定一个边界框即可,无需根据这两条边都确定边界框。

S53、确定M个边界框中的每个边界框对应于N个区域的N个子损失值。也就是说,对于M个边界框中的每个边界框来说,都可以确定N个子损失值。当然,不同的边界框对应的子损失值可能相同,也可能不同。

例如对于M个边界框中的一个边界框来说(该边界框可以是M个边界框中的任意一个),该边界框对应于N个子损失值,N个子损失值中的任意一个子损失值,可以用于度量该子损失值对应的区域在该边界框侵占的自由空间中所对应的部分。该子损失值所对应的区域是指,该区域为被辅助线划分的所述N个区域中对应于该子损失值的区域。例如对于M个边界框中的每个边界框,其子损失值的含义都是类似的。一个边界框侵占的自由空间可以根据该边界框和N个区域确定。例如对于第一边界框,在第一图形所在的第一平面中,以辅助线为界,对于与第一图形有交集的区域来说,位于第一边界框内、且位于第一图形外的部分,可以称为该区域在第一边界框侵占的自由空间中对应的部分;另外,在第一图形所在的第一平面中,以辅助线为界,对于与第一图形没有交集的区域,在第一边界框侵占的自由空间中没有对应的部分,或者说,与第一图形没有交集的区域在第一边界框侵占的自由空间中对应的部分为空,或者说,第一边界框侵占的自由空间中,不包括N个区域中与第一图形没有交集的区域。可以理解为,第一边界框侵占的自由空间包括,N个区域中的与第一图形有交集的区域中,位于第一边界框内、且位于第一图形外的部分。当然此处的被边界框侵占的自由空间是对应于该边界框的。当边界框不同时,边界框所侵占的自由空间所包括的区域可能有所不同。对于每个边界框的N个区域,都有一一对应的子损失值,共N个子损失值,每个子损失值可以理解为用于表征对应区域中边界框描述点云的准确度。

为了更好理解,下面以M个边界框中的第一边界框为例来描述。对于第一边界框来说,可以对应N个子损失值,N个子损失值中例如包括第一子损失值,第一子损失值可以用于度量第一子损失值对应的区域在第一边界框侵占的自由空间中所对应的部分。其中,第一子损失值所对应的区域是指,被辅助线划分的所述N个区域中对应于第一子损失值的第一区域,另外这里的第一边界框侵占的自由空间,是指被第一边界框侵占的自由空间,或者说,是第一边界框对应的自由空间。关于第一边界框侵占的自由空间,在前文已有介绍。

在本申请实施例中,对于一个边界框来说,一个区域的子损失值,例如可以与该区域在侵占自由空间中对应的部分的面积有关,所述的侵占自由空间,是指该边界框侵占的自由空间。例如,以图8A所示的凸多边形的一条边为参考边,可以确定一个边界框,可参考图8B。图8A中,通过辅助线将凸多边形所在的平面分成了两个区域,这两个区域均包括点数据。对于图8B所示的边界框(图8B中的虚线框表示边界框)来说,斜线部分表示该边界框侵占的自由空间。图8B所示的第一平面被划分为2个区域,其中,区域1对应的置信度较高,区域2对应的置信度较低。区域1在该边界框侵占的自由空间中所对应的部分,是图8B中的“/”所示的部分,区域2在该边界框侵占的自由空间中所对应的部分,是图8B中的“\”所示的部分。那么,区域1的子损失值,可以与图8B中的“/”所示的部分的面积有关,区域2的子损失值,可以与图8B中的“\”所示的部分的面积有关。

又例如,以图9A所示的凸多边形的一条边为参考边,可以确定一个边界框,可参考图9B。图9A中,通过辅助线将凸多边形所在的平面分成了两个区域,但是其中的区域2并不包括点数据,区域1包括点数据。对于图9B所示的边界框(图9B中的虚线框表示边界框)来说,斜线部分表示该边界框侵占的自由空间。图9B所示的第一平面被划分为2个区域,其中,区域1对应的置信度较高,区域2对应的置信度较低。区域1在该边界框侵占的自由空间中所对应的部分,是图9B中的“/”所标记的部分,区域2在该边界框侵占的自由空间中没有对应的部分。那么,区域1的子损失值,可以与图9B中的“/”所标记的部分的面积有关,区域2的子损失值,可以为0。

一个区域的子损失值与该区域在边界框侵占的自由空间中对应的部分的面积有关。例如一种实现方式为,子损失值就是面积,或者另一种实现方式为,子损失值是面积的函数。N个区域中,对于与第一图形有交集的区域,因为在边界框侵占的自由空间中有对应的部分,因此这类区域对应的子损失值可以大于0;而N个区域中,对于与第一图形没有交集的区域,因为在边界框侵占的自由空间中没有对应的部分,因此这类区域对应的子损失值可以等于0。

例如,第一平面被划分为N个区域,对于一个边界框来说,这N个区域在该边界框侵占的自由空间中对应的面积例如分别为S

S54、根据每个边界框对应的N个子损失值,确定每个边界框对应的损失值。

对于M个边界框中的一个边界框来说,处理装置在得到该边界框对应的N个子损失值后,可以根据这N个子损失值得到该边界框对应的损失值。根据子损失值得到损失值的方式可以有多种,下面介绍一种。例如对于M个边界框中的第一边界框来说,第一边界框对应的子损失值可以满足如下关系:

cost=a

公式1中,cost表示第一边界框对应的子损失值,a

N个系数中的每个系数,可以大于或等于0。N个系数中,可能有部分系数相同,或者N个系数也可以均不相同。例如,N个系数可以根据置信度来确定。确定N个系数的一种原则例如为,在计算损失值时,观测准确区对应的子损失值的权重应该尽量大,而观测模糊区对应的子损失值的权重应该尽量小,或者说,置信度较高的区域对应的子损失值的权重应该尽量大,而置信度较小的区域对应的子损失值的权重应该尽量小。例如a

例如,系数a

对于M个边界框中的每个边界框,处理装置都可以按照类似的方式确定对应的N个子损失值,以及根据N个子损失值确定损失值。这样就可以确定M个边界框对应的M个损失值。在本申请实施例中,通过将边界框侵占的自由空间作为子损失值衡量的对象,可以尽量减小自遮挡的现象对观测结果的影响,相对于将第一平面内的区域的面积作为衡量对象的方式来说,本申请实施例的方式更为合理。

在本申请实施例中,处理装置可以先确定M个边界框,待M个边界框均确定完毕后,再分别确定M个边界框中的每个边界框对应的N个子损失值;或者,处理装置也可以在确定一个边界框后就确定该边界框对应的N个子损失值,之后再确定下一个边界框及其子损失值。

作为一种可选的实施方式,如果在S52中根据至少一条辅助线确定了P个边界框,那么,对于P个边界框中的每个边界框,也可以按照类似的方式确定损失值,则可以确定P个损失值。如果是这种情况,那么相当于处理装置共确定了M+P个损失值。

另外,如果是这种情况,处理装置可以先确定M个边界框,待M个边界框均确定完毕后,分别确定M个边界框中的每个边界框对应的N个子损失值,之后再确定P个边界框,待P个边界框均确定完毕后,分别确定P个边界框中的每个边界框对应的N个子损失值;或者,处理装置可以先确定M+P个边界框,待M+P个边界框均确定完毕后,分别确定M+P个边界框中的每个边界框对应的N个子损失值;或者,处理装置也可以在确定M个边界框中的一个边界框后就确定该边界框对应的N个子损失值,之后再确定下一个边界框及其子损失值,待将M个边界框和M个边界框对应的子损失值均确定完毕后,再确定P个边界框中的一个边界框,之后确定该边界框对应的N个子损失值,之后再确定P个边界框中的下一个边界框及其对应的子损失值;或者,处理装置也可以在确定一个边界框后就确定该边界框对应的N个子损失值,之后再确定下一个边界框及其子损失值,不区分边界框是属于M个边界框还是属于P个边界框。

S55、将最小的损失值对应的边界框确定为点云的边界框。

如果处理装置只是根据M条边确定了M个边界框,未根据辅助线确定边界框,那么处理装置可以确定M个边界框对应的M个损失值中的最小值,并将该最小值对应的边界框确定为点云的边界框。在这种方式下,无需考虑辅助线对应的边界框,可以减小计算量。

或者,如果处理装置既根据M条边确定了M个边界框,也根据至少一条辅助线确定了P个边界框,那么处理装置可以确定M个边界框对应的M个损失值和P个边界框对应的P个损失值(共M+P个损失值)中的最小值,并将该最小值对应的边界框确定为点云的边界框。在这种方式下,既可以考虑第一图形对应的边,也可以考虑辅助线,在选择点云的边界框时可选的范围更大,可以使得所选择的边界框更为准确。

例如,处理装置可以在将边界框对应的子损失值均确定完毕后,再确定边界框对应的损失值;或者,处理装置在确定一个边界框对应的N个子损失值后,就可以确定该边界框对应的损失值,之后再确定下一个边界框对应的子损失值以及对应的损失值。

在本申请实施例中,第一位置信息例如可以表示处理装置与点云之间的相对位置,从而可以根据处理装置与点云之间的相对位置,将点云中的第一平面划分为N个区域,对每个区域分别计算子损失值,这样就相当于在计算子损失值时考虑了处理装置与对象之间的相对位置。通过这种方式确定边界框,可以尽量减小自遮挡现象对观测结果的影响,提高了边界框的稳定性和合理性,提高对目标对象的观测结果的准确性,进而可以提高后续对目标对象的追踪或识别等处理过程的准确性。而且本申请实施例在计算损失值时,计算的是边界框侵占的相应区域的自由空间的度量,这也有助于减小自遮挡现象对观测结果的影响,这也就使得所确定的边界框更为准确。

下面结合附图介绍本申请实施例中用来实现上述方法的装置。因此,上文中的内容均可以用于后续实施例中,重复的内容不再赘述。

本申请实施例可以对处理装置进行功能模块的划分,例如,可对应各个功能划分各个功能模块,也可将两个或两个以上的功能集成在一个功能模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

例如,以采用集成的方式划分处理装置各个功能模块的情况下,图10示出了本申请上述实施例中所涉及的处理装置的一种可能的结构示意图。该处理装置10例如为图5所示的实施例所涉及的处理装置,或者处理装置10也可以是设置在探测设备中的芯片或其他功能部件,探测设备例如为雷达(或,雷达装置)。该处理装置10可以包括处理模块1001和收发模块1002。当处理装置10是雷达时,处理模块1001可以是处理器,例如基带处理器,基带处理器中可以包括一个或多个中央处理单元(central processing unit,CPU),收发模块1002可以是收发器,可以包括天线和射频电路等。当处理装置10是具有上述雷达功能的部件时,处理模块1001可以是处理器,例如基带处理器,收发模块1002可以是射频单元。当处理装置10是芯片系统时,处理模块1001可以是芯片系统的处理器,可以包括一个或多个中央处理单元,收发模块1002可以是芯片系统(例如基带芯片)的输入输出接口。

其中,处理模块1001可以用于执行图5所示的实施例中由处理装置所执行的除了采集点云的操作之外的全部操作,例如S51~S55,和/或用于支持本文所描述的技术的其它过程。收发模块1002可以用于执行图5所示的实施例中由处理装置所执行的全部采集操作,例如采集目标对象的点云的操作,和/或用于支持本文所描述的技术的其它过程。

另外,收发模块1002可以是一个功能模块,该功能模块既能完成发送操作也能完成接收操作,例如收发模块1002可以用于执行由处理装置10所执行的全部发送操作和接收操作,例如,在执行发送操作时,可以认为收发模块1002是发送模块,而在执行接收操作时,可以认为收发模块1002是接收模块;或者,收发模块1002也可以是两个功能模块的统称,这两个功能模块分别为发送模块和接收模块,发送模块用于完成发送操作,例如发送模块可以用于执行由处理装置10所执行的全部发送操作,接收模块用于完成接收操作,例如接收模块可以用于执行由处理装置10所执行的全部接收操作。

或者,收发模块1002也可以不属于处理装置10,例如收发模块1002和处理装置10都位于同一个车辆中,收发模块1002例如为该车辆中的通信单元,收发模块1002和处理装置10可以通信,此时处理装置10可以不需要主动探测目标,仅基于收发模块1002接收到的点云数据进行处理。

例如,处理模块1001,用于根据第一位置信息将第一图形所在的第一平面划分为N个区域,所述第一位置信息是根据处理装置的位置和点云的位置确定的,所述第一图形为将所述点云投影到所述第一平面得到的二维图形,所述第一图形包括M条边,所述点云为收发模块1002对目标对象进行测量得到的点数据集合,N为大于或等于2的整数,M为正整数;

处理模块1001,还用于以所述M条边中的每条边作为参考边,确定一个边界框,共得到M个边界框;

处理模块1001,还用于确定所述M个边界框中的每个边界框对应于所述N个区域的N个子损失值,所述N个子损失值中的第一子损失值,用于度量所述第一子损失值对应的区域在所述每个边界框侵占的自由空间中所对应的部分,所述每个边界框侵占的自由空间是根据所述每个边界框和所述N个区域确定的;

处理模块1001,还用于根据所述N个子损失值,确定所述每个边界框对应的损失值;

处理模块1001,还用于将最小的损失值对应的边界框确定为所述点云的边界框。

作为一种可选的实施方式,处理模块1001用于通过如下方式根据第一位置信息将第一图形所在的第一平面划分为N个区域:

根据所述第一位置信息,确定至少一条辅助线;

根据所述至少一条辅助线将所述第一平面划分为所述N个区域。

作为一种可选的实施方式,

处理模块1001,还用于以所述至少一条辅助线中的每条辅助线作为参考边,确定一个边界框,共确定P个边界框;

处理模块1001用于通过如下方式将最小的损失值对应的边界框确定为所述点云的边界框:

将所述M个边界框以及所述P个边界框中,最小的损失值对应的边界框确定为所述点云的边界框。

作为一种可选的实施方式,所述N个区域对应于N个置信度,所述N个置信度用于指示所述N个区域内的点数据表征目标对象的准确度。

作为一种可选的实施方式,所述N个置信度是根据所述点云的密度和/或所述点云到所述处理装置的距离确定的。

作为一种可选的实施方式,所述第一图形为凸多边形或椭圆形。

作为一种可选的实施方式,所述M个边界框包括第一边界框,所述第一边界框对应于所述N个子损失值,所述N个子损失值包括所述第一子损失值,所述第一子损失值对应于所述N个区域中的第一区域,所述第一子损失值是所述第一边界框侵占的所述自由空间中对应于所述第一区域的面积,所述第一边界框侵占的所述自由空间是根据所述第一边界框和所述N个区域确定的。

作为一种可选的实施方式,所述第一边界框对应的损失值,满足如下关系:

cost=a

其中,cost表示所述第一边界框对应的损失值,a

作为一种可选的实施方式,a

图11为本申请实施例提供的处理装置的另一种可能的结构示意图。该处理装置11可以包括处理器1101和收发器1102,其功能可分别与图10所展示的处理模块1001和收发模块1002的具体功能相对应,此处不再赘述。可选的,处理装置11还可以包含存储器1103,用于存储程序指令和/或数据,以供处理器1101读取。当然,处理装置11也可以不包括存储器1103,存储器1103可以位于处理装置11外部。

图12提供了处理装置的再一种可能的结构示意图。图10~图12所提供的处理装置可以实现上述实施例中的处理装置的功能。图10~图12所提供的处理装置可以为实际通信场景中雷达装置的部分或者全部,或者可以是集成在雷达装置中或者位于雷达装置外部的功能模块,例如可以是芯片系统,具体以实现相应的功能为准,不对处理装置结构和组成进行具体限定。

该可选的方式中,处理装置12包括发射天线1201、接收天线1202以及处理器1203。进一步可选的,处理装置12还包括混频器1204和/或振荡器1205。进一步可选的,处理装置12还可以包括低通滤波器和/或定向耦合器等。其中,发射天线1201和接收天线1202用于支持处理装置12进行无线电通信,发射天线1201支持雷达信号的发射,接收天线1202支持雷达信号的接收和/或反射信号的接收,以最终实现探测功能。处理器1203执行一些可能的确定和/或处理功能。进一步,处理器1203还控制发射天线1201和/或接收天线1202的操作。具体的,需要发射的信号通过处理器1203控制发射天线1201进行发射,通过接收天线1202接收到的信号可以传输给处理器1203进行相应的处理。处理装置12所包含的各个部件可用于配合执行图5所示的实施例所提供的方法。可选的,处理装置12还可以包含存储器,用于存储程序指令和/或数据。其中,发射天线1201和接收天线1202可以是独立设置的,也可以集成设置为收发天线,执行相应的收发功能。

图13为本申请实施例提供的一种装置13的结构示意图。图13所示的装置13可以是处理装置本身,或者可以是能够完成处理装置的功能的芯片或电路,例如该芯片或电路可以设置在雷达装置中。图13所示的装置13可以包括处理器1301(例如处理模块1001可以通过处理器1301实现,处理器1101与处理器1301例如可以是同一部件)和接口电路1302(例如收发模块1002可以通过接口电路1302实现,收发器1102与接口电路1302例如为同一部件)。该处理器1301可以使得装置13实现图5所示的实施例所提供的方法中处理装置所执行的步骤。可选的,装置13还可以包括存储器1303,存储器1303可用于存储指令。处理器1301通过执行存储器1303所存储的指令,使得装置13实现图5所示的实施例所提供的方法中处理装置所执行的步骤。

进一步的,处理器1301、接口电路1302和存储器1303之间可以通过内部连接通路互相通信,传递控制和/或数据信号。存储器1303用于存储计算机程序,处理器1301可以从存储器1303中调用并运行计算机程序,以控制接口电路1302接收信号或发送信号,完成图5所示的实施例所提供的方法中处理装置所执行的步骤。存储器1303可以集成在处理器1301中,也可以与处理器1301分开设置。

可选地,若装置13为设备,接口电路1302可以包括接收器和发送器。其中,接收器和发送器可以为相同的部件,或者为不同的部件。接收器和发送器为相同的部件时,可以将该部件称为收发器。

可选地,若装置13为芯片或电路,则接口电路1302可以包括输入接口和输出接口,输入接口和输出接口可以是相同的接口,或者可以分别是不同的接口。

可选地,若装置13为芯片或电路,装置13也可以不包括存储器1303,处理器1301可以读取该芯片或电路外部的存储器中的指令(程序或代码)以实现图5所示的实施例所提供的方法中处理装置执行的步骤。

可选地,若装置13为芯片或电路,则装置13可以包括电阻、电容或其他相应的功能部件,处理器1301或接口电路1302可以通过相应的功能部件实现。

作为一种实现方式,接口电路1302的功能可以考虑通过收发电路或收发的专用芯片实现。处理器1301可以考虑通过专用处理芯片、处理电路、处理器或通用芯片实现。

作为另一种实现方式,可以考虑使用通用计算机的方式来实现本申请实施例提供的处理装置。即,将实现处理器1301、接口电路1302的功能的程序代码存储在存储器1303中,处理器1301通过执行存储器1303存储的程序代码来实现处理器1301、接口电路1302的功能。

其中,以上列举的装置13中各模块或单元的功能和动作仅为示例性说明,装置13中各功能单元可用于执行图5所示的实施例中处理装置所执行的各动作或处理过程。这里为了避免赘述,省略其详细说明。

再一种可选的方式,当使用软件实现处理装置时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地实现本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。

需要说明的是,用于执行本申请实施例提供的方法的上述处理装置中所包含的处理器可以是中央处理器(central processing unit,CPU)、通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application-specific integratedcircuit,ASIC),现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件,硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。

结合本申请实施例所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read-only memory,ROM)存储器、可擦除可编程只读存储器(erasable programmable read-onlymemory,EPROM)、电可擦除可编程只读存储器(electrically erasable programmableread-only memory,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(compact disc read-onlymemory,CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于处理装置中。当然,处理器和存储介质也可以作为分立组件存在于处理装置中。

可以理解的是,图10~图13仅仅示出了处理装置的简化设计。在实际应用中,处理装置可以包含任意数量的收发器,处理器,控制器,存储器以及其他可能存在的元件。

如果处理装置不包括收发模块,那么本申请实施例还提供一种探测系统,其包含执行本申请上述实施例所提到的处理装置和通信单元,通信单元就用于执行上述的处理装置中的收发模块(例如收发模块1002)所执行的步骤。该探测系统可以是一个设备,各个装置都位于该设备中,作为该设备的功能模块,或者,该探测系统也可以包括多个设备,处理装置和通信单元等分别位于不同的设备中。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。

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

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

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

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

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

相关技术
  • 一种确定点云的边界框的方法及装置
  • 一种基于线性拟合的目标点云3D边界框拟合方法
技术分类

06120112984190