999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

H.264碼率控制跳幀算法研究

2010-06-13 11:32:58王喜民楊鼎才閆俊海
微處理機(jī) 2010年3期
關(guān)鍵詞:策略

王喜民,楊鼎才,閆俊海

(河北省燕山大學(xué)信息科學(xué)與工程學(xué)院,秦皇島066004)

1 引言

H.264中碼率控制原理如圖1所示,碼率控制的任務(wù)就是在保證緩沖器不產(chǎn)生上溢和下溢的前提下,通過調(diào)整一些編碼參數(shù)(如量化參數(shù))來使編碼比特率達(dá)到期望值。以便編碼器輸出碼率能夠在比特率恒定的通信信道和網(wǎng)絡(luò)中傳輸,這種利用信道緩沖器對(duì)編碼產(chǎn)生的比特?cái)?shù)加以控制的技術(shù)就是碼率控制。

圖1 碼率控制原理圖

在視頻編碼過程中,編碼器和傳輸信道間的緩沖器起了重要的作用。編碼器使緩沖器的占用量保持在50%左右。如果緩沖器發(fā)生上溢,則會(huì)損失一些數(shù)據(jù),相反,如果緩沖器的占用量過低就會(huì)浪費(fèi)帶寬。緩沖器的輸入端是編碼器產(chǎn)生可變的比特流,輸出端以恒定的比特率把數(shù)據(jù)傳輸?shù)叫诺郎稀]斎刖彌_器和輸出緩沖器的數(shù)據(jù)差值將保存在緩沖器中,為了防止緩沖器上溢,當(dāng)緩沖器的占用量達(dá)到某一個(gè)限值時(shí),就跳過下一幀,即該時(shí)刻緩沖器沒有輸入只有輸出,從而減小緩沖器的占用量,因此,通過對(duì)碼率控制中跳幀的適當(dāng)控制可以較好地緩解由于場(chǎng)景和物體劇烈運(yùn)動(dòng)所帶來的緩存上溢現(xiàn)象,達(dá)到優(yōu)化圖像質(zhì)量的目的。

這種避免緩存區(qū)的溢位,在碼率控制策略中,選擇跳過一幀或幾幀圖像不對(duì)其編碼,就是碼率控制中的跳幀技術(shù)。

2 以往跳幀算法的研究

以往的跳幀控制算法中,一般都只是將緩沖器的上限定為80%,并將80%作為跳幀的依據(jù),當(dāng)緩存容量超過80%,將此幀定為跳幀,相反,當(dāng)緩存容量低于25%的時(shí)候,也將此幀定為跳幀。但是這樣處理有其弊端性.事實(shí)上,當(dāng)要編碼的圖像發(fā)生場(chǎng)景變換或者圖像物體運(yùn)動(dòng)劇烈的時(shí)候,由于圖像包含更多的信息,必然會(huì)造成編碼后的比特?cái)?shù)上漲,往往會(huì)超過緩沖器上閾值的限制,如果就這樣簡(jiǎn)單的將其判為跳幀,會(huì)導(dǎo)致運(yùn)動(dòng)劇烈的圖像丟失,遺漏掉圖像中的重要細(xì)節(jié),從而使圖像質(zhì)量下降。

跳幀算法中,假定編碼的目標(biāo)比特率為Bit_Rate,視頻流的幀率為F,緩存區(qū)大小由Buffer_Size表示,緩存區(qū)充盈度用緩存中的比特?cái)?shù)Buffer_Fullness表示,當(dāng)緩存區(qū)充盈度超過一個(gè)閾值Threshold,則跳過當(dāng)前幀不對(duì)其編碼,直到當(dāng)前緩存區(qū)充盈度低于門限值之后,再對(duì)此時(shí)的圖像進(jìn)行編碼,通過跳幀的方法可以防止緩存區(qū)溢位。在編碼第一個(gè)I幀之前,將Buffer_Fullness初始化為0。設(shè)B為剛剛編碼完的第i幀對(duì)應(yīng)的比特?cái)?shù),則跳幀算法為:

Buffer_Size=Bit_Rate*TimeDelay;

FrameSkipped=0;

