[0054] 为便于说明,本申请实施例中以在xy平面进行2DBox框选为例进行举例说明。框选的矩形区域包括有矩形框坐标的最大点(xmax,ymax)和最小点(xmin,ymin),在框选后,可根据该矩形框坐标的最大点(xmax,ymax)和最小点(xmin,ymin),遍历点云数据中所有的点(x,y,z),找出其中满足xmin
[0055] 本申请实施例中,框选时所框选的区域为矩形区域。可以理解的,在其他的一些实施例中,框选的区域可以是其他形状,例如可以是圆形或椭圆形等。
[0056] 步骤S13,过滤初始点云数据中的地面点云数据,以得到目标点云数据。
[0057] 对于无人驾驶领域,通过三维激光扫描仪除了采集路面上的车辆、行人、障碍物等标注对象的点云数据之外,还会采集到与地面对应的地面点云数据。在获取被选取区域内的初始点云数据后,可以将初始点云数据中的地面点云数据进行过滤,以得到目标点云数据。
[0058] 具体的,首先将初始点云数据中的地面点云数据进行过滤,过滤掉地面点云数据,得到过滤后的初始点云数据。
[0059] 本申请实施例中,可以采用地面分割算法等将地面点云数据从初始点云数据中过滤掉,得到过滤后的初始点云数据。如图2所示,是一过滤前的初始点云数据的示意图,在将地面对应的点云数据从初始点云数据中过滤掉后,得到过滤后的初始点云数据的示意图如图3所示。
[0060] 点云
数据采集过程中,由于三维激光扫描仪自身及环境的影响,采集到的点云数据中可能存在一些噪点,这些噪点一般非常稀疏,而标注对象的点相对会比较密集,所以在将初始点云数据中的地面点云数据进行过滤,得到过滤后的初始点云数据后,还可以对该过滤后的初始点云数据进行去噪处理,去除过滤后的初始点云数据中的噪点数据,得到目标点云数据,该目标点云数据即为需要进行点云标注的对象的点云数据,也即标注对象。
[0061] 本申请实施例中,对该初始点云数据进行去噪处理可以采用,但不限于半径滤波、统计滤波、
体素滤波等方法。
[0062] 步骤S15,基于目标点云数据在三维坐标系中的第一坐标轴和第二坐标轴所在平面上的投影,以及目标点云数据在三维坐标系的第三坐标轴上的坐标集合,生成标注对象的立体框图。
[0063] 具体的,请参阅图4,生成标注对象的立体框图可以包括如下步骤。
[0064] 步骤S41,遍历目标点云数据。
[0065] 步骤S43,根据目标点云数据在第三坐标轴上的坐标集合,得到目标点云数据在三维坐标系的第三坐标轴上的投影高度及第一中心坐标。
[0066] 第一坐标轴、第二坐标轴和第三坐标轴分别与x轴、y轴和z轴一一对应。为便于理解,本申请实施例中以第一坐标轴为x轴,第二坐标轴为y轴,第三坐标轴为z轴为例进行举例说明。
[0067] 在遍历完目标点云数据后,点云数据中的每个点在第三坐标轴(z轴)上对应一个坐标值(即在z轴上的坐标值),所有点在第三坐标轴上的坐标值构成一坐标集合,可以根据该坐标集合中最大值与最小值的差值,计算出目标点云数据在第三轴上的投影高度及目标点云数据在第三轴上的坐标中间值,为便于区分,这里将目标点云数据在第三轴上的坐标中间值称之为第一中心坐标。
[0068] 例如,点云数据中在z轴上的最大坐标值为zmax,最小坐标值为zmin,则目标点云数据在第三轴上的投影高度为h=zmax-zmin,第一中心坐标为zc=zmin+h/2。
[0069] 步骤S45,将目标点云数据投影在平面上,得到二维空间坐标集。
[0070] 与此同时,可将目标点云数据中的所有点投影到第一坐标轴和第二坐标轴所在的平面(xy平面)上,每一个投影到平面的点对应一二维空间坐标,投影得到的所有二维空间坐标的集合,即为二维空间坐标集。
[0071] 例如,三维空间坐标为(1,2,3),则投影到平面后得到的二维空间坐标为(1,2)。
[0072] 步骤S47,将二维空间坐标集中的坐标作为图像中的像素点进行运算,得到二维空间坐标集映射在所述平面上的长度、宽度、旋转角度及第二中心坐标。
[0073] 具体的,可以将二维空间坐标集中的所有坐标作为图像中的像素点,计算二维空间坐标集映射在所述平面上的长度、宽度、旋转角度及第二中心坐标等。进行计算时可以采用,但不限于minAreaRect算法或boundingRect算法等,本申请实施例中不做具体限定。
[0074] 本申请的一个施例中,由于点云数据的获取是以三维激光扫描仪为中心获取的,在投影到第一坐标轴和第二坐标轴所在平面上的时,一般会投影在平面坐标系的四个象限中,为便于二维空间坐标的运算,本申请实施例中可以对投影在该平面上的二维空间坐标进行平移,将二维空间坐标集中的所有坐标平移至平面的第一象限,使得二维空间坐标集中所有二维空间坐标的x轴坐标和y轴坐标均大于零。在x轴方向的平移距离为xtrans=ABS(Xmin)+1,在y轴方向上的平移距离为ytrans=ABS(Ymin)+1,其中,Xmin为二维空间坐标集中的最小x坐标,Ymin为二维空间坐标集中的最小y坐标,ABS为求绝对值函数。另外,式中加1是为了确保平移后的坐标值均是大于0的,因为点云数据中的坐标是浮点数,而图像平面的坐标代表像素坐标,像素坐标都是整数,后面进行计算时会自动进行浮点数取整,所以将平移大小增加1个单位。
[0075] 本申请的一个施例中,由于一般点云中的单位为米,所以目标点云数据映射到平面后,会集中在一个很小的范围,不利于长度、宽度、旋转角度及第二中心坐标的计算,因此在将目标点云数据映射到平面后,还可通过乘以一放大因子将映射到平面后的所有二维空间坐标进行放大,该放大因子为一大于1的值。
[0076] 需要说明的是,若将二维空间坐标进行放大,则投影高度和第一中心坐标也需进行放大处理,放大因子与二维空间坐标的放大因子相同。
[0077] 本申请的一个实施例中,目标点云数据中的点可能相对较稀疏,投影到平面后,对应的像素点也较稀疏,为了确保计算结果的精确,本申请实施例中还可对二维空间坐标集中的坐标进行扩充,使得在平面上形成的图形的边界更加平滑。如图5a所示,是二维空间坐标集中的一二维空间坐标,在进行扩充时,可在该坐标对应的像素点(由于将二维空间坐标集中的坐标作为图像中的像素点,因此一个二维空间坐标就相当于一个像素点)相邻的左上、右上、左下和右下四个相邻点上分别添加一像素点。如图5b所示,是该像素点扩充后的展示效果图。
[0078] 步骤S49,根据投影高度、第一中心坐标、长度、宽度、旋转角度和第二中心坐标,生成标注对象的立体框图。
[0079] 其中,投影高度表征标目标点云数据投影在第三坐标轴上的高度(z轴高度),第一中心坐标表征目标点云数据在第三轴上的坐标中心间值(z轴上的中心坐标),第二中心坐标表征目标点云数据投影在第一坐标轴和第二坐标轴所在平面上的中心坐标(xy平面的中心坐标),该长度表征目标点云数据投影在第一坐标轴和第二坐标轴所在平面上形成的图像的长度,该宽带表征目标点云数据投影在第一坐标轴和第二坐标轴所在平面上形成的图像的宽带,旋转角度表征目标点云数据投影在第一坐标轴和第二坐标轴所在平面上形成的图像的旋转角度。因此,可根据投影高度、第一中心坐标、长度、宽度、旋转角度和第二中心坐标,在三维坐标系中直接生成一立体框图,并将该立体框图作为标注对象的立体框图。
[0080] 可以理解的,若对二维空间坐标、投影高度和第一中心坐标进行了放大,则在得到标注对象的立体框图之后,还需将该得到的立体框图进行缩小,使其回归到原始大小。
[0081] 本申请实施例提供的标注对象立体框图生成方法,通过过滤被选取区域内的初始点云数据中的地面点云数据以得到目标点云数据,并基于目标点云数据在三维坐标系中的第一坐标轴和第二坐标轴所在平面上的投影,以及目标点云数据在三维坐标系的第三坐标轴上的坐标集合,生成标注对象的立体框图。如此,在进行点云标注时,能够根据该立体框图十分方便对标注对象进行点云标注,从而提升标注效率,降低标注成本,即使得到的立体框图与标注对象实际上存在一定的误差,也只需要标注人员进行微调即可。同时,在获取目标点云数据时,还可以对过滤后得到的初始点云数据进行去噪处理,降低由于三维激光扫描仪自身及环境等原因对目标提取造成的影响。其次,在计算二维空间坐标集映射在平面上的长度、宽度、旋转角度及第二中心坐标时,将投影到第一坐标轴和第二坐标轴所在平面上的二维空间坐标进行平移,使得二维空间坐标集中所有二维空间坐标的x轴坐标和y轴坐标均大于零,方便二维空间坐标集映射在平面上的长度、宽度、旋转角度及第二中心坐标的计算。另外,可以对映射到平面后的二维空间坐标进行放大,进一步方便二维空间坐标集映射在平面上的长度、宽度、旋转角度及第二中心坐标的计算。最后,可以对二维空间坐标集中的坐标进行扩充,使得在平面上形成的图形的边界更加平滑,从而提升计算的精确度。
[0082] 上述对本说明书特定实施例进行了描述。其它实施例在所附
权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0083] 图6是本申请的一个实施例电子设备的结构示意图。请参考图6,在
硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速
随机存取存储器(Random-Access Memory,RAM),也可能还包括
非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
[0084] 处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry StandardArchitecture,工业标准体系结构)总线、PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为
地址总线、
数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
[0085] 存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
[0086] 处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成标注对象立体框图生成装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
[0087] 获取被选取区域内的初始点云数据,其中,标注对象位于所述被选取区域内;
[0088] 过滤所述初始点云数据中的地面点云数据,以得到目标点云数据;
[0089] 基于所述目标点云数据在三维坐标系中的第一坐标轴和第二坐标轴所在平面上的投影,以及所述目标点云数据在所述三维坐标系的第三坐标轴上的坐标集合,生成所述标注对象的立体框图。
[0090] 上述如本申请图1所示实施例揭示的标注对象立体框图生成装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成
电路芯片,具有
信号的处理能
力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成
逻辑电路或者
软件形式的指令完成。上述的处理器可以是通用处理器,包括
中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是
数字信号处理器(Digital Signal Processor,DSP)、
专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程
门阵列(Field-Programmable GateArray,FPGA)或者其他
可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是
微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及
软件模块组合执行完成。软件模块可以位于随机存储器,闪存、
只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
[0091] 该电子设备还可执行图1和图4的方法,并实现标注对象立体框图生成装置在图1、图4所示实施例的功能,本申请实施例在此不再赘述。
[0092] 当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
[0093] 本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1和图4所示实施例的方法,并具体用于执行以下操作:
[0094] 获取被选取区域内的初始点云数据,其中,标注对象位于所述被选取区域内;
[0095] 过滤所述初始点云数据中的地面点云数据,以得到目标点云数据;
[0096] 基于所述目标点云数据在三维坐标系中的第一坐标轴和第二坐标轴所在平面上的投影,以及所述目标点云数据在所述三维坐标系的第三坐标轴上的坐标集合,生成所述标注对象的立体框图。
[0097] 图7是本申请的一个实施例标注对象立体框图生成装置70的结构示意图。请参考图7,在一种软件实施方式中,标注对象立体框图生成装置70可包括:
[0098] 获取模块71,被配置为获取被选取区域内的初始点云数据,其中,标注对象位于所述被选取区域内。
[0099] 可以理解的,所述获取模块71可以被配置为执行上述的步骤S11。
[0100] 过滤模块73,被配置为过滤所述初始点云数据中的地面点云数据,以得到目标点云数据。
[0101] 可以理解的,所述过滤模块73可以被配置为执行上述的步骤S13。
[0102] 生成模块75,被配置为基于所述目标点云数据在三维坐标系中的第一坐标轴和第二坐标轴所在平面上的投影,以及所述目标点云数据在所述三维坐标系的第三坐标轴上的坐标集合,生成所述标注对象的立体框图。
[0103] 可以理解的,所述生成模块75可以被配置为执行上述的步骤S15。
[0104] 本申请实施例提供的标注对象立体框图生成装置70,可通过过滤被选取区域内的初始点云数据中的地面点云数据以得到目标点云数据,并基于目标点云数据在三维坐标系中的第一坐标轴和第二坐标轴所在平面上的投影,以及目标点云数据在三维坐标系的第三坐标轴上的坐标集合,生成标注对象的立体框图。如此,在进行点云标注时,能够根据该立体框图十分方便对标注对象进行点云标注,从而提升标注效率,降低标注成本,即使得到的立体框图与标注对象实际上存在一定的误差,也只需要标注人员进行微调即可。同时,在获取目标点云数据时,还可以对过滤后得到的初始点云数据进行去噪处理,降低由于三维激光扫描仪自身及环境等原因对目标提取造成的影响。其次,在计算二维空间坐标集映射在平面上的长度、宽度、旋转角度及第二中心坐标时,将投影到第一坐标轴和第二坐标轴所在平面上的二维空间坐标进行平移,使得二维空间坐标集中所有二维空间坐标的x轴坐标和y轴坐标均大于零,方便二维空间坐标集映射在平面上的长度、宽度、旋转角度及第二中心坐标的计算。另外,可以对映射到平面后的二维空间坐标进行放大,进一步方便二维空间坐标集映射在平面上的长度、宽度、旋转角度及第二中心坐标的计算。最后,可以对二维空间坐标集中的坐标进行扩充,使得在平面上形成的图形的边界更加平滑,从而提升计算的精确度。
[0105] 总之,以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何
修改、等同替换、改进等,均应包含在本申请的保护范围之内。
[0106] 上述实施例阐明的系统、装置、模块或单元,具体可以由计算
机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
[0107] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于
相变内存(PRAM)、静态随机存取存储器(SRAM)、
动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、
电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他
磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备
访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0108] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0109] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。