<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > H.264在ADSP-BF561上的實(shí)現(xiàn)與優(yōu)化

          H.264在ADSP-BF561上的實(shí)現(xiàn)與優(yōu)化

          作者: 時(shí)間:2009-05-25 來源:網(wǎng)絡(luò) 收藏
          目前,音視頻技術(shù)日新月異,其中,視頻實(shí)時(shí)編碼傳輸極具代表性。在視頻壓縮算法領(lǐng)域,新一代視頻壓縮標(biāo)準(zhǔn)以其優(yōu)異的壓縮性能和圖像質(zhì)量使視頻實(shí)時(shí)編碼傳輸技術(shù)的成為可能。但該標(biāo)準(zhǔn)的計(jì)算復(fù)雜度高,用一般的圖像處理芯片難以達(dá)到實(shí)時(shí)編解碼的要求,它需要快速、穩(wěn)定的處理器作為硬件平臺(tái)。是ADI公司推出的高性能多媒體處理器。其主要特點(diǎn)是具有兩個(gè)ADSP-BF533處理器核心(以下簡(jiǎn)稱核心A和核心B),最高時(shí)鐘頻率達(dá)到600MHz,其內(nèi)部采用哈佛總線結(jié)構(gòu),存儲(chǔ)模型層次化。其典型應(yīng)用模式是A核運(yùn)行嵌入式操作系統(tǒng),B核運(yùn)行多媒體處理算法,如。本文提出了一套采用芯片視頻壓縮算法的設(shè)計(jì)方案,結(jié)合該DSP平臺(tái)對(duì)算法進(jìn)行了針對(duì)性的,充分發(fā)揮了強(qiáng)大的處理能力。
          1 算法介紹
          1.1 H.264編碼模型框架
            H.264以其高壓縮比、高圖像質(zhì)量和良好的網(wǎng)絡(luò)親和性廣受業(yè)界歡迎。在同等質(zhì)量條件下,H.264的數(shù)據(jù)壓縮比比MPEG-2高2~3倍,比MPEG-4高1.5~2倍。其需要的帶寬只有MPEG-4的50%, MPEG-2的12.5%。
            H.264標(biāo)準(zhǔn)采用分層體系結(jié)構(gòu),系統(tǒng)分為:視頻編碼層VCL(Video Coding Layer),負(fù)責(zé)高效的數(shù)字視頻壓縮;網(wǎng)絡(luò)抽象層NAL(Network Abstraction Layer),負(fù)責(zé)對(duì)數(shù)據(jù)進(jìn)行打包和傳送。H.264編碼圖像通常分為三種類型:I幀、P幀、B幀。I幀為幀內(nèi)編碼幀,其編碼不依賴于已編碼的圖像數(shù)據(jù)。P幀為前向預(yù)測(cè)幀,B幀為雙向預(yù)測(cè)幀,編碼時(shí)都需要根據(jù)參考幀進(jìn)行運(yùn)動(dòng)估計(jì)。同時(shí),H.264在提高圖像傳輸容錯(cuò)性方面做了大量工作,重新定義了適于圖像的結(jié)構(gòu)劃分。在編碼時(shí),圖像幀各部分被劃分到多個(gè)Slice結(jié)構(gòu)中,每個(gè)Slice都可以被獨(dú)立編碼,不受其他部分影響。Slice由圖像最基本的結(jié)構(gòu)――宏塊組成,每個(gè)宏塊包含一個(gè)16×16的亮度塊和兩個(gè)8×8的色度塊。H.264標(biāo)準(zhǔn)的整體編碼框圖如圖1所示。編碼過程中,原始數(shù)據(jù)進(jìn)入編碼器后,當(dāng)采用幀內(nèi)編碼時(shí),首先選擇相應(yīng)的幀內(nèi)預(yù)測(cè)模式進(jìn)行幀內(nèi)預(yù)測(cè),隨后對(duì)實(shí)際值和預(yù)測(cè)值之間的差值進(jìn)行變換、量化和嫡編碼,同時(shí)編碼后的碼流經(jīng)過反量化和反變換之后重構(gòu)預(yù)測(cè)殘差圖像,再與預(yù)測(cè)值相加得出重構(gòu)幀,得出的結(jié)果經(jīng)過去塊濾波器平滑后送入幀存儲(chǔ)器。采用幀間編碼時(shí),輸入的圖像塊首先在參考幀中進(jìn)行運(yùn)動(dòng)估計(jì),得到運(yùn)動(dòng)矢量。運(yùn)動(dòng)估計(jì)后的殘差圖像經(jīng)整數(shù)變換、量化和嫡編碼后與運(yùn)動(dòng)矢量一起送入信道傳輸。同時(shí)另一路碼流以相同的方式重構(gòu)后,經(jīng)去塊濾波后送入幀存儲(chǔ)器作為下一幀編碼的參考圖像。

          本文引用地址:http://www.ex-cimer.com/article/166951.htm

          1.2 H.264關(guān)鍵技術(shù)
          1.2.1 幀內(nèi)預(yù)測(cè)

            H.264引入了幀內(nèi)預(yù)測(cè)以提高壓縮效率。幀內(nèi)預(yù)測(cè)編碼就是利用周圍鄰近的像素值來預(yù)測(cè)當(dāng)前的像素值,然后對(duì)預(yù)測(cè)誤差進(jìn)行編碼。這種預(yù)測(cè)是基于塊的。對(duì)于亮度分量,塊的大小可以在16×16和4×4之間選擇,16×16有4種預(yù)測(cè)模式,4×4有9種預(yù)測(cè)模式;對(duì)于色度分量,預(yù)測(cè)是對(duì)整個(gè)8×8塊進(jìn)行的,有4種預(yù)測(cè)模式。
          1.2.2 幀間預(yù)測(cè)
            幀間預(yù)測(cè)時(shí)所用塊的大小可變。假設(shè)基于塊的運(yùn)動(dòng)模型,其塊內(nèi)的所有像素都做了相同的平移,在運(yùn)動(dòng)比較劇烈或者運(yùn)動(dòng)物體的邊緣外,這一假設(shè)會(huì)與實(shí)際出入較大,從而導(dǎo)致較大的預(yù)測(cè)誤差,這時(shí)減小塊的大小可以使假設(shè)在小塊中依然成立。另外小塊所造成的塊效應(yīng)相對(duì)也小,因此,小塊可以提高預(yù)測(cè)的效果。H.264一共采用了7種方式對(duì)一個(gè)宏塊進(jìn)行分割,每種方式下塊的大小和形狀都不相同,編碼器可以根據(jù)圖像的內(nèi)容選擇最好的預(yù)測(cè)模式。與僅使用16x16塊進(jìn)行預(yù)測(cè)相比,使用不同大小和形狀的塊可以使碼率節(jié)約15%以上。
            同時(shí),幀內(nèi)預(yù)測(cè)采用了更精細(xì)的預(yù)測(cè)精度,H.264中亮度分量的運(yùn)動(dòng)矢量使用1/4像素精度。色度分量的運(yùn)動(dòng)矢量使用1/8像素精度。
          1.2.3 多幀參考
            H.264支持多幀參考預(yù)測(cè),最多可以有5個(gè)在當(dāng)前幀之前的解碼幀作為參考幀產(chǎn)生對(duì)當(dāng)前幀的預(yù)測(cè),提高H.264解碼器的錯(cuò)誤恢復(fù)能力。
          1.2.4 整數(shù)變換
            H.264對(duì)殘差圖像的4×4整數(shù)變換技術(shù),采用定點(diǎn)運(yùn)算來代替以往DCT變換中的浮點(diǎn)運(yùn)算。以降低編碼時(shí)間,同時(shí)也更適合硬件平臺(tái)的移植。
          1.2.5 熵編碼
            H.264支持兩種熵編碼方法,即CAVLC(基于上下文的自適應(yīng)可變長(zhǎng)編碼)和CABAC(基于上下文的自適應(yīng)算術(shù)編碼)。其中CAVLC的抗差錯(cuò)能力比較高,但編碼效率比CABAC低;而CABAC的編碼效率強(qiáng),但需要的計(jì)算量和存儲(chǔ)容量更大。
          1.2.6 去方塊濾波
            去方塊濾波的作用是消除經(jīng)反量化和反變換后重建圖像中由于預(yù)測(cè)誤差產(chǎn)生的塊效應(yīng),從而改善圖像的主觀質(zhì)量和預(yù)測(cè)誤差。經(jīng)過濾波后的圖像將根據(jù)需要放在緩存中用于幀間預(yù)測(cè),而不是僅僅用來改善主觀質(zhì)量,因此該濾波器位于解碼環(huán)中。對(duì)于幀內(nèi)預(yù)測(cè),使用的是未經(jīng)過濾波的重建圖像。
          2 算法
          2.1 平臺(tái)選擇
          2.1.1 ADSP-BF561芯片介紹

            ADSP-BF561是Blackfin系列中的一款高性能定點(diǎn)DSP視頻處理芯片。其主頻最高可達(dá)750 MHz,內(nèi)核包含2個(gè)16位乘法器MAC、2個(gè)40位累加器ALU、4個(gè)8位視頻ALU,以及1個(gè)40位移位器。該芯片中的兩套數(shù)據(jù)地址產(chǎn)生器(DAG)可為同時(shí)從存儲(chǔ)器存取雙操作數(shù)提供地址,每秒可處理1 200兆次乘加運(yùn)算。芯片帶有專用的視頻信號(hào)處理指令以及100KB的片內(nèi)L1存儲(chǔ)器(16 KB的指令Cache,16 KB的指令SRAM,64 KB的數(shù)據(jù)Cache/SRAM,4 KB的臨時(shí)數(shù)據(jù)SRAM)、128 KB的片內(nèi)L2存儲(chǔ)器SRAM,同時(shí)具有動(dòng)態(tài)電源管理功能。此外,Blackfin處理器還包括豐富的外設(shè)接口,包括EBIU接口(4個(gè)128 MB SDRAM接口,4個(gè)1 MB異步存儲(chǔ)器接口)、3個(gè)定時(shí)/計(jì)數(shù)器、1個(gè)UART、1個(gè)SPI接口、2個(gè)同步串行接口和1路并行外設(shè)接口(支持ITU-656數(shù)據(jù)格式)等。Blackfin處理器在結(jié)構(gòu)上充分體現(xiàn)了對(duì)媒體應(yīng)用(特別是視頻應(yīng)用)算法的支持。


          上一頁(yè) 1 2 3 4 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();