《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > JPEG2000核心算法的研究及DSP實(shí)現(xiàn)
JPEG2000核心算法的研究及DSP實(shí)現(xiàn)
計(jì)算機(jī)與信息技術(shù)
郭妍 孫龍杰
摘要: 為了實(shí)現(xiàn)對圖像的高效壓縮,在這里使用了DWT變換和EBCOT算法,并給出兩點(diǎn)改進(jìn)方法。通過將改進(jìn)的算法移植到DSP開發(fā)板上,可以看出圖像在高壓縮比的重構(gòu)圖像仍具有較高的圖像質(zhì)量,結(jié)果表明移植到DSP上的JPEG2000編碼算法代碼仍具有良好的壓縮性能,在圖像壓縮處理中有較好的嘗試應(yīng)用。
關(guān)鍵詞: DSP JPEG2000 圖像壓縮
Abstract:
Key words :

1 引言
    JPEG2000是新一代靜止圖像壓縮國際標(biāo)準(zhǔn),具有優(yōu)越的圖像壓縮性能和高的圖像質(zhì)量,不僅克服了傳統(tǒng)JPEG靜止圖像壓縮標(biāo)準(zhǔn)在高壓縮時(shí)出現(xiàn)方塊效應(yīng)的缺點(diǎn),還提供了圖像漸進(jìn)傳輸、圖像質(zhì)量可伸縮及感興趣區(qū)域編碼等特性,可以應(yīng)用于數(shù)碼相機(jī)、醫(yī)療圖像、網(wǎng)絡(luò)傳輸?shù)确矫妗?br /> 2  JPEG2000標(biāo)準(zhǔn)基本原理
2.1 JPEG2000編解碼框架
    JPEG2000編碼器編碼主要有預(yù)處理、小波變換、量化和熵編碼等步驟,相對于編碼過程,該系統(tǒng)的解碼過程比較簡單[1]。JPEG2000編解碼器框圖如圖1和圖2所示。

圖1  JPEG2000編碼器框圖

圖2  JPEG2000解碼器框圖
2.2  JPEG2000編碼的核心算法
    1) DWT變換
    通過離散小波變換多級小波分解,小波系數(shù)既能表示圖像片中局部區(qū)域的高頻信息也能表示圖像片中的低頻信息。這樣,即使在低比特率的情況下,也能保持較多的圖像細(xì)節(jié),另外,下一級分解得到的系數(shù)所表示圖像在水平和垂直方向的分辨率只有上一級小波系數(shù)所表示的圖像的一半,所以通過對圖像的不同級進(jìn)行解碼,就可以得到具有不同空間分辨率的圖像。
    2) EBCOT算法
    EBCOT算法的基本思想是將小波變換以后的子帶劃分為大小固定的碼塊,對碼塊系數(shù)量化,按照二進(jìn)制位分層的方法,從高有效位平面開始,依次對每個(gè)位平面上的所有小波系數(shù)位進(jìn)行三個(gè)通道掃描建模(重要性傳播編碼通道、幅度精煉編碼通道、清除編碼通道),即位平面編碼,生成上下文和0、1符號對,然后對這些上下文和符號對進(jìn)行上下文算術(shù)編碼,形成碼塊碼流,完成第一階段編碼塊編碼;最后根據(jù)一定參數(shù)指標(biāo)如碼率、失真度,按率失真最優(yōu)原則在每個(gè)獨(dú)立碼塊碼流中截取合適的位流組裝成最終的圖像壓縮碼流,完成第二階段碼流組裝過程[2]。
2.3  EBCOT算法中塊編碼算法的改進(jìn)研究及實(shí)現(xiàn)
    在JPEG2000編解碼系統(tǒng)中,EBCOT算法是其重要的組成部分。而EBCOT算法中的第一階段塊編碼又是整個(gè)算法的核心,它占用了大量的編碼時(shí)間,無論是無損壓縮還是有損壓縮,EBCOT算法中的位平面編碼時(shí)間都占到整個(gè)編碼耗時(shí)的50%以上[3][4]。所以,自從EBCOT算法提出后,由于第一階段塊編碼的運(yùn)算量比較大、編碼速度較慢,針對這種情況的優(yōu)化改進(jìn)研究很有必要。
    圖3為barbara圖像(256×256)在位平面編碼時(shí)三個(gè)通道系數(shù)編碼數(shù)量變化示意圖。圖中通道1表示重要性通道,通道2表示幅度精練通道,通道3表示清除通道。由圖可以看出,在最高位平面MSB,所有系數(shù)都只在清除通道進(jìn)行編碼。重要性傳播通道中編碼的系數(shù)數(shù)量先是增加,然后由于在重要性傳播通道中的系數(shù)已變?yōu)橹匾模栽谥匾詡鞑ネǖ乐芯幋a的系數(shù)數(shù)量又逐漸減少。在低位平面(0、1、2)大部分系數(shù)在幅度精練通道中編碼,只有一少部分在重要通道中編碼,沒有系數(shù)在清除通道中編碼。在整個(gè)掃描編碼過程中,三次掃描要形成三次上下文并判斷其所屬編碼通道,這樣就會使編碼時(shí)間大幅度增加。
    根據(jù)對圖3的數(shù)據(jù)分析研究,本文給出兩種針對于位平面編碼的改進(jìn)方法[5]。
    (1)位平面0、1、2清除通道編碼省略法。由圖3可以看出在較低位平面(即位平面0、1、2)上清除通道實(shí)際編碼的像素是很少的,幾乎為零。所以花費(fèi)時(shí)間對較低位平面上的清除通道進(jìn)行掃描編碼是無意義的。本論文就此給出一種改進(jìn)方案即省略較低位平面的清除通道編碼,達(dá)到改進(jìn)標(biāo)準(zhǔn)算法的目的。該編碼模塊與標(biāo)準(zhǔn)算法此部分代碼相近,只是對編碼條件進(jìn)行了改變。
    (2)位平面6、7一次掃描法。由圖3可以看出在高位平面(位平面6和位平面7)重要性傳播通道和幅度精練通道的編碼量都很低,趨近于零,而清除編碼通道編碼的像素量相反卻很高。在標(biāo)準(zhǔn)算法的掃描機(jī)制下,對圖像質(zhì)量影響很小的高頻子帶像素編碼,掃描算法必須從最高平面由高向低分三次完整的掃描。本文給出一次掃描法對較高位平面進(jìn)行改進(jìn),即在一次掃描過程中對最高位平面和次高位平面所有系數(shù)進(jìn)行編碼。在一次編碼一個(gè)系數(shù)時(shí),通過上下文的形成,先確定此系數(shù)屬于哪個(gè)通道。然后,此系數(shù)按所屬通道馬上進(jìn)行相應(yīng)編碼。這樣就能減少兩次掃描,節(jié)約了編碼時(shí)間,從而能夠提高編碼效率。本文處理的對象主要是8比特的灰度圖像。有損壓縮采用9/7小波變換。

圖3  位平面編碼三個(gè)通道系數(shù)編碼數(shù)量變化示意圖
    通過對壓縮性能研究發(fā)現(xiàn),在壓縮比較小時(shí)本文改進(jìn)算法比標(biāo)準(zhǔn)算法的壓縮性能約低0.4db左右,在壓縮比較大時(shí)兩者的壓縮性能相一致,保留了JPEG2000優(yōu)異的壓縮性能;從編解碼時(shí)間來看,在有損壓縮編碼執(zhí)行時(shí)間上,本文所給出的改進(jìn)算法比標(biāo)準(zhǔn)算法時(shí)間縮短8%到12%,解碼時(shí)間縮短2%到5%,提高了編碼效率,達(dá)到了改進(jìn)的目的。
3  JPEG2000標(biāo)準(zhǔn)中改進(jìn)算法的DSP實(shí)現(xiàn)
3.1 DSP硬件開發(fā)平臺
    本文使用評估板是北京聞亭公司的TDS642,板上的DSP芯片是TMX DM642,BGA548封裝,內(nèi)部工作時(shí)鐘為600M,外部總線時(shí)鐘為100M,計(jì)算能力高達(dá)4.8億指令每秒。
    該平臺提供了豐富的外圍接口。板上有兩個(gè)復(fù)合視頻(PAL/NTSC/SECAMS)輸入和1個(gè)復(fù)合視頻輸出端口;立體聲輸入/出或單一麥克風(fēng)輸入端口;提供兩個(gè)UART、以太網(wǎng)接口、子板接口、PC104接口和JTAG接口[6][7]。板上還提供了4M Bytes的Flash存儲器,位于DM642的CE1地址空間,寬度為8bits,F(xiàn)PGA擴(kuò)展了3根地址線,把Flash分成8頁,F(xiàn)lash 的第0頁的前半頁存放用戶的自啟動程序,后半頁存放FPGA程序,第1頁尾用戶存放數(shù)據(jù)空間,第2頁至第8頁用于存放用戶程序。
3.2 核心算法的DSP實(shí)現(xiàn)
    (1)算法總體框架。本文算法基于DM642EVM實(shí)現(xiàn)時(shí)主要分為兩個(gè)大的模塊(如圖4),第一部分為DWT變換模塊,它將輸入圖像數(shù)據(jù)變換為一系列的小波系數(shù);第二部分為EBCOT算法模塊,將量化后的的小波系數(shù)編碼生成壓縮碼流。硬件開發(fā)平臺結(jié)構(gòu)框圖如圖5所示。

圖4 算法框架圖

圖5 算法硬件開發(fā)平臺結(jié)構(gòu)框圖
    (2)內(nèi)存分配。對于圖像數(shù)據(jù)的處理,往往涉及到大量的復(fù)雜的數(shù)據(jù)尋址計(jì)算,對于復(fù)雜的尋址計(jì)算,其耗費(fèi)CPU的計(jì)算量可能比實(shí)際數(shù)據(jù)操作的計(jì)算量還大。所以要加快CPU對數(shù)據(jù)的訪問速度,不但要求存儲器本身的速度快,而且還需要一個(gè)合理的數(shù)據(jù)結(jié)構(gòu)來簡化CPU對地址的計(jì)算。另外,DM642對數(shù)據(jù)的訪問技術(shù),如Cache、EDMA和寬bit數(shù)據(jù)直接讀寫等,都是基于存儲地址的連續(xù)性。基于以上考慮,本文在內(nèi)存分配及定位時(shí),依據(jù)以下大的原則:第一,在滿足精度要求的情況下,使用較短的數(shù)據(jù)類型;第二、大的數(shù)據(jù)塊,如原始圖像、重構(gòu)圖像存儲在片外SDRAM;第三、關(guān)鍵數(shù)據(jù)、小的數(shù)據(jù)塊,比如運(yùn)算時(shí)的系數(shù)、系統(tǒng)堆棧、三個(gè)通道掃描都需要頻繁的訪問數(shù)據(jù)區(qū)和上下文標(biāo)志區(qū)等,存放到片內(nèi)存儲器;第四、對L2級配置足夠的Cache以便CPU對數(shù)據(jù)的快速讀寫;第五、對于具有運(yùn)算相關(guān)性的數(shù)據(jù),應(yīng)在內(nèi)存中按序連續(xù)排放。當(dāng)涉及到片內(nèi)外數(shù)據(jù)塊的搬移操作時(shí),可由DM642的EDMA單元去完成,它可與CPU并行工作,不占用CPU的計(jì)算周期[8]。
    (3)圖像數(shù)據(jù)的讀寫。由于本文工作主要完成針對圖像的壓縮功能,不涉及圖像采集,所以在圖像數(shù)據(jù)的輸入輸出上做了適當(dāng)?shù)奶幚怼?紤]到CCS的Simulator完全支持C/C++語言,因此原始圖像數(shù)據(jù)的輸入采用C語言中的頭文件形式,小波變換模塊,EBCOT算法模塊采用存放在PC機(jī)的數(shù)據(jù)文件形式。本文主要采用頭文件和二進(jìn)制數(shù)據(jù)文件的形式,將圖像的非文件頭部分的所有數(shù)據(jù)通過“fprintf(fp,“%3d,”,image_in [i][j])”語句寫到.h文件中。
    (4)DWT的實(shí)現(xiàn)。由于DM642為定點(diǎn)處理器,不適合于浮點(diǎn)運(yùn)算,所以本文選擇LeGall(5,3)整數(shù)濾波器完成JPEG2000中的小波變換。在進(jìn)行小波變換時(shí),首先定義兩個(gè)與圖像塊大小相等的存儲緩沖器,一個(gè)是圖像片數(shù)據(jù)的輸入緩存Buf,一個(gè)是用來臨時(shí)存放圖像片數(shù)據(jù)經(jīng)小波變換后的結(jié)果緩存TempBuf。每經(jīng)過一級小波變換,圖像片數(shù)據(jù)都要先后兩次經(jīng)過integer(5,3)的低通和高通濾波。TempBuf中保存的高通濾波數(shù)據(jù)經(jīng)integer(5,3)濾波器處理后,得到HL子帶和HH子帶的小波變換系數(shù)。最后將變換結(jié)果存放到輸入緩存Buf中。若要進(jìn)行下一級分解,只需對Buf中LL子帶進(jìn)行同樣處理。
    (5)EBCOT算法的實(shí)現(xiàn)。EBCOT算法是JPEG2000編碼系統(tǒng)中耗時(shí)最大的一個(gè)部分,因此對這一部分進(jìn)行優(yōu)化實(shí)現(xiàn)對整個(gè)系統(tǒng)的性能提高很有意義。在PC機(jī)上,EBCOT編碼中的每個(gè)通道都是被獨(dú)立處理的。因此,在DM642上實(shí)現(xiàn)的時(shí)候,本文采用并行性技術(shù)來優(yōu)化代碼,加快程序的執(zhí)行速度,比如在取位平面數(shù)據(jù)的時(shí)候可以和構(gòu)造上下文模型并行處理,但是并不是簡單的并行處理,當(dāng)要形成通道二的上下文模型時(shí),其鄰域的數(shù)據(jù)在處理通道一的時(shí)候己經(jīng)被改變。這樣做可以增加DM642功能單元的利用率,充分發(fā)揮出它的并行計(jì)算能力。
3.3 實(shí)驗(yàn)結(jié)果
    本文實(shí)驗(yàn)基于Windows XP操作系統(tǒng)、CPU Intel Pentium(R)4 2.4GHz、512M內(nèi)存、CCS編譯環(huán)境,程序通過USB仿真器下載到DM642EVM開發(fā)板上進(jìn)行,采用LeGall(5,3)小波,處理圖像為512×512的lena和barbara圖像。經(jīng)測試,壓縮比為16:1時(shí)編碼器編碼相應(yīng)耗時(shí)如表1所示。

實(shí)驗(yàn)給出了lena圖像在8:1、16:1、32:1三種壓縮比下的重構(gòu)圖像,并分別給出了與原始圖像的峰值信噪比,如圖6所示。
    表1數(shù)據(jù)表明,編碼器基于DSP的編碼耗時(shí)相比基于PC的耗時(shí)有所增加,是因?yàn)榇a在DM642EVM硬件平臺上運(yùn)行時(shí)需要持續(xù)的通過USB仿真器和PC機(jī)交換數(shù)據(jù),從而增加了時(shí)間的開銷。從圖6中的PSNR值可知,lena圖像在較高壓縮比下的重構(gòu)圖像仍具有較高的圖像質(zhì)量。就主觀評價(jià)來講,壓縮比為8:1和16:1的重構(gòu)圖像與原始圖像差別細(xì)微,視覺效果好;壓縮比為32:1的重構(gòu)圖像略有失真。實(shí)驗(yàn)結(jié)果表明,移植到DSP上的JPEG2000編碼算法代碼仍具有良好的壓縮性能。

圖6  barbara圖像編碼圖
4  結(jié)束語
    為了實(shí)現(xiàn)對圖像的高效壓縮,在這里使用了DWT變換和EBCOT算法,并給出兩點(diǎn)改進(jìn)方法。通過將改進(jìn)的算法移植到DSP開發(fā)板上,可以看出圖像在高壓縮比的重構(gòu)圖像仍具有較高的圖像質(zhì)量,結(jié)果表明移植到DSP上的JPEG2000編碼算法代碼仍具有良好的壓縮性能,在圖像壓縮處理中有較好的嘗試應(yīng)用。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美国产日韩在线观看| 欧美日韩在线观看视频| 欧美亚洲免费| 一本一本久久a久久精品牛牛影视| 激情综合色综合久久| 国产欧美日韩在线播放| 欧美日韩在线直播| 欧美精品九九| 欧美大成色www永久网站婷| 久久看片网站| 久久久国产午夜精品| 欧美一级久久| 亚洲欧美日韩精品| 亚洲制服丝袜在线| 亚洲一区二区在线视频| 一区电影在线观看| 日韩一本二本av| 亚洲毛片一区二区| 日韩午夜三级在线| 99热精品在线| 一区二区不卡在线视频 午夜欧美不卡在| 91久久综合| 亚洲精品日韩激情在线电影 | 亚洲午夜日本在线观看| 一区二区三区国产| 在线一区亚洲| 亚洲视频在线观看视频| 亚洲一区视频在线| 午夜精品电影| 欧美制服丝袜第一页| 欧美一区久久| 亚洲电影观看| 日韩小视频在线观看专区| 在线亚洲欧美视频| 性视频1819p久久| 久久另类ts人妖一区二区| 欧美v国产在线一区二区三区| 欧美激情第五页| 国产精品扒开腿做爽爽爽视频| 国产精品视频久久久| 国产一区二区三区黄视频| 伊人久久av导航| 亚洲美女中出| 亚洲一区二区在线| 久久精品日韩欧美| 99xxxx成人网| 午夜精品久久久久久久久久久久久| 久久精品视频免费播放| 欧美不卡三区| 国产精品豆花视频| 国内精品视频在线播放| 亚洲日本视频| 一区二区欧美国产| 欧美尤物一区| 日韩一级在线观看| 先锋亚洲精品| 欧美国产国产综合| 欧美日韩亚洲视频| 欧美激情一区在线| 国产精品videosex极品| 国产综合在线视频| 亚洲伦理一区| 欧美一级大片在线观看| 亚洲欧洲精品天堂一级| 亚洲欧美国产另类| 老司机67194精品线观看| 欧美午夜精品电影| 国内激情久久| 一本在线高清不卡dvd| 欧美在线视频不卡| 一区二区三区视频在线观看 | 欧美日韩另类国产亚洲欧美一级| 国产农村妇女毛片精品久久莱园子| 在线播放亚洲| 亚洲在线播放电影| 日韩视频不卡| 久热精品视频在线| 国产精品爱啪在线线免费观看| 韩日成人在线| 亚洲一区三区视频在线观看| 亚洲精品无人区| 欧美一区二区三区免费看 | 久久久欧美精品| 国产欧美一区二区三区另类精品 | 国产精品亚洲综合一区在线观看| 国产精品wwwwww| 午夜宅男欧美| 亚洲三级视频在线观看| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 在线观看一区| 亚洲午夜女主播在线直播| 亚洲国产一区二区视频| 午夜在线视频一区二区区别| 欧美国产精品va在线观看| 国产日韩欧美高清免费| 一个色综合av| 日韩亚洲欧美成人| 免费日韩成人| 国产深夜精品| 国产精品99久久久久久久久| 日韩视频不卡| 欧美 日韩 国产精品免费观看| 国产日本欧美一区二区| 一区二区久久| 99在线精品视频在线观看| 免费久久99精品国产自在现线 | 欧美天天视频| 日韩视频在线观看一区二区| 亚洲精品国产精品国自产观看| 久久久久久一区二区三区| 国产精品永久在线| 一区二区三区四区五区精品| 一区二区三区高清不卡| 欧美黄色大片网站| 亚洲国产日韩欧美在线99| 亚洲第一在线综合网站| 久久久久久久久蜜桃| 国产欧美va欧美va香蕉在| 国产精品99久久久久久白浆小说| 亚洲视频第一页| 欧美日韩视频免费播放| 亚洲精品韩国| 一区二区三区精品在线| 欧美精品日韩一本| 亚洲破处大片| 9i看片成人免费高清| 欧美日韩极品在线观看一区| 亚洲狼人综合| 亚洲天堂网在线观看| 国产精品二区在线| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 国产麻豆视频精品| 欧美一区二区三区婷婷月色 | 亚洲一区二区三区在线| 午夜精品久久久久久久99黑人 | 国产精品久久久一区二区三区 | 午夜亚洲福利| 久久精品亚洲精品| 黑人巨大精品欧美一区二区| 欧美在线视频观看免费网站| 久久婷婷国产麻豆91天堂| 尤物精品在线| 99在线|亚洲一区二区| 欧美日韩高清在线一区| 亚洲午夜精品一区二区三区他趣| 亚洲欧美在线播放| 国模精品一区二区三区| 亚洲黄色免费电影| 欧美激情国产日韩| 在线视频欧美日韩| 欧美在线亚洲在线| 韩日在线一区| 亚洲美女视频网| 国产精品久久91| 欧美一区二区三区另类| 麻豆成人在线播放| 亚洲美女网站| 久久精品日韩一区二区三区| 在线精品观看| 亚洲色图综合久久| 国产农村妇女毛片精品久久莱园子 | 国产精品素人视频| 久久精品卡一| 欧美日韩国产综合久久| 亚洲一区在线视频| 美女福利精品视频| 一本久道综合久久精品| 久久精品国产亚洲精品| 亚洲福利国产精品| 亚洲欧美另类综合偷拍| 国语精品中文字幕| 亚洲视频免费在线| 国产欧美亚洲日本| 亚洲另类一区二区| 国产九区一区在线| 亚洲精品社区| 国产精品入口66mio| 最新亚洲一区| 国产欧美高清| 一区二区三区四区国产| 国产在线视频欧美| 亚洲小视频在线| 激情丁香综合| 亚洲永久免费| 亚洲高清一区二| 欧美中文字幕第一页| 亚洲精品国产精品国自产观看| 欧美中文字幕视频在线观看| 亚洲精品麻豆| 久久久久88色偷偷免费| 夜夜嗨av一区二区三区四季av| 久久久7777| 一区二区三区精品久久久| 美女日韩欧美| 香蕉成人啪国产精品视频综合网| 欧美日韩亚洲一区三区| 亚洲第一网站免费视频| 国产精品日韩在线一区| 一本色道久久综合狠狠躁篇怎么玩| 国产综合久久久久久|