王欣+田益民+項(xiàng)宏峰
"""摘要:數(shù)字圖像處理中對運(yùn)動(dòng)模糊圖像復(fù)原技術(shù)的研究是近年來的研究熱點(diǎn)。在測量誤差允許范圍內(nèi),變速、非直線運(yùn)動(dòng)都可以看作分段的勻速直線運(yùn)動(dòng)的合成,所以對勻速直線運(yùn)動(dòng)模糊圖像的復(fù)原技術(shù)的研究更具有一定的代表性。文章主要通過對勻速直線運(yùn)動(dòng)模糊圖像的復(fù)原技術(shù)進(jìn)行展開討論,分析各種恢復(fù)算法的優(yōu)缺點(diǎn)。為使復(fù)原達(dá)到最佳效果,在選擇復(fù)原方法時(shí)要結(jié)合圖像的具體信息。文章通過對各種經(jīng)典復(fù)原技術(shù)的探討,希望能夠?qū)ζ渌倪M(jìn)的復(fù)原技術(shù)提供一定的技術(shù)借鑒。
關(guān)鍵詞:圖像復(fù)原;勻速直線運(yùn)動(dòng);復(fù)原技術(shù);退化模型;模糊圖像
中圖分類號(hào):TP17 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)21-0170-04
Abstract: Research on restoration of motion blurred image in digital image processing is a hot research topic in recent years. In the range of allowable error measurement, transmission and nonlinear motion can be seen or decomposed into piecewise uniform linear motion, Therefore, the research on restoration technology of uniform linear motion blurred image is more representative. This paper mainly through the uniform linear motion blurred image restoration technology to discuss, analysis of the advantages and disadvantages of various restoration algorithms. In order to make the best recovery, when choosing recovery method to combine the specific information of the image. In this paper, through the study of various classical restoration techniques, hope to provide some technical references for other improved restoration techniques.
Key words: image restoration; uniform linear movement; restoration technique;the blur model; fuzzy images
圖像復(fù)原是指修復(fù)退化或模糊的圖像,使得修復(fù)后的圖像的質(zhì)量接近真實(shí)圖像。圖像在轉(zhuǎn)換和傳送過程中,像質(zhì)會(huì)降低。在拍攝相片時(shí),當(dāng)景物與鏡頭的相對運(yùn)動(dòng)較大,成像質(zhì)量會(huì)比較模糊,這種情況稱之為圖像的運(yùn)動(dòng)模糊。運(yùn)動(dòng)模糊會(huì)造成圖像退化,對它的研究也一直是圖像復(fù)原領(lǐng)域的熱點(diǎn)課題。圖形復(fù)原的目的是改善圖像的視覺質(zhì)量,其主要原理是在已經(jīng)退化的圖像的基礎(chǔ)之上,通過建立相應(yīng)的退化模型和知識(shí)重建來復(fù)原原始圖像。運(yùn)動(dòng)模糊圖像復(fù)原是圖形復(fù)原領(lǐng)域的一個(gè)重要研究方向,而勻速直線運(yùn)動(dòng)模糊圖像復(fù)原在其中占有基礎(chǔ)性的地位,因?yàn)榉莿蛩僦本€運(yùn)動(dòng)都可以看作多個(gè)勻速直線運(yùn)動(dòng)的合成。勻速直線運(yùn)動(dòng)模糊有較多模型,其中最具代表性的是水平方向上的勻速直線運(yùn)動(dòng)模糊,通過推廣此種方法可以得到其他方向上的運(yùn)動(dòng)模糊處理方式。本文主要對常用的經(jīng)典復(fù)原方法進(jìn)行對比總結(jié)和概括,便于今后對其進(jìn)行針對性的研究。
1圖像復(fù)原技術(shù)
圖像退化,在數(shù)學(xué)上可以表示為卷積;圖像復(fù)原,亦即反卷積,是根據(jù)實(shí)際觀測到的數(shù)據(jù)和觀測模型以及噪聲統(tǒng)計(jì)特性的相關(guān)知識(shí)來估計(jì)原來的不失真的物理量[1]。
1.1圖像退化模型
勻速直線運(yùn)動(dòng)模糊圖像是在原始清晰圖像的基礎(chǔ)上,利用點(diǎn)擴(kuò)散函數(shù)進(jìn)行卷積運(yùn)算并通過添加不同類型的干擾噪聲信號(hào)而形成,可用公式(1)表示圖像退化的一般模型:
其中,表示模糊后圖像,表示理想的清晰圖像,表示卷積運(yùn)算,通常被稱為點(diǎn)擴(kuò)散函數(shù)(PSF),代表噪聲函數(shù)。假如沒有噪聲函數(shù)的干擾,圖像退化模型公式(1)可以表示為。
圖像退化過程的模型如圖1所示:
根據(jù)卷積定理,對式(1)兩邊進(jìn)行傅里葉變換,得:
公式(2)中,是運(yùn)動(dòng)模糊后的圖像經(jīng)過傅里葉變換后得到的頻譜圖,是理想的清晰圖像經(jīng)過傅里葉變換后得到的頻譜圖,是點(diǎn)擴(kuò)散函數(shù)經(jīng)過傅里葉變換后得到的頻譜圖,是噪聲函數(shù)經(jīng)過傅里葉變換得到的頻譜圖。
為使研究方便,假設(shè)模糊圖像不受噪聲函數(shù)的干擾,則(2)式可以表示為:
1.2 圖像復(fù)原模型
圖像復(fù)原模型如圖 2 所示。
其中, 表示“求逆”過程,或估計(jì)過程。圖像的復(fù)原過程可看作是僅已知退化圖像 并根據(jù)式(1),從 里求出復(fù)原圖像的某種近似的過程,如式( 4) 所示。
2圖像復(fù)原過程
2.1 建立圖像退化模型
假設(shè)物體在勻速直線運(yùn)動(dòng)中通過平面運(yùn)動(dòng)得到圖像,在和方向上分別用和表示,曝光時(shí)間為 那么勻速運(yùn)動(dòng)退化模型可以用公式( 5) 表示:
對式( 5) 進(jìn)行傅里葉變換, 并將公式( 5) 帶入到變換公式得到公式( 6)
對式(6)采用變換積分次序得到式(7)
則式(8)即為由勻速直線運(yùn)動(dòng)造成的模糊圖像的系統(tǒng)退化模型函數(shù)。
摘要:Flash是非常流行的一款多媒體矢量動(dòng)畫軟件,在互聯(lián)網(wǎng)、多媒體課件制作以及游戲軟件制作領(lǐng)域有廣泛的應(yīng)用,ActionScript作為Flash的腳本語言,在動(dòng)畫中應(yīng)用腳本語言,可以制作出交互性強(qiáng)、動(dòng)畫效果更加豐富的Flash動(dòng)畫。目前,F(xiàn)lash軟件的最新版本是cs6,對應(yīng)的腳本語言是AS3,但現(xiàn)在很多Flash動(dòng)畫制作教材中,關(guān)于Flash的腳本語言應(yīng)用的內(nèi)容仍然是AS2,該文結(jié)合多年的Flash動(dòng)畫制作教學(xué)體會(huì),總結(jié)利用AS3進(jìn)行腳本語言應(yīng)用的教學(xué)探討。
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)21-0162-02
1 Flash軟件及ActionScript的發(fā)展
Flash軟件常用版本經(jīng)歷了Flash 5、Flash mx(6)、Flash mx2004、Flash 8.0、Flash cs3、Flash cs4、Flash cs5、Flash cs6。flash的腳本發(fā)展,從最初發(fā)展到現(xiàn)在經(jīng)歷了三個(gè)過程,Actionscript1.0,Actionscript2.0到現(xiàn)在的Actionscript3.0,flash8.0之前的版本都使用的是as2.0以前的腳本,早期的flash 3中采用的是ActionScript 1.0,最簡單、最靈活、比較容易理解,這種狀況一直保持到flash 5,在flash mx (即flash 6)版本中得到的增強(qiáng);Flash MX2004 (即Flash 7)引入了ActionScript 2.0,ActionScript 2.0則相對比較規(guī)范,是1.0的升級(jí)版。首次將OOP(Object Oriented Programming,面向?qū)ο蟮某绦蛟O(shè)計(jì))引入Flash。它帶來了兩大改進(jìn):變量的類型檢測和新的class類語法。ActionScript 2.0的變量類型會(huì)在編譯時(shí)執(zhí)行強(qiáng)制類型檢測;從 flash CS3(即flash 9) 開始升級(jí)為ActionScript 3.0,更加系統(tǒng)、規(guī)范和完善的OOP。ActionScript 3不光有一個(gè)帶有新的版本號(hào)的ActionScirpt 語言,還有一個(gè)全新的虛擬機(jī)。ActionScript 1.0和ActionScript 2.0都使用是AVM1(ActionScript 虛擬機(jī)1),因此它們在需要回放時(shí)本質(zhì)上是一樣的,在ActionScript2上它增加了強(qiáng)制變量類型和新的類語法,它實(shí)際上在最終編譯時(shí)變成了ActionScript 1,而ActionScript 3.0運(yùn)行在AVM2上,一種新的專門針對ActionScirpt 3代碼的虛擬機(jī)。在編譯階段,as2采用的是AVM1(actionScript vitual machine),而as3采用的是AVM2。新一代虛擬機(jī)采用了OOP思想,在執(zhí)行速度上比起avm1也快了10倍,還提供了異常處理。同時(shí)使用AS2時(shí),一旦出錯(cuò),AVM1選擇的是靜默失敗,讓人根本不知道什么地方出錯(cuò)了,會(huì)浪費(fèi)大量的時(shí)間去查錯(cuò),而AVM2與目前主流的編譯器一樣,會(huì)有異常處理,運(yùn)行出錯(cuò)會(huì)輸出錯(cuò)誤提示,工作效率大大提高。
2 AS3與AS2的主要區(qū)別
新建一個(gè)flash文檔時(shí),會(huì)有新建文檔提示,我們可以選擇建立as3文檔或as2文檔。
在ActionScript2.0(AS2)文檔中,代碼可以寫在三個(gè)地方,1)寫在幀上;2)寫在影片剪輯上;3)寫在按鈕上。
在ActionScript3.0(AS3)文檔中,代碼只能寫在幀中,不像AS2那么隨意,如果控制按鈕或影片剪輯,那就只能靠實(shí)例名來控制了。其實(shí)這也是為了規(guī)范,和其他編程軟件一樣,要控制哪個(gè)組件,你就得有這個(gè)組件的名字。
AS3中帶下劃線的變量不需要下劃線了,如_x, _y,變?yōu)閤,y,其他的如_root、_visible、_width、_height 等都是直接去掉下劃線;_xscale 變?yōu)?scaleX, _yscale 變?yōu)?scaleY,
scale 值的表示方式改變:
AS2 _xscale = 200 表示 200%
AS3 scaleX = 2 表示 200%
3 ActionScript3.0文檔應(yīng)用例子
3.1 動(dòng)畫播放停止的腳本
創(chuàng)建一個(gè)ActionScript3.0動(dòng)畫,新建一個(gè)按鈕圖層,并拖入兩個(gè)按鈕,給單擊實(shí)現(xiàn)停止的按鈕實(shí)例命名為an1, 給單擊實(shí)現(xiàn)播放的按鈕實(shí)例命名為an2,為實(shí)現(xiàn)動(dòng)畫測試時(shí)停止在第一幀,單擊播放和停止按鈕實(shí)現(xiàn)控制動(dòng)畫,可新建as圖層,并在as圖層第一幀寫入如下腳本:
stop();
an1.addEventListener(MouseEvent.CLICK,a1);
function a1(e:MouseEvent) {
stop();
}
an2.addEventListener(MouseEvent.CLICK,a2)
function a2(e:MouseEvent) {
play();
}
3.2 帶有影片剪輯元件動(dòng)畫播放停止的實(shí)現(xiàn)腳本
如果動(dòng)畫中應(yīng)用有影片剪輯元件,會(huì)看到開始測試,影片剪輯元件是播放的,單擊停止按鈕,影片剪輯元件不起作用,可以作以下改動(dòng)實(shí)現(xiàn),在屬性面板給影片剪輯實(shí)例命名ypjj,腳本更改為:
stop();
ypjj.stop();
an1.addEventListener(MouseEvent.CLICK,a1);
function a1(e:MouseEvent) {