一种目标边界框的调整方法、装置、设备及存储介质与流程

文档序号:21782706发布日期:2020-08-07 20:14阅读:125来源:国知局
一种目标边界框的调整方法、装置、设备及存储介质与流程

本发明实施例涉及目标检测技术,尤其涉及一种目标边界框的调整方法、装置、设备及存储介质。



背景技术:

在无人驾驶、安防等领域中,通常部署有多传感器融合感知模块,多传感器融合感知模块在三维空间中获取感知数据以实现目标检测。

以车辆作为目标的示例,当利用视觉或激光传感器获取点云后,对点云进行采样、分类、分割,当提取出属于车辆的点云后,找到车辆的边界框,为自动驾驶车辆提供准确真实的周边环境。

但是,上述技术由于受到激光雷达本身特性及噪声的影响,其收集到的点云是稀疏的,通过训练识别模型提取出来的边界框的准确性较低,往往与目标存在偏差。



技术实现要素:

本发明实施例提供一种目标边界框的调整方法、装置、设备及存储介质,以解决训练识别模型提取出来的边界框的准确性较低的问题。

第一方面,本发明实施例提供了一种目标边界框的调整方法,该方法包括:

获取目标的初始点云及包围所述初始点云的初始边界框;

将所述初始点云转换为表示目标轮廓的目标点云;

根据所述初始边界框对所述目标点云分区域进行处理,生成表示所述目标轮廓的目标直线;

使用所述目标直线调整所述初始边界框,得到目标边界框。

第二方面,本发明实施例还提供了一种目标边界框的调整装置,该装置包括:

点云获取模块,用于获取目标的初始点云及包围所述初始点云的初始边界框;

点云转换模块,用于将所述初始点云转换为表示目标轮廓的目标点云;

处理模块,用于根据所述初始边界框对所述目标点云分区域进行处理,生成表示所述目标轮廓的目标直线;

目标边界框确定模块,用于使用所述目标直线调整所述初始边界框,得到目标边界框。

第三方面,本发明实施例还提供了一种计算机设备,该设备包括:

一个或多个处理器;

存储器,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的目标边界框的调整方法。

第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的目标边界框的调整方法。

本发明实施例通过获取目标的初始点云及包围初始点云的初始边界框,将初始点云转换为表示目标轮廓的目标点云,根据初始边界框对目标点云分区域进行处理,生成表示目标轮廓的目标直线,使用目标直线调整初始边界框,得到目标边界框。一方面,复用原有检测边界框的方案,可以保证减少对原有检测边界框的方案的修改,使得后续的调整可以无缝与原有检测边界框的方案对接,降低成本,减少对检测边界框的方案的资源浪费,如不浪费原有检测边界框的方案中对大量的点云进行标注,以此为样本进行反复训练,另一方面,原有检测边界框的方案已检测出初始边界框,该初始边界框具有一定的精确度,为初始边界框为参考进行调整,计算量小,技术难度低,而且,基于目标的轮廓对初始边界框进行调整,使得目标边界框更加贴近目标的轮廓,从而提高目标边界框的精确度。

附图说明

图1是本发明实施例一提供的一种目标边界框的调整方法的流程图;

图2是本发明实施例二提供的一种目标边界框的调整方法的流程图;

图3是本发明实施例二中表示车辆的轮廓比例的示意图;

图4是本发明实施例二中表示获取目标轮廓的目标点云的示意图;

图5是本发明实施例二中表示将目标点云划分至两个区域的示意图;

图6a是本发明实施例二提供的一种生成目标直线的方法的流程图;

图6b是本发明实施例二提供的一种生成目标直线的方法的流程图;

图7是本发明实施例二中表示目标边界框的调整的示意图;

图8是本发明实施例三提供的一种目标边界框的调整装置的结构框图;

图9是本发明实施例四提供的一种计算机设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1为本发明实施例一提供的一种目标边界框的调整方法的流程图,本实施例可适用于在目标已有的初始边界框的基础上,根据目标的轮廓对初始边界框进行调整,得到目标边界框的情况,该方法可以目标边界框的调整装置执行,该目标边界框的调整装置可以由软件和/或硬件来实现,可配置在计算机设备中,例如,服务器、工作站、移动终端、车辆、扫地机器人等,该方法具体包括如下步骤:

s101、获取目标的初始点云及包围初始点云的初始边界框。

