CN116228974A - 三维模型构建方法、装置、计算机设备以及存储介质 - Google Patents
三维模型构建方法、装置、计算机设备以及存储介质 Download PDFInfo
- Publication number
- CN116228974A CN116228974A CN202310115961.6A CN202310115961A CN116228974A CN 116228974 A CN116228974 A CN 116228974A CN 202310115961 A CN202310115961 A CN 202310115961A CN 116228974 A CN116228974 A CN 116228974A
- Authority
- CN
- China
- Prior art keywords
- data
- point cloud
- frame
- depth image
- image data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种三维模型构建方法、装置、计算机设备以及存储介质。该方法通过获取头戴显示设备在不同的位姿数据下对目标现实环境进行图像采集得到的多帧深度图像数据,以及每帧深度图像数据对应的位姿数据;基于位姿数据,将每帧深度图像数据转换为参考点云数据,参考点云数据包括每个像素点在世界坐标系下的坐标数据;将多帧参考点云数据进行数据叠加,得到目标现实环境对应的三维点云图像;基于三维点云图像,构建目标现实环境对应的三维模型。通过深度图像数据对应的位姿数据,可以准确地确定深度图像数据之间的相对位置关系,由此基于深度图像数据,可以构建更大尺度内的目标现实环境对应的三维模型,避免三维模型中的场景缺失和错位。
Description
技术领域
本申请涉及增强现实领域,更具体地,涉及一种三维模型构建方法、装置、计算机设备以及存储介质。
背景技术
近年来,随着混合现实技术的逐渐发展,构建环境对应的三维模型的方法越来越成熟,扫描设备的精度更高,三维模型也更准确。但通常情况下,想要构建一个目标环境的三维模型,都是通过在不同角度下获取目标环境的多帧点云数据,基于相邻帧点云数据之间的匹配结果确定点云数据之间的相对位置关系,进而构建得到三维模型。这种情况下,为减少点云数据之间的错位和遗漏,往往会将目标环境限制在一个小范围区域内,无法得到更大尺度的目标环境的三维模型。
发明内容
鉴于上述问题,本申请提出了一种三维模型构建方法、装置、计算机设备以及存储介质,可以构建更大尺度内的目标现实环境对应的三维模型,避免三维模型中的场景缺失和错位。
第一方面,本申请实施例提供了一种三维模型构建方法,所述方法包括:获取头戴显示设备在不同的位姿数据下对目标现实环境进行图像采集得到的多帧深度图像数据,以及每帧所述深度图像数据对应的位姿数据;基于所述位姿数据,将每帧所述深度图像数据转换为参考点云数据,所述参考点云数据包括每个像素点在世界坐标系下的坐标数据;将多帧所述参考点云数据进行数据叠加,得到所述目标现实环境对应的三维点云图像;基于所述三维点云图像,构建所述目标现实环境对应的三维模型。
第二方面,本申请实施例提供了一种三维模型构建装置,所述装置包括:数据获取模块、数据转换模块、数据叠加模块以及模型构建模块,其中,数据获取模块用于获取头戴显示设备在不同的位姿数据下对目标现实环境进行图像采集得到的多帧深度图像数据,以及每帧所述深度图像数据对应的位姿数据;数据转换模块用于基于所述位姿数据,将每帧所述深度图像数据转换为参考点云数据,所述参考点云数据包括每个像素点在世界坐标系下的坐标数据;数据叠加模块用于将多帧所述参考点云数据进行数据叠加,得到所述目标现实环境对应的三维点云图像;模型构建模块用于基于所述三维点云图像,构建所述目标现实环境对应的三维模型。
第三方面,本申请实施例提供了一种计算机设备,包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述第一方面提供的三维模型构建方法。
第四方面,本申请实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述第一方面提供的三维模型构建方法。
本申请提供的方案,通过获取头戴显示设备在不同的位姿数据下对目标现实环境进行图像采集得到的多帧深度图像数据,以及每帧所述深度图像数据对应的位姿数据;基于所述位姿数据,将每帧所述深度图像数据转换为参考点云数据,所述参考点云数据包括每个像素点在世界坐标系下的坐标数据;将多帧所述参考点云数据进行数据叠加,得到所述目标现实环境对应的三维点云图像;基于所述三维点云图像,构建所述目标现实环境对应的三维模型。通过深度图像数据对应的位姿数据,可以准确地确定深度图像数据之间的相对位置关系,由此基于深度图像数据,可以构建更大尺度内的目标现实环境对应的三维模型,避免三维模型中的场景缺失和错位。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一个实施例提供的三维模型构建方法的流程示意图。
图2示出了本申请实施例中深度相机的工作原理示意图。
图3示出了本申请另一个实施例提供的三维模型构建方法的流程示意图。
图4示出了本申请另一个实施例中步骤S203的具体流程示意图。
图5示出了本申请实施例提供的三维模型构建装置的结构示意图。
图6示出了本申请实施例提供的一种计算机设备的结构框图。
图7示出了本申请实施例提供的计算机可读取存储介质的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
发明人提出了本申请实施例提供的三维模型构建方法、装置、计算机设备以及存储介质,通过深度图像数据对应的位姿数据,可以准确地确定深度图像数据之间的相对位置关系,由此基于深度图像数据,可以构建更大尺度内的目标现实环境对应的三维模型,避免三维模型中的场景缺失和错位。
下面将结合附图具体描述本申请实施例提供的三维模型构建方法。
请参阅图1,图1示出了本申请一个实施例提供的三维模型构建方法的流程示意图,下面将针对图1所示流程进行详细阐述,所述三维模型构建方法具体可以包括以下步骤:
步骤S110:获取头戴显示设备在不同的位姿数据下对目标现实环境进行图像采集得到的多帧深度图像数据,以及每帧所述深度图像数据对应的位姿数据。
在本申请实施例中,计算机设备可以通过头戴显示设备获取目标现实环境对应的多帧深度图像数据,同时确定头戴显示设备在采集每帧深度图像数据时对应的位姿数据,以便于后续基于多帧深度图像数据及其对应的位姿数据构建目标现实环境对应的三维模型。也就是说,头戴显示设备在采集目标现实环境对应的多帧深度图像数据时,可以不断改变设备自身的位置和姿态等参数。计算机设备不仅可以通过头戴显示设备获取目标现实环境中的多帧深度图像数据,还可以将采集每一帧深度图像数据时头戴显示设备的位姿数据,与该帧深度图像数据相关联,以便于后续可以基于多帧深度图像数据分别对应的位姿数据,准确地确定多帧深度图像数据之间的相对位置关系,避免出现深度图像数据的遗漏和错位等情况,导致构建的三维模型不够精准。
可以理解的,由于计算机设备在获取深度图像数据时,同步获取了每帧深度图像数据对应的位姿数据,也就是说,计算机设备可以基于位姿数据,确定多帧深度图像数据之间的相对位置关系,那么计算机设备所获取的深度图像数据就可以包括目标现实环境中的更大范围内的多帧深度图像数据,而不必将所有的深度图像数据都限制在一个小范围环境内。显然,若计算机设备获取的深度图像数据中并不包括位姿数据,那么计算机设备首先需要将相邻帧深度图像数据进行相互匹配,以确定深度图像数据之间的相对位置关系,其后才能够将深度图像数据拼接并构建三维模型。显然,这种三维模型的构建方法并不能够确保多帧深度图像数据之间的相对位置关系完全正确,也就是多帧深度图像数据之间可能存在错位、遗漏的情况。这种情况下,为确保构建的三维模型的准确度,计算机设备通常会将采集深度图像数据限制于一个较小的范围内。但本申请提供的方法中,计算机设备在获取多帧深度图像数据的同时,还获取了每帧深度图像数据对应的位姿数据,计算机设备基于这些位姿数据,可以直接确定多帧深度图像数据之间的相对位置关系,并且相对位置关系的准确性更高,因此,计算机设备可以获取更大环境范围内的深度图像数据,进而构建得到更大尺度的三维模型。
在一些实施方式中,头戴显示设备中可以包括一个惯性测量单元(InertialMeasurement Unit,IMU),以便于确定设备在采集每帧深度图像数据时对应的位姿数据。具体来说,通常惯性测量单元包括了三个单轴的加速度计和三个单轴的陀螺仪,加速度计检测设备内部的相机坐标系的三轴各自的加速度数据,陀螺仪检测设备相对于世界坐标系的三轴分别对应的角速度数据,由此可以基于加速度数据以及角速度数据,计算得到设备采集每一帧深度图像数据时的位姿数据。
在一些实施方式中,头戴显示设备中还可以包括深度相机模块,以便于设备获取目标现实环境对应的多帧深度图像数据。具体来说,深度相机模块不仅可以采集目标现实环境对应的二维图像数据,也就是各个像素点的色彩亮度等数据,还可以获取二维图像数据中每个像素点对应的深度数据,也就是该像素点在目标现实环境中对应的实际点与深度相机之间的距离。例如,如图2所示,其示出了深度相机模块采集深度图像数据的原理示意图,M点为目标现实环境中的任一点,OXYZ坐标系为深度相机对应的相机坐标系,xoy坐标系为深度相机获取的二维图像数据对应的坐标系,目标现实环境中的M点可以对应于二维图像数据中的像素点Xm,深度相机还可以获取M点与XOY平面的距离,也就是像素点Xm的深度数据。
步骤S120:基于所述位姿数据,将每帧所述深度图像数据转换为参考点云数据,所述参考点云数据包括每个像素点在世界坐标系下的坐标数据。
在本申请实施例中,计算机设备可以基于头戴显示设备中的深度相机得到的目标现实环境对应的多帧深度图像数据,其中每一帧深度图像数据中各个像素点对应的坐标数据均是在深度相机对应的相机坐标系下的坐标数据,而由于头戴显示设备获取每一帧深度图像数据时的位姿数据可以是不同的,也就是说,头戴显示设备采集每一帧深度图像数据时,其内部的相机坐标系与外部的世界坐标系之间的相对位置关系也可以是不同的。为了便于计算机设备后续基于多帧深度图像数据构建目标现实环境对应的三维模型,计算机设备可以预先将得到的每一帧深度图像数据中的每个像素点在相机坐标系下的坐标数据,转换为在世界坐标系下的坐标数据,得到在同一世界坐标系下的多帧参考点云数据,以便于后续基于多帧参考点云数据,构建目标现实环境对应的三维模型。
其中,计算机设备在完成像素点的坐标数据转换之前,可以通过每帧深度图像数据对应的位姿数据,确定头戴显示设备内部的相机坐标系与世界坐标系之间的转换关系。可以理解地,若头戴显示设备在采集深度图像数据的过程中一直在不断的改变其在世界坐标系中的位置和姿态,那么获取的每一帧深度图像数据对应的相机坐标系就都不是相同的,其与世界坐标系之间的转换关系也是不同的。因此,计算机设备可以基于每帧深度图像数据对应的头戴显示设备的位姿数据,确定该帧深度图像数据对应的相机坐标系与世界坐标系之间的转换关系,由此基于该转换关系,将深度图像数据中每个像素点在相机坐标系下的坐标数据转换为在世界坐标系下的坐标数据,得到多帧处于同一世界坐标系下的参考点云数据。
步骤S130:将多帧所述参考点云数据进行数据叠加,得到所述目标现实环境对应的三维点云图像。
在本申请实施例中,计算机设备在得到多帧世界坐标系下的参考点云数据后,可以将这些参考点云数据进行数据叠加与合并,将多帧参考点云数据转换为一张三维点云图像。此时得到的三维点云图像中每个像素点的数据可以正确地表征该像素点在目标现实环境中的位置坐标和色彩亮度等信息,也就是说,三维点云图像已经可以在一定程度上表征目标现实环境的状态,其后计算机设备可以直接通过三维点云图像构建目标现实环境对应的三维模型。
在一些实施方式中,为便于后续基于三维点云图像构建的目标现实环境对应的三维模型能够详尽准确地反映目标现实环境的真实情况,计算机设备可以预先对三维点云图像进行检测,判断其是否符合预设的三维模型的构建标准。可以理解的,由于头戴显示设备在采集深度图像数据的过程中可以任意改变位置和姿态,因此可能会存在部分帧的深度图像数据中数据采集不完全,此时计算机设备在得到三维点云图像后,可以整体上对其进行点云数量或密度的判断,也可以将其划分为多个栅格,依次对每个栅格内的点云数量进行判断,依次判断基于该三维点云图像构建的三维模型是否准确。若存在部分区域点云数量较少,那么计算机设备可以指示用户重新采集这部分区域的深度图像数据,转换得到参考点云数据,进而再次与三维点云图像进行数据叠加,得到的新的三维点云图像就能够更加完整地构建目标现实环境对应的三维模型。
步骤S140:基于所述三维点云图像,构建所述目标现实环境对应的三维模型。
在本申请实施例中,计算机设备得到目标现实环境对应的三维点云图像后,可以直接基于三维点云图像,构建目标现实环境对应的三维模型。其中,三维点云图像中各个点云所包括的数据不仅有该点的色彩亮度等信息,还包括该点在世界坐标系下的坐标数据。具体来说,计算机设备可以通过对三维点云图像进行网格化和纹理映射处理,得到目标现实环境对应的三维模型。
本申请实施例提供的三维模型构建方法,通过获取头戴显示设备在不同的位姿数据下对目标现实环境进行图像采集得到的多帧深度图像数据,以及每帧所述深度图像数据对应的位姿数据;基于所述位姿数据,将每帧所述深度图像数据转换为参考点云数据,所述参考点云数据包括每个像素点在世界坐标系下的坐标数据;将多帧所述参考点云数据进行数据叠加,得到所述目标现实环境对应的三维点云图像;基于所述三维点云图像,构建所述目标现实环境对应的三维模型。通过深度图像数据对应的位姿数据,可以准确地确定深度图像数据之间的相对位置关系,由此基于深度图像数据,可以构建更大尺度内的目标现实环境对应的三维模型,避免三维模型中的场景缺失和错位。
请参阅图3,图3示出了本申请另一个实施例提供的三维模型构建方法的流程示意图,下面将针对图3所示流程进行详细阐述,所述三维模型构建方法具体可以包括以下步骤:
步骤S201:获取头戴显示设备在不同的位姿数据下对目标现实环境进行图像采集得到的多帧深度图像数据,以及每帧所述深度图像数据对应的位姿数据。
在本申请实施例中,步骤S201可以参阅其他实施例的内容,在此不再赘述。
步骤S202:基于预先标定的所述头戴显示设备的内部参数,将每帧所述深度图像数据转换为彩色点云数据,所述彩色点云数据包括每个像素点在相机坐标系下的坐标数据。
在本申请实施例中,头戴显示设备针对目标现实环境直接获取的多帧深度图像数据,通常情况下并不会直接包括每帧图像数据中各个像素点对应的坐标数据,这是由于头戴显示设备是通过配置的深度相机获取的多帧深度图像数据,而深度相机只能够获取深度图像数据中各个像素点的色彩数据和深度数据,而无法直接获取各个像素点的坐标数据。也就是说,计算机设备在通过头戴显示设备获取多帧深度图像数据后,还需要将深度图像数据转换为包括各个像素点坐标数据的彩色点云数据。
如图2所示,其示出了深度相机的获取深度图像数据的原理。深度相机可以获取目标现实环境对应的二维图像数据,即xoy平面,目标现实环境中的M点可以对应于二维图像数据中的Xm点,在这个二维图像数据中,计算机设备可以得到Xm点的坐标。同时深度相机还可以获取目标现实环境中各个位置点与相机平面的距离,也就是M点与OXYZ坐标系中的XOY平面的距离,其中OXYZ坐标系也就是相机坐标系。上述数据是计算机设备可以通过深度相机直接得到的数据,也就是深度图像数据,计算机设备在得到深度图像数据后,可以基于上述数据,将其转换为彩色点云数据,也就是基于各个像素点对应的深度数据,以及预先标定的内部参数等数据,得到各个像素点在相机坐标系OXYZ中的三维坐标数据。
应当理解的是,计算机设备获取的多帧深度图像数据中,每帧深度图像数据对应的位姿数据可以并不相同,也就是说,头戴显示设备可以在不断的移动过程中采集多帧深度图像数据。因此,采集每一帧深度图像数据时头戴显示设备中的深度相机的位置和姿态都可以不同,也就是采集每一帧深度图像数据时,深度相机内部的相机坐标系都是不相同的。计算机设备在将深度图像数据转换为相机坐标系下对应的彩色点云数据后,多帧彩色点云数据中相同像素点分别对应的坐标数据也并不相同,因为每一帧彩色点云数据中的相机坐标系都不相同。因此为便于后续对多帧彩色点云数据进行拼接叠加,计算机设备还需要进一步将彩色点云数据中各个像素点的坐标数据转换为在同一世界坐标系下的坐标数据。
其中,头戴显示设备在获取多帧深度图像数据之前,可以预先对内部配置的深度相机进行标定,也就是标定深度相机对应的相机坐标系的原点位置和各个坐标轴的朝向角度等信息。在标定完成后,计算机设备就可以基于标定后的相机坐标系,以及深度图像数据中各个像素点的色彩数据和深度数据,准确地得到像素点在相机坐标系下的坐标数据。
可以理解的,计算机设备在将深度图像数据转换为彩色点云数据的过程中,仅仅只是将深度图像数据中的各个像素点对应的坐标数据进行了转换,而深度图像数据中各个像素点对应的色彩亮度等信息并不会改变,头戴显示设备采集每帧深度图像数据时对应的位姿数据也并不会改变。计算机设备在将多帧深度图像数据转化为彩色点云数据后,每一帧彩色点云数据中各个像素点对应的数据仍然包括色彩亮度等信息,并且每一帧彩色点云数据也仍然对应有位姿数据,以便于后续计算机设备基于每帧彩色点云数据对应的位姿数据,对彩色点云数据进行拼接叠加等操作。
在一些实施方式中,头戴显示设备中配置的深度相机可以为结构光深度相机,通过近红外激光器,将具有特定结构特征的光线投射到被拍摄物体上,再由专门的红外摄像头进行采集,将采集到的结构光的变化转换为深度信息,依次获取图像数据对应的三维数据。另一种情况下,深度相机还可以为飞行时间(Time of Flight,TOF)深度相机,通过向目标现实环境发射连续激光脉冲,通过传感器接收反射光线,通过测量探测光脉冲的飞行往返时间来得到确定目标现实环境的深度信息。又一种情况下,深度相机还可以为双目立体视觉深度相机,基于视差原理并利用成像设备从不同位置获取目标现实环境的两幅图像,通过计算这两幅图像对应点之间的位置偏差,来确定目标现实环境的深度信息。
步骤S203:基于所述位姿数据,将每帧所述彩色点云数据转换为参考点云数据。
在本申请实施例中,其中,参考点云数据是在世界坐标系下的点云数据。通过前述分析可知,计算机设备获取的每一帧彩色点云数据,都是相对于头戴显示设备对应的相机坐标系下得到的,而由于头戴显示设备在采集数据的过程中不断变更位置和姿态,其对应的相机坐标系也是不断变化的,因此,计算机设备在通过上述步骤得到多帧彩色点云数据后,可以基于每帧彩色点云数据对应的位姿数据,将每帧彩色点云数据中各个像素点在相机坐标系下的坐标数据转换为在世界坐标系下的坐标数据,以便于后续可以在相同的世界坐标系下对多帧参考点云数据进行处理。
在一些实施方式中,如图4所示,步骤S203中基于位姿数据,将每帧彩色点云数据转换为参考点云数据,可以通过下述步骤实现:
步骤S2031:基于所述位姿数据,确定所述相机坐标系与所述世界坐标系之间的转换关系。
在本申请实施例中,计算机设备在将像素点在相机坐标系下的坐标数据转化为在世界坐标系下的坐标数据之前,首先必然要确定相机坐标系与世界坐标系之间的转换关系。而由于头戴显示设备在获取图像数据的过程中,其位姿和姿态都是不断改变的,因此,针对每一帧彩色点云数据,计算机设备都需要确定一个不同的相机坐标系与世界坐标系之间的转换关系。其中,计算机设备可以基于每帧彩色点云数据对应的位姿数据,确定每一帧彩色点云数据对应的相机坐标系与世界坐标系之间的转换关系。
具体来说,基于所述位姿数据,确定相机坐标系与世界坐标系之间的转换关系,还可以通过下述方式实现:
获取所述头戴显示设备在开始进行图像采集时在所述世界坐标系下的参考坐标数据;基于所述头戴显示设备在获取当前帧深度图像数据时对应的位姿数据,以及所述参考坐标数据,确定所述头戴显示设备在获取所述当前帧深度图像数据时对应的相机坐标系,以及所述相机坐标系与所述世界坐标系之间的转换关系。
也就是说,头戴显示设备在对目标现实环境进行图像采集之前,可以首先获取一个参考坐标数据,可以包括此时相机坐标系各坐标轴与世界坐标系对应坐标轴之间的角度数据,以及相机坐标系原点在世界坐标系下的坐标数据等信息。设备在采集第一帧深度图像数据时,该帧深度图像数据对应的位姿数据就是头戴显示设备在采集该帧数据时,相机坐标系的各个坐标轴的旋转角速度和加速度,基于角速度和加速度,以及设备预先获取的参考坐标数据,可以得到采集第一帧深度图像数据时相机坐标系在世界坐标系下的准确位置,也就是此时的相机坐标系与世界坐标系之间的转换关系。同时,设备可以将参考坐标数据更新为此时得到的转换关系,以便于后续基于相同的方法,得到设备采集第二帧深度图像数据时,相机坐标系与世界坐标系之间的转换关系。
步骤S2032:基于所述转换关系,将每帧所述彩色点云数据中的每个像素点对应的坐标数据转换为在所述世界坐标系下的坐标数据,得到多帧所述参考点云数据。
在本申请实施例中,计算机设备在得到相机坐标系与世界坐标系之间的转换关系后,可以基于转换关系,将彩色点云数据中每个像素点对应的在相机坐标系下的坐标数据转化为在世界坐标系下的坐标数据。其中,每帧彩色点云数据对应的相机坐标系均不同,因此每帧彩色点云数据对应的相机坐标系与世界坐标系之间的转换关系也不同,计算机设备可以基于当前帧彩色点云数据对应的位姿数据,以及之前所有帧彩色点云数据分别对应的位姿数据,得到当前帧彩色点云数据对应的相机坐标系与世界坐标系之间的转换关系。
步骤S204:确定每相邻两帧所述参考点云数据之间的重叠区域内的点云数量。
在本申请实施例中,计算机设备在基于位姿数据,将每帧彩色点云数据转换为参考点云数据后,可以将多帧参考点云数据进行叠加拼接,以得到目标现实环境对应的三维点云图像。其中,目标现实环境对应的三维点云图像只有一张,其中的各个点云数据包括该点在世界坐标系下的坐标数据,以及该点的色彩亮度等信息。可以理解的,计算机设备直接获取的多帧深度图像数据中必然会存在部分目标现实环境的重叠区域,也就是相同的点云数据被多帧深度图像数据重复获取,因此在计算机设备将深度图像数据转换为在相同世界坐标系下的参考点云数据后,可以确定相邻两帧参考点云数据之间的重叠区域,并获取这些重叠区域内的点云数量,以便于基于这些重叠区域的点云,确定三维点云图像在重叠区域的图像。
步骤S205:基于所述点云数量,对相邻两帧所述参考点云数据进行数据叠加,得到所述目标现实环境对应的三维点云图像。
计算机设备在得到相邻两帧参考点云数据之间的重叠区域的点云数量后,可以对相邻两帧的参考点云数据进行叠加,并将相邻两帧参考点云数据中的不同数据进行拼接,使经过处理后得到的三维点云图像能够显示之前两帧参考点云数据所表示的目标现实环境的范围。基于相同的处理方法,将计算机设备得到的所有帧参考点云数据进行数据叠加,最终生成的目标现实环境对应的三维点云图像能够表征头戴显示设备在采集过程中所扫描到的目标现实环境的所有范围。由此计算机设备可以基于更大范围内的目标现实环境对应的三维点云图像,构建目标现实环境的三维模型,该三维模型也就能够显示更大范围内的目标现实环境。
在一些实施方式中,计算机设备在进行相邻两帧参考点云数据的数据叠加时,可以基于两帧参考点云数据之间的重叠情况,对点云进行删除、增加、合并或去重等操作。例如,若对于相同目标区域内,相邻两帧的参考点云数据中包括的点云数量均小于预设数值,则计算机设备可以基于目标区域周围相邻区域内的点云,拟合添加一些新的点云至目标区域中,以便于最终生成目标现实环境对应的三维点云图像。又如,若对于相同目标区域内,相邻两帧参考点云数据中包括的点云数据过多,那么计算机设备为减少后期生成三维点云图像的计算量,可以适当删除或合并目标区域中的一些点云数据。
步骤S206:通过所述头戴显示设备对所述三维点云图像进行显示。
在本申请实施例中,计算机设备在得到目标现实环境对应的三维点云图像后,可以通过头戴显示设备对三维点云图像进行显示,以便用户观察目标现实环境对应的三维点云图像,并通过用户对三维点云图像的人工检查,判断是否需要对三维点云图像中的部分图像进行补充采集。值得注意的是,此时头戴显示设备显示的三维点云图像,是由设备开始采集后所采集到的所有深度图像数据融合形成得到的,而并不仅仅是基于采集到当前帧深度图像数据得到的,因此,用户通过头戴显示设备可以观测到更大范围内的目标现实环境对应的三维点云图像,并且是在基于三维点云图像构建三维模型之前预先进行观测。由此,计算机设备可以通过用户人工观测的方式,在构建目标现实环境对应的三维模型之前,对三维点云图像进行局部质量判断,使最终构建的三维模型更加准确。
在一些实施方式中,头戴显示设备还可以包括显示装置和控制装置,用户可以通过控制装置对显示装置上显示的三维点云图像进行移动或者放大等仔细观察,以便于用户判断三维点云图像的质量。
步骤S207:若接收到用户对于所述三维点云图像中目标区域的重传操作,获取所述头戴显示设备在不同位姿下对所述目标区域重新进行图像采集得到的多帧补充深度图像数据。
步骤S208:基于所述补充深度图像数据,对所述三维点云图像进行更新。
在本申请实施例中,用户可以通过头戴显示设备对三维点云图像进行观测,并且可以在判断三维点云图像中目标区域的图像不够准确时,通过重传操作控制头戴显示设备重新采集目标现实环境中的目标区域的多帧补充深度图像数据。计算机设备在接收到用户基于三维点云图像中目标区域的重传操作时,可以再次获取头戴显示设备基于目标区域采集的多帧补充深度图像数据以及每帧补充深度图像数据对应的位姿数据,并再次将这多帧补充深度图像数据转换为补充彩色点云数据,以及基于位姿数据将其转换为补充参考点云数据,将补充参考点云数据进行拼接叠加,得到包括目标区域的补充三维点云图像。此时计算机设备得到的补充三维点云图像仅仅用于对原本的三维点云图像中的目标区域进行更新,并不一定包括原本三维点云图像中所有区域的图像。
步骤S209:对所述三维点云图像中的目标区域进行质量检测。
步骤S210:若所述质量检测的结果满足预设质量条件,则输出第一提示信息,所述第一提示信息用于提示用户重新通过所述头戴显示设备获取所述目标区域对应的深度图像数据。
在本申请实施例中,计算机设备在得到目标现实环境对应的三维点云图像后,还可以主动对三维点云图像进行质量检测,此时质量检测的标准并不是用户的人工观测,而是计算机设备预先设定的标准。例如可以是固定大小区域内的点云的数量或者三维点云图像整体的点云密度;还可以是基于三维点云图像中各个点云对应的距离信息,若距离小于预设范围的点云的数量少于预设数量,那么计算机设备也可以判断三维点云图像的质量不高;又如,计算机设备还可以对三维点云图像进行识别和分割,判断三维点云图像中物体的数量和种类:若无法在其中识别到预设数量的物体,或者识别到的物体中包括的点云数量少于预设数量,或者识别到的物体本身内部缺失较多,那么计算机设备都可以判断此时的三维点云图像的质量较差。进而向用户输出第一提示信息,以便于用户通过头戴显示设备重新获取目标区域对应的深度图像数据及其对应的位姿数据,并重新基于深度图像数据以及位姿数据对三维点云图像中的目标区域进行更新。
步骤S211:基于所述三维点云图像,构建所述目标现实环境对应的三维模型。
在本申请实施例中,步骤S211可以参阅其他实施例的内容,在此不再赘述。
本申请实施例提供的三维模型构建方法,通过获取多帧深度图像数据以及对应的位姿数据,先将深度图像数据转换为彩色点云数据,再基于每帧彩色点云数据对应的位姿数据,确定相机坐标系与世界坐标系之间的转换关系后,将多帧彩色点云数据转换为参考点云数据,再将多帧参考点云数据进行数据叠加,得到目标现实环境对应的三维点云图像,在完成对三维点云图像的质量检测后,构建目标现实环境对应的三维模型。通过深度图像数据对应的位姿数据,可以准确地确定深度图像数据之间的相对位置关系,由此基于深度图像数据,可以构建更大尺度内的目标现实环境对应的三维模型,避免三维模型中的场景缺失和错位,同时可以通过人工检测或者主动检测,在构建三维模型前对三维点云图像进行质量检测,以使构建的三维模型更加准确。
请参阅图5,其示出了本申请一种实施例提供的三维模型构建装置200的结构框图,三维模型构建装置200包括:数据获取模块210、数据转换模块220、数据叠加模块230以及模型构建模块240。其中,数据获取模块210用于获取头戴显示设备在不同的位姿数据下对目标现实环境进行图像采集得到的多帧深度图像数据,以及每帧深度图像数据对应的位姿数据;数据转换模块220用于基于位姿数据,将每帧深度图像数据转换为参考点云数据,参考点云数据包括每个像素点在世界坐标系下的坐标数据;数据叠加模块230用于将多帧参考点云数据进行数据叠加,得到目标现实环境对应的三维点云图像;模型构建模块240用于基于三维点云图像,构建目标现实环境对应的三维模型。
作为一种可能的实施方式,数据转换模块220包括坐标确定单元以及坐标转换单元,其中,坐标确定单元用于基于预先标定的头戴显示设备的内部参数,将每帧深度图像数据转换为彩色点云数据,彩色点云数据包括每个像素点在相机坐标系下的坐标数据;坐标转换单元用于基于位姿数据,将每帧彩色点云数据转换为参考点云数据。
作为一种可能的实施方式,坐标转换单元包括关系确定组件以及数据转换组件,其中,关系确定组件用于基于位姿数据,确定相机坐标系与世界坐标系之间的转换关系;数据转换组件用于基于转换关系,将每帧彩色点云数据中的每个像素点对应的坐标数据转换为在世界坐标系下的坐标数据,得到多帧参考点云数据。
作为一种可能的实施方式,关系确定组件还用于获取头戴显示设备在开始进行图像采集时在世界坐标系下的参考坐标数据;基于头戴显示设备在获取当前帧深度图像数据时对应的位姿数据,以及参考坐标数据,确定头戴显示设备在获取当前帧深度图像数据时对应的相机坐标系,以及相机坐标系与世界坐标系之间的转换关系。
作为一种可能的实施方式,三维模型构建装置200还包括区域检测模块,用于通过头戴显示设备对三维点云图像进行显示;若接收到用户对于三维点云图像中目标区域的重传操作,获取头戴显示设备在不同位姿下对目标区域重新进行图像采集得到的多帧补充深度图像数据;基于补充深度图像数据,对三维点云图像进行更新。
作为一种可能的实施方式,三维模型构建装置200还包括主动检测模块,用于对三维点云图像中的目标区域进行质量检测;若质量检测的结果满足预设质量条件,则输出第一提示信息,第一提示信息用于提示用户重新通过头戴显示设备获取目标区域对应的深度图像数据。
作为一种可能的实施方式,数据叠加模块230还用于确定每相邻两帧参考点云数据之间的重叠区域内的点云数量;基于点云数量,对相邻两帧参考点云数据进行数据叠加,得到目标显示环境对应的三维点云图像。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
综上所述,本申请提供的方案,通过获取头戴显示设备在不同的位姿数据下对目标现实环境进行图像采集得到的多帧深度图像数据,以及每帧所述深度图像数据对应的位姿数据;基于所述位姿数据,将每帧所述深度图像数据转换为参考点云数据,所述参考点云数据包括每个像素点在世界坐标系下的坐标数据;将多帧所述参考点云数据进行数据叠加,得到所述目标现实环境对应的三维点云图像;基于所述三维点云图像,构建所述目标现实环境对应的三维模型。通过深度图像数据对应的位姿数据,可以准确地确定深度图像数据之间的相对位置关系,由此基于深度图像数据,可以构建更大尺度内的目标现实环境对应的三维模型,避免三维模型中的场景缺失和错位。
请参考图6,其示出了本申请实施例提供的一种计算机设备400的结构框图。其中,计算机设备400可以为物理服务器、云服务器等。本申请中的计算机设备400可以包括一个或多个如下部件:处理器410、存储器420、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器420中并被配置为由一个或多个处理器410执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器410可以包括一个或者多个处理核。处理器410利用各种接口和线路连接整个计算机设备内的各个部分,通过运行或执行存储在存储器420内的指令、程序、代码集或指令集,以及调用存储在存储器420内的数据,执行计算机设备的各种功能和处理数据。可选地,处理器410可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器410可集成中央处理器(CentralProcessing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作***、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器410中,单独通过一块通信芯片进行实现。
存储器420可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器420可用于存储指令、程序、代码、代码集或指令集。存储器420可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作***的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储计算机设备在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
请参考图7,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质800中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质800可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质800包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质800具有执行上述方法中的任何方法步骤的程序代码810的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码810可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种三维模型构建方法,其特征在于,所述方法包括:
获取头戴显示设备在不同的位姿数据下对目标现实环境进行图像采集得到的多帧深度图像数据,以及每帧所述深度图像数据对应的位姿数据;
基于所述位姿数据,将每帧所述深度图像数据转换为参考点云数据,所述参考点云数据包括每个像素点在世界坐标系下的坐标数据;
将多帧所述参考点云数据进行数据叠加,得到所述目标现实环境对应的三维点云图像;
基于所述三维点云图像,构建所述目标现实环境对应的三维模型。
2.根据权利要求1所述的方法,其特征在于,所述基于所述位姿数据,将每帧所述深度图像数据转换为参考点云数据,包括:
基于预先标定的所述头戴显示设备的内部参数,将每帧所述深度图像数据转换为彩色点云数据,所述彩色点云数据包括每个像素点在相机坐标系下的坐标数据;
基于所述位姿数据,将每帧所述彩色点云数据转换为参考点云数据。
3.根据权利要求2所述的方法,其特征在于,所述基于所述位姿数据,将每帧所述彩色点云数据转换为参考点云数据,包括:
基于所述位姿数据,确定所述相机坐标系与所述世界坐标系之间的转换关系;
基于所述转换关系,将每帧所述彩色点云数据中的每个像素点对应的坐标数据转换为在所述世界坐标系下的坐标数据,得到多帧所述参考点云数据。
4.根据权利要求3所述的方法,其特征在于,所述基于位姿数据,确定所述相机坐标系与所述世界坐标系之间的转换关系,包括:
获取所述头戴显示设备在开始进行图像采集时在所述世界坐标系下的参考坐标数据;
基于所述头戴显示设备在获取当前帧深度图像数据时对应的位姿数据,以及所述参考坐标数据,确定所述头戴显示设备在获取所述当前帧深度图像数据时对应的相机坐标系,以及所述相机坐标系与所述世界坐标系之间的转换关系。
5.根据权利要求1所述的方法,其特征在于,在所述将多帧所述参考点云数据进行数据叠加,得到所述目标显示环境对应的三维点云图像之后,所述方法还包括:
通过所述头戴显示设备对所述三维点云图像进行显示;
若接收到用户对于所述三维点云图像中目标区域的重传操作,获取所述头戴显示设备在不同位姿下对所述目标区域重新进行图像采集得到的多帧补充深度图像数据;
基于所述补充深度图像数据,对所述三维点云图像进行更新。
6.根据权利要求1所述的方法,其特征在于,在所述基于所述三维点云图像,构建所述目标现实环境对应的三维模型之前,所述方法还包括:
对所述三维点云图像中的目标区域进行质量检测;
若所述质量检测的结果满足预设质量条件,则输出第一提示信息,所述第一提示信息用于提示用户重新通过所述头戴显示设备获取所述目标区域对应的深度图像数据。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述将多帧所述参考点云数据进行数据叠加,得到所述目标现实环境对应的三维点云图像,包括:
确定每相邻两帧所述参考点云数据之间的重叠区域内的点云数量;
基于所述点云数量,对相邻两帧所述参考点云数据进行数据叠加,得到所述目标现实环境对应的三维点云图像。
8.一种三维模型构建装置,其特征在于,所述装置包括:
数据获取模块,用于获取头戴显示设备在不同的位姿数据下对目标现实环境进行图像采集得到的多帧深度图像数据,以及每帧所述深度图像数据对应的位姿数据;
数据转换模块,用于基于所述位姿数据,将每帧所述深度图像数据转换为参考点云数据,所述参考点云数据包括每个像素点在世界坐标系下的坐标数据;
数据叠加模块,用于将多帧所述参考点云数据进行数据叠加,得到所述目标现实环境对应的三维点云图像;
模型构建模块,用于基于所述三维点云图像,构建所述目标现实环境对应的三维模型。
9.一种计算机设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-7任一项所述的方法。
10.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310115961.6A CN116228974A (zh) | 2023-02-13 | 2023-02-13 | 三维模型构建方法、装置、计算机设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310115961.6A CN116228974A (zh) | 2023-02-13 | 2023-02-13 | 三维模型构建方法、装置、计算机设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116228974A true CN116228974A (zh) | 2023-06-06 |
Family
ID=86586777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310115961.6A Pending CN116228974A (zh) | 2023-02-13 | 2023-02-13 | 三维模型构建方法、装置、计算机设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116228974A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117237544A (zh) * | 2023-11-13 | 2023-12-15 | 天津云圣智能科技有限责任公司 | 一种训练数据的生成方法、装置、电子设备及存储介质 |
-
2023
- 2023-02-13 CN CN202310115961.6A patent/CN116228974A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117237544A (zh) * | 2023-11-13 | 2023-12-15 | 天津云圣智能科技有限责任公司 | 一种训练数据的生成方法、装置、电子设备及存储介质 |
CN117237544B (zh) * | 2023-11-13 | 2024-01-26 | 天津云圣智能科技有限责任公司 | 一种训练数据的生成方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107223269B (zh) | 三维场景定位方法和装置 | |
JP5538667B2 (ja) | 位置姿勢計測装置及びその制御方法 | |
US10237532B2 (en) | Scan colorization with an uncalibrated camera | |
JP6733267B2 (ja) | 情報処理プログラム、情報処理方法および情報処理装置 | |
US8571303B2 (en) | Stereo matching processing system, stereo matching processing method and recording medium | |
WO2010093682A1 (en) | Fusion of a 2d electro-optical image and 3d point cloud data for scene interpretation and registration performance assessment | |
JP6797607B2 (ja) | 画像処理装置、画像処理方法および画像処理用プログラム | |
JP6589636B2 (ja) | 3次元形状計測装置、3次元形状計測方法及び3次元形状計測プログラム | |
CN107796370B (zh) | 用于获取转换参数的方法、装置及移动测图*** | |
US11989827B2 (en) | Method, apparatus and system for generating a three-dimensional model of a scene | |
EP2662833A2 (en) | Light source data processing device, method and program | |
CN114494388B (zh) | 一种大视场环境下图像三维重建方法、装置、设备及介质 | |
JP5311465B2 (ja) | ステレオマッチング処理システム、ステレオマッチング処理方法、及びプログラム | |
CN112270702A (zh) | 体积测量方法及装置、计算机可读介质和电子设备 | |
EP4140552A1 (en) | Image processing apparatus, image processing method, and program | |
CN113597568A (zh) | 数据处理方法、控制设备及存储介质 | |
CN116228974A (zh) | 三维模型构建方法、装置、计算机设备以及存储介质 | |
JP6928217B1 (ja) | 測定処理装置、方法及びプログラム | |
JP7450166B2 (ja) | 変位検出方法及び変位検出装置 | |
CN111742352A (zh) | 3d对象建模方法以及相关设备和计算机程序产品 | |
JP3862402B2 (ja) | 3次元モデル生成装置および3次元モデル生成プログラムを記録したコンピュータ読取可能な記録媒体 | |
JP7020418B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
CN113140031A (zh) | 三维影像建模***、方法及应用其的口腔扫描设备 | |
CN116704138B (zh) | 倾斜摄影三维模型的建立方法及装置 | |
JP7075090B1 (ja) | 情報処理システム、及び、情報処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |