文档详情

结构光编码的方法

飞***
实名认证
店铺
PDF
191.12KB
约7页
文档ID:26890374
结构光编码的方法_第1页
1/7

哈尔滨师范大学学 年 论 文题 目 结构光编码方法研究学 生 席颖微指导教师 陈彦军 教授年 级 2009 级专 业 信息与计算科学系 别 数学系学 院 数学与计算机科学学院哈尔滨师范大学2011 年 11 月 26 结构光编码方法研究摘摘 要 : 结构光编码作为;一种三维重建和主动测量手段,在越来越多的领域得到了很好的应用在不同的领域中都都发挥着重要的作用编码方法是准确获取获取在结构光三维系统中三维 场景信息的关键本文介绍了几种应用广泛的结构光编码方法,并对其做了精确地研究,对通过分类研究,对结构光编码方法的研究有了更深一步的总结关键词: 结构光,编码方法,格雷码,时间编码法一、结构光法结构光法是一种主动式三角测量技术, 其基本原理是: 由激光投射器可控制的光点式、光条式或光面式结构光到物体表面形成光点,光点再经成像系统,并由 CCD或 PSD接收,得到光点的像点我们可以根据标定出得空间方向,位置参数,利用三角法测量原理计算出光点与其像点之间的位置关系图一是结构光三角法原理示意图细光束沿投影光轴投射到物体面上,在另一个方向上,光点的像被 CCD或 PSD等光敏单元器件接收若光点在成像面上的位移为 xc,被测面 x 的位移为式中 , a 为激光束光轴和接收光轴的交点到接收透 镜前主面的距离 ; b为接收透镜后主面到成像面中 心点的距离 ; H1 为激光束光轴与接收透镜光轴之间 的夹角 ; H2 为探测器与接收透镜光轴之间的夹角。

它一般包含光点式结构光法、光条式结构光法、光面式结构光法二、 相位移法相位法是三维轮廓测量中的热点之一 , 其测量 原理是光栅图样投射到被测物体表面[ 3] , 相位和振幅受到物面高度的调制使栅像发生变形 , 通过解调可以得到包含高度信息的相位变化 , 最后根据三角法原理完成相位 2高度的转换图 2 是相位测量法的典型光路图它包含莫尔轮廓法、移相法和变换法等三、 时间编码时间编码法使用较少种类的色彩或者较少级别的灰度值编码投射图案, 为了使编码单元的数量变小, 在测量中可以投射多幅宽度不同的垂直条纹, 采用简单的系列数据容易区分彼此; 连续投射在物体表面的编码图案具有粗定位模式, 像素值编码更准确容易, 以上两点使得编码方法有较高的测量精度另外由于编码法能够较准确的区分不同的灰度级别或者色彩:而且每个点的位置能够精确的用编码表示,编码法在三维扫描中具有较高的扫描精度,较大的扫描密度目前时间多路编码策略主要分为以下三种: (1) 二灰度级编码方法; (2) 多灰度级编码方法; (3) 组合编码方法3.1 二灰度级编码二灰度级编码主要有普通二值码和格雷码 对投射图案上的垂直条纹二灰度级编码用黑白两种色彩来进行编码。

1981 年, Altschuler 和 Posdamer 首次提出了这种方法 对于要投影的条纹图案, 1 来表示白色条纹,用 0 来表示黑色条纹,如果有 m幅图案依次投影,用 m位 0 和 1 组成的二进制数来表示每条条纹,这样就可以对 2m条条纹使用简单的二进制数字进行编码二进制编码法的缺点在于需要投射许多幅图案,如果增加图案的灰度值来编码,编码图案会减少但增加解码难度, 且灰度二值码任意两相邻码值之间可能有多位不同且各位权重不同, 导致解码时, 任意图像采样点在各幅编码图像中可能有多次处于条纹边缘, 因此其码值可能多位被误判,且若误判存在于高位则引起的解码误差大3.2 格雷码早在 1880 年法国工程师 Jean-Maurice-Emlle Baudot 就对灰度二值编码进行改良,发明出格雷码 (Gray Code) , 1953 年因为 Frank Gray 申请专利而得名,格雷码最初是用来处理最小化模拟信号与数字信号的转换错误, 随着科技的发展, 如今格雷码越来越多的应用在通信及工业自动化等许多方面格雷码是一种可靠性的编码方式, 采用绝对编码方式可以把解码错误最小化 在数字系统中格雷码只能识别 0 和 1,各种数据要转换为二进制代码才能处理,具有反射特性和循环特性的单步自补性, 它的循环、 单步特性消除了随机取数时出现重大误差的可能, 它的反射、自补特性使得求反非常方便。

