羅正華,唐 喬
(成都大學(xué) 電子信息工程學(xué)院,四川 成都 610106)
由于人眼的視覺限制,眼睛獲取外界信息的能力有限,而在圖像獲取過程中,圖像不可避免地發(fā)生一些隨機(jī)性的抖動,容易產(chǎn)生視覺疲勞,從而影響信息量的獲取和觀察的效果.為了減少圖像的抖動,便采用了穩(wěn)像技術(shù).目前已有的穩(wěn)像方式有:基于視頻圖像序列數(shù)字信號處理的電子穩(wěn)像方法[1],基于伺服控制系統(tǒng)的機(jī)械穩(wěn)像方法[2]以及基于光學(xué)成像原理的光學(xué)穩(wěn)像方法[3].電子穩(wěn)像與機(jī)械穩(wěn)像以及光學(xué)穩(wěn)像相比較,其在體積、價格、精度、功耗等各個方面都具有非常大的優(yōu)勢,從簡單、有效的角度出發(fā),本設(shè)計采用灰度投影算法設(shè)計了一種電子穩(wěn)像系統(tǒng),對抖動圖像進(jìn)行有效處理,提高了處理速率,該技術(shù)可廣泛應(yīng)用于各種監(jiān)視設(shè)備上.
本設(shè)計中,基于DSP 的圖像穩(wěn)像系統(tǒng)包括圖像采集模塊、信號轉(zhuǎn)換模塊、圖像處理模塊、輸出顯示模塊,其中,圖像處理模塊主要采用電子穩(wěn)像技術(shù).其系統(tǒng)組成如圖1 所示.
電子穩(wěn)像系統(tǒng)工作原理:將圖像采集模塊捕捉的外界圖像信息,通過信號轉(zhuǎn)換電路轉(zhuǎn)換為電信號,其輸出的信號分為2 路:一路傳送到運(yùn)行算法的DSP6748 上,另一路傳送到可執(zhí)行的設(shè)備內(nèi).第一路信號在DSP6748 上應(yīng)用算法對圖像進(jìn)行運(yùn)動估計,通過計算得到抖動值,所計算出的偏移量通過信號生成器傳送到圖像處理機(jī)構(gòu).圖像處理機(jī)構(gòu)的功能是進(jìn)行運(yùn)動補(bǔ)償,即對當(dāng)前幀圖像根據(jù)像偏移量的大小進(jìn)行補(bǔ)償,這2 個過程是穩(wěn)像過程中的重要步驟.最后,通過視頻顯示器可以看到穩(wěn)像后的圖像.
圖1 電子穩(wěn)像系統(tǒng)結(jié)構(gòu)設(shè)計示意圖
電子穩(wěn)像系統(tǒng)的關(guān)鍵在于圖像處理模塊中的電子穩(wěn)像技術(shù),包括預(yù)處理[4]、運(yùn)動估計、確定幀間平移和旋轉(zhuǎn)參數(shù)、運(yùn)動補(bǔ)償,電子穩(wěn)像原理如圖2 所示.
圖2 電子穩(wěn)像原理圖
預(yù)處理部分對輸入圖像進(jìn)行處理,得到圖像信息,進(jìn)行運(yùn)動估計,確定幀間平移和旋轉(zhuǎn)參數(shù),以及計算運(yùn)動補(bǔ)償.運(yùn)動估計部分對圖像序列之間的整體運(yùn)動的偏移量進(jìn)行計算,這一部分在整個過程中最重要.確定幀間平移和旋轉(zhuǎn)參數(shù)后,根據(jù)運(yùn)動估計所確定的偏移量對于當(dāng)前幀待處理的圖像進(jìn)行沿反方向的平移或旋轉(zhuǎn)操作,以達(dá)到運(yùn)動補(bǔ)償,最后再把圖像輸出到顯示器上進(jìn)行顯示.
電子穩(wěn)像中運(yùn)動估計部分采用灰度投影算法[5].灰度投影算法是采用對圖像中連續(xù)變化的灰度信息進(jìn)行計算處理,該算法主要包括圖像的行列投影、投影濾波、相關(guān)運(yùn)算,利用了圖像的全部信息,使用一次行列互相關(guān)運(yùn)算,就可計算出圖像間的平移位移值,且平移位移值的增大,并不會造成計算量的急劇增大,所以灰度投影算法實(shí)時性好且精度高.可用于電子穩(wěn)像.
1)行列投影.
其中,row(i)為第n 幀圖像的第i 行的灰度值;pic 是第n 幀圖像上(i,j)位置處的像素的值;N 是行數(shù);rowproin(i)是第n 幀圖像的第i 行修正后的投影值.
2)投影濾波.
當(dāng)圖像的抖動位移值很大時,相鄰的圖像幀間的重合度較小,會造成投影的波形邊緣處灰度信息單一.在互相關(guān)運(yùn)算的過程中,將影響互相關(guān)的峰值.因此需要用邊緣余弦濾波的方法降低邊界處的投影值,來保留行列投影曲線的相似分布點(diǎn).
3)相關(guān)運(yùn)算.
其中,1 ≤w ≤2m +1.rown(i)和rowi(i)都表示第i 行灰度的投影值,前者是第n 幀的,后者是第i 幀的.第i 幀是參考幀,m 表示了運(yùn)動偏移值相對于參考幀的圖像在一側(cè)的搜索寬度.當(dāng)相關(guān)運(yùn)算得到最小值wmin的時候,就能夠得到在水平方向上第n 幀圖像的抖動量,如式(5)所示.
在本設(shè)計中,灰度投影算法采用Visual Studio 12 與opencv 2.4.8 聯(lián)合實(shí)現(xiàn),其部分代碼如下:
利用opencv 中的函數(shù),從攝像頭或者視頻文件中抓取一幀,創(chuàng)建灰度圖像,建立穩(wěn)定的圖像通道,對抖動的幀進(jìn)行特定平移,以達(dá)到穩(wěn)定圖像的效果.最后,壓縮送出穩(wěn)定后的圖像,結(jié)束占用資源.使用CCS5.5 進(jìn)行調(diào)試,最后移植入DSP.灰度投影算法在DSP 上的實(shí)現(xiàn)過程如圖3 所示.
圖3 灰度投影算法在DSP 上的實(shí)現(xiàn)流程圖
當(dāng)程序開始執(zhí)行時,首先定義輸入數(shù)據(jù)緩沖區(qū)和輸出數(shù)據(jù)緩沖區(qū),對所需DSP 資源進(jìn)行初始化與配置,然后,再讀入圖像數(shù)據(jù).在運(yùn)用灰度投影算法時,先選定參考幀,并開始處理每一幀.對當(dāng)前幀圖像,需根據(jù)像偏移量的大小進(jìn)行補(bǔ)償,最后輸出顯示穩(wěn)定的圖像.
本設(shè)計中,選取一抖動的視頻文件,通過計算機(jī)連接DSP 進(jìn)行電子穩(wěn)像處理,針對同一時刻,截取穩(wěn)像前后同一幀,結(jié)果如圖4 所示.
圖4 電子穩(wěn)像前后圖像
原圖像杯子位于正中,若選杯子正中的點(diǎn)為參考點(diǎn).抖動圖像(圖4(a))的參考點(diǎn)相對于原圖像右移.通過圖4 比較可以觀察到,使用電子穩(wěn)像后,同一幀圖像明顯發(fā)生了位移,即相對于抖動圖像(圖4(a))的參考點(diǎn),穩(wěn)定后的圖像(圖4(b))中的參考點(diǎn)的位置左移,使其參考點(diǎn)接近于原圖像.若每一幀圖像均以一特定參考點(diǎn)進(jìn)行平移,形成圖像的參考點(diǎn)皆與原圖像的位置一致,視覺便不會產(chǎn)生抖動效果,故可達(dá)到視頻穩(wěn)像目的.
本設(shè)計采用電子穩(wěn)像技術(shù),在電腦上實(shí)現(xiàn)灰度投影算法,通過CCS 5.5 軟件仿真后,移植入DSP6748,最終能夠?qū)Χ秳拥囊曨l進(jìn)行有效穩(wěn)像.整個設(shè)計原理清晰,計算簡單,效果明顯.此外,該設(shè)計具有可實(shí)現(xiàn)電子穩(wěn)像的多種算法,有很大的研究價值.
[1]郭振.基于灰度投影的電子穩(wěn)像系統(tǒng)及評價方法[D].天津:天津大學(xué),2009.
[2]朱娟娟.電子穩(wěn)像理論及其應(yīng)用研究[D].西安:電子科技大學(xué),2009.
[3]鐘平.機(jī)載電子穩(wěn)像技術(shù)研究[D].長春:中國科學(xué)院長春光學(xué)精密機(jī)械與物理研究所,2003.
[4]孫振興.基于DSP 的圖像增強(qiáng)技術(shù)研究[D].西安:西安電子科技大學(xué),2012.
[5]蒯偉,王明泉,邢慧.基于DM642 的塊匹配穩(wěn)像算法的研究[J].電視技術(shù),2012,36(11):41-43.