在本实施例中,目标表示寻求的对象,在不同的业务领域中,目标有所不同,例如,在无人驾驶领域中,目标可以是车辆、人和障碍物等对象;在安防领域中,目标可以为人,等等。

点云表示为点的集合,其中每个点都具有一个三维空间下的坐标信息(x,y,z),初始点云属于点云,表示为初始点云是为了在本实施例中区分不同的点云。

在具体实现中,点云一般可以通过视觉或激光传感器获取得到,例如,双目摄像头作为一种视觉传感器,可以将拍摄的场景图片转换为深度图,再从深度图中获取得到点云;激光雷达作为无人驾驶领域常用的激光传感器,是一种使用激光对物体进行探测和测距的设备,其内部具有一种旋转结构,能够每秒钟向环境发送数百万光脉冲,最终实现周围环境的三维点云地图的建立。

本实施例中所提及的目标的初始点云表示在选定目标范围内的点云,该选定目标范围内的点云表示被视觉或激光雷达传感器扫描到的全部相关点云,可以通过对三维点云地图进行点云的分割提取得到。

需要说明的是,在不同的业务领域中,技术人员可以根据实际情况选定作为目标的对象以及传感器。

例如,若本实施例应用在无人驾驶领域的车辆中,则可以设置目标为其他车辆,在当前车辆中安装激光雷达作为传感器,在无人驾驶的过程中检测其他车辆,此时,目标的初始点云用于表示车辆范围内的点云,包括车身形状的外部轮廓点云、表示车内人和物的点云等噪点,并且由于激光雷达本身的特性,采集到的点云是稀疏的,只含有车辆的一部分信息数据。当然,除了车辆之外,还可以设置其他对象为目标,例如,人、障碍物,等等,本实施例对此不加以限制。

初始边界框属于边界框,表示为初始边界框是为了在本实施例中区分不同的边界框,边界框为包围点云边界的几何图形,一般情况下,初始边界框表示为矩形框,该矩形框能够容纳表示目标的初始点云。

初始边界框可通过手动标注数据得到,也可通过训练识别模型获得,本实施例对此不加以限制。

在本实施例中,以无人驾驶领域作为业务领域的示例,通过激光雷达直接扫描驾驶场景获取得到三维点云地图,以车辆作为目标,获取初始点云及初始边界框的具体操作如下:首先对三维点云地图进行车辆信息标注、分类等点云预处理,其次将大量预处理后的点云输入神经网络中进行反复训练,再用训练好的网络识别模型对三维点云地图进行车辆检测、识别和提取,最终获取本实施例中的初始点云及包围初始点云的初始边界框,该初始点云即包含至少一台车辆全部或部分信息的点云。

s102、将初始点云转换为表示目标轮廓的目标点云。

轮廓为构成目标的外缘线条,根据目标的不同,其轮廓也有所不同,比如,车的轮廓呈扁长的形状,人的轮廓呈高瘦的形状。表示目标轮廓的目标点云为构成目标的外缘线条的点云,由于噪声和传感器本身的特性,构成目标的外缘线条的点云与目标的外缘线条一般存在差异。

在本实施例中,可以根据目标的特性从初始点云中去除表示非轮廓的噪点(点云),从而获得目标点云,例如,利用目标的几何特性——平行、垂直,对目标的初始点云进行筛选,或者,对目标的初始点云采用统计方法去除非轮廓的噪点,可以统计点云中每个点邻域内的点个数,还可以计算邻域点的法向量,等等。

如在一个具体的实施方式中,表示目标轮廓的目标点云可以通过如下手段获得:首先,对初始点云进行数据预处理操作,数据预处理操作一般包括点云降采样和点云滤波,该预处理操作可以减少数据的计算量,同时能够进一步地剔除点云的噪声;再者,采用统计方法对预处理过后的点云数据筛选,最终获取表示目标轮廓的目标点云。其中,更为具体地,点云降采样可以通过三维体素网格滤波、均匀降采样等算法实现,滤波去噪可以通过邻域滤波、条件滤波等算法实现。

s103、根据初始边界框对目标点云分区域进行处理,生成表示目标轮廓的目标直线。

在本实施例中,以初始边界框作为参考,寻找表示目标轮廓的直线,作为目标直线,该目标直线为构成目标对象的外缘线条中的任一一条,跟目标轮廓的整体趋势尽可能的贴合一致。