保证只有一位解码错误时,仅产生一个码位宽度的偏移3.2.1 自然二进制码转换成二进制格雷码自然二进制码转换成二进制格雷码, 其法则是保留自然二进制码的最高位作为格雷码的最高位, 而次高位格雷码为二进制码的高位与次高位相异或, 而格雷码其余各位与次高位的求法相类似3.2.2 二进制格雷码转换成自然二进制码二进制格雷码转换成自然二进制码, 其法则是保留格雷码的最高位作为自然二进制码的最高位, 而次高位自然二进制码为高位自然二进制码与次高位格雷码相异或, 而自然二进制码的其余各位与次高位自然二进制码的求法相类似四 格雷码法结合相移或线移同样格雷码法也存在着一定的缺点,格雷码法只能对投射角扫描空间进行离散划分,并采用划分投射角中最小的投射角区域中线作为所有采样点的投射角, 导致区域以外的采样点投射角不能被精确求的: 且为了保证足够的采样点数需要增加投射图案的条数, 但是宽度细的条纹很容易受噪声的干扰, 使解码过程产生大的偏差, 所以在实际应用中不能只采用格雷码编码方式,还应结合其它编码方法来保证足够的采样精度为有效解决格雷码周期信号二义性问题, Bergman 最早提出格雷码与相移法结合的方法,同时提高了空间分辨率。

Guhring 在 2001 年提出格雷码与线移法相结合的方法来避免相移法难以解相及重建表面存在从白到黑的骤变时, 相位无法被精确的确定若干缺点, 线移法即将一个多条纹编码图案每次按一个条纹宽度移动若干次来代替正弦周期图案的方法2008 年, Yang 等使用一架投影仪和两架摄像机同时拍摄调制图像,匹配两幅图像的对应点来计算被测物的三维信息通过格雷码与条纹中心位置信息结合的方法,解决了 Guhring使用的方法中存在的解码错误问题,具有更好的鲁棒性和精确性4 二进制编码方法4.1n 位二进制编码方法图 3 为结构光投射器原理, 投射器模板的图样模式基本上决定了光平面和物体表面相交后的光条图样光栅式结构光传感器的编码就是通过对模板上的图样模式编码来实现的图 3 光栅式结构光投射原理在模板上刻一系列宽窄不同的两种线条组成的图案, 该模板经投射形成的光平面和物体相交后形成的图样是一系列宽窄不同的光条在模板上按二进制方式对图样进行编码用“ 0”表示窄光条,用“ 1”表示宽光条 将所有的光条按顺序分组,每组对应一个序号,用一个二进制码表示每组的序号, 该二进制码和该组的图案相对应 例如用三位二进制码表示每组的序号, 序号为 4 的那一组用二进制码“ 100”表示, 相应的线条图案为“宽”、 “窄”、“窄”。

假设用 n 位二进制码表示每组对应的序号,则线条模式共有 2n 个分组,于是最多可以对 n.2n 个光条进行编码图 4 给出了一个用三位二进制编码的模板图样图 4 三位二进制编码图样对经过二进制编码的光平面识别是简便的 首先, 对摄像机接受到的光条进行处理, 根据光条的宽窄将光条译成由二进制码组成的序列,然后根据编码规则将得到的序列分解成组, 最后识别出每一个具体的光平面 需要指出的是, 由于被测物体表面尺寸和摄像机视场的限制,摄象机获得的光条数一般来说总是小于投射器投射的光平面数例如, 采用二位二进制码对摄像机接受的光条处理后得到“ 001101”, 按二位一组对该序列进行分组, 只可能有两种结果: “ 00”“ 11”“ 01”和“ 0”“ 01”“ 10”“ 1” 前者对应的分组序号为 0、 1、 3 这显然是与编码规则相矛盾的后者对应的分组序号为未知、 1、2、未知,这是符合编码规则的据此可得到前面的未知光条为 0 分组第二根光条,后面的未知光条为 3 分组第一根光条可见,视场中的每根光条都可以有效地识别出来对于表面法向基本不变或变化很小的物体,由文献 [1] 可知,将宽窄光条的宽度比做成2:1, 即可以非常有效地将宽窄光条区分开来。

