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

用于對運(yùn)動矢量進(jìn)行編碼/解碼的方法和設(shè)備與流程

文檔序號:12005645閱讀:160來源:國知局
用于對運(yùn)動矢量進(jìn)行編碼/解碼的方法和設(shè)備與流程
用于對運(yùn)動矢量進(jìn)行編碼/解碼的方法和設(shè)備本申請是向中國知識產(chǎn)權(quán)局提交的申請日為2010年8月13日的標(biāo)題為“用于對運(yùn)動矢量進(jìn)行編碼/解碼的方法和設(shè)備”的第201080036026.1號申請的分案申請。技術(shù)領(lǐng)域與示例性實(shí)施例一致的設(shè)備和方法涉及一種用于對運(yùn)動矢量進(jìn)行編碼的方法和設(shè)備,更具體地講,涉及一種用于對當(dāng)前塊的運(yùn)動矢量預(yù)測因子進(jìn)行編碼的方法和設(shè)備。

背景技術(shù):
編解碼器(諸如運(yùn)動圖像專家組(MPEG)-4H.264/MPEG-4、先進(jìn)視頻編碼(AVC))使用與當(dāng)前塊鄰近的先前編碼的塊的運(yùn)動矢量來預(yù)測當(dāng)前塊的運(yùn)動矢量。也就是說,與當(dāng)前塊的左側(cè)、上側(cè)、右上側(cè)鄰近的先前編碼的塊的運(yùn)動矢量的中值被用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子(motionvectorpredictor)。

