胡超秀
(山西師范大學(xué) 教育科學(xué)學(xué)院,山西 臨汾 041000)
在實(shí)際生活中,由于復(fù)雜環(huán)境的影響,圖像在傳播過(guò)程中很容易受到噪聲的干擾,從而使圖像中添加了很多種類(lèi)不同的噪聲,使圖像變的模糊,更可能使圖像失去了原來(lái)的特征,進(jìn)而導(dǎo)致在圖像識(shí)別、分割、提取、檢測(cè)等方面出現(xiàn)錯(cuò)誤。
為了獲得高質(zhì)量高精度的圖像,便于為圖像的后期處理提供精準(zhǔn)的圖像數(shù)據(jù),首先需要為圖像去噪。圖像去噪一方面是要去除圖像的噪聲,另一方面是盡可能的不去改變圖像原有的特征,保留原圖像足夠多的特征。對(duì)于不同種類(lèi)的噪聲,圖像去噪的方法也不相同,如加性噪聲,乘性噪聲,量化噪聲等。傳統(tǒng)的圖像去噪方法有空域和變換域?yàn)V波、基于圖像自相似性、基于稀疏表達(dá)、基于馬爾科夫場(chǎng)等,這些方法在去噪的同時(shí)也失去了一些原本的特征。
近年來(lái),深度學(xué)習(xí)技術(shù)不斷完善,在圖像處理方面取得了很高的成就。圖像去噪技術(shù)也得到了發(fā)展,但還存在不足之處,需要繼續(xù)著手于深度學(xué)習(xí)在圖像去噪方面的研究,盡可能的降低圖像中的噪聲,提高圖像去噪效果,從而提高圖像質(zhì)量,為后期的圖像處理提供精準(zhǔn)的數(shù)據(jù),提高圖像處理的準(zhǔn)確性。
在圖像去噪的傳統(tǒng)算法中,在圖像保真度和視覺(jué)質(zhì)量方面效果較好的是NLM[1]算法和BM3D[2]算法,都很大程度依賴計(jì)算機(jī)性能,計(jì)算時(shí)間太長(zhǎng),遠(yuǎn)不能滿足實(shí)時(shí)計(jì)算的需求。十幾年來(lái),卷積神經(jīng)網(wǎng)絡(luò)在圖像處理方面取得了一定成功。用深度學(xué)習(xí)技術(shù)實(shí)現(xiàn)圖像去噪的方法也得到了發(fā)展。Xie等人利用多層的全連接網(wǎng)絡(luò)的去噪自編碼實(shí)現(xiàn)圖像去噪[3],Burger等人提出利用多層感知器(MLP)實(shí)現(xiàn)圖像去噪[4],Mao等人在2016年提出了利用網(wǎng)絡(luò)結(jié)構(gòu)深的卷積編碼器[5]實(shí)現(xiàn)圖像去噪?;诰矸e神經(jīng)網(wǎng)絡(luò)的圖像去噪這一方法在圖像處理方面取得了很大成果,因?yàn)镃NN具有局部感受域[6]這種結(jié)構(gòu),加快了訓(xùn)練速度,減少運(yùn)算數(shù)量。Zhang等人在2017年提出了利用深度卷積神經(jīng)網(wǎng)絡(luò)[7]實(shí)現(xiàn)圖像去噪效果。但是,這些基于卷積神經(jīng)網(wǎng)絡(luò)的圖像去噪算法還沒(méi)有得到廣泛應(yīng)用,去噪效果的改進(jìn)還需要大量的數(shù)據(jù)模型來(lái)支持。因此,基于深度學(xué)習(xí)的圖像去噪算法還有待進(jìn)一步研究實(shí)現(xiàn)。
神經(jīng)元是人腦的基本計(jì)算單元,它會(huì)將接收到的信號(hào)進(jìn)行處理,若神經(jīng)元感知到這個(gè)信號(hào)處理后滿足神經(jīng)元的某一閾值,它就會(huì)被激活,并將信號(hào)傳導(dǎo)至下一神經(jīng)元。人工神經(jīng)網(wǎng)絡(luò)是一種從信息處理角度模仿人腦神經(jīng)元的數(shù)學(xué)模型。其大致結(jié)構(gòu)如圖1所示:
圖1 神經(jīng)元模型
圖1中x=(x1,x2,…,x n)為輸入數(shù)據(jù),w=(w1,w2,…,w n)為權(quán)重,b、f、y分別代表偏置、激活函數(shù)、數(shù)據(jù)的輸出。神經(jīng)元將輸入x和與之相對(duì)應(yīng)的權(quán)重w相乘然后再將其相加得到一個(gè)總輸入,數(shù)學(xué)表達(dá)式是:
然后這個(gè)值作為激活函數(shù)f的自變量得到y(tǒng) i:
常用的激活函數(shù)有sigmoid型函數(shù)和tanh函數(shù)。sigmoid取值范圍為[0,1]。Sigmoid[8]函數(shù)為:
感知器是較為簡(jiǎn)單的一種神經(jīng)網(wǎng)絡(luò)。不同的感知器,實(shí)現(xiàn)的神經(jīng)網(wǎng)絡(luò)的功能也是不一樣的。整個(gè)過(guò)程中,數(shù)據(jù)由輸入層進(jìn)入神經(jīng)網(wǎng)絡(luò),接著逐層向后傳遞,直至到達(dá)輸出層,如圖2所示:
圖2 前饋神經(jīng)網(wǎng)絡(luò)模型圖
BP神經(jīng)網(wǎng)絡(luò)算法由兩部分組成,分別是信息的正向傳播和誤差的反向傳播。具體結(jié)構(gòu)如圖3所示。
圖3 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
反向傳播基于梯度下降算法,前向傳播的實(shí)際輸出與期望輸出之間差值被定義為誤差信號(hào)[9],公式如下:
m表示樣本數(shù),yi為實(shí)際值,y0為輸出值。通過(guò)調(diào)整網(wǎng)絡(luò)參數(shù)來(lái)使實(shí)際輸出越來(lái)越接近預(yù)期輸出。
權(quán)重w的更新為:
同理可得b的更新為:
1.4.1卷積神經(jīng)網(wǎng)絡(luò)
卷積神經(jīng)網(wǎng)絡(luò)是一種前饋神經(jīng)網(wǎng)絡(luò)[10],它是根據(jù)生物的視覺(jué)和知覺(jué)機(jī)制來(lái)構(gòu)建的,可進(jìn)行監(jiān)督學(xué)習(xí),也可進(jìn)行非監(jiān)督學(xué)習(xí)。圖像輸入像素的一個(gè)小窗口就叫做局部感受野。每個(gè)隱含層的神經(jīng)元只與輸入神經(jīng)元的一小部分區(qū)域連接。如圖4所示:
圖4 局部感受野
1.4.2 卷積神經(jīng)網(wǎng)絡(luò)的特點(diǎn)
卷積神經(jīng)網(wǎng)絡(luò)通過(guò)采用局部連接的方式,來(lái)減少網(wǎng)絡(luò)中的參數(shù)數(shù)量,進(jìn)而提高學(xué)習(xí)效率。
卷積層中的卷積核作用于整張圖片(如圖5),首先從輸入層輸入圖像,然后對(duì)圖像的不同位置進(jìn)行卷積,最終得到的卷積結(jié)果就是輸入圖像的特征。在卷積神經(jīng)網(wǎng)絡(luò)中,被同樣結(jié)構(gòu)的卷積核進(jìn)行卷積,實(shí)現(xiàn)了權(quán)重共享,這導(dǎo)致網(wǎng)絡(luò)中的計(jì)算量大大降低。
圖5 卷積核作用過(guò)程
1.4.3 ReLU激活函數(shù)
ReLU激活函數(shù)在神經(jīng)網(wǎng)絡(luò)中稀疏表達(dá)能力較強(qiáng),ReLU在梯度下降算法中速度較快,并且緩解了S型函數(shù)中梯度彌散問(wèn)題。
圖6 ReLU激活函數(shù)
噪聲會(huì)直接影響視覺(jué)感官效果,甚至?xí)箞D片丟失原本特征,使圖像變得模糊,從而不能從中提取出重要信息,而圖像去噪是利用技術(shù)手段使圖片恢復(fù)到原來(lái)的樣子,進(jìn)而提高圖像質(zhì)量,為后續(xù)的圖像處理提供清晰的圖像數(shù)據(jù)。
2.1.1 噪聲模型
噪聲模型分為兩種,分別是:加性噪聲和乘性噪聲。其中加性噪聲可以表示為:
其 中f(x,y)、n(x,y)、g(x,y)分 別 為 原 始 圖像、添加的噪聲、有噪聲的圖像。常見(jiàn)的噪聲有很多種,但由于我們平時(shí)看到的圖像大多數(shù)都是經(jīng)過(guò)數(shù)碼相機(jī)、成像設(shè)備得到的,所以本文主要是研究在深度學(xué)習(xí)技術(shù)上加性高斯白噪聲的去除問(wèn)題。
2.1.2 常用的圖像去噪算法
基于深度學(xué)習(xí)的圖像去噪算法是通過(guò)學(xué)習(xí)圖像的細(xì)節(jié)特征而實(shí)現(xiàn)的圖像去噪。隨著深度學(xué)習(xí)技術(shù)的不斷發(fā)展,通過(guò)嘗試不同方法來(lái)實(shí)現(xiàn)圖像去噪,并取得了一定效果。
一種是通過(guò)卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)圖像去噪,由于這種神經(jīng)網(wǎng)絡(luò)具有稀疏連接和權(quán)值共享等特點(diǎn)[11],使網(wǎng)絡(luò)中的參數(shù)大大降低,提升訓(xùn)練速度,使得卷積神經(jīng)網(wǎng)絡(luò)在圖像處理識(shí)別方面取得了良好的效果。
另一種是通過(guò)自編碼器實(shí)現(xiàn)圖像去噪,這種方式可以很好的去學(xué)習(xí)圖像的細(xì)節(jié)特征,它的學(xué)習(xí)方式是無(wú)監(jiān)督的學(xué)習(xí)方式[12]。
2.1.3 圖像去噪效果評(píng)價(jià)
在圖像去噪方面,通常需要判斷圖像的去噪效果,一般評(píng)價(jià)圖像的去噪效果有兩個(gè)常用的方法,本文主要通過(guò)PSNR(峰值信噪比)[13]和SSIM(結(jié)構(gòu)相似性)來(lái)檢驗(yàn)圖像的去噪效果。
PSNR(峰值信噪比)是通過(guò)均方誤差(MSE)實(shí)現(xiàn)的。兩個(gè)圖像之間PSNR值越大,則越相似。兩幅大小均為m*n的灰度圖像A(i,j)和B(i,j)的均方差公式為:
在此基礎(chǔ)上,PSNR為:
SSIM是通過(guò)比較兩幅圖像的結(jié)構(gòu)相似性來(lái)判斷去噪效果,其值最大為1。SSIM評(píng)價(jià)模型為:
圖7 簡(jiǎn)單的CNN網(wǎng)絡(luò)結(jié)構(gòu)
卷積神經(jīng)網(wǎng)絡(luò)一般結(jié)構(gòu)為:
2.2.1 輸入層
輸入層可處理多維數(shù)據(jù)。卷積神經(jīng)網(wǎng)絡(luò)是使用梯度下降來(lái)學(xué)習(xí)的,就需要對(duì)輸入特征進(jìn)行標(biāo)準(zhǔn)化處理,有利于提升算法的運(yùn)行效率和學(xué)習(xí)表現(xiàn)。
2.2.2卷積層
卷積層內(nèi)包含多個(gè)卷積核,利用卷積核可以有效提取輸入數(shù)據(jù)的特征。在卷積神經(jīng)網(wǎng)絡(luò)中,絕大多數(shù)輸入數(shù)據(jù)的特征提取都要用到卷積層的卷積操作。內(nèi)積運(yùn)算是將兩個(gè)向量對(duì)應(yīng)的標(biāo)量先相乘,再求和的運(yùn)算。卷積操作可以理解為內(nèi)積。原理圖如圖8所示。
圖8 卷積過(guò)程
2.2.3池化層
在卷積過(guò)程中,常用的池化技術(shù)就是均值池化(Average Pooling)、最大池化(Max Pooling)。均值池化是取區(qū)域內(nèi)所有值的平均值作為最后的輸出數(shù)據(jù),最大池化是取所有值之中的最大值作為最后的輸出數(shù)據(jù)。池化層進(jìn)行池化操作的目的是縮小圖片的尺寸,減小計(jì)算量便于處理。池化的作用體現(xiàn)在降采樣。池化層在考慮傳播方向時(shí),不需要再次考慮更新權(quán)重問(wèn)題,因?yàn)樗话悴辉O(shè)置參數(shù)值。由于相鄰像素或區(qū)域相關(guān)性較大,所以底層信息可能會(huì)存在一定的冗余,利用池化層正好可以解決這一問(wèn)題。池化操作的池化規(guī)模一般為2×2。如圖9為一個(gè)簡(jiǎn)單的池化過(guò)程:
圖9 簡(jiǎn)單池化過(guò)程
2.2.4 全連接層
在輸出數(shù)據(jù)之前,至少要加上一層全連接層,它能增強(qiáng)網(wǎng)絡(luò)的非線性映射能力,限制網(wǎng)絡(luò)的大小,還可以用來(lái)收集更多的信息,盡量地保證網(wǎng)絡(luò)的性能。全連接層中,每一神經(jīng)元與前一層的所有神經(jīng)元相連接,計(jì)算表達(dá)式為:
在本次實(shí)驗(yàn)中使用的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)由輸入層、卷積層、輸出層構(gòu)成。由于整個(gè)網(wǎng)絡(luò)都用了大小為3*3的卷積核,使得網(wǎng)絡(luò)變得很簡(jiǎn)單。
圖10 實(shí)驗(yàn)中的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
如下表1為每一層的具體數(shù)據(jù):
表1 網(wǎng)絡(luò)層次結(jié)構(gòu)
圖11 數(shù)據(jù)集
本文中采用的是具有明顯細(xì)節(jié)不同特征的400張灰色圖像作為數(shù)據(jù)集來(lái)訓(xùn)練模型,以下為數(shù)據(jù)集的一部分。
這些數(shù)據(jù)集具有不同的細(xì)節(jié)特征,有遠(yuǎn)景、近景,有人臉、動(dòng)物,這樣豐富的數(shù)據(jù)集使訓(xùn)練出來(lái)的的模型并不只適用于某一類(lèi)圖像去噪,而是使訓(xùn)練出來(lái)的模型可以廣泛運(yùn)用在不同類(lèi)型的圖像去噪中,從而使模型具有更好的適用性。
本文選取的測(cè)試集如圖12所示:
圖12 測(cè)試集
由于是深度網(wǎng)絡(luò),所以不需要人工提取圖片的特征,直接在輸入層將圖像輸入。本文采用個(gè)400個(gè)圖像大小為180*180的圖片來(lái)訓(xùn)練模型,卷積層采用了大小一樣的卷積核。學(xué)習(xí)率在網(wǎng)絡(luò)模型的訓(xùn)練中是一個(gè)很重要的參數(shù),學(xué)習(xí)率如果設(shè)置的太小,會(huì)使訓(xùn)練時(shí)間過(guò)長(zhǎng),收斂速度過(guò)慢,在長(zhǎng)時(shí)間的參數(shù)更新中,一直會(huì)有微弱的噪聲。但是,如果學(xué)習(xí)率設(shè)置的太大,會(huì)使模型的誤差增大,使得網(wǎng)絡(luò)性能降低。所以,我們?cè)诓煌木W(wǎng)絡(luò)中應(yīng)選擇合適的學(xué)習(xí)率,本文將梯度下降算法學(xué)習(xí)率設(shè)置為0.001。隨著迭代次數(shù)的增大,去噪效果會(huì)越來(lái)越好,但是當(dāng)?shù)拇螖?shù)增大到一定程度時(shí),去噪效果就達(dá)到了一個(gè)穩(wěn)定的狀態(tài)。此刻,就不再需要增加迭代次數(shù)了,本研究中將網(wǎng)絡(luò)迭代次數(shù)設(shè)置為50次。
首先對(duì)實(shí)驗(yàn)中采用的測(cè)試集,通過(guò)添加不同的噪聲進(jìn)行去噪,分別采用噪聲標(biāo)準(zhǔn)差為σ=10,15,20,25,35對(duì)測(cè)試集中的數(shù)據(jù)進(jìn)行對(duì)比,然后對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行對(duì)比分析。
σ=10時(shí):
經(jīng)過(guò)對(duì)比,在不同噪聲下的去噪效果,可以發(fā)現(xiàn)5幅圖中不同的Denoised圖像清晰度逐漸降低,但整體去噪效果還是不錯(cuò)的,保留了原始圖像的細(xì)節(jié)特征。實(shí)驗(yàn)結(jié)果可以很好的說(shuō)明在不同噪聲下的去噪效果,最后與其他去噪實(shí)驗(yàn)做對(duì)比來(lái)更好的說(shuō)明本研究實(shí)驗(yàn)的去噪效果。如表2所示:
表2 不同噪聲下的峰值信噪比
本文采用鄧正林去噪實(shí)驗(yàn)中的數(shù)據(jù)[14]與本研究中的數(shù)據(jù)進(jìn)行對(duì)比,在噪聲水平為σ=25時(shí)與BM3D、WNNM、MLP在相同測(cè)試集下的結(jié)果。如表3所示。
表3 測(cè)試集在噪聲水平為25時(shí)不同去噪算法的去噪結(jié)果
通過(guò)數(shù)據(jù)對(duì)比分析可以看出,本文的圖像去噪效果整體上要優(yōu)于其它去噪算法的去噪效果。個(gè)別圖像由于訓(xùn)練模型的數(shù)據(jù)集小,硬件條件不足,導(dǎo)致某些細(xì)節(jié)特征未被訓(xùn)練。在以后的研究中將增大訓(xùn)練的數(shù)據(jù)集,以便達(dá)到更好的去噪效果。
深度學(xué)習(xí)在圖像識(shí)別方面取得了很大的成功,促進(jìn)了圖像去噪的發(fā)展,使得在圖像處理研究方面有了更好的的發(fā)展。深度學(xué)習(xí)是一種對(duì)提取的特征進(jìn)行學(xué)習(xí)的技術(shù),它可以模擬出人腦中的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),使其具有學(xué)習(xí)能力。通過(guò)對(duì)大量數(shù)據(jù)進(jìn)行訓(xùn)練,最終可以達(dá)到一個(gè)良好的效果。
綜上所述,本文構(gòu)建的去噪網(wǎng)絡(luò)可以獲得真實(shí)清晰的去噪結(jié)果,避免了圖像去噪結(jié)果中出現(xiàn)邊界偽像的現(xiàn)象。