改進BP網(wǎng)絡在超光譜圖像壓縮中的應用
超光譜圖像是利用超光譜傳感器對同一對象獲得的多個窄光譜波段范圍上的圖像,其光譜分辨率可以達到納米級。通過分析圖像中近乎連續(xù)的光譜曲線,可以分辨出不同物體光譜特征的微小差別,有利于識別更多的目標,從而被廣泛應用于環(huán)境監(jiān)測、地質(zhì)、農(nóng)業(yè)、醫(yī)學和軍事等領域。但是在獲得較高譜間分辨率的同時,也產(chǎn)生了巨大的數(shù)據(jù)量。為了能夠快速傳輸和處理這些數(shù)據(jù)并減少存儲空間,必須對超光譜圖像進行有效的壓縮。
目前,采用的壓縮方法主要有基于變換技術、基于矢量量化和基于預測的方法[1-3]。其中K-L變換和矢量量化復雜度較高,在實際應用中難以計算。預測編碼實現(xiàn)簡單,但實現(xiàn)的壓縮比有限。DCT變換有方塊效應,小波變換對于實現(xiàn)較大壓縮時圖像質(zhì)量明顯下降。人工神經(jīng)網(wǎng)絡具有分布式存儲和內(nèi)在并行處理的特點,可以實現(xiàn)快速的壓縮編碼。另外神經(jīng)網(wǎng)絡具有的自適應性和容錯性特點為設計一個實時、高效和自適應的圖像壓縮系統(tǒng)提供了可能[4]。
采用BP(Back-Propagation)神經(jīng)網(wǎng)絡進行圖像壓縮可以得到較高的峰值信噪比,但是網(wǎng)絡學習時間長,不適于圖像數(shù)據(jù)的實時處理。基于此,針對 BP網(wǎng)絡自身特性采用最小化 Cauchy函數(shù)作為逼近目標,在轉(zhuǎn)移函數(shù)中引入陡度因子,對轉(zhuǎn)移函數(shù)的導數(shù)進行提升,各層調(diào)節(jié)采用不同的尺度——即在整個學習過程進行聯(lián)合優(yōu)化,從而全局性的提高學習速度,減少學習時間。
1.1 網(wǎng)絡結構
為方便實現(xiàn),使用如圖1所示的3層BP神經(jīng)網(wǎng)絡。網(wǎng)絡輸入為原始圖像數(shù)據(jù),輸出代表重建圖像,中間隱含層神經(jīng)元的輸出是需存儲的圖像特征。由于隱含層神經(jīng)元數(shù)目比輸入層和輸出層要少(M<N),而信道中傳輸?shù)闹皇请[含層輸出值,因此,可達到圖像壓縮的目的。解碼為壓縮的逆過程,只需隱含層神經(jīng)元的輸出值和該網(wǎng)絡的右側權值,即可恢復出原始圖像信息。

圖1 3層BP網(wǎng)絡結構(M<N)
BP神經(jīng)網(wǎng)絡用于圖像壓縮的壓縮比與輸入層和隱含層的節(jié)點數(shù)有關,因此,一般來說采用不同數(shù)目的隱層節(jié)點就可實現(xiàn)同一圖像的不同壓縮比。為了研究利用BP神經(jīng)網(wǎng)絡進行圖像壓縮的性能,將隱層節(jié)點分別選為16、8和4三種情況以觀察結果。
1.2 網(wǎng)絡輸入
用于壓縮的原始圖像為512×512×8Bit的512幀“圖譜合一”的遙感超光譜圖像序列。為了避免網(wǎng)絡過于龐大而帶來算法復雜性及訓練時間的增加,將原始圖像分為16×16的塊,每一塊作為輸入樣本接入網(wǎng)絡。故而網(wǎng)絡的輸入節(jié)點為256個。網(wǎng)絡輸出即解壓圖像應和原始圖像大小相同,所以網(wǎng)絡輸出節(jié)點也為 256個。 為防止因凈輸入的絕對值過大使神經(jīng)元輸出飽和,要對輸入輸出數(shù)據(jù)進行歸一化,即通過變換將網(wǎng)絡的輸入輸出數(shù)據(jù)限制在[-1, 1]區(qū)間內(nèi)。
BP神經(jīng)網(wǎng)絡采用學習誤差作為代價函數(shù),通過對樣本的學習和訓練, 不斷的調(diào)整各網(wǎng)絡節(jié)點的連接權值和閾值,從而得到樣本的輸入與輸出的非線性關系。
經(jīng)典BP算法存在訓練時間長和易陷入局部極小值兩個主要不足而在實際應用中很難勝任,因而需要對其進行改進。BP算法的改進主要有兩種途徑:一種是采用增加動量法, 另一種則是自適應調(diào)整學習率[5]。
2.1 增加動量法
標準BP算法在調(diào)整權值時,只按t時刻誤差的梯度降方向調(diào)整,而沒有考慮t時刻以前的梯度方向,從而常使訓練過程發(fā)生震蕩,收斂緩慢。為了提高網(wǎng)絡的訓練速度,可以在權值調(diào)整公式中增加動量項,使權值調(diào)整公式為[5]

其中,α稱為動量系數(shù),一般有α ∈ (0,1)。可見,增加動量項即從前一次權值調(diào)整量中取出一部分疊加到本次權值調(diào)整量中,反映了以前累積的調(diào)整經(jīng)驗。當誤差曲面出現(xiàn)驟然起伏時,可減小振蕩趨勢,提高訓練速度。
2.2 自適應調(diào)節(jié)學習率
在標準BP算法中學習率η定為常數(shù),然而在實際應用中,很難確定一個由始至終都合適的最佳學習率。從誤差曲面可以看出,在平坦區(qū)域η太小會使訓練次數(shù)增加,因而希望增大η值;而在誤差變化劇烈的區(qū)域,η太大會使調(diào)整量過大而跨過較窄的“坑凹”處,使訓練出現(xiàn)振蕩,反而使迭代次數(shù)增加。為了加速收斂過程,一個較好的思路是自適應改變學習率,使其該大時增大,該小時減小。式(2)給出了一種自適應學習速率的調(diào)整公式[6]:

許多學者從不同角度對BP網(wǎng)絡的缺陷進行了研究同時提出不少改進算法[7],并取得了較好的效果,然而常規(guī)的改進方法都只是著眼于對學習過程中的局部改善。為進一步提高BP算法的學習速度,本文提出了一種聯(lián)合優(yōu)化的改進算法,從而全局性的改善學習速度,減少學習時間。
3.1 Cauchy誤差估計器
由于BP網(wǎng)絡采用學習誤差作為代價函數(shù),學習誤差的計算形式對BP網(wǎng)絡的學習速度產(chǎn)生重要的影響。經(jīng)典BP算法一般采用LMS誤差估計器來計算學習誤差[5],對初始值比較敏感。Cauchy誤差估計器是一種穩(wěn)健型誤差估計器[8],根據(jù)穩(wěn)健統(tǒng)計理論,有穩(wěn)健解的函數(shù)能抑制系統(tǒng)的過失誤差,對初始權值不會存在敏感性問題。本文采用的Cauchy誤差估計器表示形式如式(3)式(4)所示:


可見,Cauchy誤差估計更具有魯棒性:少數(shù)輸入樣本元素的輸出誤差對整個樣本學習誤差 EPl變化率的影響是有限的;相反,對于LMS誤差估計器而言, EPl的變化率則與呈線性關系,如圖2所示。這種情況極易導致由于極少數(shù)大的輸出誤差的存在而造成參數(shù)集合迭代偏離正常方向,從而導致大多數(shù)元素的輸出誤差再次增大,因此,減慢甚至阻止了自學習過程的正常收斂,最終延長了學習時間。

圖2 誤差估計器對EP變化率的影響
基于此,采用Cauchy誤差估計器作為代價函數(shù)是合理的,它能有效地消除少數(shù)“異常”誤差帶來的負面影響,同時保留了主要輸出誤差的數(shù)值特性,因此,整個學習過程能保持預定方向行進,從而加快了收斂速度。
3.2 轉(zhuǎn)移函數(shù)中引入陡度因子
在Sigmoid轉(zhuǎn)移函數(shù)中引入陡度因子s,重新定義為

其一階導數(shù)為

當s取不同的值(s=1,2,3,4)時, fs(x)及其一階導數(shù) fs′(x )的曲線如圖3、圖4所示。

圖3 fs(x)曲線變化圖

從表達式上看,考察式(8)和式(9),由于BP網(wǎng)絡參數(shù)的逼近采用梯度下降法,因此 f ′(?)作為參數(shù)增量項的乘積因子而對訓練速度產(chǎn)生影響。在標準算法中,往往認為Sigmoid函數(shù)的形態(tài)調(diào)整和學習步長η的調(diào)整對整個訓練速度的影響是等效的,于是在這一種情況下為方便起見都取s=1,而只通過改變η值來實現(xiàn)對學習速度的調(diào)整,但這樣常常使得迭代次數(shù)增加并最終導致學習時間延長,因為通過對式(9)的分析可知,對于不同的s值,Sigmoid函數(shù)的導數(shù) f′ (?)及其變化率都有很大的不同,如圖4所示,因此,在調(diào)節(jié)學習步長的同時引入陡度因子將有助于提高學習速度。它可使得學習過程快速脫離誤差曲面上“平坦區(qū)域(對應 f′ (?)接近于零處)”,同時,可避免梯度方向背離全局最小點的局部最小點。
另外,從圖3和圖4的比較也可發(fā)現(xiàn):
2) 對于x的微小變動,fs(x)比f (x)的變動更加靈敏;
3) 對比 fs(x)的導數(shù)sf(x)[1-f(x)]和f (x)的導數(shù)f(x)[1-f(x)]也可以發(fā)現(xiàn),當x相同的時候,fs(x)的導數(shù)比f(x)的導數(shù)大,這說明在調(diào)整權值與閾值的過程中,引入陡度因子比不引入的調(diào)整幅度要大,這就提高了調(diào)整的速度。
3.3 導數(shù)提升
BP網(wǎng)絡各層權值的調(diào)整都和 Sigmoid函數(shù)的導數(shù)f′(x)=f(x)[1-f(x)]有關。當f(x)趨于0或1時,f′(x )將趨于0,BP網(wǎng)將喪失調(diào)節(jié)能力,陷入一個平坦的局部極小區(qū)。f′(x )易趨于 0是導致BP算法收斂極慢的重要原因,可采用如下的解決辦法:

