插值算法在動畫設計中的應用研究_第1頁
插值算法在動畫設計中的應用研究_第2頁
插值算法在動畫設計中的應用研究_第3頁
插值算法在動畫設計中的應用研究_第4頁
插值算法在動畫設計中的應用研究_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

插值算法在動畫設計中的應用研究插值算法在動畫設計中的應用研究題目插值算法在動畫設計中的應用研究專業(yè)名稱學生姓名指導教師畢業(yè)時間一、題目插值算法在動畫設計中的應用研究二、指導思想和目的要求數字圖像分辨率放大和縮小技術是數字電視的關鍵技術之一。

本題目要求:

1.學習數字圖像處理知識,重點學習用于數字圖像縮放的插值算法。

2.學習MATLAB仿真計算環(huán)境,學會MATLAB編程。

3.搜集并研究目前國際上主流的圖像放大/縮小技術,用MATLAB進行編程和實驗,對比其中重要算法的性能和運算量;4.通過學習和完成本題目,使學生掌握較深的圖像處理專業(yè)知識并鍛煉和提高獨立科研能力。

三、主要技術指標1.總結當前數字電視的視頻格式,圖像分辨率;2.研究用于圖像放大/縮小技術的三種經典插值算法,并編寫MATLAB程序實現所有算法;3.搜集并研究目前國際上主流的圖像放大/縮小技術,研究其中幾種主要的插值算法,并編寫MATLAB程序實現這幾種算法;4.對MATLAB程序進行圖像縮放實驗,對比這幾種算法的性能和運算量;四、進度和要求1.第1-3周:

學習數字圖像處理知識,重點學習用于數字圖像縮放的插值算法,查閱相關資料。

2.第3-6周:

搜集目前國際上主流的圖像放大/縮小技術,學習MATLAB仿真計算環(huán)境。

3.1/2畢設時間:

研究用于圖像放大/縮小技術的經典插值算法和主要的改進算法,用MATLAB編寫程序,進行數據試驗,最后進行幾種算法的性能和運算量對比分析。

4.第15-18周:

撰寫論文并答辯。

五、主要參考書及參考資料l章毓晉,《圖像處理與分析》,清華大學出版社2004年7月l[日]田村秀行著,《計算機圖像處理》,科學出版社2004年6月l閆敬文,《數字圖像處理技術與圖像圖形學基本教程》,科學出版社2002年6月l孫兆林,《MATLAB6.X數字圖像處理》,清華大學出版社2002年5月l陳貴明,張明照等,《應用MATLAB語言處理數字信號與數字圖像》,科學出版社2000年1月l張志涌,《精通MATLAB6.5》,北航電子版,2002年12月學生___________指導教師___________系主任___________本科畢業(yè)設計論文目錄摘要IABSTRACTII第一章緒論11.1什么是數字電視11.2數字電視的視頻格式特點11.3研究意義和論文內容安排2第二章數字圖像處理理論基礎32.1數學插值介紹32.1.1生產實踐上的插值問題32.1.2數學上常見的插值類型32.2數字圖像(image)數字圖像處理基本知識介紹32.2.1什么是數字圖像32.2.2數字圖像在計算機內的處理32.2.3數字圖像處理概述32.2.4數字圖像文件格式32.2.5什么是OpenGL32.2.6OpenGL的特點32.2.6OpenGL的基本原理3第三章傳統(tǒng)數字圖像縮放技術33.1數字圖像縮放技術概述33.1.1什么是數字圖像縮放33.1.2數字圖像縮放的算法概述33.2傳統(tǒng)的數字圖像縮放技術33.2.1最近鄰插值(NearestNeighborInterpolation)33.2.2雙線性插值(BilinearInterpolation)33.2.3雙三次插值(BicubicInterpolation)3第四章當今主流數字圖像縮放技術的算法34.1基于近臨插值與鄰域取平均的圖像縮小算法34.1.1問題引入34.1.2算法實現34.1.3算法評價34.2基于Ferguson曲面插值的圖像縮放方法34.2.1問題引入34.2.2算法實現34.2.3算法評價34.3帶系數自適應插值算法及其改進34.3.1問題引出34.3.2數學推導與算法實現34.4基于數字圖像邊緣提取的插值算法34.4.1問題引入34.4.2圖像定向插值的一般實現方法34.4.3圖像定向插值的簡化算法34.4.4算法評價34.5基于多幀圖像融合的提高圖像分辨率的方法34.5.1引言34.5.2提高分辨率圖像融合的關鍵技術34.5.3基于共軛梯度算法的圖像融合3第五章縮放算法處理結果及比較35.1概述35.2傳統(tǒng)圖像縮放算法處理結果35.3基于近鄰插值與鄰域取平均的圖像縮小算法性能分析35.4基于Ferguson曲面插值的圖像縮放方法分析35.5帶系數自適應插值算法及其改進分析35.6基于數字圖像邊緣提取的插值算法分析3第六章總結36.1論文總結36.2數字圖象縮放技術展望3致謝3參考文獻3畢業(yè)設計小結347本科畢業(yè)設計論文摘要本文先對當今數字電視的視頻格式特點做了一個總結,以數字電視的視頻格式變換為基礎,引出了數字圖像縮放這一很重要的技術。