目标点云位于初始边界框内,将目标点云按照预设的处理规则划分两个或两个以上的区域,在不同的区域中分别拟合目标点云与目标直线之间的关系,从而统合出最终的目标直线。

其中,该预设的处理规则可以参考空间位置信息进行设定,例如,参考距离的远近、夹角的大小等。

如在一个具体的实施方式中,根据初始边界框的限定范围,对属于该初始边界框内的所有目标点云进行区域划分,可以划分成至少两个区域,对每个区域内的点云进行聚类,依据聚类得到的信息将该区域的点云进行拟合,最终可以得到不同的直线,再将这些直线进行聚合,获得目标直线。

s104、使用目标直线调整初始边界框,得到目标边界框。

在本实施例中,由于目标直线是参考初始边界框生成的,因此,使用目标直线调整初始边界框,得到目标边界框,可以理解为根据目标的轮廓对初始边界框进行微调,得到目标边界框。

其中,目标边界框属于边界框,表示为目标边界框是为了在本实施例中区分不同的边界框,一般情况下,目标边界框表示为矩形框,该矩形框能够容纳表示目标的目标点云。

进一步而言,可以参考初始边界框的几何特性,如边长、夹角、交点个数等,对初始边界框进行微调。

如在一个具体的实施方式中,计算目标直线与初始边界框四个顶点的距离,使用该距离对初始边界框进行位置和容纳范围的调整,最终输出更准确的目标边界框。

在本实施例中,获取目标的初始点云及包围初始点云的初始边界框,将初始点云转换为表示目标轮廓的目标点云,根据初始边界框对目标点云分区域进行处理,生成表示目标轮廓的目标直线,使用目标直线调整初始边界框,得到目标边界框。一方面,复用原有检测边界框的方案,可以保证减少对原有检测边界框的方案的修改,使得后续的调整可以无缝与原有检测边界框的方案对接,降低成本,减少对检测边界框的方案的资源浪费,如不浪费原有检测边界框的方案中对大量的点云进行标注,以此为样本进行反复训练,另一方面,原有检测边界框的方案已检测出初始边界框,该初始边界框具有一定的精确度,为初始边界框为参考进行调整,计算量小,技术难度低,而且,基于目标的轮廓对初始边界框进行调整,使得目标边界框更加贴近目标的轮廓,从而提高目标边界框的精确度。

实施例二

图2为本发明实施例二提供的一种目标边界框的调整方法的流程图,本实施例在前述实施例的基础上,对筛选目标点云、生成目标直线进行了细化,该方法具体包括如下步骤:

s201、采集目标的初始点云及获取初始边界框。

其中,采集目标的初始点云可以通过对激光雷达扫描得到的三维点云地图进行语义分割得到,也可以通过数据统计的方法从三维点云地图中获取。初始边界框可以通过训练好的神经网络识别模型得到,也可以通过人工对三维点云地图进行手动标注矩形框得到,该初始边界框只需要标注出目标所在位置的一个粗略矩形范围即可,该初始边界框能够包围表示目标范围的全部初始点云,其精度要求较低。

s202、从初始点云中去除第一干扰点云,得到第一候选点云。

第一干扰点云是指对目标的获取产生干扰的点云,因为一般传感器直接采集到的点云会包含很多非目标的其他点云及噪点,所以需要先对初始点云进行筛选。第一候选点云即为初始点云经过一次筛选后得到的点云。

在本实施例的一个示例中,以车辆为目标,第一干扰点云包括表示车顶部分的点云、表示地面的点云等等。此时,预先设置车辆的轮廓比例和采样总比例的最大值,车辆的轮廓比例指的是车身高度(车底至车门把手)与车身长度(车头至车尾)的比值,如图3所示,横向虚线框中双箭头虚线表示的是车身长度,纵向双箭头实线表示的是车身高度;采样总比例指的是采样总点数与点云总点数之间的比值,采样总点数是指表示车辆范围的初始点云通过采样方法处理之后筛选得到的采样点云总数量,其采样点云总数量是不固定的,跟表示车辆范围的初始点云的数量和选用的采样方法有关;点云总点数是指表示车辆范围的初始点云的总数量,在具体实现中,由于激光雷达传感器扫描采集点云数据的场景存在差异,每次获取的点云总数量是变化的,因此用于表示车辆范围的初始点云的总数量是不固定的,即点云总点数是不固定的,所以每次采样的点云总数量是变化的,根据点云总点数计算出来的采样总比例也是变化的。这里需要说明的是,在本实施例中,采样点云的最大数量是根据业务需求预先设定好的。

