保文星,桑斯?fàn)?,沈象飛
(北方民族大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,寧夏 銀川 750021)
衛(wèi)星遙感技術(shù)是當(dāng)下國(guó)內(nèi)外研究的熱點(diǎn),遙感圖像是指裝在飛機(jī)或人造衛(wèi)星等運(yùn)載工具上的傳感器收集由地面目標(biāo)物反射或發(fā)射來(lái)的電磁波,利用這些信息獲得的圖像[1-2]。遙感圖像配準(zhǔn)是指對(duì)同一目標(biāo)的兩幅或者兩幅以上的圖像在空間位置的對(duì)準(zhǔn)。遙感圖像的特征提取和匹配是遙感圖像處理中重要的研究方向,它在地質(zhì)勘探、生態(tài)環(huán)境監(jiān)測(cè)、抗震救災(zāi)、城市規(guī)劃與建設(shè)等領(lǐng)域有著廣泛而重要的應(yīng)用[3]。
圖像配準(zhǔn)方法主要分為兩類(lèi):基于區(qū)域的匹配和基于特征的匹配[4]。基于區(qū)域的匹配根據(jù)圖像的灰度信息,構(gòu)建兩幅圖像之間的相似性度量,通過(guò)在相關(guān)系數(shù)平面上尋找最佳路徑來(lái)實(shí)現(xiàn)圖像匹配。其包含基于圖像域的處理方法[5-6],包括互相關(guān)法[7]、最大互信息法[8]、序貫相似性檢測(cè)法[9]等?;陬l域的處理方法,包括基于快速傅里葉變換[10]的相關(guān)相位法和小波變換法等。這些方法于20世紀(jì)初開(kāi)始用于遙感圖像配準(zhǔn),但由于遙感圖像地貌廣泛,基于區(qū)域的配準(zhǔn)算法要計(jì)算區(qū)域所有可用的灰度信息,造成計(jì)算量大,匹配效果不理想,同時(shí)也無(wú)法滿足遙感圖像配準(zhǔn)的實(shí)時(shí)性要求[11-12]?;谔卣鞯呐錅?zhǔn)方法由于其計(jì)算量少,穩(wěn)定性好等優(yōu)點(diǎn)是目前常用的遙感圖像配準(zhǔn)方法[13]。這類(lèi)算法只需要提取配準(zhǔn)圖像中的點(diǎn)、線、邊緣等特征信息,不需要其他輔助信息,在減少計(jì)算量、提高效率的同時(shí),能夠?qū)D像灰度的變化有一定的魯棒性[14]?;谔卣鬟吘壍钠ヅ洌饕蠰OG算子、Robert算子、Sobel算子等[15]?;邳c(diǎn)特征的匹配[16],主要有Harris算法[17]、SUSAN算法[18]、Harr-Laplacia算法、Harr-Affine算法[19]等。但由于基于特征的算法只采用了圖像小部分的特征信息,所以這類(lèi)算法對(duì)特征提取和特征匹配的精度及準(zhǔn)確性要求非常高,對(duì)錯(cuò)誤非常敏感[20-21]。目前常用的圖像提取算法如尺度不變特征變換(Scale-Invariant Feature Transform, SIFT)[22-23]、加速穩(wěn)健特征(Speeded Up Robust Features, SURF)算法[24]在圖像的不變特征提取方面擁有優(yōu)勢(shì),已經(jīng)取得比較好的成績(jī)[25-26]。但是這類(lèi)特征都是基于一個(gè)高斯核進(jìn)行的線性尺度空間特征檢測(cè)得到,因此會(huì)平滑圖像邊緣,以至圖像損失掉許多細(xì)節(jié)信息[27-28]。針對(duì)這一問(wèn)題,有學(xué)者提出了KAZE算法[29],一種基于非線性尺度空間的特征點(diǎn)檢測(cè)方法,該非線性尺度空間保證了圖像邊緣在尺度變化中信息損失量非常少,從而極大地保持了圖像細(xì)節(jié)信息[30]。但是KAZE算法在構(gòu)建相同尺度空間時(shí),圖像細(xì)節(jié)或紋理區(qū)域的弱邊緣易被快速平滑,使得描述向量之間的距離非常小,而出現(xiàn)特征誤匹配現(xiàn)象。同時(shí)KAZE算法對(duì)圖像全局特征進(jìn)行提取造成復(fù)雜度也相應(yīng)較高。在KAZE算法的基礎(chǔ)上,很多學(xué)者為了提高匹配速度和精度,提出了眾多的改進(jìn)算法。羅宇等[31]提出了一種改進(jìn)KAZE算法的移動(dòng)目標(biāo)檢測(cè)算法,重新修正了KAZE算法在求解線性非尺度空間的迭代步長(zhǎng)問(wèn)題,并改進(jìn)了特征匹配,特征點(diǎn)提取速度和匹配率都得到了提升。韓敏等[32]提出了一種基于改進(jìn)KAZE的無(wú)人機(jī)航拍圖像拼接算法,該算法在提高精確度的同時(shí),還具有較高的魯棒性。李鵬等[33]提出了限以空間約束的方法和KAZE算法結(jié)合來(lái)進(jìn)行多源遙感影像匹配,對(duì)細(xì)節(jié)和紋理模糊的影像具有其獨(dú)特的優(yōu)勢(shì)。汪方斌等[34]提出了一種改進(jìn)的KAZE算法(CKAZE),特征檢測(cè)和描述的精度都得到了提高。
隨著遙感圖像的分辨率越來(lái)越高,圖像尺寸也越來(lái)越大。遙感圖像尺寸大小直接影響了特征提取的時(shí)間消耗,從原始圖像中提取直接特征會(huì)增加計(jì)算量[35-36],并且會(huì)降低圖像配準(zhǔn)效率,在加速時(shí)間的同時(shí)能夠提高圖像的配準(zhǔn)精度是當(dāng)下特征提取的研究的重點(diǎn)和難點(diǎn)[37-38]。通常,在對(duì)兩幅圖像進(jìn)行特征提取前,提取的特征點(diǎn)往往都攜帶有豐富的信息量。更進(jìn)一步,特征點(diǎn)的提取不在于數(shù)量的多少,而是在于提取更加精準(zhǔn)的特征點(diǎn),以便于進(jìn)行下一階段的匹配步驟。因此,本文提出了一種改進(jìn)的KAZE算法用于遙感圖像的配準(zhǔn)。具體地說(shuō),本文算法首先采用一個(gè)適當(dāng)大小的窗口不重疊地遍歷整幅遙感圖像,并計(jì)算窗口區(qū)域內(nèi)的信息熵。其次根據(jù)圖像眾多局部區(qū)域所具有的信息熵,設(shè)置閾值,保留信息熵豐富的圖像局部區(qū)域,并同時(shí)去除低信息熵圖像區(qū)域。針對(duì)保留下來(lái)的圖像區(qū)域,然后采用KAZE算法進(jìn)行特征點(diǎn)提取,并隨后采用隨機(jī)抽樣一致性(Random Sample Consensus, RANSAC)算法去除錯(cuò)誤匹配點(diǎn)對(duì),達(dá)到提升準(zhǔn)確率的目的。本文算法的創(chuàng)新點(diǎn)體現(xiàn)在如下幾點(diǎn):
(1)根據(jù)傳統(tǒng)配準(zhǔn)算法針對(duì)大尺度圖像耗時(shí)的問(wèn)題,本文提出了一種通過(guò)識(shí)別并保留信息豐富的區(qū)域來(lái)降低圖像尺寸對(duì)配準(zhǔn)算法運(yùn)行效率的影響。
(2)本文算法避免了傳統(tǒng)特征提取方法中提取冗余錯(cuò)誤特征點(diǎn)的問(wèn)題。
(3)本文算法使參與匹配的特征點(diǎn)對(duì)數(shù)更加精確,在提升準(zhǔn)確率的同時(shí)減少了計(jì)算時(shí)間。
KAZE 算法首先采用了非線性擴(kuò)散濾波器,構(gòu)建了穩(wěn)定的非線性尺度空間。使用可變傳導(dǎo)擴(kuò)散方法和加性算子分裂算法具體過(guò)程描述如下:
(1)
其中:I代表單位矩陣,ti代表進(jìn)化時(shí)間,Al代表三對(duì)角占優(yōu)矩陣,Li代表非線性尺度空間第i層圖像亮度。
KAZE特征點(diǎn)檢測(cè)是通過(guò)尋找不同尺度歸一化后的Hessian局部極大值點(diǎn)來(lái)獲得,過(guò)程如下:
(2)
其中:σ為當(dāng)前尺度參數(shù)σi的整數(shù)值;Lxx,Lxy和Lxy均為L(zhǎng)的二階微分。將每個(gè)像素點(diǎn)的Hessian矩陣值與其26個(gè)相鄰點(diǎn)做比較。當(dāng)該點(diǎn)的Hessian矩陣值大于其圖像域和尺度域的所有相鄰點(diǎn)時(shí),即為極值點(diǎn)。
KAZE算法根據(jù)特征點(diǎn)的尺度參數(shù)σi,設(shè)置搜索半徑為6σi。對(duì)搜索圈內(nèi)所有相鄰點(diǎn)的一階微分值Lx和Ly高斯加權(quán),使得靠近特征點(diǎn)的響應(yīng)貢獻(xiàn)大,而遠(yuǎn)離特征點(diǎn)的響應(yīng)貢獻(xiàn)小;將這些高斯加權(quán)一階微分值視作向量空間中的點(diǎn)集,以角度為60°的扇形滑動(dòng)窗口對(duì)點(diǎn)集進(jìn)行向量疊加,遍歷整個(gè)圓形區(qū)域。獲得最長(zhǎng)向量的角度就是主方向。
KAZE首先在梯度圖像上以特征點(diǎn)為中心取一個(gè)24σi×24σi的窗口,并將窗口劃分為4×4個(gè)子區(qū)域,相鄰的子區(qū)域有寬度為2σi的交疊帶。每個(gè)子區(qū)域都用一個(gè)高斯核σ1=2.5σi進(jìn)行加權(quán),然后計(jì)算出長(zhǎng)度為4的子區(qū)域描述向量;得到描述向量后,對(duì)每個(gè)子區(qū)域的向量以大小為4×4的高斯窗口σ2=1.5σi進(jìn)行加權(quán),最后進(jìn)行歸一化處理,獲得64維的描述向量。
通常而言,在特征描述前如果能夠找到具有重復(fù)性、獨(dú)特性和較強(qiáng)的魯棒性的特征點(diǎn),將直接決定后期圖像匹配的效果。由于遙感圖像具有圖幅巨大,信息量豐富,并且普遍都是地面地形等特點(diǎn)。在進(jìn)行特征點(diǎn)提取時(shí),導(dǎo)致特征提取時(shí)間過(guò)長(zhǎng),且不能完全細(xì)致地提取特征點(diǎn)。本文將圖像分割和信息熵理論結(jié)合到KAZE 算法中,本文算法的流程圖如圖1 所示,首先將待配準(zhǔn)影像和基準(zhǔn)影像進(jìn)行分割,用非重疊滑動(dòng)窗口遍歷圖像,對(duì)圖像按窗口大小進(jìn)行分割,并計(jì)算每個(gè)小窗口區(qū)域的信息熵。其次設(shè)置分割閾值,對(duì)計(jì)算出信息熵的窗口區(qū)域進(jìn)行篩選,并保留大于設(shè)定閾值的窗口區(qū)域進(jìn)行KAZE算法特征點(diǎn)提取。然后對(duì)提取出的特征點(diǎn)用KAZE算法進(jìn)行特征描述,并通過(guò)計(jì)算歐氏距離進(jìn)行特征點(diǎn)粗匹配。最后使用RANSAC算法去除誤匹配,提高匹配精度。
圖1 算法流程圖Fig.1 Flowchart of the proposed algorithm
3.1.1 圖像分割
對(duì)于KAZE算法而言,由于KAZE算法使用到了非線性擴(kuò)散濾波器,使得在圖像的平緩區(qū)域灰度的擴(kuò)散比較快,在邊緣處擴(kuò)散比較慢,避免了邊界模糊和細(xì)節(jié)丟失等問(wèn)題,所以對(duì)于影像中的角點(diǎn)、邊界等特征明顯部位能夠有效進(jìn)行特征點(diǎn)的提取。為了找到這些信息熵豐富的特征點(diǎn),本文首先對(duì)待配準(zhǔn)影像和基準(zhǔn)影像進(jìn)行分割,即配準(zhǔn)影像和基準(zhǔn)影像用非重疊滑動(dòng)窗口進(jìn)行遍歷。例如,當(dāng)圖像尺寸大小為1 000×1 000,可以采用5×5大小的窗口不重疊的遍歷整幅遙感圖像,即將圖像分成了200×200 pixel大小的若干小窗口,然后對(duì)分割后的每個(gè)小窗口進(jìn)行信息熵計(jì)算。
3.1.2 局部信息熵提取
影像中顯著的特征點(diǎn)所攜帶的信息量豐富,通過(guò)計(jì)算整幅遙感圖像的信息熵,可以找到圖像中信息量豐富的區(qū)域,為了剔除可以認(rèn)為不相關(guān)的信息,保留圖像重要的結(jié)構(gòu)屬性。本文對(duì)分割后的每個(gè)窗口進(jìn)行信息熵的計(jì)算,并保留高信息熵的區(qū)域進(jìn)行特征點(diǎn)提取。
(3)
(4)
在本文的算法中,假定w為遙感圖像分割的窗口大小,對(duì)于圖像中的每一塊分割區(qū)域,其信息熵可以表述如下:
(5)
對(duì)于圖像每塊分割區(qū)域的信息熵,本文算法進(jìn)一步根據(jù)信息熵的直方圖分布情況選擇分割閾值,以剔除低信息熵的圖像區(qū)域,并同時(shí)保留高信息熵區(qū)域,過(guò)程表述如下:
(6)
其中:Ir,s表示將所在空間區(qū)域?yàn)?r,s)的信息熵Hr,s進(jìn)行閾值T分割后所保留的圖像信息。若Hr,s小于所設(shè)定閾值,則將該區(qū)域像素灰度值置為零,否則保留該區(qū)域像素信息。本文設(shè)置的信息熵閾值為由0.7變化到0.9。針對(duì)不同的遙感圖像,本文算法選取一個(gè)能得到最佳匹配精度的信息熵閾值。
本文使用基于歐氏距離的匹配方法來(lái)度量?jī)煞鶊D像特征之間的關(guān)系的,特征向量之間的歐氏距離公式為:
(7)
其中(x1,y1),(x2,y2)代表匹配的兩個(gè)特征向量的坐標(biāo)。兩個(gè)特征向量之間的距離越小,表明相似度越高。
傳統(tǒng)的歐氏距離匹配方法在圖像中某些區(qū)域灰度信息差別不大時(shí)就會(huì)產(chǎn)生錯(cuò)誤匹配的情況。針對(duì)此情況,本文在用歐氏距離進(jìn)行粗匹配的基礎(chǔ)上,采用RANSAC算法來(lái)剔除錯(cuò)誤匹配的特征點(diǎn)對(duì),減少了誤差,提高了圖像的匹配精度。
為了驗(yàn)證對(duì)KAZE算法改進(jìn)后的實(shí)驗(yàn)的可行性。本論文實(shí)驗(yàn)分別采用了空間分辨率為6米的SPOT 6衛(wèi)星的多光譜衛(wèi)星所拍攝的銀川局部地區(qū)遙感影像(如圖2(a)所示),空間分辨率為3.2 m高分2號(hào)衛(wèi)星多光譜影像所裁取的銀川局部地區(qū)遙感影像(如圖2(b)所示),Google地圖裁取的北京地區(qū)的遙感影像(如圖2(c)所示),空間分辨率為30 m的LANDSAT 8衛(wèi)星拍攝的銀川局部地區(qū)遙感影像(如圖2(d)所示)。4組遙感影像均包含1 024×1 024 pixel。實(shí)驗(yàn)采用的平臺(tái)設(shè)置是CPU為Inter core i7, 3.60 GHz,內(nèi)存為16.0 GB,64位Win10操作系統(tǒng)的PC機(jī)。實(shí)驗(yàn)的所有算法編程環(huán)境為MATLB 2017a。
本文統(tǒng)計(jì)各算法所提取的總特征點(diǎn)數(shù)目、正確匹配點(diǎn)數(shù)目、匹配正確率CMR(Correct Matching Rate)及時(shí)間作為評(píng)價(jià)標(biāo)準(zhǔn)。其中CMR定義如式(8)所示:
(8)
其中:表示的是正確匹配點(diǎn)數(shù)與所有匹配點(diǎn)對(duì)數(shù)之比,即Nc表示匹配正確點(diǎn)數(shù),N為所有匹配點(diǎn)數(shù),CMR值越大,表示匹配性能越好。
圖2 四組遙感影像圖
為了驗(yàn)證本文算法提出的信息熵和窗口劃分對(duì)算法進(jìn)行預(yù)處理的實(shí)驗(yàn)有效性,對(duì)實(shí)驗(yàn)進(jìn)行了以下分析。
本文涉及到了2個(gè)重要參數(shù),分別是W和T, 其中W表示圖像分割的窗口大小,T為信息熵分割閾值。為了驗(yàn)證W和T對(duì)實(shí)驗(yàn)結(jié)果的影響,實(shí)驗(yàn)參數(shù)W設(shè)置由5變化到40,T由0.7變化到0.9。此實(shí)驗(yàn)使用以上4組不同衛(wèi)星所拍攝的田地、平原等不同類(lèi)型的遙感影像進(jìn)行實(shí)驗(yàn)。
4.3.1 本文算法對(duì)特征點(diǎn)數(shù)的影響趨勢(shì)
圖3(a)~圖3(d)分別展示了在4種遙感影像數(shù)據(jù)集上不同W和T對(duì)實(shí)驗(yàn)提取到的特征點(diǎn)數(shù)目多少的影響趨勢(shì)。由于圖3(a)基準(zhǔn)圖像和待配準(zhǔn)圖像無(wú)明顯特征區(qū)域,因此僅當(dāng)W和T分別在5~10以及0.7~0.85之間變化時(shí),本文算法能夠提取一定的特征點(diǎn)。其中當(dāng)W逐漸變大或T逐漸變大,本文算法在Landsat所拍攝的影像中提取到的特征點(diǎn)數(shù)有逐漸減小的趨勢(shì)。并且對(duì)于該圖像,當(dāng)W設(shè)置為5,T設(shè)置為0.7時(shí),實(shí)驗(yàn)顯示了最佳的實(shí)驗(yàn)結(jié)果。同樣地,圖3(b)顯示了和圖3(a)較為類(lèi)似的變化趨勢(shì)。此外,從圖3(c)中可以看出,W的取值大小對(duì)于特征點(diǎn)數(shù)目的提取效果具有明顯地影響,而T則對(duì)特征點(diǎn)數(shù)目的提取數(shù)目影響較輕。由圖3(d)所示,在窗口較小的情況下,T愈大,算法能提取到的特征點(diǎn)也愈多。
圖3 從圖像提取到的特征點(diǎn)數(shù)目結(jié)果圖(W代表窗口大小,T代表信息熵閾值,Z軸代表特征點(diǎn)數(shù)目)
4.3.2 算法時(shí)間分析
為了驗(yàn)證實(shí)驗(yàn)中兩個(gè)參數(shù)W和T對(duì)實(shí)驗(yàn)時(shí)間結(jié)果的影響,同樣使用了以上4組遙感影像進(jìn)行實(shí)驗(yàn)。以谷歌影像和高分影像為例對(duì)算法的時(shí)間進(jìn)行分析,部分?jǐn)?shù)據(jù)展現(xiàn)在表1和表2。橫軸W代表窗口大小,縱軸T代表信息熵閾值。如表1所示,隨著窗口和信息熵閾值的增大,時(shí)間呈現(xiàn)遞減的趨勢(shì)。并且當(dāng)窗口增大到20,運(yùn)行時(shí)間維持在1.5 s之下。由表2可以看出當(dāng)窗口變化到10,運(yùn)行時(shí)間基本在1 s到2 s之間??梢哉f(shuō)明經(jīng)過(guò)本文算法對(duì)圖像的處理使得KAZE算法特征提取時(shí)間較低。
表1 經(jīng)過(guò)本文算法對(duì)圖像的預(yù)處理后KAZE算法在谷歌影像上運(yùn)行的時(shí)間
表2 經(jīng)過(guò)本文算法對(duì)圖像的預(yù)處理后KAZE算法在高分2影像上運(yùn)行的時(shí)間
4.3.3 算法對(duì)比
為了進(jìn)一步測(cè)試本文算法的實(shí)驗(yàn)性能,3種結(jié)合了RANSAC算法特征提取算法用于衡量本文算法在不同數(shù)據(jù)集下的有效性,3種算法分別是SIFT,SURF及KAZE。表3列出了4種算法在4種數(shù)據(jù)集下的4種實(shí)驗(yàn)度量方法下的實(shí)驗(yàn)統(tǒng)計(jì)結(jié)果,4種實(shí)驗(yàn)度量方法分別為匹配點(diǎn)對(duì)數(shù),正確點(diǎn)對(duì)數(shù),CMR和運(yùn)行時(shí)間。表中實(shí)驗(yàn)數(shù)據(jù)主要體現(xiàn)在如下幾點(diǎn):(1)實(shí)驗(yàn)影像的質(zhì)量對(duì)于各算法的實(shí)驗(yàn)性能有較為明顯地影響。其中,SPOT遙感影像和高分影像相比Landsat和谷歌地圖影像具有相對(duì)較為明顯的地物特征,因此所采用的4種算法在SPOT遙感影像和高分影像均能提取較為可觀的特征點(diǎn)數(shù)目,而在Landsat和谷歌地圖影像上SURF+RANSAC和KAZE+RANSAC算法很難提取到特征點(diǎn);(2)在4組遙感影像下,本文算法相比其余3種算法大多具有最低的運(yùn)行時(shí)間和相對(duì)較高的正確率。特別的,對(duì)于地面特征不明顯的Landsat影像,本文算法也能提供較多的匹配點(diǎn)數(shù)、正確匹配點(diǎn)數(shù)和CMR值。圖4給出了本文算法對(duì)4組遙感影像進(jìn)行配準(zhǔn)的實(shí)驗(yàn)圖像。
表3 4種算法在不同遙感影像條件下的實(shí)驗(yàn)結(jié)果
圖4 匹配結(jié)果圖Fig.4 Matching result map
本文針對(duì)遙感圖像尺寸大,特征點(diǎn)算法匹配精度低及時(shí)間長(zhǎng)等問(wèn)題,提出了一種基于信息熵預(yù)處理的圖像配準(zhǔn)方法。本文首先在對(duì)遙感影像提取特征之前,使用非重疊窗口遍歷整幅遙感影像,并對(duì)每個(gè)分割出的小窗口計(jì)算其信息熵,并在信息熵豐富的區(qū)域進(jìn)行特征提取。通過(guò)在不同衛(wèi)星得到的遙感影像進(jìn)行實(shí)驗(yàn)驗(yàn)證了本文所提出的算法,實(shí)驗(yàn)結(jié)果表明本文在提高了匹配正確率的同時(shí),降低了運(yùn)行時(shí)間。并且針對(duì)無(wú)明顯特征的遙感影像,本文算法能夠找到更精確的特征點(diǎn)。在SPOT、高分二號(hào)等衛(wèi)星數(shù)據(jù)上的實(shí)驗(yàn)結(jié)果表明,本文算法相比于KAZE算法精度分別提升了0.2%和0.3%。算法時(shí)間分別縮短了70%和53%。
通過(guò)實(shí)驗(yàn)發(fā)現(xiàn),本文算法適用于尺寸較大且無(wú)明顯特征區(qū)域的遙感影像中,如田地,山地等類(lèi)的遙感影像,通過(guò)對(duì)圖像進(jìn)行分割去除冗余特征點(diǎn)的方法能夠發(fā)揮其優(yōu)勢(shì),減少特征點(diǎn)提取時(shí)間,提高效率。對(duì)于存在明顯特征區(qū)域的遙感影像如城市等遙感影像,本文算法也能夠提取到較多的特征點(diǎn),但對(duì)于無(wú)明顯區(qū)域的遙感影像本文算法的優(yōu)勢(shì)更為明顯和突出。發(fā)現(xiàn)本文算法對(duì)于分辨率不一樣的遙感圖像,匹配效果不夠理想。下一步工作將針對(duì)此問(wèn)題進(jìn)行更加深入地研究。