寇 智,焦光偉
(中國人民解放軍陸軍勤務(wù)學(xué)院, 重慶 401331)
隨著我國國民經(jīng)濟(jì)的快速發(fā)展,我國已成為石油進(jìn)口大國,能源緊缺的矛盾日益突出[1],為了緩解能源緊缺,我國建成眾多大型油庫,同時油罐的建設(shè)也越來越大型化。但是油罐在使用過程中,由于施工質(zhì)量低劣、焊接工藝不符合技術(shù)要求,或在運(yùn)行中的油罐出現(xiàn)故障、操作不當(dāng),以及發(fā)生地震等災(zāi)害,都會導(dǎo)致油罐安全運(yùn)行問題的發(fā)生[2-3]。
三維激光掃描作為一種新的數(shù)據(jù)獲取技術(shù),具有高精度、高效率、無接觸、快速等優(yōu)勢,通過三維掃描方式獲取被檢測油罐的三維點模型數(shù)據(jù),并對其進(jìn)行逆向建模,分析油罐變形情況已經(jīng)成為當(dāng)前油罐變形檢測的研究熱點。郭巍等[4]基于 Leica TM30提出了在罐外檢測油罐形變的方法,即 OATS 法 ( outside the tank by automatice total station)。該方法通過確定基準(zhǔn)點的位置坐標(biāo)與基圓的圓心,測量測站至罐壁各測點的平距,經(jīng)計算間接得到各圈壁板橢圓度和徑向偏差。他光平等[5]使用徠卡 HDSP20三維激光掃描儀對油罐進(jìn)行罐內(nèi)掃描得到油罐點云數(shù)據(jù),通過分析點云數(shù)據(jù)實現(xiàn)對西部管道某末端站大型儲油罐進(jìn)行儲備罐的半徑檢測、垂直度檢測及油罐高度檢測。姬斌等[6]使用 ScanStation C10 三維激光掃描儀對球形儲罐進(jìn)行三維掃描,獲取利用Visual Studio 2010 64位軟件和PCL源碼包開發(fā)了三維重建及變形分析程序,利用 Geomagic Studio 2013 軟件對點云進(jìn)行三維重建,通過對罐體、各支柱三維表面模型的剖切和計算,建立誤差模型,獲取罐體變形量、各支柱的變形量。張柱柱等[7]利用PENTAX S-3180V三維激光掃描儀對儲罐罐頂變形進(jìn)行三維掃描測量,提出了基于三維點云數(shù)據(jù)的變形罐頂球面擬合方法,并編制Matlab程序?qū)崿F(xiàn)了該算法,該方法可有效識別罐頂變形區(qū)域和范圍。陳偉等[8]利用三維激光掃描儀對立式罐進(jìn)行掃描測量,獲取罐體三維點云坐標(biāo)數(shù)據(jù),通過擬合的方法得出各個圈板切片的截面圓圓心坐標(biāo),通過提出的4種新方法對立式罐的傾斜度進(jìn)行計算。任志明等[9]采用高精度Leica HDS激光三維掃描儀系統(tǒng)掃描儲氣罐的點云數(shù)據(jù),使用軟件Cycloned 對點云數(shù)據(jù)進(jìn)行預(yù)處理,通過程序編程實現(xiàn)了自動剔除噪音以及罐體和柱體的圓心坐標(biāo)計算,并繪制罐體、支柱的相關(guān)模型,且對計算的數(shù)據(jù)進(jìn)行了誤差分析,通過數(shù)據(jù)比較及各種透視圖來進(jìn)行罐體和支柱形變的評估工作,形成了一套可行的應(yīng)用方案。劉春曉等[10]使用天寶TX8三維激光掃描儀采取寧波某罐區(qū)大型原油儲油罐的點云數(shù)據(jù),通過分析油罐點云數(shù)據(jù)實現(xiàn)儲罐圈板橢圓度檢測、壁板凹凸度檢測、半徑檢測、傾斜量檢測。隨著三維激光掃描技術(shù)在油罐變形檢測中的頻繁運(yùn)用,本文采用Visual Studio 2015軟件和點云數(shù)據(jù)庫PCL開發(fā)一套油罐變形點云數(shù)據(jù)處理軟件,采用Oracle數(shù)據(jù)庫對點云數(shù)據(jù)進(jìn)行管理與存儲。使得該軟件對儲罐點云數(shù)據(jù)進(jìn)行正確的計算,從而快速地、準(zhǔn)確地判斷出儲罐是否幾何形變與儲罐形變的具體位置,同時也能避免影響油罐的正常使用,造成不必要的經(jīng)濟(jì)損失,為儲罐的安全使用、管理、儲罐變形檢修提供依據(jù)。
在進(jìn)行油罐變形點云數(shù)據(jù)處理軟件開發(fā)前,需要確定軟件開發(fā)的功能需求,通過查閱軟件開發(fā)資料,同時結(jié)合本軟件的用途,該軟件應(yīng)滿足以下功能[11-13]:
1) 用戶識別:對使用軟件的人員進(jìn)行識別,只有同時輸入正確的用戶名和密碼才能使用該軟件,如果用戶輸入不正確提醒用戶重新輸入。
2) 數(shù)據(jù)管理:導(dǎo)入儲罐設(shè)計之時的基本信息,包括儲罐的高度、圈板數(shù)量、儲罐的直徑、罐頂?shù)陌霃降龋瑫r規(guī)定錄入的數(shù)據(jù)格式、數(shù)據(jù)的計量單位等;導(dǎo)入、導(dǎo)出儲罐的點云數(shù)據(jù);數(shù)據(jù)的添加、刪除、修改與更新。
3) 數(shù)據(jù)處理:數(shù)據(jù)處理是本軟件的核心,選擇實用性強(qiáng)、普遍認(rèn)可的理論計算公式或經(jīng)驗公式對點云數(shù)據(jù)進(jìn)行去噪、壓縮、濾波、特征提取、三維重建等,實現(xiàn)油罐的高度、傾斜度、橢圓度、罐頂凹凸度的檢測計算;
4) 油罐使用壽命預(yù)測:采用灰色預(yù)測法對油罐變形進(jìn)行預(yù)測,為油罐的使用提供科學(xué)依據(jù);
5) 結(jié)果輸出:對檢測結(jié)果生成簡單的匯總報表,打印系統(tǒng)生成的報表,方便用戶對檢測結(jié)果的查看;
6) 歷史查詢:保存儲罐最近10次的檢測結(jié)果,滿足用戶對歷史數(shù)據(jù)的查詢,為油罐的使用提供更加合理的方案。
目前應(yīng)用軟件的框架結(jié)構(gòu)很多,主要有多層體系結(jié)構(gòu)、C/S結(jié)構(gòu)、B/S結(jié)構(gòu)、C/S+B/S混合結(jié)構(gòu),本應(yīng)用軟件采用面向?qū)ο蟮脑O(shè)計思想,根據(jù)該應(yīng)用軟件開發(fā)功能需求與軟硬件平臺條件,在.NET平臺上,采用B/S結(jié)構(gòu)進(jìn)行軟件開發(fā),B/S結(jié)構(gòu)的主要特點是其開發(fā)和維護(hù)都非常簡單、方便,而且成本低、分布性良好[11]。B/S結(jié)構(gòu)將軟件框架分為:界面操作層、業(yè)務(wù)邏輯層、數(shù)據(jù)層,在這種3層結(jié)構(gòu)中,每一層都是相對獨立的,不會影響各自的開發(fā),能夠提高工作人員的軟件開發(fā)效率[14-17]。軟件按照各層級中的配置文件完成業(yè)務(wù)流程的控制,生成整體結(jié)構(gòu)嚴(yán)謹(jǐn)、規(guī)范有效的Web應(yīng)用程序。一個好的界面操作層設(shè)計,可以方便用戶對該軟件的使用,本系統(tǒng)的用戶操作層設(shè)計以操作簡單、用戶界面友好為主。本軟件界面操作層主要用于確認(rèn)登錄用戶的身份,然后根據(jù)用戶的操作請求調(diào)用業(yè)務(wù)邏輯層相應(yīng)的功能,并將調(diào)用結(jié)果回送到用戶界面層顯示等。業(yè)務(wù)邏輯層是本軟件的核心,實現(xiàn)軟件對點云數(shù)據(jù)的調(diào)用與處理,實現(xiàn)油罐變形情況的計算。數(shù)據(jù)層的主要功能是實現(xiàn)數(shù)據(jù)的導(dǎo)入導(dǎo)出、數(shù)據(jù)的存儲、數(shù)據(jù)的備份、數(shù)據(jù)的查詢、數(shù)據(jù)的增加、數(shù)據(jù)的更新、數(shù)據(jù)的刪除等功能。
隨著油罐建造的大型化,三維激光掃描儀掃描油罐得到的點云數(shù)據(jù)量越來越大,同時精度也越來越高,還帶有光學(xué)特征。巨大的點云數(shù)據(jù)會降低軟件對點云數(shù)據(jù)處理的效率。為了提高軟件處理點云數(shù)據(jù)的效率,要求點云數(shù)據(jù)庫系統(tǒng)在儲存和管理數(shù)據(jù)時具有高效性。在設(shè)計點云數(shù)據(jù)庫時,數(shù)據(jù)庫的性能應(yīng)滿足:一是擴(kuò)展性高,滿足不同大型油罐海量點云數(shù)據(jù)的存儲;二是讀寫性能高,由于點云數(shù)據(jù)的龐大,為了提高軟件對點云數(shù)據(jù)調(diào)用與處理的效率,需要數(shù)據(jù)庫系統(tǒng)有較高的讀寫性能;三是安全性高,每一次檢測的油罐點云數(shù)據(jù)都是判斷油罐是否變形的重要證據(jù),需要對數(shù)據(jù)進(jìn)行保存,為油罐的后續(xù)使用提高依據(jù)[18]。
Oracle數(shù)據(jù)庫具備完善的數(shù)據(jù)處理功能、支持多元化數(shù)據(jù)、具有分布式存儲、可以提供可靠的安全性、實施數(shù)據(jù)完整性,并且在操作性上具有可連接、可兼容、可移植等幾大特點[19]。本軟件選用Oracle數(shù)據(jù)庫對儲罐點云數(shù)據(jù)進(jìn)行儲存與管理,選用Oracle數(shù)據(jù)庫中的Spatial技術(shù)實現(xiàn)空間數(shù)據(jù)與屬性數(shù)據(jù)的一體化存儲。該技術(shù)能夠把點云數(shù)據(jù)的三維信息X、Y、Z坐標(biāo)轉(zhuǎn)換成Geometry類型的點,原先在表中的存儲形式是以X、Y、Z為字段,經(jīng)過轉(zhuǎn)換過后,只需要用一個字段Point來存儲點云數(shù)據(jù)的幾何類型,該P(yáng)oint字段存儲了3個坐標(biāo)值的信息,并且以二進(jìn)制形式存儲在計算機(jī)中,能夠極大地提高數(shù)據(jù)訪問的效率[20-23]。因儲罐的點云數(shù)據(jù)量較大,需要使用數(shù)據(jù)庫索引技術(shù)對儲罐點云數(shù)據(jù)進(jìn)行管理,本文對傳統(tǒng)數(shù)據(jù)庫索引與空間數(shù)據(jù)庫索引進(jìn)行比較,得出空間數(shù)據(jù)庫索引能極大地節(jié)省查詢用時,提高工作效率。目前,空間數(shù)據(jù)庫索引包括BSP樹、四叉樹、八叉樹空間索引方法等,本軟件采用線性四叉樹的點云索引方法,對點云數(shù)據(jù)進(jìn)行分塊空間索引,以實現(xiàn)對儲罐點云數(shù)據(jù)的訪問管理[24-25]。
表1 索引效率對比
在被測油罐的測量過程中,三維激光掃描儀在拍攝過程中易受外界光線的干擾產(chǎn)生刺點、跳點,會因為鏡頭、支架的抖動等因素產(chǎn)生干擾點,同時油罐周圍物體也會被掃描到,這些數(shù)據(jù)點就是噪點。噪點的存在會嚴(yán)重影響后續(xù)的儲罐曲面重構(gòu),為保持儲罐曲面的幾何特征、增強(qiáng)曲面重構(gòu)的精度及光順度,需要對點云數(shù)據(jù)進(jìn)行處理。點云數(shù)據(jù)處理包括:點云數(shù)據(jù)預(yù)處理(點云配準(zhǔn)、點云濾波、點云壓縮)、特征和特征描述、目標(biāo)識別檢索、三維重建。
點云數(shù)據(jù)預(yù)處理包括:點云數(shù)據(jù)配準(zhǔn)、點云數(shù)據(jù)去噪、點云數(shù)據(jù)壓縮。對于點云數(shù)據(jù)配準(zhǔn),采用人工布設(shè)自制標(biāo)靶,通過軟件Geomagic Studio 12處理。
由于掃描油罐會掃描到周邊物體,為了保持油罐的邊緣信息,需要對點云數(shù)據(jù)進(jìn)行去噪處理。本文對高斯濾波與雙邊濾波進(jìn)行比較,兩者都能很好地去除噪點,但雙邊濾波在去除噪點的同時能夠很好地保留物體邊緣信息。本文選擇雙邊濾波方法進(jìn)行點云去噪處理[26-28],雙邊濾波方法考慮了像素值相似度σr和像素點的空間鄰近度σd,兩個相似度因子σd和σr控制著圖像去噪的精度,σd變大,會使圖像每個區(qū)域的權(quán)重基本源于值域濾波的權(quán)重,對空間鄰域信息不太敏感;σr變大,則不太考慮值域,權(quán)重多來自于空間距離,因此近似于普通的高斯濾波,圖像的保邊性能下降。因此,要對圖像精心去除更多的平滑區(qū)域的噪聲,增大σd的值 ;同時要保持圖像邊緣,則應(yīng)該減小σr的值。以下是雙邊濾波的公式:
其中:
d(ζ,x)=d(ζ-x)=||ζ-x||
σ(Φ,f)=σ(Φ-f)=||Φ-f||
隨著油罐建造的大型化,掃描油罐獲得的點云數(shù)據(jù)量越來越大,大量的點云數(shù)據(jù)會嚴(yán)重影響點云數(shù)據(jù)處理的效率。本文對一個300 m3的立式油罐進(jìn)行掃描,得到24 935組數(shù)據(jù)。在保留點云主要特征的同時,為了提高點云數(shù)據(jù)處理效率,需要對點云數(shù)據(jù)進(jìn)行壓縮處理。目前,點云數(shù)據(jù)壓縮方法有2種:一是對網(wǎng)格重建后的點云數(shù)據(jù)進(jìn)行壓縮,減少三角面片的數(shù)據(jù)來實現(xiàn)數(shù)的簡化;二是建立散亂點云的拓?fù)潢P(guān)系,直接對點云數(shù)據(jù)進(jìn)行壓縮。本文選擇第2種方法對點云數(shù)據(jù)進(jìn)行壓縮[23]。
點云數(shù)據(jù)的特征點提取主要用于約束點云建模,是三維重建過程中非常重要的部分。點云特征的提取主要針對兩方面:一是從散亂點云中直接提?。欢菑木W(wǎng)格中提取[23,29-30]。本軟件采用曲面擬合的方法對油罐曲率進(jìn)行估算,如果在某處曲率變化越大,則表明油罐該表面有可能存在凹凸形變。
三維重建即建立點云之間的拓?fù)潢P(guān)系并逼近表達(dá)目標(biāo)對象的過程,三維重建方法有:微切平面法、三維Delaunay剖分、基于移動最小二乘重建方法[23]。基于移動最小二乘重建方法具有擬合精度高、通用性強(qiáng)的特點,本軟件采用基于移動最小二乘重建方法對油罐進(jìn)行三維重建與表達(dá)。
儲罐傾斜度量化:根據(jù)國家計量檢定規(guī)程 JJG 168—2005《立式金屬罐容量》中規(guī)定立式金屬罐的計量性能要求之一是罐體傾斜度不得超過1°[31-32]。本文為了能夠更加貼近儲罐傾斜的實際,沿罐體Z軸方向以約 0.2 m為間隔對油罐進(jìn)行切割,儲罐的每層圈板可獲得約10個水平截面圓。儲罐的第n個圈板的第m個截面圓的圓心坐標(biāo)為(xnm,ynm),相對儲罐基圓的高差為hnm,相對基圓圓心水平偏差為dnm,對所有的hnm、dnm進(jìn)行線性回歸處理,從而求得儲罐的傾斜率。
儲罐罐壁凹凸度量化[33-34]:對于處理后的點云數(shù)據(jù)進(jìn)行三維重建,得出被檢測油罐的模型,在檢測儲罐的直徑時對儲罐進(jìn)行等間距分割,測得儲罐的直徑,將測得的直徑與儲罐設(shè)計的直徑進(jìn)行比對,得到儲罐的凹凸度。
表2 底圈壁板1 m高處允許偏差
表3 罐壁的局部凹凸變形允許量
罐頂凹凸度的量化[33-34]:對油罐罐頂?shù)狞c云數(shù)據(jù)進(jìn)行擬合得到一個球體,得出球體的球形所在位置,可算出每一個點云數(shù)據(jù)到球心之間的距離,該距離與設(shè)計的半徑進(jìn)行比對,得出罐頂?shù)陌纪苟取?/p>
表4 罐頂凹凸度允許量
儲罐罐壁高度的量化:選取儲罐最上與最下的2個截面圓,在2個圓上隨機(jī)選取15組對應(yīng)的點,求出每組對應(yīng)點的高差,求出平均值與儲罐設(shè)計的高度比對。
表5 高度允許變化量
儲罐變形預(yù)測[35-38]:儲罐變形主要指標(biāo)有罐體的傾斜度、罐壁板凹凸變形、圈板半徑、儲罐高度等。測得儲罐長期使用后變形指標(biāo)的一系列數(shù)據(jù),然后采用灰色預(yù)測模型對儲罐變形單個指標(biāo)進(jìn)行預(yù)測[39-40],從而預(yù)知油罐變形的趨勢。分別采用 GM(1,1)與 GM(1,N)對某油罐的傾斜度進(jìn)行預(yù)測[41-42]。某油罐6年來的傾斜度分別為 0.138 6 °、0.152 7 °、0.172 7 °、0.195 2 °、0.218 2 °和0.245 9 °,取前5年的數(shù)據(jù)建立油罐傾斜度 GM模型。
由表6、7可以看出:GM(1,N)模型預(yù)測的結(jié)果相比GM(1,1)模型預(yù)測的結(jié)果更接近實際數(shù)據(jù),但是GM(1,N)模型需要所有影響因素的數(shù)據(jù),所需數(shù)據(jù)量較大。
表6 GM(1,1)預(yù)測結(jié)果
表7 GM(1,N)預(yù)測結(jié)果
本文對三維激光掃描儀在油罐變形檢測中的應(yīng)用做了簡單介紹,確定了點云數(shù)據(jù)處理應(yīng)用軟件的功能和需求,采用常用3層服務(wù)設(shè)計方針完成了軟件的框架設(shè)計;確定了Oracle數(shù)據(jù)庫對點云數(shù)據(jù)進(jìn)行管理,Oracle數(shù)據(jù)庫的Spatial技術(shù)對點云數(shù)據(jù)進(jìn)行存儲、線性四叉樹法對點云數(shù)據(jù)進(jìn)行索引,以及點云數(shù)據(jù)庫的性能要求。選擇了雙邊濾波方法對點云數(shù)據(jù)去噪,基于移動最小二乘重建方法進(jìn)行三維重建,完成油罐變形點云數(shù)據(jù)處理應(yīng)用軟件的總體設(shè)計。