点云数据中标注对象的方法及装置与流程

文档序号:25521252发布日期:2021-06-18 20:08阅读:129来源:国知局
点云数据中标注对象的方法及装置与流程

本申请涉及无人驾驶技术领域,尤其涉及点云数据中标注对象的方法及装置。



背景技术:

无人驾驶技术是交通工具的一次重要变革,无论对于交通安全还是交通便捷来说,都具有十分重要的意义。目前,无人驾驶技术正在不断发展,因此,无人驾驶汽车代替传统的手动驾驶汽车也是指日可待。

在无人驾驶过程中,需要识别车辆周围的环境,环境中主要包括人、车、道路、交通设施等对象。相关技术中主要利用机器学习模型从点云数据中识别出周围环境中的目标对象。而机器学习模型的构建需要依赖大量的标注有目标对象的点云样本数据,因此,准确地标注出点云数据中的对象是比较重要的任务。相关技术中主要采用人工标注的方式在点云数据进行标注,这种标注方式比较低效且依赖于肉眼识别的能力。点云数据往往由多个特征点组成,整体图像比较抽象,很多时候肉眼容易分辨错误甚至无法分辨出其中的对象的类型。

因此,相关技术中亟需一种高效且准确的在点云数据中标注对象的方式。



技术实现要素:

本申请实施例的目的在于提供一种点云数据中标注对象的方法及装置,可以快速准确地标注出点云数据中的对象。

本申请实施例提供的点云数据中标注对象的方法及装置是这样实现的:

根据本公开实施例的第一方面,提供一种点云数据中标注对象的方法,包括:

获取点云数据以及与所述点云数据具有映射关系的图像数据;

在所述图像数据中标注目标对象;

基于所述映射关系,在所述点云数据中标注所述目标对象。

可选的,所述在所述图像数据中标注目标对象包括:

将所述图像数据输入至对象标注模型组件,经所述对象标注模型组件识别并标注出所述图像数据中的目标对象。

可选的,所述基于所述映射关系,在所述点云数据中标注所述目标对象,包括:

基于所述映射关系,确定所述目标对象在所述点云数据中的位置;

定位到所述点云数据的所述位置处,并获取所述目标对象至少一种参数的参数值;

在确定所述目标对象的所述至少一种参数的参数值符合预设规则的情况下,在所述点云数据中标注所述目标对象。

可选的,所述基于所述映射关系,在所述点云数据中标注所述目标对象,包括:

基于所述映射关系,确定所述目标对象在所述点云数据中的位置;

定位到所述点云数据的所述位置处,并获取所述目标对象在所述点云数据中的至少一个视图;

在识别出所述目标对象在所述至少一个视图中的类型与在所述图像数据中被标注的类型相匹配的情况下,在所述点云数据中标注所述目标对象。

可选的,所述识别出所述目标对象在所述至少一个视图中的类型,包括:

分别将所述至少一个视图输入至类型判别模型组件,经所述类型判别模型组件输出所述目标对象的类型。

可选的,所述基于所述映射关系,在所述点云数据中标注所述目标对象,包括:

确定所述目标对象的图像与同类型对象的图像之间的相似程度;

在确定所述相似程度大于预设阈值的情况下,基于所述映射关系,在所述点云数据中标注所述目标对象。

可选的,所述同类型对象的图像的尺寸与所述目标对象在所述图像数据中的图像尺寸之间的差异小于预设尺寸阈值。

可选的,所述获取点云数据以及与所述点云数据具有映射关系的图像数据,包括:

获取同时同地采集的点云数据和图像数据;

分别获取到所述点云数据和所述图像数据的空间坐标系;

基于所述点云数据和所述图像数据的空间坐标系,构建所述点云数据和所述图像数据之间的映射关系。

根据本公开实施例的第二方面,提供一种点云数据中标注对象的方法,包括:

接收具有映射关系的图像数据和点云数据,所述图像数据和所述点云数据标注有目标对象;

基于所述映射关系,展示所述图像数据和所述点云数据;

在所述图像数据和所述点云数据中标注所述目标对象。

可选的,所述基于所述映射关系,展示所述图像数据和所述点云数据,包括:

