摘 要:提出一种基于RGB颜色格雷码的结构光编码方法。该方法是将红、蓝条纹按二进制格雷码编码方式进行编排,并在红、蓝条纹之间用一个像素的绿条纹作为分界。由于投射光强相同,基于CCD的摄像机拍得的条纹图像中绿条纹向红、蓝区域扩散程度等同,提取绿条纹的中心即可获得条纹的准确定位,再依据三角法原理实现三维物体测量。文中具体介绍了该方法的编码、解码原理,分析了基于HSI空间的彩色图像分割方法,给出了基于3dsMAX和MATLAB环境下的重构仿真实验结果。
1 引 言
在非接触三维测量技术中,结构光法具有成本低、分辨率高和速度快的优势,被公认为实用性最强的光学非接触三维测量技术,正日益受到重视并得到应用[122]。编码结构光法能够缩短测量时间提高测量效率,该方法有时间编码和空间编码。近年来,颜色编码被越来越多地运用到三维物体测量工程技术中。在投射相同数量的编码图案中运用颜色可以获得比灰度条纹更多的信息[324],而且颜色编码可解决基于CCD的摄像机通常将灰度编码中条纹间的边界向暗条纹一边移动的缺点[5]。本文在两灰度二进制时间编码的基础上,提出一种基于RGB颜色格雷码的结构光编码方法。该方法用红蓝条纹代替黑白条纹,并用单像素绿条纹将红蓝区域分隔,提取绿条纹中心就可以达到提高条纹定位精度避免条纹移动,从而提高三维测量精度。该方法属时间编码,适合对静态物体进行测量。
文中给出基于RGB颜色格雷码的结构光编码方法,第1部分简要介绍系统组成;第2部分着重介绍编码解码原理;第3部分给出了彩色图像分割方法及重构实验的仿真结果;最后对研究工作做出总结。
2 系统组成
测量系统由投影仪、彩色摄像机、计算机组成,如图1所示。投影仪将计算机生成的编码条纹序列依照次序投射到物体上,彩色摄像机拍下被物体调制后的条纹图像再送回计算机进行数据处理,所有过程由计算机自动控制完成。物体的空间坐标值按照三角法原理根据摄像机拍摄图像的像素点求得[6]。

3 编码解码原理
3.1 彩色模型
色彩是图像分析中一个强有力的描绘子,人眼仅能区分二十几种灰度级,却能识别成千上万的色彩。几乎所有经常使用的颜色都可由红、绿、蓝3种基色直接混合得到,且这三基色恰与人眼视网膜上红视锥、绿视锥和蓝视锥细胞所敏感的颜色相一致。彩色模型是按照某种标准利用这三基色来表示颜色的。对于一幅24位真彩色图像,每一通道颜色中有28种灰度级,其颜色可达16万多种。由于图像亮度变化、表面纹理变化以及CCD本身固有的噪声使彩色图像中的颜色产生不同程度的模糊,摄像机很难分辨出所有灰度级的颜色。为使每种颜色之间的差别达到最大,系统投射的彩色条纹只采用每一通道的最大灰度级255,即使用三基色红(255, 0, 0)、绿(0,255,0)、蓝(0, 0, 255)来编码。这使拍摄的条纹图像中各种颜色之间、系统噪声即非线性的影响都大大减少,有利于图像正确解码得到可靠的处理数据[7]。
3.2 RGB颜色格雷码
图2所示为RGB颜色格雷码的编码解码原理, t1、t2、t3表示投射次序。图2(a)是两灰度二进制格雷码的编码方法,黑白条纹的码值记为0和1,投射三幅图像可产生23个不同码值代表投射条纹。所有码值按格雷码方式编排,其每相邻两列的码值中只有一位转换误差。这种编码可靠,是一种错误最小化的编码。其循环、单步特性消除了随机取数时出现重大误差的可能。但由于基于CCD的摄像机拍摄的条纹有向暗区域移动的特性,使得解码时产生黑白条纹边界定位误差。因此,本文用颜色代替灰度来编码。图3(b)是用红、蓝色条纹代替图2(a)中的黑、白色,相应码值同样记为0和1。图2(c)中在所有相邻红蓝条纹中取其最后一位像素投射绿条纹。从图2中看出绿条纹的码值不唯一,可取0或1,其具体判断公式为:

图2(d)为投射4幅16列绿条纹的情况,第1幅中有2列绿条纹,忽略最后一列投射在背景上的绿条纹,只将中间的第8列绿条纹置0。当j=2时,第4、12列为绿条纹,根据式(1)它们的码值与前一幅相应列的码值相同;当j=3时,第2、6、10、14列为绿条纹,根据式(1)它们的码值是前2幅投射图案相应列码值异或得到的,分别为0、1、0、1;同样得到第4幅中第1、3、5、7、9、11、13、15列绿条纹的码值,它们的码值由前3幅图案的异或值得到。也就是第j幅绿条纹的编码值是由前[1,…,j-1]幅投射图案中的红蓝编码的异或值决定的。从图2(d)中看出所有绿条纹编码值仍然为格雷码,每一列绿条纹的编码唯一且相邻两绿条纹之间的码值只有一位转换误差。解码时绿条纹的码值只依赖于前[1,…,j-1]幅的红蓝条纹码值,与其相邻像素的颜色值没有关系,这可避免当物体表面不连续或非常陡峭时由于条纹压缩严重或丢失产生的解码误差。而且以绿条纹将红蓝区域分开,由于红、绿、蓝条纹同时投射其光照强度是一样的,可以避免CCD摄像机在拍摄灰度条纹时出现的条纹向暗区域移动的缺点,获得准确的条纹定位。
如果投影仪的分辨率为1 024×768,投射条纹中有1 024条绿条纹。选用的摄像机分辨率不低于投影仪的分辨率时就会相应得到1 024条格雷码值绿条纹,把投射空间分成1 024份,得到1 024个扫描角,从而得到1 024×768个三维空间点的坐标,再跟据三角法计算物体的空间坐标值。
4 重构实验
4.1 彩色图像分割
条纹编码是基于RGB三种颜色建立的,由于噪声及非线性误差的影响,CCD拍摄的条纹图像中不仅仅包含这3种颜色,因此绿条纹的正确解码需要对摄像机拍摄的彩色条纹图像进行正确分割。颜色在RGB模型中可以很方便地显示,但在RGB每一通道中即包含颜色信息也包含亮度信息,使色彩分割不易实现。为了正确分割颜色将RGB图像转为HSI图像,其中H分量代表色调,S代表饱和度也就是色调被白光稀释的程度,I代表强度与灰度级中表示的强度是一样的,这样就可以将彩色图像的色彩和强度分开利于分割。彩色分割的方法很多,本文采用阈值分割方法分割出R、G、B的有效区域[8]。
具体分割流程如图3所示,首先将拍摄的条纹图像由RGB模型转为HSI模型,分别提取H、S分量将32D搜索问题转化为12D搜索。利用S来区分高饱和区和低饱和区,低饱和区为绿条纹的区域,高饱和区对H分量分割得到红色和蓝色区域,最后合并图像,根据3. 2节中介绍的解码方法得到绿条纹的格雷码值。对分量的分割都采用预设阈值的分割方法。图像转为HSI模型后每个像素值的大小在[0, 1]间,根据大量实验其S分量阈值选为0.8,H分量阈值选为0.5。

4.2 重构实验
重构实验是在3dsMAX环境下模拟系统组成,模拟投影仪和摄像机的分辨率均为1 024×1 024,由于各颜色条纹之间的影响,投射条纹的最后一幅是用一位绿像素将3个像素的红蓝条纹分开,这样就获得7幅按照格雷码编码方法编排的条纹投射图案。由模拟彩色摄像机获得7幅被物体调制的条纹图像。在MATLAB环境下对物体重构[8],其程序的流程图如图4所示。


分别采用基于两灰度二进制格雷码和基于RGB颜色格雷码对深度值z=300mm的平面进行重构,重构结果和误差平面如图5(a)和图(b)所示。具体的重构误差如表1所示。由图5及表1可知,采用RGB颜色格雷码比两灰度二进制格雷码重构的平面所产生误差的误差要小。图6为采用RGB颜色格雷码重构三维物体的仿真结果。

5 结 论
本文提出了一种基于RGB三基色的结构光编码方法,阐述了其编码和解码原理。该方法克服了灰度编码中条纹向暗区域扩散的弊端,使得条纹定位更准确。而且绿条纹的解码不依赖其相邻像素,从而避免了当物体表面不连续或十分陡峭时的解码误差。文中给出了在3dsMAX和MATLAB环境下得到的物体重构仿真图像。
参考文献
[ 1 ] SANG X ZH. A method on 32D shape measurement andits trend in development[ J]. MeasurementTransaction,2001, 2: 36237.
[ 2 ] SALVI J. Pattern CODification strategies in structured lightsystems[J]. Pattern RecogNItion, 2004, 37: 827249.
[ 3 ] GRIESSER A. Adaptive real2time 3D acquisition and con2tour tracking within a multiple structured light system[C], Proceedings of the 12th PACific Conference on Com2puterGraphics and Applications, 2004: 155024085.
[ 4 ] Z;LLNER F, MATUSEVICH V, KOWARSCHIK R. 3Dmeasurement by stereophotogrammetry [ J]. ProceedingsofSPIE, 2003, 5144: 3112314.
[ 5 ] ROCCHINI C, CIGNONI P, MONTANI C, et a.l A lowcost optical3D scanner [ J]. ComputerGraphics Forum,2001, 20(3).
[ 6 ] DAVIS J. Space time Stereo: A Unifying Framework forDepth from Triangulation [C]. IEEE Computer SocietyConference on ComputerVision and Pattern Recognition,2003: 106326919.
[ 7 ] PAN JH, HUANG P S, CHIANG F P. Color2coded bina2ry fringe projection technique for 32D shape measurement[J]. OpticalEngineering, 2005, 44(2):0236062129.
[ 8 ] KURUGOLLU F, SANKUR B, HARMANCI AE. Colorimage segmentation using histo2gram multithresholdingand fusion [J]. Image and Vision Computing, 2001, 19(13): 9152928.
作者简介
关丛荣,女, 1971年5月出生, 1993年于哈尔滨科学技术大学获得学士学位,2001年于哈尔滨理工大学获得硕士学位,现为哈尔滨理工大学博士研究生,黑龙江工程学院副教授,主要研究方向为视觉传感技术。E2mai:l xg_ft@ sina. com
于晓洋,男, 1962年8月出生, 1984年于哈尔滨电工学院获得学士学位,分别于1989和1998年在哈尔滨工业大学获得硕士和博士学位,现为哈尔滨理工大学教授,主要研究方向为三维视觉检测、光电检测。E2mai:l yuxiaoyang@ hrbust. edu. cn




