專利名稱:幀內(nèi)預(yù)測(cè)模式選擇方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視音頻處理技術(shù),尤其涉及一種幀內(nèi)預(yù)測(cè)模式選4奪方法。
背景技術(shù):
隨著圖像處理技術(shù)的不斷發(fā)展,視頻編解碼技術(shù)也隨之快速發(fā)展。
H.264/AVC就是新一代視頻編解碼標(biāo)準(zhǔn)?;诳臻g域的幀內(nèi)預(yù)測(cè)是 H.264/AVC標(biāo)準(zhǔn)中采用的一項(xiàng)重要新技術(shù)。在H.264/AVC標(biāo)準(zhǔn)中,編碼是以 宏塊(Macro Block,以下簡(jiǎn)稱MB)為單位的,每個(gè)MB的大小為16x16 的像素塊, 一個(gè)MB可以由一個(gè)亮度塊和兩個(gè)色度塊表示,亮度塊為1個(gè) 16x16的像素塊,色度塊為2個(gè)8x8的像素塊。亮度塊的兩種預(yù)測(cè)策略分別 為幀內(nèi)16x16預(yù)測(cè)和幀內(nèi)4x4預(yù)測(cè)。對(duì)于色度塊只有一種色度8x8的預(yù)測(cè) 策略,兩個(gè)色度塊使用相同的預(yù)測(cè)模式。
對(duì)于亮度塊幀內(nèi)4x4預(yù)測(cè), 一共有9種預(yù)測(cè)模式,當(dāng)前亮度塊的像素值 都是用與當(dāng)前編碼塊相鄰的已經(jīng)重構(gòu)獲取的像素值進(jìn)行預(yù)測(cè)的。圖1為現(xiàn)有 技術(shù)中亮度塊幀內(nèi)4x4預(yù)測(cè)的預(yù)測(cè)模式的預(yù)測(cè)方向。如圖1所示,其中箭頭 1代表0度預(yù)測(cè)方向也就是水平預(yù)測(cè)模式;箭頭0代表90度預(yù)測(cè)方向也就是 垂直預(yù)測(cè)模式;箭頭3代表45度預(yù)測(cè)方向也就是平板預(yù)測(cè)模式,圖中其它角 度分別對(duì)應(yīng)著不同的預(yù)測(cè)模式,總共有8種不同的預(yù)測(cè)方向?qū)?yīng)八種預(yù)測(cè)模 式。另外一種是直流(Direct Current,以下簡(jiǎn)稱DC)預(yù)測(cè)模式。亮度塊幀 內(nèi)16xl6預(yù)測(cè)共有4種預(yù)測(cè)模式垂直預(yù)測(cè),水平預(yù)測(cè),DC預(yù)測(cè),平板預(yù) 測(cè)。而色度塊幀內(nèi)8x8預(yù)測(cè)也有4種預(yù)測(cè)模式。在現(xiàn)有技術(shù)中,H.264/AVC 標(biāo)準(zhǔn)采用率失真優(yōu)化(Rate Distortion Optimization,以下簡(jiǎn)稱RDO )技術(shù) 進(jìn)行預(yù)測(cè)模式選擇,其中最優(yōu)的亮度塊預(yù)測(cè)模式計(jì)算過(guò)程為首先,分別計(jì)算9種4x4亮度塊模式的代價(jià)函數(shù)值,選擇具有最小代價(jià)的模式;然后將16 個(gè)4x4像素塊的最小的代價(jià)函數(shù)值相加之和作為當(dāng)前MB亮度采用4x4像素 塊分割下的代價(jià)函數(shù)值;再分別計(jì)算4種亮度16x16模式的當(dāng)前MB與重建 MB差值的絕對(duì)值之和,選擇具有最小絕對(duì)值之和的模式,計(jì)算該模式下的 代價(jià)函數(shù)值,得到當(dāng)前MB的亮度16x16預(yù)測(cè)策略下的代價(jià)函數(shù)值;最后, 比較上述兩個(gè)代價(jià)函數(shù)值,選擇具有最小代價(jià)函數(shù)值的模式作為該MB的幀 內(nèi)亮度預(yù)測(cè)模式。 一個(gè)MB的亮度塊和色度塊的所有的預(yù)測(cè)模式的組合是 M8x(M4xl6+M16)種,其中M8是色度8x8像素塊的模式數(shù),M4是亮度4x4 像素塊的模式數(shù),M16是亮度16x16像素塊的模式數(shù)。
在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)明人認(rèn)為現(xiàn)有技術(shù)至少具有如下缺陷首先, 為了獲得較高的編碼效率,H.264/AVC編碼器必須對(duì)所有的幀內(nèi)MB模式的 組合窮盡地進(jìn)行RDO計(jì)算。為了確定一個(gè)MB的幀內(nèi)預(yù)測(cè)的最優(yōu)才莫式,編碼 器需要進(jìn)行4x(9xl6+4)=592次RDO計(jì)算,從而導(dǎo)致相當(dāng)大的計(jì)算復(fù)雜度; 其次,RDO的計(jì)算公式為:RDCost = distortion +人x bitmte ,其中,distortion 表示以某種模式預(yù)測(cè)得到的重構(gòu)殘差;bitrate表示以該模式進(jìn)行預(yù)測(cè)編碼后 形成碼流的比特?cái)?shù),X是關(guān)于量化參數(shù)的函數(shù)。因此,為了得到RDCost必須 對(duì)當(dāng)前MB進(jìn)行預(yù)編碼,該編碼過(guò)程是相當(dāng)耗時(shí)的,從而導(dǎo)致不能實(shí)現(xiàn)實(shí)時(shí) 編碼。
發(fā)明內(nèi)容
本發(fā)明的目的是針對(duì)現(xiàn)有技術(shù)的缺陷,提供一種幀內(nèi)預(yù)測(cè)模式選擇方法, 以實(shí)現(xiàn)降低RDO運(yùn)算量,縮短運(yùn)算時(shí)間,提高幀內(nèi)預(yù)測(cè)效率以及實(shí)現(xiàn)實(shí)時(shí)編 碼的效果。
為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種幀內(nèi)預(yù)測(cè)模式選擇方法,包括 計(jì)算當(dāng)前編碼塊的邊方向強(qiáng)度值;
根據(jù)最小所述邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式和直流模式進(jìn)行幀內(nèi)預(yù)測(cè)處理。
所述計(jì)算當(dāng)前編碼塊的邊方向強(qiáng)度值具體為采用4x4像素塊、8x8像 素塊或16x16像素塊計(jì)算所述當(dāng)前編碼塊的邊方向強(qiáng)度值。
所述采用4x4像素塊計(jì)算所述當(dāng)前編碼塊的邊方向強(qiáng)度值具體為 將當(dāng)前4x4像素塊與其相鄰行和列中已重構(gòu)獲取的像素組成5x5像素
塊;
根據(jù)所述5x5像素塊的像素值計(jì)算該5x5像素塊的邊方向強(qiáng)度值。 所述根據(jù)最小所述邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式和直流模式進(jìn)行幀內(nèi)
預(yù)測(cè)處理之前還包括根據(jù)所述邊方向強(qiáng)度值選擇最小邊方向強(qiáng)度值所對(duì)應(yīng)
的至少一個(gè)預(yù)測(cè)模式,具體為
判斷邊方向強(qiáng)度值中最小的兩個(gè)邊方向強(qiáng)度值的差值是否大于第一閾
值,如果大于第一閾值,則選擇最小的一個(gè)邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式,
如果小于第一閾值,則判斷所述最小的兩個(gè)邊方向強(qiáng)度值的差值是否小于第
二閾值;
如果小于第二閾值,則選擇最小的五個(gè)邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式, 如果大于第二閾值,則選擇最小的三個(gè)邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式。
所述采用8x8像素塊或16xl6像素塊計(jì)算所述當(dāng)前編碼塊的邊方向強(qiáng)度 值具體為
將所述8x8像素塊或16x16像素塊劃分形成第一 4x4像素塊; 分別計(jì)算所述第一 4x4塊的每個(gè)子像素塊中所有像素的像素值的平均
值;
根據(jù)所述像素值的平均值計(jì)算預(yù)測(cè)模式的邊方向強(qiáng)度值。 所述根據(jù)最小所述邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式和直流模式進(jìn)行幀內(nèi)
預(yù)測(cè)處理之前還包括選擇最小的一個(gè)邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式。
由上述技術(shù)方案可知,本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法通過(guò)采用邊方向強(qiáng)
度值這一邊緣特征對(duì)當(dāng)前編碼塊內(nèi)的亮度塊和色度塊的預(yù)測(cè)模式進(jìn)行選擇,只保留具有最小邊方向強(qiáng)度值的一個(gè)或多個(gè)預(yù)測(cè)模式以及DC模式,在編碼
性能沒(méi)有改變的基礎(chǔ)上能夠有效地降低RDO運(yùn)算量,縮短運(yùn)算時(shí)間,提高幀 內(nèi)預(yù)測(cè)效率,/人而達(dá)到實(shí)時(shí)編碼的效果。
下面通過(guò)附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
圖1為現(xiàn)有技術(shù)中亮度塊幀內(nèi)4x4預(yù)測(cè)的預(yù)測(cè)模式的預(yù)測(cè)方向; 圖2為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第一實(shí)施例的流程圖; 圖3為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第二實(shí)施例的流程圖; 圖4為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第二實(shí)施例中5x5像素塊的示意圖; 圖5a為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法在計(jì)算0度角方向的邊方向強(qiáng)度值 時(shí)的計(jì)算示意圖5b為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法在計(jì)算90度角方向的邊方向強(qiáng)度 值時(shí)的計(jì)算示意圖5c為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法在計(jì)算45度角方向的邊方向強(qiáng)度 值時(shí)的計(jì)算示意圖5d為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法在計(jì)算135度角方向的邊方向強(qiáng)度 值時(shí)的計(jì)算示意圖6為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第三實(shí)施例的流程圖7為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第三實(shí)施例中將色度8x8像素塊劃 分的示意圖。
具體實(shí)施例方式
圖2為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第一實(shí)施例的流程圖。如圖2所示, 該方法包括
步驟201、計(jì)算當(dāng)前編碼塊的邊方向強(qiáng)度值。邊方向強(qiáng)度值代表當(dāng)前編碼塊的紋理沿著某個(gè)方向的強(qiáng)度,體現(xiàn)了視頻 圖像紋理的變化趨勢(shì)。如果針對(duì)當(dāng)前編碼塊的預(yù)測(cè)模式在某個(gè)方向上的邊方 向強(qiáng)度值越小,就說(shuō)明當(dāng)前編碼塊的紋理可能是沿著這個(gè)方向,因此,使用 該方向?qū)?yīng)的預(yù)測(cè)模式進(jìn)行幀內(nèi)預(yù)測(cè)的效果就越好。
步驟203、根據(jù)最小所述邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式和直流模式進(jìn)
^f亍幀內(nèi)預(yù)測(cè)處理。
可以將與當(dāng)前編碼塊對(duì)應(yīng)的預(yù)測(cè)模式的邊方向強(qiáng)度值作為 一種邊緣特征 對(duì)各種預(yù)測(cè)模式的預(yù)測(cè)效果進(jìn)行區(qū)分。通過(guò)計(jì)算各種預(yù)測(cè)模式的邊方向強(qiáng)度 值就可以對(duì)各種預(yù)測(cè)模式進(jìn)行篩選。根據(jù)預(yù)測(cè)精度以及其它不同需求,可以 選擇具有最小邊方向強(qiáng)度值的一個(gè)或者多個(gè)預(yù)測(cè)模式,而排除那些邊方向強(qiáng)
度值較大也就是預(yù)測(cè)效果不好的預(yù)測(cè)模式,從而降低后續(xù)RDO的計(jì)算量。
通過(guò)實(shí)驗(yàn)可知,DC模式為無(wú)方向性的預(yù)測(cè)模式,是幀內(nèi)預(yù)測(cè)中最常用 的模式,因此,DC模式總是作為候選模式。同時(shí),將步驟203中選擇出的預(yù) 測(cè)效果較好的一個(gè)或多個(gè)預(yù)測(cè)模式也作為候選模式。
與現(xiàn)有H.264/AVC標(biāo)準(zhǔn)中使用全部預(yù)測(cè)模式進(jìn)行RDO計(jì)算相比,本發(fā) 明幀內(nèi)預(yù)測(cè)模式選擇方法第一實(shí)施例通過(guò)采用邊方向強(qiáng)度值這一邊緣特征對(duì) 預(yù)測(cè)模式進(jìn)行選擇,只保留具有較小邊方向強(qiáng)度值的一個(gè)或多個(gè)預(yù)測(cè)模式以 及DC模式,在編碼性能沒(méi)有改變的基礎(chǔ)上能夠有效地降低RDO運(yùn)算量,縮 短運(yùn)算時(shí)間,提高幀內(nèi)預(yù)測(cè)效率,因此能夠達(dá)到實(shí)時(shí)編碼的效果。
圖3為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第二實(shí)施例的流程圖。計(jì)算與當(dāng)前 MB對(duì)應(yīng)的預(yù)測(cè)模式的邊方向強(qiáng)度值可以采用4x4像素塊、8x8像素塊或 16x16像素塊來(lái)計(jì)算預(yù)測(cè)模式的邊方向強(qiáng)度值。對(duì)于一個(gè)MB中的亮度塊而 言有兩種預(yù)測(cè)策略幀內(nèi)16xl6預(yù)測(cè)和幀內(nèi)4x4預(yù)測(cè)。本實(shí)施例釆用4x4預(yù) 測(cè)策略對(duì)一個(gè)MB中的亮度塊進(jìn)行幀內(nèi)預(yù)測(cè)。如圖3所示,該方法包括
步驟301、將當(dāng)前4x4亮度塊與其相鄰行和列中已重構(gòu)獲取的像素組成 5x5像素塊。由于視頻圖像的運(yùn)動(dòng)變化具有連續(xù)性,因此,相鄰的像素塊之間具有一 定相關(guān)性。由于當(dāng)前的編碼塊是用它左側(cè)和上側(cè)已經(jīng)重構(gòu)出來(lái)的像素進(jìn)行預(yù) 測(cè)的,因此為了更加準(zhǔn)確的檢測(cè)出當(dāng)前像素塊的預(yù)測(cè)模式的邊方向強(qiáng)度值,
將與當(dāng)前4x4像素塊相鄰的行和列中已重構(gòu)獲取的像素,也就是該4x4像素 塊上側(cè)和左側(cè)已經(jīng)重構(gòu)獲取的9個(gè)像素與該4x4像素塊結(jié)合起來(lái)組成5x5像 素塊。圖4為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第二實(shí)施例中5x5像素塊的示意 圖。如圖4所示,在本實(shí)施例中所使用到的與該4x4像素塊相鄰的像素值為 其左側(cè)和上側(cè)虛線框內(nèi)的用大寫(xiě)字母表示的像素值,大寫(xiě)字母代表已經(jīng)重構(gòu) 獲取的9個(gè)像素值,剩下的4x4像素塊為待預(yù)測(cè)的像素值,用這個(gè)5x5像素 塊計(jì)算各個(gè)預(yù)測(cè)模式的邊方向強(qiáng)度值。
步驟303、根據(jù)5x5像素塊的像素值計(jì)算邊方向強(qiáng)度值。 本實(shí)施例計(jì)算了 5x5像素塊的八個(gè)方向的邊方向強(qiáng)度值,這八個(gè)方向包
括0度角方向、90度角方向、45度角方向、135度角方向、22.5度角方向、
67.5度角方向、112.5度角方向以及157.5度角方向。各個(gè)方向的邊方向強(qiáng)度值的計(jì)算公式如下所示
圖5a為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法在計(jì)算0度角方向的邊方向強(qiáng)度值
時(shí)的計(jì)算示意圖。如圖5a所示,計(jì)算O度角方向的預(yù)測(cè)模式的邊方向強(qiáng)度值,
其計(jì)算公式為Z= Z | -q, ^ =丄^>,,;:為O度角方向的像素的均值。
圖5b為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法在計(jì)算90度角方向的邊方向強(qiáng)度 值時(shí)的計(jì)算示意圖。如圖5b所示,計(jì)算90度角方向的預(yù)測(cè)模式的邊方向強(qiáng)
度值,其計(jì)算公式為?。。= Z卜,廠^ =丄丄 ;^為90度角方向的像 素的均值。
圖5c為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法在計(jì)算45度角方向的邊方向強(qiáng)度 值時(shí)的計(jì)算示意圖。如圖5c所示,計(jì)算45度角方向的預(yù)測(cè)模式的邊方向強(qiáng) 度值,其計(jì)算公式為<formula>formula see original document page 10</formula>
圖5d為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法在計(jì)算135度角方向的邊方向強(qiáng)度 值時(shí)的計(jì)算示意圖。如圖5d所示,計(jì)算135度角方向的預(yù)測(cè)模式的邊方向強(qiáng) 度值,其計(jì)算公式為
<formula>formula see original document page 10</formula>除了計(jì)算上述四個(gè)主要方向上的邊方向強(qiáng)度之外,還可以利用上述四 個(gè)邊方向強(qiáng)度值計(jì)算以下四個(gè)方向上的邊方向強(qiáng)度值。
計(jì)算22.5度角方向的預(yù)測(cè)模式的邊方向強(qiáng)度值,其計(jì)算公式為
<formula>formula see original document page 10</formula>2; 計(jì)算67.5度角方向的預(yù)測(cè)模式的邊方向強(qiáng)度值,其計(jì)算公式為
,<formula>formula see original document page 10</formula>2; 計(jì)算112.5度角方向的預(yù)測(cè)模式的邊方向強(qiáng)度值,其計(jì)算公式為
<formula>formula see original document page 10</formula>2; 計(jì)算157.5度角方向的預(yù)測(cè)模式的邊方向強(qiáng)度值,其計(jì)算公式為
在上述各式中,"為各個(gè)角度上的預(yù)測(cè)模式的邊方向強(qiáng)度值,i、 j分別為 5x5像素塊的行標(biāo)號(hào)和列標(biāo)號(hào),a,y(0^',乂^4)為5x5像素塊的像素值。
這樣通過(guò)上面的八個(gè)公式就可以計(jì)算出當(dāng)前5x5像素塊在八個(gè)不同的方 向的預(yù)測(cè)模式的邊方向強(qiáng)度值了。如果計(jì)算出來(lái)的邊方向強(qiáng)度值越小就說(shuō)明 當(dāng)前像素塊的邊方向是沿著這個(gè)方向的,同時(shí)也說(shuō)明了使用這個(gè)方向所對(duì)應(yīng) 的預(yù)測(cè)模式的預(yù)測(cè)效果也就越好。步驟305、判斷邊方向強(qiáng)度值中最小的兩個(gè)邊方向強(qiáng)度值的差值是否大 于第一閾值,如果大于第一閾值,則執(zhí)行步驟307,如果小于第一閾值,執(zhí) 行步驟309;
步驟307、選擇最小的一個(gè)邊方向強(qiáng)度值對(duì)應(yīng)的預(yù)測(cè)模式,執(zhí)行步驟315。 步驟309、判斷邊方向強(qiáng)度值中最小的兩個(gè)邊方向強(qiáng)度值的差值是否小
于第二閾值;如果小于第二閾值,則執(zhí)行步驟311,如果大于第二閾值,則
執(zhí)行步驟313;
步驟311、選擇最小的五個(gè)邊方向強(qiáng)度值對(duì)應(yīng)的預(yù)測(cè)模式,執(zhí)行步驟315。 步驟313、選擇最小的三個(gè)邊方向強(qiáng)度值對(duì)應(yīng)的預(yù)測(cè)模式,執(zhí)行步驟315。 具體地,如果上述這八個(gè)邊方向強(qiáng)度值中最小的兩個(gè)值之間的差值大 于預(yù)設(shè)的第一閾值,這說(shuō)明具有最小邊方向強(qiáng)度值的預(yù)測(cè)模式很可能就是 最優(yōu)的模式,在這種情況下只選擇具有最小邊方向強(qiáng)度值的一個(gè)預(yù)測(cè)模 式。如果上述八個(gè)邊方向強(qiáng)度值中最小的兩個(gè)值之間的差值小于第二閾值 的話,這說(shuō)明當(dāng)前的像素塊非常平滑,很難選擇哪個(gè)模式是最優(yōu)的,這種 情況下選擇具有最小邊方向強(qiáng)度值的五種預(yù)測(cè)模式。其他情況下,也就是 介于上述兩種情況之間時(shí),只選擇三種具有最小邊方向強(qiáng)度值的預(yù)測(cè)模 式。通過(guò)實(shí)驗(yàn)發(fā)現(xiàn)第一閾值選擇150,而第二閾值選擇40適合于各種類型 的^L頻序列。
步驟315、根據(jù)直流模式和選擇出的預(yù)測(cè)模式進(jìn)行幀內(nèi)預(yù)測(cè)處理。 對(duì)于只從八個(gè)方向的預(yù)測(cè)模式中選擇一種預(yù)測(cè)模式的情況,總共有兩種 候選模式;對(duì)于從八個(gè)方向的預(yù)測(cè)模式中選擇五種預(yù)測(cè)模式的情況,總共有 六種候選模式;對(duì)于從八個(gè)方向的預(yù)測(cè)模式中選擇三種預(yù)測(cè)模式的情況,總 共有四種候選模式。相對(duì)于原先九種候選模式來(lái)說(shuō),減小了候選模式的數(shù)量, 進(jìn)而降低了候選幀內(nèi)預(yù)測(cè)處理的運(yùn)算量。
本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第二實(shí)施例通過(guò)對(duì)亮度塊4x4預(yù)測(cè)策略采 用邊方向強(qiáng)度值這一邊緣特征對(duì)亮度塊的預(yù)測(cè)模式進(jìn)行選擇。在計(jì)算邊方向強(qiáng)度值的過(guò)程中充分考慮了用來(lái)預(yù)測(cè)當(dāng)前4x4像素塊的已經(jīng)重構(gòu)獲取的像素
的像素值,從而能夠提高預(yù)測(cè)精度;本實(shí)施例根據(jù)預(yù)設(shè)的第一閾值和第二閾 值選擇具有較小邊方向強(qiáng)度值的一個(gè)、三個(gè)或者五個(gè)預(yù)測(cè)模式以及DC模式 作為候選模式,在編碼性能沒(méi)有改變的基礎(chǔ)上能夠有效地降低RDO運(yùn)算量, 縮短運(yùn)算時(shí)間,提高幀內(nèi)預(yù)測(cè)效率,從而達(dá)到實(shí)時(shí)編碼的效果。
圖6為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第三實(shí)施例的流程圖。對(duì)于一個(gè)MB 中的色度塊而言只有一種預(yù)測(cè)策略幀內(nèi)8x8預(yù)測(cè)。本實(shí)施例采用8x8預(yù)測(cè) 策略對(duì)一個(gè)MB中的色度塊進(jìn)行幀內(nèi)預(yù)測(cè)。如圖6所示,該方法包括
步驟601、將8x8像素塊劃分成第一4x4像素塊。
圖7為本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第三實(shí)施例中將色度8x8像素塊劃 分的示意圖。如圖7所示,8x8像素塊經(jīng)過(guò)劃分后形成的第一4x4像素塊中, 每個(gè)像素塊是由一個(gè)2x2子像素塊組成的。
步驟603、分別計(jì)算第一 4x4像素塊的每個(gè)子像素塊中所有像素的像素 值的平均值。
圖7中平均值"。。即該 所在的2x2子像素塊的平均像素值的計(jì)算公式
為
<formula>formula see original document page 12</formula>其它平均像素值的計(jì)算以此類推。
步驟605、根據(jù)各個(gè)平均值計(jì)算預(yù)測(cè)模式的邊方向強(qiáng)度值。 本實(shí)施例計(jì)算了第一 4x4像素塊在三個(gè)方向上的邊方向強(qiáng)度值,這三個(gè) 方向包括0度角方向、90度角方向、45度角方向。在上一實(shí)施例中,計(jì)算 邊方向強(qiáng)度值時(shí)考慮了與4x4像素塊相鄰的像素的9個(gè)像素值,而在本實(shí)施 例中,由于當(dāng)前像素塊的大小為8x8,重構(gòu)出來(lái)的參考像素和當(dāng)前像素塊的 像素距離較遠(yuǎn),因此相關(guān)性不大,因此,此處不再使用與第一4x4像素塊相 鄰像素的像素值。三個(gè)方向的邊方向強(qiáng)度值的具體計(jì)算公式如下所示計(jì)算0度角方向的預(yù)測(cè)模式的邊方向強(qiáng)度值,其計(jì)算公式為
d<formula>formula see original document page 13</formula>其中,^為O度角方向的像素的均值;
計(jì)算90度角方向的預(yù)測(cè)模式的邊方向強(qiáng)度值,其計(jì)算公式為
<formula>formula see original document page 13</formula>其中,^為90度角方向的像素的均值;
計(jì)算45度角方向的預(yù)測(cè)模式的邊方向強(qiáng)度值,其計(jì)算公式為
<formula>formula see original document page 13</formula>其中,d為各個(gè)角度對(duì)應(yīng)的邊方向強(qiáng)度值,i,j分別為第一4x4像素塊的 行標(biāo)號(hào)和列標(biāo)號(hào), (03)為第一 4x4像素塊的像素值。
步驟607、選擇三個(gè)方向的預(yù)測(cè)模式中與最小邊方向強(qiáng)度值對(duì)應(yīng)的一個(gè) 預(yù)測(cè)模式。
步驟609、根據(jù)直流模式和選擇出的一個(gè)預(yù)測(cè)模式進(jìn)行幀內(nèi)預(yù)測(cè)處理。 對(duì)于亮度塊采用幀內(nèi)16x16預(yù)測(cè)來(lái)說(shuō),也可以使用上述色度塊的預(yù)測(cè)方 法。所不同的是,在劃分之后,形成的是4x4子像素塊,在求取平均像素值 是對(duì)該4x4子像素塊內(nèi)的16個(gè)像素的像素值進(jìn)行平均。
本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法第三實(shí)施例在色度塊8x8預(yù)測(cè)策略的情況 下首先對(duì)其進(jìn)行劃分,求取像素平均值后再采用邊方向強(qiáng)度值這一邊緣特征 對(duì)色度塊的預(yù)測(cè)模式進(jìn)行選擇。只選擇三個(gè)預(yù)測(cè)模式中具有最小邊方向強(qiáng)度 值的一個(gè)預(yù)測(cè)模式以及DC模式作為候選模式,在編碼性能沒(méi)有改變的基礎(chǔ) 上能夠有效地降低RDO運(yùn)算量,縮短運(yùn)算時(shí)間,提高幀內(nèi)預(yù)測(cè)效率,從而達(dá) 到實(shí)時(shí)編碼的效果。綜合本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法的三個(gè)實(shí)施例可知,在對(duì)一個(gè)編碼塊 進(jìn)行幀內(nèi)預(yù)測(cè)時(shí),分別對(duì)色度塊和亮度塊采用上述的方法進(jìn)行候選模式的選
擇,能夠使得現(xiàn)有技術(shù)H.264/AVC標(biāo)準(zhǔn)下進(jìn)行592次RDO計(jì)算的運(yùn)算次數(shù) 最低降至68次,運(yùn)算量得到顯著的降低,在保持原來(lái)的編碼性能的前提下極 大地加快了幀內(nèi)編碼速度,進(jìn)而能夠獲得實(shí)時(shí)編碼的效果。
最后應(yīng)說(shuō)明的是以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非對(duì)其進(jìn) 行限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技 術(shù)人員應(yīng)當(dāng)理解其依然可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換, 而這些修改或者等同替換亦不能使修改后的技術(shù)方案脫離本發(fā)明技術(shù)方案的 精神和范圍。
權(quán)利要求
1、一種幀內(nèi)預(yù)測(cè)模式選擇方法,其特征在于包括計(jì)算當(dāng)前編碼塊的邊方向強(qiáng)度值;根據(jù)最小所述邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式和直流模式進(jìn)行幀內(nèi)預(yù)測(cè)處理。
2、 根據(jù)權(quán)利要求1所述的幀內(nèi)預(yù)測(cè)模式選擇方法,其特征在于,所述計(jì) 算當(dāng)前編碼塊的邊方向強(qiáng)度值具體為采用4x4像素塊、8x8像素塊或16x16 像素塊計(jì)算所述當(dāng)前編碼塊的邊方向強(qiáng)度值。
3、 根據(jù)權(quán)利要求2所述的幀內(nèi)預(yù)測(cè)模式選擇方法,其特征在于,所述采 用4x4像素塊計(jì)算所述當(dāng)前編碼塊的邊方向強(qiáng)度值具體為將當(dāng)前4x4像素塊與其相鄰行和列中已重構(gòu)獲取的像素組成5x5像素塊; 根據(jù)所述5x5像素塊的像素值計(jì)算該5x5像素塊的邊方向強(qiáng)度值。
4、 根據(jù)權(quán)利要求3所述的幀內(nèi)預(yù)測(cè)模式選擇方法,其特征在于,所述根 據(jù)最小所述邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式和直流模式進(jìn)行幀內(nèi)預(yù)測(cè)處理之 前還包括根據(jù)所述邊方向強(qiáng)度值選擇最小邊方向強(qiáng)度值所對(duì)應(yīng)的至少一個(gè) 預(yù)測(cè)模式,具體為判斷邊方向強(qiáng)度值中最小的兩個(gè)邊方向強(qiáng)度值的差值是否大于第一閾 值,如果大于第一閾值,則選擇最小的一個(gè)邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式, 如果小于第一閾值,則判斷所述最小的兩個(gè)邊方向強(qiáng)度值的差值是否小于第 二閾值;如果小于第二閾值,則選擇最小的五個(gè)邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式, 如果大于第二閾值,則選擇最小的三個(gè)邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式。
5、 根據(jù)權(quán)利要求2所述的幀內(nèi)預(yù)測(cè)模式選擇方法,其特征在于,所述采 用8x8像素塊或16xl6像素塊計(jì)算所述當(dāng)前編碼塊的邊方向強(qiáng)度值具體為將所述8x8像素塊或16x16像素塊劃分形成第一 4x4像素塊; 分別計(jì)算所述第一 4x4像素塊的每一個(gè)子像素塊中所有像素的像素值的平均值;根據(jù)所述像素值的平均值計(jì)算預(yù)測(cè)模式的邊方向強(qiáng)度值。
6、根據(jù)權(quán)利要求5所述的幀內(nèi)預(yù)測(cè)模式選擇方法,其特征在于,所述根 據(jù)最小所述邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式和直流模式進(jìn)行幀內(nèi)預(yù)測(cè)處理之 前還包括選擇最'J、一個(gè)邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)^^莫式。
全文摘要
本發(fā)明公開(kāi)了一種幀內(nèi)預(yù)測(cè)模式選擇方法,包括計(jì)算當(dāng)前編碼塊的邊方向強(qiáng)度值;根據(jù)最小所述邊方向強(qiáng)度值所對(duì)應(yīng)的預(yù)測(cè)模式和直流模式進(jìn)行幀內(nèi)預(yù)測(cè)處理。所述計(jì)算當(dāng)前編碼塊的邊方向強(qiáng)度值具體為采用4×4像素塊、8×8像素塊或16×16像素塊計(jì)算所述當(dāng)前編碼塊的邊方向強(qiáng)度值。本發(fā)明幀內(nèi)預(yù)測(cè)模式選擇方法通過(guò)采用邊方向強(qiáng)度值這一邊緣特征對(duì)預(yù)測(cè)模式進(jìn)行選擇,只保留具有最小邊方向強(qiáng)度值的一個(gè)或多個(gè)預(yù)測(cè)模式以及DC模式,在編碼性能沒(méi)有改變的基礎(chǔ)上能夠有效地降低RDO運(yùn)算量,縮短運(yùn)算時(shí)間,提高幀內(nèi)預(yù)測(cè)效率,從而達(dá)到實(shí)時(shí)編碼的效果。
文檔編號(hào)H04N11/04GK101309421SQ20081011541
公開(kāi)日2008年11月19日 申請(qǐng)日期2008年6月23日 優(yōu)先權(quán)日2008年6月23日
發(fā)明者史紀(jì)軍, 尹寶才, 施云惠, 李敬華, 瑾 王 申請(qǐng)人:北京工業(yè)大學(xué)