一种基于体素的快速三维建模方法及系统

文档序号:25526005发布日期:2021-06-18 20:15阅读:259来源:国知局
一种基于体素的快速三维建模方法及系统

本发明属于三维建模领域,具体涉及一种基于体素的物体快速三维重建方法及系统,仅用有限的rgbd摄像机数据快速重建物体的几何纹理细节。



背景技术:

目前,常用的三维重建方式分为以下几种:一、利用单台含深度摄像头的相机,围绕指定物体进行缓慢移动与拍摄,如在论文“kinectfusion”中所提出的技术,尽管能够获得较好的融合结果,但由于拍摄时手持相机不可避免存在抖动,或手持相机时移动速度变化较快而导致动态模糊,需要多次反复扫描才能获得较好效果;二、利用多台含深度摄像头的相机,分别固定于指定位置处,指定物体位于相机组的中间位置,通过预设的先验知识构建物体初始模型,再利用相机拍摄图片对物体模型进行拟合修改,尽管这样可以避免对设备使用者的过高技术要求,但需要预设的物体初始模型,因此这类方法一般被用于人体的三维重建,人体模型形态统一,且已有许多方法对人体模型进行数学建模,方便结合数学方法进行调整、优化;三、利用多台相机从不同视角拍摄众多张指定物体的照片,依据照片之间的特征相似程度构建数学模型,并迭代优化出各个特征所处的三维空间位置,但这类方法一般多用于庞大建筑的三维重建,不仅需要足够多的清晰、高分辨率照片,同时需要确保照片之间有拍摄到范围足够大的相同区域。现有技术中,缺乏一种较快速的基于体素的利用多视角rgbd摄像机的三维重建方法。



技术实现要素:

为了克服现有技术的不足,本发明提供了一种一种基于体素的物体快速三维重建方法及系统,解决现有的建模方法对于输入数据量不足时无法进行有效的三维重建或数据采集、数据处理操作复杂而难以高效建模的问题。

本发明设计的基于体素的快速三维建模的方法,包括以下步骤:

步骤s1:从各视角采集360度方位覆盖目标物体的多张图像,图像采集使用带rgb摄像头与深度摄像头的摄像机;

步骤s2:获取拍摄图像对应视角下的的三维点云和目标物体在该视角下的轮廓图;

步骤s3:采用一体素裁剪单元从各个视角对预设体素模型进行过滤,剔除冗余体素;

步骤s4:采用一体素融合单元在经步骤s3处理后的体素模型上,将来自各视角的点云在体素层面上进入融合,首先根据所有摄像头坐标系相对于基础坐标系的对应位姿变换矩阵,将每个摄像机所采集的点云变换到基础坐标系中进行体素融合处理,进而获取目标物体的体素模型;

步骤s5:采用一体素填补单元在经步骤s4处理后的体素模型上,优化各个体素,填补部分存在空洞的区域;

步骤s6:采用一网格抽取单元对经步骤s5处理后的体素模型,利用各个体素中存储的sdf值进行三角面片的抽取,在进行网格平滑与简化后,计算点云的法向量,进而生成带有法向量的三维网格数据;

步骤s7:采用一纹理生成单元对经s6处理后的三维网格进行纹理生成处理,结合点云图像,生成统一、对齐、逼真的网格纹理,进而获取完整的带纹理的目标物体的三维模型。

作为优选,体素裁剪单元与体素融合单元中所依据的位姿变换矩阵通过一相机标定单元获取,相机标定单元用于与一在置物平台上放置的黑白棋盘格标定纸进行配合,以获取每个深度摄像头坐标系与位于置物平台中心位置的世界坐标系之间的位姿变换矩阵,进而获取每个深度摄像头坐标系与基础坐标系之间的位姿变换矩阵。

基于同一思想,本发明还设计了一种基于体素的三维重建装置,其包括拍摄装置,拍摄装置包括置物平台,置物平台四周按圆周方向间隔摆放数量不为1的n个直杆,每个直杆上固定有1到2个摄像机;每个摄像机均朝向装置中央,任一台摄像机内均设有rgb摄像头与深度摄像头;

拍摄装置连接着数据处理系统,数据处理系统包括:图像处理单元、体素裁剪单元、体素融合单元、体素填补单元、网格抽取单元和纹理生成单元;