将用户界面划分成至少两个展示区域,其中,第一展示区域用于展示图像数据,第二展示区域用于展示点云数据,所述第一展示区域展示的图像数据和所述第二展示区域展示的点云数据具有映射关系。

可选的,所述第一展示区域包括多个子展示区域,所述多个子展示区域分别用于展示从相同地点不同视角捕捉的图像数据。

可选的,所述第二展示区域包括多个子展示区域,所述多个子展示区域分别用于展示所述目标对象在不同视角上的点云视图,并分别在所述点云视图中标注出所述目标对象。

可选的,所述在所述图像数据和所述点云数据中标注所述目标对象,包括:

利用边界框在所述图像数据中圈出目标对象,并标注所述目标对象的信息;

基于所述映射关系,确定所述目标对象在所述点云数据中的位置;

在所述点云数据中的所述位置处利用边界框圈出所述目标对象,并标注所述信息。

可选的,还包括:

获取所述目标对象在点云数据中的参数信息;

在所述点云数据中标注出所述目标对象的所述参数信息。

可选的,还包括:

展示与所述目标对象同类型的多个对象的图像,所述多个对象的图像的尺寸与所述目标对象在所述图像数据中的图像尺寸之间的差异小于预设尺寸阈值。

可选的,包括:

获取点云数据以及与所述点云数据具有映射关系的图像数据;

在所述图像数据中标注目标对象;

基于所述映射关系,获取所述目标对象在所述点云数据中的至少一个视图;

在识别出所述目标对象在所述至少一个视图中的类型与在所述图像数据中被标注的类型相匹配的情况下,在所述点云数据中标注所述目标对象。

可选的,所述识别出所述目标对象在所述至少一个视图中的类型,包括:

分别将所述至少一个视图输入至类型判别模型组件,经所述类型判别模型组件输出所述目标对象的类型。

可选的,所述基于所述映射关系,获取所述目标对象在所述点云数据中的至少一个视图,包括:

确定所述目标对象在所述点云数据中的位置;

定位到所述点云数据的所述位置处,提取出所述目标对象在至少一个视角上的视图。

可选的,所述视图包括下述中的至少一种:俯视图、前视图、后视图、左视图、右视图。

根据本公开实施例的第三方面,提供一种点云数据中标注对象的方法,其特征在于,包括:

获取点云数据以及与所述点云数据具有映射关系的图像数据;

在所述图像数据中标注目标对象;

基于所述映射关系,确定所述目标对象在所述点云数据中的位置,并获取所述目标对象至少一种参数的参数值;

在确定所述目标对象的所述至少一种参数的参数值符合预设规则的情况下,在所述点云数据中标注所述目标对象。

可选的,所述参数包括尺寸、形状。

根据本公开实施例的第四方面,提供一种点云数据中标注对象的方法,其特征在于,包括:

获取点云数据以及与所述点云数据具有映射关系的图像数据;

在所述图像数据中标注目标对象;

确定所述目标对象的图像与同类型对象的图像之间的相似程度;

在确定所述相似程度大于预设阈值的情况下,基于所述映射关系,在所述点云数据中标注所述目标对象。

可选的,所述确定所述目标对象的图像与同类型对象的图像之间的相似程度,包括:

获取与所述目标对象同类型的对象的图像,所述图像的尺寸与所述目标对象在所述图像数据中的图像尺寸之间的差异小于预设尺寸阈值;

确定所述目标对象在所述图像数据中的图像与所述同类型的对象的图像之间的相似程度。

根据本公开实施例的第五方面,提供一种点云数据中标注对象的装置,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现本公开任一实施例所述的点云数据中标注对象的方法。

根据本公开实施例的第六方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由处理器执行时,使得处理器能够执行本公开任一实施例所述的点云数据中标注对象的方法。

