一种基于动态规划的De Bruijn彩色结构光解码方法技术

技术编号:3994102 阅读:364 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种基于动态规划的De?Bruijn彩色结构光解码方法,属于计算机图像处理技术领域。本发明专利技术针对基于De?Bruijn序列的彩色结构光编码图像,利用局部区域信息,采用动态规划方法解决调制后图像中心彩色条纹上每个像素点与原始编码图像中彩色条纹的匹配问题,提高了解码算法精度。本发明专利技术提供的方法不需要假定待测物体全表面单调,对其连续性也不做严格要求,还能推广到基于条纹列或条纹边界列的解码算法中。

【技术实现步骤摘要】

本专利技术涉及,属于计算机图 像处理

技术介绍
结构光三维重构方法主要分为两个部分,第一部分是投影结构光编码图像并拍摄 获得调制后的结构光图像,然后对调制后的结构光图像进行解码得到该图像的二维信息; 第二部分是根据投影机、摄像机和待测物体的相对位置把调制后的结构光图像的二维信息 转化为待测物体的三维信息。在基于结构光的三维重构过程中,利用各种编码策略可以使像素点本身带有先验 编码信息,编码策略选择得合适与否影响着匹配算法的复杂性和三维重构的准确性,彩色 编码方法可分为时间编码、空间编码、直接编码等。通过对调制后的结构光图像进行解码, 可以得到调制后结构光图像中彩色条纹上的像素点与结构光编码图像中的彩色条纹间的 匹配关系。迪布鲁英(De Bruijn)序列,具有良好的随机性和接近于白噪声的相关函数,并 且有预先的可确定性和可重复性。n元m级De Bruijn序列是一个长度为nm的循环序列 式,為,…,<1,其中…值取自n个基元,基元可以为任意数字或符号。序列中任意连续的m 位组合都是唯一的,这称为迪布鲁英序列的窗口特性。由迪布鲁英伪随机序列生成的彩色 结构光编码图像可以增加彩色条纹的数量并且确保编码的惟一性,该方法可以应用到对运 动物体进行重建的过程中,现已成为了彩色结构光三维重构最广泛应用的方法之一。孔令 富等人利用序列的窗口特性和空间邻域编码思想对各条纹边界进行标识,采用全局优化思 想对条纹边界进行最优邻域匹配,不需要假定物体全表面单调,对其连续性也不做严格要 求。Zhang等人引入了多通道动态规划(Multi-pass Dynamic Programming)思想,来克服 图像中的条纹遮挡问题,但常会出现对局部单调区域之间的边界集的解码误差。现有基于 动态规划的解码方法,没有充分考虑局部邻域信息,因此,解码精度不高。
技术实现思路
为了快速地对De Bruijn彩色结构光编码图像进行高精度的解码,本专利技术提出了 。,其特征在于,该方法所需设 备和实施步骤如下所需设备如图1所示,所需设备由5部分组成投影机1,投影屏幕2,摄像机3, 计算机4,待测物体5 ;投影机1和摄像机3都通过电缆与计算机4连接。实现步骤步骤1、在计算机4中,利用具有随机特性与确定性的De Bruijn伪随机序列,产生 一幅7元3级De Bruijn序列彩色结构光编码图像,如图2所示,并存储在计算机4中。该DeBruijn序列彩色结构光编码图像中任意两条相邻彩色条纹的颜色都不相同,每条彩色条 纹的所有像素点的颜色都相同。步骤2、计算机4通过投影机1将步骤1中产生的De Brui jn序列彩色结构光编码 图像经过待测物体5调制后投影到投影屏幕2上,生成调制后的投影图像。步骤3、计算机4通过摄像机3拍摄步骤2生成的调制后的投影图像,得到彩色结 构光编码图片。步骤4、计算机4采用传统的canny算法提取步骤3得到的彩色结构光编码图片中 每条彩色条纹的上边界和下边界,再计算每条彩色条纹的上边界和下边界的中间位置,得 到每条彩色条纹的中心彩色条纹;设共得到m条中心彩色条纹,每条中心彩色条纹有n个像 素点;在m行上依次排列每条彩色条纹的n个像素点,得到由这些像素点构成的mXn阶矩 阵Z。步骤5、设每条中心彩色条纹上的像素点P的RGB值分别为r,g,b ;将每条中心彩 色条纹上的每个像素点的RGB值都按照公式Pc = c/255, c G {r, g,b}归一化,得到该像 素点的归一化RGB值分别为Pr,Pg,Pb。步骤6、计算彩色结构光编码图片中每条中心彩色条纹的每个像素点的第一类梯 度值和第二类梯度值,其中计算第一类梯度值的具体方法如下设矩阵Z的某列元素构成向量E,像素点P为向量E的第i个像素点,点P的归一 化RGB值分别为Pr,Pg, Pb ;像素点M为向量E的第i+1个像素点,点M的归一化RGB值分 别为Mr,Mg,Mb,那么点P的第一类梯度值分别为Pr-Mr,Pg-Mg, Pb-Mb ;矩阵Z的最后一行 的每个像素点的第一类梯度值与该像素点的归一化RGB值相同;将矩阵Z的每个像素点的 第一类梯度值放在与此像素点对应的位置,得到一个第一类梯度值矩阵,记为T1 ;计算第二类梯度值的具体方法如下设矩阵Z的某列元素构成向量E,像素点P为向量E的第i个像素点,点P的归一 化RGB值分别为Pr,Pg, Pb ;像素点M为向量E的第i_l个像素点,点M的归一化RGB值分 别为Mr,Mg, Mb,那么点P的第二类梯度值分别为Pr-Mr,Pg-Mg, Pb-Mb ;矩阵Z的第一行的 每个像素点的第二类梯度值与该像素点的归一化RGB值相同;将矩阵Z的每个像素点的第 二类梯度值放在与此像素点对应的位置,得到一个第二类梯度值矩阵,记为T2 ;步骤7、设由所述的De Bruijn序列彩色结构光编码图像中的彩色条纹上的像素 点构成的mXn阶矩阵为Z1,利用Z1的每个像素点的归一化RGB值得到与Z1相应的第一 类梯度值矩阵TZ1和第二类梯度值矩阵TZ2 ;在TZ1中任取一列元素做成向量E’,记E’的 第i个元素为(ej,eig,eib),与矩阵Z相应的第一类梯度值矩阵T1中第j列第k行元素为 (qr,qg,qb);根据以下公式计算(e,,ej,e,)和(qr,qg,qb)的匹配度,-1qc < -0.55&-0.15 C{eci,qc) =0.71qc > 0.850.55 <0.85 =l,ce {r,g,b} 由此得到矩阵Cj的第i行第k列元素 利用此方法,依次得到n个mXm矩阵C1,. . .,Cn ;记与矩阵Z相应的第二类梯度值矩阵T2中第j列第k个元素为(^,qg,qb);根据 上述公式计算此列中的第i行元素与矩阵Z相应的第二类梯度值矩阵T2中第j列第k行 元素的匹配度,得到矩阵Dj的第i行第k列元素 利用此方法,依次得到n个mXm矩阵Dl,. . .,Dn。步骤8、根据公式 i = 2,3, ,m-1,k = 2,3, ,m-1,j = 1,2, ,n, 得到n 个 mXm 矩阵 El,...,En。步骤9、构造矩阵Hk,设元素Hk (i,j)是矩阵Hk的第i行第j列元素,k = 1,2,..., n ;Ek(i, j)是矩阵 Ek 的第 i 行第 j 列元素,k = 1,2, ,n ;那么 Hk(l,j) = Ek(l, j),j =1,2,... ,m ;Hk(i, 1) = Ek(i,1),i = 2,3,. . .,m ;Hk(i,j) = max {Hk(i-1, j),Hk(i_l, j-l)+Ek(i, j),Hk(i,j-1)},i,j = 2,3,...,m;由此可以得到矩阵 n 个矩阵 Hl,...,Hn ;按照从上到下,从左到右的顺序,i, j = 2,3, ... , m,如果Hk(i_l,j) = Hk(i_l, j-l)+Ek(i, j) > Hk(i,j-1)或 Hk(i,j-1) = Hk(i-1,j-l)+Ek(i, j) > Hk(i-1,j)或 Hk(i-1,j) = Hk(i, j-1) = Hk(i-1,j-l)+Ek(i,j),那么 Hk(i本文档来自技高网
...

【技术保护点】
一种基于动态规划的DeBruijn彩色结构光解码方法,其特征在于,该方法所需设备和实施步骤如下:所需设备:所需设备由5部分组成:投影机(1),投影屏幕(2),摄像机(3),计算机(4),待测物体(5);投影机(1)和摄像机(3)都通过电缆与计算机(4)连接;实现步骤:步骤1、在计算机4中,利用具有随机特性与确定性的DeBruijn伪随机序列,产生一幅7元3级DeBruijn序列彩色结构光编码图像,如图2所示,并存储在计算机4中;该DeBruijn序列彩色结构光编码图像中任意两矩阵为Z1,利用Z1的每个像素点的归一化RGB值得到与Z1相应的第一类梯度值矩阵TZ1和第二类梯度值矩阵TZ2;在TZ1中任取一列元素做成向量E’,记E’的第i个元素为(e↓[i]↑[r],e↓[i]↑[g],e↓[i]↑[b]),与矩阵Z相应的第一类梯度值矩阵T1中第j列第k行元素为(q↓[r],q↓[g],q↓[b]);根据以下公式计算(e↓[i]↑[r],e↓[i]↑[g],e↓[i]↑[b])和(q↓[r],q↓[g],q↓[b])的匹配度,***由此得到矩阵Cj的第i行第k列元素C↓[j]↑[i,k]=(C↓[j]↑[i,k](1),C↓[j]↑[i,k](2),C↓[j]↑[i,k](3))=(C(e↓[i]↑[r],q↓[r]),C(e↓[i]↑[g],q↓[g]),C(e↓[i]↑[b],q↓[b])),利用此方法,依次得到n个m×m矩阵C1,…,Cn;记与矩阵Z相应的第二类梯度值矩阵T2中第j列第k个元素为(q↓[r],q↓[g],q↓[b]);根据上述公式计算此列中的第i行元素与矩阵Z相应的第二类梯度值矩阵T2中第j列第k行元素的匹配度,得到矩阵Dj的第i行第k列元素D↓[j]↑[i,k]=(D↓[j]↑[i,k](1),D↓[j]↑[i,k](2),D↓[j]↑[i,k](3))=(C(e↓[i]↑[r],q↓[r]),C(e↓[i]↑[g],q↓[g]),C(e↓[i]↑[b],q↓[b])),利用此方法,依次得到n个m×m矩阵D1,…,Dn;步骤8、根据公式Ej(i,j)=min{D↓[j]↑[i,1](1),D↓[j]↑[i,1](2),D↓[j]↑[i,1](3)},j=1,2,...,n,i=1,2,...,m,Ej(1,k)=min{D↓[j]↑[1,k](1),D↓[j]↑[1,k](2),D↓[j]↑[...

【技术特征摘要】

【专利技术属性】
技术研发人员:韩成杨华民李明勋姜会林范静涛白宝兴丁莹
申请(专利权)人:长春理工大学
类型:发明
国别省市:82[中国|长春]

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

1