记 threshold1=1.5,threshold2=0.6 则若Δ 1/ Δ 2>threshold1=1.5, 可判断 1 为宽光条, 2 为窄光条;若 Δ 1/ Δ 2Δ 1/ Δ 2 的值,直到出现前两种情况,我们就可以判断出光条到底为宽或窄 Δ 1/ Δ 2 分别为光条 1、 2 在象面投影的宽度)4.2 伪随机序列编码方法前面讲的 n 位二进制编码方法可以对 n.n2 个光条进行编码当 n 增大时,能够编码的光条数增加很快 但是, 我们衡量一种编码方法优劣的主要标准是解码所需信息的多少, 解码所需的信息量越少越好在 n 位二进制编码中,为确保能够正确译码,至少需要接受到 3n-1 个连续的光条对于 n=4 的情况, 能对 64 个光条进行编码 但要正确译码, 则至少需要接收到连续 11 个光条现在我们要考虑的问题是能否尽量减少译码所需的光条数研究发现: M序列 [7] 能够使译码所需的信息减少下面先来讲述 M序列的构成设一无限长二元序列各元素之间存在下列关系:Xi=a1Xi-1a2Xi- 2,apXi -p(2) 其中: i=p+1,p+2,,, 系数 a1,a2,,,,ap -1 取值 0 或 1, 系数 ap 总和为 1, 表示模 2 的和。

只要适当地选择系数 a1,a2,,,,ap, 就可以使序列以 (2p-1)bit 的最长周期循环 这种最长周期的二值序列就称为 M序列取 X4=1,X3=0,X2=1,X1=0, 令 Xi=Xi-3Xi-4 则可得 X15,X14,,,X1 如下: 111100010011010 我们发现对于任意连续的 4 个 x, 其二进制值均不相同,故只要知道了任意连续的 4 个 x, 即可知道这组 x 在序列中所处的位置,从而进行有效的译码对 M序列译码所需的信息比 n 位二进制码少,当 p=6 时,可以对 63 根光条进行编码,这时在视场中只要看到连续的 6 根光条即可进行译码;而对于 n 位二进制编码如果对 64 根光条进行了编码,译码则需要 11 根光条用二维数组 a[15][4] 存放每相邻 4 根光条的编号例如,第 12、 11、 10、 9 根光条其二进制表示为 1000, 则 a[8]={12,11,10,9}; 第 8、 7、 6、 5 根光条,其二进制表示为 1001,则 a[9]={8,7,6,5} 假设我们得到连续的 4 根光条二进制表示为 1001, 则通过查数组 a 的第9 行,得到这 4 根光条的序号分别是 8、 7、 6、 5 译码完成。

可见, 通过光栅式结构光传感器的编码在一定程度上解决了光条的识别问题, 提高了传感器的使用范围 若物体的表面有些地方法向变化非常剧烈, 按照上面的方法需将宽窄光条的比值做得很大, 而为了保证光条中心的计算精度窄光条又不能做得太窄, 若单单通过提高宽窄光条的比值, 必然导致视场中的光条急剧减少 由于法向变化非常剧烈的地方是很少的,通过纠错编码技术就可以将光条的宽度局部反转的地方纠正过来,使问题得到解决五 总结( 1) 结构光法和相位移法是光学非接触测量法 中最重要的两种方法 , 它们都是利用激光三角原理 来求解被测物面的几何信息的其容易混淆之处 是光源因采用结构光的相位移法常常被认为是结 构光法 2) 结构光法和相位移法各有优缺点 对精度而言 , 相位移法一般高于结构光法 ; 从成本上看 , 结构光法一般低于相位移法 所以 , 一 般结构光法应用较广 , 但对于精度要求高的 , 一般 首先考虑相位移法结构光法和相位移法的依据都是光学三角原 理 , 二者既有区别又有联系相位移法不是直接去 计算由于物体高度信息变化的像点 , 而是间接地通 过相位测量来实现物。

下载提示
相似文档
正为您匹配相似的精品文档