接著在數學上從生產實踐上遇到的插值問題出發(fā),對插值技術做了一個必要的介紹,指明了目前數學的常見的插值類型。

為了對算法進行實現,性能與運算量做一個分析,引入了MATLAB這個功能強大的數學運算軟件,對其功能、用途以及在數字圖像處理上常用的函數做了介紹。

數字圖像縮放技術主要基于插值算法。

本文在介紹插值算法時首先介紹了最近鄰插值、雙線性插值和雙三次差值三種傳統(tǒng)插值算法,并從數學形態(tài)上分析其插值核函數引起的計算量和處理效果的不同。

在此基礎上研究了當今比較流行的幾種縮放算法,指出它們均是在傳統(tǒng)算法上的改進算法。

然后對三種傳統(tǒng)算法和四種改進算法編寫MATLAB程序進行了數據實驗,對四種改進算法分別進行必要的運算量與性能分析,并進行對比。

最后,對文中所述插值算法做了總結。

關鍵詞:

圖像縮放,插值技術,分辨率變換,數字電視,圖像處理ABSTRACTThispaperresearchesonimagescalingtechnologyinHDTV.Firstly,popularHDTVvideoformatsandinterpolationalgorithmsaresummarizedbriefly.Then,MATLAB,apowerfulmathematicalsoftware,isintroduced.Baseonintroductionofrelatedtechnologies,threekindsoftraditionalinterpolationalgorithmsandfeaturesoftheirkernelfunctionareanalyzed,includingNearestNeighborInterpolation,BilinearInterpolationandBicubicInterpolationAfterthat,fourpopularimagescalingalgorithmsareresearched,andallmentionedalgorithmsareprogrammedonMATLAB.PerformancesofeachalgorithmarecomparedafterdataexperimentsonMATLAB.Finally,interpolationalgorithmsusedinimagescalingaresummarized.KEYWORDS:

imagescaling,interpolationtechniques,resolutiontransform,HDTV,digitalimageprocessing第一章緒論隨著信息化時代的到來,數字化成為其中的主角,可以說信息化的實現是以信息化為前提的。

從計算機,互聯網,數碼相機,到數字電視無一例外的在演繹著這場數字化風暴。

尤其是數字電視,正在經歷一場數字化的革命。

但不管是數字電視,還是計算機都在利用數字化的視頻聲音與圖像等多媒體因素來沖擊人們的感官神經。

數字圖像的處理便成了其中的不可或缺的技術,數字電視接收各種圖像信號,包括標清信號,高清信號等,最終把這些不同分辨率的視頻信號轉化為同一種分辨率的視頻信號進行播放。

因此,數字圖像分辨率放大和縮小技術是所有數字顯示設備的關鍵技術之一。

1.1什么是數字電視數字電視,即HDTV,全稱HighDefinitionTelevision,直譯即為“高清晰度電視”,現一般簡稱“高清電視”。

與當前采用模擬信號傳輸的傳統(tǒng)電視系統(tǒng)不同,HDTV采用數字信號傳輸。