本申请各个实施例提供的点云数据中标注对象的方法及装置,可以利用图像数据与点云数据之间的映射关系,对点云数据中的目标对象进行标注。由于图像数据比较直观,包含较多的纹理信息,因此,从图像数据中识别出目标对象比从点云数据中识别要容易许多。基于此,首先在图像数据中识别出目标对象,再基于图像数据与点云数据之间的映射关系,在点云数据中标注出所述目标对象,不仅可以提升点云数据的标注准确性,还可以提升标注的效率。尤其对于无人驾驶的应用场景,可以利用本申请提供的点云数据中标注对象的装置,自动化地在点云数据中快速、准确地标注出目标对象,生成的样本数据可以用于训练得到高性能的识别出点云数据中各个对象的模型组件。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1是根据一示例性实施例示出的一种应用场景示意图。

图2是根据一示例性实施例示出的一种应用场景示意图。

图3是根据一示例性实施例示出的一种点云数据中标注对象方法的流程示意图。

图4是根据一示例性实施例示出的一种点云数据中标注对象装置的模块结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的方法和装置的例子。

为了方便本领域技术人员理解本申请实施例提供的技术方案,下面提供示例性的应用场景,需要说明的是,这些应用场景仅为示例性的作用,并不代表本申请所涉及到的所有实施方式。

图1是利用本申请实施例的点云数据中标注对象方法的用户使用界面。如图1所示,用户界面被划分成至少两个展示区域,其中,位于左侧的第一展示区域用于展示图像数据,位于右侧的第二展示区域用于展示点云数据,所述第一展示区域展示的图像数据和所述第二展示区域展示的点云数据具有映射关系。也就是说,在调整一个展示区域内的数据的情况下,可以相应地调整另一个展示区域内的数据,使得图像数据和点云数据具有映射关系,所述映射关系可以包括对应于同一个位置。

另外,对于图1中左侧部分的第一展示区域,还可以包括多个子展示区域,所述多个子展示区域分别用于展示从相同地点不同视角捕捉的图像数据。如图1左侧的第一展示区域所示,可以图1-7分别展示7个不同视角的图像数据,用户可以通过选择角度的编号,可以看到不同视角的图像。另外,还可以提供图像缩小、放大等多种功能。如图1所示,用户选择图1和图3,即正前方向和正后方向的图像。如图1中正前方向的图像所示,利用本申请实施例提供的方法可以识别出目标对象102,并利用边界框104圈出所述目标对象102,以及在所述边界框上标注该目标对象的信息,即“suv,红色”。基于预先建立的图像数据和点云数据之间的映射关系,可以在点云数据中定位出目标对象102的位置,如图1中右图所示,可以利用边界框108圈出目标对象102,并在所述边界框上标注“suv,红色,4999/2073/1835”的信息。可以发现,标注的信息不仅可以包括从所述图像数据中所移植过来的信息,还可以包括点云数据中能够测量得到的信息,如车的尺寸或者其他物体的形状等。当然,图像中还可以识别出车辆的车牌号等更多的信息,基于此,在图像中识别出的信息均可以复制到点云数据中,而点云数据中识别出的信息也可以复制到图像数据中。

如图1所示,右侧的第二展示区域包括多个子展示区域,所述多个子展示区域分别用于展示所述目标对象在不同视角上的点云视图,并分别在所述点云视图中标注出所述目标对象。如图1所示,所述第二展示区域的左上角设置有三个悬浮窗口,分别为窗口108、窗口110、窗口112,这三个窗口分别用于展示目标对象102在点云数据中的俯视图、后视图、右视图。利用所述目标对象102在点云数据中的不同视图,可以对图像数据中标注的结果进行质检。在一个实施例中,可以将所述目标对象102的任一视图输入至类型判别模型组件中,经所述类型判别模型组件判断所述目标对象102的类型。若所述类型判别模型组件判别出所述目标对象102的类型为“普通两厢轿车”,与图片中所标注的“suv”不匹配。那么,可以发出提醒消息,提醒进行人工审核。若所述类型判别模型自检判别出的类型也为“suv”,则可以确定图像数据中所标注的信息置信度较高,可以同时在所述点云数据中标注所述目标对象102。

