吳亮紅,孫亮,周博文,張紅強(qiáng),盧明
(湖南科技大學(xué)信息與電氣工程學(xué)院,湖南湘潭,411021)
圖像拼接是計(jì)算機(jī)視覺研究中的熱點(diǎn)問(wèn)題,該技術(shù)已廣泛應(yīng)用于醫(yī)學(xué)圖像處理[1]、虛擬現(xiàn)實(shí)[2]、機(jī)器人視覺[3]等領(lǐng)域。圖像拼接就是將某一環(huán)境下拍攝到的2幅或多幅圖像經(jīng)過(guò)圖像處理拼接成1幅視角更廣的全景圖像技術(shù)。圖像拼接可以通過(guò)基于灰度信息特征、相位相關(guān)和變換模型等方法來(lái)實(shí)現(xiàn),其中,由于基于圖像特征點(diǎn)的匹配方法能夠在光照變化、拍攝角度變換等變化下表現(xiàn)出較強(qiáng)的可靠性和魯棒性,被大量應(yīng)用于圖像拼接中。例如,BAY等[4]提出的加速魯棒特征(speeded up robust features,SURF)算法采用Hessian 矩陣檢測(cè)圖像特征點(diǎn)具有尺度、光照、旋轉(zhuǎn)等不變特性,使得圖像特征匹配具有較強(qiáng)的穩(wěn)定性。然而,在惡劣照明場(chǎng)景下,圖像特征匹配準(zhǔn)確度非常低。由于圖像特征匹配是基于檢測(cè)到的邊緣、角落等特征來(lái)進(jìn)行匹配,所以,盡可能多地檢測(cè)出特征點(diǎn)是解決圖像特征匹配準(zhǔn)確度低的有效方法。為了能夠檢測(cè)出更多的特征點(diǎn),通常在圖像拼接預(yù)處理部分采用能夠提高圖像對(duì)比度并且增強(qiáng)待拼接圖像中邊緣、角落的圖像增強(qiáng)方法,如TU 等[5]提出直方圖均衡化應(yīng)用于圖像特征匹配,經(jīng)實(shí)驗(yàn)驗(yàn)證,直方圖均衡可以明顯提高特征點(diǎn)的數(shù)量;DAUD 等[6]提出一種基于直方圖均衡的改進(jìn)預(yù)處理方法,該方法提高了惡劣光照情況下圖像特征匹配的準(zhǔn)確度;賈銀江等[7]提出一種銳化濾波器來(lái)增強(qiáng)圖像細(xì)節(jié),以此增加特征點(diǎn)數(shù)量;ZHANG 等[8]采用直方圖匹配的方法改善圖像質(zhì)量,并可以改善光照變化時(shí)的圖像拼接效果。以上研究主要采用圖像增強(qiáng)算法作為圖像特征匹配和圖像拼接的預(yù)處理方法,提高了匹配準(zhǔn)確度,但同時(shí)造成圖像噪聲增多,從而影響匹配效率和拼接時(shí)間。為此,本文作者提出一種基于偽高動(dòng)態(tài)范圍(pseudo high dynamic range,P-HDR)的圖像增強(qiáng)算法作為圖像拼接的預(yù)處理方法。該算法首先通過(guò)單幅低動(dòng)態(tài)范圍(low dynamic range,LDR)圖像生成多重虛擬亮度圖像,然后對(duì)多重虛擬亮度圖像進(jìn)行色調(diào)映射生成偽高動(dòng)態(tài)范圍圖像。在惡劣照明場(chǎng)景下,本文提出的圖像增強(qiáng)算法可以明顯增強(qiáng)圖像邊緣、角落和提高對(duì)比度,檢測(cè)到的特征點(diǎn)數(shù)量增多,能有效抑制圖像噪聲,提高圖像特征匹配準(zhǔn)確度。
本文提出圖像增強(qiáng)算法,即通過(guò)單幅圖像生成偽高動(dòng)態(tài)范圍圖像,利用該算法增強(qiáng)待拼接圖像,以改善圖像質(zhì)量。圖1所示為該圖像增強(qiáng)算法的流程框圖,主要由3步組成。
1)通過(guò)RGB到Y(jié)UV顏色空間變換,從輸入圖像S中提取亮度信息圖像L,然后根據(jù)Retinex理論將亮度信息圖像分解成環(huán)境的照明量I和反射量R[9]。
由于加權(quán)最小二乘濾波器(weighted least square,WLS)與傳統(tǒng)高斯濾波器相比,可以防止光暈偽像,因此,本文采用加權(quán)最小二乘濾波器得到照明量I。
圖1 圖像增強(qiáng)算法流程框圖Fig.1 Flow chart of image enhancement algorithm
2) 調(diào)整反射量并生成對(duì)應(yīng)不同虛擬曝光值的多重虛擬照明量。為了調(diào)整反射量,提出一種選擇性調(diào)整反射比例方法,增強(qiáng)相對(duì)明亮區(qū)域的細(xì)節(jié),從而提高圖像對(duì)比度。同時(shí),使用虛擬曝光值比例函數(shù)生成多重虛擬照明量{Ik}。
3)由調(diào)整后的反射量R′和多重虛擬照明量{Ik}生成多重虛擬亮度圖像{Lk},并對(duì)多重虛擬亮度圖像進(jìn)行色調(diào)映射處理,最后得到增強(qiáng)后的偽高動(dòng)態(tài)范圍圖像。
首先將輸入圖像S從RGB 顏色空間轉(zhuǎn)換到Y(jié)UV顏色空間以獲得作為人眼感知物體的亮度信息。Y分量的物理意義是像素點(diǎn)的亮度,將Y分量進(jìn)行歸一化后得到亮度信息圖像L:
式中:CR,CG和CB分別為輸入圖像RGB顏色空間的3個(gè)分量(紅、綠、藍(lán))。
根據(jù)Retinex 理論,人眼感知物體的亮度取決于環(huán)境的照明和物體表面對(duì)照射光的反射,數(shù)學(xué)表達(dá)式為
式中:(i,j)為像素位置;R為圖像信息的反射量;I是用濾波器G濾波L得到的照明估計(jì)量。由于高斯核通常會(huì)在明亮背景和暗前景的邊界附近產(chǎn)生光暈偽影[10],因此,本文采用加權(quán)最小二乘濾波器代替高斯濾波器以減少光暈偽影。加權(quán)最小二乘濾波器是一種邊緣保持平滑的濾波器,能夠滿足與亮度信息圖像L類似又盡可能平滑的要求。
加權(quán)最小二乘濾波器數(shù)學(xué)模型[11]為
式中:u為濾波器輸出;λ為第1項(xiàng)和第2項(xiàng)之間的平衡參數(shù);下標(biāo)p表示像素位置。式(3)中,第1 項(xiàng)(up-Lp)2是為了使輸出圖像u與輸入亮度信息圖像L越相似越好,第2項(xiàng)是通過(guò)最小化偏導(dǎo)數(shù)來(lái)抑制紋理的平滑項(xiàng)和ax,p(L)和ay,p(L)為平滑權(quán)重。
1.2.1 選擇性調(diào)整反射量比例
為了增強(qiáng)圖像暗區(qū)域中的細(xì)節(jié)清晰度,需要調(diào)整照明量。然而,在明亮區(qū)域下,增加照明又可能使圖像像素飽和,這樣會(huì)使圖像細(xì)節(jié)信息損失[12],因此,在相對(duì)明亮的區(qū)域中,調(diào)整照明量不能充分增強(qiáng)圖像細(xì)節(jié)清晰度。本文在處理圖像明亮區(qū)域時(shí),沒有采用遍歷像素的照明均衡方法,而是采用當(dāng)照明量大于某個(gè)閾值時(shí)進(jìn)行調(diào)整反射量的方法,這樣可保證明亮區(qū)域的圖像細(xì)節(jié)更清晰。
反射量為
式中:mI為照明量I的平均值;γ=0.6。因此,當(dāng)像素I(i,j)的照明值大于平均值mI時(shí),則將I(i,j)視為較明亮像素,并且將該像素的反射量增加倍。
1.2.2 生成多重虛擬照明量
由于本文使用的是未知曝光值的單幅亮度信息圖像L,為了生成多重虛擬照明量,采用Sigmoid 函數(shù)作為虛擬曝光值的比例函數(shù)f(ν):
式中:ν為[0,1]范圍內(nèi)的虛擬曝光值;mI為照明量I的平均值;σs為Sigmoid 函數(shù)的平滑因子,本文取值為為控制比例函數(shù)的自適應(yīng)幅度;M為初始照明量I的最大值。
本文設(shè)計(jì)4種不同的虛擬曝光值,加上初始照明量平均值mI,即可獲得一組虛擬曝光值νk(k=1, 2, 3,4, 5),其中,ν1=0.25,ν2=(ν1+ν3)/2,ν3=mI,ν4=(ν3+ν5)/2,ν5=0.75。
將圖像的初始照明量I乘以f(νk)作為新的照明量,這樣便可以生成多重虛擬照明量Ik(k=1,2,3,4,5),即
通過(guò)調(diào)整后的反射量R′和多重虛擬照明量Ik生成多重虛擬亮度圖像Lk(k=1,2,3,4,5):
然后,對(duì)多重虛擬亮度圖像Lk進(jìn)行色調(diào)映射[13],從而獲得增強(qiáng)偽高動(dòng)態(tài)范圍圖像:
式中:β∈[0,1],為該范圍內(nèi)的校正系數(shù),本文β取為1.0。
為了驗(yàn)證本文提出的P-HDR 圖像增強(qiáng)算法的有效性,對(duì)1幅惡劣環(huán)境照明場(chǎng)景下的圖像進(jìn)行增強(qiáng)處理,其結(jié)果如圖2所示,其中,圖2(a)所示為原始圖像,圖2(b)所示為增強(qiáng)后的圖像。由圖2可見:本文提出的圖像增強(qiáng)算法可增強(qiáng)圖像暗區(qū)域的邊緣,提高圖像對(duì)比度。
圖2 惡劣照明場(chǎng)景下的圖像增強(qiáng)效果Fig.2 Image enhancement effects in extreme illumination scenario
SURF特征點(diǎn)檢測(cè)是利用盒子濾波器建立尺度空間,在不改變?cè)瓐D像大小的條件下不斷改變盒子濾波器的模板大小,與原圖像在不同方向上進(jìn)行卷積計(jì)算,從而形成多尺度斑點(diǎn)響應(yīng)的金字塔圖像。利用這一金字塔圖像,即可進(jìn)行斑點(diǎn)響應(yīng)極值點(diǎn)的搜索[14],從而檢測(cè)出圖像的特征點(diǎn)。
SURF 特征點(diǎn)檢測(cè)是基于Hessian 矩陣,給定圖像I中的像素點(diǎn)I(i,j),則尺度為σ的Hessian矩陣H(I,σ)定義如下:
式中:Lii(I,σ)為高斯二階微分在點(diǎn)I(i,j)處與圖像I的卷積,Ljj(I,σ)與Lij(I,σ)具有類似的含義。SURF算法在進(jìn)行卷積時(shí)采用盒子濾波器來(lái)近似高斯濾波。通過(guò)Hessian 矩陣檢測(cè)到的特征點(diǎn)構(gòu)建特征描述符,每個(gè)特征點(diǎn)沿著主方向建立64 維的特征描述符[15]。圖3所示為沿主方向描述的待拼接圖像的特征點(diǎn)。
圖3 采用SURF在待拼接圖像中檢測(cè)到的特征點(diǎn)Fig.3 Feature points detected by SURF in image to be stitched
由于SURF 算法檢測(cè)到的特征點(diǎn)具有尺度、光照、旋轉(zhuǎn)等不變特性,所以,通過(guò)比較特征描述符高維空間的歐氏距離,即可判斷2個(gè)特征點(diǎn)是否對(duì)應(yīng)于場(chǎng)景中的同一個(gè)位置[16]。對(duì)于待拼接的2幅圖像,若檢測(cè)到的2個(gè)特征點(diǎn)的歐式距離最近,則認(rèn)為這2個(gè)特征點(diǎn)是待拼接的2幅圖像相同場(chǎng)景部分中的同一位置。本文采用快速近似最近鄰搜索(FLANN)算法[17]進(jìn)行粗匹配得到待拼接圖像的特征點(diǎn)對(duì)。當(dāng)完成粗匹配后,特征點(diǎn)對(duì)仍然存在一些錯(cuò)誤的匹配對(duì)。為了進(jìn)一步提純特征點(diǎn)對(duì),采用隨機(jī)抽樣一致性算法[18](RANSAC)進(jìn)行精匹配。RANSAC算法通過(guò)誤差函數(shù)來(lái)計(jì)算實(shí)際異常值,從而剔除錯(cuò)誤的特征點(diǎn)對(duì)。圖4所示為圖像拼接的特征匹配效果。
圖4 圖像特征匹配效果Fig.4 Image feature matching effect
通過(guò)計(jì)算匹配特征點(diǎn)對(duì)的透視變換矩陣來(lái)進(jìn)行圖像拼接。根據(jù)透視變換矩陣,可以將待拼接圖像映射到一幅投影圖像上。由于待拼接圖像存在亮度、色度等差異,所以,在拼接圖像的拼接處采用加權(quán)平權(quán)算法[19]進(jìn)行圖像融合。圖5所示為基于SURF 算法的圖像拼接效果。
圖5 基于SURF算法的拼接圖像Fig.5 Stitched image based on SURF algorithm
本文實(shí)驗(yàn)平臺(tái)為Microsoft Visual Studio 2015,Python3.6.5 和OpenCV3.4.1,計(jì) 算 機(jī)CPU 為Inter(R)Core(TM)i5-8300M(2.30GHz),內(nèi)存為8 GB。圖6所示為惡劣照明場(chǎng)景下的待拼接圖像1和圖像2。由圖6可見:待拼接圖像整幅區(qū)域的細(xì)節(jié)清晰度很低,嚴(yán)重影響拼接效果。
本文實(shí)驗(yàn)分為4個(gè)階段。
1) 通過(guò)預(yù)處理方法增強(qiáng)待拼接圖像。為了與其他方法進(jìn)行比較,該階段有5 種預(yù)處理方法:a) 無(wú)圖像預(yù)處理;b)文獻(xiàn)[5]中方法;c)文獻(xiàn)[7]中方法;d)文獻(xiàn)[8]中方法;e)本文預(yù)處理方法。
2)采用SURF算法檢測(cè)待拼接圖像的特征點(diǎn)。
3)采用FLANN算法和RANSAC算法對(duì)特征點(diǎn)進(jìn)行圖像特征匹配。
圖6 待拼接圖像Fig.6 Images to be stitched
4) 根據(jù)匹配的特征點(diǎn)對(duì)計(jì)算透視變換矩陣,然后進(jìn)行圖像拼接。實(shí)驗(yàn)中,記錄檢測(cè)到的特征點(diǎn)數(shù)量、匹配特征點(diǎn)對(duì)數(shù)量、特征匹配準(zhǔn)確度和拼接時(shí)間,然后對(duì)記錄的數(shù)據(jù)進(jìn)行比較和分析。
由不同預(yù)處理方法檢測(cè)到的特征點(diǎn)數(shù)量對(duì)比見表1。由表1可知:采用不同預(yù)處理方法得到的增強(qiáng)圖像都會(huì)使檢測(cè)出的特征點(diǎn)數(shù)量增多;檢測(cè)出的特征點(diǎn)數(shù)量增多證明這些預(yù)處理方法提高了圖像對(duì)比度,增強(qiáng)了圖像中的邊緣、角落。
表1 不同預(yù)處理方法檢測(cè)到的特征點(diǎn)數(shù)量對(duì)比Table 1 Comparison of the number of feature points detected by different preprocessing methods 個(gè)
不同預(yù)處理方法的特征匹配實(shí)驗(yàn)結(jié)果見圖7。在每幅圖像上,紅色點(diǎn)代表檢測(cè)到的特征點(diǎn),藍(lán)色線代表特征匹配的特征點(diǎn)對(duì)。由圖7可知:與其他預(yù)處理方法相比較,待拼接圖像采用本文預(yù)處理方法進(jìn)行增強(qiáng),在暗區(qū)域邊緣能檢測(cè)出更多的特征點(diǎn)數(shù)量,這能有效抑制增強(qiáng)后的圖像噪聲。
圖7 不同預(yù)處理方法的特征匹配效果Fig.7 Feature matching effects of different preprocessing methods
表2所示為不同預(yù)處理方法對(duì)4 組測(cè)試圖像進(jìn)行拼接的定量評(píng)估結(jié)果。由表2可知:采用預(yù)處理方法增強(qiáng)待拼接圖像后可以提高特征匹配的準(zhǔn)確度;本文預(yù)處理方法與其他方法相比,具有更多的特征點(diǎn)對(duì)數(shù)量且特征匹配準(zhǔn)確度更高;文獻(xiàn)[5]中方法盡管檢測(cè)到的特征點(diǎn)數(shù)量增多且提高了特征匹配的準(zhǔn)確度,但粗匹配的特征點(diǎn)對(duì)數(shù)量與其他預(yù)處理方法相比少很多,說(shuō)明該方法沒有有效地抑制圖像器噪聲,檢測(cè)出的特征點(diǎn)有很大部分是圖像噪聲,嚴(yán)重影響特征匹配效率,拼接時(shí)間過(guò)長(zhǎng);文獻(xiàn)[7]中方法由于檢測(cè)出的特征點(diǎn)數(shù)量少,特征匹配特征點(diǎn)對(duì)數(shù)量較少;文獻(xiàn)[8]中方法由于沒有圖像去噪,在進(jìn)行特征匹配過(guò)程中增加了大量的錯(cuò)誤特征點(diǎn)對(duì),嚴(yán)重影響準(zhǔn)確度。對(duì)比表2中第1 組和第4 組數(shù)據(jù)可以發(fā)現(xiàn):文獻(xiàn)[5]與文獻(xiàn)[8]中方法不穩(wěn)定、魯棒性差。
表2 基于SURF的不同預(yù)處理方法對(duì)圖像拼接的定量評(píng)價(jià)Table 2 Quantitative evaluation of image stitching based on SURF with different preprocessing methods
以上實(shí)驗(yàn)結(jié)果表明:在惡劣照明場(chǎng)景下,本文提出的預(yù)處理方法在圖像拼接方面有著更好的拼接效果:特征點(diǎn)對(duì)數(shù)量平均提升15.37%,特征匹配的準(zhǔn)確度平均提升9.413%,拼接時(shí)間平均縮短6.26%。
1) 針對(duì)惡劣照明場(chǎng)景下圖像拼接過(guò)程中特征匹配準(zhǔn)確度低的問(wèn)題,提出一種有效方法來(lái)提高圖像特征匹配的準(zhǔn)確度。采用圖像增強(qiáng)算法來(lái)改善圖像質(zhì)量是解決特征匹配準(zhǔn)確度低的有效方法。
2)提出一種P-HDR 圖像增強(qiáng)算法來(lái)改善圖像質(zhì)量。該圖像增強(qiáng)算法采用單幅圖像生成偽高動(dòng)態(tài)范圍圖像的方式,使得增強(qiáng)后的圖像邊緣更加明顯,圖像對(duì)比度提高。
3) 本文提出的基于偽高動(dòng)態(tài)范圍的圖像拼接預(yù)處理方法可以有效地提高圖像拼接的特征匹配準(zhǔn)確度。該方法在基于特征的圖像拼接方面比現(xiàn)有預(yù)處理方法具有更好的效果,可應(yīng)用于任何圖像拼接系統(tǒng)如智能手機(jī)、視頻監(jiān)控和醫(yī)學(xué)圖像處理等系統(tǒng),特別是在惡劣照明場(chǎng)景下,能夠可靠地進(jìn)行圖像拼接。