专利名称:基于三焦点张量的特征点三维重建方法
技术领域:
本发明涉及计算机视觉图像处理技术,具体地说是一种基于三焦点张量的特征点
三维重建方法。
背景技术:
计算机视觉技术的发展为非接触式三维测量技术在逆向工程、工业检测和质量控 制等方面的应用提供了有力的技术支撑,同时,计算机视觉技术在这些领域日益广泛的应 用也促进了视觉三维测量技术的发展。如结构光测量仪,采用线激光或光谱式激光的三角 测量法;采用便携式数码相机的长序列图像三维物体的重建方法。其中采用单个便携式数 码相机拍摄多幅照片的精确恢复场景结构的三维重建方法以其简单的硬件条件和灵活方 便的测量方法一直是计算机视觉领域的研究热点。到目前,国内外的研究基本上是围绕着 如何由两幅视图在某一程度上恢复景物的外观,并且提出了许多理论和方法。根据已知信 息不同,三维重建方法为几类一类是已知摄像机内参的某些约束;一类是已知摄像机运 动参数(即外参数)的某些约束;还有一类是已知场景几何结构的某些约束。
采用两视图的三维重建方法,三维重建结果鲁棒性差而且精度低。
发明内容
针对现有技术中存在的上述不足,本发明要解决的技术问题是提供一种精度较
高、成本低廉、便于实施的基于三焦点张量的特征点三维重建方法。 为解决上述技术问题,本发明采用的技术方案是 本发明基于三焦点张量的特征点三维重建方法包括以下步骤 在被测物体表面设置编码点,同时在编码点之间的区域内设置多个标记点;在被 测物体旁设置标尺; 用标定内参数后的数码相机多角度拍摄被测物照片,每相邻三幅照片之间有重叠 编码点区域,将上述各幅照片输入到计算机进行图像处理得到所有编码点及标记点在各自 图像中的坐标kd,X'd,X〃 J ; 根据上述图像坐标{xd, x' d, x〃 d}按照各幅图像之间重复编码点的多少将所有 图像进行重新排序,将重新排序的图像每三幅为一组进行归一化处理; 分别计算进行归一化处理后各组图像的三焦点张量,得到各组图像的相机外参数 矩阵,确定编码点和标记点的三维点坐标; 将各组三维点坐标以重新排序的第一组图像计算的三维点为基准拼合在统一的 坐标系下,得到各点在统一坐标系下的三维点坐标(x,y,z); 根据标尺计算长度和实际长度的比值,更新所有三维点坐标,得到度量空间下的 新三维点坐标(x',y',z'); 集束调整上述新三维点坐标(x' , y' , z'),得到整体优化的三维点坐标。
通过以下公式计算各组图像的三焦点张量<formula>formula see original document page 5</formula>
定义为=
0 除非r,s,f互不相同 + 1如果^f是123的偶置换 -l如果r对是123的奇置换 其中,r,为含有27个元素的第i幅图像的三焦点张量。 所述图像每三幅为一组是指按重新排序后每相邻的三幅图像为一组,每组中具有
6个以上的相同编码点。 所述图像处理包括以下步骤 根据输入图像的各个不同编码点的图案确定各编码点的ID号;
根据ID号确定各个编码点在不同图像中的坐标;
所述归一化处理包括以下步骤 根据相机标定内参数时确立的畸变模型,对重新排序的图像进行处理即将每组 图像的像素坐标kd,x' d,x〃 d}转换成二维空间上的平面坐标{xn, x' n,x〃 J,得到归 一化图像。 所述各组图像的相机外参数矩阵由以下公式计算
P = [i|o]
P' = [[r" r2, r3]e31|e21]
P"=
e"—i)[r〖,r,r]e21|e3
其中P、P' 、P〃为一组图像中三幅图像的外参数矩阵;i为3X3的单位矩阵;ri 为第i幅图像的三焦点张量;ejl为在第j副图像上的对极点;r /为第i幅图像的三焦点
张量的转置。 本发明具有以下有益效果及优点 1.本发明三维点的计算精度高,在3X4m的范围内三维数据点的位置精度可达到 O.Olmm。与两视图相比,图像使用了景物在三幅视图中的影像,在两视图中,对极几何是三 维重建的基。痉⒚鞣椒ㄊ褂昧巳油贾械娜咝怨叵岛腿沟阏帕康募扑悖昧 更多的图像信息,因此能够达到较高计算精度。 2.本发明使用简单、便于操作,只需对放置有编码点和标尺的场景拍摄出清晰的 照片,并保证每三幅照片有足够多重复编码点即可。 3.本发明硬件组成简单、便于携带,只需一台便携式数码相机、一台普通的笔记本 电脑、一组编码点和标记点以及一根标尺。
图1A为本发明方法中使用的编码点示意图;
图IB为本发明方法中使用的标记点示意5
图2为本发明方法中使用的三视图场景。
具体实施例方式
在实施本发明方法之前,需进行以下准备工作 准备一台普通手持数码相机;一根两端贴有不同图案编码点的标尺,两图案的距 离经过严格标定;一套编码点和标记点以及一台普通个人计算机。其中数码相机分辨率为 1千万像素以上,并严格标定内参数,主要包括主点和焦距; 如图1A、1B所示,编码点2、标记点1及标尺3的制作如下每个编码点2由于具 有与其他编码点不同的图案使之有唯一的ID号与之对应,本实施例中,编码点外形尺寸为 70X70mm,黑色无反光底色,白色环形图案,编码点可以用普通打印机打印出来,然后贴在 塑料磁片上,以便于吸附在被测物体上;标记点1的尺寸为18X18mm,黑底色,中间的白色 为直径10mm的圆型;3)标尺的两端贴有编码点,这两个编码点只在标尺上使用,这两个编 码点的中心点的距离需经严格标定,以保证测量的准确性。
本发明基于三焦点张量的特征点三维重建方法的步骤如下
1)特征点布置及拍照 如图2所示,在被测物体表面均匀设置不同特征图案的编码点2,同时在编码 点2之间的区域内设置多个具有相同图案的标记点(一般小的圆形标记点之间的距离以 5-10mm为宜,具体视被测物体的大小和精度);在被测物体旁设置标尺,其上可具有两个图 案不同的编码点; 用严格标定内参数后的手持数码相机多角度在被测物体周围顺序拍照,须保证每
相邻三幅照片之间有重叠编码点区域,重叠区域内要保证有效果清晰的6个以上编码点,
且重合区域须在最少三副照片中出现。保证有5张以上的照片包含标尺,每张照片要拍摄
清晰,将上述各幅照片输入到计算机进行图像处理得到所有编码点及标记点在各自图像中
的坐标kd,X' d,X〃 J ; 2)编码点的识别及精确定位 利用开发的计算机软件,进行图像处理。根据编码点2的不同图案进行识别,即根 据输入图像的各个不同编码点的图案确定各编码点的ID号,编码点的中心圆在图像中为 椭圆,经过图像处理提取椭圆的轮廓并计算出椭圆的中心,最后获得椭圆中心在图像中的 图像坐标。小圆形标记点与编码点中心圆相类似,可用同样的方法得到小圆形标记点的图 像坐标。
3)图像序列的重新排布、分组及归一化处理 根据上述图像坐标{xd, x' d, x〃 d}按照各幅图像之间重复编码点的多少将所有 图像进行重新排序,以保证相邻三幅上有足够多的相同编码点; 搜索各幅图像中的编码点,将具有最多编码点数的图像作为第一幅图像,把与第 一幅图像具有最多相同编码点的图像列为第二和第三幅,然后,在其余的图像中搜索与第 二和第三幅图像具有最多相同编码点的图像,依次类推,所有图像进行重新排序,使得每相 邻的三幅图像之间至少有6个以上的编码点。在排列过程中,如果有图像与相邻图像没有 足够的编码点,则该图像不能参与重建计算。将相邻每三幅图像分为一组,例如有图像al, a2, a3, a4, a5, a6...肌贝U分组为(al, a2, a3) , (a2, a3, a4) , (a4, a5, a6)…。
将重新排序的图像每三幅为一组进行归一化处理,分别计算各组图像的三焦点张
量,得到各组图像的相机外参数矩阵,确定编码点和标记点的三维点坐标; 首先根据相机畸变模型对原图像进行处理将三幅视图点的像素坐标{xd, x' d,
x〃 d}转换成二维空间上的平面坐标{xn,x' n,x〃 J,得到一组新的归一化图像。 4)三焦点张量的计算和相机矩阵的恢复 分别计算进行归一化处理后各组图像的三焦点张量,得到各组图像的相机外参数 矩阵,确定编码点和标记点的三维点坐标。 三焦点张量描述了三幅视图之间与景物结构无关的所有射影几何关系,它由相机 矩阵唯一确定,却可以仅由对应的图像坐标算得;在相差一个三维射影变换下,景物结构可 以仅由三焦点张量恢复。如附图2所示,X是三维空间中一点,经一组图像中三幅图像的外 参数矩阵P,P' ,P〃投影到视图1、n、III上,得到一组对应图像点{x,x' ,x〃 }。令x二
(X、X2,X3)T,X'= (X' 、X'2,X' 3)T,X=(X"、X"2,X"" T,于是得到三线性关系
,一 0 1,2,3
其中r = 1,2,3 ;s = 1,2,3 ;t = 1,2,3
1,2,3 ;j = 1,2,3 ;k = 1,2,3 ;q
张』
定义为
£一 =
0
+ 1 _1
除非rj,f互不相同
如果/^是123的偶置换 、 如果" 是123的奇置换 r,是含有27个元素的三焦点张量,只有18个元素是独立的。用给定的三幅图 像之间的若干点对应即可产生得方程组的形式为At = O,其中t是由三焦点张量元素构成 的27维向量,由这些方程可以解出三焦点张量的元素。因为r有27个元素,所以在相差 一个尺度因子下解t需要26个方程,多于26个方程时,则求最小二乘解。
在相差一个射影变换下,像机矩阵可以由三焦点张量恢复(以第一台相机的位置 为世界坐标系)
为第i 张』 因为kn,x' n,x〃 J去掉了摄像机内参数和畸变的影响,是三维空间点在二维空 间的投影,所以由三焦点张量计算得到的基本矩阵(利用根据A二 和E^,此时的摄像机矩阵可以写成如下的归一化形式
Pn = [I |0]
P' n = [R'|T']
P = p,=
P"=
r3]
一^i 一c
J
其中P、P' 、P〃为一组图像中三副图像的外参数矩阵;i为3X3的单位矩阵;ri 幅图像的三焦点张量;ejl为在第j副图像上的对极点;r /为第i幅图像的三焦点
-厶、式(l))即为本质矩阵£2
7
P〃 n = [R〃 |T〃 ] (2) 公式(2)中的相机旋转矩阵R'和R〃 、及平移向量的方向t'和t〃可以由&和
E^确定。于是,将公式(2)写为 Pn = [I |0] P' n = [R'|k' t'] P〃 n = [R〃 |k〃 t〃 ] (3) 其中,k'二llT'll和k"二llT" | |。因为k'和k〃是两个未知的尺度因子,
所以公式(3)中的P' n和P〃 n不在统一尺度的坐标空间中。要最终实现度量重建,还需
统一尺度因子。 5)三维重建 将各组三维点坐标以重新排序的第一组图像计算的三维点为基准拼合在统一的 坐标系下,得到各点在统一坐标系下的三维点坐标(x,y,z); 6)确定比例^: 根据标尺计算长度和实际长度的比值,更新所有三维点坐标,得到度量空间下的 新三维点坐标(x',y',z'); 令义表示真实场景中三维点的非齐次坐标,根据公式(3)有投影方程 X 1
x =.<formula>formula see original document page 8</formula>
(Pn,P'
记义,=^ ,显然义和^是;的两个度量重建,分别位于由{Pn,P'
n}定义的度量空间中,
假设有N个空间点,以Dij表示两个空间点的几何距离,则
=|x;-x,'
为了减小计算误差和噪声的影响,使用所有空间点之间的距离计算比例^
<formula>formula see original document page 8</formula> 在确定了比例l之后,投影方程(4)可以表示为
(6)<formula>formula see original document page 9</formula>子,{Pn,P' n,P" 一个全局縮放k' 1, P'=
J在同一度j,p、[R"i^n和i^4。此时,统一了度量因
s空间中,i"是真实空间点的度量重建,与真实空间点义相差
<formula>formula see original document page 9</formula>
至此,得到了三视图场景的一个度』
7)集束调整:
集束调整度上述新三维点坐标(x', y', z'),得到整体优化的三维点坐标,具体
为 提高重建精度,把当前重建结果作为初始值,还需使用非线性优化方法进行集束 调整。集束调整就是优化重建结果以提供整体最优的三维点坐标和相机的参数,可以使最 终的参数估计在某一代价函数上取得最小值。假设有n个三维点和m-1个投影矩阵,由于 每个摄像机有11个自由度而每个三维空间点有3个自由度, 一个涉及m幅视图的n个点的 重构需要最小化N = 3n+llm个以上的参数,N维矢量5有/P) = ^ 。集束调整就是改变矢量£ 的值,使得到的矢量e的模值最小。 令x。 = £ , e 。 = f (x。),在第k (k = 1 , 2 ,...)步迭代中,当自变量有微小的改变A 时,在点xk—i处对函数f进行一阶展开 f (xk—一 A ) = f (xk—》+Jk—丄A +0 I I A | | (9) 其中Jk—工是雅柯比矩阵,即函数f在点xk—工处的一阶偏导数矩阵。A的选取应使
f(x^+A)的模最。簿褪且筬(Xk—》+Jk—^的模最。琒卩A应满足下面的线性方程组 Jk—A k—A—&丄A = Q (10) 其中,£k—工=f(Xk—》。设Ak—工是上式的解,定义Xk二Xk—1+Ak—p重复以上过程,直
至所求的解收敛,就完成了集束调整。
权利要求
一种基于三焦点张量的特征点三维重建方法,其特征在于包括以下步骤在被测物体表面设置编码点,同时在编码点之间的区域内设置多个标记点;在被测物体旁设置标尺;用标定内参数后的数码相机多角度拍摄被测物照片,每相邻三幅照片之间有重叠编码点区域,将上述各幅照片输入到计算机进行图像处理得到所有编码点及标记点在各自图像中的坐标{xd,x′d,x″d};根据上述图像坐标{xd,x′d,x″d}按照各幅图像之间重复编码点的多少将所有图像进行重新排序,将重新排序的图像每三幅为一组进行归一化处理;分别计算进行归一化处理后各组图像的三焦点张量,得到各组图像的相机外参数矩阵,确定编码点和标记点的三维点坐标;将各组三维点坐标以重新排序的第一组图像计算的三维点为基准拼合在统一的坐标系下,得到各点在统一坐标系下的三维点坐标(x,y,z);根据标尺计算长度和实际长度的比值,更新所有三维点坐标,得到度量空间下的新三维点坐标(x’,y’,z’);集束调整上述新三维点坐标(x’,y’,z’),得到整体优化的三维点坐标。
2. 按权利要求1所述的基于三焦点张量的特征点三维重建方法,其特征在于通过以下公式计算各组图像的三焦点张量射=(x"ix, x; 为一组对应图像点,x = (x1 3)T ;r = 1,2,3 ;s = 1,2,3 ;t2 3、 T , ,X) , X'1,2,3 ;i=(x'、1,2,3 ;j3) T1,2,3 ;k1,2,3 ;q = 1,2,3 ;张]定义为=0 除非r^,f互不相同 + 1如果r对是123的偶置换 、-1如果M是123的奇置换其中,r ,为含有27个元素的第i幅图像的三焦点张量。
3. 按权利要求1所述的基于三焦点张量的特征点三维重建方法,其特征在于所述图像每三幅为一组是指按重新排序后每相邻的三幅图像为一组,每组中具有6个以上的相同编码点。
4. 按权利要求1所述的基于三焦点张量的特征点三维重建方法,其特征在于所述图 像处理包括以下步骤根据输入图像的各个不同编码点的图案确定各编码点的ID号; 根据ID号确定各个编码点在不同图像中的坐标;
5. 按权利要求1所述的基于三焦点张量的特征点三维重建方法,其特征在于所述归 一化处理包括以下步骤根据相机标定内参数时确立的畸变模型,对重新排序的图像进行处理即将每组图像 的像素坐标kd,x' d,X〃 d}转换成二维空间上的平面坐标{xn, X' n,x〃 J,得到归一化
6.按权利要求1所述的基于三焦点张j 图像的相机外参数矩阵由以下公式计算P = [i|o]p' = [[r17 r2, r3]e31|e21]:的特征点三维重建方法,其特征在于所述各组P"(e"-i)[r「,r,r]e21ie3其中P、P' 、P〃为一组图像中三幅图像的外参数矩阵;I为3X3的单位矩阵;ri为第 i幅图像的三焦点张量;e,,为在第j副图像上的对极点;r /为第i幅图像的三焦点张量的
全文摘要
本发明涉及一种基于三焦点张量的特征点三维重建方法,包括以下步骤在被测物体表面设置编码点、标记点及标尺;用数码相机多角度拍摄被测物照片输入到计算机进行图像处理得到图像中的坐标{xd,x′d,x″d};根据上述图像坐标{xd,x′d,x″d}所有图像进行重新排序并进行归一化处理;分别计算各组图像的三焦点张量,确定编码点和标记点的三维点坐标;将各组三维点坐标得到各点在统一坐标系下的三维点坐标(x,y,z);根据标尺计算长度和实际长度的比值得到度量空间下的新三维点坐标(x’,y’,z’);集束调整上述新三维点坐标(x’,y’,z’),得到整体优化的三维点坐标。本发明三维点的计算精度高,使用简单、便于操作,只需一台便携式数码相机、一台普通的笔记本电脑、一组编码点和标记点以及一根标尺。
文档编号G01B11/24GK101750029SQ20081022951
公开日2010年6月23日 申请日期2008年12月10日 优先权日2008年12月10日
发明者刘伟军, 夏仁波, 赵吉宾, 黄以君 申请人:中国科学院沈阳自动化研究所