技術(shù)實(shí)現(xiàn)要素:
技術(shù)方案示例性實(shí)施例提供了一種用于對運(yùn)動矢量進(jìn)行編碼和解碼的方法和設(shè)備,以及存儲用于執(zhí)行所述的方法的計(jì)算機(jī)可讀程序的計(jì)算機(jī)可讀記錄介質(zhì)。有益效果根據(jù)本發(fā)明,基于更精確的運(yùn)動矢量預(yù)測因子來對運(yùn)動矢量進(jìn)行有效編碼。附圖說明通過參考附圖對示例性實(shí)施例進(jìn)行的詳細(xì)描述,上述和/或其他方面將會變得更加清楚,其中:圖1是根據(jù)示例性實(shí)施例的用于對圖像進(jìn)行編碼的設(shè)備的框圖;圖2是根據(jù)示例性實(shí)施例的用于對圖像進(jìn)行解碼的設(shè)備的框圖;圖3示出根據(jù)示例性實(shí)施例的分層編碼單元;圖4是根據(jù)示例性實(shí)施例的基于編碼單元的圖像編碼器的框圖;圖5是根據(jù)示例性實(shí)施例的基于編碼單元的圖像解碼器的框圖;圖6示出根據(jù)示例性實(shí)施例的最大編碼單元、子編碼單元和預(yù)測單元;圖7示出根據(jù)示例性實(shí)施例的編碼單元和變換單元;圖8A和圖8B示出根據(jù)示例性實(shí)施例的編碼單元、預(yù)測單元和變換單元的劃分形狀;圖9是根據(jù)示例性實(shí)施例的用于對運(yùn)動矢量進(jìn)行編碼的設(shè)備的框圖;圖10A和圖10B示出根據(jù)示例性實(shí)施例的顯式模式(explicitmode)的運(yùn)動矢量預(yù)測因子候選;圖11A至圖11C示出根據(jù)另一示例性實(shí)施例的顯式模式的運(yùn)動矢量預(yù)測因子候選;圖12示出根據(jù)示例性實(shí)施例的在隱含模式中產(chǎn)生運(yùn)動矢量預(yù)測因子的方法;圖13是根據(jù)示例性實(shí)施例的用于對運(yùn)動矢量進(jìn)行解碼的設(shè)備的框圖;圖14是根據(jù)示例性實(shí)施例的對運(yùn)動矢量進(jìn)行編碼的方法的流程圖;圖15是根據(jù)示例性實(shí)施例的對運(yùn)動矢量進(jìn)行解碼的方法的流程圖。最優(yōu)實(shí)施方式根據(jù)示例性實(shí)施例的一方面,提供了一種對當(dāng)前塊的運(yùn)動矢量進(jìn)行編碼的方法,所述方法包括:選擇第一模式或第二模式作為對關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼的模式,其中,在所述第一模式中,指示至少一個(gè)運(yùn)動矢量預(yù)測因子之中的運(yùn)動矢量預(yù)測因子的信息被編碼,在所述第二模式中,指示基于與當(dāng)前塊鄰近的先前編碼的區(qū)域中包括的塊或像素來產(chǎn)生運(yùn)動矢量預(yù)測因子的信息被編碼;根據(jù)選擇的模式確定當(dāng)前塊的運(yùn)動矢量預(yù)測因子,并對關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼;對當(dāng)前塊的運(yùn)動矢量與當(dāng)前塊的運(yùn)動矢量預(yù)測因子之間的差矢量進(jìn)行編碼。選擇第一模式或第二模式的步驟可包括:基于指示從當(dāng)前畫面或像條的最大編碼單元的大小減少到當(dāng)前塊的大小的程度的深度來選擇第一模式或第二模式。選擇第一模式或第二模式的步驟可包括:以包括當(dāng)前塊的當(dāng)前畫面或像條為單位來選擇第一模式或第二模式。選擇第一模式或第二模式的步驟可包括:基于當(dāng)前塊是否以跳過模式被編碼來選擇第一模式或第二模式。所述至少一個(gè)運(yùn)動矢量預(yù)測因子可包括:與當(dāng)前塊的左側(cè)鄰近的塊的第一運(yùn)動矢量、與當(dāng)前塊的上側(cè)鄰近的塊的第二運(yùn)動矢量以及與當(dāng)前塊的右上側(cè)鄰近的塊的第三運(yùn)動矢量。所述至少一個(gè)運(yùn)動矢量預(yù)測因子還可包括:第一運(yùn)動矢量、第二運(yùn)動矢量和第三運(yùn)動矢量的中值。所述至少一個(gè)運(yùn)動矢量預(yù)測因子還可包括:基于參考畫面中與當(dāng)前塊協(xié)同定位的塊的運(yùn)動矢量以及所述參考畫面與當(dāng)前畫面之間的時(shí)間距離而產(chǎn)生的運(yùn)動矢量預(yù)測因子。指示基于與當(dāng)前塊鄰近的先前編碼的區(qū)域中包括的塊或像素來產(chǎn)生運(yùn)動矢量預(yù)測因子的信息可以是這樣的信息,所述信息指示基于與當(dāng)前塊的左側(cè)鄰近的塊的第一運(yùn)動矢量、與當(dāng)前塊的上側(cè)鄰近的塊的第二運(yùn)動矢量和與當(dāng)前塊的右上側(cè)鄰近的塊的第三運(yùn)動矢量的中值,來產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子。指示基于與當(dāng)前塊鄰近的先前解碼的區(qū)域中包括的塊或像素來產(chǎn)生運(yùn)動矢量預(yù)測因子的信息可以是這樣的信息,所述信息指示基于通過使用與當(dāng)前塊鄰近的先前編碼的區(qū)域中包括的像素來搜索參考畫面而產(chǎn)生的運(yùn)動矢量來產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子。根據(jù)另一示例性實(shí)施例的一方面,提供了一種用于對當(dāng)前塊的運(yùn)動矢量進(jìn)行編碼的設(shè)備,所述設(shè)備包括:預(yù)測器,選擇第一模式或第二模式作為對關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼的模式,并基于選擇的模式確定當(dāng)前塊的運(yùn)動矢量預(yù)測因子,其中,在所述第一模式中,指示至少一個(gè)運(yùn)動矢量預(yù)測因子之中的運(yùn)動矢量預(yù)測因子的信息被編碼,在所述第二模式中,指示基于與當(dāng)前塊鄰近的先前編碼的區(qū)域中包括的塊或像素來產(chǎn)生運(yùn)動矢量預(yù)測因子的信息被編碼;第一編碼器,對關(guān)于基于選擇的模式而確定的當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼;第二編碼器,對當(dāng)前塊的運(yùn)動矢量與當(dāng)前塊的運(yùn)動矢量預(yù)測因子之間的差矢量進(jìn)行編碼。根據(jù)另一示例性實(shí)施例的一方面,提供了一種對當(dāng)前塊的運(yùn)動矢量進(jìn)行解碼的方法,所述方法包括:對關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行解碼,所述信息根據(jù)從第一模式和第二模式之中選擇的模式被編碼;對當(dāng)前塊的運(yùn)動矢量與當(dāng)前塊的運(yùn)動矢量預(yù)測因子之間的差矢量進(jìn)行解碼;基于解碼的關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息來產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子;基于所述運(yùn)動矢量預(yù)測因子和差矢量來恢復(fù)當(dāng)前塊的運(yùn)動矢量,其中,第一模式是在其中指示至少一個(gè)運(yùn)動矢量預(yù)測因子之中的運(yùn)動矢量預(yù)測因子的信息被編碼的模式,第二模式是在其中指示基于與當(dāng)前塊鄰近的先前解碼的區(qū)域中包括的塊或像素來產(chǎn)生運(yùn)動矢量預(yù)測因子的信息被編碼的模式。根據(jù)另一示例性實(shí)施例的一方面,提供了一種對當(dāng)前塊的運(yùn)動矢量進(jìn)行解碼的設(shè)備,所述設(shè)備包括:第一解碼器,對關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行解碼,所述信息根據(jù)從第一模式和第二模式之中選擇的模式被編碼;第二解碼器,對當(dāng)前塊的運(yùn)動矢量與當(dāng)前塊的運(yùn)動矢量預(yù)測因子之間的差矢量進(jìn)行解碼;預(yù)測器,基于解碼的關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息來產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子;運(yùn)動矢量恢復(fù)單元,基于運(yùn)動矢量預(yù)測因子和差矢量來恢復(fù)當(dāng)前塊的運(yùn)動矢量,其中,第一模式是在其中指示至少一個(gè)運(yùn)動矢量預(yù)測因子之中的運(yùn)動矢量預(yù)測因子的信息被編碼的模式,第二模式是在其中指示基于與當(dāng)前塊鄰近的先前解碼的區(qū)域中包括的塊或像素來產(chǎn)生運(yùn)動矢量預(yù)測因子的信息被編碼的模式。根據(jù)另一示例性實(shí)施例的一方面,提供了一種存儲用于執(zhí)行對運(yùn)動矢量進(jìn)行編碼的方法和對運(yùn)動矢量進(jìn)行解碼的方法的計(jì)算機(jī)可讀程序的計(jì)算機(jī)可讀記錄介質(zhì)。具體實(shí)施方式將參照附圖更充分地描述示例性實(shí)施例,其中,相同的標(biāo)號始終表示相同的元件。當(dāng)在元件的列表之前時(shí),諸如“至少一個(gè)”的表述修飾元件的整個(gè)列表而不修飾列表的單個(gè)元件。在本說明書中,“圖像”可表示用于視頻的靜止圖像或運(yùn)動圖像(即,視頻本身)。圖1是根據(jù)示例性實(shí)施例的用于對圖像進(jìn)行編碼的設(shè)備100的框圖。參照圖1,設(shè)備100包括最大編碼單元劃分器110、編碼深度確定器120、圖像數(shù)據(jù)編碼器130和編碼信息編碼器140。最大編碼單元劃分器110可基于作為最大大小的編碼單元的最大編碼單元對當(dāng)前畫面(picture)或當(dāng)前像條(slice)進(jìn)行劃分。也就是說,最大編碼單元劃分器110可對當(dāng)前畫面或像條進(jìn)行劃分,以獲得至少一個(gè)最大編碼單元。根據(jù)示例性實(shí)施例,可使用最大編碼單元和深度來表示編碼單元。如上所述,最大編碼單元表示當(dāng)前畫面的編碼單元中具有最大大小的編碼單元,所述深度表示通過分層減小編碼單元而獲得的子編碼單元的大小。隨著深度加深,編碼單元可從最大編碼單元減小到最小編碼單元,其中,最大編碼單元的深度被定義為最小深度,最小編碼單元的深度被定義為最大深度。由于編碼單元的大小隨著深度增加而從最大編碼單元減小,因此第k深度的子編碼單元可包括第k+n(其中,k和n是等于或大于1的整數(shù))深度的多個(gè)子編碼單元。根據(jù)將被編碼的畫面的大小的增加,以較大編碼單元對圖像進(jìn)行編碼會導(dǎo)致更高的圖像壓縮率。然而,如果較大的編碼單元固定,則可能不能通過反映連續(xù)改變的圖像特征來對圖像進(jìn)行有效編碼。例如,當(dāng)平滑區(qū)域(諸如大海或天空)被編碼時(shí),編碼單元越大,壓縮率可增加越多。然而,當(dāng)復(fù)雜區(qū)域(諸如人或建筑)被編碼時(shí),編碼單元越小,壓縮率可增加越多。因此,根據(jù)實(shí)施例,不同的最大編碼單元和不同的最大深度被設(shè)置用于每個(gè)畫面或像條。由于最大深度表示編碼單元可被減小的最大次數(shù),因此最大圖像編碼單元中包括的每個(gè)最小編碼單元的大小可根據(jù)最大深度來不同地設(shè)置。編碼單元確定器120確定最大深度。例如,可基于率失真(R-D)成本的計(jì)算來確定最大深度。此外,可針對每個(gè)畫面或像條或者針對每個(gè)最大編碼單元來不同地確定最大深度。確定的最大深度被提供給編碼信息編碼器140,并且根據(jù)最大編碼單元的圖像數(shù)據(jù)被提供給圖像數(shù)據(jù)編碼器130。最大深度表示最大編碼單元中可包括的具有最小大小的編碼單元(即,最小編碼單元)。換句話說,最大編碼單元可被劃分為根據(jù)不同深度而具有不同大小的子編碼單元。稍后將參照圖8A和圖8B來對此進(jìn)行詳細(xì)描述。另外,可基于具有不同大小的處理單元對最大編碼單元中包括的具有不同大小的子編碼單元進(jìn)行預(yù)測或變換。換句話說,設(shè)備100可基于具有各種大小和各種形狀的處理單元來執(zhí)行用于圖像編碼的多個(gè)處理操作。為了對圖像數(shù)據(jù)進(jìn)行編碼,執(zhí)行諸如預(yù)測、變換和熵編碼的處理操作,其中,具有相同大小的處理單元可被用于每個(gè)操作,或者具有不同大小的處理單元可被用于每個(gè)操作。例如,設(shè)備100可選擇與編碼單元不同的處理單元來預(yù)測編碼單元。當(dāng)編碼單元的大小是2N×2N(其中N是正整數(shù))時(shí),用于預(yù)測的處理單元可以是2N×2N、2N×N、N×2N或N×N。換句話說,可基于具有這樣的形狀的處理單元來執(zhí)行運(yùn)動預(yù)測,按所述形狀,編碼單元的高度和寬度中的至少一個(gè)被二等分。在下文中,作為預(yù)測基礎(chǔ)的處理單元被稱為預(yù)測單元。預(yù)測模式可以是幀內(nèi)模式、幀間模式和跳過模式中的至少一個(gè),并且可僅針對具有特定大小或形狀的預(yù)測單元來執(zhí)行特定預(yù)測模式。例如,可僅針對形狀為正方形的具有2N×2N和N×N的大小的預(yù)測單元執(zhí)行幀內(nèi)模式。另外,可僅對具有2N×2N的大小的預(yù)測單元執(zhí)行跳過模式。如果編碼單元存在多個(gè)預(yù)測單元,則可針對每個(gè)預(yù)測單元執(zhí)行預(yù)測之后選擇具有最小編碼誤差的預(yù)測模式。可選擇地,設(shè)備100可基于具有與編碼單元不同大小的處理單元來對圖像數(shù)據(jù)執(zhí)行頻率變換。對于編碼單元中的頻率變換,可基于具有與編碼單元的大小相等的大小或更小的大小的處理單元來執(zhí)行所述頻率變換。在下文中,作為頻率變換的基礎(chǔ)的處理單元被稱為變換單元。所述頻率變換可以是離散余弦變換(DTC)或Karhunen-Loeve變換(KLT)。編碼深度確定器120可使用基于拉格朗日乘子的R-D最優(yōu)化來確定最大編碼單元中包括的子編碼單元。換句話說,編碼深度確定器120可確定從最大編碼單元劃分的多個(gè)子編碼單元具有哪種形狀,其中,所述多個(gè)子編碼單元根據(jù)它們的深度而具有不同大小。圖像數(shù)據(jù)編碼器130通過基于由編碼深度確定器120確定的劃分形狀來對最大編碼單元進(jìn)行編碼。編碼信息編碼器140對關(guān)于由編碼深度確定器120確定的最大編碼單元的編碼模式的信息進(jìn)行編碼。換句話說,編碼信息編碼器140通過對以下信息進(jìn)行編碼來輸出比特流:關(guān)于最大編碼單元的劃分形狀的信息、關(guān)于最大深度的信息以及關(guān)于針對每個(gè)深度的子編碼單元的編碼模式的信息。關(guān)于子編碼單元的編碼模式的信息可包括以下信息中的至少一個(gè):關(guān)于子編碼單元的預(yù)測單元的信息、關(guān)于用于每個(gè)預(yù)測單元的預(yù)測模式的信息以及關(guān)于子編碼單元的變換單元的信息。由于對于每個(gè)最大編碼單元存在具有不同大小的子編碼單元,并且針對每個(gè)子編碼單元確定關(guān)于編碼模式的信息,因次可針對一個(gè)最大編碼單元確定關(guān)于至少一個(gè)編碼模式的信息。設(shè)備100可根據(jù)深度的增加,通過將最大編碼單元的高度和深度兩者二等分來產(chǎn)生子編碼單元。也就是說,當(dāng)?shù)趉深度的編碼單元的大小為2N×2N時(shí),第k+1深度的編碼單元的大小可以是N×N。因此,根據(jù)示例性實(shí)施例的設(shè)備100可考慮圖像特征而基于最大編碼單元的大小和最大深度來確定用于每個(gè)最大編碼單元的最優(yōu)劃分形狀。通過考慮圖像特征來可變地調(diào)整最大編碼單元的大小并通過將最大編碼單元劃分為不同深度的子編碼單元來對圖像進(jìn)行編碼,具有各種分辨率的圖像可被有效編碼。圖2是根據(jù)示例性實(shí)施例的用于對圖像進(jìn)行解碼的設(shè)備200的框圖。參照圖2,設(shè)備200包括圖像數(shù)據(jù)獲取單元210、編碼信息提取器220以及圖像數(shù)據(jù)解碼器230。圖像數(shù)據(jù)獲取單元210通過對設(shè)備200接收的比特流進(jìn)行解析來根據(jù)最大編碼單元獲取圖像數(shù)據(jù),并將所述圖像數(shù)據(jù)輸出到圖像數(shù)據(jù)解碼器230。圖像數(shù)據(jù)獲取單元210可從當(dāng)前畫面或像條的頭提取關(guān)于當(dāng)前畫面或像條的最大編碼單元的信息。換句話說,圖像數(shù)據(jù)獲取單元210以最大編碼單元對比特流進(jìn)行劃分,從而圖像數(shù)據(jù)解碼器230可根據(jù)最大編碼單元對圖像數(shù)據(jù)進(jìn)行解碼。編碼信息提取器220通過對由設(shè)備200接收的比特流進(jìn)行解析來提取關(guān)于最大編碼單元、最大深度、最大編碼單元的劃分形狀以及子編碼單元的編碼模式的信息。例如,編碼信息提取器220可從當(dāng)前畫面的頭提取上述信息。關(guān)于劃分形狀的信息和關(guān)于編碼模式的信息被提供給圖像數(shù)據(jù)解碼器230。關(guān)于最大編碼單元的劃分形狀的信息可包括關(guān)于最大編碼單元中所包括的根據(jù)深度具有不同大小的子編碼單元的信息,并且關(guān)于編碼模式的信息可包括關(guān)于根據(jù)子編碼單元的預(yù)測單元的信息、關(guān)于預(yù)測模式的信息以及關(guān)于變換單元的信息中的至少一個(gè)。圖像數(shù)據(jù)解碼器230通過基于由編碼信息取器220提取的信息對每個(gè)最大編碼單元的圖像數(shù)據(jù)進(jìn)行解碼,來恢復(fù)當(dāng)前畫面。圖像數(shù)據(jù)解碼器230可基于關(guān)于最大編碼單元的劃分形狀的信息來對最大編碼單元中包括的子編碼單元進(jìn)行解碼。解碼處理可包括預(yù)測處理和反變換處理中的至少一個(gè),其中,所述預(yù)測處理包括幀內(nèi)預(yù)測和運(yùn)動補(bǔ)償。另外,圖像數(shù)據(jù)解碼器230可基于關(guān)于預(yù)測單元的信息以及關(guān)于預(yù)測模式的信息來執(zhí)行幀內(nèi)預(yù)測或幀間預(yù)測,以對預(yù)測單元進(jìn)行預(yù)測。圖像數(shù)據(jù)解碼器230還可基于關(guān)于子編碼單元的變換單元的信息來對每個(gè)子編碼單元執(zhí)行反變換。圖3示出根據(jù)示例性實(shí)施例的分層編碼單元。參照圖3,示例性分層編碼單元包括大小為64×64、32×32、16×16、8×8和4×4的編碼單元。此外,還存在大小為64×32、32×64、32×16、16×32、16×8、8×16、8×4和4×8的編碼單元。在圖3中示出的示例性實(shí)施例中,對于分辨率為1920×1080的第一圖像數(shù)據(jù)310,最大編碼單元的大小被設(shè)置為64×64,并且最大深度被設(shè)置為2。對于分辨率為1920×1080的第二圖像數(shù)據(jù)320,最大編碼單元的大小被設(shè)置為64×64,并且最大深度被設(shè)置為3。對于分辨率為352×288的第三圖像數(shù)據(jù)330,最大編碼單元的大小被設(shè)置為16×16,并且最大深度被設(shè)置為1。當(dāng)分辨率高或者數(shù)據(jù)量大時(shí),編碼單元的最大大小可以相對大,以提高壓縮率并準(zhǔn)確地反映圖像特征。因此,對于具有比第三數(shù)據(jù)圖像330更高的分辨率的第一圖像數(shù)據(jù)310和第二圖像數(shù)據(jù)320,64×64可被選擇作為最大編碼單元的大小。最大深度指示在分層編碼單元中的層的總數(shù)。由于第一圖像數(shù)據(jù)310的最大深度是2,因此第一圖像數(shù)據(jù)310的編碼單元315可包括較長軸大小為64的最大編碼單元,以及根據(jù)深度的增加,較長軸大小為32和16的子編碼單元。另一方面,由于第三圖像數(shù)據(jù)330的最大深度是1,因此第三圖像數(shù)據(jù)330的編碼單元335可包括較長軸大小為16的最大編碼單元,以及根據(jù)深度的增加,較長軸大小為8的編碼單元。然而,由于第二圖像數(shù)據(jù)320的最大深度是3,因此第二圖像數(shù)據(jù)320的編碼單元325可包括較長軸大小為64的最大編碼單元,以及根據(jù)深度的增加,較長軸大小為32、16和8的子編碼單元。由于隨著深度增加,基于更小的子編碼單元來對圖像進(jìn)行編碼,因此示例性實(shí)施例適合于對包括更多微場景的圖像進(jìn)行編碼。圖4是示出根據(jù)示例性實(shí)施例的基于編碼單元的圖像編碼器400的框圖。參照圖4,幀內(nèi)預(yù)測器410在當(dāng)前幀405中對幀內(nèi)模式的預(yù)測單元執(zhí)行幀內(nèi)預(yù)測,運(yùn)動估計(jì)器420和運(yùn)動補(bǔ)償器425使用當(dāng)前幀405和參考幀495對幀間模式的預(yù)測單元執(zhí)行幀間預(yù)測和運(yùn)動補(bǔ)償?;趶膸瑑?nèi)預(yù)測器410、運(yùn)動估計(jì)器420和運(yùn)動補(bǔ)償器425輸出的預(yù)測單元來產(chǎn)生殘差值。產(chǎn)生的殘差值通過經(jīng)過變換器430和量化器440而被輸出作為量化的變換系數(shù)。量化的變換系數(shù)通過經(jīng)過反量化器460和反變換器470而被恢復(fù)為殘差值。恢復(fù)的殘差值通過經(jīng)過去塊單元480和環(huán)路濾波單元490而被后處理,并且恢復(fù)的殘差值被輸出為參考幀495。量化的變換系數(shù)可通過經(jīng)過熵編碼器450被輸出為比特流455。為了基于根據(jù)示例性實(shí)施例的編碼方法執(zhí)行編碼,圖像編碼器400的組件(即,幀內(nèi)預(yù)測器410、運(yùn)動估計(jì)器420、運(yùn)動補(bǔ)償器425、變換器430、量化器440、熵編碼器450、反量化器460、反變換器470、去塊單元480和環(huán)路濾波單元490)基于最大編碼單元、根據(jù)深度的子編碼單元、預(yù)測單元和變換單元執(zhí)行圖像編碼處理。圖5是示出根據(jù)示例性實(shí)施例的基于編碼單元的圖像解碼器500的框圖。參照圖5,比特流505經(jīng)過解析器510,從而將被解碼的已編碼的圖像以及用于進(jìn)行解碼的編碼信息被解析。已編碼的圖像數(shù)據(jù)通過經(jīng)過熵解碼器520和反量化器530而被輸出為反量化的數(shù)據(jù),并通過經(jīng)過反變換器540而被恢復(fù)為殘差值。殘差值通過被添加到幀內(nèi)預(yù)測器550的幀內(nèi)預(yù)測結(jié)果或運(yùn)動補(bǔ)償器560的運(yùn)動補(bǔ)償結(jié)果而根據(jù)編碼單元被恢復(fù)?;謴?fù)的編碼單元通過經(jīng)過去塊單元570和環(huán)路濾波單元580而被用于預(yù)測下一編碼單元或下一畫面。為了基于根據(jù)示例性實(shí)施例的解碼方法來執(zhí)行解碼,圖像解碼器500的組件(即,解析器510、熵解碼器520、反量化器530、反變換器540、幀內(nèi)預(yù)測器550、運(yùn)動補(bǔ)償器560、去塊單元570和環(huán)路濾波單元580)基于最大編碼單元、根據(jù)深度的子編碼單元、預(yù)測單元和變換單元來執(zhí)行圖像解碼處理。具體地,幀內(nèi)預(yù)測器550和運(yùn)動補(bǔ)償器560通過考慮最大編碼單元和深度來確定子編碼單元中的預(yù)測單元和預(yù)測模式,反變換器540通過考慮變換單元的大小來執(zhí)行反變換。圖6示出根據(jù)示例性實(shí)施例的最大編碼單元、子編碼單元和預(yù)測單元。如上所述,根據(jù)一個(gè)或多個(gè)示例性實(shí)施例的編碼設(shè)備100和解碼設(shè)備200考慮圖像特征而使用分層編碼單元來執(zhí)行編碼和解碼??筛鶕?jù)圖像特征來自適應(yīng)地設(shè)置最大編碼單元和最大深度,或者根據(jù)用戶的需求來不同地設(shè)置最大編碼單元和最大深度。參照圖6,根據(jù)示例性實(shí)施例的分層編碼單元結(jié)構(gòu)600示出高度和寬度為64并且最大深度為4的最大編碼單元610。深度沿分層編碼單元結(jié)構(gòu)600的縱軸增加,并且隨著深度增加,子編碼單元620至650的高度和寬度減小。最大編碼單元610和子編碼單元620至650的預(yù)測單元沿分層編碼單元結(jié)構(gòu)600的橫軸被示出。最大編碼單元610具有深度0和64×64的大小(即,高度和寬度)。深度沿縱軸增加,從而存在大小為32×32且深度為1的子編碼單元620、大小為16×16且深度為2的子編碼單元630、大小為8×8且深度為3的子編碼單元640以及大小為4×4且深度為4的子編碼單元650。大小為4×4且深度為4的子編碼單元650是最小編碼單元。最小編碼單元650可被劃分為預(yù)測單元,每個(gè)預(yù)測單元小于最小編碼單元。在圖6中示出的示例性實(shí)施例中,根據(jù)每個(gè)深度沿橫軸示出預(yù)測單元的示例。也就是說,深度為0的最大編碼單元610的預(yù)測單元可以是大小等于編碼單元610(即,64×64)的預(yù)測單元、或者是具有小于編碼單元610(編碼單元610的大小為64×64)的大小的預(yù)測單元612(預(yù)測單元612的大小為64×32)、預(yù)測單元614(預(yù)測單元614的大小為32×64)或預(yù)測單元616(預(yù)測單元616的大小為32×32)。深度為1且大小為32×32的編碼單元620的預(yù)測單元可以是大小等于編碼單元620(即,32×32)的預(yù)測單元、或者是具有小于編碼單元620(編碼單元620的大小為32×32)的大小的預(yù)測單元622(預(yù)測單元622的大小為32×16)、預(yù)測單元624(預(yù)測單元624的大小為16×32)或預(yù)測單元626(預(yù)測單元626的大小為16×16)。深度為2且大小為16×16的編碼單元630的預(yù)測單元可以是大小等于編碼單元630(即,16×16)的預(yù)測單元、或者是具有小于編碼單元630(編碼單元630的大小為16×16)的大小的預(yù)測單元632(預(yù)測單元632的大小為16×8)、預(yù)測單元634(預(yù)測單元634的大小為8×16)或預(yù)測單元636(預(yù)測單元636的大小為8×8)。深度為3且大小為8×8的編碼單元640的預(yù)測單元可以是大小等于編碼單元640(即,8×8)的預(yù)測單元、或具有小于編碼單元640(編碼單元640的大小為8×8)的大小的預(yù)測單元642(預(yù)測單元642的大小為8×4)、預(yù)測單元644(預(yù)測單元644的大小為4×8)或預(yù)測單元646(預(yù)測單元646的大小為4×4)。深度為4且大小為4×4的編碼單元650的預(yù)測單元可以是最小編碼單元和最大深度的編碼單元。編碼單元650的預(yù)測單元可以是大小為4×4的預(yù)測單元650、具有4×2的大小的預(yù)測單元652、具有2×4的大小的預(yù)測單元654或具有2×2的大小的預(yù)測單元656。圖7示出根據(jù)示例性實(shí)施例的編碼單元和變換單元。根據(jù)一個(gè)或多個(gè)示例性實(shí)施例的編碼設(shè)備100和解碼設(shè)備200以最大編碼單元本身執(zhí)行編碼,或以等于或小于最大編碼單元并從最大編碼單元劃分的子編碼單元執(zhí)行編碼。在編碼處理中,用于頻率變換的變換單元的大小被選擇為不大于相應(yīng)的編碼單元的大小。例如,在當(dāng)前編碼單元710具有64×64的大小時(shí),可使用具有32×32的大小的變換單元720執(zhí)行頻率變換。圖8A和圖8B示出根據(jù)示例性實(shí)施例的編碼單元、預(yù)測單元和變換單元的劃分形狀。圖8A示出根據(jù)示例性實(shí)施例的編碼單元和預(yù)測單元。圖8A的左側(cè)示出由根據(jù)示例性實(shí)施例的編碼設(shè)備100選擇的劃分形狀,以對最大編碼單元810進(jìn)行編碼。設(shè)備100將最大編碼單元810劃分為各種形狀,執(zhí)行編碼,并通過基于R-D成本來將各種劃分形狀的編碼結(jié)果彼此進(jìn)行比較,來選擇最優(yōu)劃分形狀。當(dāng)按現(xiàn)狀對最大編碼單元810進(jìn)行編碼最優(yōu)時(shí),可在不按照圖8A和圖8B中所示對最大編碼單元810進(jìn)行劃分的情況下對最大編碼單元810進(jìn)行編碼。參照圖8A的左側(cè),通過將深度為0的最大編碼單元810劃分為深度等于或大于1的子編碼單元來對最大編碼單元進(jìn)行編碼。也就是說,最大編碼單元810被劃分為深度為1的4個(gè)子編碼單元,并且深度為1的子編碼單元中的全部或一些被劃分為深度為2的子編碼單元。深度為1的子編碼單元中的位于右上側(cè)的子編碼單元和位于左下側(cè)的子編碼單元被劃分為深度等于或大于2的子編碼單元。深度等于或大于2的子編碼單元中的一些可被劃分為深度等于或大于3的子編碼單元。圖8A的右側(cè)示出用于最大編碼單元810的預(yù)測單元的劃分形狀。參照圖8A的右側(cè),可從最大編碼單元810不同地劃分用于最大編碼單元810的預(yù)測單元860。換句話說,用于子編碼單元中的每一個(gè)的預(yù)測單元可小于相應(yīng)的子編碼單元。例如,用于深度為1的子編碼單元中的位于右下側(cè)的子編碼單元854的預(yù)測單元可小于子編碼單元854。另外,用于深度為2的子編碼單元814、816、818、828、850和852中的一些子編碼單元814、816、850和852的預(yù)測單元可分別小于子編碼單元814、816、850和852。另外,用于深度為3的子編碼單元822、832和848的預(yù)測單元可分別小于子編碼單元822、832和848。預(yù)測單元可具有各子編碼單元沿高度或?qū)挾鹊姆较虮欢确值男螤?,或具有各子編碼單元沿高度和寬度的方向被四等分的形狀。圖8B示出根據(jù)示例性實(shí)施例的預(yù)測單元和變換單元。圖8B的左側(cè)示出用于圖8A的右側(cè)中示出的最大編碼單元810的預(yù)測單元的劃分形狀,并且圖8B的右側(cè)示出最大編碼單元810的變換單元的劃分形狀。參照圖8B的右側(cè),可與預(yù)測單元860不同地設(shè)置變換單元870的劃分形狀。例如,即使用于深度為1的編碼單元854的預(yù)測單元被選擇具有編碼單元854的高度被二等分的形狀,但是變換單元可被選擇具有與編碼單元854相同的大小。同樣,即使用于深度為2的編碼單元814和850的預(yù)測單元被選擇具有編碼單元814和850中的每一個(gè)的高度被二等分的形狀,但是變換單元可被選擇具有與編碼單元814和850中的每一個(gè)的原始大小相同的大小。變換單元可被選擇具有比預(yù)測單元的更小的大小。例如,當(dāng)用于深度為2的編碼單元852的預(yù)測單元被選擇具有編碼單元852的寬度被二等分的形狀時(shí),變換單元可被選擇具有編碼單元852沿高度和寬度的方向被四等分的形狀,所述形狀具有比所述預(yù)測單元的形狀更小的大小。圖9是根據(jù)示例性實(shí)施例的用于對運(yùn)動矢量進(jìn)行編碼的設(shè)備900的框圖。用于對運(yùn)動矢量進(jìn)行編碼的設(shè)備900可包括在以上參照圖1描述的設(shè)備100或參照圖4描述的圖像編碼器400中。參照圖9,運(yùn)動矢量編碼設(shè)備900包括預(yù)測器910、第一編碼器920和第二編碼器930。為了對使用幀間預(yù)測(即,畫面間預(yù)測)編碼的塊進(jìn)行解碼,關(guān)于指示當(dāng)前塊與參考畫面中的相似塊之間的位置差的運(yùn)動矢量的信息被使用。因此,關(guān)于運(yùn)動矢量的信息在圖像編碼處理中被編碼并被插入到比特流。然而,如果關(guān)于運(yùn)動矢量的信息按照現(xiàn)狀被編碼并被插入,則用于對關(guān)于運(yùn)動矢量的信息進(jìn)行編碼的開銷增加,從而降低圖像數(shù)據(jù)的壓縮率。因此,在圖像編碼處理中,通過預(yù)測當(dāng)前塊的運(yùn)動矢量,僅對作為預(yù)測的結(jié)果而產(chǎn)生的運(yùn)動矢量預(yù)測因子與原始運(yùn)動矢量之間的差分矢量進(jìn)行編碼,并將編碼的差分矢量插入到比特流,來對關(guān)于運(yùn)動矢量的信息進(jìn)行壓縮。圖9示出使用這樣的運(yùn)動矢量預(yù)測因子來對運(yùn)動矢量進(jìn)行編碼的設(shè)備900。參照圖9,預(yù)測器910確定當(dāng)前塊的運(yùn)動矢量是基于顯式模式還是基于隱含模式被預(yù)測編碼。如上所述,諸如MPEG-4H.264、MPEG-4AVC的編解碼器使用與當(dāng)前塊鄰近的先前編碼的塊的運(yùn)動矢量來預(yù)測當(dāng)前塊的運(yùn)動矢量。也就是說,與當(dāng)前塊的左側(cè)、上側(cè)、右上側(cè)鄰近的先前編碼的塊的運(yùn)動矢量的中值被用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子。由于使用相同的方法來預(yù)測使用幀間預(yù)測編碼的所有塊的運(yùn)動矢量,因此關(guān)于運(yùn)動矢量預(yù)測因子的信息不必要被單獨(dú)編碼。然而,根據(jù)一個(gè)或多個(gè)示例性實(shí)施例的設(shè)備100或圖像解碼器400使用關(guān)于運(yùn)動矢量預(yù)測因子的信息不被單獨(dú)編碼的模式和關(guān)于運(yùn)動矢量預(yù)測因子的信息被編碼以更準(zhǔn)確地預(yù)測運(yùn)動矢量的模式兩者,這將在下面被詳細(xì)描述。(1)顯式模式(Explicitmode)可由預(yù)測器910選擇的對運(yùn)動矢量預(yù)測因子進(jìn)行編碼的方法之一可執(zhí)行對關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行顯示編碼的模式。該顯式模式是計(jì)算至少一個(gè)運(yùn)動矢量預(yù)測因子候選并對指示哪個(gè)運(yùn)動矢量預(yù)測因子被用于預(yù)測當(dāng)前塊的運(yùn)動矢量的信息進(jìn)行單獨(dú)編碼的模式?,F(xiàn)在將參照圖10A、圖10B以及圖11A至圖11C對根據(jù)一個(gè)或多個(gè)示例性實(shí)施例的運(yùn)動矢量預(yù)測因子候選進(jìn)行描述。圖10A和圖10B示出根據(jù)一個(gè)或多個(gè)示例性實(shí)施例的顯式模式的運(yùn)動矢量預(yù)測因子候選。參照圖10A,根據(jù)示例性實(shí)施例的運(yùn)動矢量預(yù)測方法可將與當(dāng)前塊鄰近的先前編碼的塊的運(yùn)動矢量之一用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子。與當(dāng)前塊的上側(cè)鄰近的塊中最左邊的塊a0、與當(dāng)前塊的左側(cè)鄰近的塊中最上邊的塊b0、與當(dāng)前塊的右上側(cè)鄰近的塊c、與當(dāng)前塊的左上側(cè)鄰近的塊d、以及與當(dāng)前塊的右下側(cè)鄰近的塊e可被用于當(dāng)前塊的運(yùn)動矢量預(yù)測因子。參照圖10B,與當(dāng)前塊鄰近的所有塊的運(yùn)動矢量可被用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子。換句話說,不僅與當(dāng)前塊的上側(cè)鄰近的塊中最左邊的塊a0的運(yùn)動矢量,而且與當(dāng)前塊的上側(cè)鄰近的所有塊的運(yùn)動矢量可被用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子。另外,不僅與當(dāng)前塊的左側(cè)鄰近的塊中最上邊的塊b0的運(yùn)動矢量,而且與當(dāng)前塊的左側(cè)鄰近的所有塊的運(yùn)動矢量可被用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子??蛇x擇地,鄰近塊的運(yùn)動矢量的中值可被用作運(yùn)動矢量預(yù)測因子。例如,median(mv_a0,mv_b0,mv_c)可被用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子,其中,mv_a0表示塊a0的運(yùn)動矢量,mv_b0表示塊b0的運(yùn)動矢量,mv_c表示塊c的運(yùn)動矢量。圖11A至圖11C示出根據(jù)另一示例性實(shí)施例的顯式模式的運(yùn)動矢量預(yù)測因子候選。圖11A示出根據(jù)示例性實(shí)施例的計(jì)算雙向預(yù)測畫面(被稱為B畫面)的運(yùn)動矢量預(yù)測因子的方法。當(dāng)包括當(dāng)前塊的當(dāng)前畫面是被執(zhí)行了雙向預(yù)測的B畫面時(shí),基于時(shí)間距離產(chǎn)生的運(yùn)動矢量可以是運(yùn)動矢量預(yù)測因子。參照圖11A,可使用時(shí)間在前的畫面1112的協(xié)同定位(co-located)的位置中的塊1120的運(yùn)動矢量來產(chǎn)生當(dāng)前畫面1110的當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子。例如,如果針對當(dāng)前畫面1110的時(shí)間在后的畫面1114的搜索的塊1122來產(chǎn)生處于與當(dāng)前塊1100協(xié)同定位的位置中的塊1120的運(yùn)動矢量mv_colA,則當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子候選mv_L0A和mv_L1A可根據(jù)以下等式來產(chǎn)生:mv_L1A=(t1/t2)×mv_colAmv_L0A=mv_L1A-mv_colA其中,mv_L0A表示針對時(shí)間在前的畫面1112的當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子,mv_L1A表示針對時(shí)間在后的畫面1114的當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子。圖11B示出根據(jù)另一示例性實(shí)施例的產(chǎn)生B畫面的運(yùn)動矢量預(yù)測因子的方法。與圖11A中示出的方法相比,在圖11B中,處于與當(dāng)前塊1100協(xié)同定位的位置中的塊1130存在于時(shí)間在后的畫面1114中。參照圖11B,可使用時(shí)間在后的畫面1114的協(xié)同定位的位置中的塊1130的運(yùn)動矢量來產(chǎn)生當(dāng)前畫面1110的當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子。例如,如果針對當(dāng)前畫面1110的時(shí)間在前的畫面1112的搜索的塊1132來產(chǎn)生處于與當(dāng)前塊1110協(xié)同定位的位置中的塊1130的運(yùn)動矢量mv_colB,則當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子候選mv_L0B和mv_L1B可根據(jù)以下等式來產(chǎn)生:mv_L0B=(t3/t4)×mv_colBmv_L1B=mv_L0B-mv_colB其中,mv_L0B表示針對時(shí)間在前的畫面1112的當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子,mv_L1B表示針對時(shí)間在后的畫面1114的當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子。在產(chǎn)生B畫面的當(dāng)前塊1100的運(yùn)動矢量的過程中,可使用圖11A和圖11B中示出的方法中的至少一個(gè)。換句話說,由于使用處于與當(dāng)前塊1100協(xié)同定位的位置中的塊1120或1130的運(yùn)動矢量和時(shí)間距離來產(chǎn)生運(yùn)動矢量預(yù)測因子,因此如果在協(xié)同定位的位置中的塊1120和塊1130的運(yùn)動矢量存在,則可使圖11A和圖11B中示出的方法產(chǎn)生運(yùn)動矢量預(yù)測因子。因此,根據(jù)示例性實(shí)施例的預(yù)測器910可僅使用處于協(xié)同定位的位置中的塊1120和1130中具有運(yùn)動矢量的塊來產(chǎn)生當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子。例如,當(dāng)使用幀內(nèi)預(yù)測而非幀間預(yù)測來對處于時(shí)間在前的畫面1112的協(xié)同定位的位置中的塊1120進(jìn)行編碼時(shí),塊1120的運(yùn)動矢量不存在,因此不能使用如圖11A中示出的產(chǎn)生運(yùn)動矢量預(yù)測因子的方法來產(chǎn)生當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子。圖11C示出根據(jù)示例性實(shí)施例的產(chǎn)生B畫面的運(yùn)動矢量預(yù)測因子的方法。參照圖11C,可使用處于時(shí)間在前的畫面1112的協(xié)同定位的位置中的塊1140的運(yùn)動矢量來產(chǎn)生當(dāng)前畫面1110的當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子。例如,如果針對另一時(shí)間在前的畫面1116的搜索的塊1142產(chǎn)生了處于與當(dāng)前塊1100協(xié)同定位的位置中的塊1130的運(yùn)動矢量mv_colC,則可根據(jù)以下等式產(chǎn)生當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子候選mv_L0C:mv_L0C=(t6/t5)×mv_colC由于當(dāng)前畫面1110是P畫面,因此與圖11A和圖11B不同,當(dāng)前塊1100的運(yùn)動矢量預(yù)測因子的數(shù)量為1??傊?,可根據(jù)以下等式來產(chǎn)生根據(jù)圖10A、圖10B以及圖11A至圖11C的運(yùn)動矢量預(yù)測因子候選的集合C:C={median(mv_a0,mv_b0,mv_c),mv_a0,mv_a1,…,mv_aN,mv_b0,mv_b1,…mv_bN,mv_c,mv_d,mv_e,mv_temporal}。可選擇地,可通過根據(jù)以下等式減少運(yùn)動矢量預(yù)測因子候選的數(shù)量來產(chǎn)生集合C。C={median(mv_a’,mv_b’,mv_c’),mv_a’,mv_b’,mv_c’,mv_temporal}。這里,mv_x表示塊x的運(yùn)動矢量。median()表示中值,mv_temporal表示使用以上關(guān)聯(lián)圖11A至圖11C描述的時(shí)間距離產(chǎn)生的運(yùn)動矢量預(yù)測因子候選。另外,mv_a’表示mv_a0,mv_a1,…,mv_aN之中恰好的第一有效運(yùn)動矢量。例如,當(dāng)使用幀內(nèi)預(yù)測對塊a0進(jìn)行編碼時(shí),塊a0的運(yùn)動矢量mv_a0不是有效的,因此mv_a’=mv_a1,并且如果塊a1的運(yùn)動矢量也不是有效的,則mv_a’=mv_a2。同樣,mv_b’表示mv_b0,mv_b1,…mv_bN之中的第一有效運(yùn)動矢量,mv_c’表示mv_c,mv_d和mv_e之中的第一有效運(yùn)動矢量。顯式模式是對指示哪個(gè)運(yùn)動矢量已被用于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼的模式。例如,當(dāng)以顯式模式對運(yùn)動矢量進(jìn)行編碼時(shí),二進(jìn)制數(shù)字可被分配給集合C中的每個(gè)元素(即,運(yùn)動矢量預(yù)測因子候選),并且如果所述候選中的一個(gè)被用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子,則相應(yīng)的二進(jìn)制數(shù)字可被輸出。本領(lǐng)域的普通技術(shù)人員將容易理解,除上述關(guān)聯(lián)顯式模式描述的那些運(yùn)動矢量預(yù)測因子候選之外,其他運(yùn)動矢量預(yù)測因子候選可被使用。(2)隱含模式(Implicitmode)可由預(yù)測器910選擇的對運(yùn)動矢量預(yù)測因子進(jìn)行編碼的方法中的另一方法執(zhí)行對這樣的信息進(jìn)行編碼的模式,所述信息指示基于與當(dāng)前塊鄰近的先前編碼的區(qū)域中包括的塊或像素來產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子。與顯式模式不同,該模式是在沒有用于指定運(yùn)動矢量預(yù)測因子的編碼信息的情況下,以隱含模式對指示運(yùn)動矢量預(yù)測因子的產(chǎn)生的信息進(jìn)行編碼的模式。如上所述,諸如MPEG-4H.264/MPEG-4AVC的編解碼器使用與當(dāng)前塊鄰近的先前編碼的塊的運(yùn)動矢量來預(yù)測當(dāng)前塊的運(yùn)動矢量。也就是說,與當(dāng)前塊的左側(cè)、上側(cè)、右上側(cè)鄰近的先前編碼的塊的運(yùn)動矢量的中值被用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子。在這種情況下,與顯式模式不同,用于選擇運(yùn)動矢量預(yù)測因子候選之一的信息可不被編碼。換句話說,如果在圖像編碼處理中僅對指示已經(jīng)以隱含模式對當(dāng)前塊的運(yùn)動矢量預(yù)測因子進(jìn)行編碼的信息進(jìn)行編碼,則在圖像解碼處理中,與當(dāng)前塊的左側(cè)、上側(cè)和右上側(cè)鄰近的先前編碼的塊的運(yùn)動矢量的中值可被用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子。另外,除了將與當(dāng)前塊的左側(cè)、上側(cè)和右上側(cè)鄰近的先前編碼的塊的運(yùn)動矢量的中值用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子的方法以外,根據(jù)示例性實(shí)施例的圖像編碼方法提供了一種新的隱含模式?,F(xiàn)在將參照圖12對此進(jìn)行詳細(xì)描述。圖12示出根據(jù)示例性實(shí)施例的在隱含模式中產(chǎn)生運(yùn)動矢量預(yù)測因子的方法。參照圖12,與當(dāng)前畫面1210的當(dāng)前塊1200鄰近的先前編碼的區(qū)域1220中包括的像素1222被用于產(chǎn)生當(dāng)前塊1200的運(yùn)動矢量預(yù)測因子。通過使用鄰近像素1222搜索參考畫面1212來確定相應(yīng)像素1224??赏ㄟ^計(jì)算絕對差之和(SAD)來確定所述相應(yīng)像素1224。當(dāng)所述相應(yīng)像素1224被確定時(shí),鄰近像素1222的運(yùn)動矢量mv_template被產(chǎn)生,并且所述運(yùn)動矢量mv_template可被用作當(dāng)前塊1200的運(yùn)動矢量預(yù)測因子。如果將鄰近塊的運(yùn)動矢量的中值用作運(yùn)動矢量預(yù)測因子的模式被定義為“隱含模式_1”,并且如果使用與當(dāng)前塊鄰近的像素來產(chǎn)生運(yùn)動矢量預(yù)測因子的模式被定義為“隱含模式_2”,則可通過在圖像編碼處理中對關(guān)于所述兩種隱含模式(隱含模式_1和隱含模式_2)中的一個(gè)的信息進(jìn)行編碼并在圖像解碼處理中參考關(guān)于模式的信息,來使用所述兩種隱含模式之一產(chǎn)生運(yùn)動矢量預(yù)測因子。(3)模式選擇對于預(yù)測器910而言可能存在各種標(biāo)準(zhǔn)來選擇上述顯式模式和隱含模式中的一個(gè)。由于在顯式模式中選擇了多個(gè)運(yùn)動矢量預(yù)測因子候選中的一個(gè),因此與當(dāng)前塊的運(yùn)動矢量更相似的運(yùn)動矢量預(yù)測因子可被選擇。然而,由于指示多個(gè)運(yùn)動矢量預(yù)測因子候選之一的信息被編碼,因此會產(chǎn)生比在隱含模式中更多的開銷。因此,對于具有較大大小的編碼單元,可以以顯式模式對運(yùn)動矢量進(jìn)行編碼,這是因?yàn)閷τ诰哂休^大大小的編碼單元,當(dāng)運(yùn)動矢量被錯誤預(yù)測時(shí)發(fā)生的誤差增加的可能性高于具有較小大小的編碼單元,并且對于每個(gè)畫面,開銷發(fā)生的次數(shù)減少。例如,當(dāng)被等分為具有64×64的大小的m個(gè)編碼單元的畫面以顯式模式被編碼時(shí),開銷發(fā)生次數(shù)為m。然而,當(dāng)具有相同大小的被等分為具有32×32的大小的4m個(gè)編碼單元的畫面以顯式模式被編碼時(shí),開銷發(fā)生次數(shù)為4m。因此,根據(jù)示例性實(shí)施例的預(yù)測器910可在當(dāng)前塊的運(yùn)動矢量被編碼時(shí)基于編碼單元的大小來選擇顯式模式和隱含模式之一。由于在以上參照圖1至圖8描述的根據(jù)示例性實(shí)施例的圖像編碼方法和圖像解碼方法中的編碼單元的大小使用深度來表示,因此預(yù)測器910基于當(dāng)前塊的深度來確定當(dāng)前塊的運(yùn)動矢量是以顯式模式被編碼還是以隱含模式被編碼。例如,當(dāng)深度為0和1的編碼單元被幀間預(yù)測時(shí),所述編碼單元的運(yùn)動矢量以顯式模式被編碼,當(dāng)深度等于或大于2的編碼單元被幀間預(yù)測時(shí),所述編碼單元的運(yùn)動矢量以隱含模式被編碼。根據(jù)另一示例性實(shí)施例,預(yù)測器910可為每個(gè)畫面或像條單元選擇顯式模式或隱含模式。由于對于每個(gè)畫面或像條單元,圖像特征不同,因此可通過考慮這些圖像特征來為每個(gè)畫面或像條單元選擇顯式模式或隱含模式。可通過考慮R-D成本從顯式模式和隱含模式之中選擇最優(yōu)模式,來對當(dāng)前畫面或像條中包括的編碼單元的運(yùn)動矢量進(jìn)行預(yù)測編碼。例如,如果在不使用顯式模式的情況下,畫面或像條中包括的編碼單元的運(yùn)動矢量可被準(zhǔn)確預(yù)測,則可以以隱含模式對所述畫面或像條中包括的所有編碼單元的運(yùn)動矢量進(jìn)行預(yù)測編碼。根據(jù)另一示例性實(shí)施例,預(yù)測器910可基于是否已經(jīng)以跳過模式對當(dāng)前塊進(jìn)行編碼來選擇顯式模式或隱含模式。跳過模式是這樣的編碼模式,在所述編碼模式中,在沒有對像素值進(jìn)行編碼的情況下,指示已經(jīng)以跳過模式對當(dāng)前塊進(jìn)行編碼的標(biāo)志信息被編碼。此外,跳過模式是這樣一種模式,在所述模式中,由于通過將運(yùn)動矢量預(yù)測因子用作當(dāng)前塊的運(yùn)動矢量執(zhí)行運(yùn)動補(bǔ)償而產(chǎn)生的預(yù)測塊與當(dāng)前塊相似,因此當(dāng)前塊的像素值不被編碼。因此,由于更相似于當(dāng)前塊的運(yùn)動矢量來產(chǎn)生運(yùn)動矢量預(yù)測因子,因此以跳過模式對當(dāng)前塊進(jìn)行編碼的可能性更高。因此,以跳過模式編碼的塊可以以顯式模式被編碼。參照回圖9,當(dāng)預(yù)測器910選擇顯式模式和隱含模式之一并根據(jù)選擇的模式確定運(yùn)動矢量預(yù)測因子時(shí),第一編碼器920和第二編碼器930對關(guān)于編碼模式和運(yùn)動矢量的信息進(jìn)行編碼。具體地,第一編碼器920對關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼。更詳細(xì)地,當(dāng)預(yù)測器910確定當(dāng)前塊的運(yùn)動矢量以顯式模式被編碼時(shí),第一編碼器920對指示已經(jīng)以顯式模式產(chǎn)生運(yùn)動矢量預(yù)測因子的信息以及指示哪個(gè)運(yùn)動矢量預(yù)測因子候選已被用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼。相反,當(dāng)預(yù)測器910選擇當(dāng)前塊的運(yùn)動矢量以隱含模式被編碼時(shí),第一編碼器920對指示已經(jīng)以隱含模式產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼。換句話說,第一編碼器920對指示已經(jīng)使用與當(dāng)前塊鄰近的塊或像素產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼。如果使用了兩個(gè)或更多個(gè)隱含模式,則第一編碼器920還可對指示哪個(gè)隱含模式已被用于產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼。第二編碼器930基于由預(yù)測器910產(chǎn)生的運(yùn)動矢量預(yù)測因子來對當(dāng)前塊的運(yùn)動矢量進(jìn)行編碼??蛇x擇地,第二編碼器930通過從作為運(yùn)動補(bǔ)償?shù)慕Y(jié)果產(chǎn)生的當(dāng)前塊的運(yùn)動矢量減去由預(yù)測器910產(chǎn)生的運(yùn)動矢量預(yù)測因子來產(chǎn)生差矢量(differencevector),并對關(guān)于所述差矢量的信息進(jìn)行編碼。圖13是根據(jù)示例性實(shí)施例的用于對運(yùn)動矢量進(jìn)行解碼的設(shè)備1300的框圖。用于對運(yùn)動矢量進(jìn)行解碼的設(shè)備1300可包括在以上參照圖2描述的圖像解碼設(shè)備200中或包括在以上參照圖5描述的圖像解碼器500中。參照圖13,運(yùn)動矢量解碼設(shè)備1300包括第一解碼器1310、第二解碼器1320、預(yù)測器1330和運(yùn)動矢量恢復(fù)器1340。第一解碼器1310對比特流中包括的關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行解碼。詳細(xì)地,第一解碼器1310對指示是以顯式模式還是以隱含模式已對當(dāng)前塊的運(yùn)動矢量預(yù)測因子進(jìn)行編碼的信息進(jìn)行解碼。在當(dāng)前塊的運(yùn)動矢量預(yù)測因子已經(jīng)以顯式模式被編碼時(shí),第一解碼器1310還對指示多個(gè)運(yùn)動矢量預(yù)測因子之中用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子的運(yùn)動矢量預(yù)測因子的信息進(jìn)行解碼。在當(dāng)前塊的運(yùn)動矢量預(yù)測因子已經(jīng)以隱含模式被編碼時(shí),解碼器1310還對指示多個(gè)隱含模式中的哪個(gè)隱含模式已被用于對當(dāng)前塊的運(yùn)動矢量預(yù)測因子進(jìn)行編碼的信息進(jìn)行解碼。第二解碼器1320對比特流中包括的當(dāng)前塊的運(yùn)動矢量預(yù)測因子與運(yùn)動矢量之間的差矢量進(jìn)行解碼。預(yù)測器1330基于由第一解碼器1310解碼的關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息來產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子。當(dāng)關(guān)于已經(jīng)以顯式模式被編碼的當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息被解碼時(shí),預(yù)測器1330產(chǎn)生以上參照圖10A、圖10B以及圖11A至圖11C描述的運(yùn)動矢量預(yù)測因子候選之中的運(yùn)動矢量預(yù)測因子,并將產(chǎn)生的運(yùn)動矢量預(yù)測因子用作當(dāng)前塊的運(yùn)動矢量預(yù)測因子。當(dāng)關(guān)于已經(jīng)以隱含模式被編碼的當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息被解碼時(shí),預(yù)測器1330使用與當(dāng)前塊鄰近的先前編碼的區(qū)域中包括的塊或像素來產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子。更詳細(xì)地,預(yù)測器1330產(chǎn)生與當(dāng)前塊鄰近的塊的運(yùn)動矢量的中值作為當(dāng)前塊的運(yùn)動矢量預(yù)測因子,或者通過使用與當(dāng)前塊鄰近的像素搜索參考畫面來產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子。運(yùn)動矢量恢復(fù)器1340通過對由預(yù)測器1330產(chǎn)生的運(yùn)動矢量預(yù)測因子以及由第二解碼器1320解碼的差矢量求和,來恢復(fù)當(dāng)前塊的運(yùn)動矢量。恢復(fù)的運(yùn)動矢量被用于當(dāng)前塊的運(yùn)動補(bǔ)償。圖14是根據(jù)示例性實(shí)施例的對運(yùn)動矢量進(jìn)行編碼的方法的流程圖。參照圖14,在操作1410,根據(jù)示例性實(shí)施例的運(yùn)動矢量編碼設(shè)備900選擇顯式模式和隱含模式之一作為對關(guān)于運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼的模式。顯式模式是將指示至少一個(gè)運(yùn)動矢量預(yù)測因子候選之中的運(yùn)動矢量預(yù)測因子候選的信息編碼為關(guān)于運(yùn)動矢量預(yù)測因子的信息的模式。隱含模式是將指示已經(jīng)基于與當(dāng)前塊鄰近的先前編碼的區(qū)域中包括的塊或像素產(chǎn)生運(yùn)動矢量預(yù)測因子的信息編碼為關(guān)于運(yùn)動矢量預(yù)測因子的信息的模式。以上已參照圖10A、圖10B、圖11A至圖11C以及圖12給出了對其進(jìn)行的詳細(xì)描述??苫诋?dāng)前塊的大小(即,當(dāng)前塊的深度)來選擇模式,或以當(dāng)前畫面或像條為單位來選擇模式,其中,在所述當(dāng)前畫面或像條中包括當(dāng)前塊。可選擇地,可根據(jù)當(dāng)前塊是否已經(jīng)以跳過模式被編碼來選擇模式。在操作1420,運(yùn)動矢量編碼設(shè)備900根據(jù)在操作1410中選擇的模式來確定運(yùn)動矢量預(yù)測因子。詳細(xì)地,運(yùn)動矢量編碼設(shè)備900基于在操作1410中選擇的顯式模式或隱含模式來確定當(dāng)前塊的運(yùn)動矢量預(yù)測因子。更詳細(xì)地,運(yùn)動矢量編碼設(shè)備900以顯式模式將至少一個(gè)運(yùn)動矢量預(yù)測因子之中的運(yùn)動矢量預(yù)測因子確定為當(dāng)前塊的運(yùn)動矢量預(yù)測因子,或者以隱含模式基于與當(dāng)前塊鄰近的塊或像素來確定當(dāng)前塊的運(yùn)動矢量預(yù)測因子。在操作1430,運(yùn)動矢量編碼設(shè)備900對關(guān)于在操作1420中確定的運(yùn)動矢量預(yù)測因子的消息進(jìn)行編碼。在顯式模式的情況下,運(yùn)動矢量編碼設(shè)備900對以下信息進(jìn)行編碼:指示至少一個(gè)運(yùn)動矢量預(yù)測因子候選之中的作為當(dāng)前塊的運(yùn)動矢量預(yù)測因子的運(yùn)動矢量預(yù)測因子候選的信息,以及指示已經(jīng)以顯式模式對關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼的信息。在隱含模式的情況下,運(yùn)動矢量編碼設(shè)備900對指示已經(jīng)基于與當(dāng)前塊鄰近的先前編碼的區(qū)域中包括的塊或像素產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行編碼。在多個(gè)隱含模式的情況下,運(yùn)動矢量編碼設(shè)備900還可對指示所述多個(gè)隱含模式之一的信息進(jìn)行編碼。在操作1440,運(yùn)動矢量編碼設(shè)備900對通過從當(dāng)前塊的運(yùn)動矢量減去在操作1420中確定的運(yùn)動矢量預(yù)測因子而產(chǎn)生的差矢量進(jìn)行編碼。圖15是根據(jù)示例性實(shí)施例的對運(yùn)動矢量進(jìn)行解碼的方法的流程圖。參照圖15,在操作1510,根據(jù)示例性實(shí)施例的運(yùn)動矢量解碼設(shè)備1300對比特流中包括的關(guān)于當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行解碼。詳細(xì)地,運(yùn)動矢量解碼設(shè)備1300對關(guān)于顯式模式和隱含模式之中用于對當(dāng)前塊的運(yùn)動矢量預(yù)測因子進(jìn)行編碼的模式的信息進(jìn)行解碼。在顯式模式的情況下,運(yùn)動矢量解碼設(shè)備1300對指示已經(jīng)以顯式模式對當(dāng)前塊的運(yùn)動矢量預(yù)測因子進(jìn)行編碼的信息以及關(guān)于至少一個(gè)運(yùn)動矢量預(yù)測因子候選之中的運(yùn)動矢量預(yù)測因子候選的信息進(jìn)行解碼。在隱含模式的情況下,運(yùn)動矢量解碼設(shè)備1300對指示已經(jīng)基于與當(dāng)前塊鄰近的先前編碼的區(qū)域中包括的塊或像素產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子的信息進(jìn)行解碼。在多個(gè)隱含模式的情況下,運(yùn)動矢量解碼設(shè)備1300還對指示所述多個(gè)隱含模式之一的信息進(jìn)行解碼。在操作1520,運(yùn)動矢量解碼設(shè)備1300對關(guān)于差矢量的信息進(jìn)行解碼。所述差矢量是當(dāng)前塊的運(yùn)動矢量預(yù)測因子與當(dāng)前塊的運(yùn)動矢量之間的差的矢量。在操作1530,運(yùn)動矢量解碼設(shè)備1300基于已在操作1510中解碼的關(guān)于運(yùn)動矢量預(yù)測因子的信息產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子。詳細(xì)地,運(yùn)動矢量解碼設(shè)備1300根據(jù)顯式模式或隱含模式產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子。更詳細(xì)地,運(yùn)動矢量解碼設(shè)備1300通過選擇至少一個(gè)運(yùn)動矢量預(yù)測因子候選之中的運(yùn)動矢量預(yù)測因子候選或使用與當(dāng)前塊鄰近的先前解碼的區(qū)中包括的塊或像素,來產(chǎn)生當(dāng)前塊的運(yùn)動矢量預(yù)測因子。在操作1540,運(yùn)動矢量解碼設(shè)備1300通過對在操作1520中解碼的差矢量和在操作1530中產(chǎn)生的運(yùn)動矢量預(yù)測因子求和,來恢復(fù)當(dāng)前塊的運(yùn)動矢量。盡管已經(jīng)具體顯示和描述了示例性實(shí)施例,但是本領(lǐng)域的普通技術(shù)人員將理解,在不脫離由權(quán)利要求所限定的本發(fā)明構(gòu)思的精神和范圍的情況下,可以對其進(jìn)行形式和細(xì)節(jié)上的各種改變。另外,可使用計(jì)算機(jī)可讀記錄介質(zhì)中的計(jì)算機(jī)可讀代碼來實(shí)現(xiàn)根據(jù)示例性實(shí)施例的系統(tǒng)。例如,根據(jù)示例性實(shí)施例的用于對圖像編碼的設(shè)備100、用于對圖像解碼的設(shè)備200、圖像編碼器400、圖像解碼器500、運(yùn)動矢量編碼設(shè)備900以及運(yùn)動矢量解碼設(shè)備1300中的至少一個(gè)可包括連接到圖1、2、4、5、9和13中示出的裝置中的每一個(gè)的單元的總線,以及連接到所述總線的至少一個(gè)處理器。另外,連接到用于執(zhí)行如上所述的命令的至少一個(gè)處理器的存儲器可被包括并被連接到所述總線,以存儲命令和接收的消息或產(chǎn)生的消息。計(jì)算機(jī)可讀記錄介質(zhì)時(shí)可存儲其后可由計(jì)算機(jī)系統(tǒng)讀取的數(shù)據(jù)的任何數(shù)據(jù)存儲裝置。計(jì)算機(jī)可讀記錄介質(zhì)的示例包括:只讀存儲器(ROM)、隨機(jī)存取存儲器(RAM)、CD-ROM、磁帶、軟盤和光學(xué)數(shù)據(jù)存儲裝置。計(jì)算機(jī)可讀記錄介質(zhì)還可分布在聯(lián)網(wǎng)的計(jì)算機(jī)系統(tǒng)上,從而計(jì)算機(jī)可讀代碼以分布式方式被存儲和執(zhí)行。
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
城步| 安乡县| 平遥县| 蕲春县| 广宁县| 老河口市| 内江市| 四平市| 来凤县| 乡宁县| 泗洪县| 定陶县| 和田县| 天镇县| 福州市| 普陀区| 阿坝县| 南靖县| 五台县| 儋州市| 华坪县| 六安市| 华宁县| 郸城县| 涞水县| 汉源县| 临夏市| 康平县| 溧水县| 秦皇岛市| 图们市| 阳城县| 凤庆县| 渭源县| 南岸区| 五常市| 囊谦县| 安西县| 汉源县| 衡山县| 荔波县|