发明内容
本发明所要解决的第一技术问题在于提供一种自动获取物体表面完整三维数据的方法,可适用于诸多复杂形状物体表面的三维测量。
本发明是这样实现的,一种自动获取物体表面完整三维数据的方法,包括以下步骤:
步骤A,根据待测物体的具体形状,确定出所需的三维传感器的数量以及需要旋转的角度,然后将所需的若干三维传感器沿一个方向顺次排布;
步骤B,将待测物体置于一透明平台上,透明平台位于若干三维传感器的一侧,使待测物体从顶面至底面均处于若干三维传感器的采集范围之内;
步骤C,控制透明平台带动待测物体分别旋转至所需的角度,在每次旋转之后,各个三维传感器采集待测物体在当前角度下的图像;
步骤D,根据已标定的各个三维传感器之间的结构参数,在每一个角度下将各个三维传感器采集的图像匹配到同一坐标系中,然后,再根据已标定的各个旋转角度之间的变换参数,将各个角度匹配之后的图像再次匹配至同一坐标系中,得到待测物体表面完整的三维数据。
进一步地,若干三维传感器沿竖直方向排列。
进一步地,在步骤A和步骤B之间,方法进一步包括下述步骤:
步骤E,将标定参照物置于透明平台上,控制透明平台带动标定参照物分别旋转至所需的角度,在每次旋转之后,各个三维传感器采集标定参照物的图像;
步骤F,根据各个三维传感器在每个旋转角度采集的标定参照物的图像,标定出每个三维传感器的内部参数、各个三维传感器之间的结构参数、以及各个旋转角度之间的变换参数。
进一步地,在D之后,方法还包括下述步骤:
步骤G,检测步骤D匹配得到的待测物体表面完整的三维数据的精度是否符合要求,若否,则进行精匹配。
进一步地,所述步骤D通过如下公式将各个角度匹配之后的图像再次匹配至同一坐标系中:
其中,分别为:在第i个旋转角度下,第k个标记点从三维传感器坐标系到世界坐标系的旋转变换和平移变换,L为标记点的个数,为标记点在k三维传感器坐标系下的坐标,Xk为标记点在k世界坐标系下的坐标。
本发明还提供了一种自动获取物体表面完整三维数据的系统,包括:
若干三维传感器,沿一个方向顺次排布,用于采集待测物体的图像;
透明平台,用于放置被测物体,位于若干三维传感器的一侧,使待测物体从顶面至底面均处于若干三维传感器的采集范围之内;
控制单元,用于控制控制透明平台带动待测物体分别旋转至所需的角度,并在每次旋转之后,控制若干三维传感器采集待测物体在当前角度下的图像;
第一匹配单元,用于根据已标定的各个三维传感器之间的结构参数,在每一个角度下将各个三维传感器采集的图像匹配到同一坐标系中;
第二匹配单元,用于根据已标定的各个旋转角度之间的变换参数,将第一匹配单元对各个角度匹配之后的图像再次匹配至同一坐标系中,得到待测物体表面完整的三维数据。
进一步地,所述第二匹配单元根据下述公式将各个角度匹配之后的图像再次匹配至同一坐标系中:
其中,分别为:在第i个旋转角度下,第k个标记点从三维传感器坐标系到世界坐标系的旋转变换和平移变换,L为标记点的个数,为标记点在k三维传感器坐标系下的坐标,Xk为标记点在k世界坐标系下的坐标。
进一步地,每一组三维传感器均包括一个投影机和分别位于投影机两侧的两个CCD摄像机。
进一步地,系统进一步包括:
标定单元,用于将以标定参照物置于透明平台上,在控制单元控制透明平台每次旋转之后,触发各个三维传感器采集标定参照物的图像;然后根据各个三维传感器在每个旋转角度采集的标定参照物的图像,标定出每个三维传感器的内部参数、各个三维传感器之间的结构参数、以及各个旋转角度之间的变换参数。
进一步地,第三匹配单元,用于检测第二匹配单元匹配得到的待测物体表面完整的三维数据的精度是否符合要求,若否,则进行精匹配。
进一步地,所述若干三维传感器沿竖直方向排列;所述透明平台为一玻璃平台;所述待测物体为人脚的表面。
本发明实现了视场无重叠的多传感器阵列的高精度标定,根据转台重复旋转精度高的特点,采用预设旋转角度的方法,利用标定信息完成了多个角度深度图像的自动匹配,从而避免了旋转轴不确定引起的误差,而且无需标定旋转轴,由于利用透明平台,该系统可测量物体的底面数据,最终可以得到被测物体表面完整的三维数据。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例中,使用一组三维传感器阵列实现对待测物体表面的三维深度图像采集以及整个模型的三维数字化,该例中三维传感器采用基于相位映射的结构光测量方法。
本发明实施提供的测量及成像过程可分为4个阶段,即传感器个数及旋转角度的确定、传感器阵列系统的标定、多传感器测量及转台旋转控制、所有深度图像的匹配等。主要原理如下:
1.传感器个数及旋转角度的确定
1.1根据被测物体的表面形状和尺寸大小,确定出物体在旋转平台上的摆放姿态,即最优设计,主要考虑以下两方面:(1)摆放更稳定,旋转时不会松动;(2)所需三维传感器个数最少。
1.2根据物体表面形状和尺寸,以及物体的摆放姿态,确定出三维传感器的数目,即最少数量的传感器能够覆盖物体的一个完整侧面(包括:从顶部到底部)。
1.3根据物体表面形状和尺寸,以及物体的摆放姿态,确定出旋转平台需要旋转的所有角度,每次旋转的角度值可以不同,但需考虑更好的覆盖物体表面。
1.4在测量现场,根据所选的三维传感器视场范围及测量距离,安装调试传感器阵列系统,以及旋转平台系统。
2传感器阵列系统的标定
2.1标定参照物的制作,即在一物体表面粘贴一定数量的编码标记点,结合近景摄影测量方法计算标记点的空间三维坐标,作为传感器阵列系统的标定参照物。
2.2将标定参照物置于旋转平台之上,控制旋转平台按照预设角度旋转,并控制所有三维传感器的相机在每个旋转角度下拍摄标定参照物的图像。
2.3将所有图像中的编码标记点,利用图像处理及自动识别技术,提取圆形标记点坐标,使用编码信息唯一识别标志点,使用亚像素边缘提取算法,提取标记点边缘,并拟合椭圆,获取椭圆圆心坐标。
2.4利用提取的标记点图像坐标与其相应的空间三维坐标,标定每个相机的内部和外部参数;同时,标定出各个传感器的内部结构参数、所有传感器之间的结构参数,以及旋转的不同角度之间的结构变换参数。
3多传感器测量及转台旋转控制
3.1利用一台计算机控制传感器阵列和旋转平台,其程序包括一个总程序控制单元、一个深度图像采集模块、一个标定模块、一个匹配模块;
3.2由计算机控制转台按照预设角度旋转;
3.3由计算机控制所有传感器,采集物体在每个旋转角度下的三维深度图像。
4所有深度图像的匹配
4.1利用已标定的传感器之间的系统结构参数,将一个角度获取的各个传感器采集的深度图像匹配到同一坐标系;
4.2利用已标定的各个旋转角度间的变换参数,将不同角度获取的深度图像匹配到同一坐标系;
4.3计算匹配精度,如果未达到要求精度,利用最近点迭代方法精炼匹配结果。
基于以上各阶段的规划原理即可进行现场布置检测。与上文相对应描述如下:
测量系统的现场布置
图1是单向三维传感器阵列和旋转平台系统的示意图。图1中,101是CCD摄像机1,102是CCD摄像机2,103是CCD摄像机3,104是CCD摄像机4,105是CCD摄像机5,106是CCD摄像机6,107是投影机1,108是投影机2,109是投影机3,110是被测物体,111是透明平台。其中,101、102与107组成第一组三维传感器1,103、104与108组成第二组三维传感器2,105、106与109组成第三组三维传感器3。
三维传感器阵列、旋转转台、及被测物体相对位置如图1所示,传感器阵列竖向排成一列,能够获取物体在一个侧面(角度)的从顶面到底面所有深度图像。旋转平台由支柱支撑,台面为透明钢化玻璃,用以承载被测物体。应当理解,具体实施时,三维传感器阵列也可沿其他一维的方向排布,例如水平方向。
传感器阵列标定模型
三维传感器采用基于相位映射的结构光测量方法。如图2所示,投影机107投射出正弦条纹图,条纹图被待测物体110表面形貌调制变形,利用CCD摄像机101、102获取这些变形的条纹图像,结合数字图像处理及相位解调方法(相移与时间相位展开)处理得到条纹图的相位分布,结合标定好的CCD摄像机101、102及投影机107的内、外参数及相对位置关系便可以获得物体表面的三维深度信息。
(1)标定参照物的制作,为同时实现传感器阵列中各自传感器的内外参数标定、各传感器之间的系统结构参数标定、以及各旋转角度之间的结构参数标定,标定参照物采用在物体表面粘贴大量编码标记点获得,如图3所示,每个标记点由一个圆,及圆周围绕着的圆环用以编码标识,各个圆环具有不同的断开方式,代表不同且唯一的编码,印刷精度为0.01mm。利用数码相机多角度拍摄标记点,结合近景摄影测量方法计算标记点的空间三维坐标,作为传感器标定的标定参照物,其定位精度在0.02mm以内。具体方法可参见《近景摄影测量:物体外形与运动状态的摄影法测定》(冯文灏,武汉大学出版社,2002)。即在一物体表面粘贴一定数量的编码标记点,结合近景摄影测量方法计算标记点的空间三维坐标,作为传感器阵列系统的标定参照物。
(2)将标定参照物置于旋转平台之上,控制旋转平台按照预设角度旋转,并控制所有三维传感器的相机在每个旋转角度下拍摄标定参照物的图像。
(3)将所有图像中的编码标记点,利用图像处理及自动识别技术,提取圆形标记点坐标,使用编码信息唯一识别标志点,使用亚像素边缘提取算法,提取标记点边缘,并拟合椭圆,获取椭圆圆心坐标。
(4)利用提取的标记点图像坐标与其相应的空间三维坐标,标定每个相机的内部和外部参数,其具体标定方法可参见《多视场深度像造型中的若干关键技术》(刘晓利,博士学位论文,2008)。
(5)计算出各个传感器的内部结构参数、所有传感器之间的结构参数,以及旋转的不同角度之间的结构变换参数。如图4所示,设有S个三维传感器,这样构造2S+1个坐标系,包括:世界坐标系OWxWyWzW定于标定参照物中标志点所在坐标系上,2S个相机坐标系分别置于2S个相机的中心上(O1Lx1Ly1Lz1LO1Rx1Ry1Rz1R...OSLxSLySLzSL,OSRxSRySRzSR,L,R分别表示左右)。由(4)可标定出每个相机的内部参数(焦距、主点、镜头畸变等)和外部参数(每个旋转角度下,其相机坐标系相对于世界坐标系的变换其中R,t分别表示旋转变换和平移变换,s为第s个传感器,i为第i个旋转角,设有N个旋转角,则i=1,...,N,s=1,...,S)。则对于第s个传感器,其左右两相机的结构参数(左CCD摄像机到右CCD摄像机的旋转和平移变换可按下式计算:
(i=1,...,N,s=1,...,S)(1)
对于各个传感器之间的结构参数求解,其任意两个传感器(第p和第q个传感器)之间的结构参数(第p个传感器到第q个传感器之间的旋转和平移变换)可按下式计算:
由于在每个旋转角度i,均可计算出一个变换参数,故可得到N个数值近似的变换参数。为求解稳定性,可取其平均值作为结果。
下一步,求解各个旋转角度间的变换参数:由上面标定好的各个三维传感器,以第i个角度为例,利用第i个角度拍摄的参照物标记点图像,可重建标定参照物上标记点在传感器坐标系(OsLxsLysLzsL,将传感器坐标系定在其左相机下)下的三维坐标(L为标记点的个数),同时,这些标记点在世界坐标系下坐标Xk(k=1,...L)已知,这样可建立一个优化目标函数来求解第i个旋转角度相对于世界坐标系的变换参数:
其中,分别为:在第i个旋转角度下,传感器坐标系到世界坐标系的旋转变换和平移变换。
该优化问题可利用基于单位四元数的方法求解,其具体求解方法可参见(B.K.P.Horn,“Closed-formsolutionofabsoluteorientationusingunitquaternions,”J.Opt.Soc.Am.A,1987,4(4),629-642)。利用这些变换参数便可将各个角度拍摄的深度图像统一到一个世界坐标系下。
多传感器测量及转台旋转控制和深度图像匹配
成像系统进行一次标定好参数后,便可对物体进行测量。
测量过程如下:
(1)将物体放置于旋转平台之上;
(2)各个传感器分别顺序采集物体在一个角度的三维深度图像;
(3)旋转转台到预设的第二个角度;
(4)重复(2)(3)直到最后一个角度拍摄完毕;
(5)由标定信息自动匹配出不同传感器在不同角度拍摄的所有深度图像;
(6)检验匹配精度,如果精度欠佳,利用最近点迭代算法进行精匹配。最近点迭代算法(ICP)可参见《多视场深度像造型中的若干关键技术》(刘晓利,博士学位论文,2008)。
基于上文所描述的检测原理,图5示出了本发明实施例提供的自动获取物体表面完整三维数据的方法的实现流程,详述如下:
步骤A,根据待测物体的具体形状,确定出所需的三维传感器的数量以及需要旋转的角度,然后将所需的若干三维传感器沿一个方向顺次排布;
步骤B,将待测物体置于一透明平台上,透明平台位于若干三维传感器的一侧,使待测物体从顶面至底面均处于若干三维传感器的采集范围之内;
步骤C,控制透明平台带动待测物体分别旋转至所需的角度,在每次旋转之后,各个三维传感器采集待测物体在当前角度下的图像;
步骤D,根据已标定的各个三维传感器之间的结构参数,在每一个角度下将各个三维传感器采集的图像匹配到同一坐标系中,然后,再根据已标定的各个旋转角度之间的变换参数,将各个角度匹配之后的图像再次匹配至同一坐标系中,得到待测物体表面完整的三维数据。
其中,将各个角度匹配之后的图像再次匹配至同一坐标系时,具体可采用上述公式(3)来进行匹配。
进一步地,若干三维传感器沿竖直方向排列。
进一步地,在步骤A和步骤B之间,方法进一步包括下述步骤:
步骤E,将标定参照物置于透明平台上,控制透明平台带动标定参照物分别旋转至所需的角度,在每次旋转之后,各个三维传感器采集标定参照物的图像;
步骤F,根据各个三维传感器在每个旋转角度采集的标定参照物的图像,标定出每个三维传感器的内部参数、各个三维传感器之间的结构参数、以及各个旋转角度之间的变换参数。
进一步地,在D之后,方法还包括下述步骤:
步骤G,检测步骤D匹配得到的待测物体表面完整的三维数据的精度是否符合要求,若否,则进行精匹配。
本发明还提供了一种自动获取物体表面完整三维数据的系统,可用于人脚、佛头等物体的测量。如图6所示,包括若干三维传感器1、透明平台(图中未示出)、控制单元2、第一匹配单元3、第二匹配单元4,其中若干三维传感器1沿一个方向顺次排布,用于采集待测物体的图像,例如如图1所示沿竖直方向排列,如上文每一组三维传感器均包括一个投影机和分别位于投影机两侧的两个CCD摄像机。透明平台用于放置被测物体,位于若干三维传感器1的一侧,使待测物体从顶面至底面均处于若干三维传感器1的采集范围之内,例如可选用玻璃平台实现。
控制单元2用于控制控制透明平台带动待测物体分别旋转至所需的角度,并在每次旋转之后,控制若干三维传感器1采集待测物体在当前角度下的图像。然后,第一匹配单元3根据已标定的各个三维传感器之间的结构参数,在每一个角度下将各个三维传感器采集的图像匹配到同一坐标系中,最后再由第二匹配单元4根据已标定的各个旋转角度之间的变换参数,将第一匹配单元3对各个角度匹配之后的图像再次匹配至同一坐标系中,得到待测物体表面完整的三维数据。
进一步地,系统还包括一标定单元,用于将以标定参照物置于透明平台上,在控制单元2控制透明平台每次旋转之后,触发各个三维传感器1采集标定参照物的图像;然后根据各个三维传感器1在每个旋转角度采集的标定参照物的图像,标定出每个三维传感器1的内部参数、各个三维传感器1之间的结构参数、以及各个旋转角度之间的变换参数。
进一步地,考虑到匹配之后的三维数据可能精度达不到要求,系统还包括一第三匹配单元,用于检测第二匹配单元匹配得到的待测物体表面完整的三维数据的精度是否符合要求,若否,则进行精匹配。
上述各单元可以是软件单元、硬件单元或软硬件结合的单元,例如控制单元、第一匹配单元、第二匹配单元、标定单元可以为内置于测试用计算机内部的软件单元。
下文以佛头作为被测物体为例来具体描述检测过程。按照上面叙述的步骤,利用图1所示现场布置,根据佛头形状及大小,采用了3个三维传感器,如图7所示,预设平均旋转8个角度,每个角度旋转45度。利用图3所示标定参照物对整个系统进行了标定。并按照上文的方法进行测量成像,图8为对佛头像匹配结果图,图9为佛头的融合结果图。
本发明实施例提供的利用传感器一维阵列及透明平台的物体表面三维测量及成像系统,具有以下优点:,第一、实现了视场无重叠的多传感器阵列的高精度标定;第二、根据转台重复旋转精度高的特点,采用预设旋转角度的方法,利用标定信息完成了多个角度深度图像的自动匹配,从而避免了旋转轴不确定引起的误差,而且无需标定旋转轴;第三、由于利用透明平台,该系统可测量物体的底面数据;第四、该系统测量精度高、测量范围大、可对多种不同物体进行测量成像,特别是人可站在转台上,自动完成对人脚的测量及成像;第五、系统的集成度高、自动化程度高、测量过程简易。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。