freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計-dct快速算法分析及在圖像壓縮編碼中的應(yīng)用(編輯修改稿)

2025-01-08 20:12 本頁面
 

【文章內(nèi)容簡介】 到 24 位,如今的琢磨圖形常常使用 8 位來定義一個象素。 襄樊學(xué)院畢業(yè)論文(設(shè)計) 6 2. 3. 3. 差分調(diào)制 差分調(diào)制依賴余模擬數(shù)據(jù)趨于“平緩的變化,信號幅度撒謊那個的大的跳變是例外,而不是常規(guī)。在音頻數(shù)據(jù)中,只要信號的采樣率一定程度地高于信息本身的最大的頻率分量,那么大的跳變就不會產(chǎn)生。 音頻信號的差分調(diào)制通過編碼一個樣點與前一個樣點的不同來利用這一個特點。例如,如果 單頻樣點位 8 位,差分編碼系統(tǒng)可能用 4 位來編碼樣點之差,這就將輸入數(shù)據(jù)壓縮了 50%。這種壓縮方法中所產(chǎn)生的損失是來自于:使用標準的差分方法不可能總是精確地編碼。信號的增長可能快于比編碼的允許,或者,編碼可能太粗而不能容納下 的差別,差分編碼的有損性可以很好的處理,以產(chǎn)生出好的信號。 當壓縮圖形數(shù)據(jù)時,差分調(diào)制有很多問題。首先,圖形中的象素依賴于平緩的增加或減少時不可靠的,一幅圖中不同的分量間的明顯界限時常有的事情。這意味著,使用差分編碼的系統(tǒng)需要接受樣點間的大的不同和小的不同。這就限制了壓縮的效率。帶有數(shù)據(jù)長 結(jié)構(gòu)的許多圖象可以壓縮的很好。長結(jié)構(gòu)中的象素,彼此之間沒有什么差別或差別很少;但時,帶有突變部分的那些圖象不可能壓縮的很好。 通常,圖形圖象的差分的編碼似乎不產(chǎn)生非常強于最好的無損算法的壓縮結(jié)果,他當然也不會產(chǎn)生所需要的、對壓縮的數(shù)量級上的改進。 自適應(yīng)編碼(常常于差分編碼一同使用)根據(jù)前面看到的一些象素而對將要到來的一些象素的信息做預(yù)言。例如,如果一幅灰度級照片中的最新的十個象素的值都在 45 到 50 之間,那么自適應(yīng)壓縮系統(tǒng)可能預(yù)言,下一個象素很大可能也在這個范圍中,之后,類似于霍夫曼或算 術(shù)編碼那樣的基于熵的編碼方案可能給將來到來的各種代碼賦以概率值??梢源娴厥褂脡嚎s-擴展方法,將最細的粒度賦給最接近預(yù)言猜測的范圍。 襄樊學(xué)院畢業(yè)論文(設(shè)計) 7 第三章 JPEG 編碼算法 JPEG 壓縮編碼基礎(chǔ) 七十年代末八十年代初,研究工作開始著眼于新的圖像壓縮類型,希望能夠大大地優(yōu)于前面所討論過的那些非常一般的壓縮技術(shù)。到八十年代末,開始可為桌面系統(tǒng)的圖像處理而尋找應(yīng)用的工作,大多是是為 UNIX 和 Macintosh 工作站加入的協(xié)處理器卡的形式,這些卡的圖象質(zhì)量沒有任何可見退化的情況下,可以以 95%的比率執(zhí)行圖像的有 損壓縮。 同時,另一部分人開始發(fā)展一個國際標準,它能夠包括這些新的壓縮的種類。如果標準允許方便的圖形格式的互換,那么,顯然,對于各方面都是有利的,關(guān)于標準化工作,早期的擔心是:它會限制進一步革新的可能性。兩個標準化組織, CCITT 和 ISO,分別從涉及圖像壓縮的工業(yè)和學(xué)術(shù)兩個入手,并且,似乎已經(jīng)潛在的阻止了工作的負結(jié)果。 JPEG 算法于 JPEG 小組簡介 JPEG( Joint Photographic Experts Group)是由 ISO/IEC JTC1/SC2/WG8 和CCITT VIII/NIC 于 1986 年底聯(lián)合組成的專家小組。 JPEG 小組的工組事研究具有連續(xù)色調(diào)的圖像(包括灰度及彩色圖像)的壓縮算法,并將其制定為適用于大多數(shù)圖像存儲及通信局設(shè)備的標準算法, JPEG 小組于 1990 年提出 JPEG 算法的建議,并決定對建議中的算法不再修改,除非發(fā)現(xiàn)了危害壓縮算法標準的問題。 作為靜態(tài)圖像壓縮的標準算法, JPEG 算法必須滿足以下要求:算法獨立于圖像的分辨率;具有低于 1bit/象素的編碼率,并且能夠在五秒鐘內(nèi)建立圖像,以滿足實時要求;在壓縮比大約是 2 的情況下能夠無失真地恢復(fù)原圖像;支持順序編解碼和漸進 編解碼;以及對各種圖像成分及數(shù)據(jù)精度的自適應(yīng)能力;最后,要求編解碼設(shè)備簡單易實現(xiàn)。 JPEG 中允許四種編解碼模式: ( 1)基于 DCT 的順序模式( sequential DCTbased) ( 2)基于 DCT 的漸進模式( progressive DCTbased) ( 3)無失真模式( Lossless) ( 4)層次模式( hierarchical) . 其中,( 1)和( 2)是基于 DCT 的有損壓縮;( 3)是基于線性預(yù)測的無損壓縮;( 4)可以是 DCT 與線性預(yù)測的分層混合。 襄樊學(xué)院畢業(yè)論文(設(shè)計) 8 JPEG 算法可分為基本 JPEG 和擴展 ,即 Baseline System 與 Extended System。在Baseline System中生成的編碼文件,在 Extended System中一定可以正確解碼。 JPEG 壓縮 JPEG 有損壓縮算法在三個成功的階段中操作, 見下表 1 表 1 DCT Coefficient Lossless Transformation → Quantization → Compression 這三個步驟形成了一個強 有力的壓縮器。,可以將連續(xù)色調(diào)圖像壓縮到少于原大小的 10%,同時丟失很少的原始逼真度。 JPEG 中的二維 DCT 本文所討論的壓縮過程的關(guān)鍵是被稱為離散余弦變換( Discrete Cosine Transform, DCT)的數(shù)學(xué)變換。 Baseline System 中的 DCT 要求輸入數(shù)據(jù)是一個 8 8 的矩陣,且每個矩陣元素具有 8bit 精度,分為從- 128 到 127,故 DCT 變換前,象素值先要減去 128。所謂 8 8 的二維 DCT 是指將 8 8 的象素值矩陣變換成 88 系數(shù)矩陣。 8 8 象素值矩陣是由輸入圖像分塊得到的 ,若圖像的高或?qū)挷皇?8 的整數(shù)倍,必須擴展其下邊或右邊到 8 的整數(shù)倍。 下面給出了二維 DCT 的實用公式。 下面 是反離散余弦變化( IDCT)公式。式中表示的是 8 8 個象素值的矩陣進行計算的,產(chǎn)生出 8 8 頻率系數(shù)的矩陣。 8 8 的 DCT 及 IDCT 公式如下: 16 )12(c os16 )12(c os),()()(41).( 7 0 7 0 ?? vjuijifvCuCvuF i j ??? ? ?? ? ( 31) 16 )12(c os16 )12(c os),()()(41).( 7 0 7 0 ?? vjuivuFvCuCjif u v ??? ? ?? ? ( 32) 其中 : C(u)=21 u=0 C(u)=1 u? 0 C(v)=21 v=0 襄樊學(xué)院畢業(yè)論文(設(shè)計) 9 C(v)=1 v? 0 f(i,j):像素值 ,128? f(i,j) ? 127 F(x,y)= ?????? ??????? ? N unyN uxvuFvuCN 2 )2(c os2 )12(c os),())((2 ?? ( 33) C(ω )=21當ω =0 C(ω )=1,當ω =1, 2?, 7 這個公式初看起來讓人害怕,但它可以用相當直接的代碼段來表示。 for ( i = 0 。 i 8 。 i + + ) for ( j = 0 。j 8 : j + + ) { temp = 。 for ( x = 0 。 x 8 。 x ++ ) for ( y = 0 。 y 8 。 y ++ ) { temp += Cosines [ x ] [ i ]*Cosines[ y ][ j ]*pixel[ x ][ y ]。 } temp * = sqrt ( 2 * 8 ) * Coefficient[ i ][ j ]。 DCT [ i ][ j ] = INT_ROUND (temp)。 } DCT 的實現(xiàn) 測驗 DCT 算法時所表現(xiàn)出的首要的問題之一是計算 DCT 中每個元素所需要的世界緊緊地依賴于矩陣的大小。由于使用雙層嵌套循環(huán),所以計算量為:隨著 N 的增長,處理 DCT 輸出數(shù)組中每個元素所要的時間也將增長。 DCT 的實現(xiàn)將圖像分成更小更能處理的塊, JPEG 小組選用 8 8 的塊大小進行 DCT 計算。 雖然 DCT 大小的增加可能得到更好的壓縮,但是,達到減弱返回點的時間也不會很長。研究表明,象素之間的練習(xí)很快趨于減弱,因此,原點 15 或 20 個象素位以外的象素對于預(yù)言器來說用處不大,這意味著 64 64 的 DCT 塊比起將它分成四個 16 16 塊,不會有更好的壓縮,并且,越是不重要,花費的計算時間越多。 雖然,使用 16 16 的塊做為 DCT 計算的基礎(chǔ)的確是一個好的選擇,但是 JPEG 委員會選擇的就是 8 8的塊,這主要是,為了允許那些使用今天技術(shù)所建立起的使用實現(xiàn)。這類壓縮稱作“塊壓縮”。 矩陣相乘 襄樊學(xué)院畢業(yè)論文(設(shè)計) 10 上面顯示的 DCT 定義是相當直接的雙層嵌套循環(huán)。循環(huán)的內(nèi)層元素為每個要計算的元素執(zhí)行 N N 次,循環(huán)的內(nèi)層有兩個相乘操作和一個相加操作。 更為有效的 DCT 形式可能是使用矩陣操作進行計算。為實現(xiàn)這個操作。首先要建立稱為余弦變化矩陣( Cosine Transform Matrix)的一個矩陣 C,該矩陣由式 2- 3給出。 NjiC1, ? if i=0。 ( 34) ?????? ?? N ijCO SNC t 2 )122 ?( if i0 。 ( 35) 一旦建立了余弦變換矩陣,我們繞著它的主對角線旋轉(zhuǎn),將其轉(zhuǎn)置,這個轉(zhuǎn)置矩陣在代碼中表示 tC ,稱作轉(zhuǎn)置余弦變換矩陣。矩陣的建立只需在程序初始化時進行一次,兩個矩陣可以用相對短小的循環(huán)在同一時刻建立。見下面的代碼: for ( j = 0 。j N。j ++){ C[ 0 ][ j ] = / sqrt (N)。 Ct[ j ][ 0 ] = C[ 0 ][ j ]。 } for ( i = 1 。i N。 i ++) for ( j = 0。 j N 。j ++) { C[ i ][ j ] = sqrt ( )*cos( ( 2* j + 1 ) * i * pi / ( * N )) 。 Ct[ j ][ i ] = C[ i ][ j ]。 } } 一旦這兩個矩陣建立,我們就可以使用 DCT 函數(shù)的替代定義: DCT = C * 象素 * Ct ( 36) 在這個等式中,“ *”運算符表示的事矩陣相 乘,而不是一般的算術(shù)相乘。等式中的每個因子是一個 N*N 的矩陣,在 JPEG 算法以及本章所只用的程序中,矩陣為8 8。進行兩個矩陣相乘時,輸出矩陣中每個元素的運算代價時 N 個乘法操作和 N個加法操作,由于我們用兩個矩陣相乘來建立 DCT 矩陣,在變換后的 DCT 矩陣中的每個元素都是用 2N 個乘法和加大建立起來的,這一點,大大地改進了前面使用嵌套循環(huán)的 DCT 定義。 襄樊學(xué)院畢業(yè)論文(設(shè)計) 11 / * MatrixMultiply( temp , input , Ct )*/ for ( i = 0 。 i N。 i ++ ){ for ( j = 0 。j N 。
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1