在本发明的一个实施例中,s202可以包括如下步骤:

s2021、在实时检测边框时,可将初始点云按照高度进行排序。如给出一个具体的示例,点云的高度用三维空间坐标系下的z轴方向的坐标值进行表示,将初始点云按照高度进行排序,即将初始点云中的每个点按照其对应的z坐标进行排序。

s2022、计算第一候选值,第一候选值为第二候选值与预设的采样总比例最大值中的最小值。如下公式所示,h1为第一候选值,h2为第二候选值,pmax为采样总比例的最大值。

h1=min(h2,pmax)

s2023、第二候选值为预设的采样点云的最大数量与点云总点数之间的比值。如下公式所示,cmax为采样点云的最大数量,ct为点云总点数。

h2=cmax/ct

s2024、将预设的目标的轮廓比例减去第一候选值的差值,乘以点云总点数,获得第一端点值。如下公式所示,indexmin为第一端点值,ph为预设的目标的轮廓比例。

indexmin=(ph-h1)×ct

s2025、将预设的目标的轮廓比例加上第一候选值的和值,乘以点云总点数,获得第二端点值。如下公式所示,indexmax为第二端点值,ph为预设的目标的轮廓比例。

indexmax=(ph+h1)×ct

s2026、从排序之后的初始点云中选择高度位于所述第一端点值与所述第二端点值之间的点云,作为第一候选点云。即保留初始点云中每个点的z坐标值在indexmin到indexmax范围内的点,被保留的所有点作为第一候选点云输出。

当然,上述处理方法只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他采样处理方法,本发明实施例对此不加以限制。另外,除了上述采样处理方法外,本领域技术人员还可以根据实际需要采用其它采样处理方法,本发明实施例对此也不加以限制。

s203、将第一候选点云投影至指定的平面,得到第二候选点云。

确定第一候选点云的三维空间坐标系,示例性地,以z轴作为竖直方向(垂直俯视图平面),确定第一候选点云中每个点的三维坐标(x,y,z),将第一候选点云中每个点按照z轴方向进行垂直投影,得到第二候选点云。

s204、从第二候选点云中去除第二干扰点云,得到表示目标轮廓的目标点云。

第二干扰点云为表示目标轮廓以外的干扰点云,例如,以车辆为目标,车辆轮廓是指车辆的外缘线条(车身长和车身宽),第二干扰点云即为第二候选点云中除了贴合车辆外缘线条点云的其他点云。

在本发明的一个示例中,s204可以包括如下步骤:

s2041、在指定的平面中建立极坐标系,极坐标系中具有原点。

s2042、在极坐标系中,将第二候选点云按照方位角划分至多个分组中。

如图4作为一个示例,虚线为按照方位角对极坐标系进行区域划分,图4中的散点即为第二候选点云。

s2043、在每个分组中,计算第二候选点云中每个点到极坐标系原点的距离。

例如,极坐标系原点的坐标为(x0,y0),a点的坐标为(xa,ya),则a点到原点的距离为:参见图4,a点到原点的距离d用双箭头的短划线表示。

s2044、在所有分组中,提取距离极坐标系原点最近的若干个点组成表示目标轮廓的目标点云。

在提取目标轮廓的方法中,往往会参考目标的几何特性对目标轮廓进行提取,例如目标的外缘线条的边长长度、斜率等。同理,对于目标点云的提取而言,也常常利用点云的几何特性对点云进行处理,例如,固定点云所在位置的坐标系的原点,计算点云中每个点到该原点的距离,按照该距离值对点云中每个点降序排序,选择排序前n(n为正整数)个点,被选择的点组成目标点云。

参见图4,虚线方框内的点云即为提取出来的表示目标轮廓的目标点云。

当然,上述处理方法只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他点云处理方法,本发明实施例对此不加以限制。另外,除了上述点云处理方法外,本领域技术人员还可以根据实际需要采用其它点云处理方法,本发明实施例对此也不加以限制。

在本实施例中,从初始点云中去除第一干扰点云,得到第一候选点云;将第一候选点云投影至指定的平面,得到第二候选点云;从第二候选点云中去除第二干扰点云,得到表示目标轮廓的目标点云;通过两次采样剔除干扰的点云,多维度地去除并非表示轮廓的点云,不尽可以减少点云的数量,从而降低处理点云过程中的计算量,同时能够提供更加精准的目标点云,从而提高基于目标点云生成的目标直线的精确度。