由于HDTV從電視節(jié)目的采集、制作到電視節(jié)目的傳輸以及用戶終端的接收全部實現數字化,因此HDTV可以帶給我們極高的清晰度,其分辨率最高可達1920×1080,幀速率高達60fps,視角也由原先的4:3變成了16:9,同時全面應用了數字技術,其信號抗噪能力也大大加強。

1.2數字電視的視頻格式特點電視機的圖像分辨率可以用它的固有分辨率來表示,固有分辨率是指電視機或其他顯示設備無需采用行倍頻、行內插或其他形式的分辨率變換手段而本身就能做到的圖像分辨率。

它通常用水平方向像素和垂直方向像素兩者相乘來表示。

例如1027*768對于如等離子電視、液晶顯示電視或數字光處理電視等一類固定像素的顯示器來說固有分辨率與它們的實際像素排列結構相同。

電視的畫面清晰度是以水平清晰度作為單位。

通俗地說,我們可以把電視機上的畫面以水平方向分割成很多很多掃描線,分得越細,這些畫面就越清楚。

而水平線數的掃描線數量也就越多。

清晰度的單位是電視行(TVline)也稱線意思是從水平方向上看相當于每行掃描線豎立起來,然后乘上)4:

3或者16:

9的寬高比,構成水平方向的總線數。

數字電視常見的視頻格式有[1]:

1)1080i格式,是標準數字電視顯示模式1125條水平掃描線1080條可見水平掃描線,16:

9,分辨率為1920*1080隔行/60Hz,行頻為33.75KHz。

2)720P格式,是標準數字電視顯示模式。

750條水平掃描線,720條可見水平掃描線,16:

9,分辨率為1280*720逐行/60Hz,行頻為45kHz。

3)1080P格式,是標準數字電視顯示模式,1125條水平掃描線,1080條可見水平掃描線,16:

9分辨率為1920*1080逐行掃描,專業(yè)格式。

以上標準中i表示隔行P表示逐行TDTV標準是高品質視頻信號標準包括1080i,720P,1080P。

需要注意的是,對于電視機處理能力(例如帶寬)的要求則是1080i數字高清電視的720P,1080I和1080P是由美國電影電視工程師協會確定的高清標準格式。

其中1080P被稱為目前數字電視的頂級顯示格式。

這種格式的電視在逐行掃描下能夠達到1920*1080的分辨率。

目前世界上只有60英寸以上的顯示屏才能夠顯示出1920*1080的信號。

目前市場上出現的所謂1080P高清數字電視并不能真正給消費者帶來1920*1080的圖像。

這些彩電只是能夠接收和處理1920*1080格式的信號而已。

1.3研究意義和論文內容安排無論是何種視頻格式的終端顯示設備,其高清信號源都是同樣的分辨率。

而當今數字電視信號終端顯示設備又是各種各樣的,從普通的CRT,到高檔的液晶,等離子,其顯示方式和大小不盡相同,隨著3G技術的逐漸成熟,越來越多的手機可以接收數字電視信號,在小小的屏幕上顯示。

這些都需要終端設備具備數字圖像的分辨率變換功能,因此數字圖像縮放技術顯得越來越重要,本文正是從這個背景出發(fā),來對傳統(tǒng)的以及當今主流的縮放技術做了一個系統(tǒng)研究。

第一章總結了數字電視的視頻格式特點;第二章介紹了圖像縮放的數學基礎;第三章和第四章是論文主要內容詳盡介紹傳統(tǒng)插值于主流插值算法并進行算法實現;第五章對論文所研究算法做了性能與運算量的對比最后是對算法的技術展望。

第二章數字圖像處理理論基礎2.1數學插值介紹2.1.1生產實踐上的插值問題[2]在生產和科研中遇到的函數,不能直接寫出表達式,而只能給定了在區(qū)間[a,b]中互異的n+1個點,,處的函數值。

實際中,常常希望找到這種函數的近似解析表達式,以便計算在諸之外的點處的函數值,函數的導數或積分,一種常用的辦法就是某個性質優(yōu)良,便于計算的函數類中選出一個函數,使。

