顧宮,沈疆海 (長江大學(xué)計(jì)算機(jī)科學(xué)學(xué)院,湖北 荊州 434023)
在石油和地質(zhì)工作領(lǐng)域,對(duì)巖心圖像的觀察與分析是了解地層特征和礦物特征的重要途徑之一。巖心圖像的獲取主要通過掃描得到,掃描方式主要有2種[1]:一種是從巖心正面拍照,得到巖心柱體180°范圍的圖像,稱為正面平掃圖像;另外一種是巖心全周掃描圖像,這種圖像是環(huán)繞巖心一周掃描得到的。進(jìn)行巖心全周掃描圖像時(shí),由于相機(jī)視域限制,單次采集無法獲取整段完整巖心圖像。在分析分段采集的巖心圖像時(shí),會(huì)造成地質(zhì)資料不連續(xù)的現(xiàn)象,因此,對(duì)采集巖心圖像進(jìn)行拼接是一個(gè)亟需解決的問題。
如果簡單地對(duì)圖像進(jìn)行復(fù)制粘貼,雖然人為幾乎看不出來差異,但是精確度不夠高,花費(fèi)時(shí)間長,也不利于后期處理[2]。因此,需要使用圖像拼接算法對(duì)圖像匹配。目前,圖像的匹配的算法主要有3類:基于變換域、灰度信息和圖像原始特征。尺度不變特征變換(Scale Invariant Feature Transform, SIFT)算法屬于圖像原始特征類,它具有尺度不變性,能夠適應(yīng)旋轉(zhuǎn)角度、圖像亮度、拍攝視角的變化,但是復(fù)雜度高、耗時(shí)長。通過SIFT對(duì)圖像進(jìn)行拼接,花費(fèi)的時(shí)間大約是加速穩(wěn)健特征(Speeded Up Robust Features, SURF)算法的3倍[3]。但是SURF算法求主方向太過于依賴局部區(qū)域像素的梯度方向,可能使得找到的主方向不準(zhǔn)確。后面的特征點(diǎn)向量提取以及匹配都嚴(yán)重依賴于主方向,即使小的偏差角度也可以造成特征匹配的不精確,從而導(dǎo)致匹配不成功。為此,筆者基于SURF算法對(duì)巖心圖像進(jìn)行特征提取,然后利用隨機(jī)抽樣一致(Random Sample Consensus,RANSAC)算法[4]對(duì)巖心圖像特征點(diǎn)去噪,結(jié)合歐氏距離與特征點(diǎn)向量篩選最優(yōu)特征點(diǎn),實(shí)現(xiàn)巖心圖像快速、高精度拼接。
圖1 算法步驟
該算法的具體步驟如圖1所示:首先輸入2張待匹配的巖心圖像,通過SURF算法對(duì)輸入的2幅圖像進(jìn)行特征點(diǎn)提取,然后利用RANSCA算法對(duì)提取到的特征點(diǎn)進(jìn)行降噪,得到最終的特征點(diǎn);接下來通過歐氏距離與特征點(diǎn)向量結(jié)合的方法對(duì)巖心圖像進(jìn)行匹配。
圖像的采集平臺(tái)是德國Basler工業(yè)相機(jī),型號(hào)為L304k-Basler L300。巖心圖像高分辨率采集儀如圖2所示,PC機(jī)配置為Win7,Visual Stdio2010,Matlab 7.0,Opencv 3.0。
圖2 巖心圖像高分辨率采集儀
圖像的采集具體步驟如下:
1)將巖心放在一個(gè)水平的轉(zhuǎn)動(dòng)軸上,然后通過固定相機(jī)高度,轉(zhuǎn)動(dòng)軸帶動(dòng)巖心轉(zhuǎn)動(dòng),相機(jī)對(duì)巖心進(jìn)行全周掃描,采集巖心圖像。
2)在相機(jī)對(duì)巖心圖像進(jìn)行一次全周掃描之后,通過單片機(jī)控制,將相機(jī)水平移動(dòng)一段距離,再次對(duì)巖心進(jìn)行全周掃描。
3)重復(fù)步驟2,直到巖心被采集結(jié)束。
該采集設(shè)備是專用的巖心圖像高分辨率采集儀,這種儀器能較好地保證采集到的圖像穩(wěn)定,減少了噪聲,降低了重影、鬼影出現(xiàn)的概率[5],為后期的圖像拼接、圖像融合降低了難度。
1.2.1SURF算法提取特征點(diǎn)
SURF是在SIFT的基礎(chǔ)上產(chǎn)生的。SIFT檢測到的特征描述算子是128維,使用SIFT算法對(duì)圖像的處理計(jì)算量大、時(shí)間長,算法的計(jì)算速度較慢[6]。相對(duì)于SIFT,SURF檢測到的特征描述算子是64維,大大加快了特征點(diǎn)匹配速度。筆者使用的SURF算法提取特征點(diǎn)。
1.2.2RANSAC算法去噪
使用SURF方法檢測2幅巖心圖像的特征點(diǎn),會(huì)出現(xiàn)誤匹配點(diǎn)對(duì),為了最大程度地剔除這些誤匹配點(diǎn)對(duì),需要使用RANSAC算法。結(jié)合RANSAC算法對(duì)巖心圖像進(jìn)行匹配,可以排除誤匹配點(diǎn)對(duì),使得待拼接的2幅巖心圖像能精確匹配。
1.2.3圖像的匹配和拼接
1)縮小的特征點(diǎn)的匹配范圍 在巖心圖像采集的過程中,相機(jī)是水平移動(dòng)的,根據(jù)極線幾何約束理論[7],前后 2 幅圖像的匹配點(diǎn)位置只存在橫向偏差,其縱向坐標(biāo)不會(huì)出現(xiàn)偏差,所以在尋找特征點(diǎn)的時(shí)候只需要在橫向?qū)ふ姨卣鼽c(diǎn)。筆者通過設(shè)置單片機(jī),在相機(jī)采集一周巖心圖像后,根據(jù)相機(jī)視野的大小,將相機(jī)水平移動(dòng)一定距離。通過多次試驗(yàn)得出,在保證拼接速度與拼接精確度的綜合情況下,使用此采集儀得到的2張巖心圖像,每行選擇距離邊界30個(gè)像素點(diǎn),進(jìn)行局部特征點(diǎn)提取,這相對(duì)于整幅圖像進(jìn)行匹配,既減少了特征點(diǎn)的匹配數(shù),又節(jié)省了時(shí)間。
2) 結(jié)合歐氏距離與特征點(diǎn)向量實(shí)現(xiàn)巖心圖像匹配 相對(duì)于自然場景圖像的拼接,文檔圖像拼接精度的要求較高。文獻(xiàn)[8,9]的拼接方法主要針對(duì)平臺(tái)式掃描儀獲取的文檔圖像。由于光照比較均勻,并且圖像的特征點(diǎn)是按照簇的方式分布,所以可以用歐氏距離來表示圖像的幾何關(guān)系,容易得到較高的精度。如果采集巖心圖像時(shí),只是相機(jī)水平移動(dòng),而傳送帶沒有轉(zhuǎn)動(dòng),那么匹配的特征點(diǎn)之間的歐氏距離是一個(gè)穩(wěn)定值,可以單獨(dú)用歐氏距離相等的特征點(diǎn)作為匹配點(diǎn)。但是當(dāng)巖心圖像在采集時(shí)傳送帶發(fā)生了旋轉(zhuǎn),就不能單獨(dú)使用歐氏距離來實(shí)現(xiàn)特征點(diǎn)的匹配。因此,筆者提出歐氏距離與特征點(diǎn)向量相結(jié)合的方法來實(shí)現(xiàn)特征點(diǎn)的匹配。通過SURF算法對(duì)巖心圖像進(jìn)行特征點(diǎn)提取,得到巖心圖像每個(gè)特征點(diǎn)都是64維向量。具體步驟如下:
圖3 巖心圖像平移模型
①將提取特征點(diǎn)之后的左邊巖心圖像平移和原圖像拼接,即原先巖心圖像最下面復(fù)制一個(gè)圖像,模型如圖3所示。
②選取左右2幅巖心圖像特征點(diǎn)向量:
(1)
(2)
式中,Xi、Xj為64維特征點(diǎn)向量的單位向量;ai、bj為特征點(diǎn)向量Xi、Xj對(duì)應(yīng)的模。
③計(jì)算ei、ej這2個(gè)特征點(diǎn)向量的歐氏距離以及2個(gè)特征點(diǎn)向量的差值:
(3)
V(ei,ej)=|ei-ej|
(4)
式中,D為2個(gè)特征點(diǎn)向量的歐氏距離;V為2個(gè)特征點(diǎn)向量的差值。
④計(jì)算S=m*D(ei,ej)+n*V(ei,ej)實(shí)現(xiàn)對(duì)左右2個(gè)待拼接的巖心圖像特征點(diǎn)精確匹配。此處的m、n是大于零的常數(shù),且m 采集到的2幅巖心圖像如圖4所示。 圖4 拼接前的2幅圖像 使用SURF算法提取特征點(diǎn),對(duì)得到的特征點(diǎn)進(jìn)行RANSAC算法去噪,得到有效的特征點(diǎn),再通過縮小的特征點(diǎn)的匹配范圍,結(jié)合歐氏距離與特征點(diǎn)向量實(shí)現(xiàn)巖心圖像匹配。圖5顯示的2點(diǎn)之間的連線就是2幅圖像對(duì)應(yīng)特征點(diǎn)形成的線段。同一方向上的2條線段長度相等,不同方向的2條線段長度不等。 圖5 2幅待匹配圖像的特征點(diǎn) 將2幅圖像進(jìn)行拼接,最終拼接完成的圖像如圖6所示。 圖6 最終拼接完成的圖像 筆者進(jìn)行了10次試驗(yàn),每次選取不同的巖心圖像,表1記錄了10幅拼接圖像使用不同的方法花費(fèi)的時(shí)間,表2記錄了10幅拼接圖像使用不同的方法檢測出來的特征點(diǎn)(注:寬高的單位均是像素(pixel),時(shí)間的單位均是ms)。 表1 10幅拼接圖像消耗的時(shí)間 表2 10幅拼接圖像檢測出來的特征點(diǎn) 由表1和表2可知: 1)使用SIFT方法花費(fèi)的時(shí)間大約是SURF方法花費(fèi)時(shí)間的3倍,而且筆者使用的方法實(shí)現(xiàn)圖像拼接所花費(fèi)的時(shí)間優(yōu)于單純的使用SURF方法。 2)當(dāng)左右2幅巖心圖像重疊較少時(shí),使用筆者的方法與單純的使用SURF方法檢測出的特征點(diǎn)數(shù)相差不大;但是當(dāng)左右2幅巖心圖像重疊較多時(shí),使用筆者的方法檢測特征點(diǎn)數(shù)要少于SURF方法,減少了特征點(diǎn)匹配的數(shù)量,這樣就使得巖心圖像的拼接速度加快,提高了效率。 3)在解決高分辨率巖心圖像拼接時(shí),筆者的方法在算法效率及精度上優(yōu)于經(jīng)典的SURF算法,并能夠滿足實(shí)際需求。保證拼接速度與拼接精確度的綜合情況下,使用采集儀掃描的得到的巖心圖像,每行選擇距離邊界30個(gè)像素點(diǎn)對(duì)左右2張圖像進(jìn)行局部特征點(diǎn)提取。 為了解決巖心圖像的拼接問題,筆者基于SURF算法對(duì)巖心圖像進(jìn)行特征提取,然后利用RANSAC算法對(duì)巖心圖像特征點(diǎn)去噪。橫向上進(jìn)行30個(gè)像素點(diǎn)的特征點(diǎn)提取,通過減少特征點(diǎn),降低了圖像數(shù)據(jù)輸入,從而增加了匹配速度。進(jìn)而結(jié)合歐氏距離與特征點(diǎn)向量對(duì)特征點(diǎn)進(jìn)一步篩選定位,增加了匹配的準(zhǔn)確度。目前筆者所述的方法已經(jīng)實(shí)現(xiàn)商用,完成了長巖心圖像的自動(dòng)采集和自動(dòng)拼接,取得了良好的應(yīng)用效果。 [參考文獻(xiàn)] [1]聶昕,鄒長春,肖昆,等.汶川地震斷裂帶科學(xué)鉆探 WFSD-1孔成像測井巖心空間歸位[J].地球物理學(xué)進(jìn)展, 2012, 27(1): 75~82. [2] Bravo M J, Farid H. Diagnostic features are prominent in object representations[J]. Journal of Vision,2011, 11(11): 865. [3] 王丹,卿粼波,滕奇志,等.基于SURF-球面模型的巖心圖像拼接[J].科學(xué)技術(shù)與工程, 2014, 14(36): 218~221. [4] 孫瀕,高俊強(qiáng),許蘇蘇,等. 基于SURF算法和改進(jìn)RANSAC算法的無人機(jī)影像匹配[J].測繪工程,2017, 26(11): 55~64. [5] 谷雨,周陽,任剛,等.結(jié)合最佳縫合線和多分辨率融合的圖像拼接[J].中國圖像圖形學(xué)報(bào),2017,22(6): 842~851. [6] 齊冰潔,劉金國,張博研,等. 高分辨率遙感圖像SIFT和SURF算法匹配性能研究[J].中國光學(xué),2017, 10(3): 331~338. [7] Marr D. Vision: A Computational Investigation into The Human Representation and Processing of Visual Information[M]. San Francisco: Freeman W H,1982. [8] Isgro F, Pilo M.A fast and robust image registration method based on an early consensus paradigm[J]. Pattern Recognition Letters,2004, 25(8): 943~954. [9] Nagabhushan P. Sliding window based approach for document image mosaicking[J]. Image Vision Computing,2006, 24(1): 94~100.2 圖像的拼接結(jié)果
3 分析
4 結(jié)語