郭 牛, 桂志國(guó), 劉 祎, 康嘉琦
(1.中北大學(xué) 省部共建動(dòng)態(tài)測(cè)試技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室, 山西 太原 030051;2.中北大學(xué) 信息與通信工程學(xué)院, 山西 太原 030051)
目前, 工業(yè)領(lǐng)域中一般使用X射線(xiàn)平板探測(cè)成像系統(tǒng), 通過(guò)配套軟件將生成的16位圖像顯示在8位PC顯示器上, 圖像內(nèi)的大量信息在灰度范圍從16位線(xiàn)性壓縮到8位時(shí)都丟失了[1]。 此外,由于X成像的對(duì)比度較低, 圖像在黑暗區(qū)域、 高亮區(qū)域以及物體重合區(qū)域顯示不清, 增加了缺陷檢測(cè)的難度。 最常見(jiàn)的手動(dòng)調(diào)窗技術(shù)費(fèi)時(shí)費(fèi)力且效果不好, 而使用圖像處理技術(shù)可以實(shí)現(xiàn)自動(dòng)化且快速提升圖像整體的觀感和特征區(qū)域的辨識(shí)度,使工件的輪廓與細(xì)節(jié)更加清晰, 達(dá)到真正的檢測(cè)和探傷目的[2]。 因此, 增強(qiáng)圖像有用信息的同時(shí)抑制其無(wú)用信息是工業(yè)射線(xiàn)圖像處理中待解決的關(guān)鍵問(wèn)題之一。
圖像的對(duì)比度拉伸算法可以分為全局(空間不變)算法和局部(空間變化)算法, 它們的區(qū)別在于部分算法只基于圖像全局特性進(jìn)行調(diào)整, 另一部分算法結(jié)合圖像的全局和局部的視覺(jué)特性進(jìn)行不同的調(diào)整。 全局對(duì)比度拉伸算法對(duì)整幅圖像的所有圖像像素灰度值采用相同的變換函數(shù), 也就是說(shuō)整幅圖像中的所有相同的像素灰度值, 在變換后的灰度值也是相同的。 但是由于統(tǒng)一不變的變換曲線(xiàn)不能自適應(yīng)圖像的不同區(qū)域, 會(huì)導(dǎo)致圖像處理結(jié)果在細(xì)節(jié)、 亮度以及顏色上的損失。 局部對(duì)比度拉伸算法在圖像中的不同空間區(qū)域采用不同的變換函數(shù), 換言之, 拉伸前后圖像像素灰度值相同的區(qū)域, 在拉伸后的灰度值可能不同, 這取決于其所在位置和周?chē)南袼鼗叶戎礫3]。 局部算法更多得考慮人眼的視覺(jué)特性, 保留了圖像中各個(gè)區(qū)域特有的信息并帶來(lái)了較好的視覺(jué)效果,但是其算法計(jì)算量較大, 同時(shí)還容易給圖像帶來(lái)噪聲、 光暈及灰度值跳變, 提高了算法的復(fù)雜性。為了解決這些問(wèn)題, 學(xué)者們提出了各種類(lèi)型的局部對(duì)比度增強(qiáng)算法。2011年,Duan等[4]提出了基于局部對(duì)比度拉伸的色調(diào)映射算法, 該方法使圖像具有更加豐富的層次和細(xì)節(jié), 通過(guò)加入雙邊濾波處理, 很好地消除了光暈現(xiàn)象和噪聲影響;2018年, 徐寒等[5]提出了基于小波變換的工業(yè)X射線(xiàn)圖像模糊增強(qiáng)算法, 提出了新的隸屬度函數(shù),較傳統(tǒng)模糊增強(qiáng)算法加大了變換強(qiáng)度, 提升了運(yùn)算速度;2019年, 周沖等[6]提出了一種基于梯度場(chǎng)的工業(yè)圖像增強(qiáng)方法, 該方法有效地增強(qiáng)了圖像細(xì)節(jié)信息, 使平均梯度和清晰度都有所提升;2020年, 許紀(jì)亞等[7]提出了將拉普拉斯金字塔增強(qiáng)與二維直方圖均衡化(2DHE)算法相結(jié)合, 在保留2DHE增強(qiáng)對(duì)比度效果的同時(shí), 彌補(bǔ)了細(xì)節(jié)丟失的不足;2021年,Liu等[8]將梯度域色調(diào)映射和模糊邏輯相結(jié)合應(yīng)用于工業(yè)X射線(xiàn)圖像增強(qiáng), 此方法對(duì)復(fù)雜工件X射線(xiàn)圖像的缺陷檢測(cè)具有良好的視覺(jué)效果。
受上述研究啟發(fā), 本文提出了一種基于模糊熵的X 射線(xiàn)圖像局部對(duì)比度拉伸增強(qiáng)算法, 在16位X射線(xiàn)圖像處理上, 本文算法能夠展現(xiàn)更多的圖像信息和細(xì)節(jié), 并在一定程度上抑制均勻區(qū)域的噪聲, 同時(shí)能夠很好地解決邊緣區(qū)域的某些過(guò)沖現(xiàn)象, 提高圖像的整體質(zhì)量, 實(shí)驗(yàn)結(jié)果證明了本文所改進(jìn)算法的有效性。
Duan等提出了基于局部對(duì)比度拉伸的色調(diào)映射算法, 該算法的基本原理是: 首先對(duì)高動(dòng)態(tài)范圍圖像進(jìn)行對(duì)數(shù)映射來(lái)壓縮動(dòng)態(tài)范圍, 然后進(jìn)行局部對(duì)比度拉伸, 算法中為了消除光暈現(xiàn)象和噪聲影響, 使用了雙邊濾波處理, 該算法結(jié)果呈現(xiàn)出較好的視覺(jué)效果, 算法核心部分是所提出的局部對(duì)比度的拉伸[4]。
該算法可由下式表示
式(1)是對(duì)高動(dòng)態(tài)范圍圖像進(jìn)行對(duì)數(shù)映射操作, 其中:Lmin和Lmax分別為原始圖像素灰度值的最小值和最大值,P(I)為原始圖像,t是為了保護(hù)對(duì)數(shù)函數(shù), 其取值范圍為[10-6,1],D(I)為對(duì)數(shù)映射圖像。 在式(2)中:D(I)min為局部區(qū)域像素灰度范圍拉伸前的最小值,D(I)max為局部區(qū)域像素灰度范圍拉伸前的最大值,D(I)in為局部區(qū)域像素灰度范圍拉伸前的中心像素灰度值,D(I)'
min和D(I)'max分別為局部區(qū)域像素灰度范圍拉伸后的最小值和最大值,D(I)out為局部區(qū)域像素灰度范圍拉伸后的中心像素灰度值。 在式(3)和(4)中:D(I)ming和D(I)maxg分別為原圖經(jīng)過(guò)對(duì)數(shù)映射后整幅圖像的灰度最小值和最大值,β用于控制拉伸比例系數(shù)。在式(5)中,c為常數(shù),取1.5。
該算法的工作原理可用圖1來(lái)描述。 因人類(lèi)的視覺(jué)系統(tǒng)對(duì)亮度的響應(yīng)具有對(duì)數(shù)非線(xiàn)性, 所以, 該算法先對(duì)高動(dòng)態(tài)圖像的亮度作全局對(duì)數(shù)變換, 將亮度范圍歸一化。 之后, 在圖像每個(gè)像素點(diǎn)所在的局部塊, 將其對(duì)比度(局部區(qū)域內(nèi)亮度值最大的像素點(diǎn)和亮度值最小的像素點(diǎn)的差值)進(jìn)行拉伸。 在圖1中, 為了擴(kuò)大每個(gè)窗口的對(duì)比度, 由式(3)和式(4),將D(I)min的值向D(I)ming方向移動(dòng), 將D(I)max的值向D(I)maxg方向移動(dòng)。 式(5)中計(jì)算得到的β控制每個(gè)窗口對(duì)比度擴(kuò)大的比例。
圖1 基于局部對(duì)比度拉伸的色調(diào)映射算法工作原理圖Fig.1 Schematic of the working principle of local contrast stretch based tone mapping
針對(duì)上述算法在16位X 射線(xiàn)圖像上表現(xiàn)出的圖像對(duì)比度較低、 圖像細(xì)節(jié)不清晰、 邊緣區(qū)域過(guò)沖等現(xiàn)象, 本文首先通過(guò)全局對(duì)數(shù)映射和雙邊濾波對(duì)圖像進(jìn)行預(yù)處理, 再引入模糊熵來(lái)自適應(yīng)調(diào)節(jié)局部對(duì)比度的拉伸程度, 對(duì)圖像不同區(qū)域的細(xì)節(jié)信息作出改善, 達(dá)到圖像增強(qiáng)的目的。
本文算法流程圖如圖2所示。
圖2 本文算法流程圖Fig.2 Flowchart of the algorithm in this paper
1.2.1 預(yù)處理
由于在低Kvp(X射線(xiàn)能量)條件下獲取的X射線(xiàn)圖像中的有效信息通常是全暗的, 因此, 在圖像對(duì)比度拉伸之前需要進(jìn)行初步的全局映射。應(yīng)用對(duì)數(shù)公式把高動(dòng)態(tài)范圍光譜圖的亮度值映射在0~1之間, 對(duì)數(shù)映射公式如下
雙邊濾波是一種非線(xiàn)性濾波器, 它有保持邊緣、 降噪平滑的效果。 同其他濾波原理一樣, 雙邊濾波也是采用加權(quán)平均的方法, 用周邊像素亮度值的加權(quán)平均代表某個(gè)像素的強(qiáng)度, 所用的加權(quán)平均基于高斯分布。 雙邊濾波的權(quán)重在考慮像素歐氏距離的同時(shí)考慮了鄰域內(nèi)像素灰度值的輻射差異, 在計(jì)算中心像素時(shí)同時(shí)考慮這兩個(gè)權(quán)重,雙邊濾波的公式如下。
1.2.2 基于模糊熵的局部對(duì)比度拉伸
本文通過(guò)引入模糊熵自適應(yīng)調(diào)節(jié)局部對(duì)比度的拉伸程度來(lái)展現(xiàn)圖像細(xì)節(jié)信息和達(dá)到圖像增強(qiáng)的目的。
文中選取使用3×3的窗口, 找到窗口中的最小值F(I)min和最大值F(I)max, 令窗口內(nèi)的最大值與最小值的差為窗口的對(duì)比度, 通過(guò)調(diào)整窗口中的最小值和最大值達(dá)到拉伸對(duì)比度的效果, 工作原理圖如圖3所示。
圖3 基于模糊熵的X射線(xiàn)圖像局部對(duì)比度拉伸增強(qiáng)算法工作原理圖Fig.3 Working principle diagram of local contrast stretch enhancement algorithm for X-ray images based on fuzzy entropy
式中:Q(I)min與Q(I)max分別為局部最小與最大像素灰度值拉伸后的最小值和最大值; 參數(shù)b是為了防止圖像的對(duì)比度拉伸過(guò)度, 在待處理的圖像中產(chǎn)生噪聲; 參數(shù)γ控制圖像的細(xì)節(jié)對(duì)比度拉伸程度, 使圖像的細(xì)節(jié)位置對(duì)比度的拉伸程度隨該位置的模糊熵變化來(lái)更貼近人類(lèi)的視覺(jué)。2個(gè)參數(shù)的數(shù)學(xué)表達(dá)式如下
WANG 等[9]提出的圖像模糊熵反映了窗口中心(i,j)鄰域中像素灰度空間變化率的大小, 即當(dāng)3×3窗口處于較為均勻區(qū)域時(shí), 窗口中心點(diǎn)的模糊熵較小; 而當(dāng)3×3窗口處于灰度值變化較大區(qū)域時(shí), 窗口中心點(diǎn)的模糊熵較大。 圖像模糊熵公式具體如下式中:x(i,j)為對(duì)數(shù)映射圖像坐標(biāo)(i,j)處像素的灰度值;um(x(i+k,j+l))為隸屬度函數(shù), 表示在3×3窗口中像素值相對(duì)于窗口中心(i,j)處像素灰度值的隸屬程度。 窗口Wn(i,j)中(i+k,j+l)處的像素灰度值與(i,j)處的像素灰度值的差越小,(i+k,j+l)處像素灰度值的隸屬度越大; 反之, 該像素灰度值的隸屬度越小。 隸屬度函數(shù)公式具體如下
由式(14)和圖4得知,16位X射線(xiàn)圖像中,γ值小于1, 進(jìn)一步得知當(dāng)圖像像素點(diǎn)處于均勻區(qū)域, 即圖像模糊熵eA較小時(shí),γ較大; 當(dāng)圖像像素點(diǎn)處于灰度值變化較大區(qū)域, 即圖像模糊熵eA較大時(shí),γ較小。 由式(11)與式(12)得知, 當(dāng)γ較大時(shí), 即圖像均勻區(qū)域?qū)Ρ榷壤燧^小; 當(dāng)γ較小時(shí), 對(duì)圖像灰度值低且變化較大區(qū)域的對(duì)比度拉伸較大, 從而在展現(xiàn)出更多圖像細(xì)節(jié)的同時(shí),抑制了均勻區(qū)域的噪聲。 式(14)中不同L值下圖像處理結(jié)果(以16位X射線(xiàn)圖像1為例, 因?yàn)樵搱D像細(xì)節(jié)信息更為復(fù)雜, 增強(qiáng)難度較大)如圖5(a)~圖5(f) 所示。
圖4 不同L 值下的γ 曲線(xiàn)Fig.4 γcurve at different L values
圖5 16位X射線(xiàn)圖像1的處理結(jié)果Fig.5 Processing result of 16-bit X-ray image 1
式中:H(I)為全局色調(diào)映射圖的像素灰度值,F(I)min與F(I)max分別為濾波圖中局部像素灰度值的最小值與最大值,Q(I)min與Q(I)max分別為局部最小與最大像素灰度值拉伸后的最小值和最大值,Q(I)為輸出結(jié)果圖的像素灰度值。
本文采用的編程環(huán)境為Visual Studio 2019+opencv4.0.0, 在硬件配置Intel(R)Core(TM)i7-10700 CPU@2.90 GHz,16 G 內(nèi)存的計(jì)算機(jī)上完成實(shí)驗(yàn)仿真。
NRSS、SMD2和EOG 的值越高, 圖像的細(xì)節(jié)信息越豐富, 信息熵Entropy越高表明圖像包含信息越多。
通過(guò)設(shè)置式(14)中的參數(shù)L觀察其對(duì)圖像對(duì)比度拉伸的影響, 分別選取L=0.2,0.3,0.35,0.4,0.5, 其實(shí)驗(yàn)結(jié)果圖分別如圖5(a)~圖5(f)所示, 圖5(a)~圖5(f)的客觀評(píng)價(jià)指標(biāo)如表1所示。
表1 16位X射線(xiàn)圖像1在本文方法中取不同L 值的圖像客觀評(píng)價(jià)指標(biāo)Tab.1 Objective evaluation index of 16-bit X-ray image 1 when taking different L values in the proposed method
對(duì)圖5(a)~圖5(f)的主觀視覺(jué)分析明顯看出,通過(guò)調(diào)整參數(shù)L的大小,16位X射線(xiàn)圖像1隨參數(shù)L的增大, 圖像亮度更強(qiáng)。 再對(duì)圖5(a)~圖5(f)分別進(jìn)行客觀評(píng)價(jià)指標(biāo)分析, 在表1中用粗體突出顯示16位X射線(xiàn)圖像1使用本文方法時(shí), 選取不同L值的圖像質(zhì)量指標(biāo)最佳值, 可以明顯看出當(dāng)L=0.35時(shí), 圖像的NRSS,SMD2,EOG,Entropy 4項(xiàng)質(zhì)量指標(biāo)均大于其他L值效果, 為圖像質(zhì)量指標(biāo)最佳值。 結(jié)合主觀視覺(jué)分析與客觀評(píng)價(jià)指標(biāo)分析, 當(dāng)參數(shù)L超過(guò)0.35時(shí), 隨著L的增大, 圖像亮度提升的同時(shí), 圖像客觀評(píng)價(jià)指標(biāo)降低, 因此, 本文將L=0.35作為參數(shù)L的上限。
為了驗(yàn)證本文算法的有效性和實(shí)用性, 將其與自適應(yīng)直方圖均衡(AHE)和文獻(xiàn)[4]方法結(jié)果進(jìn)行比較, 將算法應(yīng)用到多種圖像上進(jìn)行實(shí)驗(yàn)分析, 在主觀視覺(jué)效果和客觀質(zhì)量評(píng)估方面評(píng)價(jià)算法的優(yōu)劣。
2.2.1 主觀視覺(jué)效果分析
圖6~圖8分別展示了對(duì)3種16位X射線(xiàn)圖像的處理結(jié)果。
圖6 16位X射線(xiàn)圖像1的處理結(jié)果Fig.6 Processing result of 16-bit X-ray image 1
圖8 16位X射線(xiàn)圖像3的處理結(jié)果Fig.8 Processing result of 16-bit X-ray image 3
為了更好地觀察效果, 將感興趣區(qū)域(ROI)(例如缺陷處)放大顯示在第2行, 在原始X射線(xiàn)圖像中,ROI區(qū)域用矩形框標(biāo)記。 明顯看出原始圖像ROI區(qū)域內(nèi), 幾乎看不見(jiàn)任何細(xì)節(jié), 使用AHE方法和文獻(xiàn)[4]方法得到的結(jié)果圖中, 圖像整體亮度得到明顯提升, 但是缺點(diǎn)同樣很明顯:(1)圖像處理后的整體視覺(jué)效果,AHE方法出現(xiàn)了區(qū)塊效應(yīng)(如圖6(b)、 圖7(b)和圖8(b)第1行的箭頭處); (2)AHE方法與文獻(xiàn)[4]方法處理結(jié)果的對(duì)比度較低, 不能夠很好地觀察到原始圖像中存在的缺陷現(xiàn)象(如圖6(b)、 圖6(c)、 圖7(c)、圖8(b)和圖8(c)第2行的橢圓區(qū)域內(nèi)); (3)AHE方法的邊緣區(qū)域過(guò)渡不明顯(如圖7(b)第2行的橢圓區(qū)域內(nèi)), 且在圖像均勻區(qū)域產(chǎn)生了較多的噪聲(如圖7(b)第2行的箭頭處); (4) 文獻(xiàn)[4]方法圖像邊緣過(guò)渡區(qū)域存在一定的過(guò)沖現(xiàn)象(如圖8(c)第2行的箭頭處)。
圖7 16位X射線(xiàn)圖像2的處理結(jié)果Fig.7 Processing result of 16-bit X-ray image 2
就主觀視覺(jué)效果而言, 本文方法相較于AHE方法與文獻(xiàn)[4]方法, 在結(jié)果圖上具有較好的對(duì)比度拉伸效果, 在圖像均勻區(qū)域抑制了噪聲現(xiàn)象,且一定程度上削弱了邊緣過(guò)渡區(qū)域的過(guò)沖現(xiàn)象。
2.2.2 客觀評(píng)價(jià)指標(biāo)
在表2中, 同樣使用粗體突出顯示實(shí)驗(yàn)方法的質(zhì)量指標(biāo)最佳值, 可以明顯看出, 本文方法對(duì)16位X 射線(xiàn)圖像1(全)、16 位X 射線(xiàn)圖 像1(ROI)、16位X射線(xiàn)圖像3(全)、16位X射線(xiàn)圖像3(ROI)處理后, 增強(qiáng)結(jié)果圖的客觀評(píng)價(jià)指標(biāo)均為最佳值, 而對(duì)于16位X射線(xiàn)圖像2(全)、16位X射線(xiàn)圖像2(ROI), 通過(guò)結(jié)合圖7(b)的第1行和第2行明顯看出,AHE方法在圖像中產(chǎn)生較多噪聲與區(qū)塊效應(yīng), 使得客觀評(píng)價(jià)參數(shù)計(jì)算過(guò)大, 故對(duì)于16 位X 射線(xiàn)圖像2(全)和16 位X 射線(xiàn)圖像2(ROI)在不同方法下的增強(qiáng)中,AHE方法的客觀評(píng)價(jià)指標(biāo)為最佳值。
表2 X射線(xiàn)圖像客觀評(píng)價(jià)指標(biāo)Tab.2 Objective evaluation index of X-ray images
通過(guò)主觀視覺(jué)效果分析與客觀評(píng)價(jià)指標(biāo)數(shù)據(jù)的對(duì)比, 得知本文算法較AHE方法和文獻(xiàn)[4]方法在16位X 射線(xiàn)圖像上的增強(qiáng)效果取得了較好的清晰度和更客觀的評(píng)價(jià)。
本文提出了一種改進(jìn)的局部對(duì)比度拉伸算法,該算法通過(guò)圖像模糊熵來(lái)控制局部對(duì)比度的拉伸。從經(jīng)過(guò)處理的16位X射線(xiàn)圖像效果可以看出, 與文獻(xiàn)[4]提出的局部對(duì)比度拉伸算法相比, 本文算法的增強(qiáng)效果圖中噪聲更少, 且一定程度上減弱了邊緣過(guò)沖現(xiàn)象, 增強(qiáng)了圖像的真實(shí)感; 圖像信息更多, 細(xì)節(jié)更加明顯, 圖像的整體質(zhì)量得到了明顯地提升。 本文方法目前對(duì)濾波方法存在改進(jìn)空間, 對(duì)于參數(shù)的選取未能實(shí)現(xiàn)自適應(yīng)確定。 在未來(lái)考慮引入L0梯度最小平滑濾波進(jìn)行嘗試, 結(jié)合圖像局部信息嘗試實(shí)現(xiàn)參數(shù)自適應(yīng)操作。