專利名稱::一種低復雜度的幀內(nèi)預測模式選擇方法
技術(shù)領域:
:本發(fā)明屬于視頻信息壓縮領域,具體涉及一種低復雜度的幀內(nèi)預測模式選擇方法。
背景技術(shù):
:目前的高級^L頻編碼標準中都包含了幀內(nèi)預測功能,利用臨近塊的樣本點作外推來實現(xiàn)對當前塊的預測,以更好的消除單幀圖像內(nèi)的空間冗余,這樣只需要對預測塊和當前塊的殘差進行編碼。尤其是在變化平坦的區(qū)域,利用幀內(nèi)預測可以大大的降低碼率。當一個宏塊是采用幀內(nèi)模式編碼時,利用先前已經(jīng)編碼并重構(gòu)的塊構(gòu)造一個預測塊P。對于亮度分量,可以為每個塊或者宏塊創(chuàng)建預測塊P。例如H.264編碼標準中4x4亮度塊共有9種可選模式,16x16亮度塊有4種可選模式。如圖l所示,在H.264標準中,利用相鄰塊中已經(jīng)解碼的13個樣本點(AL和Q)中的幾個或者所有的點,來預測當前4x4亮度塊中的樣本點(ap)。選擇9種預測模式中效果最好的一種,作為該塊的最佳預測模式。9種預測模式包括模式2的均值預測(DC—PRED)和如圖2所示的8種方向預測。對每一個4x4塊的預測模式都進行編碼需要占用很多比特,適當?shù)睦每臻g相鄰塊的相關性,可以達到高效編碼的目的。如圖3所示,C是當前的4x4亮度塊,根據(jù)A塊和B塊預測模式的不同組合得到C塊的一個最可能的預測模式。將得到的最可能的預測模式與前述C塊的最佳預測模式相比較,如果相同,則只需在編碼時使用1個比特表示最可能的預測模式,否則只需發(fā)送3個比特表示剩余8種預測模式中最佳的一個。在傳統(tǒng)的做法中,使用9種模式的全搜索方法來找到最優(yōu)的一種預測模式,主要的步驟如下所示1、根據(jù)一種模式構(gòu)造出4x4的預測塊P;2、計算原始塊與預測塊P之間的絕對誤差和6;3、計算開銷值c叫6=,16+磁,(1)&4"16=土^>">0—(2)x=0產(chǎn)0其中,義(2巧是量化因子w的指數(shù)函數(shù),2尸根據(jù)不同的標準,取值不同;A(w)用于調(diào)整預測模式在輸出碼流中所占的比例,e尸越大,預測模式所占比例越高;s(x,y)與s'(x,y)分別表示原始點和預測點,x、y為其坐標值;根據(jù)相鄰塊對當前塊預測,得到當前塊的最可能預測模式,R用來區(qū)別是否為最可能預測模式,當前模式是最可能的預測模式時及=0,其他8種情況下i=l;4、重復l-3步,從9種預測方式中選擇0^16值最小的一個,即為最佳的預測模式。雖然這種全搜索方法可以找到最佳的預測模式,但是它的計算量非常大,是幀內(nèi)和幀間編碼中耗時很多的一部分。專利CN200410006340/>開的方法,通過計算^f寺編碼宏塊的紋理特征,然后根據(jù)紋理特征中的紋理方向選出最優(yōu)的預測模式。這種方法需要進行宏塊紋理分析,如灰度梯度法、傅立葉頻譜分析法等,計算復雜度較高,不利于系統(tǒng)后期的平臺優(yōu)化。專利CN200480006978公開的方法,通過計算幀內(nèi)編碼塊的邊緣方向信息,然后進行最優(yōu)預測模式的選擇。這種方法需要確定塊內(nèi)所有象素的邊緣矢量的幅值和角度,為每一個象素計算邊緣方向直方圖,計算量很大,實用性不高。
發(fā)明內(nèi)容有鑒于此,本發(fā)明的主要目的在于提供一種實用性強,計算簡便的低復雜度的幀內(nèi)預測模式選擇方法。為達到上述目的,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的一種低復雜度的幀內(nèi)預測模式選擇方法,在當前塊中取表征紋理特征的兩組樣本點,根據(jù)相鄰塊的開銷值,計算閾值,該方法包括以下步驟A、判斷當前塊是否處于圖像幀的特殊位置,如果是,計算該特殊位置下的最優(yōu)預測模式并輸出,結(jié)束計算;如果不是,進入步驟B;B、計算當前塊在最可能預測模式下的開銷值,如果小于閾值,則輸出該模式,結(jié)束計算;反之,進入步驟C;C、選擇所有非最可能的預測模式中開銷值最小的一個,作為臨時最優(yōu)預測模式;D、比較最可能預測模式與臨時最優(yōu)預測模式的開銷值,選擇其中較小的作為最優(yōu)預測模式輸出。步驟A中特殊位置是指,當前塊處于圖像幀的最左上方、最上方或最左方。步驟A所述計算該特殊位置下的最優(yōu)預測模式分三種情況當前塊位于圖像幀最左上方,最優(yōu)預測模式為2;當前塊在圖像幀的最上方,計算在模式l、模式2和模式8下,所述兩組樣本點的開銷值,選擇開銷值最小的模式作為當前塊的最優(yōu)預測模式;當前塊在圖像幀的最左方,計算在模式0、模式2、模式3和模式7下,所述兩組樣本點的開銷值,選擇開銷值最小的模式作為當前塊的最優(yōu)預測模式。步驟C中計算臨時最優(yōu)預測模式開銷值的步驟包括Cl、計算所有非最可能的預測模式下第一組樣本點的絕對誤差和,絕對誤差和最小的模式,記為臨時最優(yōu)預測模式Mi左方的模式為M2,Mj右方的模式為M3;C2、判斷模式2是否為最可能的預測模式,如果是,記M4為空,進入步驟C4;否則,記模式2為M4,進入步驟C3;C3、判斷M2是否為最可能的預測模式,如果是,重新記M2左方的模式為M2,進入步驟C4;否則,判斷M3是否為最可能的預測模式,如果是,重新記M3右方的4莫式為M3,進入步驟C4;C4、分別計算模式MpM2、M3和M4的第二組樣本點的絕對誤差和,并與相應的第一組樣本點得絕對誤差和相加,得到各模式的絕對誤差和,選擇絕對誤差和最小的模式作為臨時最優(yōu)預測模式,進入步驟D。根據(jù)圖像塊的紋理特征,兩組樣本點包含的點數(shù)相同或不同。所述方法適用于最小塊為4x4的圖像幀。本發(fā)明通過選取特征點代替整個數(shù)據(jù)塊,在對視頻編碼質(zhì)量沒有明顯影響的情況下,顯著降低幀內(nèi)預測模式選擇的計算量,提高視頻編碼的實時性。圖1為4x4塊預測樣本點示意圖2為4x4塊預測的8種預測方向示意圖3為相鄰塊A、B、C關系圖4是本發(fā)明所述方法的流程圖。具體實施例方式本發(fā)明的主要思想是從簡化開銷值(Cost)的計算函數(shù)和減少需要驗證的模式數(shù)兩方面入手,對幀內(nèi)預測模式選擇進行處理。通常一個4x4的亮度塊具有的細節(jié)較少,紋理結(jié)構(gòu)是比較平滑的,這樣就可以通過減少4x4亮度塊中需要計算的樣本點數(shù)目來簡化Cost值計算函數(shù)。另外,在基于4x4亮度塊的幀內(nèi)預測中,最優(yōu)的預測模式通常與次優(yōu)的預測模式具有相似的方向;并且當QP很大時(比如40),其他模式中的罰因子4人(QP)將會增大,所以最可能的預測模式通常就是最優(yōu)的預測模式;特別的,在圖像內(nèi)容非?;祀s的區(qū)域,任何一種預測模式都不可能達到很好的預測效果。以圖1所示的4x4塊為例,本方法的當前塊(C塊)預測的主要步驟如下步驟l:在當前塊中取表征紋理特征的兩組樣本點。取當前4x4塊中的e、f、g、h、m、n、o和p作為第一組樣本點,a、b、c、d、i、j、k和l作為第二組樣本點。在計算Cost值時就采用公式Co《=+(3)其中,SADn是利用每一組中的n個樣本點計算得到的絕對誤差和,R和人(QP)與等式(1)中的含義相同。上述兩組才羊本點CosW和Costn2的和,記為Costm;SADnl和SADm的和,記為SADm。步驟2:判斷當前塊是否處于圖像幀的特殊位置,如果是,計算該位置下的最優(yōu)預測模式并輸出,退出計算;如果不是,進入步驟3。所謂圖像幀的特殊位置是指當前塊處于圖像幀的最左上方、最上方或最左方。其中,圖像幀最左上方的預測模式為2;如果當前塊在圖像幀的最上方,則在模式l、模式2和模式8下,計算上述兩組樣本點的C0Stm值,選擇C0Stm值最小的一個模式作為當前塊的最優(yōu)預測模式,并退出計算;如果當前塊在圖像幀的最左方,則在模式0、模式2、模式3和模式7下,計算上述兩組樣本點的C0Stm值,選擇C0Stm值最小的一個模式作為當前塊的最優(yōu)預測模式,并退出計算。如果當前塊不是處于圖像幀的特殊位置,則進入步驟3。步驟3:根據(jù)相鄰塊的Costm值,計算閾值T。相鄰塊位置如圖3所示,每個塊計算之后都會保存其C0Stm值,從中讀取A塊、B塊的Costm值。根據(jù)A塊、B塊的特征預測C塊,得到C塊的最可能預測模式,記錄該模式。如果最可能的預測模式就是最優(yōu)預測模式,則C塊與A塊或B塊具有相似的紋理結(jié)構(gòu),即C塊的預測殘差與A塊或B塊的預測殘差應該十分接近。再將罰因子人(QP)的作用考慮在內(nèi),將閾值T設定為7=min(Co、,Co《s)+尊)(4)其中,CostmA是A塊的Costm值,CostmB是B塊的Costm值,人(QP)與等式(1)中的含義相同。步驟4:計算C塊在最可能的預測模式下的CosU值,記為CostmC。此時,R=0,根據(jù)(1)式,CostmC=SADm。如果Costmc的結(jié)果小于閾值T,那么就把它作為當前4x4亮度塊的最優(yōu)預測模式,退出計算,將最可能的預測模式作為最終的結(jié)果輸出;否則說明最可能的預測模式不能像預測A塊或B塊的良好效果一樣來預測C塊,就必須在其他的8種預測模式中進行挑選,進入步驟5。步驟5:通過計算其他8種模式下第一組樣本點的SADnl,選出臨時最優(yōu)預測模式及其左右模式。除了最可能的預測模式外,其他預測模式在計算Costn值時都要受到罰因子X(QP)的相同制約,所以在比較其他8種預測才莫式的預測效果時,可以先不考慮罰因子的影響。由于模式2與方向性無關,需要單獨考慮,將計算得到的模式與模式2、最可能預測模式綜合比較,得到臨時最優(yōu)預測模式及其左右模式。具體步驟如下步驟501:計算所有非最可能的預測模式下第一組樣本點的SADnl,得到SADm值最小的一個模式,記為臨時最優(yōu)預測模式MbMi左方的模式記為M2,M!右方的模式記為M3。各種模式的左右關系如表1所示。<table>tableseeoriginaldocumentpage9</column></row><table>表1步驟502:因為模式2與方向性無關,表l中無法體現(xiàn),所以在計算中單獨考慮,用M4表示模式2與最可能預測模式的關系,判斷模式2是否為最可能的預測模式,如果是,記M4為空,進入步驟6;否則,記模式2為M4,進入步驟503。步驟503:判斷M2是否為最可能的預測模式,如果是,重新記M2左方的模式為M2,進入步驟6;否則,判斷M3是否為最可能的預測模式,如果是,重新記M3右方的模式為M3,進入步驟6。步驟6:分別計算在步驟5中得到的預測模式MpM2、M3和M4的第二組樣本點的SADn2值,并與其各自的第一組樣本點得SADnl值相加,選擇SADm值最小的一個作為新的臨時最優(yōu)預測模式,計算得到它的CosW值,記為C0StmM,進入步驟7。步驟7:比較C0StmC和C0StmM,選擇其中較小的一個作為最優(yōu)預測模式輸出。如果二者相等,說明圖像的方向細節(jié)已經(jīng)發(fā)生了變化,此時臨時最優(yōu)預測模式的預測效果要優(yōu)于最可能的預測模式。這時選擇臨時最優(yōu)預測模式作為最終的最優(yōu)預測;漠式,那么對于后續(xù)右方和下方的塊具有更佳的預測效果。在全搜索方法下為了找到最優(yōu)預測模式,每個4x4塊需要計算16x9=144個樣本點的Cost值。而實施例中的快速搜索方法最好的情況是只需要計算步驟1~4,即最可能的預測模式下16個點的Cost值。經(jīng)實驗發(fā)現(xiàn),當QP值增大時,只計算最可能預測模式的概率也隨之增大。例如在QP=16時約為30%,QP=31時增大為50%,QP=48時最大接近80%。最差的情況是步驟5中需要計算模式2,Cost值的樣本點總數(shù)為(16*1)+(8*8)+(8*4)=112可以看出即使在最差的情況下,實施例中的快速模式搜索方法還是節(jié)省了32個樣本點的計算量,使得預測模式選擇的時間效率提高20%左右。步驟1中,兩組樣本點包含的點數(shù)可以不同,根據(jù)圖像塊的紋理特征,選取最能表征紋理特征的點,作為樣本點。步驟3中閾值T的選取至關重要如果T較小,則不能有效的減少需要計算的預測模式數(shù);否則,較容易選擇最可能的預測模式作為最終的結(jié)果,不能有效的找到當前塊的最佳預測模式。一般的,在圖像內(nèi)容比較復雜的區(qū)域,可以適當?shù)脑龃骉的值;否則,應該減小T的值。另外,T的選擇與QP值的大小也有關系當QP較大時,預測誤差較大,則應該適當?shù)脑龃骉的值;否則,應該減小T的值。以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。權(quán)利要求1、一種低復雜度的幀內(nèi)預測模式選擇方法,其特征在于,在當前塊中取表征紋理特征的兩組樣本點,根據(jù)相鄰塊的開銷值,計算閾值,該方法包括以下步驟A、判斷當前塊是否處于圖像幀的特殊位置,如果是,計算該特殊位置下的最優(yōu)預測模式并輸出,結(jié)束計算;如果不是,進入步驟B;B、計算當前塊在最可能預測模式下的開銷值,如果小于閾值,則輸出該模式,結(jié)束計算;反之,進入步驟C;C、選擇所有非最可能的預測模式中開銷值最小的一個,作為臨時最優(yōu)預測模式;D、比較最可能預測模式與臨時最優(yōu)預測模式的開銷值,選擇其中較小的作為最優(yōu)預測模式輸出。2、根據(jù)權(quán)利要求1所述的低復雜度的幀內(nèi)預測模式選擇方法,其特征在于,步驟A中特殊位置是指,當前塊處于圖像幀的最左上方、最上方或最左方。3、根據(jù)權(quán)利要求2所述的低復雜度的幀內(nèi)預測模式選擇方法,其特征在于,步驟A所述計算該特殊位置下的最優(yōu)預測模式分三種情況當前塊位于圖像幀最左上方,最優(yōu)預測模式為2;當前塊在圖像幀的最上方,計算在模式l、模式2和模式8下,所述兩組樣本點的開銷值,選擇開銷值最小的模式作為當前塊的最優(yōu)預測模式;當前塊在圖像幀的最左方,計算在模式0、模式2、模式3和模式7下,所述兩組樣本點的開銷值,選擇開銷值最小的模式作為當前塊的最優(yōu)預測模式。4、根據(jù)權(quán)利要求1、2或3任一所述的低復雜度的幀內(nèi)預測模式選擇方法,其特征在于,步驟C中計算臨時最優(yōu)預測模式開銷值的步驟包括Cl、計算所有非最可能的預測模式下第一組樣本點的絕對誤差和,絕對誤差和最小的模式,記為臨時最優(yōu)預測模式MPM!左方的模式為M2,M,右方的模式為M3;C2、判斷模式2是否為最可能的預測模式,如果是,記M4為空,進入步驟C4;否則,記模式2為M4,進入步驟C3;C3、判斷M2是否為最可能的預測模式,如果是,重新記M2左方的模式為M2,進入步驟C4;否則,判斷M3是否為最可能的預測模式,如果是,重新記M3右方的模式為M3,進入步驟C4;C4、分別計算模式M。M2、M3和M4的第二組樣本點的絕對誤差和,并與相應的第一組樣本點得絕對誤差和相加,得到各^^莫式的絕對誤差和,選擇絕對誤差和最小的模式作為臨時最優(yōu)預測模式,進入步驟D。5、根據(jù)權(quán)利要求1所述的低復雜度的幀內(nèi)預測模式選擇方法,其特征在于,根據(jù)圖像塊的紋理特征,兩組樣本點包含的點數(shù)相同或不同。6、根據(jù)權(quán)利要求1所述的低復雜度的幀內(nèi)預測模式選擇方法,其特征在于,所述方法適用于最小塊為4x4的圖像幀。全文摘要本發(fā)明公開了一種低復雜度的幀內(nèi)預測模式選擇方法,在當前塊中取表征紋理特征的兩組樣本點,根據(jù)相鄰塊的開銷值,計算閾值,該方法包括以下步驟判斷當前塊是否處于圖像幀的特殊位置,如果是,計算該特殊位置下的最優(yōu)預測模式并輸出,結(jié)束計算;如果不是,計算當前塊在最可能預測模式下的開銷值,如果小于閾值,則輸出該模式,結(jié)束計算;反之,選擇所有非最可能的預測模式中開銷值最小的一個,作為臨時最優(yōu)預測模式;比較最可能預測模式與臨時最優(yōu)預測模式的開銷值,選擇其中較小的作為最優(yōu)預測模式輸出。本發(fā)明通過選取特征點代替整個數(shù)據(jù)塊,在對視頻編碼質(zhì)量沒有明顯影響的情況下,顯著降低幀內(nèi)預測模式選擇的計算量,提高視頻編碼的實時性。文檔編號H04N7/32GK101175212SQ20071017590公開日2008年5月7日申請日期2007年10月15日優(yōu)先權(quán)日2007年10月15日發(fā)明者雯左,梁立偉,寧王申請人:中興通訊股份有限公司