欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

幀間模式選擇方法

文檔序號(hào):9263750閱讀:983來(lái)源:國(guó)知局
幀間模式選擇方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明是有關(guān)于一種視頻編碼技術(shù),且特別是有關(guān)于一種幀間模式選擇方法。
【背景技術(shù)】
[0002]H.264編碼器中,幀間模式的編碼運(yùn)算量通常會(huì)占據(jù)整個(gè)編碼器80%以上的運(yùn)算量。巾貞間編碼的核心運(yùn)算部分為運(yùn)動(dòng)估計(jì)(mot1n estimat1n),其占用最多的邏輯與時(shí)鐘資源(clock resource)。一般而言,幀間模式的運(yùn)動(dòng)估計(jì)包括整像素運(yùn)動(dòng)估計(jì)(integer pixel mot1n estimat1n, I ME)和分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)(fract1nal pixel mot1nestimat1n, FME)。
[0003]在進(jìn)行整像素運(yùn)動(dòng)估計(jì)時(shí),首先要計(jì)算運(yùn)動(dòng)矢量預(yù)測(cè)值(mot1n vectorpredict1n, MVP)。而在分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)中,對(duì)于P巾貞(P frame)而言,每個(gè)宏塊(macroblock, MB)要搜索41個(gè)運(yùn)動(dòng)矢量(mot1n vector, MV),而對(duì)于B巾貞(B frame)而言,每個(gè)宏塊要搜索82個(gè)運(yùn)動(dòng)矢量。
[0004]在處理B幀的時(shí)候,若搜索82個(gè)運(yùn)動(dòng)矢量,則處理一個(gè)宏塊需要1200時(shí)鐘周期(cycles),但是這樣的速度并無(wú)法滿足1SOp即時(shí)編碼的性能要求。另外,通過(guò)統(tǒng)計(jì)發(fā)現(xiàn),8X8以下子塊劃分的搜索最耗時(shí),大約占據(jù)整個(gè)分?jǐn)?shù)像素編碼時(shí)間的70%。為了提高編碼速度,一般X264編碼器對(duì)于B幀不做8X8以下的運(yùn)動(dòng)搜索。如此一來(lái),規(guī)格上便缺少了8X8以下子塊的編碼,對(duì)于細(xì)節(jié)較多的圖像畫質(zhì)有較大的損失。

【發(fā)明內(nèi)容】

