鄒瑜
[摘 ? ?要]視頻圖像應用規(guī)模越來越大,噪聲的存在會影響用戶的視覺感官,圖像去噪成為圖像處理不可或缺的環(huán)節(jié)。國內(nèi)外對圖像去噪的研究能夠應用大多數(shù)的場景。針對紅外圖像應用場景,采用去噪效果好、實時性好、資源占用較少的,能在FPGA運行的去噪算法顯得尤為重要。主要介紹一種應用在紅外圖像的去噪方法。該方法基于常規(guī)經(jīng)典算法,結合行業(yè)實際應用,對去噪處理后的圖像進行合理銳化,從而達到行業(yè)實際應用需求。
[關鍵詞]FPGA;圖像去噪;紅外圖像
[中圖分類號]TP391.41 [文獻標志碼]A [文章編號]2095–6487(2021)08–0–02
[Abstract]With the increasing scale of video image application, the existence of noise will affect the user's visual sense. Image denoising has become an indispensable part of image processing. The research on image denoising at home and abroad can be applied to most scenes. For infrared image application scenarios, it is particularly important to use the denoising algorithm which can run in FPGA with good denoising effect, good real-time performance and less resource occupation. This paper mainly introduces a method of infrared image denoising. This method is based on the conventional classical algorithm, combined with the practical application of the industry, to sharpen the denoised image reasonably, so as to meet the practical application needs of the industry.
[Keywords]FPGA; image denoising; infrared image
隨著計算機互聯(lián)網(wǎng)的發(fā)展,視頻圖像的應用規(guī)模越來越大。圖像從產(chǎn)生傳輸?shù)浇?jīng)過處理,都伴隨著一定的噪聲。噪聲的存在會使圖像質量變差。被噪聲嚴重污染的圖片會淹沒圖片本身存在的特征或者信息,進而使圖像失去保存意義。因而圖像去噪成為圖像處理必不可缺的環(huán)節(jié)[1]。
圖像研究已形成一套完整的體系。有國外專家針對圖像發(fā)展的歷史,綜合整理了圖像去噪的發(fā)展過程,并介紹了目前各種圖像去噪方法[2-3]。目前前沿研究主要集中在深度學習方法。除傳統(tǒng)濾波算法外,大部分都無法在FPGA上實時實現(xiàn)。部分去噪保邊效果較好的,如BM3D,NML等算法,經(jīng)過優(yōu)化后,雖可以在FPGA上實現(xiàn),但是占用FPGA大量的資源,功耗過大[4]。在實時進行數(shù)據(jù)傳輸時,采用復雜的算法,往往會耗費大量的資源。選擇合理的算法,在圖像保邊去噪和實時性方面,選出最優(yōu),滿足工程需要的算法顯得尤為重要。
紅外成像系統(tǒng)目前應用越來越廣泛。目前已經(jīng)深入到軍事、電力、石油、鐵路、林業(yè)、農(nóng)業(yè)、雨夜、日常監(jiān)控等各方面。與可見光圖像相比,紅外圖像易受探測器器件、探測環(huán)境、光電轉換、環(huán)境溫度等方面。且成像質量較差。這些因素會帶來大量的噪聲,影響圖像有效信息提取[5]。
常見的低通濾波,高斯濾波、均值濾波、中值濾波、小波變換等算法,簡單實用,易在FPGA開發(fā)實現(xiàn),在一些領域應用取得不錯的效果。本文結合行業(yè)應用,設計出一種易于在FPGA實現(xiàn),去噪效果良好的紅外去噪算法。
1 工程常見去噪方法
1.1 常規(guī)時域濾波
在實際應用中,均值濾波、中值濾波、高斯濾波具備良好的濾波效果,在一些特殊的應用方面,能取得良好的效果。
(1)均值濾波。均值濾波是將目標像素點上周圍的像素一起進行累加平均,得到新的像素點來代替原來的目標像素點的一種方法。
均值濾波能夠良好地濾除高頻噪聲,屬低通濾波類型。但它本身具有固有缺陷,無法保護圖像細節(jié)。在濾除噪聲時也會使圖像細節(jié)模糊。
(2)中值濾波。中值濾波是將目標像素點上周圍的像素一起進行排序,選擇數(shù)值在中間的像素點值來代替原來的目標像素點的一種方法。該構造一個3×3、5×5、7×7等大小的模板。將模板里(含目標像素點)的數(shù)值進行大小排序,一般模板數(shù)盡量選擇奇數(shù)。若是偶數(shù),則將中間的兩個數(shù)值進行平均,得到最終中間值。二維模板也可以選擇十字型,線性等,用的較多的還是方形模板。
工程中會有多個設備供電,某些供電設備電壓不穩(wěn)定等因素,會給圖像帶來較大的噪聲干擾。有很多專家學者針對中值濾波開展諸多研究。中值濾波能夠良好地濾除噪聲。并且還具有一定的邊緣細節(jié)保護作用,算法易于在硬件實現(xiàn)。因此該方法在圖像處理領域有廣泛的應用。
(3)高斯濾波。高斯濾波是將目標像素點上周圍的像素一起進行加權平均,得到新的像素點來代替原來的目標像素點的一種方法。該加權值由卷積模板來構成,權值由標準的高斯表達式來產(chǎn)生。
將目標像素點周圍的窗口數(shù)據(jù)與模塊權值做卷積處理,得到加權平均值,用該值替換目標像素點的數(shù)值。圖像中大多數(shù)噪聲屬于高斯噪聲。采用高斯濾波能夠很好地濾除高斯噪聲。因而在圖像去噪方法中,高斯濾波應用廣泛。
1.2 保邊去噪
保邊去噪是為了解決壓噪和保邊之間的矛盾,在求平均值平滑濾波方法的基礎上做部分改動。保邊去噪目標是尋找輸入數(shù)據(jù)中每個樣點附近最相似的區(qū)塊,求得該區(qū)塊的平均值,再用這個平均值代替該樣點的原始值。目前常用的保邊去噪算法有雙邊濾波和導向濾波。
(1)雙邊濾波。雙邊濾波(Bilateral filter)是結合圖像的空間鄰近度和像素值相似度的一種折中處理,同時考慮空域信息和灰度相似性,達到保邊去噪的目的。具有簡單、非迭代、局部的特點。雙邊濾波器的好處是可以做邊緣保存(edge preserving),一般過去用的維納濾波或者高斯濾波去降噪,都會較明顯地模糊邊緣,對于高頻細節(jié)的保護效果并不明顯。
雙邊濾波器比高斯濾波多了一個高斯方差sigma_d,它是基于空間分布的高斯濾波函數(shù),所以在邊緣附近,離的較遠的像素不會太多影響到邊緣上的像素值,這樣就保證了邊緣附近像素值的保存。
(2)導向濾波[6-7]。2010年何凱明等在ECCV發(fā)表了《Guided Image Filtering》文章。該方法與雙邊濾波一樣是一種保邊去噪的方法。2013年發(fā)表改進的快速導向濾波算法實現(xiàn)方法。該模型認為目標點在附近的一區(qū)域范圍內(nèi)是成線性關系。只需計算所有包含該點的線性函數(shù)的值并做平均即可。該模型采用兩張圖進行對比,兩張圖可以選擇一樣的,也可以選擇不一樣。這種方法,在表示非解析函數(shù)上,非常有用。相對于雙邊濾波,導向濾波不會出現(xiàn)圖像翻轉的現(xiàn)象。具有很好地應用價值
1.3 BM3D濾波
BM3D(Block-matching and 3D filtering)通過相似判定找到與參考塊相近的二維圖像塊,并將相似塊按照組合成三維數(shù)組,對三維數(shù)組進行協(xié)同濾波處理,再將處理結果聚合到原圖像塊的位置。該方法去噪效果明顯。對于便攜式手持設備或者無人機設備載荷,采用FPGA實現(xiàn)BM3D,占用的資源非常的多,功耗非常大,不適合行業(yè)應用。
2 易于FPGA工程實現(xiàn)的濾波方法
本文法基于局部均方差思路,結合圖像銳化方法,實現(xiàn)圖像的保邊去噪。該方法簡單,去噪效果良好,適合在FPGA平臺運行。
一幅M×N的灰度圖像的灰度圖像,x(i,j)為模板中心的灰度值,那么在(2×n+1)×(2×n+1)的窗口求出局部均值mij,和局部均方差vij。設置一個閾值表達式(sigma值由用戶輸入),用來調節(jié)濾波效果。濾波后的結果為。
當局部方差比較大時,說明該區(qū)域處于邊緣。當局部方差小時,說明該區(qū)域屬于平坦區(qū)。方差越小,得到閾值α越小。那么權值大的是均值濾波。當方差大時,選擇原有圖像,盡量保留現(xiàn)有邊緣。因為方法使用均值,一定程度上,會導致邊界的模糊。本文針對邊界模糊,使用sobel再次找出邊緣部分,對邊緣部分進行銳化加強,并根據(jù)sobel計算出來的梯度圖像,設置閾值,選取邊緣明顯的圖像數(shù)據(jù),與去噪后的圖像進行加權,從而得到最終的圖像。該方法不但能去除噪聲,也能進一步提升圖像細節(jié)。
該方法步驟可歸納如下:
(1)通過局部均方差的方法,對原始圖像進行去噪處理,得到去噪后的圖像。
(2)對去噪后的圖像進行sobel計算,得到梯度圖像。
(3)對梯度圖像設置閾值,將大于閾值的數(shù)據(jù)保留,將小于閾值的數(shù)值置零,得到處理后的梯度圖像。
(4)將去噪后的圖像與處理后的梯度圖像疊加,得到最終的圖像。
3 算法仿真
根據(jù)行業(yè)應用,對算法進行仿真測試,測試效果如下。
從圖1、圖2中,可以看到圖像存在噪聲。經(jīng)過處理后,噪聲得到去除。頭像邊緣部分也沒有丟失細節(jié)。
增加了高斯濾波方法,進行對比測試:
從圖3~圖5看出,高斯噪聲會損失一些細節(jié)。該方法簡單,易于FPGA實現(xiàn),可以應用到實際工程中。
4 結束語
本文提出一種能夠在FPGA實現(xiàn)的保邊去噪算法。對現(xiàn)有的算法進行了修改,能夠濾除噪聲的同時,保持良好的圖像細節(jié)。具有極強的工程應用價值。
參考文獻
[1] 蔡明晧.基于FPGA的圖像去噪處理及硬件實現(xiàn)[D].青島:青島大學,2019.
[2] Bhawna Goyal,Ayush Dogra,Sunil Agrawal,et al.Image denoising review: From classical to state-of-the-art approaches[J].Information Fusion,2020,55(3):220-244.
[3] Shuhang Gu,Radu Timofte.A brief review of image denoising algorithms and beyond[J].Inpainting and Denoising Challenges,2019(10):1-21.
[4] 劉存.基于FPGA的圖像去噪算法研究及實現(xiàn)[D].北京:北京交通大學,2015.
[5] 柳鑫.紅外圖像去噪算法研究[D].西安:西安電子科技大學,2019.
[6] Kaiming He,Jian Sun,Xiaoou Tang.Guided Image Filtering[M].ECCV,2010.
[7] Kaiming He,Jian Sun, Xiaoou Tang,Guided Image Filtering[M].TPAMI 2013.