一种基于统计模型的三维场景重建方法技术

技术编号:6996801 阅读:419 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种基于统计模型的三维场景重建方法,技术特征在于步骤为:使用Harris角点检测算法提取每幅图像中的角点,然后生成三维点集合X与摄像机参数集合M;利用马尔可夫链蒙特卡罗MCMC方法估计图像角点与三维点之间的匹配概率,利用图像角点与三维点之间的匹配概率对图像角点进行加权平均得到虚拟测量点矩阵V;采用可处理遮挡的射影因式分解算法对虚拟测量点进行射影重构,加入确定性退火算法迭代求解全局最优射影重构结果,利用基于绝对对偶二次曲面的摄像机自标定算法将射影重构提升为度量重构。将原本一次性计算的过程转化为迭代求精的过程。即使匹配关系未知或初始匹配结果较差,通过迭代反馈的方法,最终仍可精确得到三维重建结果。

【技术实现步骤摘要】

本专利技术涉及,属于计算机视觉中基于图像的三维场景重建领域,特别是涉及图像中特征点之间匹配关系的建立与优化问题。
技术介绍
目前在三维重建领域内,Noah Snavely, Steven M. Seiz禾P Richard Szeliski在文 献Modeling the World from Internet Photo Collections (IJCV, vol. 80, pp. 189-210, 2008)中提出了一种利用互联网上大规模图片进行三维重建的完整算法。该算法对每 幅图像提取局部不变特征,通过kd树在两两图像间建立匹配并采用归一化8点算法计 算基本矩阵,然后利用特征点跟踪得到所有图像间的特征匹配关系,摄像机内参数从图 像EXIF标签读取,最后利用bundle adjustment (BA)算法迭代恢复出三维点结构与摄 像机参数。但是如果图像之间视角变化较大,则上述算法匹配结果的精度无法满足要 求,产生的大量错误匹配会直接影响三维重建的结果。Frank Dellaert在文献Monte Carlo EM forData-Association and its Applications in Computer Vision(doctoral dissertation, tech.report CMU_CS_01—153, Carnegie Mellon University, September, 2001)中引入蒙特卡罗EM算法解决计算机视觉领域中的匹配问题,通过概率方法建立起图 像特征点与三维点之间的软匹配并进行迭代优化。但是其马尔可夫链蒙特卡罗(MCMC)算 法采样效率不高,且仅使用局部优化算法BA进行模型求解,致使迭代容易陷入局部极值。
技术实现思路
要解决的技术问题 为了避免现有技术的不足之处,本专利技术提出一种基于统计模型的三维场景重建方 法,可以在图像间匹配关系未知或不准确的条件下有效恢复精确匹配关系与三维场景模 型。 本专利技术的思想在于 技术方案 —种基于统计模型的三维场景重建方法,其特征在于步骤如下 步骤1使用Harris角点检测算法提取每幅图像中的角点针对无序数字图像集合,采用Harris角点检测算法提取每幅图像的角点作为图像特征点,以角点集合U ={uik|kG l"*nj, i G l m}表示,其中k为图像中的角点序号,i为图像序号,rii为第i幅图像中的角点数量,m为图像数量,uik为第i幅图像中第k个角点的二维坐标; 步骤2生成三维点集合X与摄像机参数集合M :采用满足高斯分布N(0, 1)的随机函数生成N个三维点,得到三维点集合X二 {Xi|i G 1…nhxi为第i个三维点的坐标,N的值等于所有图像中最大的角点数量;所述的摄像机参数集合M,M = h I i G l m}中每幅图像的摄像机参数初始值<formula>formula see original document page 5</formula> 步骤3利用马尔可夫链蒙特卡罗MCMC方法估计图像角点与三维点之间的匹配概 率利用基本投影公式计算得到三维点在所有图像的重投影点集合H二g 1…n, i G l'"m} ,hij为第j个三维点在i幅图像上的投影点;计算图像角点uik和三维点Xj之间 的权重w("rt,x/) = log(V2;rcr) + 其中O为干扰图像的高斯噪声的方差,初始取为O ° ; 然后利用MCMC统计模拟方法对图像角点Uij与三维点Xj之间的匹配概率fw进行 概率估计对于任意一幅图像i的图像角点与三维点匹配向量Ji二 Uik|kG 1…nj,匹配 向量满足约束A - & - A #厶2 ,图像i的采样过程如下 步骤a :为图像i中每个角点随机选择一个三维点,建立角点与三维点间的匹配 边,得到匹配向量Ji、约束条件为不同角点不可对应同一三维点; 步骤b :从图像i的角点集合Ui中随机选择一点Uik,计算Uik与任意三维点之间的 转移概率exp(-w(z^,x》) ^'(2^,^)=7' *厶以概率^(",,,、.)从三维点集合X中选择一点Xj,以点Xj与Uik建立匹配边; 步骤C :选择Xj的原有匹配边(Xj, Uik,)对应的角点Uik,作为下一次循环的图像 角点; 步骤d:重复步骤b直至某次迭代中选择的图像角点在之前已被选择,得到由图像 角点和三维点形成的闭环; 步骤e :删除在建立闭环过程中不属于闭环中的临时边,得到新的闭环C ; 步骤f :删除闭环C中在步骤a的原有匹配关系,得到图像特征点与三维点之间新的匹配j' i; 重复3000 5000次步骤a f ,保存每次采样生成的匹配向量jj,并计算匹配概 率^*4力,其中5为克罗内克函数,若J, S(jik,j) =1;否则S(Jik,j) =0 ; 步骤4 :利用图像角点与三维点之间的匹配概率对图像角点进行加权平均得到虚 拟测量点矩阵V = ,其中Vij为V中第i行第j个元素; 步骤5采用可处理遮挡的射影因式分解算法对虚拟测量点进行射影重构具体步步骤a :利用归一化8点算法计算任意两幅图像间的基本矩阵与极点e 步骤b :计算每个虚拟测量点viD的射影深度信息入ip,在得到所有射影深度信息后,利用Vip XV乂p、、计算新的占骤如下 虚拟测量 步骤C :对虚拟测量矩阵V中的缺失部分进行线性拟合首先对虚拟测量矩阵V进 行T次采样,每次随机抽取4列,得到一个列四元组;对每个列四元组求取其生成子空间,得 到Bt, t G l…T ;对Bt进行SVD分解Bt = StVtDtT,Bt丄取为St的最后4列,其中丄表示线性 空间的补集;将每个B/按列组合,对得到的联合矩阵使用SVD分解JA1^1...^1]-^^/, B取为S的最后四列;将V中存在缺失元素的列表示为B的列的线性组合,即Vj = kA+kA+k^+k丸,利用列中已知元素计算相应系数,进而计算列中未知元素,最终得到完 全矩阵V* ; 步骤d :对V*进行SVD分解求取三维点坐标与摄像机参数对V*进行SVD分解,V* =USVT,取S的前4列得到矩阵i凝像机参数M = W ,三维点坐标X = VT ;利用BA算法对 三维点坐标和摄像机参数进行优化,以得到的优化结果替换掉原有三维点坐标与摄像机参 数; 步骤6加入确定性退火算法迭代求解全局最优射影重构结果重复步骤3 5进 行循环迭代,o在迭代过程中以等比例策略,将o参数取为原o的0.85 0.95,在每次迭代中,比较当前O与给定阈值Omin大小,若O《Omin则迭代结束,进行后续步骤。否则 置0 t+1 = A O t,进入下一次迭代过程; 步骤7利用基于绝对对偶二次曲面的摄像机自标定算法将射影重构提升为度量矩阵-/K 1_ 其中p为无穷远平面的前三个坐标,将射影重构变换到度〗 中三维场景重建的三维结构MXH与摄像机参数H—1。 有益效果 本专利技术提出的基于统计模型的三维场景重建方法的优越性在于 目前的三维重建算法在初始步骤中就对各幅图像的特征点建立确定的匹配关系,并且其在后续步骤中不再变化。当图像之间的摄像机视角变化很小时,如视频序列,这种方法可以取得较好结果。然本文档来自技高网
...