s205、在至少两个区域中,分别基于目标点云生成满足目标斜率与直线条件的候选直线。

其中,目标斜率为目标范围内的多个斜率,该目标范围起始于初始边界框的长边的斜率。预设斜率的目标范围,在目标点云中以初始边界框的长边的斜率为基准进行第一次斜率的搜索,当该斜率下的直线与目标点云中的点第一次重合时,即认为是当前斜率下直线的最终位置。

为使本领域技术人员更好地理解本申请实施例,在本说明书中,将目标范围内的目标点云划分至两个区域作为s205的一种示例进行说明,s205具体包括如下步骤:

s2051、将目标范围内的目标点云划分至两个区域中。

目标范围内的目标点云在每次更新目标斜率时、初始为所有表示目标轮廓的目标点云。

将目标范围内的目标点云划分至左右两个区域中,具体可以包括:在目标范围内的目标点云中选定一个或多个基准点;目标点云位于极坐标系中,将极坐标系中的原点与基准点所在的直线,设置为分界线;按照分界线将目标范围内的目标点云切分至两个区域中。

可选的,如图5所示,从目标点云中查找位于原点o最左侧的点,作为左端点,查找位于原点o最右侧的点,作为右端点,连接左端点和右端点,得到基准线l,查找所有目标点云中距离基准线最远的点,作为顶点d,连接坐标原点o与顶点d作为分界线od,依据该分界线对目标点云进行切分。

s2052、在每个区域中,基于目标点云生成满足目标斜率的候选直线。

s2053、判断每个区域中对应的候选直线是否满足预设的直线条件;若是,则执行s2054,若否,则执行s2055。

其中,预设的直线条件可以包括:针对每个区域,计算区域内的目标点云与其对应的候选直线的偏离程度;判断该偏离程度是否小于预设的阈值;若是,则确定候选直线不符合预设的直线条件;若否,则确定候选直线符合预设的直线条件。

可选的,预设的直线条件可以是:计算区域内的目标点云中的每个点到该区域候选直线的距离,对所有距离取倒数,以该倒数与预设的参考距离之间的最小值作为点偏移值,对所有的点偏移值进行求和,再对和值取平均数,将最终得到的结果作为该区域候选直线的偏离程度。如下公式可知,d0为预设的参考距离值,d表示目标点云中每个点到候选直线的距离,s1代表偏移程度。

可选的,预设的直线条件还可以是:计算区域内的目标点云中的每个点到该区域候选直线的距离,通过对所有距离的平方求和,再取平均值,以平均值的负值作为该区域候选直线的偏离程度。如下公式可知,表示目标点云中每个点到候选直线的距离,s2代表偏移程度。

s2054、输出所有区域对应的候选直线。

s2055、将该点云区域设置为目标范围,返回执行s2051至s2053。

优选的,s2051至s2053循环过程的结束条件除了满足预设的直线条件,还可以包括:点云所在区域的点数量过少,或者区域内直线数量达到预设直线数量的最大值。

s206、若每个区域中的候选直线符合预设的聚合条件,则将该候选直线合成为表示目标轮廓的目标直线。

其中,预设的聚合条件可以是判断候选直线是否相邻且平行;若候选直线中存在相邻且平行的直线,则将这些满足要求的直线输入s206,得到最终合成的直线,该直线即是表示目标轮廓的目标直线。

为使本领域技术人员更好地理解本发明实施例,下面给出两个具体示例对上述方案进行说明。

示例一、生成目标直线的具体步骤如图6a所示,步骤说明如下:

s6101、将目标范围内的目标点云划分至两个区域。

s6102、在每个区域内搜索满足目标斜率的候选直线。

s6103、计算每个区域内的候选直线的偏离程度。

s6104、判断每个区域对应的候选直线的偏离程度是否大于预设的阈值,若是,执行s6106,若否,则执行s6105。

s6105、将该候选直线所属的点云区域设置为目标范围,返回执行s6101至s6104,直到该点云区域生成的候选直线的偏离程度大于预设的阈值。

s6106、输出所有区域对应的候选直线。

s6107、判断s6106输出的所有的候选直线是否相邻,若是,执行s6109,若否,则执行s6108。

s6108、将全部点云区域设置为目标范围,并且重新设置目标斜率,返回执行s6101至s6107,直到所有的候选直线都相邻。