尋找的方法就是插值法。

下面介紹插值法中涉及的一些感念和基本問題。

1.插值問題設為區(qū)間[a,b]上的連續(xù)函數,且已知點上的值為若存在一個簡單函數,使(2.1)則稱為的插值函數,點稱為插值節(jié)點,條件(2.1)稱為插值條件,所在區(qū)間[a,b]稱為插值區(qū)間,稱為被插值函數。

求插值函數的問題(方法)成為插值問題(方法)。

如果插值函數類是代數多項式,則相應的插值問題成為代數插值,如果是三角函數,則相應的插值問題成為三角插值。

在數字圖像縮放技術中運用的插值,一般均為代數插值。

2代數插值的幾何意義代數插值的幾何意義就是通過n+1個點做一條代數曲線使其近似于代數曲線y=f(x)。

3.插值余項由插值法的定義可知,在區(qū)間[a,b]上用y=f(x)時,在節(jié)點上有,而在其他點x處一般會有誤差。

令(2.2)它表示用近似f(x)的截斷誤差,常成為插值多項式的插值余項或截斷誤差。

一般地,越小,則近似程度越好。

2.1.2數學上常見的插值類型[3]數學上常見的插值類型有:

拉格朗日插值(Lagrange),牛頓插值(Newton),埃爾米特插值(Hermite),分段低次插值與三次樣條插值(B-spline).有關插值詳細問題基本在每本數值分析書上都有,有興趣的讀者可以參閱《數值分析》。

2.2數字圖像(image)數字圖像處理基本知識介紹2.2.1什么是數字圖像所謂數字圖像就是把傳統(tǒng)圖像的畫面分割成如圖2.1所示的被成為像素(pictureelement,簡稱pixel。

有時候也用pel這一簡寫詞)的小的離散點,各像素的灰度值也是用離散值即整數值來表示的。

數字圖像(digitalimagine)和傳統(tǒng)的圖像即模擬圖像(picture)是有差別的。

圖2.1數字圖像為了從一般的照片,景物等模擬圖像中得到數字圖像,需要對傳統(tǒng)的模擬圖像進行采樣與量化兩種操作(二者統(tǒng)稱為數字化)[5]。

1.采樣采樣(sampling)就是把在時間上和空間上連續(xù)的圖像變成離散點(采樣點,即像素)的集合的一種操作。

圖像基本上是在二維平面上連續(xù)分布的信息形式要把它輸入到計算機中,首先要把二維信號變成一維信號,因此要進行掃描(scanning)。

最常用的掃描方法是在二維平面上按一定間隔順序地從上方順序地沿水平方向的直線(掃描線)掃描,從而取出濃淡值(灰度值)的線掃描(Laster掃描)。

對于由此得到的一維信號,通過求出每一特定間隔的值,可以得到離散的信號。

對于運動圖像除進行水平,垂直兩個方向的掃描以外,還有進行時間軸上的掃描。

通過采樣,如設橫向的像素數為M,縱向的像素數為N,則畫面的大小可以表示為“M*N”個像素。

2.量化經過采樣,圖像被分解成在時間上和空間上離散分布的像素,但是像素的值(灰度值)還是連續(xù)值。

像素的值,是指白色-灰色-黑色的濃淡值,有時候也指光的強度(亮度)值或灰度值。

把這些連續(xù)的濃淡值或灰度值變?yōu)殡x散的值(整數值)的操作就是量化。

如果把這些連續(xù)變化的值(灰度值)量化為8bit,則灰度值被分成0-2552的256個級別,分別對應于各個灰度值的濃淡程度,叫做灰度等級或灰度標度。

在0-255的值對應于白-黑的時候,有以0為白,255為黑的方法,也有以0為黑,255為白0的方法,這取決于圖像的輸入方法以及用什么樣的觀點對圖像進行處理等,這是在編程時應特別注意的問題。

但在只有黑白二值的二值圖像的情形,一般設0為白,1為黑。

對連續(xù)的灰度值賦予量化級的,即灰度值方法有:

均勻量化(uniformquantization),線性量化(linerquantization),對數量化,MAX量化,錐形量化(taperedquantization)等。

