王海軍,金 濤,門克內(nèi)木樂
(1.鄂爾多斯應(yīng)用技術(shù)學(xué)院數(shù)學(xué)與計(jì)算機(jī)工程系,內(nèi)蒙古 鄂爾多斯 017000;2.鄂爾多斯應(yīng)用技術(shù)學(xué)院信息工程系,內(nèi)蒙古 鄂爾多斯 017000)
隨著成像技術(shù)在軍事、安防、地質(zhì)、農(nóng)業(yè)和醫(yī)學(xué)等領(lǐng)域的廣泛應(yīng)用,大量高清圖像隨之產(chǎn)生,要快速傳輸和存儲(chǔ)這些圖像,就必須對圖像信息進(jìn)行有效的壓縮處理。目前,常用的壓縮方法主要有霍特林變換技術(shù)、離散余弦變換技術(shù)和小波變換技術(shù)。其中霍特林變換技術(shù)擁有如去相關(guān)性強(qiáng)、變換后能量集中程度高和可進(jìn)行最優(yōu)稀疏表示等優(yōu)點(diǎn),但由于運(yùn)算量過大,且無快速算法,在實(shí)際工程中應(yīng)用很少[1]。離散余弦變換技術(shù)具有實(shí)現(xiàn)的壓縮率高、計(jì)算復(fù)雜度低、且實(shí)現(xiàn)較容易的優(yōu)點(diǎn),但是其方塊效應(yīng)破壞了子圖像的相關(guān)性[2]。小波變換技術(shù)可以有效消除圖像數(shù)據(jù)空間冗余,計(jì)算量也不大,但是小波變換只能進(jìn)行方向上的變換,不能反映圖像的結(jié)構(gòu)和邊緣特征,對于實(shí)現(xiàn)較大壓縮比時(shí)圖像質(zhì)量下降明顯[3]?;诖吮姸鄬W(xué)者開始探索新的建模簡單、易實(shí)現(xiàn)高壓縮比、計(jì)算復(fù)雜度低的算法。神經(jīng)網(wǎng)絡(luò)具有極強(qiáng)的非線性處理能力和自適應(yīng)能力,且建模簡單,自然而然也成為圖像壓縮研究領(lǐng)域關(guān)注的重點(diǎn),其中尤其以誤差反向傳播(Back Propagation,BP)神經(jīng)網(wǎng)絡(luò)圖像壓縮研究最為活躍[4-6]。但BP 神經(jīng)網(wǎng)絡(luò)采用的是梯度下降算法,存在對初始權(quán)閾值敏感易陷入局部極小值、收斂速度慢等問題[7]。
為了克服這些問題,常采用萊文伯格·馬夸德(Levenberg Marquard,LM)BP 算法建模,相比梯度下降算法,LMBP 算法可以有效改善梯度下降算法收斂速度慢的問題[8]。但LMBP 算法是基于梯度下降算法的改進(jìn),因此,也存在初始權(quán)閾值敏感易陷入局部極小值問題。天牛須算法(Beetle Antennae Search,BAS)是2017 年由Xiang Y J.等人提出的一種新型的仿生算法[9],已有研究表明,BAS 算法與遺傳算法、粒子群算法等仿生算法一樣,可以有效改善BP 神經(jīng)網(wǎng)絡(luò)對初始權(quán)閾值敏感、易陷入局部極小值問題[10],但是BAS 算法在多維非線性優(yōu)化問題求解時(shí)存在局部收斂問題,因此,本研究中通過分析BAS 算法的特點(diǎn)后,通過引入慣性權(quán)值,更新衰減系數(shù),限定解位移區(qū)間構(gòu)建改進(jìn)天牛須搜索算法(Improved Beetle Antennae Search,IBAS),并將其與LMBP 算法結(jié)合建立IBAS-LMBP 算法模型。實(shí)驗(yàn)結(jié)果證明,與GA-LMBP、PSO-LMBP 及BAS-LMBP 算法模型相比,基于IBAS-LMBP 算法的圖像壓縮模型運(yùn)行效率更高。
BP 神經(jīng)網(wǎng)絡(luò)尋優(yōu)過程實(shí)質(zhì)是求出所求問題的最小誤差對應(yīng)的解,其數(shù)學(xué)描述如式(1)所示:
表1 基于不同訓(xùn)練算法的BP 模型性能比較
BAS 算法是一種以天牛觸須搜索食物行為衍生而來的一種仿生學(xué)算法,該算法基本原理是:天牛在覓食時(shí),并不知道目標(biāo)在哪里,它通過觸須感知食物氣味,根據(jù)氣味濃度來確定搜尋目標(biāo)位置。如一側(cè)觸須收到的氣味濃度強(qiáng)于另一側(cè),下一步天牛就向氣味濃度高的區(qū)域行進(jìn),在新位置繼續(xù)判斷氣味濃度,如此反復(fù),直到搜尋到氣味濃度達(dá)最大值,即認(rèn)為天牛已找到目標(biāo)位置[13]。
根據(jù)以上仿生原理,采用以下3 條規(guī)則來抽象出如圖1 所示的搜索算法中的簡化天牛模型:
規(guī)則1:以天牛質(zhì)心位置代表天牛位置,其觸須位于質(zhì)心左右兩側(cè)且距離相等;
規(guī)則2:天牛每步行進(jìn)距離與左右觸須間的距離比是固定常數(shù);
規(guī)則3:在天牛每次到達(dá)新位置時(shí),頭的朝向是隨機(jī)的。
圖1 簡化天牛模型
依據(jù)以上簡化模型,則對于一個(gè)極小值優(yōu)化問題,設(shè)優(yōu)化函數(shù)為f(·),天牛須算法計(jì)算步驟如下:
Step 1 建立天牛須朝向的隨機(jī)向量并將其表示為單位向量,如式(4)所示:
式中,rands(·)表示隨機(jī)[0,1]之間的函數(shù),q 表示搜索空間維度。
Step 2 確定天牛左右觸須的位置。
式中,xl表示左觸須向量,xr表示右觸須向量,x(t)表示在第t 次迭代時(shí)的質(zhì)心位置,d(t)表示第t 次迭代時(shí)兩須之間距離。
Step 4 對于步長step 和觸須間距d0的計(jì)算,目前使用較多的是變步長和動(dòng)態(tài)間距計(jì)算[11],如式(8)、式(9)所示。
式中,δ 為步長的衰減系數(shù),c 為間距系數(shù)。
Step 5 判斷是否符合迭代結(jié)束條件,符合結(jié)束迭代,不符合重復(fù)Step 1~Step 4 直到符合條件。
與GA 和PSO 算法對比,BAS 算法只需要一只天牛,運(yùn)算量小,運(yùn)算速度快,但是在解決多維非線性優(yōu)化時(shí)也存在易陷入局部最優(yōu)問題,基于此設(shè)計(jì)如下IBAS 改進(jìn)策略。
為了增加BAS 算法中天牛的尋優(yōu)能力,對BAS算法作了如下幾步的改進(jìn):
1)慣性權(quán)值的引入——算法初始階段,較大的慣性權(quán)值可以使天牛擴(kuò)大搜索范圍,避免陷入局部最優(yōu),在算法運(yùn)行后期,天牛接近最優(yōu)解,此時(shí)較小的慣性權(quán)值可是天牛在當(dāng)前最優(yōu)解附近搜索接近最優(yōu)解。參照PSO 算法,慣性權(quán)值的設(shè)計(jì)如式(10)所示。同時(shí)通過引入符合函數(shù)sign(·),將式(6)和式(7)兩種情況合并,此時(shí)天牛質(zhì)心計(jì)算公式變?yōu)槿缡剑?1)所示:
式中,φmin為初始慣性值,φmax為迭代至Tmax時(shí)的慣性值,φ(t)為第t 次迭代的慣性值。
2)衰減系數(shù)的計(jì)算——步長衰減系數(shù)δ 用來控制天牛的區(qū)域搜索能力,初期其取值應(yīng)盡可能大,使天??梢钥焖傧蚴澄镆苿?dòng),在后期放慢搜索進(jìn)程,與慣性因子一起完成對步長移動(dòng)的二次調(diào)節(jié)。在本文中對δ 采用式(12)所示的計(jì)算公式,此時(shí)天牛步長公式由式(8)變?yōu)槭剑?3):
式中,δ1、δ0為步長調(diào)節(jié)系數(shù),δ(t)為t次迭代的衰減系數(shù)。
IBAS 優(yōu)化LMBP 神經(jīng)網(wǎng)絡(luò)的核心思想是:在IBAS 算法運(yùn)行中,將IBAS 算法的欲尋優(yōu)變量(天牛的初始位置)設(shè)置為神經(jīng)網(wǎng)絡(luò)的初始權(quán)閾值組合,在IBAS 算法運(yùn)行過程中僅以適應(yīng)度函數(shù)作為評估天牛行進(jìn)的標(biāo)準(zhǔn),在本文中以食物散發(fā)的氣味濃度即訓(xùn)練樣本均方誤差作為IBAS 算法所求適應(yīng)度函數(shù),如式(14)所示。IBAS 算法通過左右觸須不斷探測食物氣味濃度調(diào)整行進(jìn)方向的過程,就是調(diào)整LMBP 神經(jīng)網(wǎng)絡(luò)權(quán)閾值的過程,直到最終算法停止運(yùn)行,具體實(shí)現(xiàn)步驟如下所示:
Step 3 迭代停止判斷——判斷當(dāng)前適應(yīng)度函數(shù)值是否達(dá)到設(shè)定精度(bestf<0.001)或迭代進(jìn)行到最大次數(shù)(Tmax>100),如果滿足條件則Step 4,否則,返回Step 2 繼續(xù)迭代。
Step 4 最優(yōu)解生成——在滿足迭代停止條件時(shí),bestx中的解即為BAS 算法訓(xùn)練得到的BP 模型初始最優(yōu)權(quán)閾值組合,將上述最優(yōu)解帶入BP 神經(jīng)網(wǎng)絡(luò)中采用LMBP 算法進(jìn)行二次訓(xùn)練,直到達(dá)到BP模型訓(xùn)練精度,形成圖像壓縮模型。
圖2 圖像分塊示意圖
根據(jù)以上所述基于分塊思想的圖像劃分方式,如果將一個(gè)128×128 像素圖像,采用4×4 子像素塊進(jìn)行劃分,此時(shí)BP 網(wǎng)絡(luò)輸入就可由128 降為16,網(wǎng)絡(luò)結(jié)構(gòu)大為簡化,網(wǎng)絡(luò)復(fù)雜度降低,從而為采用BP 神經(jīng)網(wǎng)絡(luò)進(jìn)行有效圖像壓縮提供可行性和便利性。同時(shí)由于BP 神經(jīng)網(wǎng)絡(luò)激活函數(shù)tansig 和purelin 對輸入數(shù)據(jù)比較敏感,因此,對分塊后的數(shù)據(jù)采用式(16)進(jìn)行歸一化處理。式中,pmax和pmin為待處理圖像數(shù)據(jù)的灰度域值,qmax和qmin為變換域值,pc為待處理的像素灰度值,qa為處理后的像素點(diǎn)值。
在采用BP 神經(jīng)網(wǎng)絡(luò)進(jìn)行圖像壓縮時(shí),基本思想是把一組輸入模式通過少量隱含層結(jié)點(diǎn)映射到一組輸出模式,輸出模式盡可能與輸入模式相等。當(dāng)隱含層結(jié)點(diǎn)數(shù)少于輸入層結(jié)點(diǎn)時(shí),就意味著隱含層能有效地表現(xiàn)輸入模式,并將其傳送到輸出層。映射過程包含壓縮編碼和解碼重建兩個(gè)階段,其中輸入層與隱含層的變換看作圖像的壓縮編碼階段;而隱含層與輸出層的變換看作圖像解碼重建階段[12]?;谶@一基本思想得到BP 模型輸入層與輸出層結(jié)點(diǎn)數(shù)相等,即inputnum=outputnum。在圖像壓縮時(shí),BP 神經(jīng)網(wǎng)絡(luò)用于圖像編碼的壓縮比K與輸入層結(jié)點(diǎn)數(shù)inputnum 和隱含層結(jié)點(diǎn)數(shù)hiddennum 有關(guān),其具體計(jì)算公式如式(17)所示[13],圖3為壓縮比K=2 時(shí)采用的BP 模型基本結(jié)構(gòu)。
K=inputnum/hiddennum(17)
圖3 壓縮比為K=2 時(shí)的BP 模型基本結(jié)構(gòu)
為了驗(yàn)證本文提出的IBAS-LMBP 算法在圖像壓縮研究中的有效性,采用GA-LMBP、PSO-LMBP、BAS-LMBP 及IBAS-LMBP 算法建立圖像壓縮模型,并用峰值信噪比(PSNR)對模型重建圖像評價(jià)。采用128 pixel×128 pixel Lena 圖像作為訓(xùn)練樣本,128 pixel×128 pixel Cameraman 圖像作為測試樣本,128 pixel×128 pixel Brain 圖像作為驗(yàn)證樣本。圖4~圖6 為采用各種算法對壓縮比K=2 的模型進(jìn)行圖像重建的結(jié)果,從圖像直觀地看出,各種算法的重建圖像效果差別不明顯,主觀看幾種算法重建效果都不錯(cuò)。
圖4 各種算法的Lena 重建圖
圖5 各種算法的Cameraman 重建圖
圖6 各種算法的Brain 重建圖
下頁表2 和表3 分別給出了壓縮比K=2 和K=4 時(shí)的PSNR 對比結(jié)果??梢钥闯?,在壓縮比K=2即模型結(jié)構(gòu)為16-8-16 時(shí),由于BP 模型權(quán)閾值參數(shù)數(shù)量較多,因此,隨機(jī)數(shù)較多,此時(shí)無論是對訓(xùn)練圖像Lena 還是測試圖像Cameraman 及Brain,經(jīng)過IBAS-LMBP 訓(xùn)練的模型PSNR 值明顯好于GA-LMBP、PSO-LMBP 和BAS-LMBP。而在壓縮比K=4 即模型結(jié)構(gòu)變?yōu)?6-4-16 時(shí),BP 模型權(quán)閾值參數(shù)大幅度減少,模型的隱含層結(jié)點(diǎn)數(shù)也相應(yīng)減少了,此時(shí)BAS-LMBP 算法運(yùn)行的效率就不能保證都好于GA-LMBP 算法和PSO-LMBP 算法,而本文提出的IBAS-LMBP 算法依然是4 種算法中重建圖像PSNR 最高的,因此,不論是在哪種結(jié)構(gòu)模型下,IBAS-LMBP 算法都是運(yùn)行效率最高的。在對仿生算法進(jìn)行比較時(shí),除了比較壓縮算法重建效果,考慮算法性能時(shí)有必要進(jìn)一步考查其運(yùn)行時(shí)間,表4 給出了基于不同仿生算法進(jìn)行權(quán)閾值初級尋優(yōu)的時(shí)間,可以直觀地看出,IBAS 算法無論是在哪種壓縮比下,其運(yùn)行時(shí)間都和BAS 相當(dāng),比GA 算法和PSO 算法明顯快得多。
表2 K=2 時(shí)基于不同算法的壓縮模型重建圖像PSNR 評價(jià)(單位:dB)
表3 K=4 時(shí)基于不同算法的壓縮模型重建圖像PSNR 評價(jià)(單位:dB)
表4 4 種仿生算法運(yùn)行時(shí)間對比(單位:s)
本文在對BAS 算法運(yùn)行整理流程進(jìn)行分析后,為有效克服BAS 算法在對多維非線性優(yōu)化問題求解時(shí)存在的易陷入局部極小值問題,通過引入自適應(yīng)慣性權(quán)值,對衰減系數(shù)重新設(shè)計(jì),同時(shí)設(shè)定天牛位置的取值即問題求解空間上、下限建立了IBAS算法,并構(gòu)建IBAS-LMBP 算法圖像壓縮模型,利用IBAS 算法對BP 模型進(jìn)行權(quán)閾值初次尋優(yōu),然后利用LMBP 算法對得到的初級結(jié)果進(jìn)行二次尋優(yōu)。最終的實(shí)驗(yàn)表明,本文的設(shè)計(jì)是成功的,IBAS 算法對LMBP 算法模型的優(yōu)化效果明顯好于GA 算法、PSO算法和BAS 算法,最終建立的壓縮模型在保證高精度的同時(shí)還兼顧了速度。同時(shí)也進(jìn)一步拓寬了仿生算法的應(yīng)用范圍,為研究神經(jīng)網(wǎng)絡(luò)圖像壓縮提供了一種新的思路。