当然,不仅可以通过所述目标对象在点云数据中的视图确定图像中的标注是否正确,还可以通过所述目标对象在所述图像数据中的图形确定标注是否正确。图2提供了多个与所述图1中所标注的目标对象的类型相同的对象图像,其中模糊处理的是不同类型的对象图形。如图1中标注出目标对象的类型为suv,那么,可以获取到多个suv的图像,并计算图1中利用边界框104所圈出的图像分别与图2中各个图像之间的相似度,若相似度越高,可以确定图像数据中标注的目标对象的类型越准确。另外,由于利用边界框104从图像数据圈出的图像为尺寸较小的图像,其像素较少,图像质量可能不是很高,那么,为了均衡计算相似度双方对象的属性,可以获取尺寸、图像质量均与利用边界框104圈出的图像相似的图像,以提升相似度计算的准确性。另外,在用户界面中展示图2所示的小图像,也有助于进行人工质检,以确定图1中利用边界框104所圈出来的图像是否与图2中的小图像相似。

对于上述图像数据和点云数据,可以通过采集车同时采集,对于图1中展示的图像数据和点云数据,可以在采集车上安装1个激光雷达以及7个分别捕捉不同方向上图像的摄像装置,在采集车行驶过程中,可以同时获取到激光点云数据和图像数据。由于激光点云数据中包括方位信息,且摄像装置的捕捉方向也是可以确定的,通常固定摄像装置的捕捉方向。基于此,可以构建在相同时刻获取的激光点云数据和图像数据之间的映射关系。在一个实施例中,所述激光雷达和所述摄像装置可以具有各自的坐标系,即分别是激光雷达坐标系和摄像装置坐标系。求解到所述激光雷达坐标系和所述摄像装置坐标系之间的坐标转换方程,即可以获取到激光点云数据和所述图像数据的映射关系,具体地,可以获取到各个激光点到图像像素之间的对应关系。

当然,所述图像数据不仅可以通过安装在采集车上的摄像装置捕捉,还可以通过基于遥感技术的摄像装置捕捉,基于遥感技术获取的图像数据可以包括航空图像和卫星图像。基于此,本申请技术方案所提供的技术方案不仅仅应用于交通场景,还可以用于地理地貌识别,如在点云数据中标注出山丘、沙漠、河流等自然地貌。另外,还可以用于识别出建筑物,如在点云数据中标注出住宅、写字楼、公园、商场等不同的建筑物,对于本申请技术方案的应用场景,在此不做限制。

基于此,在具有多种不同应用场景的情况下,对应的数据来源也不相同,可以是交通数据,可以是地理地貌数据,还可以是建筑物数据等等。那么,对于不同的数据来源,可以具有不同的数据标注方式,例如,从图像中识别出目标对象的方式、构建映射关系的方式、质检方式、点云中对象类别判别方式等等。因此,在获取不同的数据源之后,可以获取到与数据源相匹配的标注方式,如交通数据是一种标注方式,地理地貌数据是另一种标注方式,建筑物也是另一种标注方式。在实现方式中,服务器在获取到待标注的数据源之后,首先确定出数据源的类型,再根据数据源的类型加载与所述类型相匹配的标注方式。

当然,还可以设置不同精度的标注方式。对于交通数据而言,低精度的标注方式例如能够标注出车辆、行人、交通设施、建筑物等对象即可,高精度的标注方式还可以标注出车辆的车牌号、车型、颜色、大小等信息,标注出行人的身份等信息、交通设施的距离、状态等信息,建筑物的名称、位置等信息,甚至还可以统计周围的行人数量、车辆数量、白色车的数量等等。本应用场景中,可以根据用户的需求向用户提供不同精度的标注方式。

下面结合附图对本申请所述的点云数据中标注对象方法进行详细的说明。图4是本申请提供的点云数据中标注对象方法的一种实施例的方法流程示意图。虽然本申请提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在所述方法中可以包括更多或者更少的操作步骤。在逻辑性上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本申请实施例提供的执行顺序。所述方法在实际中的点云数据中标注对象过程中或者方法执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。

具体地,本申请提供的点云数据中标注对象方法的一种实施例如图3所示,所述方法可以包括:

s301:获取点云数据以及与所述点云数据具有映射关系的图像数据。

s303:在所述图像数据中标注目标对象。

s305:基于所述映射关系,在所述点云数据中标注所述目标对象。

