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

一種用于vp9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法和裝置的制造方法

文檔序號(hào):9353179閱讀:734來(lái)源:國(guó)知局
一種用于vp9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)通信技術(shù)領(lǐng)域,尤其涉及一種用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法和裝置。
【背景技術(shù)】
[0002]隨著科技的發(fā)展和社會(huì)的進(jìn)步,VP9也隨之誕生。VP9是一個(gè)由Google開發(fā)的開放格式、無(wú)使用授權(quán)費(fèi)的視頻壓縮標(biāo)準(zhǔn)。由于VP9在視頻解碼領(lǐng)域具有解碼速度快的特點(diǎn),因而VP9解碼器得到了廣泛應(yīng)用。
[0003]VP9解碼器采用了以64x64個(gè)像素為一個(gè)宏塊的編解碼架構(gòu),即一幅圖像以64x64個(gè)像素為單位劃分成多個(gè)宏塊,并以宏塊為單位對(duì)視頻的碼流數(shù)據(jù)進(jìn)行解碼。對(duì)于每一個(gè)64x64個(gè)像素的宏塊而言,其又可繼續(xù)往下拆分成64x32、32x64、32x32、32xl6、16x32、16xl6、16x8、8xl6、8x8個(gè)像素的子塊。其中,子塊的最小單位為8x8個(gè)像素。也就是說(shuō),8x8個(gè)像素的子塊是區(qū)分幀內(nèi)預(yù)測(cè)、幀間預(yù)測(cè)的最小單元。
[0004]對(duì)于每個(gè)8x8子塊而言,采用68bit用于記錄當(dāng)前塊的屬性。其中,2bit用于標(biāo)記當(dāng)前塊的前向參考幀類型;2bit用于標(biāo)記當(dāng)前塊的后向參考幀類型;16bit用于標(biāo)記當(dāng)前塊的前向參考運(yùn)動(dòng)矢量的X分量;16bit用于標(biāo)記當(dāng)前塊的前向參考運(yùn)動(dòng)矢量的y分量;16bit用于標(biāo)記當(dāng)前塊的后向參考運(yùn)動(dòng)矢量的X分量;16bit用于標(biāo)記當(dāng)前塊的后向參考運(yùn)動(dòng)矢量的I分量。當(dāng)子塊為幀內(nèi)預(yù)測(cè)塊時(shí),則說(shuō)明該子塊覆蓋的所有8x8塊都無(wú)運(yùn)動(dòng)矢量,即上述分量都為O。若子塊為幀間預(yù)測(cè)塊,則該塊覆蓋的所有8x8塊都含有相同的運(yùn)動(dòng)矢量屬性,既上述變量值都一樣。
[0005]VP9解碼器在解碼過(guò)程中,是基于塊進(jìn)行解碼的。在對(duì)下一個(gè)子塊的運(yùn)算矢量進(jìn)行偵測(cè)時(shí),需要應(yīng)用到當(dāng)前子塊的運(yùn)動(dòng)矢量信息。這就導(dǎo)致需要對(duì)每一子塊的運(yùn)動(dòng)矢量進(jìn)行存儲(chǔ),這將消耗龐大的寄存器占用。而如果采用下一個(gè)子塊的運(yùn)動(dòng)矢量信息的存儲(chǔ)位置與當(dāng)前子塊的運(yùn)動(dòng)矢量信息的存儲(chǔ)位置直接替換覆蓋的方式,則會(huì)導(dǎo)致下一子塊與當(dāng)前子塊之間映射關(guān)系復(fù)雜,導(dǎo)致硬件設(shè)計(jì)邏輯復(fù)雜,面積大,功耗高。
[0006]綜上所述,如何解決VP9解碼器在解碼過(guò)程中,對(duì)運(yùn)動(dòng)矢量進(jìn)行預(yù)測(cè)過(guò)程中寄存器消耗大、浪費(fèi)資源、映射關(guān)系復(fù)雜等問題,是數(shù)據(jù)通信技術(shù)領(lǐng)域一個(gè)亟需解決的問題。

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