3.4 各層權值調(diào)整變尺度

可見多層權值的修正速率是不同的,離輸出層越遠的權值越難以被修正,這正是導致BP網(wǎng)訓練速度緩慢的重要原因。為了各層能充分利用誤差能量信號修正權值,采取如下措施

其中,m為大于1的常數(shù),η ( k)和η ( j)分別為輸出層和隱含層的權值修正步長。通過實驗也發(fā)現(xiàn)輸出層比隱含層更敏感,輸出層的權值修正步長取為隱層權值修正步長的倍數(shù)時,能夠明顯減少訓練步數(shù)和學習時間。
在本次實驗中,分別用經(jīng)典BP算法、標準改進算法和本文所提出的聯(lián)合優(yōu)化算法對一組512×512大小的超光譜圖像進行壓縮。其中參數(shù)設定為:Cauchy誤差估計器中的系數(shù)C=2.5,轉(zhuǎn)移函數(shù)中的陡度因子 s=4,導數(shù)提升因子b=0.001,輸出層權值的修正是隱層權值修正步長的m=4倍。標準改進算法中, α =0.9,η按式(2)取值。實驗的軟件編譯環(huán)境是MATLAB 6.5。對其中一幅超光譜圖像進行壓縮的結果,如圖5所示。

圖5 聯(lián)合優(yōu)化BP算法壓縮的仿真結果
由圖5可見,在壓縮比分別為16、32及64時,解壓后的恢復圖像和原始圖像從肉眼上幾乎看不出差別,這說明了利用BP網(wǎng)絡進行超光譜圖像壓縮可以得到很好的主觀質(zhì)量。
實驗結果的平均客觀指標如表1所示,可見,利用BP網(wǎng)絡進行超光譜圖像壓縮可以得到很好的主觀質(zhì)量,經(jīng)典BP算法的PSNR值可以達到57dB以上,本文算法的PSNR值在60dB以上。這一點在圖5中也有反映。
標準改進算法相比經(jīng)典BP算法在減少訓練步數(shù)、減小壓縮時間上也有改善,但壓縮時間仍然過長。在壓縮質(zhì)量提高的同時,本文算法的訓練步數(shù)明顯減少,壓縮時間也有大幅度的減小。如壓縮比為16時,本文算法和經(jīng)典BP算法相比,PSNR值為其110.04%,訓練步數(shù)為其23.81%,而壓縮時間僅為其15.25%。可見,在壓縮比相同的情況下,本文算法相比經(jīng)典BP算法在減少訓練步數(shù)、縮短壓縮時間和提高峰值信噪比上的優(yōu)越性。
壓縮質(zhì)量高和壓縮時間短是超光譜圖像壓縮需要具備的兩個重要性能。本文將BP神經(jīng)網(wǎng)絡用于遙感超光譜圖像壓縮,詳細討論了采用最小化Cauchy函數(shù)作為逼近目標,同時在轉(zhuǎn)移函數(shù)中引入陡度因子,對轉(zhuǎn)移函數(shù)的導數(shù)進行提升,各層修正權值時采用不同的尺度,即在整個學習過程進行聯(lián)合優(yōu)化的改進BP算法。無論從圖像主觀上來看,還是從客觀指標分析,本文所提出的算法進行圖像壓縮具有較好的效果。較之傳統(tǒng)的圖像壓縮方法,使用人工神經(jīng)網(wǎng)絡方法顯示了很大的優(yōu)越性。
從仿真結果看到,本文所提出的算法還沒有達到實時處理的要求。神經(jīng)網(wǎng)絡的基本優(yōu)點之一就是可以通過并行處理來獲得很高的計算速度。但是,神經(jīng)網(wǎng)絡的這種優(yōu)勢只有在硬件實現(xiàn)的網(wǎng)絡上才能充分體現(xiàn)出來。
[1] 吳立彬. 矢量量化技術及其在超光譜圖像中的應用研究[D]. 重慶郵電大學, 2012.
[2] 吳冬梅, 李 科, 張海寧. 基于譜間 DPCM 和整數(shù)小波變換的超光譜圖像無損壓縮[J]. 光子學報, 2008, 37(1): 156-159.
[3] 高 文, 朱 明, 潤 瀾, 等. 一種空間劃分與譜間預測相結合的超光譜圖像壓縮新方法[J]. 光譜學與光譜分析, 2011, 31(8): 2287-2293.
[4] 楊淑媛, 王 敏, 焦李成. 基于脊波和神經(jīng)網(wǎng)絡的大壓縮比遙感圖像壓縮[J]. 紅外與毫米波學報, 2007, 26(4): 297-301.
[5] 韓力群. 人工神經(jīng)網(wǎng)絡理論、設計及應用(第 2版)[M]. 北京: 化學工業(yè)出版社, 2007.
[6] 從 爽. 面向Matlab工具箱的神經(jīng)網(wǎng)絡理論與應用(第3版)[M]. 合肥: 中國科技大學出版, 2009.
[7] 滕明鑫, 熊忠陽, 張玉芳. BP改進算法綜述[J]. 計算機科學, 2008, 35(4A): 237-239.
[8] Liu Guangyuan, Yu Juebang, Qiu Yuhui. A Fast BP Learning Algorithm via A Hybrid Approach. Journal of UEST of China [J]. 1999, 27(3): 265-268.
閆紅梅, 吳冬梅
(西安科技大學通信與信息工程學院,陜西 西安 710054)
鑒于超光譜圖像的應用領域,對超光譜圖像的壓縮要重點考慮壓縮質(zhì)量和壓縮時間。將BP神經(jīng)網(wǎng)絡用于超光譜圖像壓縮可得到較好的壓縮質(zhì)量。在保證較好恢復質(zhì)量的前提下,提出了一種利用Cauchy誤差估計器、在轉(zhuǎn)移函數(shù)中引入陡度因子、進行導數(shù)提升及各層調(diào)節(jié)變尺度的改進BP算法進一步減少壓縮時間。實驗結果表明:算法減少了壓縮時間,提高了編碼效率。
圖像壓縮;超光譜圖像;神經(jīng)網(wǎng)絡;BP算法
Application of Improved BP Neural Network in Hyper-spectral Image Compression
Yan Hongmei, Wu Dongmei
( Communictiom and Information Engineering College, Xi’an University of Science and Technology, Xi’an Shaanxi710054, China )
The hyper-spectral image compression is focused on compression quality and time owing to the application fields of hyper-spectral image. The application of BP Neural Network in the hyper-spectral image compression can get better compression quality. A joint-optimized improved algorithm on the premise of good renewed qualities is presented. It uses Cauchy error estimator and shape factor in Sigmoid function, upgrades the differential coefficient and each lay adapts different step adjustment. Simulation results prove that the algorithm can reduce compression time and improve coding efficiency.
image compression; hyper-spectral image; neural network; BP algorithm
TP 919.81
A
2095-302X (2013)05-0110-05
2012-09-12;定稿日期:2013-02-27
西安科技大學培育基金項目(201254)
閆紅梅(1978-),女,陜西商洛人, 講師,碩士,主要研究方向為神經(jīng)網(wǎng)絡和圖像處理。E-mail:yhm523@163.com