本申请实施例中,可以获取到点云数据以及与所述点云数据具有映射关系的图像数据。所述点云数据是通过测量仪器得到的物体外观表面的点数据集合。在无人车应用场景中,点云数据可以包括激光点云数据,激光点云数据是由激光束照射到物体表面时所反射得到的携带方位、距离等信息的数据。若将激光束按照某种轨迹进行扫描,便会边扫描边记录到反射的激光点信息,由于扫描极为精细,能够得到大量的激光点,因而形成激光点云。无人驾驶环境中,通常利用激光雷达产生激光束并照射到周围的车辆、行人、交通设施等物体,以获取到3d激光点云数据。

本申请实施例中,可以获取到与所述点云数据具有映射关系的图像数据。例如,采集车在采集数据的过程中,可以在车上安装激光雷达和摄像装置,即同时扫描得到激光点云数据和捕捉得到图像数据。由于激光点云数据和图像数据是同步获取得到,因此,激光雷达扫描得到的激光点云数据和摄像装置捕捉到的图像数据可以具有映射关系。在一个示例中,可以在采集车上安装1个激光雷达以及6个分别捕捉不同方向上图像的摄像装置,在采集车行驶过程中,可以同时获取到激光点云数据和图像数据。由于激光点云数据中包括方位信息,且摄像装置的捕捉方向也是可以确定的,通常固定摄像装置的捕捉方向。基于此,可以构建在相同时刻获取的具有相同方向的激光点云数据和图像数据之间的映射关系。在一个实施例中,所述激光点云数据和所述图像数据可以具有各自的坐标系,即分别是激光雷达坐标系和摄像装置坐标系。求解到所述激光雷达坐标系和所述摄像装置坐标系之间的坐标转换方程,即可以获取到激光点云数据和所述图像数据的映射关系,具体地,可以获取到各个激光点到图像像素之间的对应关系。

在实际应用中,图像数据中包含丰富的纹理和色彩,因而图像数据中的对象识别相对比较容易,从图像数据中识别出车辆远比在点云数据中识别车辆要容易很多。基于此,在点云数据中识别出目标对象之前可以首先在图像数据中标注出目标对象,再基于点云数据和图像数据之间的映射关系,在点云数据中标注出所述目标对象。在一个实施例中,可以利用对象标注模型组件识别出所述图像数据中的目标对象。所述对象标注模型组件可以利用机器学习方式对多个样本数据进行训练得到,所述样本数据可以包括标注有对象类型的图像,所述对象类型可以包括车(可以具体到车型)、行人、交通设施(包括红绿灯、斑马线、转向灯等)。本实施例中,所述机器学习方式还可以包括k近邻算法、感知机算法、决策树、支持向量机、逻辑斯底回归、最大熵等,相应的,生成的模型如朴素贝叶斯、隐马尔科夫等。当然,在其他实施例中,所述机器学习模型组件可以包括深度学习模型组件,所述深度学习模型组件可以包括卷积神经网络学习模型组件、循环神经网络模型组件等等,本申请在此不做限制。

通过机器学习方式训练得到的所述对象标注模型组件,能够学习到样本数据中不同目标对象的特征信息,因此能够快速、准确地识别出图像数据中的目标对象。

以上各个实施例的实施主体可以为服务器,当然,也可以是性能较高的客户端,对此不做限制。服务器端或者客户端分别在图像数据和点云数据中标注出数据之后,可以客户端的用户界面中展示所述图像数据、所述点云数据以及标注出的目标对象。在本申请的一个实施例中,在展示所述图像数据和所述点云数据的过程中,可以利用边界框在所述图像数据中圈出目标对象,并标注所述目标对象的信息。在一个示例中,可以利用矩形框圈出所述图像数据中的目标对象,并在矩形框上或者附近标注所述目标对象的类型信息,如车辆、行人、交通灯这样的信息。另外,由于图像中可以包括颜色、纹理等点云数据中所不能获取的信息,因此,所述信息还可以包括所述目标对象的颜色、纹理等信息。对于车辆来说,标注的信息可以包括对象的属于车的类型、车的颜色等。

