黃敏青
(四川大學(xué)計算機(jī)學(xué)院,成都610065)
隨著社會的發(fā)展和科學(xué)的進(jìn)步,人們不再滿足于視角有限的單幅圖像所帶來的信息,而是利用圖像拼接技術(shù)將多幅圖像拼接在一起從而獲得擁有廣視角、更多信息的圖像。圖像拼接技術(shù)是視頻拼接的基礎(chǔ),廣泛應(yīng)用于視頻監(jiān)控、虛擬現(xiàn)實(shí)、航空航天等領(lǐng)域[1]。整個拼接流程通常為:通過相鄰圖像的重疊區(qū)域,進(jìn)行特征提取得到特征點(diǎn),再通過相似性度量找到匹配的特征點(diǎn)對,然后通過匹配的特征點(diǎn)對得到圖像空間坐標(biāo)變換參數(shù),由坐標(biāo)變換參數(shù)進(jìn)行圖像配準(zhǔn),最后將配準(zhǔn)后的圖像的重合區(qū)域按照一定的融合規(guī)則進(jìn)行融合,得到拼接重構(gòu)的平滑無縫圖像。圖像融合是圖像拼接的關(guān)鍵技術(shù)之一,常見圖像融合方法有直接平均融合法、加權(quán)平均融合法、多分辨率融合法、小波變換融合方法[2]等。某些情況下,因?yàn)閿z像機(jī)自身的性能和工藝差異,以及自然環(huán)境的差異會導(dǎo)致在同一時刻獲取到的圖像存在一定的色彩差異,對融合效果有很大的影響[3]。為使拼接后的圖像色彩統(tǒng)一,因此對圖像進(jìn)行色彩校正是非常有必要的。
色彩空間指的是由三個獨(dú)立的屬性或變量組成的空間坐標(biāo),是進(jìn)行色彩信息研究的理論基礎(chǔ)。在我們的日常生活中,談?wù)撋实臅r候一般指的是由紅(Red)、綠(Green)、藍(lán)(Blue)組成的RGB 色彩空間,RGB 色彩空間屬于基色色彩空間,三分量R、G、B 之間的關(guān)聯(lián)性很強(qiáng),亮度信息在三個分量都有體現(xiàn),由此衍生出了由色、亮組成的色彩空間:如YCrCb 色彩空間、HSL 色彩空間、YUV 色彩空間等。其中YCrCb 色彩空間來自于YUV 色彩空間[4],Y 代表明亮度,Cb 和Cr 代表色度,Cb 具體為藍(lán)色分量與明亮度之差,Cr 具體為紅色分量與明亮度之差,二者相對沒有聯(lián)系,這樣的特性賦予了YCrCb 色彩空間在圖像亮度調(diào)節(jié)的優(yōu)勢。雖然不同的色彩空間的空間分量不一樣,具有的特性也不一樣,適用的領(lǐng)域也不一樣,但是不同的色彩空間是同構(gòu)的,它們之間可以通過數(shù)學(xué)公式互相進(jìn)行轉(zhuǎn)換。
RGB 與YCrCb 之間互相轉(zhuǎn)換的公式如下:公式(1)是由RGB 空間轉(zhuǎn)到Y(jié)CrCb 空間,公式(2)是由YCrCb 空間轉(zhuǎn)到RGB 空間。
圖像融合是整合配準(zhǔn)后的圖像信息,以達(dá)到圖像過渡自然的目的,提高圖像的質(zhì)量[5]。主要有直接平均法、加權(quán)平均法、多分辨率融合法。
直接平均融合法方法平均了兩幅圖像重疊區(qū)域相對應(yīng)的像素點(diǎn)對的像素值,將平均后的像素值作為融合后的像素值,計算方法如下所示:
其中,IL( i,j )和IR( i,j )分別為兩幅待融合圖像在重疊區(qū)域相對應(yīng)的的某一點(diǎn)像素值,I( i,j )為融合后該點(diǎn)的像素值。該方法優(yōu)點(diǎn)是簡單,缺點(diǎn)是融合后的效果不好,最終的融合圖像中會有明顯的融合痕跡。加權(quán)平均融合法在實(shí)際運(yùn)用中更為常見,將兩幅圖像重疊區(qū)域?qū)?yīng)的像素值分別乘一定的加權(quán)值后,將加權(quán)后的像素值進(jìn)行疊加得到的像素值作為融合后的像素值。計算方法如下所示:
其中IL( i,j )和IR( i,j )分別為兩幅待融合圖像在重疊區(qū)域相對應(yīng)的的某一點(diǎn)像素值,I( i,j )為融合后該點(diǎn)的像素值,w1,w2為權(quán)值,滿足條件w1+w2=1,w1由1漸變到0,w2由0 漸變到1,由此實(shí)現(xiàn)重疊區(qū)域的平滑過渡。
多分辨率融合法[6]是由Peter J. Burt 在1983 年提出的,基于拉普拉斯金字塔(Laplacian Pyramid)變換的圖像融合方法,后經(jīng)研究者們不斷創(chuàng)新,衍生出了多種多分辨率結(jié)構(gòu):高斯金字塔(Gaussian Pyramid)、拉普拉斯金字塔(Laplacian Pyramid)、小波金字塔(Wavelet Pyramid)、對比度金字塔(Contrast Pyramid)和梯度金字塔(Gradient Pyramid)等[7]。多分辨率融合方法的原理為:將圖像分解為分辨率不同的子圖像,再將子圖像采用一定的融合規(guī)則分別進(jìn)行融合,最后將融合后的子圖像進(jìn)行金字塔重構(gòu)得到最終融合圖像。該方法的融合效果好,但計算量大,耗時長,實(shí)時性差。
為達(dá)到良好的校正效果,本文提出了YCrCb 空間下的色彩校正算法。算法的基本原理就是根據(jù)目標(biāo)圖像與參考圖像各通道的平均值差異去調(diào)整目標(biāo)圖像各通道值。以下算法闡述以Y 通道為例,Cr,Cb 通道與此相同。假設(shè)目標(biāo)圖像(待校準(zhǔn)圖像)為ID,參考圖像為IR。首先分別計算兩圖像重疊區(qū)域的Y 通道平均值,yR,yD。兩者之間的差值ydif如下公式:
ydif=yR-yD(5)
如果直接簡單地將ydif加到目標(biāo)圖像yD上,會因?yàn)閮煞鶊D重疊區(qū)域的亮度分布差異影響而達(dá)不到理想的校正效果。因此還需要根據(jù)兩幅圖亮度值較大的像素點(diǎn)所占的比例來調(diào)節(jié)ydif值。假設(shè)統(tǒng)計出兩幅圖重疊區(qū)域中高于各自平均值的像素點(diǎn)個數(shù)分別為CountD,CountR。由于兩者重疊區(qū)域的總像素點(diǎn)個數(shù)是相同的,因此CountD,CountR就可以代表在兩幅圖中亮度值較大的像素點(diǎn)各自所占的比例。利用CountD,CountR得到更新后的ydif公式如下:
用CountD,CountR兩者之間的比例來更新ydif的好處是可以使通道值的調(diào)節(jié)不受亮度分布差異的影響。以ydif大于0,即要提高目標(biāo)圖像y 通道值為例分析。當(dāng)參考圖像中高于平均值的像素點(diǎn)個數(shù)CountR大于目標(biāo)圖像中高于平均值的像素點(diǎn)個數(shù)CountD時,表明在參考圖像中像素較暗的像素點(diǎn)受到較亮像素點(diǎn)的影響,相對于目標(biāo)圖像來說被提高了更多,實(shí)際上它并沒有那么亮。因此在提高目標(biāo)圖像較暗像素點(diǎn)時應(yīng)該減小ydif,即公式(6)表達(dá)的那樣,這樣才使得校正結(jié)果更接近參考圖像。其他情況的分析類似。
當(dāng)ydif大于0 時目標(biāo)圖像y 通道最終的校正公式如下:
當(dāng)ydif小于0 時目標(biāo)圖像y 通道最終的校正公式如下:
為應(yīng)對通道值調(diào)整過飽和而失真嚴(yán)重的問題,公式中加入了相應(yīng)的抑制處理:當(dāng)ydif>0 時:目標(biāo)圖像中較亮的像素點(diǎn)如果不加處理的直接加上ydif,此時可能會出現(xiàn)該像素點(diǎn)過亮而失真的情況。因此加入上述抑制手段后,當(dāng)較亮像素點(diǎn)值越接近255,此時給它增加的值就越小。實(shí)驗(yàn)表明上述抑制過飽和的方法有效。
圖像拼接中常用的融合方法有拼接縫融合,多分辨率融合,平均融合和線性融合。前兩種方法功能強(qiáng)大,適用于復(fù)雜情況,但在實(shí)時性要求高的場景下就不太好用。后兩種方法形式簡單,適合一些相對理想場景的使用,實(shí)時性較強(qiáng),但如果遇到較復(fù)雜場景時,難免會出現(xiàn)融合后的重合邊界與重合區(qū)域過度不自然。由于線性融合時重合區(qū)域的邊界一階導(dǎo)數(shù)相對較大,因此使得邊界處附近可能會出現(xiàn)不自然的過度。為應(yīng)對上述情況,本文提出了一個新的非線性融合公式。假設(shè)wD,wR分別是左右兩圖重疊區(qū)域的融合權(quán)重。其中wD+wR始終等于1。融合后的像素點(diǎn)距重合區(qū)域左邊界的距離占重合區(qū)域總寬度的比例為x ,x?[0 ,1] ,右圖權(quán)重wR的計算公式如下:
假設(shè)待拼接的圖像左右分別為IL,IR,融合后的重合區(qū)域像素點(diǎn)為I 。按照公式(9)的權(quán)重分配,I 的計算公式為:
線性融合與非線性融合在待拼接圖像重合區(qū)域的融合權(quán)重對比如圖1。從圖1 可以看出在重合區(qū)域的左右邊界處,非線性融合權(quán)重的導(dǎo)數(shù)要小于線性融合,說明在邊界處非線性融合具有更自然的過渡。在重合區(qū)域內(nèi),非線性融合相對線性融合也更具有靈活性。
圖1 重合區(qū)域融合權(quán)重曲線對比圖
本文的拼接算法具體流程圖如圖2 所示。
圖2 拼接流程圖
步驟1:輸入圖像A,圖像B,進(jìn)行色彩校正:將兩幅圖像轉(zhuǎn)換至YCrCb 顏色空間,以圖像A 為源圖像,圖像B 為目標(biāo)圖像,在該空間對圖像B 的Y、Cr、Cb 通道分別進(jìn)行調(diào)整,然后再將圖像B 由YCrCb 顏色空間轉(zhuǎn)換為RGB 空間;
步驟2:采用OpenCV 中的SIFT[8]算法查找圖像A、B 的特征點(diǎn)并匹配,根據(jù)特征點(diǎn)得到變換矩陣H 后,可將圖像B 乘以H 矩陣得到變換后的圖B',由此得到重疊區(qū)域;
步驟3:對圖A、圖B'按照上述非線性融合方法進(jìn)行融合得到拼接圖像C。
本文分別從融合效果和色彩統(tǒng)一上進(jìn)行了仿真實(shí)驗(yàn),證明了本文算法的有效性。實(shí)驗(yàn)平臺為Windows 10+VS 2019+MATLAB 2018b,計算機(jī)配置為Intel Core i5 3.2GHz 和 8GB RAM,使 用 的 開 源 庫 為OpenCV4.1.0。圖3 是分辨率均為480×640 的待拼接圖像Image1 和Image2。
圖3 待拼接圖像
為了證明本文融合算法的有效性,仿真實(shí)驗(yàn)對上述待拼接圖像采用直接平均融合法、線性加權(quán)融合法、本文非線性融合法得到的拼接結(jié)果如圖4。
圖4 融合實(shí)驗(yàn)結(jié)果
從圖中可以觀察到采用直接平均融合法得到的拼接圖4(a)有明顯的拼接痕跡,過渡極不自然;采用線性加權(quán)融合法得到的拼接圖像圖4(b)雖然沒有明顯的拼接痕跡,但是草地部分過渡偏生硬;而本文非線性加權(quán)融合法得到的拼接圖4(c)沒有痕跡且過渡較自然,效果較為理想。
以下實(shí)驗(yàn)是針對色彩差異的校正比較,在圖3 中可以明顯地看出兩幅待拼接圖像有色彩差異,在圖4中的拼接結(jié)果均存在色彩不一致的問題,因此需要進(jìn)行色彩校正。圖5 是對Image1 進(jìn)行校正后的拼接結(jié)果對比圖,均采用的是非線性加權(quán)融合法,其中圖5(a)是未進(jìn)行色彩校正的拼接結(jié)果圖,圖5(b)是色彩校正后的拼接結(jié)果圖。
圖5 色彩校正實(shí)驗(yàn)結(jié)果對比圖
從上述對比圖5 可判斷經(jīng)過色彩校正且采用非線性融合法可以將色彩有差異的圖像拼接地過渡自然,色彩統(tǒng)一,視覺效果良好。
針對圖像拼接中色彩不一致且過渡不自然的問題,本文提出了色彩校正和非線性加權(quán)融合法,經(jīng)過實(shí)驗(yàn)證明,該方法能使有色彩差異的兩幅圖像拼接在一起,過渡自然,提高了拼接圖像的整體視覺效果。