s6109、合成候选直线。

s6110、输出目标直线。

示例二、生成目标直线的具体步骤如图6b所示,步骤说明如下:

s6201、将目标范围内的目标点云划分至两个区域。

s6202、设置目标范围内的多个目标斜率,在每个区域内搜索满足目标斜率的候选直线。

s6203、计算每个区域内的候选直线的偏离程度。

s6204、在每个区域,输出偏离程度大于预设的阈值的候选直线。

s6205、判断不同区域输出的候选直线是否存在至少一组相邻且平行的直线,若是,执行s6207,若否,则执行s6206。

s6206、将任一区域设置为目标范围,返回执行s6201至s6205,直到不同区域输出的候选直线存在至少一组相邻且平行的直线。

s6207、合成候选直线。

s6208、输出目标直线。

当然,上述生成目标直线的处理方法只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他处理方法,本发明实施例对此不加以限制。另外,除了上述处理方法外,本领域技术人员还可以根据实际需要采用其它处理方法,本发明实施例对此也不加以限制。

s207、根据目标直线调整初始边界框,输出目标边界框。

为使本领域技术人员更好地理解本发明实施例,以下通过具体的示例来说明本发明实施例中目标边界框的调整方法。

确定目标直线与初始车辆边界框的相交线段中长度最长的线段,同时该线段还应该满足与初始车辆边界框的夹角小于预设的夹角阈值,同时满足上述两个条件的目标线段可以作为目标边界框的长边。计算初始边界框的角点与该目标线段之间的距离,作为投影距离;将值最大的投影距离设置为目标边界框的短边的边长;基于长边与短边的边长生成目标边界框。如图7所示,初始边界框用实线矩形框表示,虚线矩形框表示经过调整后的目标边界框。

当然,上述目标边界框的调整方法只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他调整方法,本发明实施例对此不加以限制。另外,除了上述调整方法外,本领域技术人员还可以根据实际需要采用其它的调整方法,本发明实施例对此也不加以限制。

在本实施例中,在至少两个区域中,分别基于目标点云生成满足目标斜率与直线条件的候选直线,目标斜率为目标范围内的多个斜率,目标范围起始于初始边界框的长边的斜率,若每个区域中的候选直线符合预设的聚合条件,则将候选直线合成为表示目标轮廓的目标直线,区域越小,目标点云越少,拟合的候选直线越精确,通过分区域拟合与目标点云适配的候选直线,再拟合为目标直线,可以保证拟合的精确度,并且,使用二分法的思想在空间的维度上划分区域,尽可能减少区域的数量,从而尽可能降低计算量。

实施例三

图8为本发明实施例三提供的一种目标边界框的调整装置的结构框图,该装置可由软件和\或硬件来实现。该装置包括:点云获取模块801、点云转换模块802、处理模块803和目标边界框确定模块804,其中,

点云获取模块801,用于获取目标的初始点云及包围初始点云的初始边界框;

点云转换模块802,用于将初始点云转换为表示目标轮廓的目标点云;

处理模块803,用于根据初始边界框对目标点云分区域进行处理,生成表示目标轮廓的目标直线;

目标边界框确定模块804,用于使用目标直线调整所述初始边界框,得到目标边界框。可选的是,目标边界框确定模块804,包括:

长边确定单元,用于确定目标直线位于初始边界框内的线段,为目标边界框的长边;

投影距离计算单元,用于计算初始边界框的角点与目标直线之间的距离,作为投影距离;

短边确定单元,用于将值最大的投影距离设置为目标边界框的短边的边长;

目标边界框输出单元,用于输出基于长边与短边的边长生成的目标边界框。

上述方案中,可选的是,所述点云转换模块802,包括:

第一候选点云获取模块,用于从初始点云中去除第一干扰点云,得到第一候选点云。

可选的是,所述第一候选点云获取模块,包括如下单元:

排序单元,用于将所述初始点云按照高度进行排序;

第一参数获取单元,用于将预设的目标轮廓比例减去第一候选值的差值,乘以所述初始点云的总数量,获得第一端点值;

第二参数获取单元,用于将所述轮廓比例加上第一候选值的和值,乘以所述初始点云的总数量,获得第二端点值;

第一候选点云确定单元,用于从排序之后的初始点云中选择高度位于所述第一端点值与所述第二端点值之间的点云,作为第一候选点云。