在所述图像信息中标注完成所述目标对象之后,可以基于点云数据和所述图像数据之间的映射关系,在所述点云数据中标注出所述目标对象。在一个示例中,可以基于所述点云数据和所述图像数据之间的映射关系,确定所述目标对象在所述点云数据中的位置。如上所述,基于获取到的所述激光雷达坐标系和所述摄像装置坐标系之间的坐标转换方程,在获取到目标对象的各个像素点在所述摄像装置坐标系的位置的情况下,可以根据所述坐标转换方程求解到所述目标对象的各个激光点在所述激光雷达坐标系中的位置。基于此,可以利用边界框在所述点云数据中圈出形成所述目标对象的激光点,并在所述边界框上或者边界框附近标注所述目标对象的信息。当然,由于点云数据中可以获取到深度信息,因此,还可以进一步地标注所述目标对象的尺寸信息,如标注车的长、宽、高等信息。通过这种图像数据与点云数据的联合标注方式,不仅可以标注得到图像中容易识别的特征信息,还可以标注得到点云数据中容易识别得到的特征信息。那么,利用此方式标注得到的点云样本数据所训练得到的模型组件,能够识别得到对象的多种信息。

在本申请的一个实施例中,还可以在点云数据中标注信息之前,对所述图像数据中所标注的信息进行质检,质检通过之后,再在所述点云数据中进行标注。在一个实施例中,可以在所述点云数据中获取到所述目标对象的至少一种参数的参数值。具体地,可以基于所述映射关系,确定所述目标对象在所述点云数据中的位置,具体实施方式可以参考上述利用所述坐标转换方程确定所述目标对象在所述点云数据中的位置的方式,在此不再赘述。在确定所述目标对象在所述点云数据中的位置之后,可以获取到所述目标对象的至少一种参数的参数值。例如,车辆的长宽高、人的高度、交通灯的高度等等。在获取到所述至少一种参数的参数值之后,可以判断所述参数的参数值是否符合预设规则。所述预设规则例如可以包括对于各种对象的尺寸限制等,如人的高度一般不会超过两米,若识别出人的高度为两米五,则可以确定图像数据标注的置信度不高。例如,还可以限制车的宽度不超过两米,若识别出车的宽度大于两米,则可以确定图像数据标注的置信度不高。对于置信度不高的标注,可以发送提醒消息,提醒进行人工审核等。

在本申请的另一个实施例中,还可以通过判断所述目标对象在素数点云数据中的类型是否与图像数据中所标注的类型相匹配的方式进行质检。在本申请实施例中,可以采用与上述各个实施例相同的方式确定出所述目标对象在所述点云中的位置。然后,可以获取到所述目标对象在所述点云数据中的视图,所述视图可以包括从所述点云数据中截取的所述目标对象的点云图,由于点云具有三维立体特征,因此,可以所述目标对象在所述点云数据中可以具有多种视角,因此,所述视图可以包括所述目标对象在所述点云数据中的多个视角的点云图。由于图像数据中已经标注出目标对象,那么,通过图像数据和点云数据之间的映射关系,可以快速截取到所述目标对象在点云数据中的视图,对截取的所述目标对象的视图进行识别比对整个点云数据进行识别要容易很多。在本申请实施例中,可以将所述目标对象的所述视图输入至类型判别模型组件,经所述类型判别模型组件输出所述目标对象的类型。所述目标类型的类型可以包括车辆、行人、交通设施等等。所述类型判别模型组件可以利用机器学习方式学习得到,具体的学习方式可以参考上述对象标注模型组件的机器学习方式,在此不再赘述。在经过所述对象标注模型组件识别出所述目标对象的视图所对应的类型之后,可以将该类型与所述图像数据中所标注的类型进行比对,若两种类型相匹配,则可以确定图像数据中的标注信息准确度较高,因此,可以在所述点云数据中标注所述目标对象。

