, ,, ,,
(1.中國計量大學(xué) 機(jī)電工程學(xué)院,杭州 310018; 2.中國科學(xué)院 成都計算機(jī)應(yīng)用研究所,成都 610041;3.浙江省特種設(shè)備檢驗(yàn)研究院,杭州 310018
隨著計算機(jī)視覺的發(fā)展以及在地下管道檢測的成功應(yīng)用,再結(jié)合地下待檢測管道的本身特點(diǎn),如數(shù)量多、長度大,每次檢測都會出現(xiàn)大量的管道檢測圖像數(shù)據(jù),如何對這些管道圖像數(shù)據(jù)進(jìn)行整理、處理和檢索成為管道檢測部門的最大難題。檢測部門人員對同一條管道不同時間的內(nèi)部情況進(jìn)行對比分析,記錄這條管道的使用情況。
早期對于管道使用情況是基于文字檢索的,就是檢測人員使用檢測儀器沿著管道路徑行走,使用相關(guān)的儀器,如:漏水檢測儀等進(jìn)行人工檢測,檢測完將檢測的結(jié)果手動記入數(shù)據(jù)庫以待后期查看,這種方法只能記錄管道是否出現(xiàn)問題,但是無法判斷管道內(nèi)部具體的情況,也無法判斷隱形隱患。隨著計算機(jī)視覺的發(fā)展[1],同時也為了對管道更好的管理,也有很多的研究者將視覺相關(guān)的檢測方法應(yīng)用到了管道的檢測中,但僅限于實(shí)驗(yàn)室研究。大體思路都是設(shè)計一套檢測裝置獲得管道內(nèi)部圖片,傳輸?shù)絇C端,采用各種方法進(jìn)行實(shí)時檢測。他們的不足就是在實(shí)際應(yīng)用中管道會很長,檢測裝置一邊行進(jìn)一邊檢查會消耗很多時間,從而會影響居民的使用。在管道缺陷檢測過程中,大部分的管道都是正常的,所以存在缺陷或者泄露的地方是少量的,因此無需對每時每刻獲得的管道內(nèi)部圖片進(jìn)行處理,只需要判斷含有缺陷的地方損壞程度,同時記錄管道內(nèi)部的具體情況,還可以對未來檢測的時間進(jìn)行預(yù)測。
基于此,本文自主研發(fā)了一套檢測裝置,同時充分利用了SIFT(Scale Invariant Feature Transform)局部特征在場景識別領(lǐng)域表現(xiàn)出的出色性能和敏感位置哈希算法在大規(guī)模圖像檢索[2]中體現(xiàn)的性能優(yōu)化,提出了基于SIFT局部特征[3-5]和敏感位置哈希[6-7]算法的管道缺陷檢索。
本文主要包括兩個部分:檢測裝置設(shè)計和算法設(shè)計。檢測裝置主要用來獲取管道內(nèi)部情況圖像。另外在檢測的過程中如果檢測裝置在管道內(nèi)部發(fā)生卡管的時候能知道檢測裝置的位置?;诖耍O(shè)計了一套集多層球殼、內(nèi)部主板、微處理器、攝像攝影探頭、三軸加速度計、角速度計、低頻發(fā)射器、高效能電池、數(shù)據(jù)存儲器、照明裝置等多個零部件集成為一個微小的球形裝置。結(jié)構(gòu)圖如圖1所示。
圖1 檢測裝置結(jié)構(gòu)示意圖
裝置完成以后就建立管道缺陷數(shù)據(jù)庫,將管道里面可能出現(xiàn)的各種情況建立成一個數(shù)據(jù)庫。檢索流程如圖2所示。首先選取特征描述對拍攝的某一條管道內(nèi)部所有圖片進(jìn)行特征提取,建立特征庫;然后在管道缺陷數(shù)據(jù)庫中依次傳入一張管道缺陷圖片,用相同的方法對其進(jìn)行特征提取,得到相應(yīng)的特征向量;最后,選取一種度量兩幅圖像相似度的標(biāo)準(zhǔn),如歐氏距離、漢明距離等,計算管道缺陷圖像與該條管道拍攝的圖像的特征庫的各個特征相似度的大小,并按照相似度的大小進(jìn)行排序,按照一定的要求輸出檢索結(jié)果圖片。這些圖片就是該管道出現(xiàn)問題的地方,根據(jù)這些圖片就知道該管道損壞的程度,如果損壞程度小,根據(jù)圖片可以預(yù)估一個下次檢測時間,將危險防患于未然。如果管道已經(jīng)損壞,可以根據(jù)檢測裝置里面的行進(jìn)記錄儀和該圖片的幀數(shù)判斷管道出現(xiàn)損壞的地方?;趦?nèi)容的管道缺陷圖像檢索主要是將管道圖像的表征特征和相似度的衡量方法交給計算機(jī)進(jìn)行自行處理,很大程度上克服了檢測人員的主觀判斷,大大提高了整個檢索系統(tǒng)的效率。從某種意義上說,這是管道缺陷檢測技術(shù)的蛻變。管道缺陷檢索流程如圖2所示。
圖2 檢索流程圖
2.1.1 背景介紹
由于管道圖像的模糊性和不均勻行,所以很難對圖像的角點(diǎn)和邊界進(jìn)行檢測。早期的一些學(xué)者研究了一些角點(diǎn)檢測方法都具有旋轉(zhuǎn)不變的特性,但如果對圖像進(jìn)行縮放,那么角點(diǎn)很有可能會發(fā)生變化。例如,如果對一幅尺寸比較小的圖片放在一個尺度也很小的區(qū)域中時,可以很明顯定位到角點(diǎn),但把這幅圖像的尺寸放大時,就會出現(xiàn)角點(diǎn)“消失”的情況。
SIFT是Lowe在1999年提出來的算法,在2004年又將該算法進(jìn)一步完善,這是計算機(jī)視覺領(lǐng)域的重大突破。SIFT描述方法不僅具有尺度縮放不變性,而且在對圖形進(jìn)行明暗或者方位變換時,對圖像的最終檢測都不會有很大的影響。
總體而言,SIFT特征描述算法具有如下的特性:
1)SIFT特征是圖像的局部特征,它對旋轉(zhuǎn)平移、尺度變換、亮度變化保持不變性,對視角變化和噪聲也能夠保持一定的穩(wěn)定性。
2)獨(dú)特性好,信息量豐富,適用于海量特征數(shù)據(jù)庫中進(jìn)行快速、準(zhǔn)確的匹配。
3)多量性,即使少數(shù)的幾個物體也可以產(chǎn)生大量的SIFT特征向量。
4)高速性,經(jīng)優(yōu)化的SIFT匹配算法甚至可以達(dá)到實(shí)時的要求。
5)可擴(kuò)展性,可以很方便的與其他形式的特征向量進(jìn)行聯(lián)合。
正是由于SIFT特征描述算法具備這些特點(diǎn),所以選擇SIFT算法來提取管道圖像的特征。
2.1.2 具體實(shí)現(xiàn)
在提取SIFT特征之前,需要構(gòu)建尺度空間來保證SIFT的穩(wěn)定性和獨(dú)立性。同時也因?yàn)楸幻枋龅奶卣鲗?shí)體只有在確定的尺度空間才會有意義。例如我們可以看到桌上的一本書,但是如果將粉筆放在整個銀河系中,我們將無法發(fā)現(xiàn)這本書。尺度空間的構(gòu)建過程如下:
L(x,y,σ)=G(x,y,σ)*I(x,y)
(1)
其中:L(x,y,σ)是模糊的圖像;G(x,y,σ)是高斯模糊算子;I(x,y)是原始圖像;(x,y)是尺度空間位置坐標(biāo);σ即使尺度參數(shù),又是高斯模糊算子的方差,σ值越大,圖像越粗糙,分辨率低,反之,圖像越精細(xì),分辨率越高。
構(gòu)建完尺度空間之后,接下來就進(jìn)行SIFT特征提取。提取步驟如下:
1)尺度空間的極值檢測。
尺度空間的構(gòu)建和高斯差分的計算主要用于確定圖像的極值點(diǎn),首先粗略的圖像的極大值和極小值。主要通過遍歷圖像的每一個像素點(diǎn)和其相鄰的像素點(diǎn)進(jìn)行比較,其中相鄰的像素點(diǎn)包括圖像的8個相鄰的像素點(diǎn)和上下相鄰尺度圖像的9*2個像素點(diǎn),共26個像素點(diǎn),確保每一個極值點(diǎn)不僅是二維圖像空間中的極值點(diǎn),也是尺度空間中的極值點(diǎn)。
2)除去不好的像素點(diǎn)。
通過尺度空間檢測出的極值點(diǎn)只是“近似的”,因?yàn)橛械臉O值點(diǎn)幾乎不會完全位于像素點(diǎn)上,可能位于像素之間,但是我們根本無法訪問“像素間”的數(shù)據(jù),因此我們必須在數(shù)學(xué)上定義像素的位置。用可用的像素生成子像素值,然后進(jìn)行泰勒展開,實(shí)現(xiàn)步驟如下:
(1)空間尺度泰勒展開式如下:
(2)
對式(2)求導(dǎo),并令其等于0,得到子像素的位置:
(3)
(2)刪除對比度低的特征點(diǎn)
對于對比度低的特征點(diǎn)只需要檢查它的強(qiáng)度,將式(3)代入式(2),保留前兩項即可。
(4)
(3)邊緣響應(yīng)的去除
不同位置的極值點(diǎn)可能有不同的主曲率,主曲率通過一個2乘以2的Hessian矩陣H求出:
(5)
設(shè)H的特征值為α和β,那么:
Tr(H)=Dxx+Dyy=α+β
Det(H)=DxxDyy-(Dxy)2=αβ
(6)
令α=γβ,則
(7)
當(dāng)α=β即γ=1時,7式取得最小值,因此,γ只需滿足如下公式:
(8)
即如果(α+β)/αβ>(1+γ)2/γ,那么就將該特征點(diǎn)丟棄。
3)特征點(diǎn)方向確定。
通過以上兩步基本可以確定特征點(diǎn)的穩(wěn)定性,接下來就要為每一個特征點(diǎn)分配方向,使特征點(diǎn)具有旋轉(zhuǎn)不變性。收集每個特征點(diǎn)周圍的梯度方向和幅度,然后將最為突出的方向分配給特征點(diǎn),以后的計算都是基于這方向進(jìn)行。計算漸變幅度和方向的公式如下:
m(x,y)=
θ(x,y)=
αtan2((L(x,y+1)-L(x,y-1))/(L(x+1,y)-L(x-1,y)))
(9)
其中:L所用的尺度為每個關(guān)鍵點(diǎn)各自所在的尺度。
通過上面的式子計算特征點(diǎn)周圍所有像素點(diǎn)的幅度和方向,并構(gòu)建直方圖[8]統(tǒng)計這些點(diǎn)的像素方向。特征點(diǎn)的方向范圍為0~180°,將其分為36組。當(dāng)對所有的像素點(diǎn)計算完后,直方圖就會在某點(diǎn)取到峰值,那么特征點(diǎn)的方向就會被分配相應(yīng)的峰值方向。
4)關(guān)鍵點(diǎn)描述子的生成。
最終得到的是一個具有128個數(shù)字的特征向量,用于唯一標(biāo)識關(guān)鍵點(diǎn)。以關(guān)鍵點(diǎn)為中心取8乘以8的窗口,通過公式10遍歷這些像素點(diǎn),分別求出每一個像素點(diǎn)的幅度和方向。圖像梯度中周圍的像素點(diǎn)對于關(guān)鍵點(diǎn)的方向共獻(xiàn)不一樣,越靠近關(guān)鍵點(diǎn),共享越大。將圖像梯度按照4*4進(jìn)行劃分,分別計算圖中8個方向的幅度。對于圖像梯度整個區(qū)域,使用高斯加權(quán)的方式對多個不同的方向進(jìn)行加權(quán),同時隨著關(guān)鍵點(diǎn)的距離增加,權(quán)重降低。這樣最終就可以得到4*4*8=128維度的特征向量,最后將這個128維度的特征向量進(jìn)行歸一化,形成該特征點(diǎn)的唯一標(biāo)識。
當(dāng)通過SIFT特征描述算子提取完兩幅圖像的特征之后,通過不比較兩幅圖像中其中最近的一組關(guān)鍵點(diǎn),如果小于設(shè)定的閾值,就認(rèn)為這是一組匹配點(diǎn)。通過調(diào)整閾值的大小,排除錯誤的匹配點(diǎn),這樣也能使得SIFT算法更加穩(wěn)定。Lowe在文中推薦閾值取0.8,但在實(shí)際應(yīng)用中,當(dāng)處理尺度、旋轉(zhuǎn)和光照等很多影響因素時,閾值取0.4到0.6最佳。SIFT提取管道特征的流程如圖3所示。
圖3 SIST特征提取
LSH(Locality Sensitive Hashing,LSH)也稱之為位置敏感哈希算法,是最為常用的最鄰近搜索算法之一,尤其在對高維特征向量空間處理時有著出色的表現(xiàn)。它通過哈希函數(shù)將高維的特征向量映射到指定的向量中,使原本相鄰的數(shù)據(jù)點(diǎn)經(jīng)過哈希映射之后能夠落入相同的桶中,不相鄰的數(shù)據(jù)點(diǎn)經(jīng)過映射之后落入到不同的桶中,這樣就可以減少需要匹配的數(shù)據(jù)點(diǎn)的個數(shù),同時增大查找到最鄰近的數(shù)據(jù)點(diǎn)的概率,達(dá)到減少遍歷空間中點(diǎn)的個數(shù)。
基于LSH的管道缺陷檢索技術(shù)按照步驟可以分為特征提取、哈希編碼以及漢明距離排序3個步驟,流程圖如圖3所示:
1)特征提?。簩艿缊D像主要采取了SIFT局部特征,并將某條管道圖像數(shù)據(jù)庫的圖像逐一進(jìn)行特征提取,并將圖像文件名與特征圖像矩陣一一對應(yīng)的方式存儲到該條管道的圖像特征庫中。
2)哈希編碼:哈希算法種類繁多,先用主成分分析法進(jìn)行數(shù)據(jù)降維,然后旋轉(zhuǎn)迭代,使用半監(jiān)督學(xué)習(xí),是每一位比特的方差最大化,并且各自無關(guān)。
3)漢明距離計算:等長字符串在對應(yīng)位置的不同字符個數(shù)。
最后,通過計算待查詢的管道缺陷圖像特征向量與某條管道圖像的特征向量逐一計算哈希編碼之間的漢明距離,按照規(guī)定返回圖像的個數(shù)進(jìn)行相似度排序,進(jìn)而得到檢索的結(jié)果。
圖4 SIFT+LSH管道圖像檢索
為了客觀準(zhǔn)確地評價整個算法的檢索性能,選取了圖像評價[9-10]的眾多評價指標(biāo)中的兩個最具代表性的指標(biāo):準(zhǔn)確率(Precision,PR)和召回率(Recall Rate,RR)。準(zhǔn)確率即查準(zhǔn)率,召回率即查全率。具體計算公式如下:
(10)
其中:A表示檢索到的結(jié)果中相關(guān)樣本的數(shù)量;B表示檢索到的樣本中不相關(guān)樣本的數(shù)量;C表示樣本中未被檢索到的樣本的數(shù)量。
實(shí)驗(yàn)采用C++語言編寫,主要對比了基于SIFT特征+歐氏距離的圖像檢索方法(結(jié)果見圖5),基于SIFT+LSH的圖像檢索方法(檢索結(jié)果如圖6),和基于SIFT+SpH圖像檢索(結(jié)果見圖7)。
圖5 SIFT+歐氏距離
圖6 SIFT+LSH哈希算法
圖7 SIFT+SpH哈希算法
表1是三中方法的實(shí)驗(yàn)結(jié)果數(shù)據(jù)評價,從結(jié)果中我們可以看出明顯的看出SIFT+歐式距離的檢索方法在檢索準(zhǔn)確度上略微優(yōu)于其他兩種,較SIFT+LSH哈希算法提升了1.95個百分點(diǎn),較SIFT+SpH哈希[11-12]算法提升了1.5個百分點(diǎn),總體來說差別不是很大,但是在檢索時間上明顯不足。尤其對長管道進(jìn)行檢測時會消耗太多時間。SIFT+LSH哈希算法的檢索時間較SIFT+歐式距離提升了0.95967 s,SIFT+SpH哈希算法的檢索時間較SIFT+歐式距離提升了0.68948。本文提出的基于SIFT+LSH算法的超聲圖像檢索方法能夠很大改善現(xiàn)有方法響應(yīng)時間長的劣勢。因此,基于SIFT+LSH算法的圖像檢索在保證準(zhǔn)確率的前提下,能夠滿足管道圖像檢索的需求。
表1 3種方法實(shí)驗(yàn)結(jié)果數(shù)據(jù)評價
本文提出了基于SIFT+LSH的管道缺陷檢索算法,從實(shí)驗(yàn)結(jié)果可以看出在保證準(zhǔn)確率的前提下,該方法有效地提高了檢索速度。LSH算法有著它在處理大規(guī)模信息領(lǐng)域的優(yōu)勢,通過哈希編碼計算漢明距離的方法很大程度上提高了運(yùn)算速度。另外,該方法是先對管道進(jìn)行內(nèi)部狀況拍攝,然后檢索,不需要實(shí)時處理,這樣就不會太影響城市地下管道的使用。同時,只需要對檢索出來的有缺陷的管道圖片進(jìn)行專家評價,判斷管道是否可以繼續(xù)使用,以及對下一次檢測的時間給一個評估,不需要對所有的圖像進(jìn)行處理。這種方法解決了傳統(tǒng)檢測方法消耗時間的久的問題,可以滿足檢測人員對管道使用情況的評估。
參考文獻(xiàn):
[1] YSyam B, Victor J S R, Rao Y S. Efficient similarity measure via Genetic algorithm for content based medical image retrieval with extensive features[A]. International Multi-Conference on Automation, Computing, Communication, Control and Compressed Sensing[C]. IEEE, 2013:704-711.
[2] Belloulata K, Belallouche L, Belalia A, et al. Region based image retrieval using Shape-Adaptive DCT[J]. International Journal of Multimedia Information Retrieval, 2014, 4(4):1-16.
[3] 劉潤杰.基于全局和局部特征的圖像檢索算法研究[D]. 濟(jì)南:山東師范大學(xué),2016.
[4] 伯將軍,郭書軍, 伍淳華. SIFT局部特征描述算法在圖像版權(quán)搜索中的應(yīng)用[J].電子設(shè)計工程,2012, 20(3):137-141.
[5] 楊 程.圖像檢索中局部特征的提取和描述及其空間組織研究[D].上海:上海交通大學(xué),2011.
[6] 夏立超.基于哈希算法的圖像檢索研究[D]. 合肥:合肥工業(yè)大學(xué), 2015.
[7] 周建輝.基于半監(jiān)督哈希算法的圖像檢索方法研究[D].大連:大連理工大學(xué),2011.
[8] Dalal N, Triggs B. Histograms of oriented gradients for human detection [A].Proceedings of the 2005 IEEE Conference on Computer Vision and Pattern Recognition[C]. Washington D. C., USA: IEEE Computer Society, 2005: 886-893.
[9] 周景超,戴汝為,肖柏華.圖像質(zhì)量評價研究綜述[J].計算機(jī)科學(xué), 2008, 35(07):1-4.
[10] 賈強(qiáng)槐.圖像檢索結(jié)果質(zhì)量評價[D].中國科學(xué)技術(shù)大學(xué), 2015.
[11] Heo J P,Lee Y,He J,et al.Spherical hashing[A].Computer Vision and Pattern Recognition(CVPR),2012 IEEE Conference on[C].IEEE 2012:2957-2964.
[12] Datar M, Immorlica N, Indyk P, et al. Locality-sensitive hashing scheme based on p-stable distributions[A].Twentieth Symposium on Computational Geometry[C].ACM,2004:253-262.