3.采樣、量化和圖像細節(jié)的關系上面的數字化過程,需要確定數值N和灰度級的級數K。

在數字圖像處理中,一般都取成2的整數冪,即:(2.3)(2.4)一幅數字圖像在計算機中所占的二進制存儲位數b為:(2.5)例如,灰度級為256級(m=8)的512×512的一幅數字圖像,需要大約210萬個存儲位。

隨著N和m的增加,計算機所需要的存儲量也隨之迅速增加。

由于數字圖像是連續(xù)圖像的近似,從圖像數字化的過程可以看到。

這種近似的程度主要取決于采樣樣本的大小和數量(N值)以及量化的級數K(或m值)。

N和K的值越大,圖像越清晰。

2.2.2數字圖像在計算機內的處理設一幅圖像f(x,y),我們若對它作等間隔的采樣,在x,y方向上都取N個采樣點,總共為N×N個圖像點。

每一像素f(i,1=0,1,2,…N-1)就是點的灰度值。

形成離散化了的坐標和灰度值可以用一個矩陣來表示,其行和列的交點標出圖像的每個像素,該數字圖像矩陣可表示為圖2.2圖2.2數字圖像矩陣在計算機中對數字圖像進行處理時,實質上就是在對量化后的矩陣進行處理。

從原理上將,傳統(tǒng)的彩色圖像分析是基于RGB色彩空間的,但是RGB空間是顏色顯示空間,并不適合人的視覺特性,對目標物體的顏色模式描述復雜,各個分量之間冗余信息多,計算量大,而HSV空間通過對RGB顏色進行變換,能體現人眼辨別顏色特點。

在HSV空間,圖像特征明顯,易于進行邊緣檢測,分割和目標識別處理。

顏色可用明度、色調和飽和度來描述,人眼看到的任一顏色都是這三個特性的綜合效果。

明度是光作用于人眼時所引起的明亮程度的感覺,它與被觀察物體的發(fā)光強度有關,由于其強度不同,看起來可能亮一些或暗一些。

色調是當人眼看到一種或多種波長的光時所產生的彩色感覺,不同的波長產生不同的顏色感覺,如紅、橙、黃、綠、青、藍、紫等。

色調是彩色的最重要的屬性,是彩色光在“質”方面的特征。

如某物體在白光下呈現綠色,是因為它僅反射了綠色光分量。

飽和度是指顏色的純度,即摻入白色光的程度,飽和度的高低決定于彩色光中混入的白色光數量,白色光愈少,飽和度越高。

飽和度是彩色光在“量”的方面的特征。

人眼大概能識別128種不同的色調和130種不同的色澤(色飽和度級)。

2.2.3數字圖像處理概述[5]數字圖像處理的英文名稱是”DigitalImageProcessing”。

通常所說的數字處理是指用計算進行的處理,因此也稱計算機圖像處理(ComputerImageProcessing)。

總的來說,數字圖像處理包括以下幾項內容:(1)點運算點運算主要是針對圖像的象素進行加、減、乘、除等運算。

圖像的點運算可以有效的改善圖像的直方圖分布,這對提高圖像的分辨率以及圖像的均衡都是非常有益的。

(2)幾何處理幾何處理主要包括圖像的坐標變換、圖像的移動、縮小、放大、旋轉、多個圖像的配準以及圖像的扭曲校正等。

幾何處理是最常見的圖像處理手段,幾乎任何圖像處理軟件都提供了最基本的圖像縮放功能。

(3)圖像增強圖像增強的作用最主要是突出圖像中最重要的信息,同時減弱或除去不重要的信息。

常用的方法有直方圖增強和偽彩色增強等。

(4)圖像復原圖像復原的主要目的是去除干擾和模糊,從而恢復圖像的本來面目。

例如去除噪聲復原處理。

(5)圖像形態(tài)學處理圖像形態(tài)學是數學形態(tài)學的延伸,是一門獨立的研究學科。

利用圖像形態(tài)學技術,可以實現圖像的腐蝕、細化和分割等效果。

