结构光编码的方法

 哈尔滨师范大学
学 年 论 文
      结构光编码方法研究
      席颖微
指导教师  陈彦军  教授
      2009
      信息与计算科学
      数学系
      数学与计算机科学学院
哈尔滨师范大学
2011年 11 月26
                                                                     
结构光编码方法研究
  结构光编码作为;一种三维重建和主动测量手段,在越来越多的领域得到了很好的应用。在不同的领域中都都发挥着重要的作用。编码方法是准确获取获取在结构光三维系统中三维 场景信息的关键。本文介绍了几种应用广泛的结构光编码方法,并对其做了精确地研究,对。通过分类研究,对结构光编码方法的研究有了更深一步的总结。
关键词:结构光,编码方法,格雷码,时间编码法。
一、结构光法
结构光法是一种主动式三角测量技术,其基本原理是:由激光投射器可控制的光点式、光条式或光面式结构光到物体表面形成光点,光点再经成像系统,并由CCDPSD接收,得到光点的像点。我们可以根据标定出得空间方向,位置参数,利用三角法测量原理计算出光点与其像点之间的位置关系。图一是结构光三角法原理示意图。
细光束沿投影光轴投射到物体面上,在另一个方向上,光点的像被CCDPSD等光敏单元器件接收。若光点在成像面上的位移为xc,被测面x的位移为
式中, a 激光束光和接收光的交点到接收透 前主面的距离; b接收透后主面到成像面中 心点的距离; H1 激光束光与接收透 ; H2 器与接收透角。
它一般包含光点式构光法、光条式构光
法、光面式构光法。
二、  相位移法
相位法是三维轮量中的点之一, 原理是光栅图样投射到被物体表面 [ 3] , 相位和振幅受到物面高度的制使, 可以得到包含高度信息的相位, 最后根据三角法原理完成相位2高度的转换 2是相位量法的典型光路
它包含莫尔轮廓法、移相法和变换法等。
 三、 时间编码
 
  时间编码法使用较少种类的彩或者较少级别的灰度值编码投射图案,为了使编码单元的数量变小,在测量中可以投射多幅宽度不同的垂直条纹,采用简单的系列数据容易区分彼此;连续投射在物体表面的编码图案具有粗定位模式,像素值编码更准确容易,以上两点使得编码方法有较高的测量精度。另外由于编码法能够较准确的区分不同的灰度级别或者彩:而且每个点的位置能够精确的用编码表示,编码法在三维扫描中具有较高的扫描精度,较大的扫描密度。
  目前时间多路编码策略主要分为以下三种:(1)二灰度级编码方法;(2)多灰度级编码方法;(3)组合编码方法。
 
  3.1 二灰度级编码
  二灰度级编码主要有普通二值码和格雷码。对投射图案上的垂直条纹二灰度级编码用黑白两种彩来进行编码。1981年,AltschulerPosdamer首次提出了这种方法。对于要投影的
条纹图案,1来表示白条纹,用0来表示黑条纹,如果有m幅图案依次投影,用m01组成的二进制数来表示每条条纹,这样就可以对2m条条纹使用简单的二进制数字进行编码。二进制编码法的缺点在于需要投射许多幅图案,如果增加图案的灰度值来编码,编码图案会减少但增加解码难度,且灰度二值码任意两相邻码值之间可能有多位不同且各位权重不同,导致解码时,任意图像采样点在各幅编码图像中可能有多次处于条纹边缘,因此其码值可能多位被误判,且若误判存在于高位则引起的解码误差大。
 
  3.2 格雷码
  早在1880年法国工程师Jean-Maurice-Emlle Baudot就对灰度二值编码进行改良,发明出格雷码(Gray Code)1953年因为Frank Gray申请专利而得名,格雷码最初是用来处理最小化模拟信号与数字信号的转换错误,随着科技的发展,如今格雷码越来越多的应用在通信及工业自动化等许多方面。
 
  格雷码是一种可靠性的编码方式,采用绝对编码方式可以把解码错误最小化。在数字系统中格雷码只能识别01,各种数据要转换为二进制代码才能处理,具有反射特性和循环特性
的单步自补性,它的循环、单步特性消除了随机取数时出现重大误差的可能,它的反射、自补特性使得求反非常方便。保证只有一位解码错误时,仅产生一个码位宽度的偏移。
  3.2.1 自然二进制码转换成二进制格雷码
  自然二进制码转换成二进制格雷码,其法则是保留自然二进制码的最高位作为格雷码的最高位,而次高位格雷码为二进制码的高位与次高位相异或,而格雷码其余各位与次高位的求法相类似。
  3.2.2 二进制格雷码转换成自然二进制码
  二进制格雷码转换成自然二进制码,其法则是保留格雷码的最高位作为自然二进制码的最高位,而次高位自然二进制码为高位自然二进制码与次高位格雷码相异或,而自然二进制码的其余各位与次高位自然二进制码的求法相类似。
 
四 格雷码法结合相移或线移
    同样格雷码法也存在着一定的缺点,格雷码法只能对投射角扫描空间进行离散划分,并采用划分投射角中最小的投射角区域中线作为所有采样点的投射角,导致区域以外的采样点投射角不能被精确求的:且为了保证足够的采样点数需要增加投射图案的条数,但是宽度细的