[0005]本發(fā)明提供一種幀間模式選擇方法,利用整像素運(yùn)動(dòng)估計(jì)的結(jié)果,預(yù)判斷尺寸小于8X8的劃分,從而減少所需分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)的運(yùn)算時(shí)間,同時(shí)編碼的圖像質(zhì)量亦與原來(lái)的相近。
[0006]本發(fā)明的幀間模式選擇方法包括下列步驟(a)?(i)。(a)劃分宏塊以獲得尺寸16X16、16X8及8X16的宏塊分割單元以及尺寸8X8的子宏塊單元。(b)對(duì)每一個(gè)8X8子宏塊單元進(jìn)行劃分以獲得8 X 4、4 X 8及4 X 4的第一子宏塊分割單元與8 X 8的第二子宏塊分割單元。(c)對(duì)于上述每一個(gè)16X16、16X8及8X16宏塊分割單元以及每一個(gè)8X4、4X8及4X4第一子宏塊分割單元和每一個(gè)8X8第二子宏塊分割單元,分別執(zhí)行整像素運(yùn)動(dòng)估計(jì)。(d)基于上述整像素運(yùn)動(dòng)估計(jì)的結(jié)果,獲得每一個(gè)8X8子宏塊單元內(nèi)的最佳第一子宏塊分割單元。(e)對(duì)于每一個(gè)8X8子宏塊單元的最佳第一子宏塊分割單元執(zhí)行分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì),獲得每一個(gè)每一個(gè)子宏塊單元的第一代價(jià)。(f)基于上述整像素運(yùn)動(dòng)估計(jì)的結(jié)果,分別對(duì)于每一個(gè)8X8子宏塊單元?jiǎng)澐侄玫?X8第二子宏塊分割單元執(zhí)行上述分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì),以獲得每一個(gè)8X8子宏塊單元的第二代價(jià)。(g)基于每一個(gè)8X8子宏塊單元的第一代價(jià)與第二代價(jià),而獲得以8X8子宏塊單元來(lái)劃分16X 16宏塊的最佳代價(jià)。(h)對(duì)每一個(gè)16 X 16、16 X 8及8 X 16宏塊分割單元執(zhí)行上述分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì),獲得上述尺寸16X16、16X8及8X16分別對(duì)應(yīng)的多個(gè)第三代價(jià)。(i)自上述最佳代價(jià)與上述多個(gè)第三代價(jià)中選擇最小值。
[0007]在本發(fā)明的一實(shí)施例中,上述步驟(d)還包括:基于上述整像素運(yùn)動(dòng)估計(jì)的結(jié)果,分別計(jì)算上述第一子宏塊分割單元為上述尺寸4X8、8X4及4X4的多個(gè)整像素代價(jià)和SUMJME (4 X 8)、SUMJME (8 X 4)及SUMJME (4 X 4);以及選擇上述整像素代價(jià)和SUM_IME(4X8), SUM_IME(8X4)及SUMJME(4X4)中的最小值,以上述最小值對(duì)應(yīng)的尺寸作為第一最佳尺寸,并以上述第一最佳尺寸對(duì)應(yīng)的上述第一子宏塊分割單元作為上述最佳第一子宏塊分割單元。在此,以ImeCostJ) (4X8)、ImeCost_l (4X8)表示在尺寸為4X8的兩個(gè)第一子宏塊分割單元的整像素代價(jià),以ImeCostJ) (8 X 4)、ImeCostJ (8X4)表示尺寸為8X4的兩個(gè)第一子宏塊分割單元的整像素代價(jià),以ImeCost_0 (4X4)?ImeCost_3 (4X4)表示尺寸為4X4的四個(gè)第一子宏塊分割單元的整像素代價(jià),則SUM_IME(4X8)、SUM_IME (8 X 4)及 SUMJME (4 X 4)如下所示:
[0008]SUMJME (4 X 8) = ImeCost_0 (4 X 8) +ImeCost_l (4 X 8);
[0009]SUMJME (8 X 4) = ImeCost_0 (8 X 4) +ImeCost_l (8 X 4);以及
[0010]SUM_IME(4 X 4) = ImeCost_0(4 X 4)+ImeCost_l(4 X 4)+ImeCost_2(4 X 4)+ImeCost_3 (4X4)。
[0011]在本發(fā)明的一實(shí)施例中,基于上述整像素運(yùn)動(dòng)估計(jì)的結(jié)果,分別計(jì)算上述第一子宏塊分割單元的上述多個(gè)整像素代價(jià)和的步驟還包括:當(dāng)上述幀間模式選擇方法用于B幀,分別獲得每一個(gè)第一子宏塊分割單元在ListO方向及Listl方向的上述整像素代價(jià)和;以及當(dāng)上述幀間模式選擇方法用于P幀,獲得每一個(gè)第一子宏塊分割單元在ListO方向的整像素代價(jià)和。
[0012]在本發(fā)明的一實(shí)施例中,上述步驟(e)包括:針對(duì)以第一最佳尺寸劃分8X8子宏塊單元而獲得的最佳第一子宏塊分割單元,執(zhí)行分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì),而獲得多個(gè)分?jǐn)?shù)像素代價(jià);以及將上述多個(gè)分?jǐn)?shù)像素代價(jià)相加,以獲得第一代價(jià)。
[0013]在本發(fā)明的一實(shí)施例中,在上述步驟(f)中,當(dāng)上述幀間模式選擇方法用于B幀,對(duì)每一個(gè)8X8第二子宏塊分割單元執(zhí)行分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì),獲得每一個(gè)8X8第二子宏塊分割單元在ListO方向、Listl方向以及雙向三者的預(yù)測(cè)代價(jià);以及自上述三個(gè)預(yù)測(cè)代價(jià)中選擇最小值作為第二代價(jià)。另外,在上述步驟(f)中,當(dāng)幀間模式選擇方法用于P幀,對(duì)于每一個(gè)8 X 8第二子宏塊分割單元執(zhí)行分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì),獲得每一個(gè)8 X 8第二子宏塊分割單元在ListO方向的代價(jià)作為第二代價(jià)。
[0014]在本發(fā)明的一實(shí)施例中,上述步驟(g)包括:分別在四個(gè)8X8子宏塊單元中,選擇第一代價(jià)與第二代價(jià)中的最小值,藉此獲得四個(gè)最小代價(jià)BestCOSt_0(8X8)、BestCost_l (8X8)、BestCost_2 (8 X 8)以及 BestCost_3 (8X8),并將上述四個(gè)最小代價(jià)加總而獲得最佳代價(jià)SumCost (8X8),即
[0015]SumCost (8 X 8) = BestCost_0(8 X 8)+BestCost_l(8 X 8)+BestCost_2(8 X 8)+BestCost_3 (8X8)。
[0016]在本發(fā)明的一實(shí)施例中,上述步驟(h)包括:(h-Ι)基于對(duì)宏塊分割單元執(zhí)行分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)的結(jié)果,分別獲得每一個(gè)宏塊分割單元的尺寸為16 X 16、16 X 8及8 X 16的最佳預(yù)測(cè)代價(jià);以及(h-2)基于上述最佳預(yù)測(cè)代價(jià),分別獲得尺寸為16X16、16X8及8X16的宏塊分割單元的第三代價(jià) 3rd_cost (16X 16)、3rd_cost (16X8)及 3rd_cost (8X 16)。在此,以block_cost(16X16)表示尺寸為16X16的一個(gè)宏塊分割單元的最佳預(yù)測(cè)代價(jià),以block_cost_0 (16X8)及block_cost_l (16X8)表不尺寸為16X8的兩個(gè)宏塊分割單元的最佳預(yù)測(cè)代價(jià),以block_cost_0 (8X 16)及block_cost_l (8 X 16)表示尺寸為8X16的兩個(gè)宏塊分割單元的最佳預(yù)測(cè)代價(jià),則3rd_cost (16X 16)、3rd_cost (16X8)及3rd_cost (8 X 16)如下所示:
[0017]3rd_cost (16 X 16) = block_cost (16 X 16);
[0018]3rd_cost(16 X 8) = block_cost_0(16 X 8)+block_cost_l(16 X 8);
[0019]3rd_cost(8X16) = block_cost_0(8X16)+block_cost_l(8X16)。
[0020]在本發(fā)明的一實(shí)施例中,在上述步驟(h-Ι)中,當(dāng)幀間模式選擇方法用于B幀,分別對(duì)尺寸為16 X 16、16 X 8及8 X 16的宏塊分割單元執(zhí)行分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì),而分別獲得每一個(gè)宏塊分割單元在ListO方向、Listl方向以及雙向三者的預(yù)測(cè)代價(jià);以及自上述三個(gè)預(yù)測(cè)代價(jià)選擇最小值作為每一個(gè)宏塊分割單元的最佳預(yù)測(cè)代價(jià)。另外,在上述步驟(h-Ι)中,當(dāng)幀間模式選擇方法用于P巾貞,分別對(duì)尺寸為16X 16、16X8及8X 16的宏塊分割單元執(zhí)行分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì),而獲得每一個(gè)宏塊分割單元在ListO方向的代價(jià)作為每一個(gè)宏塊分割單元的最佳預(yù)測(cè)代價(jià)。
[0021]在本發(fā)明的一實(shí)施例中,上述步驟(C)還包括:計(jì)算運(yùn)動(dòng)矢量預(yù)測(cè)值,以基于上述運(yùn)動(dòng)矢量預(yù)
當(dāng)前第1頁(yè)1 2 3 4 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
台前县| 大洼县| 襄城县| 陇南市| 汤阴县| 贡嘎县| 水富县| 林周县| 呼玛县| 上思县| 吴旗县| 聂拉木县| 惠安县| 禹城市| 枣阳市| 桦南县| 大渡口区| 三河市| 祁东县| 张北县| 邻水| 福海县| 平和县| 灌南县| 鄯善县| 长海县| 蒙自县| 南华县| 尚志市| 平和县| 佛学| 肇州县| 米易县| 双鸭山市| 和林格尔县| 额敏县| 年辖:市辖区| 扶风县| 阜城县| 青州市| 韶关市|