曹世界,姚隆興,張志毅
(西北農(nóng)林科技大學信息工程學院,陜西 楊凌 712100)
三維點云數(shù)據(jù)的獲取在工業(yè)鑄件、醫(yī)療診斷、安全檢測、物體三維形貌獲取等領域廣泛應用。依據(jù)三維點云數(shù)據(jù)的獲取方式,可以將其分為接觸式[1-3]和非接觸式[4-6]兩類。接觸式三維點云獲取技術主要是通過探測器測頭系統(tǒng)與待測物體表面直接接觸獲得觸碰點處的三維坐標,該技術測量精度能夠達到μm級別,但是該裝備要根據(jù)環(huán)境要求適配合適的測頭系統(tǒng),在獲得三維數(shù)據(jù)時測頭系統(tǒng)需要與被測輪廓接觸,容易對物體造成刮損,影響測量精度,點云數(shù)據(jù)獲取效率低,達不到實時數(shù)據(jù)獲取而且該設備價格昂貴,并未得到廣泛應用?;诩す馊S掃描系統(tǒng)成本低,精度高,因此一直是非接觸式三維數(shù)據(jù)獲取的研究熱點。
目前,基于激光三維掃描技術大多都是基于線激光掃描[7],基于線激光掃描系統(tǒng)能夠快速、穩(wěn)定的獲取精確度較高的三維點云數(shù)據(jù)。但是對于物體內(nèi)部三維點云數(shù)據(jù)獲取由于線激光自身的結(jié)構單一,對于首次獲得的三維點云數(shù)據(jù)需要進行點云的配準與剔除才能恢復出物體內(nèi)部真實的三維點云數(shù)據(jù)?;謴统鑫矬w內(nèi)部三維點云數(shù)據(jù)對于物體內(nèi)部結(jié)構的探測有非常重要的意義,比如,管材內(nèi)壁、隧道內(nèi)壁的三維測量。獲得物體內(nèi)部的三維點云數(shù)據(jù),可以進一步對物體內(nèi)部三維全貌做出初步判斷,進而可以得出安全性檢測結(jié)果。
基于以上原因,文中提出一種基于環(huán)形激光單目掃描方法,由于環(huán)形激光自身就是一個封閉性的環(huán)狀,能夠均勻的分布在物體內(nèi)壁上,激光和相機按照固定位置在軌道小車上,用小車精確記錄每一次的位移信息,不需要在獲得三維點云數(shù)據(jù)后做進一步的點云配準工作,而且每個圓環(huán)數(shù)據(jù)的獲取得到的是該時刻,該深度值處360°的點云數(shù)據(jù)。因此本文提出的方法,在效率上能夠得到很大的提升,由于避免了點云配準造成的二次誤差在精度上也會有一定程度的提升。同時兼顧了掃描精度和時間效率的需求,因此具有一定的實用價值。
整個系統(tǒng)的硬件包括一個工業(yè)相機,一個環(huán)形激光發(fā)射器,一輛軌道小車。如圖1所示,將相機和環(huán)形激光發(fā)射器按照激光光心和相機中心在一條直線且激光在前相機在后的位姿關系固定在小車上,用來拍攝獲取小車在移動過程中物體內(nèi)部環(huán)形激光條紋的變化情況。軌道小車可以精準記錄掃描系統(tǒng)的位移情況,用來控制掃描數(shù)據(jù)的深度值變化。
圖1 系統(tǒng)硬件設計
該掃描系統(tǒng)主要需要解決攝像機內(nèi)外參數(shù)的標定、環(huán)形激光條紋中心提取、環(huán)形激光錐面方程標定、物體內(nèi)部三維掃描等4個問題。
將環(huán)形激光變換不同位姿打在貼有標定靶的白板上并用相機拍攝下每次的變換,使用張正友相機標定算法標定出相機的內(nèi)外參數(shù),使用Hessian矩陣法提取出相機拍攝到的環(huán)形激光的光條紋中心。在每一張拍攝到的環(huán)形激光中均勻提取出若干個點,結(jié)合相機的內(nèi)外參數(shù)計算出這些點的三維坐標,將得到的三維坐標代入到錐面方程中,使用最小二乘法對錐面一般式進行環(huán)形激光錐面方程的標定,標定出環(huán)形激光錐面的方程。使用標定好的系統(tǒng)對物體內(nèi)部進行掃描,獲得物體內(nèi)部的三維數(shù)據(jù)。系統(tǒng)技術方案如圖2所示。
圖2 系統(tǒng)技術方案流程圖
相機標定[8-10]是指根據(jù)相機成像模型,由特征點在圖像中的坐標與世界坐標的對應關系,求解相機模型的參數(shù),需要標定的參數(shù)有內(nèi)部參數(shù)和外部參數(shù)。如果不考慮鏡頭畸變的情況的話,可以將相機成像模型理想化為針孔模型,針孔成像原理就是利用投影將真實的世界坐標轉(zhuǎn)換到圖像坐標,其成像模式示意圖如圖3所示。
圖3 像素坐標系與世界坐標系的轉(zhuǎn)換關系
因此,兩坐標系之間的轉(zhuǎn)換關系可以寫成式(1)的形式。其中,f為相機的焦距,dx,dy為單位像素在圖像坐標系中x軸方向和y軸方向上的物理尺寸,(u0,v0)表示圖像坐標系原點在像素坐標系中具體位置,A為相機的內(nèi)參矩陣,Rt為相機的旋轉(zhuǎn)平移矩陣。本文采用張正友相機標定算法獲得相機的內(nèi)外參數(shù),再根據(jù)式(1)實現(xiàn)各個坐標系之間的轉(zhuǎn)換。
(1)
其中
本文獲取擬合環(huán)形激光錐面方程的數(shù)據(jù)是通過將激光打在貼有標定靶的平面上,環(huán)形激光在圖像上的像素坐標與相機中心連線形成的射線與標定靶平面相交的交點即為要采集的擬合激光錐面所需數(shù)據(jù)。環(huán)形激光打在標定靶所在平面示意圖如圖4所示。
圖4 激光打在棋盤格平面
設標定靶所在平面方程如式(2)所示
ax+by+cz+d=0 (a≠0,b≠0,c≠0)
(2)
相機的內(nèi)外參數(shù)已知,根據(jù)相機坐標系與世界坐標系的轉(zhuǎn)換關系可以得到標定靶上每個角點在相機坐標系下的坐標值,將得到的這些角點的坐標值代入式(2),采用最小二乘法原理,解得a,b,c,d的值,即標定出標定靶所在平面的方程。
本文使用相機拍攝下環(huán)形激光照射在物體內(nèi)表面所產(chǎn)生的光條紋中心偏移量信息來計算出物體內(nèi)表面的三維數(shù)據(jù)[11]。因此,環(huán)形激光條紋中心的提取是整個掃描任務中的關鍵環(huán)節(jié)[12,13]。穩(wěn)定、高效、準確的環(huán)形激光條紋中心提取能夠使系統(tǒng)的穩(wěn)定性、實時性、精準性得到極大的保證。
由于受外界環(huán)境光、激光功率、相機分辨率等因素的影響,拍攝到的圖像基本都會存在影響光條紋中心精準提取的噪聲點,這些噪聲點多為椒鹽噪聲,因此在光條紋中心提取前使用中值濾波對圖片進行預處理,對處理掉椒鹽噪聲的圖像進行全局閾值化處理操作,使結(jié)構光條紋與背景區(qū)別開,全局閾值化處理操作的簡化表達如式(3)所示
(3)
根據(jù)計算方式的差異,可將光條紋中心提取算法分為基于光條形態(tài)特征的方法與基于光條灰度特征的方法[14,15]。Steger算法[16]是基于Hessian矩陣的光條紋中心提取方法,能夠?qū)崿F(xiàn)光條紋中心的亞像素級精度定位而且適用于彎曲程度較大的光條紋。Steger算法是將待處理圖像看作是二維函數(shù),利用Hessian矩陣求出光條紋的法線方向,再沿著光條紋的法線方向進行泰勒展開,通過這種方法求出光條紋中心點的亞像素位置。即通過求得光條紋圖像像素點z(x,y)的Hessian矩陣特征值和對應的特征向量得到光條紋中心點法線方向。式(4)為Hessian矩陣的表示形式
(4)
其中,g(x,y)是二維高斯函數(shù)。
假設以點(x0,y0)為標準點通過Hessian矩陣求出結(jié)構光條紋法線方向的單位向量是(nx,ny),則對該光條紋橫截面上灰度值分布函數(shù)進行二階泰勒展開,光條紋橫截面上點(x0+tnx,y0+tny)的灰度值如式(5)所示
z(x0+tnx,y0+tny)
(5)
其中,N=(tnx,tny),(rx,ry)是圖像像素點z(x,y)分別與高斯核進行卷積運算得到,如式(6)所示
(6)
(7)
因此,可以得到光條紋中心精確位置為 (x0+tnx,y0+tny)。
對環(huán)形激光錐面的擬合就是對環(huán)形激光的標定[17]。環(huán)形激光的激光路徑可以看作是一個以激光發(fā)射器為原點,一定角度為張角的圓錐曲面。呈現(xiàn)的激光相當于一個圓錐與任意一個平面相截,因此發(fā)射出的激光是環(huán)形狀。所以所得環(huán)形激光上的每一個點都是該圓錐曲面上的點。通過相機的針孔成像模型可以知道真實世界中的某個點對應在成像平面中所成的像與相機光心在一條直線上。因此該直線與相交平面的交點即為真實世界中的某個點,如圖5所示。
圖5 圖像坐標與世界坐標對應關系
由式(1)可以得出成像平面的點在相機坐標系下坐標如式(8)所示
(8)
令
(9)
因此可以得到如圖5中CP1P2所在直線的參數(shù)方程式(10)。
(10)
聯(lián)立式(2)與式(10)即可求出該交點在相機坐標系下的三維坐標,也就是環(huán)形激光錐面上某個點在相機坐標系下的三維坐標值。
該環(huán)形激光的圓錐曲面方程寫成一般式如式(11)所示
a1x2+a2y2+z2+a3xy+a4xz+a5yz+a6x
(11)
選取一定數(shù)量的已經(jīng)得到的三維坐標值代入到式(11)中,通過最小二乘法求得該圓錐曲面方程的系數(shù)a1,a2,a3,a4,a5,a6,a7,a8,a9完成光錐面的標定。
一個公司的整體表現(xiàn)盈虧與否,財務報告可以很好的體現(xiàn)出來,財務管理對于每個公司企業(yè)都是重要的一環(huán),不可忽視,然而,現(xiàn)今社會,財務方面存在的問題還有很多,每個企業(yè)都或多或少的存在著一些,只是明不明顯、嚴不嚴重的區(qū)別,這就需要我們對其進行解決,規(guī)范相應規(guī)章制度,對財會人員的日常工作進行強有力的監(jiān)督,適時對員工進行培訓,提升其工作技能,鍛煉其業(yè)務熟練度。在當前這個飛速發(fā)展的社會大環(huán)境中,從根本上提高企業(yè)財務管理整體素質(zhì),加強企業(yè)競爭力。
該系統(tǒng)掃描數(shù)學模型如圖6所示。C為相機光心,也就是相機坐標系原點,O0uv為以像素為單位的圖像坐標系,O1xy是以毫米為單位的物理坐標系。CP1P2在同一條直線,在點云數(shù)據(jù)掃描時就是要獲得P2的三維坐標,由此可以根據(jù)直線CP1與激光錐面的交點求得P2的三維坐標。
圖6 掃描系統(tǒng)數(shù)學模型
聯(lián)立式(10)、式(11)可以求得直線CP1參數(shù)方程的參數(shù)值t。因為(x0,y0,z0)是坐標原點。于是,激光圓錐曲面方程可以化簡為式(12)
At2+Bt+C=0
(12)
其中
根據(jù)式(12)求出直線與圓錐曲面交點的參數(shù)值如式(13)所示。
(13)
解得t有兩個值,取相機坐標系中相機朝向的值,本文中取大于0。將求得的參數(shù)t代入到式(10)即可求得所要求取的點云數(shù)據(jù)。
本實驗使用的相機為Basler相機,環(huán)形激光為普為激光。相機與激光的相關參數(shù)如下表所示,其中,表1為該相機參數(shù),表2為該激光參數(shù)。
表1 相機主要參數(shù)
表2 激光參數(shù)
本實驗在以Windows10為系統(tǒng)的開發(fā)平臺下進行,該開發(fā)平臺的主要配置如表3所示。
表3 開發(fā)平臺主要配置
根據(jù)前面敘述的硬件設計思路搭建的掃描硬件設備如圖7所示。由于搭載激光的支架會擋住部分激光,導致點云數(shù)據(jù)的獲取會有約2.68°的殘缺從前面所述獲得的每個環(huán)形激光上的特征點坐標中選取6副圖像每幅圖像10個坐標值用來標定該結(jié)構光圓錐曲面方程,標定出的環(huán)形激光圓錐曲面方程如表4所示。
表4 圓錐方程參數(shù)值
圖7 設備實物搭建圖
該環(huán)形激光圓錐曲面擬合結(jié)果如圖8所示。
圖8 環(huán)形激光圓錐曲面
表5為標定環(huán)形激光圓錐曲面的關鍵參數(shù)為了確認本文實驗方法的可行性與有效性,分別以塑料材質(zhì)的內(nèi)徑漸變的花盆、紙質(zhì)的長方體紙箱作為測量模型。圖9中(a)和(b)為測量模型原型,其中(a)為花盆,(b)為紙箱。圖10為掃描獲得的物體點云數(shù)據(jù),其中(a)為花盆點云數(shù)據(jù),(b)為紙箱點云數(shù)據(jù)。圖11為使用Ball Pivoting算法[18-20]將點云數(shù)據(jù)生成的物體網(wǎng)格模型,其中(a)為花盆網(wǎng)格模型,(b)為紙箱網(wǎng)格模型。圖12為點云數(shù)據(jù)生成的物體表面模型,其中(a)為花盆表面模型,(b)為紙箱表面模型。
表5 環(huán)形結(jié)構光關鍵參數(shù)
圖9 掃描物品原狀
圖10 獲取點云數(shù)據(jù)
圖11 網(wǎng)格模型
圖12 表面模型
本文實驗拍攝得到的單幅圖像分辨率為2592×1944。分別從單幅圖像點云恢復時間和單幅圖像點云恢復個數(shù)以及以掃描物體內(nèi)直徑為誤差參考標準對本文掃描方法的掃描效率和掃描精度問題做分析。表6顯示了該系統(tǒng)效率和精度數(shù)據(jù)。
表6 該系統(tǒng)的效率和精度數(shù)據(jù)
本文實驗使用基于環(huán)形激光單目掃描方法,本方法在相機標定階段只需要標定出本相機的內(nèi)外參數(shù)即可,而雙目掃描方法除需要標定出兩相機各自的內(nèi)外參數(shù)外,還需要標定出兩相機之間的位姿關系。在基于激光掃描的方法中,前面每一步的誤差都會對后面的操作造成一定影響,本文方法在操作上比雙目結(jié)構光掃描省卻了兩相機之間位姿關系的標定。因此,本文方法在掃描數(shù)據(jù)時受到影響的因素會少一些,對實驗結(jié)果的準確性有一定的改善。
由表5可以看出擬合出的環(huán)形激光圓錐曲面頂點坐標與實際測量坐標誤差小于5mm,角度誤差小于0.47°。由圖10可以看出點云數(shù)據(jù)能夠恢復出被測模型的原始面貌,并且由圖11和圖12可以看出對于物體的輪廓細節(jié)能夠明顯恢復,說明本文掃描系統(tǒng)不僅可以掃描圓柱狀的物體內(nèi)部,也可以掃描立方體的物體內(nèi)部。由表6可以看出,圖像點云恢復時間較快,點云數(shù)據(jù)密集,獲取點云數(shù)據(jù)的絕對誤差小于3mm,相對誤差在小于0.6%,符合實際應用的要求。
由以上分析可以得知,本文方法對于物體內(nèi)部三維數(shù)據(jù)獲取能夠達到較高的精確度;掃描點云數(shù)據(jù)密度高;能夠完整的恢復出物體內(nèi)部的三維全貌;掃描時間較快;基本能夠應用在管道、隧道三維測量與檢測中。
針對傳統(tǒng)的線激光掃描方法的局限性,提出一種基于環(huán)形激光的掃描方法,首先將環(huán)形激光打在貼有標定靶的白板上,通過計算多幅帶有環(huán)形激光的標定靶圖片,標定出相機的內(nèi)外參數(shù)以及標定靶所在平面,進而利用透視投影原理得到環(huán)形結(jié)構光錐面上部分三維點。然后將這些點代入到圓錐一般方程利用最小二乘法求得環(huán)形結(jié)構光錐面在相機坐標系下的方程,在掃描過程中對于帶有環(huán)形結(jié)構光條紋的圖片使用Hessian算法進行光條紋中心提取,再利用錐面標定得到的參數(shù)對物體內(nèi)部進行三維點云數(shù)據(jù)的獲取,獲取點云數(shù)據(jù)的絕對誤差小于3mm相對誤差在小于0.6%。由于環(huán)形激光的連續(xù)性,在掃描過程中不會出現(xiàn)斷層、點云配準等問題,提高掃描的效率。實驗結(jié)果表明,該方法簡單、高效、精確度高,在管道內(nèi)壁檢測、隧道內(nèi)壁檢測等方面有著重要應用前景。
需要指出,受外界環(huán)境或者設備等因素的影響,掃描得到的三維點云數(shù)據(jù)難免會存在一些噪聲點,對于如何剔除掉掃描物體之外的噪聲點,是接下來要研究的內(nèi)容。