在本申请的另一个实施例中,还可以确定所述目标对象的图像与同类型对象的图像之间的相似程度,在确定所述相似程度大于预设阈值的情况下,基于所述映射关系,在所述点云数据中标注所述目标对象。所述目标对象的图像可以包括从识别出所述目标对象的图像数据中所截取的图像,例如沿着圈出所述目标对象的边界框截取的图像。将所述目标对象的图像与同类型对象的图像进行比较,确定其相似程度,可以反映出对所述目标对象的标注的准确程度。例如,在所述图像数据中标注出所述目标对象的类型为“吉普车”,那么,可以获取到类型同为“吉普车”的多个图像,并计算所述目标对象的图像与所述同类型的多个图像之间的相似程度,若相似程度大于预设阈值,则可以确定在所述图像数据中对所述目标对象的标注比较准确,进一步地,可以在所述点云数据中标注所述目标对象。需要说明的是,在实际应用中,所述目标对象在所述图像数据中往往尺寸较小,因此,在获取同类型的图像的过程中,可以选取尺寸与所述目标对象的图像相似的图像进行比较,以增强比较对象之间的可比性以及相似程度计算结果的准确性。其中,图像尺寸相似可以包括图像尺寸之间的差异小于预设阈值。在一个示例中,若所述目标对象的图像尺寸为8*8,则可以选择一些尺寸在6*6到10*10之间的小尺寸图像与所述目标对象的图像进行比较,确定其相似程度。

本申请各个实施例提供的点云数据中标注对象的方法,可以利用图像数据与点云数据之间的映射关系,对点云数据中的目标对象进行标注。由于图像数据比较直观,包含较多的纹理信息,因此,从图像数据中识别出目标对象比从点云数据中识别要容易许多。基于此,首先在图像数据中识别出目标对象,再基于图像数据与点云数据之间的映射关系,在点云数据中标注出所述目标对象,不仅可以提升点云数据的标注准确性,还可以提升标注的效率。尤其对于无人驾驶的应用场景,可以利用本申请提供的点云数据中标注对象的方法,自动化地在点云数据中快速、准确地标注出目标对象,生成的样本数据可以用于训练得到高性能的识别出点云数据中各个对象的模型组件。

本申请另一方面从客户端的角度提出一种点云数据中标注对象的方法,包括:

接收具有映射关系的图像数据和点云数据,所述图像数据和所述点云数据标注有目标对象;

基于所述映射关系,展示所述图像数据和所述点云数据;

在所述图像数据和所述点云数据中标注所述目标对象。

可选的,在本申请的一个实施例中,所述基于所述映射关系,展示所述图像数据和所述点云数据,包括:

将用户界面划分成至少两个展示区域,其中,第一展示区域用于展示图像数据,第二展示区域用于展示点云数据,所述第一展示区域展示的图像数据和所述第二展示区域展示的点云数据具有映射关系。

可选的,在本申请的一个实施例中,所述第一展示区域包括多个子展示区域,所述多个子展示区域分别用于展示从相同地点不同视角捕捉的图像数据。

可选的,在本申请的一个实施例中,所述第二展示区域包括多个子展示区域,所述多个子展示区域分别用于展示所述目标对象在不同视角上的点云视图,并分别在所述点云视图中标注出所述目标对象。

可选的,在本申请的一个实施例中,所述在所述图像数据和所述点云数据中标注所述目标对象,包括:

利用边界框在所述图像数据中圈出目标对象,并标注所述目标对象的信息;

基于所述映射关系,确定所述目标对象在所述点云数据中的位置;

在所述点云数据中的所述位置处利用边界框圈出所述目标对象,并标注所述信息。

可选的,在本申请的一个实施例中,还包括:

获取所述目标对象在点云数据中的参数信息;

在所述点云数据中标注出所述目标对象的所述参数信息。

可选的,在本申请的一个实施例中,还包括:

展示与所述目标对象同类型的多个对象的图像,所述多个对象的图像的尺寸与所述目标对象在所述图像数据中的图像尺寸之间的差异小于预设尺寸阈值。

对于上述各个实施例的实施方式,可以参考以上从服务器端角度提供的各个实施例的实施方式,在此不再赘述。通过可视化的方式向用户展示标注结果,可以帮助用户对标注结果进行质检,提升标注结果的准确性。

本申请另一方面还提出一种点云数据中标注对象的方法,包括:

获取点云数据以及与所述点云数据具有映射关系的图像数据;

在所述图像数据中标注目标对象;

基于所述映射关系,获取所述目标对象在所述点云数据中的至少一个视图;