(6)圖像編碼圖像編碼研究屬于信息論中信源編碼的范疇,其主要宗旨是利用圖像信息的統(tǒng)計特性及人類的視覺特性對圖像進行高效編碼,從而達到壓縮圖像的目的。

(7)圖像重建圖像重建是一門新興的數字圖像處理技術,主要是利用采集的數據來重建出圖像。

其主要算法有代數法、迭代法、傅立葉反投影法和使用最廣泛的卷積反投影法等。

(8)模式識別模式識別也是數字圖像處理的一個新的研究方向。

當今的模式識別方法通常有三種:統(tǒng)計識別法、句法結構模式識別法和模糊識別法。

本文所討論的數字圖像縮放技術主要是圖像分辨率的變換,屬于數字圖像的幾何處理的范疇。

2.2.4數字圖像文件格式[6]1.計算機圖像常用文件格式1)PCX(WindowsPaintbrush)格式。

可處理1,4,8,16,24位等圖像數據。

文件內容包括:

文件頭(128字節(jié)),圖像數據擴展調色板數據。

2)BMP(WindowsBitmap)格式。

有1,4,8,24位非壓縮圖像,8位RLE(Run-lengthEncoded)圖像。

文件內容包括:

文件頭(一個BITMAPFILEHEADER數據結構),位圖信息數據塊(位圖信息頭BITMAPINFOHEADER和一個顏色表)和圖像數據。

3)HDF(HierarchicalDataFormat)格式。

有8位,24位光柵數據集。

4)JPEG(JointPhotographicExpertsGroup)格式,是一種成為聯合圖像專家組的圖像壓縮格式。

5)TIFF(TaggedImageFileFormat)格式。

處理1,4,8,24位非壓縮圖像,1,4,8,24位packbit壓縮圖像,一位CCITT壓縮圖像等。

文件內容包括:

文件頭,參數指針表與參數域,參數數據表和圖象數據四部分。

6)XWD(XWindowsDump)格式。

1,8位Zpixmaps,XYbitmaps,1位XYpixmaps。

7)TGA格式。

處理1,4,8,16,24位非壓縮圖像和行程編碼(RLE)圖像。

文件由5個固定長度字段和3個可變長度字段組成。

2.MATLAB圖像處理工具箱支持的四種基本圖像類型:

1)索引圖像索引圖像包括圖像矩陣與顏色圖數組,其中,顏色圖是按圖像中顏色值進行排序后的數組。

對于每個像素,圖像矩陣包含一個值,這個值就是顏色圖中的索引。

顏色圖為m*3雙精度值矩陣,各行分別指定紅綠藍(RGB)單色值。

Colormap=[R,G,B],R,G,B為值域為[0,1]的實數值。

圖像矩陣與顏色圖的關系依賴于圖像矩陣是雙精度型還是uint8(無符號8位整型)類型。

如果圖像矩陣為雙精度類型,第一點的值對應于顏色圖的第一行,第二點對應于顏色圖的第二行,依次類推。

如果圖像矩陣是uint8,有一個偏移量,第0點值對應于顏色圖的第一行,第一點對應于第二行,依次類推;uint8長用于圖形文件格式,它支持256色。

2)灰度圖像在MATLAB中,灰度圖像是保存在一個矩陣中的,矩陣中的每一個元素代表一個像素點。

矩陣可以是雙精度類型,其值域為[0,1];也可以為uint8類型,其數據范圍為[0,255]。

矩陣的每個元素代表不同的亮度或灰度級。

3)二進制圖像二進制圖像中,每個點為兩離散值中的一個,這兩個值代表開或關。

二進制圖像保存在一個由二維的由0(關)和1(開)組成的矩陣中。

從另一個角度講,二進制圖像可以看成為一個僅包括黑與白的灰度圖像,也可以看作只有兩種顏色的索引圖像。

二進制圖像可以保存為雙精度或uint8類型的雙精度數組,顯然使用uint8類型更節(jié)省空間。

在圖像處理工具箱中,任何一個返回二進制圖像的函數都是以uint8類型邏輯數組來返回的。

4)RGB圖像與索引圖像一樣,RGB圖像分別用紅,綠,藍三個亮度值為一組,代表每個像素的顏色。