Buffer_Fullness=Buffer_Fullness+B-Bit_Rate/F;

while(Buffer_Fullness>=Threshold)

{

Buffer_Fullness=Buffer_Fullness-Bit_Rate/F;

FrameSkipped++;

}

其中,F(xiàn)rameSkipped為跳幀數(shù),緊接著上一次編碼的第i幀之后將被編碼的是第(i+1+FrameSkipped)幀。采用跳幀的目的是通過犧牲圖像連續(xù)性來換取圖像質(zhì)量的穩(wěn)定性。根據(jù)人眼的視覺特性,偶爾少量的圖像跳幀,對(duì)視頻質(zhì)量的影響并不大。但是如果發(fā)生頻繁的連續(xù)跳幀,則會(huì)引起圖像的停滯、跳躍,嚴(yán)重影響視頻通信質(zhì)量。這在碼率控制策略中,是要堅(jiān)決避免的。在常規(guī)的碼率控制策略中,通常為了避免溢出,當(dāng)緩存區(qū)內(nèi)比特?cái)?shù)超過緩存區(qū)空間Bs的80%時(shí),跳過當(dāng)前幀而不對(duì)其作編碼,直到其低于臨界值后再進(jìn)行編碼。如下式所示:

3 主動(dòng)跳幀策略

3.1 場(chǎng)景切換的檢測(cè)

以往改進(jìn)算法中大部分采用 MADratio,而MADratio也能夠準(zhǔn)確的反映出圖像的復(fù)雜度,但是它卻不能預(yù)測(cè)場(chǎng)景切換幀。因?yàn)镸ADratio算法如下:

對(duì)于存在場(chǎng)景切換的視頻序列,由于場(chǎng)景切換幀與之前幀的幀間相關(guān)性小,場(chǎng)景切換的MADP預(yù)測(cè)不準(zhǔn)確,進(jìn)而造成 MADratio計(jì)算不準(zhǔn)確。因此MADratio不能預(yù)測(cè)場(chǎng)景切換。應(yīng)該采用的是文獻(xiàn)[3]中提到的PSNRdropratio來預(yù)測(cè)場(chǎng)景切換,并作相關(guān)處理。PSNRdropratio的計(jì)算在編碼器計(jì)算完每幀的PSNR值之后進(jìn)行,其計(jì)算步驟如下:

假設(shè)當(dāng)前編碼幀j幀被跳過,利用離j幀最近的j-1幀作為j幀的重構(gòu)幀,計(jì)算出 j幀的PSNR,這里記為 PSNRskip,j,然后利用下式可以計(jì)算 PSNRdrop,j

PSNRdrop,j=PSNRj-1- PSNRskip,j

其中 PSNRj-1為j-1幀的實(shí)際 PSNR

當(dāng)前編碼 j幀的 PSNRdropratio,j,則由下式得到

3.2 主動(dòng)跳幀算法的計(jì)算過程

主動(dòng)跳幀策略,即在緩存區(qū)并未達(dá)到空間上限的80%時(shí),為了保留一些信息量較高,相對(duì)重要的圖像,而主動(dòng)跳過一些跟上一幀圖像相關(guān)度較高,相對(duì)來說并不十分重要的圖像。通過主動(dòng)跳幀,可以有效的降低緩存區(qū)充盈度,從而有效的抑制由于緩存區(qū)長(zhǎng)期處于高充盈度狀態(tài)。而引發(fā)的圖像連續(xù)跳幀。預(yù)先的主動(dòng)跳幀,降低了緩存區(qū)充盈度,可以有效的防止緩存區(qū)達(dá)到極度充盈狀態(tài):即使跳過1幀或2幀圖像仍然不能有效的釋放緩存區(qū)空間,而需要連續(xù)跳過數(shù)幀圖像。通過實(shí)驗(yàn)仿真發(fā)現(xiàn),該主動(dòng)跳幀策略,可以防止緩存區(qū)長(zhǎng)期處于臨界飽和狀態(tài),并且有效的抑制大量圖像的連續(xù)跳幀。

如果當(dāng)前編碼的P幀圖像同時(shí)滿足以下三個(gè)條件,則采用主動(dòng)跳幀策略,不對(duì)該幀編碼,而直接編碼下一幀圖像:

(1)當(dāng)前GOP的跳幀標(biāo)志位Skip_Flag為1。在開始一個(gè)GOP的編碼時(shí),將跳幀標(biāo)志位置0,一旦在當(dāng)前GOP中有跳幀發(fā)生時(shí),則將Skip_Flag置為1。表示在當(dāng)前GOP中,通過使用基于預(yù)測(cè)的拉格朗日最優(yōu)化方法選擇的I幀量化參數(shù)進(jìn)行編碼時(shí),仍然不能完全抑止跳幀的發(fā)生。在當(dāng)前GOP的編碼中,仍然存在繼續(xù)跳幀的可能性,因此有必要做好主動(dòng)跳幀的準(zhǔn)備。

(2)當(dāng)前緩存區(qū)充盈度超過緩存區(qū)空間的60%。即當(dāng)前緩存區(qū)維持在一個(gè)較高的充盈度狀態(tài)。即使緩存區(qū)空間沒有達(dá)到上限的80%,但是根據(jù)上一條件,可以認(rèn)為當(dāng)前GOP存在跳幀的可能性。為了避免當(dāng)緩存區(qū)充盈度繼續(xù)增加之后,而發(fā)生對(duì)跳幀圖像不具選擇能力的被動(dòng)跳幀,因此在緩存區(qū)充盈度為60%的時(shí)候設(shè)置一個(gè)判決閾。當(dāng)這個(gè)閾值選擇較大,接近80%的時(shí)候,則不能有效的通過預(yù)判來避免被動(dòng)跳幀的發(fā)生。而當(dāng)閾值選擇較小時(shí),則可能造成過多的圖像滿足主動(dòng)跳幀的條件,被主動(dòng)跳過而不進(jìn)行編碼,但是從實(shí)際的編碼結(jié)果來分析,并不需要有這么多的圖像發(fā)生主動(dòng)跳幀,而為后續(xù)的相對(duì)重要的圖像留出緩存區(qū)空間。因此這個(gè)閾值的選擇顯得非常重要,如果選擇不當(dāng),反而會(huì)導(dǎo)致使用了主動(dòng)跳幀策略之后比原來的被動(dòng)跳幀控制有更多的圖像跳幀,對(duì)視頻序列的連續(xù)性造成負(fù)面的影響。通過對(duì)大量序列的仿真發(fā)現(xiàn),將閾值設(shè)置在緩存區(qū)空間的60%,能夠有效起到提前釋放緩存區(qū)空間的作用,為此后一些信息量較高、相對(duì)重要的圖像留出編碼空間,使其可以被保留而不被跳幀,同時(shí)也有效避免了后續(xù)圖像發(fā)生大量連續(xù)的跳幀。

(3)計(jì)算當(dāng)前幀的,通過仿真實(shí)驗(yàn),認(rèn)為當(dāng)前幀相對(duì)其他的圖像來說,復(fù)雜度較低,不存在明顯的場(chǎng)景切換和快速的局部運(yùn)動(dòng)。跳過這一幀圖像對(duì)此后圖像編碼質(zhì)量影響不大,仍然可以根據(jù)前一幀圖像作為參考幀來進(jìn)行幀間編碼。保證主動(dòng)跳幀之后,對(duì)整個(gè)視頻序列的主觀質(zhì)量不造成明顯的影響。其算法的流程如圖2所示。該策略可以通過跳過一些復(fù)雜度較低,對(duì)于整個(gè)序列而言并不重要的圖像,來為后面復(fù)雜度較高,不能丟失的圖像留出緩存區(qū)空間。通過主動(dòng)跳幀,降低了緩存區(qū)充盈度,可以有效的防止緩存區(qū)達(dá)到極度充盈狀態(tài):即使跳過1幀或2幀圖像仍然不能有效的釋放緩存區(qū)空間,而需要連續(xù)跳過數(shù)幀圖像。

4 試驗(yàn)結(jié)果