【技术保护点】
一种基于统计模型的三维场景重建方法,其特征在于步骤如下:步骤1使用Harris角点检测算法提取每幅图像中的角点:针对无序数字图像集合,采用Harris角点检测算法提取每幅图像的角点作为图像特征点,以角点集合U={u↓[ik]|k∈1...n↓[i],i∈1...m}表示,其中k为图像中的角点序号,i为图像序号,n↓[i]为第i幅图像中的角点数量,m为图像数量,u↓[ik]为第i幅图像中第k个角点的二维坐标;步骤2生成三维点集合X与摄像机参数集合M:采用满足高斯分布N(0,1)=1/RΣ↓[r=1]↑[R]δ(↓[jik]↑[r],j),其中δ为克罗内克函数,若j↓[ik]=j,δ(j↓[ik],j)=1;否则δ(j↓[ik],j)=0;  步骤4:利用图像角点与三维点之间的匹配概率对图像角点进行加权平均得到虚拟测量点矩阵V  v↓[ij]=Σ↓[k=1]↑[n]f↓[ijk]u↓[ik],其中:v↓[ij]为V中第i行第j个元素;  步骤5采用可处理遮挡的射影因式分解算法对虚拟测量点进行射影重构:具体步骤如下:  步骤a:利用归一化8点算法计算任意两幅图像间的基本矩阵F↓[ij]与极点e↓[ij];  步骤b:计算每个虚拟测量点v↓[ip]的射影深度信息λ↓[ip]  λ↓[ip]=(F↓[ij]↑[T]v↓[jp])·(e↓[ij]×v↓[ip])/||e↓[ij]×v↓[jp]||↑[2]λ↓[jp],在得到所有射影深度信息后,利用v↓[ip]=λ↓[ip]v↓[ip]计算新的虚拟测量点;  步骤c:对虚拟测量矩阵V中的缺失部分进行线性拟合:首先对虚拟测量矩阵V进行T次采样,每次随机抽取4列,得到一个列四元组;对每个列四元组求取其生成子空间,得到B↓[t],t∈1...T;对B↓[t]进行SVD分解:B↓[t]=S↓[t]V↓[t]D↓[t]↑[T],B↓[t]↑[⊥]取为S↓[t]的最后4列,其中⊥表示线性空间的补集;将每个B↓[t]↑[⊥]按列组合,对得到的联合矩阵使用SVD分解:[B↓[1]↑[⊥]B↓[2]↑[⊥]...B↓[y]↑[⊥]]=SVD↑[T],B取为S的最后四列;将V中存在缺失元素的列表示为B的列的线性组合,即V↓[j]=k↓[1]b↓[1]+k↓[2]b↓[2]+k↓[3]b↓[3]+k↓[4]b↓[4],利用列中已知元素计算相应系数,进而计算列中未知元素,最终得到完全矩阵V↑[*];  步骤d:对V↑[*]进行SVD分解求取三维点坐标与摄像机参数:对V↑[*]进行SVD分解,V↑[*]=USV↑[T],取S的前4列得到矩阵*,摄像机参数M=US^,三维点坐标X=V↑[T];利用BA算法对三维点坐标和摄像机参数进行优化,以得到的优化结果替换掉原有三维点坐标与摄像机参数;  步骤6加入确定性退火算法迭代求解全局最优射影重构结果:重复步骤3~5进行循环迭代,σ在迭代过程中以等比例策略,将σ参数取为原σ的0.85~0.95,在每次迭代中,比较当前σ与给定阈值σ↓[min]大小,若σ≤σ↓[min]则迭代结束,进行后续步骤。否则置σ↑[t+1]=λσ↑[t],进入下一次迭代过程;  步骤7利用基于绝对对偶二次曲面的摄像机自标定算法将射影重构提升为度量重构:首先计算绝对对偶二次曲面Q↓[∞]↑[*],然后将Q↓[∞]↑[*]分解为HI~H↑[T](***),得到单应矩阵  H=***  其中:p为无穷远平面的前的随机函数生成N个三维点,得到三维点集合X={x↓[i]|i∈1...n},x↓[i]为第i个三维点的坐标,N的值等于所有图像中最大的角点数量;所述的摄像机参数集合M,M={m↓[i]|i∈1...m}中每幅图像的摄像机参数初始值m↓[i]三个坐标,将射影重构变换到度量重构,得到欧式空间中三维场景重建的三维结构M×H与摄像机参数H↑[-1]X。取为***;步骤3利用马尔可夫链蒙特卡罗MCMC方法估计图像角点与三维点之间的匹配概率:利用基本投影公式计算得到三维点在所有图像的重投影点集合H={h↓[ij]|j∈1...n,i∈1...m},h↓[ij]为第j个三维点在i幅图像上的投影点;计算图像角点u↓[ik]和三维点x↓[j]之间的权重:w(u↓[ik],x↓[j])=log(√2πσ)+‖u↓[ik]-h↓[ij]‖↑[2]/σ↑[2]其中:σ为干扰图像的高斯噪声的方差,初始取为σ↑[0];然后利用MCMC统计模拟方法对图像角点u↓[ik]与三维点x↓[j]之间的匹配概率f↓[ijk]进行概率估计:对于任意一幅图像i的图像角点与三维点匹配向量j↓[i]={j↓[ik]|k∈1...n↓[i]},匹配向量满足约束:k↓[1]≠k↓[2]=〉*j↓[ik1]≠j↓[ik2],图像i的采样过程如下:步骤a:为...

【技术特征摘要】

【专利技术属性】
技术研发人员:王庆徐炯杨恒潘杰何周灿王雯
申请(专利权)人:西北工业大学
类型:发明
国别省市:87

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1