與索引圖像不同的是,這些亮度值直接存在圖像數組中,而不是存放在顏色圖中。

圖像數組為M*N*3,M,N表示圖像像素的行列數。

2.2.5什么是OpenGLOpenGL是OpenGraphicsLibrary的縮寫,也是計算機3D圖形學方面的工業(yè)標準,它使用與硬件無關的設計原則,提供命令方式的圖形描述方法。

現在OpenGL被廣泛應用在各個領域,成為最優(yōu)秀的3D程序設計開發(fā)工具。

OpenGL支持各個計算機平臺不論在Linux還是Windows下都可以得到很好的兼容性。

OpenGL提供十分清晰明了的圖形函數,所以圖形繪制可以通過它的各種函數來實現。

OpenGL的庫函數大致可分為六類,其中大約包含300個函數原型,根據分類的不同,這些函數名的前綴也各不相同,分別為核心庫gl,用于常規(guī)的、核心的圖形處理;實用庫glu,通過核心庫的函數,為開發(fā)者提供相對簡單的用法,實現一些較為復雜的操作;輔助庫aux,提供窗口管理、輸入輸出處理以及繪制一些簡單三位物體;工具庫glut,主要提供基于窗口的工具;Windows專用庫wgl,用于連接OpenGL和Windows95/NT;Windows32API函數庫無專用前綴,用于處理像素存儲格式和雙幀緩存。

OpenGL庫遵循C調用約定,這意味著我們在C語言環(huán)境下可以很方便地調用OpenGL庫中的函數。

2.2.6OpenGL的特點OpenGL具有標準性:它是獨立于供應商的、跨平臺的圖形標準。

穩(wěn)定性:OpenGL已經在各種平臺上應用了7年多的時間,它具有明確而控制良好的規(guī)范,并具有向后兼容性,使現有的應用程序不會失效。

擴展性:通過OpenGL擴展機制,可以利用API進行功能擴充。

可縮放性:基于OpenGL的應用程序可以在各種系統(tǒng)上運行,其范圍從家用電腦到PC機,從工作站到超級計算機,可以說,OpenGL應用程序可以適應開發(fā)人員選擇的各種目標平臺。

易用性:OpenGL具有良好的結構,直觀的設計和邏輯命令。

可靠性和可移植性:在OpenGL兼容的任何硬件上,不管使用什么操作系統(tǒng),同一個應用程序的顯示結果均相同。

與其它圖形程序包相比,OpenGL應用程序的代碼行數少。

此外,OpenGL封裝了有關基本硬件的信息,使開發(fā)人員無需針對具體的硬件進行專門的設計。

在CAD/CAM/CAE、醫(yī)學圖像處理、虛擬現實、娛樂、廣告等不同領域中,開發(fā)人員可以利用OpenGL的這些能力自由發(fā)揮自己的創(chuàng)造性。

2.2.7OpenGL的基本原理(1)過程性而非描述性OpenGL非常直接地指定變換矩陣、光照、反走樣等方法的參數,來繪制二維、三維的圖形,但它不提供對復雜幾何圖形的描述或建模手段。

因此,發(fā)布OpenGL命令就是要指定怎樣產生一個特定的結果,而不是確切說明結果應該如何。

(2)執(zhí)行模式。

OpenGL命令的解釋模式是客戶/服務器的,即由客戶(應用程序)發(fā)布命令,命令由OpenGL服務器解釋和處理。

服務器可以運行在與客戶相同或不同的計算機上。

基于這一點,OpenGL是網絡透明的。

(3)圖元與命令。

OpenGL能夠繪制的圖元包括點、線和多邊形。

OpenGL可以在這幾種圖元模式之間選擇,而且設定一種模式不會影響其它模式。

OpenGL的命令總是順序處理,即先定義的圖元必須畫完之后,才會執(zhí)行后面的命令。

OpenGL的基本框架由四個函數組成。

(4)繪制方式。

OpenGL主要提供以下三維物體的繪制方式:線性繪制方式、深度優(yōu)先線框繪制方式、反走樣線框繪制方式、平面明暗處理方式、光滑明暗處理方式、加陰影和紋理方式、運動模糊繪制方式、大氣環(huán)境效果、深度域效果。

