《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > 運用定點DSP實現MPEG-4標準中DCT系數快速量化的方法

運用定點DSP實現MPEG-4標準中DCT系數快速量化的方法

2009-04-24
作者:邱 鋼 季曉勇 陸 珉

??? 摘? 要: 以運用TMS320C6200定點DSP芯片完成MPEG-4標準中DCT系數量化為例,簡要介紹MPEG-4標準的量化方法,提出一種用定點乘法和移位運算代替量化過程中的除法和飽和運算的方法,并實現了快速運算。?

??? 關鍵詞: 量化? DCT變換? 定點DSP芯片? MPEG-4

?

??? 在基于DCT變換的圖像壓縮編碼方法中,對DCT系數必須做量化處理。量化過程是一個多對一的映射,例如對一個8×8塊的64個DCT變換系數分別除以量化步長后取整。由于大多數DCT變換系數量化后變為零,因而達到壓縮的目的。由于在量化過程中用到除法,因此通常需要進行浮點運算。?

??? 但是,可進行浮點運算的數字信號處理器(DSP)芯片結構比定點DSP芯片復雜,價格一般也比定點DSP芯片高很多。所以數字圖像處理系統中通常采用定點DSP芯片來完成圖像壓縮運算,這種方法已經成為數字圖像處理技術的一個趨勢。?

??? 可用于數字圖像處理的比較好的定點DSP芯片有德州儀器公司新一代高性能定點DSP芯片TMS320C6200系列。它具有VLIW(Very Long Instruction Word)結構,由8個可并行運行的執行單元構成。這些單元使得該系列芯片在單周期內可以并行執行多條指令,例如在單周期內并行完成2個16位×16位乘法和2個移位操作。它還具有流水線結構,使得若干條指令的不同執行階段可以并行執行。這些設計使得TMS320C6200系列芯片程序執行速度更快、性能更高。如200MHz時鐘的TMS320C6201峰值性能可以達到1600MIPS。

??? 在定點DSP上完成除法,通常的辦法是調用庫函數。但是調用庫函數,勢必會打破循環中的流水線操作,嚴重影響量化的完成速度。所以提高量化過程速度的關鍵就在于避免任何函數調用、跳轉等操作。?

??? 本文以TMS320C6200 系列定點DSP為例,提出一種用定點乘法和移位運算來代替量化過程中除法和飽和運算的方法,從而極大地提高了量化過程的運行速度。該方法也同樣適用于其它各種定點微處理器。?

1 MPEG-4標準中采用的量化技術及程序優化?

??? MPEG-4標準中定義了兩種量化方式:H.263量化方式和MPEG-4量化方式。這里為簡單起見,只介紹TMN-2.0編碼器所用到的一種量化策略:AC系數和幀間宏塊的DC系數用H.263量化方式,而幀內宏塊的DC系數用MPEG-4量化方式中的DC系數非線性量化方法。?

1.1 H.263 量化方式?

??? 量化參數QP可以取值[1,31],量化步長為2QP。則量化公式為:?

??? 對于幀內宏塊, LEVEL=|COF|/(2QP)?

??? 對于幀間宏塊, LEVEL=(|COF|-QP/2)/(2QP)?

式中,COF表示即將被量化的DCT變換系數,LEVEL表示量化結果的絕對值。?

1.2 MPEG-4 DC系數非線性量化方法?

??? 量化公式為: LEVEL=DC_COF//dc_scaler?

??? 式中,DC_COF 表示即將被量化的DCT變換DC系數;LEVEL表示量化結果;//表示先進行除法運算,然后對結果四舍五入取整。?

??? 在內部宏塊內,定義亮度塊為類型1塊,色差塊為類型2塊,類型1塊的DC系數由類型1的非線性標尺量化;類型2的DC系數由類型2的非線性標尺量化。?

??? 表1為定義DC非線性量化標尺dc_scaler。?

?

?

??? 從表1中可以看到亮度塊和色差塊的DC系數有獨立的量化標尺,亮度塊具有較大的標尺而色度塊具有較小的標尺。這種分段線性的非線性量化策略是一種高效的量化方式,它在保證圖像質量的基礎上提高了壓縮效率。?

1.3 將量化除法改定點乘法的方法?

??? 以內部宏塊的AC系數量化公式為例,將其改寫為:?

??? LEVEL=|COF|/2QP=|COF|×(2n/2QP)/2n?

??? 定義量化參數ac_coeff=表示對x截尾取整,則:?

??? LEVEL=|COF|×ac_coeff/2n ?

??? 在QP的取值都范圍[1,31]內,要使截尾取整后的每一個2n/2QP的值都能夠用量化參數ac_coeff一一對應地表示,n必須足夠大。通過計算得出:當n≥11時滿足要求。?

??? 取n=11得到ac_coeff的計算公式為:?

??????

??? 其實質就是用一個字(32 bit)的低11位(0Q11)來表示1/2QP的小數部分。?

??? 由于QP在[1,31]之間,可以用上述公式計算出對應于幀內宏塊AC系數量化的量化系數的查找表:ac_coeff=AcQCoeff[QP]。用C語言表示為(假設QP=0時ac_coeff=0):?

??? const short int AcQCoeff[32]=?

{ 0x000,0x400,0x200,0x155,0x100,0x0cc,0x0aa,0x092,?

? 0x080,0x071,0x066,0x05d,0x055,0x04e,0x049,0x044,?

? 0x040,0x03c,0x038,0x035,0x033,0x030,0x02e,0x02c,?

? 0x02a,0x028,0x027,0x025,0x024,0x023,0x022,0x021};?

??? 計算表明,AC系數量化系數、亮度塊DC系數量化系數和色差塊DC量化系數都可以統一用一個字的低11位(0Q11)來表示。這樣就可以分別計算出它們的量化系數的查找表,從而實現用乘法運算代替除法運算。而除以2n的操作可以用右移n位的辦法來完成。?

??? 對于8 bit無符號二進制數表示的象素值,在經過DCT變換后,其DCT變換系數的值域為[-2048,2047],最大有12位二進制數。同時,由上述分析可知量化系數最大有11位。所以DCT變換系數與量化系數相乘的結果最大將有11+12共23位。由于TMS320C62xDSP芯片中集成的乘法器是16位×16位的乘法器,乘法運算結果存放到32位的寄存器中。所以用本文方法計算出的量化系數與DCT變換系數相乘后,結果不會溢出。?

??? 根據MPEG-4 Visual標準TMN 2.0的要求,量化后AC系數值要飽和到[-2048,2047]之間。這可以利用TMS320C62x芯片指令集中的飽和左移指令SSHL 來實現,只需兩條指令即可完成飽和運算,無需使用比較指令和跳轉指令。?

??? 下面給出內部宏塊量化的TMS320C62x線性匯編程序:?

??????? cmpeq? type,1? //type定義的是當前塊的類型?

[type]? ldh *+DcLumQCoeff[QP],dc_coeff?//得到類型1的DC系數的量化參數?

[!type]?ldh? *+DcChromQCoeff[QP],dc_coeff?//得到類型2的DC系數的量化參數?

??????? ldh *coeff[0],level ?? //取出DCT變換DC系數?

??????? mpy level,dc_coeff,level??? //用乘法進行量化?

??????? addk 0x400,level//加0x400,對結果進行四舍五入? ?

??????? shr? level,11,level ??????? ??//右移11位?

??????? cmpgt level,maxDC,tmp????//對量化后的DC系數進行飽和運算?

[tmp]? ?mv maxDC,level? //將其限制在[1,maxDC]之間

??????? cmplt level,1,tmp?

[tmp]?? mvk 1,level???????????????? ?

??????? ldh *+AcQCoeff[QP],ac_coeff?//得到AC系數的量化參數?

??????? mvk? 63,cntr?//63次循環,只對AC系數進行量化?

loop:???.trip 63?

????????ldh? *coeff++[1],cof //取出DCT變換AC系數?

??????? abs? cof,level?

??????? mpy ?level,ac_coeff,level//對AC系數絕對值用乘法進行量化?

??????? shru level,11,level???? //右移11位?

??????? cmplt cof,0,tmp?

[tmp]?? neg?? level,result?

[!tmp]? mv?? level,result?

????????sshl? result,20,result?

???????????? //將量化后的AC系數值進行飽和運算,?

??????? shru? result,20,result?

??????????? ?//將結果限制在[-2048,2047]之間?

??????? sth? result,*qcoeff++[1]?

[cntr]? sub? cntr,1,cntr?

[cntr]? b?? loop?

??? 由該程序可以看到,程序中沒有任何會影響流水線的的跳轉語句及函數調用。因此將該程序編譯后會發現,此循環被優化構成軟件流水。如果再使用其它一些優化手段,比如合并程序中的移位指令,使用字訪問指令一次處理兩個短型數據等,該程序的效率將會更高。我們用TMS320C62x軟件仿真器測試表明,原來使用除法的量化函數需要4871個周期,而運用上述優化辦法進行優化后的量化函數只需275個周期即可完成,效率提高約18倍。?

??? DCT/IDCT變換及量化過程是視頻圖像壓縮系統中的關鍵模塊。該模塊的執行速度對整個系統的處理速度影響很大,因此將量化過程中的浮點運算轉換為定點運算,提高該模塊在定點DSP芯片上的執行速度,其意義顯得尤為重要。同時由于目前絕大多數數字通訊系統都基于定點DSP芯片,如果用定點芯片完成視頻圖像處理將會有易于與數字通訊系統集成的優點。我們的這一方法為在定點芯片上完成圖像處理進行了有益的嘗試,為后續的研發工作打下了一個良好的基礎。

參考文獻?

1 ISO/IEC JTC1/SC29/WG11 Information Technology——Coding of Audio-visual Objects——Part 2: Visual ISO.IEC 14496-2,1999?

2 TMS320C62/C67x CPU and Instruction Set, TEXAS?INSTRUMENTS, 1998?

3 TMS320C62x/C67x Programmer’s Guide, TEXAS INSTRUMENTS, 1999?

4 TMS320C6000 Optimizing C Compiler, TEXAS?INSTRUMENTS, 1999

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          国内精品模特av私拍在线观看| 亚洲激情偷拍| 亚洲在线国产日韩欧美| 亚洲免费成人av| 欧美国产一区二区三区激情无套| 狠狠入ady亚洲精品经典电影| 国产精品99久久久久久久vr| 久久国产日韩| 国产精品乱码| 欧美日韩另类国产亚洲欧美一级| 久久久久久久久久久久久久一区| 亚洲第一页在线| 国产精品一区亚洲| 久久精品日产第一区二区三区| 韩日视频一区| 性欧美18~19sex高清播放| 伊人久久亚洲热| 欧美黄色日本| 黄色一区二区在线| 久久大综合网| 国产中文一区二区| 欧美日韩综合另类| 亚洲青涩在线| 欧美成人激情视频免费观看| 欧美性猛交一区二区三区精品| 亚洲黄网站在线观看| 一区二区三区欧美激情| 国产模特精品视频久久久久| 免费观看欧美在线视频的网站| 亚洲三级免费电影| 国产精品久久久久久久久婷婷| 欧美午夜精品久久久久久久| 欧美性视频网站| 麻豆精品国产91久久久久久| 欧美日韩中文另类| 亚洲国产精品一区二区www在线| 一区二区三区高清| 亚洲人成在线播放| 日韩亚洲欧美成人| 国产亚洲电影| 久久久久久久尹人综合网亚洲| 久久久7777| 久久久精品一品道一区| 国产精品爽黄69| 正在播放欧美一区| 国产精品久久二区二区| 国产精品高清网站| 欧美日韩精品久久久| 亚洲每日更新| 亚洲日本成人在线观看| 男同欧美伦乱| 国产精品免费aⅴ片在线观看| 国内精品一区二区三区| 亚洲一区二区三区免费视频| 欧美在线3区| 亚洲激情婷婷| 欧美日韩精品伦理作品在线免费观看| 亚洲主播在线播放| 伊人成综合网伊人222| 欧美成人精品福利| 在线电影欧美日韩一区二区私密| 玖玖玖国产精品| 亚洲黄色一区二区三区| 午夜激情一区| 久久婷婷激情| 在线观看亚洲视频啊啊啊啊| 久久国产精品一区二区| 国产麻豆一精品一av一免费| 欧美中文在线视频| 欧美成人免费在线观看| 久久成人免费电影| 日韩视频在线观看一区二区| 亚洲美女视频在线免费观看| 国产亚洲精品久久久久婷婷瑜伽| 亚洲国产精品成人一区二区| 国产精品日日做人人爱| 亚洲福利在线观看| 一二三区精品| 国产精品揄拍一区二区| 91久久极品少妇xxxxⅹ软件| 欧美香蕉视频| 久久国产乱子精品免费女| 国产日韩精品久久久| 亚洲全黄一级网站| 一区二区三区精品视频在线观看| 国产亚洲精品自拍| 欧美了一区在线观看| 亚洲午夜av电影| 欧美精品精品一区| 国产亚洲欧美日韩在线一区| 国产日韩欧美日韩大片| 亚洲一卡久久| 欧美一区二区视频97| 亚洲一区观看| 欧美日韩网址| 欧美激情区在线播放| 久久久国产成人精品| 国产一区二区三区在线观看网站| 欧美日韩综合一区| 亚洲国产精品免费| 91久久精品一区二区三区| 欧美久久久久久蜜桃| 在线精品国精品国产尤物884a| 在线亚洲高清视频| 国产亚洲欧美日韩在线一区| 国产精品多人| 99综合电影在线视频| 久久久久久91香蕉国产| 国产精品高潮呻吟久久av黑人| 亚洲天堂偷拍| 国产精品igao视频网网址不卡日韩| 蜜臀久久久99精品久久久久久| 欧美日韩在线亚洲一区蜜芽| 欧美寡妇偷汉性猛交| 亚洲自拍偷拍色片视频| 亚洲一级电影| 一区二区三区视频在线播放| 亚洲香蕉伊综合在人在线视看| 欧美日韩1区2区| 亚洲综合二区| 国产日韩专区在线| 在线观看国产日韩| 一本一本久久a久久精品综合妖精| 欧美在线视频免费播放| 久久精品1区| 久久国产视频网站| 亚洲国产精品t66y| 欧美精选午夜久久久乱码6080| 久久国产99| 久久综合九色综合欧美就去吻| 亚洲国产午夜| 久久亚洲精品中文字幕冲田杏梨| 国产精品乱码久久久久久| 久久先锋影音av| 国产精品永久免费观看| 久久久久一本一区二区青青蜜月| 欧美成人性生活| 麻豆成人在线播放| 亚洲一区图片| 韩国av一区二区三区在线观看| 欧美天堂亚洲电影院在线观看| 一区二区亚洲欧洲国产日韩| 欧美色区777第一页| 久久综合伊人77777蜜臀| 国产亚洲永久域名| 欧美一级视频免费在线观看| 亚洲人成网站999久久久综合| 最新中文字幕一区二区三区| 久久亚洲私人国产精品va媚药| 99精品视频免费观看| 午夜精品99久久免费| 激情小说亚洲一区| 欧美天天影院| 欧美日韩国产综合新一区| 久久国产视频网| 在线亚洲一区二区| 欧美在线日韩精品| 狠狠网亚洲精品| 亚洲国产精品电影| 国产欧美精品日韩精品| 亚洲第一黄色| 国产欧美婷婷中文| 久久久久久尹人网香蕉| 国产欧美日韩另类一区| 久久蜜桃av一区精品变态类天堂| 欧美激情性爽国产精品17p| 日韩亚洲欧美在线观看| 夜夜精品视频一区二区| 一区二区亚洲欧洲国产日韩| 亚洲免费伊人电影在线观看av| 免费精品99久久国产综合精品| 免费毛片一区二区三区久久久| 在线电影一区| 国产精品美女久久久久久2018| 亚洲精品久久久久久久久| 午夜精品久久久久久99热| 亚洲深夜福利| 一色屋精品视频在线看| 欧美日韩免费在线| 亚洲日韩欧美一区二区在线| 久久精品久久综合| 影音国产精品| 欧美丰满少妇xxxbbb| 国产一区二区三区久久久| 欧美视频在线观看免费| 韩日欧美一区二区三区| 欧美精品18videos性欧美| 美女国内精品自产拍在线播放| 亚洲免费成人av| 一本色道久久综合一区| 亚洲国产精品久久| 久久久久久久波多野高潮日日| 久久精品五月婷婷| 欧美视频四区| 欧美永久精品| 欧美一区二区三区在线| 国产一区二区三区不卡在线观看| 久久久久免费视频| 国内揄拍国内精品少妇国语| 欧美精品一线| 亚洲日本成人| 久久一区中文字幕| 91久久一区二区| 国产区精品在线观看| 久久久无码精品亚洲日韩按摩| 最新热久久免费视频| 亚洲精品美女久久久久| 亚洲欧美日韩另类精品一区二区三区| 国产精品av一区二区| 国产女主播视频一区二区| 欧美精品1区| 欧美韩日高清| 久久久久久夜精品精品免费| 国产毛片精品国产一区二区三区| 欧美视频中文字幕在线| 欧美韩日高清| 亚洲日本电影| 国产精品入口麻豆原神| 午夜精品免费在线| 在线观看视频欧美| 先锋影音网一区二区| 国产精品卡一卡二| 国产亚洲精品福利| 亚洲免费在线观看视频| 欧美精品一区在线播放| 欧美日韩高清在线播放| 欧美日本中文字幕| 欧美一区二区在线免费观看| 国产精品嫩草影院一区二区| 91久久嫩草影院一区二区| 欧美日韩色婷婷| 久久综合九色综合欧美狠狠| 国产精品久久777777毛茸茸| 国产精品劲爆视频| 欧美精品精品一区| 亚洲网站在线观看| 亚洲欧美日韩综合国产aⅴ| 亚洲一区二区在线看| 亚洲韩国精品一区| 国产亚洲精品资源在线26u| 亚洲裸体视频| 亚洲精品在线免费观看视频| 国产一区二区三区久久久| 国产一区二区精品久久91| 国产亚洲美州欧州综合国| 亚洲免费在线看| 亚洲欧美在线一区| 国产精品高清免费在线观看| 夜夜夜精品看看| 亚洲人成人一区二区三区| 亚洲日本一区二区三区| 日韩亚洲欧美中文三级| 欧美亚洲视频在线看网址| 亚洲欧美综合精品久久成人| 国产精品视频免费在线观看| 久久婷婷亚洲| 亚洲第一区色| 一区在线电影| 久久久久久亚洲精品不卡4k岛国| 久久午夜色播影院免费高清| 国产一区二区日韩精品欧美精品| 欧美久久精品午夜青青大伊人| 亚洲欧美另类综合偷拍| 欧美刺激午夜性久久久久久久| 亚洲一区二区三区中文字幕在线| 欧美日韩国产bt| 在线综合视频| 国产精品福利网| 国产字幕视频一区二区| 国产精品久久久久久久7电影| 一区二区三区欧美成人| 欧美午夜精品久久久久免费视| 亚洲第一在线综合网站| 久久狠狠久久综合桃花| 久久嫩草精品久久久精品一| 欧美精品免费视频| 亚洲图片欧洲图片日韩av| 影音先锋一区| 亚洲伊人色欲综合网| 午夜激情一区| 国产精品久久午夜夜伦鲁鲁| 国产精品国产三级国产普通话蜜臀| 欧美高清影院| 亚洲图片欧洲图片日韩av| 亚洲成色www8888| 91久久精品国产| 久久精品国产91精品亚洲| 欧美视频在线观看免费网址| 久久久久久久综合狠狠综合| 国产在线欧美日韩| 亚洲国产精选| 欧美亚洲视频在线观看| 激情久久综艺| 日韩视频在线你懂得| 欧美视频三区在线播放| 亚洲砖区区免费| 欧美专区一区二区三区| 国产精品激情| 国产日产精品一区二区三区四区的观看方式| 国产精品青草综合久久久久99| 欧美噜噜久久久xxx| 尤物视频一区二区| 亚洲国产免费看| 亚洲主播在线播放| 亚洲五月婷婷| 欧美在线短视频| 久久久久久香蕉网| 国产精品揄拍500视频| 国产精品日本欧美一区二区三区| 久久久av网站| 国产伦精品一区二区三区视频孕妇| 久久久久久久网站| 91久久国产综合久久蜜月精品| 欧美一区2区三区4区公司二百| 一区二区三区国产在线| 亚洲欧美激情视频在线观看一区二区三区| 亚洲精品老司机| 久久综合给合久久狠狠狠97色69| 亚洲一区三区电影在线观看| 欧美高清在线播放| 欧美国产日韩一区二区| 久久亚洲高清| 亚洲在线播放电影| 欧美理论电影在线观看| 亚洲视频一二三| 欧美性猛交xxxx乱大交退制版| 亚洲乱码国产乱码精品精98午夜| 亚洲清纯自拍|