条纹很容易受噪声的干扰,使解码过程产生大的偏差,所以在实际应用中不能只采用格雷码编码方式,还应结合其它编码方法来保证足够的采样精度。
  为有效解决格雷码周期信号二义性问题,Bergman最早提出格雷码与相移法结合的方法,同时提高了空间分辨率。Guhring2001年提出格雷码与线移法相结合的方法来避免相移法难以解相及重建表面存在从白到黑的骤变时,相位无法被精确的确定若干缺点,线移法即将一个多条纹编码图案每次按一个条纹宽度移动若干次来代替正弦周期图案的方法。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”。前者对应的分组序号为013这显然是与编码规则相矛盾的。后者对应的分组序号为未知、12、未知,这是符合编码规则的。据此可得到前面的未知光条为0分组第二根光条,后面的未知光条为3分组第一根光条。可见,视场中的每根光条都可以有效地识别出来。
    对于表面法向基本不变或变化很小的物体,由文献[1]可知,将宽窄光条的宽度比做成2:1,即可以非常有效地将宽窄光条区分开来。记threshold1=1.5,threshold2=0.6。则若Δ1/Δ2>threshold1=1.5,可判断1为宽光条,2为窄光条;若Δ1/Δ2Δ1/Δ2的值,直到出现前两种情况,我们就可以判断出光条到底为宽或窄。(Δ1/Δ2分别为光条12在象面投影的宽度)。
    4.2伪随机序列编码方法
    前面讲的n位二进制编码方法可以对n.n2个光条进行编码。当n增大时,能够编码的光条数增加很快。但是,我们衡量一种编码方法优劣的主要标准是解码所需信息的多少,解码所需的信息量越少越好。
    n位二进制编码中,为确保能够正确译码,至少需要接受到3n-1个连续的光条。对于n=4的情况,能对64个光条进行编码。但要正确译码,则至少需要接收到连续11个光条。现在我们要考虑的问题是能否尽量减少译码所需的光条数。研究发现:M序列[7]能够使译码所需的信息减少。
    下面先来讲述M序列的构成。设一无限长二元序列各元素之间存在下列关系:
    Xi=a1Xi-1a2Xi-2apXi-p(2)
    其中:i=p+1,p+2,,系数a1,a2,……,ap-1取值01,系数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。我们发现对于任意连续的4x,其二进制值均不相同,故只要知道了任意连续的4x,即可知道这组x在序列中所处的位置,从而进行有效的译码。
    M序列译码所需的信息比n位二进制码少,当p=6时,可以对63根光条进行编码,这时在视场中只要看到连续的6根光条即可进行译码;而对于n位二进制编码如果对64根光条进行了编码,译码则需要11根光条。
    用二维数组a[15][4]存放每相邻4根光条的编号。例如,第1211109根光条其二进制表示为1000,a[8]={12,11,10,9};8765根光条,其二进制表示为1001,a[9]={8,7,6,5}。假设我们得到连续的4根光条二进制表示为1001,则通过查数组a的第9行,得到这4根光条的序号分别是8765译码完成。
    可见,通过光栅式结构光传感器的编码在一定程度上解决了光条的识别问题,提高了传感器的使用范围。若物体的表面有些地方法向变化非常剧烈,按照上面的方法需将宽窄光条的
比值做得很大,而为了保证光条中心的计算精度窄光条又不能做得太窄,若单单通过提高宽窄光条的比值,必然导致视场中的光条急剧减少。由于法向变化非常剧烈的地方是很少的,通过纠错编码技术就可以将光条的宽度局部反转的地方纠正过来,使问题得到解决。

 五 总结
 
( 1)构光法和相位移法是光学非接触量法 中最重要的两方法, 都是利用激光三角原理 来求解被物面的几何信息的。其容易混淆之 是光源因采用构光的相位移法常常被认为 构光法。
( 2)构光法和相位移法各有缺点。 精度而言, 相位移法一般高于构光法;
成本上看, 构光法一般低于相位移法。所以, 构光法广, 于精度要求高的, 一般 首先考相位移法。
构光法和相位移法的依据都是光学三角原 , 二者既有区又有系。相位移法不是直接
算由于物体高度信息化的像点, 而是接地通 相位量来实现物体三信息的量的。由于 有相位信息的参与, 使得这类方法和单纯用光 学三角原理的构光法有很大的区时间多路编码策略通常可以使用较少的彩对投影图案进行编码,能够获得较高的扫描精度,较高的扫描密度,而且解码过程简单。通过比较二灰度级编码和格雷码,可以看到格雷码作为一种绝对编码方法的优势。实际上,具体应用中选择的编码方法往往是两种或多种方法的组合,不必拘泥于一种方法。近年来大量的编码研究表明,此方法改进的总体趋势是在保证或提高精度和鲁棒性的前提下,改善动态场景和变形场景的实时性,并进一步减少投影图案数目和提高算法解码精度与速度。
参考文献:1 戴立铭, 江潼君. 激光三角测量传感器的精密位移测量. 仪器仪 表学报, 1994; ( 11 ): 400) 404

本文发布于:2024-09-23 11:25:29,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/785054.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:编码   投射   光条   图案
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议