在识别出所述目标对象在所述至少一个视图中的类型与在所述图像数据中被标注的类型相匹配的情况下,在所述点云数据中标注所述目标对象。

可选的,在本申请的一个实施例中,所述识别出所述目标对象在所述至少一个视图中的类型,包括:

分别将所述至少一个视图输入至类型判别模型组件,经所述类型判别模型组件输出所述目标对象的类型。

可选的,在本申请的一个实施例中,所述基于所述映射关系,获取所述目标对象在所述点云数据中的至少一个视图,包括:

确定所述目标对象在所述点云数据中的位置;

定位到所述点云数据的所述位置处,提取出所述目标对象在至少一个视角上的视图。

可选的,在本申请的一个实施例中,所述视图包括下述中的至少一种:俯视图、前视图、后视图、左视图、右视图。

对于上述各个实施例的实施方式,可以参考以上从服务器端角度提供的各个实施例的实施方式,在此不再赘述。通过对目标对象在点云数据中的视图进行识别,在确定所述目标对象在点云数据中的类型与在图像数据中的类型的情况下,在点云数据中标注所述目标对象。由于对截取的所述目标对象的视图进行识别比对整个点云数据进行识别要高效准确,因此,可以高效准确地进一步提升标注的准确性。

本申请另一方面还提出一种点云数据中标注对象的方法,包括:

获取点云数据以及与所述点云数据具有映射关系的图像数据;

在所述图像数据中标注目标对象;

基于所述映射关系,确定所述目标对象在所述点云数据中的位置,并获取所述目标对象至少一种参数的参数值;

在确定所述目标对象的所述至少一种参数的参数值符合预设规则的情况下,在所述点云数据中标注所述目标对象。

可选的,在本申请的一个实施例中,所述参数包括尺寸、形状。

对于上述各个实施例的实施方式,可以参考以上从服务器端角度提供的各个实施例的实施方式,在此不再赘述。通过按照预设规则对目标对象进行质检,可以进一步地提升点云数据中目标对象识别的准确性。

本申请另一方面还提出一种点云数据中标注对象的方法,包括:

获取点云数据以及与所述点云数据具有映射关系的图像数据;

在所述图像数据中标注目标对象;

确定所述目标对象的图像与同类型对象的图像之间的相似程度;

在确定所述相似程度大于预设阈值的情况下,基于所述映射关系,在所述点云数据中标注所述目标对象。

可选的,在本申请的一个实施例中,所述确定所述目标对象的图像与同类型对象的图像之间的相似程度,包括:

获取与所述目标对象同类型的对象的图像,所述图像的尺寸与所述目标对象在所述图像数据中的图像尺寸之间的差异小于预设尺寸阈值;

确定所述目标对象在所述图像数据中的图像与所述同类型的对象的图像之间的相似程度。

对于上述各个实施例的实施方式,可以参考以上从服务器端角度提供的各个实施例的实施方式,在此不再赘述。

对应于上述点云数据中标注对象的方法,如图4所示,本申请还提供一种点云数据中标注对象装置,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时可以实现上述任一实施例的点云数据中标注对象方法。

本申请另一方面还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现上述任一实施例所述方法的步骤。

所述计算机可读存储介质可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。本实施例所述的计算机可读存储介质有可以包括:利用电能方式存储信息的装置如,各式存储器,如ram、rom等;利用磁能方式存储信息的装置如,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、u盘;利用光学方式存储信息的装置如,cd或dvd。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。

在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmablelogicdevice,pld)(例如现场可编程门阵列(fieldprogrammablegatearray,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logiccompiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardwaredescriptionlanguage,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advancedbooleanexpressionlanguage)、ahdl(alterahardwaredescriptionlanguage)、confluence、cupl(cornelluniversityprogramminglanguage)、hdcal、jhdl(javahardwaredescriptionlanguage)、lava、lola、myhdl、palasm、rhdl(rubyhardwaredescriptionlanguage)等,目前最普遍使用的是vhdl(very-high-speedintegratedcircuithardwaredescriptionlanguage)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。

控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmelat91sam、microchippic18f26k20以及siliconelabsc8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

上述实施例阐明的系统、方法、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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