為了分析提出的主動(dòng)跳幀策略在防止圖像連續(xù)跳幀中的作用,在下表中給出了JVT-H017碼率控制策略跟采用和未采用主動(dòng)跳幀策略的低延遲碼率控制算法對(duì)比實(shí)驗(yàn)的結(jié)果分析。選用Stefan標(biāo)準(zhǔn)QCIF測(cè)試序列。將每一個(gè)GOP的長(zhǎng)度定為30幀,其結(jié)構(gòu)為 IPPP,不采用 B幀;在編碼時(shí),將 Basic Unit的大小定為99個(gè)宏塊,即一個(gè)Basic Unit的大小為一幀圖像的大小,相當(dāng)于是將碼率控制算法分為GOP層和幀層;每一個(gè)序列各編碼150幀圖像,編碼的幀率為30fps,目標(biāo)比特為120kbps,緩存區(qū)大小為24kbits,相當(dāng)于允許延時(shí)200ms。

圖2 主動(dòng)跳幀策略流程圖

表1 三種方法的跳幀結(jié)果比較

從表1中可以發(fā)現(xiàn),不論是否采用主動(dòng)跳幀,該方法在低延遲下都能更好的控制跳幀,這在上文已有詳細(xì)的對(duì)比分析。在此重點(diǎn)針對(duì)采用和未采用主動(dòng)跳幀策略的實(shí)驗(yàn)結(jié)果,來分析主動(dòng)跳幀策略的作用。在H017方法中,不但跳幀數(shù)目最多,共53幀,而且出現(xiàn)了大量的連續(xù)跳幀,其中在第32幀處出現(xiàn)6幀跳幀,然后僅編碼完第38幀,在第39時(shí)又出現(xiàn)6幀的跳幀,然后編碼完第45幀,又立即在第46幀處出現(xiàn)連續(xù)的4幀跳幀。這樣連續(xù)的跳幀嚴(yán)重影響了視頻的主觀視覺質(zhì)量,在視頻通信中需要極力避免。在未采用主動(dòng)跳幀時(shí),共跳幀15幀,其中有1次連續(xù)跳了4幀圖像,1次連續(xù)跳了3幀圖像。其中在第38幀處,連續(xù)跳完2幀之后,僅編碼了第42和43幀后又連續(xù)出現(xiàn)了3幀跳幀。在采用了主動(dòng)跳幀后,雖然總體的跳幀數(shù)量也為15幀,但是最大的連續(xù)圖像跳幀為3幀,且僅出現(xiàn)一次。原來在第38幀處連續(xù)出現(xiàn)的2幀和3幀連續(xù)跳幀,由于在第36幀的主動(dòng)跳幀,在第38幀時(shí)沒有圖像跳幀,僅在第42幀處連續(xù)跳過了3幀圖像。有效的抑制了圖像的連續(xù)跳幀。當(dāng)然從表1中發(fā)現(xiàn),主動(dòng)跳幀策略通過分散的預(yù)先跳幀來避免連續(xù)跳幀的發(fā)生。從對(duì)比實(shí)驗(yàn)結(jié)果可以發(fā)現(xiàn),雖然在第76幀發(fā)生了主動(dòng)跳幀,但是其實(shí)即使這里沒有主動(dòng)跳幀,其后續(xù)的P幀都不會(huì)發(fā)生跳幀,如果僅在當(dāng)前的GOP分析,反而增加了圖像的跳幀。但是從整體來分析,主動(dòng)跳幀緩解了緩存區(qū)的充盈度,雖然在當(dāng)前沒有明顯的體現(xiàn)出減少跳幀的作用,卻為下一個(gè)GOP留出了更多的緩存區(qū)空間,減少其跳幀的可能性,并能提高其編碼質(zhì)量。通過引入主動(dòng)跳幀之后,該算法在有效維持圖像質(zhì)量的同時(shí),仍可以有效的抑制圖像的連續(xù)跳幀。

5 結(jié)束語

針對(duì)傳統(tǒng)的跳幀技術(shù),提出了新的主動(dòng)跳幀策略。該策略在緩存區(qū)尚未達(dá)到跳幀閾值時(shí),主動(dòng)跳過一些跟上一幀圖像相關(guān)度較高,相對(duì)來說并不十分重要圖像,來降低緩存區(qū)的充盈度。通過主動(dòng)跳幀不但可以為視頻中相對(duì)重要的圖像留出編碼空間防止其被跳過,并且能夠有效的抑制圖像的連續(xù)跳幀,提高圖像的質(zhì)量。

[1]S W WU.Improved Rate Control for Low-Delay Communications in H.264/AVC Video Coding Standard[R].National Yet- sen University,July,2004.

[2]Minqiangjiang,Xiaoquanyi,Nan Ling.On Enhancing H264 Rate Control by PSN Based Frame Complexity Estimation[J].IEEE Transactions Consumer Electronics,2003(1):281-286.

[3]劉文堯,龔聲蓉.基于H.264的碼率控制算法的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2007(5):28-39.

[4]周駿華,石繼剛.一種基于運(yùn)動(dòng)復(fù)雜度的H.264碼率控制跳幀算法[J].浙江工業(yè)大學(xué)學(xué)報(bào),2006(4):13-15.

[5]畢厚杰.新一代視頻壓縮編碼標(biāo)準(zhǔn) -H.264/AVC[M].北京:人民郵電出版社,2005.

猜你喜歡
策略
基于“選—練—評(píng)”一體化的二輪復(fù)習(xí)策略
幾何創(chuàng)新題的處理策略
求初相φ的常見策略
例談未知角三角函數(shù)值的求解策略
我說你做講策略
“我說你做”講策略
數(shù)據(jù)分析中的避錯(cuò)策略
高中數(shù)學(xué)復(fù)習(xí)的具體策略
“唱反調(diào)”的策略
幸福(2017年18期)2018-01-03 06:34:53
價(jià)格調(diào)整 講策略求互動(dòng)
主站蜘蛛池模板: 无码国内精品人妻少妇蜜桃视频| 日韩视频免费| 国产精品青青| 亚洲一级色| 国产成人高清精品免费5388| 国产精品99久久久久久董美香| 日本高清成本人视频一区| 91系列在线观看| 久久中文电影| 日韩a在线观看免费观看| 亚洲人妖在线| 欧美福利在线观看| 欧美激情福利| 91福利国产成人精品导航| 日韩区欧美国产区在线观看 | 亚洲欧洲综合| 69av免费视频| 波多野结衣一区二区三区AV| 青青国产视频| 99精品久久精品| 青青国产视频| 欧美成人第一页| 伊人国产无码高清视频| 精品三级网站| 欧美日韩理论| 人妻熟妇日韩AV在线播放| 久久国产亚洲偷自| 免费人欧美成又黄又爽的视频| 一本大道无码高清| 日本道综合一本久久久88| 色丁丁毛片在线观看| 亚洲精品麻豆| 国产成人综合网| 日韩高清成人| 老司机午夜精品网站在线观看| 伊人成人在线| 国产性精品| 中文字幕在线永久在线视频2020| 欧美一道本| 欧洲高清无码在线| a级毛片一区二区免费视频| 在线中文字幕网| 国产成人高清亚洲一区久久| 国产69精品久久| 一级毛片视频免费| 国产人成在线观看| 国产欧美日韩精品第二区| 亚洲欧美极品| 91成人在线免费观看| 色综合网址| 国产精品视屏| 麻豆精品在线| 91九色国产porny| 婷婷综合色| av午夜福利一片免费看| 中文字幕佐山爱一区二区免费| 成人午夜免费视频| 丰满人妻中出白浆| 久久中文电影| 国产91全国探花系列在线播放| 精品国产一区二区三区在线观看| 国产乱子伦无码精品小说| 亚洲精品另类| 日本精品αv中文字幕| 亚洲色欲色欲www网| 欧美日韩福利| 国产欧美又粗又猛又爽老| 亚洲国产系列| 亚洲国产精品一区二区第一页免| 中国一级特黄视频| 国产欧美精品一区二区| 欧美一区二区自偷自拍视频| 国产白浆一区二区三区视频在线| 欧美一区二区自偷自拍视频| 国产高清在线观看91精品| 国产精女同一区二区三区久| 国产成年无码AⅤ片在线| 精品国产毛片| 99这里只有精品免费视频| 国产亚洲欧美在线专区| 色综合天天操| 国产 在线视频无码|