孔德明,張 娜,黃紫雙,陳曉玉,沈 閱
(1.燕山大學(xué) 電氣工程學(xué)院,河北 秦皇島 066004;2.燕山大學(xué) 信息科學(xué)與工程學(xué)院,河北 秦皇島 066004;3.秦皇島燕大智能信息技術(shù)有限責(zé)任公司,河北 秦皇島 066000)
隨著工業(yè)的快速發(fā)展,人們對(duì)工程測(cè)量技術(shù)有了更高的要求,測(cè)量過(guò)程中的效率和精度是人們關(guān)注的焦點(diǎn)。在多種測(cè)量手段中,基于激光雷達(dá)探測(cè)技術(shù)的測(cè)量方法在測(cè)量速度、精度、抗干擾能力等方面有著獨(dú)特的優(yōu)勢(shì),因此在多個(gè)領(lǐng)域獲得了廣泛的應(yīng)用[1]。
目前港口主要利用攝像設(shè)備對(duì)裝載散雜貨物的列車車廂進(jìn)行檢測(cè)作業(yè),但該檢測(cè)技術(shù)存在一些不足。一方面車廂裝卸貨區(qū)域灰塵較多、光照不足、水汽含量高,在此環(huán)境下難以獲得良好的圖像信息,且攝像頭長(zhǎng)時(shí)間曝光存在圖像畸變問(wèn)題,造成其直接檢測(cè)結(jié)果不準(zhǔn)確,無(wú)法實(shí)現(xiàn)對(duì)車廂載貨體積的高精度測(cè)量。另一方面該檢測(cè)技術(shù)獲取數(shù)據(jù)的自動(dòng)化程度較低,檢測(cè)過(guò)程需要工作人員實(shí)時(shí)監(jiān)控?cái)z像設(shè)備傳輸回來(lái)的圖像信息[2]。而激光雷達(dá)探測(cè)技術(shù)不存在上述缺陷,為高精度檢測(cè)車廂載貨體積提供了新思路、新方法。
本文將激光雷達(dá)探測(cè)技術(shù)引入車廂載貨體積檢測(cè)的研究領(lǐng)域。二維激光掃描儀與OPC_Client系統(tǒng)聯(lián)合解算,獲取列車車廂在重車與空車狀態(tài)下的三維點(diǎn)云數(shù)據(jù),利用投影法對(duì)重車載貨面處三維點(diǎn)云數(shù)據(jù)構(gòu)建出的Delaunay三角網(wǎng)進(jìn)行分割,將車廂載貨總體積量等效為集合體的體積,計(jì)算所得集合體體積,進(jìn)一步搭配軌道衡系統(tǒng)完成對(duì)廂內(nèi)貨物的品質(zhì)分析。本文提出的方法能夠?qū)崿F(xiàn)對(duì)車廂貨物的體積測(cè)量,且這種獲取點(diǎn)云數(shù)據(jù)的方法相較于直接利用三維激光掃描儀進(jìn)行獲取具有低成本的優(yōu)勢(shì),為港口貨物的自動(dòng)化檢測(cè)和科學(xué)管理提供了可靠的技術(shù)基礎(chǔ)。
選取高精度二維激光掃描儀作為測(cè)量元件,如圖1所示,掃描儀發(fā)射激光束照射到車廂上表面,通過(guò)接收表面反射回來(lái)的光束,獲取激光束的回波角度和反饋時(shí)間,通過(guò)計(jì)算得到x軸與y軸上距離探測(cè)數(shù)據(jù)的位置坐標(biāo)數(shù)據(jù)(d,β),其中d表示激光發(fā)射點(diǎn)與車廂表面之間的距離值,β是掃描儀發(fā)射出的激光束在其掃描平面與x軸正向的夾角,根據(jù)
(1)
將掃描儀獲取到的數(shù)據(jù)從極坐標(biāo)形式轉(zhuǎn)換到直角坐標(biāo)形式[3]。OPC_Client系統(tǒng)通過(guò)采集車廂的狀態(tài)信息獲取其沿y軸方向的運(yùn)動(dòng)狀態(tài)數(shù)據(jù),與上述得到x軸與z軸上的距離探測(cè)數(shù)據(jù)進(jìn)行聯(lián)合解算,得到車廂的三維點(diǎn)云數(shù)據(jù)。
圖1 獲取x軸、z軸上距離探測(cè)數(shù)據(jù)
Fig.1 Distance detection data obtained onxaxis andzaxis
掃描儀與OPC_Client系統(tǒng)解算得到的車廂三維點(diǎn)云數(shù)據(jù)呈離散分布,直接計(jì)算廂內(nèi)的載貨體積較為困難,因此需要將其轉(zhuǎn)化成集合體的形式進(jìn)行求解。首先,通過(guò)構(gòu)建Delaunay三角網(wǎng)把三維點(diǎn)云數(shù)據(jù)轉(zhuǎn)化成連續(xù)的網(wǎng)格結(jié)構(gòu),接著將重車載貨面處的三角網(wǎng)依次向?qū)?yīng)的空車底面投影,得到若干個(gè)集合體。如圖2所示,根據(jù)投影高度h的不同將集合體大致分為4種:a)四棱錐,b)凸五面體,c)四面體與凸五面體結(jié)合,d)兩個(gè)四面體結(jié)合。投影三角形頂點(diǎn)坐標(biāo)為A1、B1、C1,投影后對(duì)應(yīng)的各頂點(diǎn)坐標(biāo)為A、B、C,投影高度分別為h1、h2、h3,且h1≤h2≤h3,集合體體積用VT表示。
1)設(shè)底為三角形ABC的直三棱柱體積為V(h),是關(guān)于投影高度h的一個(gè)線性函數(shù),V(h1) ≤VT≤V(h3),連續(xù)且單調(diào)遞增。V(h)計(jì)算式為
V(h)=SΔABC·h。
(2)
2)設(shè)存在h0,使得此高度下的直三棱柱體積等于分割得到的集合體體積。由V(h1)≤VT≤V(h3)可得h1≤h0≤h3。又因函數(shù)連續(xù)且單調(diào)遞增,所以h0存在且唯一。
3)易得出存在的h0為三角形A1B1C1質(zhì)心。綜上所述:車廂載貨量分割得到的任意集合體,其體積均可等效為投影三角形質(zhì)心所在平面向底面平面進(jìn)行投影處理得到的直三棱柱體積[4]。
圖2 投影處理得到的四種集合體
Fig.2 Four kinds of projective polyhedrons
若要實(shí)現(xiàn)快速、高精度地檢測(cè)車廂載貨體積,關(guān)鍵在于獲取車廂的三維點(diǎn)云數(shù)據(jù)并對(duì)其進(jìn)行優(yōu)化處理和計(jì)算分析。其主要步驟如圖3所示,分為以下幾步:二維激光掃描儀實(shí)時(shí)掃描車廂輪廓、OPC_Client系統(tǒng)采集車廂狀態(tài)信息、聯(lián)合解算生成車廂三維點(diǎn)云數(shù)據(jù)、構(gòu)建車廂Delaunay三角網(wǎng)、計(jì)算車廂載貨體積、判定貨物品質(zhì)[5]。
二維激光掃描儀對(duì)車廂上表面反射回來(lái)激光束的回波角度與距離值進(jìn)行判定[6],獲取重車與空車狀態(tài)下車廂在x軸與z軸方向上的兩組距離探測(cè)數(shù)據(jù),裝配于軌道上的OPC_Client系統(tǒng)解算得到車廂沿y軸方向的運(yùn)動(dòng)狀態(tài)數(shù)據(jù),與上述獲取到的距離探測(cè)數(shù)據(jù)聯(lián)合解算得到車廂的三維點(diǎn)云數(shù)據(jù)。經(jīng)下采樣處理及去除冗余點(diǎn)處理后,對(duì)重車載貨面處與空車內(nèi)表面處的點(diǎn)云數(shù)據(jù)分別構(gòu)建Delaunay三角網(wǎng),從而得到車廂的上頂面和下底面。上頂面三角網(wǎng)中的各三角形向下底面投影,將車廂載貨量轉(zhuǎn)化為投影三角形為頂面的三棱柱所組成的集合體體積[7],計(jì)算所有集合體體積并進(jìn)行累積求和得到車廂的總載貨體積,最后與軌道衡提供的重量數(shù)據(jù)計(jì)算廂內(nèi)所載貨物的體密度參數(shù)并判定其品質(zhì)優(yōu)劣。
圖3 載貨車廂體積檢測(cè)流程圖
Fig.3 Flow chart of detection for volume of freight carriages
基于二維激光掃描儀搭建車廂載貨體積的測(cè)量系統(tǒng)平臺(tái)[8],系統(tǒng)主要由二維激光掃描儀、OPC_Client系統(tǒng)、現(xiàn)場(chǎng)總線、工業(yè)以太網(wǎng)、數(shù)據(jù)采集工作站、交換機(jī)、定位車數(shù)據(jù)采集系統(tǒng)、軌道衡系統(tǒng)和生產(chǎn)管理系統(tǒng)組成,如圖4所示。
測(cè)量原理:工業(yè)現(xiàn)場(chǎng)利用安裝于翻車機(jī)房進(jìn)出口的二維激光掃描儀對(duì)重車與空車狀態(tài)下的車廂進(jìn)行實(shí)時(shí)掃描,現(xiàn)場(chǎng)總線采集掃描設(shè)備獲取到的實(shí)時(shí)數(shù)據(jù)并傳輸給交換機(jī)。利用工業(yè)以太網(wǎng)交換機(jī)完成數(shù)據(jù)采集工作站與二維激光掃描儀間的無(wú)沖突聯(lián)系通信,滿足所獲取到的信息具有實(shí)時(shí)性的要求。同時(shí)OPC_Client系統(tǒng)采集車廂沿其運(yùn)動(dòng)方向的狀態(tài)信息,與二維激光掃描儀獲取到的掃描數(shù)據(jù)共同輸入到數(shù)據(jù)采集工作站中聯(lián)合解算,得到列車車廂的三維點(diǎn)云數(shù)據(jù)[9]。
除此之外,軌道衡系統(tǒng)提供廂內(nèi)貨物的重量數(shù)據(jù),在數(shù)據(jù)處理系統(tǒng)中與計(jì)算得到的車廂載貨體積求解貨物的體密度參數(shù),該參數(shù)可作為貨物品質(zhì)優(yōu)劣的評(píng)價(jià)依據(jù)。生產(chǎn)管理系統(tǒng)負(fù)責(zé)發(fā)送進(jìn)車信息和接收廂內(nèi)貨物的體積數(shù)據(jù),通過(guò)對(duì)列車車廂行進(jìn)狀態(tài)的實(shí)時(shí)判定,可獲取翻車循環(huán)周期并對(duì)列車車廂的實(shí)際工作狀態(tài)進(jìn)行及時(shí)調(diào)整,從而實(shí)現(xiàn)整個(gè)工業(yè)生產(chǎn)系統(tǒng)的有序運(yùn)作[10]。
圖4 測(cè)量系統(tǒng)示意圖
Fig.4 Schematic diagram of measurement system
二維激光掃描儀和OPC_Client系統(tǒng)共同組成測(cè)量模塊,獲取車廂的三維點(diǎn)云數(shù)據(jù)。圖5 (a) 所示是掃描儀在多視角下的結(jié)構(gòu)示意圖,根據(jù)實(shí)際需求,選取操作簡(jiǎn)便的U型夾與無(wú)需增加焊點(diǎn)的H型鋼對(duì)設(shè)備進(jìn)行安裝固定,該固定方式結(jié)構(gòu)強(qiáng)度高、同時(shí)兼?zhèn)湓O(shè)計(jì)靈活、環(huán)保、省工省料的優(yōu)勢(shì)。圖5 (b) 是工業(yè)現(xiàn)場(chǎng)的安裝示意圖,掃描儀安裝于翻車機(jī)房重車入口和另一側(cè)空車出口的頂部中心線位置,獲取車廂在x軸與z軸方向上的兩組距離探測(cè)數(shù)據(jù),箭頭指向?yàn)檐噹膶?shí)際行進(jìn)方向,掃描儀在車廂的行進(jìn)過(guò)程中對(duì)夾角角度為γ范圍內(nèi)的車廂上表面進(jìn)行實(shí)時(shí)掃描[11]。沿y軸方向的運(yùn)動(dòng)狀態(tài)數(shù)據(jù)由OPC_Client系統(tǒng)提供,兩部分?jǐn)?shù)據(jù)共同求解得到車廂的三維點(diǎn)云數(shù)據(jù)。
圖5 激光掃描系統(tǒng)布設(shè)位置示意圖
Fig.5 Schematic diagram of laser scanning system position
圖6 (a) 和圖6 (b) 分別是車廂在重車與空車狀態(tài)下的原始三維點(diǎn)云數(shù)據(jù),該數(shù)據(jù)點(diǎn)密集,呈離散不規(guī)則分布,且在部分邊緣區(qū)域存在冗余噪聲點(diǎn)。
大多數(shù)用激光掃描儀直接獲取到的點(diǎn)云數(shù)據(jù)較為密集,且存在大量的冗余點(diǎn),對(duì)后續(xù)計(jì)算車廂載貨量造成較大干擾,因此點(diǎn)云數(shù)據(jù)的預(yù)處理階段必不可少[12]。
3.2.1下采樣處理
保證點(diǎn)云數(shù)據(jù)模型特征不丟失的前提下,測(cè)試選取最佳的下采樣間隔對(duì)原始三維點(diǎn)云數(shù)據(jù)進(jìn)行簡(jiǎn)化處理[13]。如圖7 (a) 和圖7 (b) 所示,經(jīng)下采樣處理后重車與空車狀態(tài)下三維點(diǎn)云數(shù)據(jù)密度大幅度降低, 提高了后續(xù)三維建模與數(shù)據(jù)計(jì)算的效率。
3.2.2去除冗余點(diǎn)處理
圖8 (a) 是空車狀態(tài)下的三維點(diǎn)云數(shù)據(jù),方框部分標(biāo)記出干擾后續(xù)車廂載貨量計(jì)算的三根橫梁,為提高計(jì)算精度,剔除方框內(nèi)的冗余點(diǎn)[14],對(duì)其余點(diǎn)進(jìn)行保留。經(jīng)過(guò)這樣的處理方法得到圖8 (b),此時(shí)得到的點(diǎn)云數(shù)據(jù)基本不包含冗余點(diǎn),無(wú)關(guān)點(diǎn)對(duì)車廂載貨量計(jì)算的干擾較小,運(yùn)算精度得以提高。
圖6 原始狀態(tài)下的三維點(diǎn)云數(shù)據(jù)
Fig.6 3D point cloud in the original state
圖7 下采樣處理后的三維點(diǎn)云數(shù)據(jù)
Fig.7 3D point cloud after down-sampling processing
圖8 去除冗余點(diǎn)處理前后空車狀態(tài)下的三維點(diǎn)云數(shù)據(jù)
Fig.8 3D point cloud of a vehicle with empty cargo before and after removing irrelevant points processing
平面中定義一點(diǎn)集Q,Q={Qi|i=1,2,…,j},且j≥3。V(Qm)= ∩H(Qm,Qn),(1≤n≤j,m≠n),即V(Qm)表示比其余點(diǎn)更接近Qm的點(diǎn)的軌跡是j-1個(gè)半平面的交,它是一個(gè)不多于j-1條邊的凸多邊形域,稱為關(guān)聯(lián)于Qm的Voronoi域。Q中任意一點(diǎn)均可作為一個(gè)Voronoi多邊形,如圖9 (a)所示,這樣的j個(gè)Voronoi多邊形組成的圖形稱為Voronoi圖[15]。
由Voronoi圖衍生得到Delaunay圖,且二者互為對(duì)偶。圖9 (b) 中對(duì)每條非邊界的Voronoi邊作其中垂線,得到的即為Delaunay三角剖分[16]。基于格網(wǎng)劃分的Delaunay三角網(wǎng)的具體構(gòu)網(wǎng)步驟如下[17]:將獲取到的雜散點(diǎn)云數(shù)據(jù)進(jìn)行格網(wǎng)塊劃分,按照劃分逆序?qū)Ω窬W(wǎng)塊內(nèi)的數(shù)據(jù)點(diǎn)依次構(gòu)建Delaunay三角網(wǎng)。構(gòu)網(wǎng)過(guò)程中受相鄰格網(wǎng)中數(shù)據(jù)點(diǎn)影響的三角形與鄰近三角形暫時(shí)保存,完成構(gòu)建的三角網(wǎng)結(jié)果保存入數(shù)據(jù)庫(kù);合并臨近的Delaunay三角子網(wǎng)并進(jìn)行優(yōu)化處理,改進(jìn)過(guò)后符合條件的三角形仍按照上述步驟中的構(gòu)網(wǎng)規(guī)則進(jìn)行處理;直到完成格網(wǎng)中所有Delaunay三角網(wǎng)的構(gòu)建[18],圖10所示是按上述步驟構(gòu)建完成的重車載貨面處的Delaunay三角網(wǎng),該網(wǎng)格結(jié)構(gòu)連續(xù)且較為規(guī)則。
重車載貨面處Delaunay三角網(wǎng)中各三角形向空車底面處投影,將投影三角形映射到廂內(nèi)底面平面上,經(jīng)過(guò)這樣的處理方法,車廂的總載貨體積轉(zhuǎn)化為三角網(wǎng)中各個(gè)進(jìn)行投影處理的三角形為頂面的三棱柱所組成的集合體體積。如圖11所示,任取其中的一個(gè)集合體介紹體積求解過(guò)程[19]:
1) 計(jì)算映射到空車底面處的各三角形面積s:在僅知道三角形各頂點(diǎn)坐標(biāo)數(shù)據(jù)的情況下,采用海倫公式計(jì)算三角形面積較為高效:
(3)
式中,s為所求集合體底面三角形面積。a、b、c分別表示底面三角形各條邊長(zhǎng),p為半周長(zhǎng),各參數(shù)均可通過(guò)已知的三角形頂點(diǎn)坐標(biāo)數(shù)據(jù)計(jì)算求得。
圖9 Voronoi 圖和 Delaunay圖
Fig.9 Voronoi diagram and Delaunay diagram
圖10 重車載貨面處Delaunay三角網(wǎng)
Fig.10 Delaunay triangulation of a vehicle with bulk cargo
圖11 投影得到的集合體示例
Fig.11 An example of a projective polyhedron
2) 計(jì)算投影三角形到投影平面之間的垂直高度h:三角形各頂點(diǎn)坐標(biāo)數(shù)據(jù)分別為(x1,y1)、(x2,y2)、(x3,y3),重車載貨面處三角網(wǎng)中各三角形的質(zhì)心坐標(biāo)為
(4)
3) 計(jì)算集合體體積[20]:整列車廂的總載貨體積等效為三角網(wǎng)中各個(gè)投影三角形為頂面的三棱柱所組成的集合體體積,整列車廂的總載貨體積為
(5)
式中,單個(gè)集合體體積vi為上述計(jì)算得出的底面積s與投影高度h二者的乘積,V是所有集合體的體積總和,即為車廂的總載貨量。
4) 驗(yàn)證測(cè)量精度:任取兩列車廂分別計(jì)算其載貨量。如圖12(a) 和圖12 (b) 所示,對(duì)選取的兩列車廂構(gòu)建重車載貨面處Delaunay三角網(wǎng),三維視角下顯示兩列車廂的擬合程度較高,廂內(nèi)貨物的高度與形態(tài)大致相同,僅在部分邊緣區(qū)域略有差異,由此估計(jì)兩列車廂的體積測(cè)量結(jié)果應(yīng)較為相近。經(jīng)計(jì)算得出車廂1的載貨體積為65.89 m3,車廂2的載貨體積為65.82 m3,測(cè)量結(jié)果與估算結(jié)果獲得了良好的一致性,具有較高的精度。
以C80車廂為例,在搭建的實(shí)驗(yàn)系統(tǒng)中測(cè)量車廂載貨體積,表1中將測(cè)量得到的一組實(shí)驗(yàn)數(shù)據(jù)與標(biāo)準(zhǔn)尺寸進(jìn)行比較。經(jīng)計(jì)算與分析得出,測(cè)量重車狀態(tài)高度時(shí)誤差最小,僅為-0.036%,其余測(cè)量得到的長(zhǎng)度、寬度、高度與標(biāo)準(zhǔn)尺寸的誤差在-2.54%到+1.65%之間。標(biāo)準(zhǔn)車廂的容積為87 m3,計(jì)算得出此列車廂的載貨總體積量為71.48 m3,不超過(guò)車廂的最大容積量。同時(shí)另選取多組車廂進(jìn)行測(cè)量,實(shí)驗(yàn)結(jié)果如表2所示,均符合實(shí)際要求。
圖12 重車載貨面處Delaunay三角網(wǎng)比較
Fig.12 Comparison of Delaunay triangulation of vehicles with bulk cargo
表1 車廂標(biāo)準(zhǔn)尺寸與實(shí)際測(cè)量尺寸比較
Tab.1 Comparison of the standard size of the carriage with the actual measurement size of the carriagemm
標(biāo)準(zhǔn)尺寸重車狀態(tài)尺寸空車狀態(tài)尺寸最大寬度3 1843 1033 135最大高度2 7502 7492 739最大長(zhǎng)度10 75610 92410 934
表2 多組車廂測(cè)量結(jié)果分析
Tab.2 Analysis of the measurement results of multiplesets of carriages
車廂序號(hào)寬度誤差/%高度誤差/%長(zhǎng)度誤差/%體積/m31-1.270.132.0771.692-1.700.441.6871.313-2.13-0.351.7073.604-1.600.142.0471.845-0.931.551.3174.54
經(jīng)上述分析,在此實(shí)驗(yàn)系統(tǒng)中可以完成對(duì)列車車廂載貨體積的測(cè)量,且計(jì)算所得結(jié)果最大誤差一般不超過(guò)±2.5%,具有較高的精度。
根據(jù)碳化程度煤炭可大致分為褐煤、煙煤和無(wú)煙煤三種。圖13是相機(jī)拍攝列車車廂在重車狀態(tài)下的圖像,廂內(nèi)裝載的煤炭外觀呈灰黑色,表面較暗且光澤感不強(qiáng)。上述步驟計(jì)算得出此列車廂的載貨總體積量為71.48 m3,軌道衡通過(guò)對(duì)卸貨前后車廂進(jìn)行稱量,得出廂內(nèi)貨物質(zhì)量為80.06 t,結(jié)合上述參數(shù)計(jì)算得到此列車廂所載煤炭的體密度參數(shù)為1.12 t/m3。據(jù)此判定該車廂內(nèi)所載貨物為煙煤。
圖13 重車狀態(tài)下的圖像
Fig.13 The image of a vehicle with bulk cargo
本文提出的測(cè)量方法涉及了掃描儀測(cè)量、圖像處理、數(shù)據(jù)解算分析多方面的知識(shí):采用激光雷達(dá)探測(cè)技術(shù)獲取車廂點(diǎn)云數(shù)據(jù),通過(guò)對(duì)所得點(diǎn)云數(shù)據(jù)簡(jiǎn)化、構(gòu)網(wǎng)、分割、計(jì)算得出車廂的載貨體積,并結(jié)合軌道衡提供的質(zhì)量數(shù)據(jù)判定貨物的品質(zhì)優(yōu)劣。
在搭建的實(shí)驗(yàn)測(cè)量系統(tǒng)中對(duì)多組載貨車廂進(jìn)行體積測(cè)量,實(shí)驗(yàn)測(cè)量結(jié)果與實(shí)際的標(biāo)準(zhǔn)尺寸誤差一般不超過(guò)±2.5%,具有較高的精度。利用任取的兩組實(shí)測(cè)數(shù)據(jù)驗(yàn)證所得結(jié)論,結(jié)果表明測(cè)量結(jié)果準(zhǔn)確可信。