发明内容
本发明实施例提供一种信息处理方法、装置、云处理设备以及计算机程序产品,可以实时对三维数据进行处理,生成三维语义地图,不但提高了场景分割的精度还缩短了处理时间。
第一方面,本发明实施例提供了一种信息处理方法,包括:
获取图像采集设备采集的RGBD数据;
提取所述RGBD数据中的关键帧数据并进行处理,得到几何重建数据;
将所述关键帧数据中的RGB数据以及所述几何重建数据进行映射处理,得到三维重建数据;以及,对所述关键帧数据中的RGB数据进行语义分割处理,得到语义分割数据;
将所述语义分割数据与所述三维重建数据进行映射处理,得到三维语义地图。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述将所述语义分割数据与所述三维重建数据进行映射处理,得到三维语义地图,包括:
确定所述三维重建数据中每个点对应的RGB数据;
根据所述RGB数据与所述语义分割数据的第一对应关系,确定所述三维重建数据中每个点对应的语义信息;
整合所述三维重建数据中的所有点的语义信息,得到所述三维语义地图。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,
所述将所述语义分割数据与所述三维重建数据进行映射处理,得到三维语义地图,包括:
确定所述三维重建数据中每个面对应的RGB数据;
根据所述RGB数据与所述语义分割数据的第二对应关系,确定所述三维重建数据中每个面对应的语义信息;
确定所述三维数据中每个连接点周围的面;
根据每个面对应的语义信息确定每个连接点的语义信息;
整合所述三维重建数据中的所有面的语义信息与所有连接点的语义信息,得到所述三维语义地图。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,
所述提取所述RGBD数据中的关键帧数据并进行处理,得到几何重建数据,包括:
根据所述RGBD数据中的关键帧数据计算所述图像采集设备的位姿信息;
根据所述位姿信息以及所述关键帧数据中的D数据进行重建,得到几何重建数据。
第二方面,本发明实施例还提供一种信息处理装置,包括:
获取单元,用于获取图像采集设备采集的RGBD数据;
提取单元,用于提取所述RGBD数据中的关键帧数据并进行处理,得到几何重建数据;
处理单元,用于将所述关键帧数据中的RGB数据以及所述几何重建数据进行映射处理,得到三维重建数据;以及,对所述关键帧数据中的RGB数据进行语义分割处理,得到语义分割数据;
映射单元,用于将所述语义分割数据与所述三维重建数据进行映射处理,得到三维语义地图。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,
所述映射单元,具体用于:
确定所述三维重建数据中每个点对应的RGB数据;
根据所述RGB数据与所述语义分割数据的第一对应关系,确定所述三维重建数据中每个点对应的语义信息;
整合所述三维重建数据中的所有点的语义信息,得到所述三维语义地图。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,
所述映射单元,具体用于:
确定所述三维重建数据中每个面对应的RGB数据;
根据所述RGB数据与所述语义分割数据的第二对应关系,确定所述三维重建数据中每个面对应的语义信息;
确定所述三维数据中每个连接点周围的面;
根据每个面对应的语义信息确定每个连接点的语义信息;
整合所述三维重建数据中的所有面的语义信息与所有连接点的语义信息,得到所述三维语义地图。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,
所述提取单元,具体用于:
根据所述RGBD数据中的关键帧数据计算所述图像采集设备的位姿信息;
根据所述位姿信息以及所述关键帧数据中的D数据进行重建,得到几何重建数据。
第三方面,本发明实施例还提供一种云处理设备,所述设备包括处理器以及存储器;所述存储器用于存储指令,所述指令被所述处理器执行时,使得所述设备执行如第一方面中任一种所述的方法。
第四方面,本发明实施例还提供一种计算机程序产品,可直接加载到计算机的内部存储器中,并含有软件代码,所述计算机程序经由计算机载入并执行后能够实现如第一方面中任一种所述的方法。
本发明实施例提供的信息处理方法、装置、云处理设备以及计算机程序产品,通过提取RGBD数据中的关键帧数据,对关键帧数据进行处理得到几何重建数据,然后,同时执行三维重建和语义分割两个进程,分别得到三维重建数据和语义分割数据,最后将语义分割数据与三维重建数据进行映射处理,得到三维语义地图,在本发明实施例提供的技术方案中,能够将三维重建和语义分割同时进行,既能根据RGBD数据进行三维重建,又能同时获得语义信息,在缩短了计算时间的同时还能够提高场景分割的精度,达到实时生成三维地图的效果,解决了现有技术中对三维数据进行语义分割时,可以分割出的物体种类有限,耗时较长的问题。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
为了加强计算机等设备对周围环境里的感知和理解,我们需要给它提供高质量的三维语义地图。三维语义地图包括了两部分,其中一部分是对某一个环境进行重建得到的三维重建模型,另一部分是对其进行精确语义分割后得到的场景识别信息。现有技术中,语义分割多数是基于二维数据进行处理,而使用相同的方式对三维数据进行语义分割则无法获得几何上连续的分割结果,且耗时较长,很难达到实时完成,因此,本发明实施例提供一种信息处理方法,在对采集到的环境信息进行三维重建的同时,对采集到的环境信息进行语义分割,实现实时生成三维语义地图,具体的,图1为本发明实施例提供的信息处理方法实施例的流程图,如图1所示,本发明实施例提供的信息处理方法,具体可以包括如下步骤:
101、获取图像采集设备采集的RGBD数据。
在本发明实施例中,当需要对某一个场景进行三维重建以及得到三维语义地图时,首先使用图像采集设备对场景进行图像采集,图像采集设备需要包含RGB摄像头以及深度(Depth)摄像头,并在采集完成后得到RGBD数据。在一个具体的实现过程中,用于生成三维语义地图的计算机中可以包含有实时建图定位模块,该模块用于获取图像采集设备采集的RGBD数据,具体的,既可以由实时建图定位模块主动获取RGBD数据,也可以由图像采集设备主动发送RGBD数据至实时建图定位模块。
102、提取RGBD数据中的关键帧数据并进行处理,得到几何重建数据。
在本发明实施例中,可以采用如下步骤得到几何重建数据:首先,根据RGBD数据中的关键帧数据计算图像采集设备的位姿信息,具体的,在所有RGBD数据中提取关键帧对应的RGBD数据,根据关键帧对应的RGBD数据计算图像采集设备的位姿;然后,根据位姿信息以及关键帧数据中的D数据进行重建,得到几何重建数据。
几何重建数据可以包括两种格式,有一种是点云格式,另一种是网格格式,两种格式可以根据实际需要择一使用。例如,在一个具体的实现过程中,利用快速融合(fastfusion)算法对位姿信息以及关键帧数据中的D数据进行处理,重建出点云格式的数据。又例如,在一个具体的实现过程中,利用fastfusion算法对位姿信息以及关键帧数据中的D数据进行处理,重建出网格格式的数据。
在本发明实施例中,在重建过程中,关键帧至少有两个,因此,需要将所有的关键帧数据同时使用进行重建。
103、将关键帧数据中的RGB数据以及几何重建数据进行映射处理,得到三维重建数据;以及,对关键帧数据中的RGB数据进行语义分割处理,得到语义分割数据。
由于在本发明实施例中,得到三维重建数据和得到语义分割数据这两个过程的计算量均较大,且占用的计算资源较多,因此,将二者放入不同的线程中进行,或者采用并行计算的方式进行。
其中,由于几何重建数据可以包括两种格式,根据不同的格式生成三维重建数据其过程也会不同。当几何重建数据为点云格式时,首先找到点云中每个点对应的D数据,然后,根据RGB摄像头与深度摄像头的标定结果,找到与每个点对应的RGB数据,最后将每个点对应的RGB数据的值赋予对应的点。当几何重建数据为网格格式时,则根据算法将关键帧对应的RGB数据作为纹理映射至网格,在一个具体的实现过程中,算法可以包括最近采样点算法、双线性插值算法、三线性插值算法等。
语义分割数据可以根据不同的场景选择不同的现有技术中的方式来获得。
104、将语义分割数据与三维重建数据进行映射处理,得到三维语义地图。
在本发明实施例中,由于几何重建数据存在不同的格式,因此,在该步骤中对每一种格式分别进行说明。
当几何重建数据为点云格式时:首先,确定三维重建数据中每个点对应的RGB数据;然后,根据RGB数据与语义分割数据的第一对应关系,确定三维重建数据中每个点对应的语义信息;最后,整合三维重建数据中的所有点的语义信息,得到三维语义地图。
为了能够更详尽的说明该流程,在本发明实施例中使用计算公式来表示。假设三维几何重建结果的每一个点为VP(P为点的序号),每个点对应的RGB值VC可以通过查表Ω获取。其中,表Ω为代表序号P与RGB值的对应关系表。确定每个点的语义信息通过第一对应关系函数来表达,具体的函数为:
F(VP,VC)=VS
其中,VS为语义信息,VP为点,VC为RGB值。
当几何重建数据为网格格式时:首先,确定三维重建数据中每个面对应的RGB数据;然后,根据RGB数据与语义分割数据的第二对应关系,确定三维重建数据中每个面对应的语义信息;接着,确定三维数据中每个连接点周围的面;根据每个面对应的语义信息确定每个连接点的语义信息;最后,整合三维重建数据中的所有面的语义信息与所有连接点的语义信息,得到三维语义地图。
为了能够更详尽的说明该流程,在本发明实施例中使用计算公式来表示。
网格由点和面组成,并且,面由点连接而成。假设三维几何重建结果包括n个点,每一个点设为Vi(i=1 to n),m个面,每一个面设为Fj(j=1 to m),其中,n、m、j均为正整数。设每一个面Fj对应RGB数据的一块区域Fc,每个区域对应的RGB值Fc可以通过查表σ获取。其中,表Ω为代表序号j与RGB值的对应关系表。
首先,确定每个面的语义信息通过第二对应关系函数来表达,具体的函数为:
G(Fj,Fc)=Fs
其中,Fs为语义信息,Fj为面,Fc为RGB值。
然后,确定每个连接点Vi的语义信息,设定每个连接点周围的面为Fk(k=1 to p),Fk对应的语义信息为Fk s,语义信息可以通过函数来表达,具体的函数为:
Vi s=Q(Fk s)(k=1 to p)
其中,Vi s为语义信息,Fk s为Vi周围所有面的语义信息,p为Vi周围的面的数量。
在一个具体的实现过程中,函数Q(Fk s)可以采用如下具体表现方式:
其中,Fk s为Vi周围所有面的语义信息,p为Vi周围的面的数量。
在另一个具体的实现过程中,函数Q(Fk s)可以采用如下具体表现方式:
其中,Fk s为Vi周围所有面的语义信息,p为Vi周围的面的数量,Fk A为Fk的面积。
本发明实施例提供的信息处理方法,通过提取RGBD数据中的关键帧数据,对关键帧数据进行处理得到几何重建数据,然后,同时执行三维重建和语义分割两个进程,分别得到三维重建数据和语义分割数据,最后将语义分割数据与三维重建数据进行映射处理,得到三维语义地图,在本发明实施例提供的技术方案中,能够将三维重建和语义分割同时进行,既能根据RGBD数据进行三维重建,又能同时获得语义信息,在缩短了计算时间的同时还能够提高场景分割的精度,达到实时生成三维地图的效果,解决了现有技术中对三维数据进行语义分割时,可以分割出的物体种类有限,耗时较长的问题。
为了实现前述内容的方法流程,本发明实施例还提供一种信息处理装置,图2为本发明实施例提供的信息处理装置实施例的结构示意图,如图2所示,本实施例的装置可以包括:获取单元11、提取单元12、处理单元13和映射单元14。
获取单元11,用于获取图像采集设备采集的RGBD数据。
提取单元12,用于提取RGBD数据中的关键帧数据并进行处理,得到几何重建数据。
处理单元13,用于将关键帧数据中的RGB数据以及几何重建数据进行映射处理,得到三维重建数据;以及,对关键帧数据中的RGB数据进行语义分割处理,得到语义分割数据。
映射单元14,用于将语义分割数据与三维重建数据进行映射处理,得到三维语义地图。
在一个具体的实现过程中,映射单元14,具体用于:
确定三维重建数据中每个点对应的RGB数据;
根据RGB数据与语义分割数据的第一对应关系,确定三维重建数据中每个点对应的语义信息;
整合三维重建数据中的所有点的语义信息,得到三维语义地图。
在另一个具体的实现过程中,映射单元14,具体用于:
确定三维重建数据中每个面对应的RGB数据;
根据RGB数据与语义分割数据的第二对应关系,确定三维重建数据中每个面对应的语义信息;
确定三维数据中每个连接点周围的面;
根据每个面对应的语义信息确定每个连接点的语义信息;
整合三维重建数据中的所有面的语义信息与所有连接点的语义信息,得到三维语义地图。
其中,提取单元12,具体用于:
根据RGBD数据中的关键帧数据计算图像采集设备的位姿信息;
根据位姿信息以及关键帧数据中的D数据进行重建,得到几何重建数据。
本发明实施例提供的信息处理装置,可以用于执行图1示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
为了实现前述内容的方法流程,本发明实施例还提供一种云处理设备,图3为本发明实施例提供的云处理设备实施例的结构示意图,如图3所示,本发明实施例提供的云处理设备包括处理器21以及存储器22;存储器22用于存储指令,指令被处理器21执行时,使得设备执行如前述内容中任一种方法。
本发明实施例提供的云处理设备,可以用于执行图1示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
为了实现前述内容的方法流程,本发明实施例还提供一种计算机程序产品,可直接加载到计算机的内部存储器中,并含有软件代码,计算机程序经由计算机载入并执行后能够实现如前述内容中任一种方法。
本发明实施例提供的云处理设备,可以用于执行图1示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到至少两个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。