第三章傳統(tǒng)數字圖像縮放技術3.1數字圖像縮放技術概述3.1.1什么是數字圖像縮放一般來說,數字圖像縮放就是指圖像分辨率的變換。

包括由高分辨率圖像轉變?yōu)榈追直媛蕡D像和有低分辨率圖像轉變?yōu)楦叻直媛蕡D像。

數字圖像縮放是圖像處理領域里非常常見的操作,屬于數字圖像的幾何變換范疇。

隨著信息科技的發(fā)展,圖像縮放技術的應用范圍越來越廣,包括計算機圖像處理軟件中的應用,互聯網上的多媒體瀏覽,數字電視視頻傳輸與顯示領域,天文與氣象觀測領域,軍事領域,醫(yī)學圖像應用領域及數碼照片拍攝與處理領域。

總之只要有視頻多媒體的地方,有圖像處理的地方,都會有數字圖像縮放技術的身影。

隨著數字化時代的到來,該技術會越來越多的得到應用。

本文主要針對于數字電視領域圖像縮放,因此在算法上有較強的針對性,對于一些在數字電視領域難以實現的算法不做過多研究。

3.1.2數字圖像縮放的算法概述就目前來說,數字圖像縮放技術主要是應用數學上的插值理論,使用插值(Interpolation)算法。

傳統(tǒng)的圖像插值算法有最近鄰插值(NearestNeighborInterpolation),雙線性插值(BilinearInterpolation),雙三次插值(BicubicInterpolation)。

傳統(tǒng)插值算法在MATLAB中都有相應的工具函數,屬于比較成熟的算法。

在當今流行的插值算法多是對傳統(tǒng)插值算法的改進,包括基于近臨插值與鄰域取平均的圖像縮小算法,基于Ferguson曲面插值的圖像縮放方法,帶系數自適應插值算法及其改進,基于數字圖像邊緣提取的插值算法及改進,基于圖像增強技術提高圖像分辨率方法,隨著小波技術的發(fā)展,還有越來越多的基于小波的圖像插值算法。

但本人覺得由于基于圖像增強技術提高圖像分辨率方法和基于小波的圖像插值算法計算量過大,加上當今硬件處理速度的限制,很難應用于數字電視的視頻處理領域,達到實時處理的要求。

隨著硬件技術的發(fā)展有望應用于數字電視視頻處理領域。

3.2傳統(tǒng)的數字圖像縮放技術[7]由于圖像像素的灰度值是離散的,因此一般的處理方法是對原來在整數點坐標上的像素值進行插值生成連續(xù)的曲線(面),然后在插值曲線(面)上重新采樣以獲得放大或縮小圖像像素的灰度值。

以一維空間像素的灰度插值為例,圖3.1所示的是將原圖的5個像素縮小為4個像素的過程:

先根據~這五個像素的灰度值采用選定的插值算法生成插值曲線,再對該曲線進行重采樣得到縮小后的四個像素~,從而實現圖像的縮放。

下面簡要介紹目前常用的三種插值采樣方法。

圖3.1圖像縮放中的插值和重采樣3.2.1最近鄰插值(NearestNeighborInterpolation)1.近鄰插值數學概述插值核函數為:

其頻域變換為:

其核函數及對應的傅立葉變換頻譜圖如圖3.2為:

圖3.2近鄰插值核函數及其傅立葉變換頻譜圖2.實現方法將目的圖像的某個坐標通過計算得到一個浮點坐標,對其進行簡單的取整處理就得到一個對應原照片圖像的整數坐標,目的照片圖像坐標的像素值。

具體算法為:設處理的目的圖像的坐標為,圖像的縮放比例為m,則對應原圖像的浮點坐標為(x/m,y/m),對該坐標取整得到對應原照片圖像的整數坐標,目的照片圖像在該坐標的像素值。

顯然該方法就是取該浮點坐標最鄰近的左上角對應的像素值。

3算法評價對于二維圖像。

該法是“取待采樣點周圍4個相鄰像素點中距離最近的1個鄰點的灰度值

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論