所述n台摄像机的rgb摄像头与深度摄像头用于共同对目标物体进行拍摄,以从不同视角获得目标物体的rgbd图像;

图像处理单元用于对每个rgb摄像头和深度摄像头所拍摄的rgb照片和深度图像进行处理,以获取对应视角下的三维点云和目标物体在该视角下的轮廓图;

体素裁剪单元用于依据轮廓图与预设的位姿变换矩阵对预设体素模型进行裁剪,以剔除未包含有目标物体信息的多余体素;

体素融合单元用于将各个视角的三维点云依据预设位姿变换矩阵变换到基础坐标系中,再在体素层面上进行加权融合,以保证体素中存储的是体素的中心点到目标物体表面的距离值;

体素填补单元用于对体素模型进行优化处理,以补足部分因缺失深度信息而存在的孔洞;

网格抽取单元用于从体素模型中提取出连续的三角面片网格,并对网格进行优化,以获取能够用于后续纹理生成的优质网格模型;

纹理生成单元用于根据拍摄的rgb照片、标定的位姿变换矩阵和生成的网格模型,对模型各个面片进行纹理生成,以输出带纹理的网格模型。

本发明的一种基于体素的三维重建装置中,在对目标物体进行拍摄时,将目标物体放置于置物平台上,之后数据处理系统将自动完成对数据的提取和处理,从而能够较好地重建目标物体的三维模型。

本发明的优点在于:通过获取rgbd摄像机拍摄得到的目标物体的rgb图像和深度图像,确定rgbd摄像机在拍摄平台中的相对相机位姿,并进行体素裁剪、融合、修补计算得到目标物体的体素模型,再提取体素模型中含有的等值面所对应的网格模型,对网格进行简化优化,并应用纹理映射方法生成网格各处的纹理贴图,得到目标物体的逼真的三维重建模型。解决了在有限视角下对目标物体进行三维重建时信息不足的问题,同时实现了对目标物体进行快速的三维重建。既快速又准确。

附图说明

图1为实施例1中的拍摄装置的示意图。

图2为实施例1中的数据处理系统的示意图。

图3为实施例1中的三维重建方法的流程示意图。

具体实施方式

为进一步了解本发明的内容,使本发明的目的、技术方案及优点更加清晰明了,以下结合附图和实施例对本发明进行详细说明。

本发明所设计的本实施例提供了一种基于体素的三维重建与纹理映射方法。其包括以下步骤:

步骤s1:在一个置物平台110的四周按圆周方向间隔设置n台rgbd摄像机120,如图3中的no.1、no.2、……、no.n,并使得每个rgbd摄像机均朝向置物平台110中央,从而搭建起固定结构的装置,用于后续拍摄处理;

步骤s2:将目标物体放置于置物平台110中央,令n台rgbd摄像机120同时对目标物体进行拍摄,通过一图像处理单元对每个rgbd摄像机120所采集的rgb图像进行处理,进而获取每个视角下目标物体对应的轮廓图,如图3中的rgb轮廓图no.1、rgb轮廓图no.2、……、rgb轮廓图no.n;

步骤s3:采用一体素裁剪单元在体素模型上依据获取的全部轮廓图进行体素的裁剪处理;

步骤s4:将每个rgbd摄像机120所采集的深度图像进行处理,根据所有深度摄像头坐标系相对于基础坐标系的对应位姿变换矩阵,将每个深度摄像头所采集的数据变换到基础坐标系的体素模型中,进而通过一体素融合单元进行融合;

步骤s5:采用一体素填补单元对融合后的体素模型进行处理,填补部分由于信息缺失而产生的孔洞;

步骤s6:采用一网格抽取单元对经s5处理后的体素模型进行三角面片提取,进而获取完整的三维模型,同时进行网格简化与网格平滑;

步骤s7:采用一纹理生成单元对经s6生成的三维模型进行纹理映射,进而获取具有纹理的三维模型。

本实施例的步骤s3中,利用全部视角的轮廓图,对预设分辨率大小的体素模型进行裁剪。其中,利用步骤s2中获取到的摄像机相对位姿,可以对各体素执行反投影操作。

具体的,为了解决体素模型中冗余体素的剔除问题,本专利提出了适用于该情况的体素剔除得分思想,主张了一种具体可行的得分计算公式,定义如下:

用于剔除大部分的不含有目标物体三维信息的冗余体素,其中x代表在体素模型中的某一个体素,n为摄像机的总数目,pici(x)表示将体素x依据投影矩阵投影到第i个视角的rgb照片上时的所在位置(像素位置),maski(pixel)为获取第i个视角的轮廓图在pixel位置信息的函数,如果位于轮廓图内,则取1,否则取0.5,colori(pixel)为获取第i个视角的rgb图片在pixel位置的颜色值,μ(x)为将体素x投影至全部视角后所获得的平均颜色值。

其中将rgb图片转换到lab颜色空间,并定义距离函数:

其中对于两个颜色color1和color2,colori(a)、colori(b)分别代表lab颜色的a、b分量。

作为优选,对于每一个体素,fs3(x)得分在0.6以上的体素可以被保留,否则被标记为丢弃,即确保在大部分视角中位于轮廓图内,且颜色基本一致的体素能够被保留。

本实施例的步骤s4中,利用拍摄的来自各个视角的深度图,进行体素融合与信息值更新。

其中,当利用s3处理完全部视角下的轮廓图后,首先利用步骤s2中获取到的摄像机相对位姿,将像素投影到体素模型中的某一个体素位置。

本实施例中的体素模型可以是tsdf模型,具体的,为了解决快速实时的体素融合,本专利提出了适用于有限数量的摄像机下的融合思想,主张了一种简化的体素测量值的融合公式,定义如下:

用于对体素模型中的每个体素进行融合处理,计算当前体素到目标物体表面的距离值,其中pici(x)表示将体素x依据投影矩阵投影到第i个视角的rgb照片上时的所在位置(像素位置,depthi(pixel)为获取第i个视角的深度图在pixel位置的值的函数,camzi(pixel)为获取体素x在第i个视角下的深度值,即与第i个摄像机的距离值。

本实施例的步骤s5中,利用拍摄的来自各个视角的rgb图片,对体素进行部分孔洞的填补。

具体的,为了解决体素之间可能存在的部分孔洞的问题,本专利提出了适用于在体素裁剪思想的基础上使用的填补思想,主张了一种计算补偿得分的体素的填补公式,定义如下:

用于对体素模型中的每个体素进行逐个检测并计算得分,进而根据所得分数决定是否需要重新填补部分可能存在的孔洞,其中x代表在体素模型中的某一个体素,n为摄像机的总数目,pici(x)表示将体素x依据投影矩阵投影到第i个视角的rgb照片上时的所在位置(像素位置,colori(pixel)为获取第i个视角的rgb图片在pixel位置的颜色值,μ(x)为将体素x投影至全部视角后所获得的平均颜色值。

作为优选,fs5(x)的得分在0.6以上的体素可以被填补,同时它们的tsdf值被赋值为0,即认为物体表面经过这类体素的中心。

本实施例的步骤s6中,通过从体素模型中抽取出三角网格,之后选择合适的网格简化算法与网格平滑算法,对生成网格进行简化、优化,以进行之后的步骤。

具体的,利用marchingcube算法从由步骤s5中计算获得的tsdf模型中抽取三角面片,同时可以应用网格简化算法,如quadricserrormetrics二次误差测算方法对三角面片网格进行平滑与简化。

作为优选,可以对三角面片网格的点云使用高阶泊松重建算法,获得更加平滑的模型。

本实施例的步骤s7中,通过使用已有的对面片进行纹理映射的算法,可以较好地为步骤s6中优化后的模型生成纹理贴图。

具体的,对于模型的每一个面片x,将其依据步骤s2获得的相机矩阵投影至各个视角的rgb图片上,依据如下公式获得视角i在面片x上的得分:

其中x是模型上的一个面片,normal(x)是获取面片x的单元法向量,vi是第i个视角的相机的单位方向向量,distancei(x)是获取第i个视角的相机与面片x的中心点距离。

之后,依据如下公式挑选出得分最大的视角作为面片x的纹理来源(含视角序号与对应投影矩阵):

由于相邻面片可能选取来自不同视角的图片作为纹理,而相机矩阵的估计必定存在少量误差,引入全局优化方程对每个面片的纹理来源的相机矩阵进行独立调节,不同面片的纹理可能来自同一个视角,但经过全局优化后,它们各自的相机矩阵可能有细微不同,以此我们确保面片之间的纹理尽可能一致。

具体的,为了解决不同面片之间因为相机矩阵误差而导致的纹理不对齐问题,本专利提出了适用于后处理时迭代纹理的优化思想,主张了一种计算纹理迭代效果优劣的能量方程,定义如下:

用于在初始纹理生成后,以迭代的求解方式,不断优化各个面片的相机矩阵,最终保证能量方程es7(t)的值尽可能小,从而获得更加一致的纹理图片,其中ti是第i个面片的纹理来源的相机矩阵,f是全部面片的集合,gi是第i个面片的相邻面片的集合,pj是第j个面片的顶点的集合,p代表其中一个顶点的世界坐标,,colori(pixel)为获取在第i个面片所对应的视角的rgb图片中pixel位置的颜色值,camzi(p)为获取在第i个面片所对应的视角下三维点p距离该视角相机的距离值,depthi(pixel)为获取在第i个面片所对应的视角的深度图片中pixel位置的深度值,λ是保持几何不变的约束项的权值。

利用本实施例的重建方法,本实施例还提供了一种基于体素的三维重建装置,能较好地实现对目标物体的三维模型构建。如图1所示,其为本实施例的一种基于体素的三维重建装置。其包括拍摄装置,拍摄装置包括置物平台110,置物平台110四周按圆周方向间隔设有数量不为1的n台rgbd摄像机120;任一摄像机120均朝向置物平台110中央,均设有rgb摄像头和深度摄像头。

如图2所示,拍摄装置内设有数据处理系统,数据处理系统包括图像处理单元、体素裁剪单元、体素融合单元、体素填补单元、网格抽取单元和纹理生成单元。

本实施例的一种基于体素的三维重建装置中,在对目标物体进行拍摄时,能够将目标物体置于置物平台110上,之后通过数据处理系统能够自动完成对三维模型数据的提取、计算和生成,从而能较好地重建出目标物体的三维模型。

图像处理单元用于对每个rgb摄像头和深度摄像头所拍摄的rgb照片和深度图像进行处理,以获取对应视角下的三维点云和目标物体在该视角下的轮廓图;

体素裁剪单元用于依据轮廓图与预设的位姿变换矩阵对预设体素模型进行裁剪,以剔除未包含有目标物体信息的多余体素;

体素融合单元用于将各个视角的三维点云依据预设位姿变换矩阵变换到基础坐标系中,再在体素层面上进行融合,进而获取目标物体的体素模型;

体素填补单元用于对体素模型进行优化处理,以补足部分因缺失深度信息而存在的孔洞;

网格抽取单元用于从体素模型中提取出连续的三角面片网格,并对网格进行优化,计算点云的法向量,进而生成带有法向量的三维网格数据;

纹理生成单元用于根据拍摄的rgb照片、标定的位姿变换矩阵和生成的网格模型,对模型各个面片进行纹理生成,生成统一、对齐、逼真的网格纹理,进而获取完整的带纹理的目标物体的三维模型。

另外,本领域的技术人员应当理解的是,n台rgbd摄像机120在布置时应当使得目标物体的360度方位均尽可能被拍摄到,从而保证算法应用时能够较好地剔除多余体素,进而才能较好地提取网格模型。

结合图2,本实施例中的三维重建装置中,体素裁剪单元与体素融合单元中所使用的位姿变换矩阵通过一相机标定单元获取,相机标定单元与一张黑白棋盘格标定纸进行配合以利用张正友棋盘格标定法获取每个rgbd摄像机坐标系与世界坐标系之间的位姿变换矩阵,进而获取每个rgb摄像头与深度摄像头坐标系与基础坐标系之间的位姿变换矩阵。

本实施例提供了一种基于体素的三维重建方法和装置,通过获取rgbd摄像机拍摄得到的目标物体的rgb图像和深度图像,确定rgbd摄像机在拍摄平台中的相对相机位姿,并进行体素裁剪、融合、修补计算得到目标物体的体素模型,再提取体素模型中含有的等值面所对应的网格模型,对网格进行简化优化,并应用纹理映射方法生成网格各处的纹理贴图,得到目标物体的逼真的三维重建模型。解决了在有限视角下对目标物体进行三维重建时信息不足的问题,同时实现了对目标物体进行快速的三维重建。

以上所述仅为本发明的优选实施例而已,不能认定本发明的具体实施只限于此实例,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,都应当视为属于本发明的保护范围。

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