[0007]為此,需要提供一種基于用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的技術(shù)方案,用以解決對(duì)VP9解碼器運(yùn)動(dòng)矢量進(jìn)行預(yù)測(cè)過(guò)程中寄存器消耗大、浪費(fèi)資源、映射關(guān)系復(fù)雜、硬件設(shè)計(jì)邏輯復(fù)雜、硬件面積大、功耗高等問題。
[0008]為實(shí)現(xiàn)上述目的,發(fā)明人提供了一種用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法,所述方法包括如下步驟:
[0009]將待預(yù)測(cè)的宏塊劃分為多個(gè)子塊,對(duì)宏塊中某一行或某一列的子塊進(jìn)行解碼,并將該行或該列的解碼數(shù)據(jù)存儲(chǔ)到第一存儲(chǔ)位置;
[0010]對(duì)下一行或下一列的子塊進(jìn)行解碼時(shí),判斷下一行或一下列的子塊大小是否大于預(yù)設(shè)子塊的大小,若是則將下一行或下一列的子塊的解碼數(shù)據(jù)存儲(chǔ)到第一存儲(chǔ)位置;若不是則將下一行或下一列的子塊的解碼數(shù)據(jù)存儲(chǔ)到第二存儲(chǔ)位置中。
[0011]進(jìn)一步地,所述宏塊的大小為64x64,則所述子塊大小包括:64x32、32x64、32x32、32x16、16x32、16x16、16x8、8xl6、8x8 中的一種或多種。
[0012]進(jìn)一步地,所述預(yù)設(shè)子塊的大小為64x32、32x64、32x32中的一種或多種。
[0013]進(jìn)一步地,所述“對(duì)宏塊中某一行或某一列的子塊進(jìn)行解碼”包括步驟:
[0014]按照Z(yǔ)字型的順序?qū)δ骋恍谢蚰骋涣械淖訅K進(jìn)行解碼。
[0015]進(jìn)一步地,所述方法還包括步驟:
[0016]將某一行或某一列的子塊與其下一行或下一列的子塊交界處對(duì)應(yīng)的解碼數(shù)據(jù)存儲(chǔ)于第二存儲(chǔ)位置。
[0017]以及發(fā)明人還提供了一種用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的裝置,所述裝置包括如下步驟解碼模塊,判斷模塊和存儲(chǔ)模塊,所述存儲(chǔ)模塊包括第一存儲(chǔ)模塊和第二存儲(chǔ)模塊;
[0018]所述解碼模塊用于將待預(yù)測(cè)的宏塊劃分為多個(gè)子塊,對(duì)宏塊中某一行或某一列的子塊進(jìn)行解碼;所述第一存儲(chǔ)模塊用于將該行或該列的解碼數(shù)據(jù)存儲(chǔ)到第一存儲(chǔ)位置;
[0019]所述解碼模塊還用于對(duì)下一行或下一列的子塊進(jìn)行解碼時(shí),所述判斷模塊用于判斷下一行或一下列的子塊大小是否大于預(yù)設(shè)子塊的大小,若是則第一存儲(chǔ)模塊用于將下一行或下一列的子塊的解碼數(shù)據(jù)存儲(chǔ)到第一存儲(chǔ)位置;若不是則第二存儲(chǔ)模塊用于將下一行或下一列的子塊的解碼數(shù)據(jù)存儲(chǔ)到第二存儲(chǔ)位置中。
[0020]進(jìn)一步地,所述宏塊的大小為64x64,則所述子塊大小包括:64x32、32x64、32x32、32x16、16x32、16x16、16x8、8xl6、8x8 中的一種或多種。
[0021]進(jìn)一步地,所述預(yù)設(shè)子塊的大小為64x32、32x64、32x32中的一種或多種。
[0022]進(jìn)一步地,所述解碼模塊“對(duì)宏塊中某一行或某一列的子塊進(jìn)行解碼”是按照Z(yǔ)字型的順序?qū)δ骋恍谢蚰骋涣械淖訅K進(jìn)行解碼。
[0023]進(jìn)一步地,所述第二存儲(chǔ)模塊還用于將某一行或某一列的子塊與其下一行或下一列的子塊交界處對(duì)應(yīng)的解碼數(shù)據(jù)存儲(chǔ)于第二存儲(chǔ)位置。
[0024]區(qū)別于現(xiàn)有技術(shù),上述技術(shù)方案所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法和裝置,所述方法首先將待預(yù)測(cè)的宏塊劃分為多個(gè)子塊,對(duì)宏塊中某一行或某一列的子塊進(jìn)行解碼,并將該行或該列的解碼數(shù)據(jù)存儲(chǔ)到第一存儲(chǔ)位置;當(dāng)對(duì)下一行或下一列的子塊進(jìn)行解碼時(shí),判斷下一行或一下列的子塊大小是否大于預(yù)設(shè)子塊的大小,若是則將下一行或下一列的子塊的解碼數(shù)據(jù)存儲(chǔ)到第一存儲(chǔ)位置;若不是則將下一行或下一列的子塊的解碼數(shù)據(jù)存儲(chǔ)到第二存儲(chǔ)位置中。通過(guò)將下一行或下一列的子塊的解碼數(shù)據(jù)存儲(chǔ)到第一存儲(chǔ)位置,從而大大提高了寄存器的復(fù)用性,節(jié)省了對(duì)寄存器的占用,避免了資源的浪費(fèi)。此外,所述方法還可以對(duì)不同大小的子塊作相應(yīng)的處理,將小于預(yù)設(shè)子塊的待解碼的子塊的解碼數(shù)據(jù)存儲(chǔ)于第二存儲(chǔ)位置,從而減少了子塊與第一存儲(chǔ)位置之間的映射關(guān)系,減少了算法復(fù)雜度,減少了硬件設(shè)計(jì)的邏輯復(fù)雜度,減少了硬件的面積,因而在數(shù)據(jù)通信領(lǐng)域具有廣闊的市場(chǎng)前景。
【附圖說(shuō)明】
[0025]圖1為本發(fā)明一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法的流程圖;
[0026]圖2為本發(fā)明一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的裝置的示意圖;
[0027]圖3為本發(fā)明一實(shí)施例所述的宏塊的結(jié)構(gòu)示意圖;
[0028]圖4為本發(fā)明一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法的示意圖;
[0029]圖5為本發(fā)明另一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法的示意圖;
[0030]圖6為本發(fā)明另一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法的示意圖;
[0031]圖7為本發(fā)明另一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法的示意圖;
[0032]圖8為本發(fā)明另一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法的示意圖;
[0033]圖9為本發(fā)明另一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法的示意圖;
[0034]圖10為本發(fā)明另一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法的示意圖;
[0035]圖11為本發(fā)明另一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法的示意圖;
[0036]圖12為本發(fā)明另一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法的示意圖;
[0037]附圖標(biāo)記說(shuō)明:
[0038]101、解碼模塊;
[0039]102、判斷模塊;
[0040]103、存儲(chǔ)模塊;113、第一存儲(chǔ)位置;114、第二存儲(chǔ)位置。
【具體實(shí)施方式】
[0041]為詳細(xì)說(shuō)明技術(shù)方案的技術(shù)內(nèi)容、構(gòu)造特征、所實(shí)現(xiàn)目的及效果,以下結(jié)合具體實(shí)施例并配合附圖詳予說(shuō)明。
[0042]請(qǐng)參閱圖1,為本發(fā)明一實(shí)施例所述的用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè)的方法的流程圖。所述方法可以用于VP9解碼器運(yùn)動(dòng)矢量預(yù)測(cè),可以有效地提高VP9解碼器在進(jìn)行運(yùn)動(dòng)矢量預(yù)測(cè)時(shí)所需的寄存器的復(fù)用性,提高資源利用率,并減少子塊的映射關(guān)系,減少算法復(fù)雜度,具體包括如下步驟:
[0043]首先進(jìn)入步驟SlOl將待預(yù)測(cè)的宏塊劃分為多個(gè)子塊,對(duì)宏塊
當(dāng)前第1頁(yè)1 2 3 4 5 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
韶山市| 若羌县| 高台县| 澄城县| 牡丹江市| 禄丰县| 安多县| 安吉县| 潍坊市| 桂林市| 抚松县| 璧山县| 正阳县| 庄浪县| 丽江市| 正镶白旗| 新巴尔虎左旗| 西宁市| 太保市| 陕西省| 柳州市| 阿拉善左旗| 勃利县| 顺义区| 全椒县| 麻江县| 页游| 江津市| 太原市| 金坛市| 新野县| 平潭县| 淮南市| 武穴市| 图木舒克市| 千阳县| 怀化市| 铅山县| 新泰市| 瑞昌市| 乐东|