范建華,楊秋翔,安雁艷,馮欣悅,楊 劍
(中北大學(xué) 計(jì)算機(jī)與控制工程學(xué)院,山西 太原030051)
線(xiàn)結(jié)構(gòu)光測(cè)量技術(shù)是三維形貌測(cè)量技術(shù)中速度較快、精度較高、應(yīng)用較廣的一種測(cè)量技術(shù)。線(xiàn)結(jié)構(gòu)光測(cè)量技術(shù)通過(guò)激光器發(fā)射一條光線(xiàn)到待測(cè)物體表面,由于物體表面的深度特性,產(chǎn)生了變形,通過(guò)電荷藕合器件圖像傳感器(charge coupled device,CCD)攝像機(jī)獲取變形的光條圖像,最后通過(guò)解調(diào)光條變形圖像還原出被測(cè)物體的三維形貌。解調(diào)光條變形圖像基本且關(guān)鍵的一步就是提取光條中心[1],光條中心的提取精度和速度對(duì)整個(gè)三維形貌測(cè)量系統(tǒng)的性能有著很大的影響。本文將嵌入式系統(tǒng)技術(shù)和三維形貌測(cè)量技術(shù)相結(jié)合,研究基于高級(jí)精簡(jiǎn)指令集機(jī)器 (advanced RISC machine,ARM9)的嵌入式三維測(cè)量系統(tǒng)中的光條中心提取算法。由于嵌入式系統(tǒng)的運(yùn)算和存儲(chǔ)能力有限,如何實(shí)現(xiàn)高效的提取算法已經(jīng)成為一個(gè)亟待解決的難題。同時(shí),在條紋中心提取時(shí),由于CCD 內(nèi)部產(chǎn)生的噪聲,加上測(cè)量環(huán)境的復(fù)雜性及被測(cè)物體的多樣性,如被測(cè)物體的形貌結(jié)構(gòu)復(fù)雜、材質(zhì)不一、顏色變化等等,光條常會(huì)發(fā)生多種變化,使得最終得到的光條圖像受到很多干擾,這給光條紋中心提取方法的設(shè)計(jì)帶來(lái)很大的困難[2,3],針對(duì)上述問(wèn)題,本文提出了一種嵌入式系統(tǒng)中的條紋中心提取算法,實(shí)現(xiàn)了條紋中心的快速、精確提取。
常見(jiàn)的提取算法有極值法、閾值法、幾何中心法、重心法、曲線(xiàn)擬合法等。極值法是把灰度值最大的點(diǎn)作為光條中心,該算法原理簡(jiǎn)單、運(yùn)算速度快,但是當(dāng)激光條紋光強(qiáng)較大時(shí)會(huì)存在多個(gè)極大值的現(xiàn)象,提取出的中心線(xiàn)不是單像素的。閾值法是以閾值大于等于一定值的左右2個(gè)像素的位置中心作為光條中心,提取速度快,但是精度較差,且噪聲較多使信號(hào)失真時(shí)效果更差。幾何中心法首先求出光條的2個(gè)邊界,在每個(gè)截面上,用2個(gè)邊界位置的幾何中心點(diǎn)作為光條中心。這種方法簡(jiǎn)單,提取速度快,但是必須首先獲取精確的邊界位置才能保證最終結(jié)果的正確性,對(duì)噪聲比較敏感[4]。高斯擬合法是利用光條紋的灰度值在法線(xiàn)方向上近似服從高斯分布,在其法線(xiàn)方向上擬合出高斯曲線(xiàn),并把極值的位置作為光條中心,該方法不適合窄帶光條中心的提取,魯棒性不佳[5,6]。重心法是對(duì)像素位置進(jìn)行灰度加權(quán)而求出光條中心位置,沒(méi)有考慮線(xiàn)條的方向性,因此在光條曲線(xiàn)的曲率變化較大處存在錯(cuò)誤判斷[7,8]。針對(duì)這個(gè)問(wèn)題,國(guó)內(nèi)外許多學(xué)者提出了相應(yīng)的解決方案。Steger提出了利用Hessian矩陣的性質(zhì)來(lái)求取光條的法線(xiàn)方向,后來(lái)一些學(xué)者又在此基礎(chǔ)上作了改進(jìn),該方法精度能達(dá)到亞像素級(jí),穩(wěn)定性好,但是計(jì)算量大,影響了測(cè)量的實(shí)時(shí)性[9,10]。熊會(huì)元等提出了方向模板法,該方法需要圖像與多個(gè)方向模板進(jìn)行相關(guān)運(yùn)算,雖然抗噪聲能力比較好,但運(yùn)算量較大,數(shù)據(jù)存儲(chǔ)量也較大,且運(yùn)算比較復(fù)雜,提取精度不能達(dá)到亞像素級(jí)[11,12]。本文中提出了用微分中值定理求條紋的近似法線(xiàn),在法線(xiàn)方向上用灰度重心法求條紋中心的方法,精度達(dá)到亞像素級(jí),能實(shí)現(xiàn)條紋中心的實(shí)時(shí)快速提取。
由于測(cè)量環(huán)境的光照不穩(wěn)定、物體本身的反射光以及CCD 的成像噪聲和圖像采集卡的采樣和量化誤差等影響,使獲得的光條變形圖像中帶有大量的噪聲。所以進(jìn)行光條中心提取前首先應(yīng)該對(duì)圖像進(jìn)行噪聲處理,濾掉噪聲信號(hào),保留有用的光條信號(hào)。根據(jù)上述原則,本文中采用中值濾波。中值濾波的工作步驟如下:
(1)選取二維奇數(shù)采樣窗口,讓其在獲取的光條變形圖像上滑動(dòng),使采樣窗口的中心與光條圖像中某一像素位置重合。
(2)將窗口中的像素按照灰度值從小到大進(jìn)行排序,生成單調(diào)的數(shù)據(jù)序列。
(3)選出序列中的中間值,將其賦值給對(duì)應(yīng)模板中心位置的像素。
中值濾波是一種非線(xiàn)性平滑技術(shù)。它可以克服線(xiàn)性濾波器帶來(lái)的圖像細(xì)節(jié)模糊問(wèn)題,既能很好地去除孤點(diǎn)噪聲,又能保持圖像的邊緣特性。而且它對(duì)濾除脈沖干擾和圖像掃描噪聲非常有效,同時(shí)它運(yùn)算簡(jiǎn)單,易于實(shí)現(xiàn)[13]。
光條變形圖像經(jīng)過(guò)濾波之后,對(duì)其進(jìn)行閾值分割。閾值分割是一種基于區(qū)域的圖像分割技術(shù),尤其適用于目標(biāo)和背景的灰度級(jí)相差較大的圖像。它通過(guò)設(shè)定不同的閾值,把圖像像素點(diǎn)分為若干類(lèi),以便根據(jù)具體的情況對(duì)不同類(lèi)別做出相應(yīng)的處理,這樣可以極大地壓縮數(shù)據(jù)量,而且也在很大程度上簡(jiǎn)化了分析步驟。閾值分割是一種最常用的圖像分割方法,它已經(jīng)被廣泛地應(yīng)用于很多領(lǐng)域。閾值分割有多種不同的分割方法,本文采用最大類(lèi)間方差法[14]來(lái)獲得合適的閾值th,該方法使得圖像中目標(biāo)與背景的錯(cuò)分概率最小。
設(shè)原始圖像為I(i,j),則分割后的圖像If如下式
式中:I(i,j)—— (i,j)處像素的灰度值。
在本文中,采集到的光條變形圖像的目標(biāo)和背景占據(jù)著不同灰度級(jí)范圍,采用閾值分割法能很好地體現(xiàn)出該方法計(jì)算簡(jiǎn)單、運(yùn)算效率高、運(yùn)行速度快的優(yōu)點(diǎn)。
經(jīng)過(guò)圖像預(yù)處理之后,就可以進(jìn)行光條中心的提取了。首先用閾值法粗略提取出光條的中心點(diǎn)。將這些離散的中心點(diǎn)通過(guò)插值法構(gòu)造成光滑的曲線(xiàn),這樣就得到了粗提取的光條中心線(xiàn)。同時(shí)把這些粗提取的中心點(diǎn)放入集合S(x,y)中,然后從集合中依次取出中心點(diǎn),根據(jù)微分中值定理,求出每一點(diǎn)的近似法線(xiàn)。
微分中值定理:如果函數(shù)f(x)在區(qū)間 [a,b]內(nèi)連續(xù),在區(qū)間 (a,b)內(nèi)可導(dǎo),那么在 (a,b)內(nèi)至少有一點(diǎn)c (a<c<b),使得式2成立
即點(diǎn) (c,f(c))的切線(xiàn)與f(x)在x=a,x=b處對(duì)應(yīng)的兩點(diǎn) ((a,f(a))和 (b,f(b))的連線(xiàn)平行。則可以求得該點(diǎn)的切線(xiàn)斜率k
求出斜率k之后就可以求出該點(diǎn)的法線(xiàn)。如圖1所示。
對(duì)圖像f,求出粗提取的光條中心線(xiàn)后用微分中值定理近似求出光條紋的法線(xiàn)方向。對(duì)于條紋中心線(xiàn)上的一點(diǎn),它的圖像坐標(biāo)為 (x0,y0),與它相鄰的上下兩點(diǎn)分別為(x1,y1)(x2,y2),它的切線(xiàn)方向的斜率為k1,它的法線(xiàn)的斜率為k,根據(jù)微分中值定理可以求得k1和k的值
圖1 微分中值定理
則 (x0,y0)點(diǎn)的法線(xiàn)為
粗提取的條紋法線(xiàn)如圖2所示。從圖中可以看出用中值定理求出的法線(xiàn)方向和曲線(xiàn)的法線(xiàn)方向非常接近,可以近似把該方向看成是曲線(xiàn)的法線(xiàn)方向,因此對(duì)點(diǎn) (x,y)∈S(x,y),可以沿著該方向求取光條中心。對(duì)于集合S中的一點(diǎn) (x0,y0),在其法線(xiàn)方向上取出圖像中的目標(biāo)點(diǎn),將這些點(diǎn)依次放入集合Tx0,y0(x,y)中,且令
式中:f(x,y)—— (x,y)對(duì)應(yīng)的灰度值。然后對(duì)集合T 中的點(diǎn)用灰度重心法求取光條中心。
圖2 光條的法線(xiàn)方向
上式中n為集合Tx0,y0,)中點(diǎn)的個(gè)數(shù)。點(diǎn) (,)即為光條中心點(diǎn)。依次取出集合S中的點(diǎn),用灰度重心法求取中心點(diǎn),最終得到光條中心線(xiàn)。
根據(jù)上文提出的方法進(jìn)行了實(shí)驗(yàn)。實(shí)驗(yàn)中采用的攝像機(jī)為WAT-902B,圖像分辨率 (dpi)為570TVL,激光光源為650nm。CPU 為Intel(R)Core(TM)2Duo E7500,使 用 TX-2440A ARM9 嵌 入 式 開(kāi) 發(fā) 板, 資 源 來(lái) 自O(shè)PENCV2.0嵌入式視覺(jué)庫(kù),開(kāi)發(fā)庫(kù)為EMCV2.3庫(kù),操作系統(tǒng)為L(zhǎng)inux2.6。在上述開(kāi)發(fā)環(huán)境中,對(duì)圖3中獲取的原始圖像進(jìn)行處理。實(shí)驗(yàn)實(shí)現(xiàn)了重心法、方向模板法、改進(jìn)的方向模板法以及本文中提出的方法。圖4所示為本文中提出的方法的提取結(jié)果,圖5為重心法的提取結(jié)果,圖6為方向模板法的提取結(jié)果,圖7為改進(jìn)的方向模板法的提取結(jié)果。通過(guò)對(duì)這幾幅圖像進(jìn)行對(duì)比可以看到,本文中提出的方法能更好地提取出光條中心線(xiàn)。表1為上述幾種光條中心提取方法的數(shù)據(jù)統(tǒng)計(jì),從表中可以看到重心法在136行與137行、144行與145行之間出現(xiàn)了斷線(xiàn)。方向模板法在141行與142行之間出現(xiàn)了斷線(xiàn),而本文提出的方法則沒(méi)有出現(xiàn)這個(gè)問(wèn)題,且提取結(jié)果達(dá)到了亞像素級(jí)。而且與方向模板法和改進(jìn)的方向模板法相比,本文中提出的方法提取速度明顯較快,提取時(shí)間為0.187s,達(dá)到了實(shí)時(shí)提取的目標(biāo)。
圖3 原始圖像
圖4 本文方法
圖5 重心法
圖6 方向模板法
圖7 改進(jìn)的方向模板
本文在嵌入式系統(tǒng)資源有限的條件下,針對(duì)光條中心提取的問(wèn)題,提出了用微分中值定理近似求出光條法線(xiàn)方向,在法線(xiàn)方向上用灰度重心法來(lái)提取光條中心的方法。該方法省去了計(jì)算海賽矩陣以確定法線(xiàn)方向的所需的時(shí)空資源,縮短了提取光條中心的時(shí)間。與重心法相比,該方法克服了重心法不能處理光條紋方向的不足。同時(shí)該方法克服了方向模板法只能獲得光條紋有限近似方向的不足。經(jīng)過(guò)實(shí)驗(yàn)證明該方法能實(shí)現(xiàn)光條的實(shí)時(shí)、快速提取,并能達(dá)到亞像素級(jí),可以滿(mǎn)足嵌入式三維形貌測(cè)量系統(tǒng)的要求。
表1 幾種光條中心提取方法的數(shù)據(jù)統(tǒng)計(jì)
[1]ZHANG Yuwei.Research on three-dimensional topography measurement using structured light[D].Harbin:Harbin Engineering University,2012 (in Chinese).[張雨薇.基于結(jié)構(gòu)光的物體三維形貌測(cè)量[D].哈爾濱:哈爾濱工程大學(xué),2012.]
[2]YANG Wei.Research on method for extracting center of structured light stripes[D].Harbin:Harbin Institute of Technology,2012 (in Chinese). [楊尉.結(jié)構(gòu)光光條中心提取方法的研究 [D].哈爾濱:哈爾濱工業(yè)大學(xué),2012.]
[3]ZHOU Fuqiang,CHEN Qiang,ZHANG Guangjun.Composite image processing for center extraction of structured light stripe[J].Journal of Optoelectronics-Laser,2008,19 (11):1534-1537 (in Chinese).[周富強(qiáng),陳強(qiáng),張廣軍.結(jié)構(gòu)光光條提取的混合圖像處理方法 [J].光電子-激光,2008,19(11):1534-1537.]
[4]XU Jingzhu.Research on methods and evaluation of stripe center extraction in structured light 3D measurement[D].Nanjing:Nanjing University,2012 (in Chinese).[徐靜珠.結(jié)構(gòu)光三維測(cè)量中光條中心提取方法及其評(píng)價(jià)的研究 [D].南京:南京大學(xué),2012.]
[5]GAO Shiyi,YANG Kaizhen.Research on central position extraction of laser strip based on varid-boundary Gaussian fitting[J].Chinese Journal of Scientific Instrument,2011,32 (5):1132-1137 (in Chinese).[高世一,楊凱珍.變邊限高斯擬合提取激光條紋中心線(xiàn)方法的研究 [J].儀器儀表學(xué)報(bào),2011,32 (5):1132-1137.]
[6]SUN Panqing,YANG Yongyue,HE Liangliang.An improved Gaussian fitting method used in light-trap center acqui-ring [J].Electronic Design Engineering,2012,13 (20):179-185 (in Chinese).[孫盼慶,楊永躍,何亮亮.一種改進(jìn)的高斯擬合法在光帶中心提取中的應(yīng)用 [J].電子設(shè)計(jì)工程,2012,13 (20):179-185.]
[7]LI Zhongwei,WANG Congjun,SHI Yusheng.An algorithm for detecting center of structured light stripe combining gradient sharpening with barycenter method [J].Journal of Image and Graphics,2008,13 (1):64-68 (in Chinese). [李中偉,王從軍,史玉升.一種結(jié)合梯度銳化和重心法的光條中心提取算法 [J].中國(guó)圖象圖形學(xué)報(bào),2008,13 (1):64-68.]
[8]WU Jiayong,WANG Pingjiang,CHEN Jihong,et al.Method of linear structured light sub-pixel center position extracting based on gradient barycenter[J].Journal of Image and Graphics,2009,14(7):1355-1360(in Chinese).[吳家勇,王平江,陳吉紅,等.基于梯度重心法的線(xiàn)結(jié)構(gòu)光中心亞像素提取方 [J].中國(guó)圖象圖形學(xué)報(bào),2009,14 (7):1355-1360.]
[9]Steger C.An unbiased detector of curvilinear structures [J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1998,20 (2):113-125.
[10]JIANG Jie,DENG Jueqiong,ZHANG Guangjun,et al.Real-time implementation of light stripe center extraction[J].Optical Technique,2008,34 (2):170-177 (in Chinese).[江潔,鄧玨瓊,張廣軍,等.光條紋中心的實(shí)時(shí)快速提取 [J].光學(xué)技術(shù),2008,34 (2):170-177.]
[11]XIONG Huiyuan,ZONG Zhijian,GAO Qun,et al.Precise method for extracting center of structured light stripe [J].Computer Engineering and Applications,2009,45 (10):235-237 (in Chinese). [熊會(huì)元,宗志堅(jiān),高群,等.精確提取線(xiàn)結(jié)構(gòu)光條紋中心方法 [J].計(jì)算機(jī)工程與應(yīng)用,2009,45 (10):235-237.]
[12]WU Qingyang,SU Xianyu,LI Jingzhen,et al.A new method for extracting the center-line of line structure lightstripe[J].Journal of Sichuan University,2007,39 (4):151-155 (in Chinese). [吳慶陽(yáng),蘇顯渝,李景鎮(zhèn),等.一種新的線(xiàn)結(jié)構(gòu)光光帶中心提取算法 [J].四川大學(xué)學(xué)報(bào),2007,39 (4):151-155.]
[13]ZHAO Gaochang,ZHANG Lei,WU Fengbo.Application of improved median filtering algorithm to image de-noising [J].Journal of Applied Optics,2011,32 (4):121-126 (in Chinese).[趙高長(zhǎng),張磊,武風(fēng)波.改進(jìn)的中值濾波算法在圖像去噪中的應(yīng)用 [J].應(yīng)用光學(xué),2011,32 (4):121-126.]
[14]LIU Dongju.The research of image segmentation based on thresholds[D].Beijing:Beijing Jiaotong University,2009(in Chinese). [劉冬菊.基于閾值的圖像分割算法的研究[D].北京:北京交通大學(xué),2009.]