其中,第一候选值为第二候选值与预设的采样总比例中的最小值,第二候选值为采样点云的最大数量与初始点云的总数量之间的比值。

第二候选点云获取模块,用于将第一候选点云投影至指定的平面,得到第二候选点云。

目标点云获取模块,用于从第二候选点云去除第二干扰点云,得到表示所述目标轮廓的目标点云。

可选的是,目标点云获取模块,包括如下单元:

坐标计算单元,用于在平面中建立极坐标系,该极坐标系中具有原点;

方位角计算单元,用于在极坐标系中,将第二候选点云按照方位角划分至多个分组中;

点云测距单元,用于针对不同分组,计算第二候选点云中每个点到原点的距离;

目标点云输出单元,用于针对不同分组,提取距离最小的若干点作为表示目标轮廓的目标点云。

上述方案中,可选的是,处理模块803,包括:

候选直线获取模块,用于在至少两个区域中,分别基于目标点云生成满足目标斜率与直线条件的候选直线,该目标斜率为目标范围内的多个斜率,目标范围起始于初始边界框的长边的斜率;

目标直线确定模块,用于筛选每个区域中符合预设的聚合条件的候选直线,并将满足条件的候选直线合成为表示车辆目标轮廓的目标直线。可选的是,目标直线确定模块,包括:

条件判断单元,用于判断每个所述区域中的所述候选直线是否相邻且平行;

目标直线输出单元,用于接收条件判断单元的输出指令,确定候选直线符合预设的聚合条件,基于与候选直线相关的目标点云生成表示目标轮廓的目标直线,该目标直线的斜率与候选直线的目标斜率相同,并且,所有目标点云位于目标直线的一侧。

上述方案中,可选的是,所述候选直线获取模块,包括:

区域划分单元,用于将目标范围内的目标点云划分至两个区域中,该目标范围内的目标点云在每次更新目标斜率时、初始为所有表示车辆目标轮廓的目标点云;可选的是,区域划分单元,包括:

基准点确定子单元,用于在目标范围内的目标点云中选定一个或多个基准点;

分界线设置子单元,用于将原点与基准点所在的直线,设置为分界线;

划分执行子单元,用于按照分界线将目标范围内的目标点云划分至两个区域中。

候选直线计算单元,用于在每个区域中计算候选直线,该直线满足目标范围内的目标斜率;

直线条件判断单元,用于判断每个区域对应的候选直线是否满足预设的直线条件。

可选的是,该直线条件判断单元包括:

偏离计算子单元,用于针对每个区域,计算目标点云与候选直线的偏离程度;

偏离程度判断子单元,用于判断偏离程度是否小于预设的阈值;

第一输出子单元,用于接收偏离程度判断子单元的输出指令,确定候选直线不符合预设的直线条件;

第二输出子单元,用于接收偏离程度判断子单元的输出指令,确定候选直线符合预设的直线条件。

输出单元,用于接收直线条件判断单元的输出指令,输出所有区域对应的候选直线。

回调处理单元,用于接收直线条件判断单元的输出指令,将当前区域设置为目标范围,返回至区域划分单元。

本发明实施例所提供的目标边界框的调整装置可执行本发明任意实施例所提供的目标边界框的调整方法,具备执行方法相应的功能模块和有益效果。

实施例四

图9为本发明实施例四提供的一种计算机设备的结构示意图。如图9所示,该计算机设备包括处理器901、存储器902、输入装置903和输出装置904;计算机设备中处理器901的数量可以是一个或多个,图9中以一个处理器901为例;计算机设备中的处理器901、存储器902、输入装置903和输出装置904可以通过总线或其他方式连接,图9中以通过总线连接为例。

存储器902作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本实施例中的目标边界框的调整方法对应的程序指令/模块(例如,目标边界框的调整装置中的点云获取模块801、点云转换模块802、处理模块803和目标边界框确定模块804)。处理器901通过运行存储在存储器902中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的用于计算机设备的操作。

存储器902可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器902可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器902可进一步包括相对于处理器901远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置903可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置904可包括显示屏等显示设备。

本实施例提供的计算机设备,可执行本发明任一实施例提供的目标边界框的调整方法,具备相应的功能和有益效果。

实施例五

本发明实施例五还提供一种包含计算机可执行指令的存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例提供的目标边界框的调整方法。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明任意实施例所述的方法。

值得注意的是,上述目标边界框的调整装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1