視頻編碼方法與視頻編碼裝置制造方法
【專利摘要】本發(fā)明提供一種視頻編碼方法與視頻編碼裝置,包括:決定第一宏塊在參考圖像上的第一搜索窗口,并且決定第二宏塊在參考圖像上的第二搜索窗口,其中第一搜索窗口至少部分地重疊于第二搜索窗口;從存儲(chǔ)器中讀取第一搜索窗口與第二搜索窗口并執(zhí)行包括動(dòng)作估測(cè)與二進(jìn)制化編碼的第一編碼階段;將第一編碼階段的編碼結(jié)果儲(chǔ)存在存儲(chǔ)器中;以及,從存儲(chǔ)器中讀取編碼結(jié)果,并且執(zhí)行第二編碼階段;第二編碼階段包括情境熵值編碼,情境熵值編碼的編碼順序不同于動(dòng)作估測(cè)的編碼順序,并且第二編碼階段與第一編碼階段是平行地被執(zhí)行。藉此,可以降低存儲(chǔ)器的帶寬需求。
【專利說(shuō)明】視頻編碼方法與視頻編碼裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明是有關(guān)于一種視頻編碼方法與使用此方法的視頻編碼裝置。
【背景技術(shù)】
[0002]一般來(lái)說(shuō),要編碼一段視頻時(shí),此視頻會(huì)被分為多張圖幀(frame),每張圖幀包括多個(gè)切片(slice),每個(gè)切片包括多個(gè)宏塊(macro block),而每個(gè)宏塊可以再被分割為一或多個(gè)方塊(block)。當(dāng)要計(jì)算圖巾貞之間在時(shí)間上的冗余(temporal redundancy)時(shí),會(huì)計(jì)算一個(gè)目前圖幀與一個(gè)參考圖幀之間的動(dòng)作向量。計(jì)算動(dòng)作向量是要用參考圖幀上的像素值來(lái)預(yù)測(cè)目前圖巾貞的一個(gè)宏塊。預(yù)測(cè)的結(jié)果會(huì)經(jīng)過(guò)離散余弦轉(zhuǎn)換(discrete cosinetransform)、量化、行程長(zhǎng)度編碼(run length coding)、以及熵值編碼。其中,在計(jì)算目前圖幀中一個(gè)宏塊的動(dòng)作向量時(shí),會(huì)取得參考圖幀上對(duì)應(yīng)的一個(gè)搜索窗口內(nèi)的像素值。通常,參考圖幀是儲(chǔ)存在一個(gè)存儲(chǔ)器中,當(dāng)要計(jì)算動(dòng)作向量時(shí),會(huì)從此存儲(chǔ)器中讀取對(duì)應(yīng)的搜索窗P。
[0003]圖1是讀取搜索窗口的示意圖。
[0004]請(qǐng)參照?qǐng)D1,目前圖幀110包括宏塊111與112。參考圖幀120包括搜索窗口 121與122。當(dāng)要計(jì)算宏塊111的動(dòng)作向量時(shí),必須從存儲(chǔ)器中讀取搜索窗口 121。當(dāng)要計(jì)算宏塊112的動(dòng)作向量時(shí),必須從存儲(chǔ)器中讀取搜索窗口 122。其中,區(qū)域123是搜索窗口 121與搜索窗口 122之間重疊的部分。因此,在計(jì)算完宏塊111的動(dòng)作向量以后,只需要讀取搜索窗口 122中沒(méi)有與搜索窗口 121重疊的部分便可以計(jì)算宏塊112的動(dòng)作向量。當(dāng)編碼完同一列的宏塊以后,搜索窗口 121可能已不在存儲(chǔ)器當(dāng)中。因此,當(dāng)要對(duì)下一列的宏塊執(zhí)行動(dòng)作估測(cè)時(shí),必須再?gòu)拇鎯?chǔ)器中讀取一個(gè)搜索窗口,此搜索窗口可能會(huì)與搜索窗口 121部分地重疊。如此一來(lái),搜索窗口中部分的像素值會(huì)被讀取兩次,造成存儲(chǔ)器的帶寬需求增加。
[0005]計(jì)算動(dòng)作向量需要大量的計(jì)算能力與存儲(chǔ)器帶寬。因此,如何降低存儲(chǔ)器的帶寬需求并增加視頻編碼的速度,為此領(lǐng)域技術(shù)人員所關(guān)心的議題。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的實(shí)施例提供一種視頻編碼方法與視頻編碼裝置,可以降低存儲(chǔ)器的帶寬需求。
[0007]本發(fā)明一實(shí)施例提供一種視頻編碼方法,用于一個(gè)視頻編碼裝置。此視頻編碼方法包括:決定第一宏塊在一個(gè)參考圖像上的第一搜索窗口,并且決定第二宏塊在參考圖像上的第二搜索窗口,其中第一搜索窗口至少部分地重疊于第二搜索窗口 ;從一個(gè)存儲(chǔ)器中讀取第一搜索窗口與第二搜索窗口,并且對(duì)第一宏塊與第二宏塊執(zhí)行第一編碼階段,其中第一編碼階段包括動(dòng)作估測(cè)與二進(jìn)制化編碼;將第一編碼階段的編碼結(jié)果儲(chǔ)存在一存儲(chǔ)器中;以及,從存儲(chǔ)器中讀取編碼結(jié)果,并且對(duì)編碼結(jié)果執(zhí)行第二編碼階段,其中第二編碼階段包括情境熵值編碼,情境熵值編碼的編碼順序不同于動(dòng)作估測(cè)的編碼順序,并且第二編碼階段與第一編碼階段是平行地被執(zhí)行。
[0008]在一實(shí)施例中,第一圖像包括多個(gè)宏塊列。上述的第一宏塊是被包括在這些宏塊列中的第a個(gè)宏塊列,并且第二宏塊是被包括在宏塊列中的第b個(gè)宏塊列,其中a與b為正整數(shù),并且a不同于b。
[0009]在一實(shí)施例中,上述的正整數(shù)a與b之間的絕對(duì)差大于等于2。
[0010]在一實(shí)施例中,上述的第a個(gè)宏塊列包括多個(gè)第三宏塊,第b個(gè)宏塊列包括多個(gè)第四宏塊,并且第二宏塊是位于第四宏塊中的第c個(gè)。上述對(duì)第一宏塊與第二宏塊執(zhí)行第一編碼階段的步驟包括:對(duì)第三宏塊中的第(c+d)個(gè)第三宏塊執(zhí)行動(dòng)作估測(cè)以后才對(duì)第二宏塊執(zhí)行動(dòng)作估測(cè)。其中C為正整數(shù),并且d為大于等于2的正整數(shù)。
[0011]在一實(shí)施例中,上述的第a個(gè)宏塊列包括多個(gè)第三宏塊,并且第b個(gè)宏塊列包括多個(gè)第四宏塊。此視頻編碼方法還包括:由第一編碼器依序地對(duì)第三宏塊執(zhí)行動(dòng)作估測(cè);當(dāng)?shù)谝痪幋a器對(duì)第三宏塊中第e個(gè)第三宏塊執(zhí)行動(dòng)作估測(cè)時(shí),由第二編碼器開始依序地對(duì)第四宏塊執(zhí)行動(dòng)作估測(cè),其中e為大于等于3的正整數(shù)。
[0012]在一實(shí)施例中,上述的第一圖像包括多個(gè)宏塊列群組,第a個(gè)宏塊列與第b個(gè)宏塊列同屬于宏塊列群組中的第一宏塊列群組。第a個(gè)宏塊列包括多個(gè)第三宏塊,并且第b個(gè)宏塊列包括多個(gè)第四宏塊。第一圖像還包括第二宏塊列群組,第二宏塊列群組包括第一宏塊列與第二宏塊列。第一宏塊列包括多個(gè)第五宏塊,并且第二宏塊列包括多個(gè)第六宏塊。上述對(duì)第一宏塊與第二宏塊執(zhí)行第一編碼階段的步驟包括:由第一編碼器交錯(cuò)地對(duì)第三宏塊的其中之一與第四宏塊的其中之一執(zhí)行動(dòng)作估測(cè),并且同時(shí)由第二編碼器交錯(cuò)地對(duì)第五宏塊的其中之一與第六宏塊的其中之一執(zhí)行動(dòng)作估測(cè)。
[0013]在一實(shí)施例中,上述的第一宏塊是被包括在第一圖像,第二宏塊是被包括在第二圖像,并且第一圖像不同于第二圖像。
[0014]在一實(shí)施例中,上述的情境熵值編碼包括一運(yùn)算編碼。
[0015]以另外一個(gè)角度來(lái)說(shuō),本發(fā)明一實(shí)施例提供一種視頻編碼裝置,包括第一編碼器、第二編碼器與存儲(chǔ)器;存儲(chǔ)器是耦接至第一編碼器與第二編碼器;第一編碼器是用以決定第一宏塊在一參考圖像上的第一搜索窗口,并且決定第二宏塊在參考圖像上的第二搜索窗口 ;其中第一搜索窗口至少部分地重疊于第二搜索窗口 ;第一編碼器也用以從存儲(chǔ)器中讀取第一搜索窗口與第二搜索窗口,并且對(duì)第一宏塊與第二宏塊執(zhí)行第一編碼階段;此第一編碼階段包括動(dòng)作估測(cè)與二進(jìn)制化編碼;第一編碼器也用以將第一編碼階段的編碼結(jié)果儲(chǔ)存在存儲(chǔ)器中。第二編碼器用以從存儲(chǔ)器中讀取此編碼結(jié)果,并且對(duì)編碼結(jié)果執(zhí)行第二編碼階段。第二編碼階段包括情境熵值編碼。情境熵值編碼的編碼順序不同于動(dòng)作估測(cè)的編碼順序,并且第二編碼階段與第一編碼階段是平行地被執(zhí)行。
[0016]在一實(shí)施例中,第一圖像包括多個(gè)宏塊列。第一宏塊是被包括在這些宏塊列中的第a個(gè)宏塊列,并且第二宏塊是被包括在宏塊列中的第b個(gè)宏塊列。其中a與b為正整數(shù),并且a不同于b。
[0017]在一實(shí)施例中,上述的正整數(shù)a與b之間的絕對(duì)差大于等于2。
[0018]在一實(shí)施例中,上述的第a個(gè)宏塊列包括多個(gè)第三宏塊,第b個(gè)宏塊列包括多個(gè)第四宏塊,并且第二宏塊是位于第四宏塊中的第c個(gè)。第一編碼器還用以對(duì)第三宏塊中的第(c+d)個(gè)第三宏塊執(zhí)行動(dòng)作估測(cè)以后才對(duì)第二宏塊執(zhí)行動(dòng)作估測(cè)。其中c為正整數(shù),并且d為大于等于2的正整數(shù)。
[0019]在一實(shí)施例中,上述的第a個(gè)宏塊列包括多個(gè)第三宏塊,并且第b個(gè)宏塊列包括多個(gè)第四宏塊。第一編碼器還用以依序地對(duì)第三宏塊執(zhí)行動(dòng)作估測(cè)。當(dāng)?shù)谝痪幋a器對(duì)第三宏塊中第e個(gè)第三宏塊執(zhí)行動(dòng)作估測(cè)時(shí),由第三編碼器開始依序地對(duì)第四宏塊執(zhí)行動(dòng)作估測(cè)。其中e為大于等于3的正整數(shù)。
[0020]在一實(shí)施例中,上述的第一圖像包括多個(gè)宏塊列群組,第a個(gè)宏塊列與第b個(gè)宏塊列同屬于第一宏塊列群組。第a個(gè)宏塊列包括多個(gè)第三宏塊,并且第b個(gè)宏塊列包括多個(gè)第四宏塊。第一圖像也包括第二宏塊列群組,此第二宏塊列群組包括第一宏塊列與第二宏塊列。第一宏塊列包括多個(gè)第五宏塊,并且第二宏塊列包括多個(gè)第六宏塊。第一編碼器還用以交錯(cuò)地對(duì)第三宏塊的其中之一與第四宏塊的其中之一執(zhí)行動(dòng)作估測(cè),并且同時(shí)由第三編碼器交錯(cuò)地對(duì)第五宏塊的其中之一與第六宏塊的其中之一執(zhí)行動(dòng)作估測(cè)。
[0021]在一實(shí)施例中,上述的第一宏塊是被包括在第一圖像,第二宏塊是被包括在第二圖像,并且第一圖像不同于第二圖像。
[0022]在一實(shí)施例中,上述的情境熵值編碼包括運(yùn)算編碼。
[0023]基于上述,本發(fā)明實(shí)施例所提供的視頻編碼方法與視頻編碼裝置,可以降低存儲(chǔ)器的帶寬需求。
[0024]為使本發(fā)明的上述特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉實(shí)施例,并配合所示附圖作詳細(xì)說(shuō)明如下。
【專利附圖】
【附圖說(shuō)明】
[0025]圖1是讀取搜索窗口的示意圖;
[0026]圖2是根據(jù)一實(shí)施例說(shuō)明視頻編碼裝置的示意圖;
[0027]圖3A是根據(jù)一實(shí)施例說(shuō)明運(yùn)算編碼的范例示意圖;
[0028]圖3B至3D是根據(jù)一實(shí)施例說(shuō)明熵值編碼的示意圖;
[0029]圖4是根據(jù)一實(shí)施例說(shuō)明動(dòng)作估測(cè)的順序的范例示意圖;
[0030]圖5是根據(jù)一實(shí)施例說(shuō)明編碼器的管線排程的示意圖;
[0031]圖6A與圖6B是根據(jù)另一實(shí)施例說(shuō)明第一編碼器執(zhí)行動(dòng)作估測(cè)的順序的范例示意圖;
[0032]圖7是根據(jù)一實(shí)施例說(shuō)明共享參考圖像的范例示意圖;
[0033]圖8是根據(jù)一實(shí)施例說(shuō)明視頻編碼方法的流程圖;
[0034]圖9是根據(jù)第二實(shí)施例說(shuō)明視頻編碼裝置的方塊圖;
[0035]圖10是根據(jù)第二實(shí)施例說(shuō)明動(dòng)作估測(cè)的順序的示意圖;
[0036]圖11是根據(jù)第二實(shí)施例說(shuō)明兩張圖像共享參考圖像的示意圖;
[0037]圖12是根據(jù)第二實(shí)施例說(shuō)明編碼不同宏塊列群組的示意圖;
[0038]附圖標(biāo)記說(shuō)明:
[0039]110:目前圖幀;
[0040]111、112、711 ?714,1001 ?1004、1211、1212:宏塊;
[0041]120:參考圖像;
[0042]121、122:搜索窗口;[0043]123:區(qū)域;
[0044]200、900:視頻編碼裝置;
[0045]210、220、910、920、930、940:編碼器;
[0046]211、221、911、921、931、941:暫存存儲(chǔ)器;
[0047]212、912、922:第一編碼模塊;
[0048]213、913、923:第二編碼模塊;
[0049]214、914、924:第三編碼模塊;
[0050]215、915、925:第四編碼模塊;
[0051]216、223、916、926、933、943:存儲(chǔ)器接口 ;
[0052]222、932、942:第五編碼模塊;
[0053]230,950:存儲(chǔ)器;
[0054]301、302、311、312:范圍;
[0055]321、322、323:信號(hào);
[0056]331: 二進(jìn)制化編碼;
[0057]332,342:可變長(zhǎng)度編碼;
[0058]333、334、335、343、344:多工器;
[0059]341: 二進(jìn)制運(yùn)算編碼;
[0060]410、701 ?704、1200:圖像;
[0061]411 ?415:宏塊;
[0062]420:參考圖像;
[0063]421、422:搜索窗口;
[0064]423:區(qū)域;
[0065]501 ?503,721 ?725、1101:時(shí)間點(diǎn);
[0066]601 ?602、1221 ?1224:宏塊列;
[0067]S802、S804、S806、S808:視頻編碼方法的步驟;
[0068]1201?1203:宏塊列群組。
【具體實(shí)施方式】
[0069][第一實(shí)施例]
[0070]圖2是根據(jù)一實(shí)施例說(shuō)明視頻編碼裝置的示意圖。
[0071]請(qǐng)參照?qǐng)D2,視頻編碼裝置200包括編碼器210、編碼器220與存儲(chǔ)器230。視頻編碼裝置200是用以壓縮一段視頻,并產(chǎn)生此視頻的位串(bitstream)。例如,視頻編碼裝置200可以被配置在電視、數(shù)字?jǐn)z影機(jī)、數(shù)字相機(jī)、數(shù)字手機(jī)、平板計(jì)算機(jī)、計(jì)算機(jī)、由一或多臺(tái)計(jì)算機(jī)組成的服務(wù)器。
[0072]編碼器210用以執(zhí)行一個(gè)第一編碼階段。此第一編碼階段包括動(dòng)作估測(cè)(motionestimation)、內(nèi)部預(yù)測(cè)(intra prediction)、轉(zhuǎn)換運(yùn)算、量化運(yùn)算與二進(jìn)制化編碼(binarization encoding)。編碼器210包括暫存存儲(chǔ)器211、第一編碼模塊212、第二編碼模塊213、第三編碼模塊214、第四編碼模塊215與存儲(chǔ)器接口 216。本實(shí)施例中,編碼器210中所有的編碼模塊是以宏塊管線(macroblock pipeline)的方式來(lái)運(yùn)作。換言之,編碼器210 中的宏塊管線深度(macroblock pipeline depth)為 4。
[0073]第一編碼模塊212是用以執(zhí)行動(dòng)作估測(cè)。例如,存儲(chǔ)器接口 216從存儲(chǔ)器230中讀取一個(gè)搜索窗口內(nèi)的像素值,并且儲(chǔ)存在暫存存儲(chǔ)器211。第一編碼模塊212會(huì)根據(jù)這些讀取的像素值與一個(gè)宏塊執(zhí)行動(dòng)作估測(cè)。執(zhí)行完動(dòng)作估測(cè)以后,第一編碼模塊212至少會(huì)產(chǎn)生一或多個(gè)動(dòng)作向量以及多個(gè)殘差值(residual)。
[0074]第二編碼模塊213是用以執(zhí)行內(nèi)部預(yù)測(cè)。內(nèi)部預(yù)測(cè)是要用一個(gè)圖像中的像素值來(lái)預(yù)測(cè)本身的像素值。執(zhí)行完內(nèi)部預(yù)測(cè)以后,第二編碼模塊213至少會(huì)產(chǎn)生多個(gè)殘差值以及一個(gè)預(yù)測(cè)模式。
[0075]第三編碼模塊214是用以執(zhí)行轉(zhuǎn)換運(yùn)算與量化運(yùn)算。例如,執(zhí)行轉(zhuǎn)換運(yùn)算時(shí),第二編碼模塊214是將第一編碼模塊212或第二編碼模塊213所廣生的殘差值進(jìn)行余弦尚散轉(zhuǎn)換。然而,第三編碼模塊214也可以使用阿達(dá)瑪轉(zhuǎn)換(Hadamard transform)、重疊轉(zhuǎn)換(lapped transform)、或其他空間至頻率(spatial-to-frequency)的轉(zhuǎn)換。執(zhí)行量化運(yùn)算(quantization operation)時(shí),第三編碼模塊214是將轉(zhuǎn)換運(yùn)算產(chǎn)生的多個(gè)系數(shù)(coefficient)除以相同或不相同的量化參數(shù)。
[0076]第四編碼模塊215是用以執(zhí)行二進(jìn)制化編碼。例如,第四編碼模塊215是對(duì)量化運(yùn)算的結(jié)果執(zhí)行一個(gè)可變長(zhǎng)度編碼(variable length coding),用以將一個(gè)符號(hào)(symbol)或一個(gè)系數(shù)(coefficient)轉(zhuǎn)換為一或多個(gè)位。此可變長(zhǎng)度編碼可以為霍夫曼編碼(Huffmancoding)或哥倫布編碼(Golomb coding)?;蛘?第四編碼模塊215也可使用固定長(zhǎng)度編碼(fixed length coding)來(lái)編碼系數(shù)或符號(hào),本發(fā)明不對(duì)此作限定。
[0077]然而,本領(lǐng)域通常知識(shí)者應(yīng)可理解,編碼器210還可包括其他模塊,用以執(zhí)行其他編碼運(yùn)算。例如,編碼器210也可用以執(zhí)行行程長(zhǎng)度編碼、將一個(gè)宏塊分割為一或多個(gè)方塊來(lái)執(zhí)行動(dòng)作估測(cè)、預(yù)測(cè)一個(gè)方塊的動(dòng)作向量或是執(zhí)行一個(gè)位控制算法。并且,編碼器210所執(zhí)行的這些編碼運(yùn)算(包括動(dòng)作估測(cè)、二進(jìn)制化編碼等)可以被制作為更多或更少的模塊,藉此增加或減少編碼器210的管線深度。本發(fā)明并不對(duì)此作限定。
[0078]在此實(shí)施例中,編碼器210會(huì)將第一編碼階段的編碼結(jié)果(例如,二進(jìn)制化編碼所產(chǎn)生的位)儲(chǔ)存在存儲(chǔ)器230中。編碼器220會(huì)讀取這些編碼結(jié)果并執(zhí)行一個(gè)第二階段編碼。此第二階段編碼包括一個(gè)情境熵值編碼(context entropy coding)。具體來(lái)說(shuō),編碼器220包括暫存存儲(chǔ)器221、第五編碼模塊222與存儲(chǔ)器接口 223。存儲(chǔ)器接口 223是用以從存儲(chǔ)器230中讀取第一編碼階段的編碼結(jié)果并儲(chǔ)存在暫存存儲(chǔ)器221中。第五編碼模塊222是用以對(duì)這些編碼結(jié)果執(zhí)行情境熵值編碼。在情境熵值編碼中,若要編碼一個(gè)符號(hào)或一個(gè)系數(shù)時(shí),必須依照一個(gè)編碼順序參考前一個(gè)符號(hào)或系數(shù)的編碼結(jié)果。此編碼順序是規(guī)定在一個(gè)編碼標(biāo)準(zhǔn)(例如,H.264或是MPEG-4)當(dāng)中。例如,情境熵值編碼包括運(yùn)算編碼。
[0079]圖3A是根據(jù)一實(shí)施例說(shuō)明運(yùn)算編碼的范例示意圖。
[0080]概念上,運(yùn)算編碼是用一個(gè)浮點(diǎn)數(shù)來(lái)表示多個(gè)欲被編碼的符號(hào)。此浮點(diǎn)數(shù)是根據(jù)符號(hào)出現(xiàn)的機(jī)率的來(lái)產(chǎn)生。請(qǐng)參照?qǐng)D3A,符號(hào)“a”出現(xiàn)的機(jī)率是0.6,而符號(hào)“b”出現(xiàn)的機(jī)率是0.4。浮點(diǎn)數(shù)的初始范圍為0?1,其中包括范圍301(即0?0.6)以及范圍302(即,
0.6?I)。若要編碼符號(hào)“a”,則浮點(diǎn)數(shù)的范圍會(huì)被更新為范圍301,反之則是范圍302。在此假設(shè)第一個(gè)符號(hào)是“a”。接著,若要編碼第二個(gè)符號(hào),則會(huì)從范圍301中選擇范圍311 (即,0?0.36)或是范圍312(0.36?0.6)。范圍311表示第二個(gè)符號(hào)為“a”,并且范圍312表示第二個(gè)符號(hào)是“b”。在此假設(shè)第二個(gè)符號(hào)是“b”。接著,編碼器會(huì)從范圍312中選擇一個(gè)浮點(diǎn)數(shù)(例如0.5)傳送給譯碼器,譯碼器可以根據(jù)此浮點(diǎn)數(shù)譯碼出符號(hào)“a”與“b”。等效地來(lái)說(shuō),一個(gè)符號(hào)可用少于一個(gè)位或是非整數(shù)個(gè)位來(lái)編碼。特別的是,在運(yùn)算編碼中,必須先編碼第一個(gè)符號(hào)才能編碼第二個(gè)符號(hào),如此才能得到正確的范圍。
[0081]圖3B至3D是根據(jù)一實(shí)施例說(shuō)明熵值編碼的示意圖。
[0082]請(qǐng)參照?qǐng)D3B,本實(shí)施例中一個(gè)系數(shù)或符號(hào)會(huì)經(jīng)過(guò)二進(jìn)制化編碼與情境熵值編碼的運(yùn)算。例如,信號(hào)321為系數(shù)“-35”,并且此系數(shù)是用16個(gè)位來(lái)表示。第四編碼模塊215對(duì)信號(hào)321執(zhí)行二進(jìn)制化編碼以后,信號(hào)322只包括整數(shù)個(gè)位,例如為“1110”。信號(hào)322會(huì)被儲(chǔ)存在存儲(chǔ)器230中。第五編碼模塊215會(huì)對(duì)信號(hào)322執(zhí)行情境熵值編碼(例如,運(yùn)算編碼),以產(chǎn)生信號(hào)323。
[0083]請(qǐng)參照?qǐng)D3C,第四編碼模塊215包括二進(jìn)制化編碼331、可變長(zhǎng)度編碼332、多工器333?335。信號(hào)322會(huì)被執(zhí)行二進(jìn)制化編碼331與可變長(zhǎng)度編碼322。多工器335會(huì)從多工器333與334中選擇一個(gè)并輸出成信號(hào)322。例如,在H.264的編碼標(biāo)準(zhǔn)中,若要使用適應(yīng)性情境二兀運(yùn)算編碼(Context-adaptive binary arithmetic coding, CABAC)來(lái)做熵值編碼,則多工器355會(huì)選擇多工器333的結(jié)果。反之,則多工器335會(huì)選擇多工器334的結(jié)果。另一方面,多工器333會(huì)根據(jù)信號(hào)321的特性決定是否要輸出二進(jìn)制化編碼331的結(jié)果。例如,當(dāng)信號(hào)321表示一個(gè)預(yù)測(cè)模式時(shí),此預(yù)測(cè)模式并不需要經(jīng)過(guò)二進(jìn)制化編碼331的運(yùn)算。類似地,多工器334也會(huì)根據(jù)信號(hào)321的特性來(lái)決定是否要輸出可變長(zhǎng)度編碼332的結(jié)果。
[0084]請(qǐng)參照?qǐng)D3D,第五編碼模塊222包括二進(jìn)制算術(shù)編碼341、可變長(zhǎng)度編碼342、多工器343與344。若是使用適應(yīng)性情境二元運(yùn)算編碼來(lái)做熵值編碼,多工器344會(huì)選擇二進(jìn)制運(yùn)算編碼341的結(jié)果輸出為信號(hào)323。反之,多工器344會(huì)選擇多工器343的結(jié)果。另一方面,多工器343會(huì)判斷是否要輸出可變長(zhǎng)度編碼342的結(jié)果。在一實(shí)施例中,一個(gè)系數(shù)或符號(hào)可以由第四編碼模塊215來(lái)做可變長(zhǎng)度編碼332,也可以由第五編碼模塊222來(lái)做可變長(zhǎng)度編碼342,本發(fā)明并不對(duì)此作限定。
[0085]在另一實(shí)施例中,情境熵值編碼也可以是適應(yīng)性霍夫曼編碼。在適應(yīng)性霍夫曼編碼中,編碼器與譯碼器都會(huì)建立一個(gè)霍夫曼樹。當(dāng)編碼器每編碼一個(gè)系數(shù)或是符號(hào)以后,可能會(huì)更新此霍夫曼樹。因此,編碼器與譯碼器必須要依照相同的順序來(lái)編碼與譯碼,否則兩著所建立的霍夫曼樹并不會(huì)同步。在另一實(shí)施例中,情境熵值編碼也可以是適應(yīng)性哥倫布編碼或其他適應(yīng)性的編碼算法,本發(fā)明并不對(duì)此作限定。
[0086]值得注意的是,由于編碼器210與編碼器220是獨(dú)立運(yùn)作,因此即使執(zhí)行動(dòng)作估測(cè)的順序與執(zhí)行情境熵值編碼的順序不同,編碼器210與編碼器220還是可以平行的運(yùn)作。亦即,第一編碼階段與第二編碼階段是同時(shí)被執(zhí)行。并且,儲(chǔ)存在存儲(chǔ)器中的是信號(hào)322而不是信號(hào)321,因此可以減少存儲(chǔ)器230的帶寬需求。
[0087]圖4是根據(jù)一實(shí)施例說(shuō)明動(dòng)作估測(cè)的順序的范例示意圖。
[0088]請(qǐng)參照?qǐng)D4,圖像410包括宏塊411?415。視頻編碼裝置200是要根據(jù)參考圖像420來(lái)編碼圖像410上的宏塊411?415。在此用第x行(column)第y列(row)說(shuō)明一個(gè)宏塊的位置。例如,宏塊411、412與413是位于第y列,而宏塊413是位于第x行。執(zhí)行情境熵值編碼的順序是宏塊411、412、413、與位于第y列且在宏塊413之后的其他宏塊;之后才會(huì)從位于第(y+1)列第I行的宏塊開始進(jìn)行情境熵值編碼(持續(xù)到宏塊414與415)。然而,第一編碼模塊212會(huì)先對(duì)宏塊411執(zhí)行動(dòng)作估測(cè),接著依序?qū)陦K412、414、413與415執(zhí)行動(dòng)作估測(cè)。換言之,圖像410中情境熵值編碼的順序與動(dòng)作估測(cè)的順序并不相同。一個(gè)圖像中,同一列的多個(gè)宏塊會(huì)組成一個(gè)宏塊列(例如,宏塊411、412與413屬于同一個(gè)宏塊列),而一個(gè)圖像會(huì)包括多個(gè)宏塊列。執(zhí)行情境熵值編碼時(shí),第五編碼模塊222是編碼完一個(gè)宏塊列中的宏塊以后才編碼下一個(gè)宏塊列中的宏塊。然而,第一編碼模塊212是交錯(cuò)地對(duì)第a個(gè)宏塊列中的一個(gè)宏塊與第b個(gè)宏塊列中的一個(gè)宏塊執(zhí)行動(dòng)作估測(cè)。其中a與b為正整數(shù),并且a不同于b。例如,在圖4所示的實(shí)施例中,a與b的絕對(duì)差為I。然而,在其他實(shí)施例中,a與b的絕對(duì)差也可以大于等于2,本發(fā)明并不對(duì)此作限定。
[0089]執(zhí)行動(dòng)作估測(cè)時(shí),第一編碼模塊212會(huì)決定宏塊411在參考圖像420上的搜索窗口 421,并且決定宏塊414在參考圖像420上的搜索窗口 422。其中,搜索窗口 421至少部分地重疊于視搜索窗口 422。因此,對(duì)應(yīng)宏塊411的動(dòng)作估測(cè)與對(duì)應(yīng)宏塊414的動(dòng)作估測(cè)可以共享部分的像素值。當(dāng)要對(duì)宏塊412與宏塊415執(zhí)行動(dòng)作估測(cè)時(shí),只要讀取區(qū)域423內(nèi)的像素值。在此實(shí)施例中,參考圖像420是儲(chǔ)存在存儲(chǔ)器中230(如圖2所示)。因此,依照?qǐng)D4所示的順序來(lái)執(zhí)行動(dòng)作估測(cè),可以減少對(duì)存儲(chǔ)器230的帶寬需求。具體來(lái)說(shuō),存儲(chǔ)器接口 216會(huì)從存儲(chǔ)器230中讀取搜索窗口 421與搜索窗口 422內(nèi)的像素值至?xí)捍娲鎯?chǔ)器211。當(dāng)搜索窗口 421與搜索窗口 422被儲(chǔ)存在暫存存儲(chǔ)器211的期間,第一編碼模塊212會(huì)執(zhí)行對(duì)應(yīng)于宏塊411與宏塊414的動(dòng)作估測(cè)。
[0090]在本實(shí)施例中,圖像410與圖像420為兩個(gè)圖幀(frame)。然而,在其他實(shí)施例中,圖像410與圖像420也可以為兩個(gè)圖場(chǎng)(field),本發(fā)明并不對(duì)此作限定。另一方面,以下假設(shè)圖像410的編號(hào)為1,而圖像420的編號(hào)為O。在此用向量(圖像編號(hào)、宏塊的行、宏塊的列)來(lái)表示一個(gè)宏塊的位置。舉例來(lái)說(shuō),宏塊411位置可以被表示為(l,x-2,y)的向量,而宏塊412的位置可以被表示為(l,x_l,y)的向量,并且宏塊414的位置可以被表示為(1,x-2,y+1)的向量。
[0091]圖5是根據(jù)一實(shí)施例說(shuō)明編碼器的管線排程的示意圖。
[0092]請(qǐng)參照?qǐng)D5,在時(shí)間點(diǎn)501時(shí),第一編碼模塊212對(duì)位于(1,0,O)的宏塊執(zhí)行動(dòng)作估測(cè)。此時(shí),第五編碼模塊215對(duì)位于(0,0,0)的宏塊執(zhí)行情境熵值編碼。
[0093]在時(shí)間點(diǎn)502,第一編碼模塊對(duì)位于(1,1,0)的宏塊執(zhí)行動(dòng)作估測(cè),第二編碼模塊對(duì)位于(1,0,0)的宏塊執(zhí)行內(nèi)部預(yù)測(cè)(如果需要的話)。此時(shí),第五編碼模塊對(duì)位于(0,1,O)的宏塊執(zhí)行情境熵值編碼。
[0094]在時(shí)間點(diǎn)503,第一編碼模塊對(duì)位于(1,0,1)的宏塊執(zhí)行動(dòng)作估測(cè),第二編碼模塊對(duì)位于(1,1,0)的宏塊執(zhí)行內(nèi)部預(yù)測(cè)(如果需要的話),并且第三編碼模塊對(duì)位于(1,0,0)的宏塊執(zhí)行轉(zhuǎn)換運(yùn)算與量化運(yùn)算。此時(shí),第五編碼模塊對(duì)位于(0,2,0)的宏塊執(zhí)行熵值情
境編碼。
[0095]值得注意的是,編碼器210中的編碼模塊(即,第一編碼模塊212、第二編碼模塊213、第三編碼模塊214、與第四編碼模塊215)是依照動(dòng)作估測(cè)的順序來(lái)運(yùn)作。然而,第五編碼模塊222是依照情境熵值編碼的順序來(lái)運(yùn)作。另一方面,第五編碼模塊222編碼一個(gè)宏塊所需的時(shí)間可能會(huì)不等于編碼器210中編碼一個(gè)宏塊所需的時(shí)間。
[0096]圖6A與圖6B是根據(jù)另一實(shí)施例說(shuō)明第一編碼器執(zhí)行動(dòng)作估測(cè)的順序的范例示意圖。
[0097]在圖6A所示的實(shí)施例中,圖像中第a個(gè)宏塊列601包括多個(gè)宏塊,第b個(gè)宏塊列602包括多個(gè)宏塊,a與b的絕對(duì)誤差為I。第一編碼模塊212是從第a列第c行的宏塊開始執(zhí)行動(dòng)作估測(cè)。在第a列第c+d行的宏塊以后,第一編碼模塊212才會(huì)執(zhí)行第b列第c行的宏塊。其中,c與d為正整數(shù),且d大于等于2。在一實(shí)施例中,當(dāng)編碼第b列第c行的宏塊時(shí),必須取得第a列第c行與第a列第c+1行的宏塊被執(zhí)行動(dòng)作估測(cè)的信息。因此,先對(duì)第a列第c+d行的宏塊執(zhí)行動(dòng)作估測(cè),可以減少宏塊管線中發(fā)生數(shù)據(jù)危害(data hazard)的機(jī)率。
[0098]在圖6B所示的實(shí)施例中,a與b的絕對(duì)差為2。在一實(shí)施例中,依照?qǐng)D6所示的順序來(lái)執(zhí)行動(dòng)作估測(cè),可以增加搜索窗口相互重疊的比率。因此,可以減少存儲(chǔ)器230的帶寬需求。
[0099]圖7是根據(jù)一實(shí)施例說(shuō)明共享參考圖像的范例示意圖。
[0100]請(qǐng)參照?qǐng)D7的上半部,執(zhí)行動(dòng)作估測(cè)時(shí),圖像702與703對(duì)應(yīng)至圖像701與704。具體來(lái)說(shuō),宏塊712是對(duì)應(yīng)至搜索窗口 711與714。宏塊713是對(duì)應(yīng)至搜索窗口 711與714。在圖7所示的實(shí)施例中,第一編碼模塊212是交錯(cuò)的對(duì)圖像702中的一個(gè)宏塊與圖像703的一個(gè)宏塊執(zhí)行動(dòng)作估測(cè)。在此假設(shè)圖像701?704的圖像編號(hào)分別為0、2、3、與4。請(qǐng)參照?qǐng)D7的下半部。在時(shí)間點(diǎn)721時(shí),第一編碼模塊212是對(duì)位置為(2,0,0)的宏塊執(zhí)行動(dòng)作估測(cè)。在時(shí)間點(diǎn)722,第一編碼模塊212是對(duì)位置為(3,0,0)的宏塊執(zhí)行動(dòng)作估測(cè)。在時(shí)間點(diǎn)723,第一編碼模塊212是對(duì)位置為(2,1,0)的宏塊執(zhí)行動(dòng)作估測(cè)。在時(shí)間點(diǎn)724,第一編碼模塊212是位置為(3,1,0)的宏塊執(zhí)行動(dòng)作估測(cè)。在時(shí)間點(diǎn)725,第一編碼模塊212是位置為(2,0,1)的宏塊執(zhí)行動(dòng)作估測(cè)。值得注意的是,圖像702與圖像703中動(dòng)作估測(cè)的編碼順序皆如圖4所示,但第五編碼模塊215的執(zhí)行順序是情境熵值編碼的編碼順序。
[0101]圖8是根據(jù)一實(shí)施例說(shuō)明視頻編碼方法的流程圖。
[0102]請(qǐng)參照?qǐng)D8,在步驟S802中,編碼器210會(huì)決定第一宏塊在一個(gè)參考圖像上的第一搜索窗口,并且決定第二宏塊在此參考圖像上的第二搜索窗口,其中第一搜索窗口至少部分地重疊于第二搜索窗口。
[0103]在步驟S804中,編碼器210會(huì)從一個(gè)存儲(chǔ)器中讀取第一搜索窗口與第二搜索窗口,并且對(duì)第一宏塊與第二宏塊執(zhí)行第一編碼階段,其中第一編碼階段包括動(dòng)作估測(cè)與二進(jìn)制化編碼,但不包括情境熵值編碼。
[0104]在步驟S806中,編碼器210會(huì)將第一編碼階段的編碼結(jié)果儲(chǔ)存在存儲(chǔ)器中。
[0105]在步驟S808中,編碼器220會(huì)從存儲(chǔ)器中讀取編碼結(jié)果,并且對(duì)編碼結(jié)果執(zhí)行第二編碼階段。其中第二編碼階段包括情境熵值編碼,情境熵值編碼的編碼順序不同于動(dòng)作估測(cè)的編碼順序,并且第二編碼階段與第一編碼階段是平行地被執(zhí)行。
[0106]然而,圖8中各步驟已詳細(xì)說(shuō)明如上,在此便不再贅述。
[0107]在另一實(shí)施例中,第一編碼模塊212、第二編碼模塊213、第三編碼模塊214、第四編碼模塊215與第五編碼模塊222的功能可以被制作為多個(gè)程序代碼。這些程序代碼可以被儲(chǔ)存在一個(gè)存儲(chǔ)器中,由一個(gè)處理器來(lái)執(zhí)行。本發(fā)明并不對(duì)此作限定。
[0108][第二實(shí)施例]
[0109]第二實(shí)施例與第一實(shí)施例類似,在此僅說(shuō)明不同之處。[0110]圖9是根據(jù)第二實(shí)施例說(shuō)明視頻編碼裝置的方塊圖。
[0111]請(qǐng)參照?qǐng)D9,視頻編碼裝置900包括編碼器910、920、930、940與存儲(chǔ)器950。編碼器910包括暫存存儲(chǔ)器911、第一編碼模塊912、第二編碼模塊913、第三編碼模塊914、第四編碼模塊915與存儲(chǔ)器接口 916。編碼器920包括暫存存儲(chǔ)器921、第一編碼模塊922、第二編碼模塊923、第三編碼模塊924、第四編碼模塊925與存儲(chǔ)器接口 926。編碼器930包括暫存存儲(chǔ)器931、第五編碼模塊932與存儲(chǔ)器接口 933。編碼器940包括暫存存儲(chǔ)器941、第五編碼模塊942與存儲(chǔ)器接口 943。其中,編碼器910與920的功能相同于第一實(shí)施例中的編碼器210。編碼器930與940的功能相同于第一實(shí)施例中編碼器220。
[0112]圖10是根據(jù)第二實(shí)施例說(shuō)明動(dòng)作估測(cè)的順序的示意圖。
[0113]在圖10所示的實(shí)施例中,編碼器910會(huì)依序地對(duì)圖像中第a個(gè)宏塊列中的宏塊執(zhí)行動(dòng)作估測(cè)。當(dāng)編碼器910執(zhí)行到第e行的宏塊時(shí),編碼器920會(huì)開始依序地對(duì)第b個(gè)宏塊列中的宏塊執(zhí)行動(dòng)作估測(cè)。其中,e為大于等于3的正整數(shù)。宏塊1001與宏塊1002所對(duì)應(yīng)的搜索窗口會(huì)彼此部分地重疊。宏塊1003與宏塊1004所對(duì)應(yīng)的搜索窗口會(huì)彼此部分地重疊。因此,編碼器910與編碼器920可以分享存儲(chǔ)器950的帶寬。在一實(shí)施例中,暫存存儲(chǔ)器911與921是在同一個(gè)暫存存儲(chǔ)器當(dāng)中,存儲(chǔ)器接口 916與926是被制作為同一個(gè)存儲(chǔ)器接口,并且編碼器910和編碼器920可以共享此暫存存儲(chǔ)器與存儲(chǔ)器接口。在另一實(shí)施例中,視頻編碼裝置900也可包括另一個(gè)編碼器。此另一個(gè)編碼器會(huì)在編碼器920對(duì)第e行的宏塊執(zhí)行動(dòng)作估測(cè)以后,開始依序的對(duì)第b+Ι列的宏塊執(zhí)行動(dòng)作估測(cè)。本發(fā)明并不限制視頻編碼裝置900中編碼器的個(gè)數(shù)。
[0114]圖11是根據(jù)第二實(shí)施例說(shuō)明兩張圖像共享參考圖像的示意圖。
[0115]請(qǐng)同時(shí)參照?qǐng)D7與圖11。編碼器910是交錯(cuò)地對(duì)圖像702中的一個(gè)宏塊與圖像703中的一個(gè)宏塊執(zhí)行動(dòng)作估測(cè)。并且,當(dāng)編碼器910編碼到圖像702與703第O列第I行的宏塊以后(時(shí)間點(diǎn)1101),編碼器920開始編碼圖像702與圖像703中第I列的宏塊。并且,當(dāng)編碼器910與編碼器920在編碼圖像702與703時(shí),編碼器930與940平行地編碼圖像701與704。值得住意的是,當(dāng)編碼器930與940平行地編碼圖像701與704時(shí),圖像701與704已被重建出,因此并不會(huì)影響編碼器910與920的運(yùn)作。
[0116]圖12是根據(jù)第二實(shí)施例說(shuō)明編碼不同宏塊列群組的示意圖。
[0117]請(qǐng)參照?qǐng)D12,圖像1200包括宏塊列群組1201、1202、與1203。一個(gè)宏塊列群組(group of macroblock row)中會(huì)包括多個(gè)宏塊列。例如,宏塊列群組為切片(slice),但本發(fā)明并不對(duì)此作限定。宏塊列群組1201包括宏塊列1221 (亦稱第a個(gè)宏塊列)與1222(亦稱第b個(gè)宏塊列)。宏塊列群組1202包括宏塊列1223與1224。編碼器910是交錯(cuò)地對(duì)宏塊列1221中的一個(gè)宏塊與宏塊列1222中的一個(gè)宏塊列執(zhí)行動(dòng)作估測(cè)。當(dāng)編碼器910對(duì)宏塊1211執(zhí)行動(dòng)作估測(cè)時(shí),編碼器920開始對(duì)宏塊列群組1202中的宏塊執(zhí)行動(dòng)作估測(cè)。編碼器920是交錯(cuò)地對(duì)宏塊列1223中的一個(gè)宏塊與宏塊列1224中的一個(gè)宏塊執(zhí)行動(dòng)作估測(cè)。在另一實(shí)施例中,視頻編碼裝置900也可包括另一個(gè)編碼器。此另一個(gè)編碼器會(huì)在編碼器920對(duì)宏塊1212執(zhí)行動(dòng)作估測(cè)時(shí),開始對(duì)宏塊列群組1203中的宏塊執(zhí)行動(dòng)作估測(cè)。
[0118]綜上所述,本發(fā)明實(shí)施例所提供的視頻編碼方法與視頻編碼裝置,是將二進(jìn)制化編碼與情境熵值編碼制作在不同的編碼器上。如此一來(lái),動(dòng)作估測(cè)的編碼順序與情境熵值編碼的編碼順序可不相同,藉此可降低存儲(chǔ)器的帶寬需求。[0119]本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述各方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成。前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。該程序在執(zhí)行時(shí),執(zhí)行包括上述各方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:R0M、RAM、磁盤或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
[0120]最后應(yīng)說(shuō)明的是:以上各實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。
【權(quán)利要求】
1.一種視頻編碼方法,用于一視頻編碼裝置,其特征在于,該視頻編碼方法包括: 決定一第一宏塊在一參考圖像上的一第一搜索窗口,并且決定一第二宏塊在該參考圖像上的一第二搜索窗口,其中該第一搜索窗口至少部分地重疊于該第二搜索窗口 ; 從一存儲(chǔ)器中讀取該第一搜索窗口與該第二搜索窗口,并且對(duì)該第一宏塊與該第二宏塊執(zhí)行一第一編碼階段,其中該第一編碼階段包括一動(dòng)作估測(cè)與一二進(jìn)制化編碼; 將該第一編碼階段的一編碼結(jié)果儲(chǔ)存在一存儲(chǔ)器中;以及 從該存儲(chǔ)器中讀取該編碼結(jié)果,并且對(duì)該編碼結(jié)果執(zhí)行一第二編碼階段,其中該第二編碼階段包括一情境熵值編碼,該情境熵值編碼的一編碼順序不同于該動(dòng)作估測(cè)的一編碼順序,并且該第二編碼階段與該第一編碼階段是平行地被執(zhí)行。
2.根據(jù)權(quán)利要求1所述的視頻編碼方法,其特征在于,一第一圖像包括多個(gè)宏塊列,該第一宏塊是被包括在該些宏塊列中的第a個(gè)宏塊列,并且該第二宏塊是被包括在該些宏塊列中的第b個(gè)宏塊列,其中a與b為正整數(shù),并且a不同于b。
3.根據(jù)權(quán)利要求2所述的視頻編碼方法,其特征在于,該些正整數(shù)a與b之間的絕對(duì)差大于等于2。
4.根據(jù)權(quán)利要求2所述的視頻編碼方法,其特征在于,該第a個(gè)宏塊列包括多個(gè)第三宏塊,該第b個(gè)宏塊列包括多個(gè)第四宏塊,并且該第二宏塊是位于該些第四宏塊中的第c個(gè),其中對(duì)該第一宏塊與該第二宏塊執(zhí)行該第一編碼階段的步驟包括: 對(duì)該些第三宏塊中的第(c+d)個(gè)第三宏塊執(zhí)行該動(dòng)作估測(cè)以后,對(duì)該第二宏塊執(zhí)行該動(dòng)作估測(cè),其中c為正整數(shù),并且d為大于等于2的正整數(shù)。
5.根據(jù)權(quán)利要求2所述的視頻編碼方法,其特征在于,該第a個(gè)宏塊列包括多個(gè)第三宏塊,并且該第b個(gè)宏塊列包括多個(gè)第四宏塊,該視頻編碼方法還包括: 由一第一編碼器依序地對(duì)該些第三宏塊執(zhí)行該動(dòng)作估測(cè); 當(dāng)該第一編碼器對(duì)該些第三宏塊中第e個(gè)第三宏塊執(zhí)行該動(dòng)作估測(cè)時(shí),由一第二編碼器開始依序地對(duì)該些第四宏塊執(zhí)行該動(dòng)作估測(cè),其中e為大于等于3的正整數(shù)。
6.根據(jù)權(quán)利要求2所述的視頻編碼方法,其特征在于,該第一圖像包括多個(gè)宏塊列群組,該第a個(gè)宏塊列與該第b個(gè)宏塊列同屬于該些宏塊列群組中的一第一宏塊列群組,該第a個(gè)宏塊列包括多個(gè)第三宏塊,并且該第b個(gè)宏塊列包括多個(gè)第四宏塊,該些宏塊列群組包括一第二宏塊列群組,該第二宏塊列群組包括一第一宏塊列與一第二宏塊列,該第一宏塊列包括多個(gè)第五宏塊,并且該第二宏塊列包括多個(gè)第六宏塊,其中對(duì)該第一宏塊與該第二宏塊執(zhí)行該第一編碼階段的步驟包括: 由一第一編碼器交錯(cuò)地對(duì)該些第三宏塊的其中之一與該些第四宏塊的其中之一執(zhí)行該動(dòng)作估測(cè),并且同時(shí)由一第二編碼器交錯(cuò)地對(duì)該些第五宏塊的其中之一與該些第六宏塊的其中之一執(zhí)行該動(dòng)作估測(cè)。
7.根據(jù)權(quán)利要求1所述的視頻編碼方法,其特征在于,該第一宏塊是被包括在一第一圖像,該第二宏塊是被包括在一第二圖像,并且該第一圖像不同于該第二圖像。
8.根據(jù)權(quán)利要求1所述的視頻編碼方法,其特征在于,該情境熵值編碼包括一運(yùn)算編碼。
9.一視頻編碼裝置,其特征在于,包括: 一第一編碼器,用以決定一第一宏塊在一參考圖像上的一第一搜索窗口,并且決定一第二宏塊在該參考圖像上的一第二搜索窗口,其中該第一搜索窗口至少部分地重疊于該第二搜索窗口; 一第二編碼器;以及 一存儲(chǔ)器,耦接至該第一編碼器與該第二編碼器, 其中,該第一編碼器用以從該存儲(chǔ)器中讀取該第一搜索窗口與該第二搜索窗口,并且對(duì)該第一宏塊與該第二宏塊執(zhí)行一第一編碼階段,其中該第一編碼階段包括一動(dòng)作估測(cè)與一二進(jìn)制化編碼, 其中,該第一編碼器用以將該第一編碼階段的一編碼結(jié)果儲(chǔ)存在該存儲(chǔ)器中, 其中,該第二編碼器用以從該存儲(chǔ)器中讀取該編碼結(jié)果,并且對(duì)該編碼結(jié)果執(zhí)行一第二編碼階段,其中該第二編碼階段包括一情境熵值編碼,該情境熵值編碼的一編碼順序不同于該動(dòng)作估測(cè)的一編碼 順序,并且該第二編碼階段與該第一編碼階段是平行地被執(zhí)行。
10.根據(jù)權(quán)利要求9項(xiàng)所述的視頻編碼裝置,其特征在于,一第一圖像包括多個(gè)宏塊列,該第一宏塊是被包括在該些宏塊列中的第a個(gè)宏塊列,并且該第二宏塊是被包括在該些宏塊列中的第b個(gè)宏塊列,其中a與b為正整數(shù),并且a不同于b。
11.根據(jù)權(quán)利要求10所述的視頻編碼裝置,其特征在于,該些正整數(shù)a與b之間的絕對(duì)差大于等于2。
12.根據(jù)權(quán)利要求10所述的視頻編碼裝置,其特征在于,該第a個(gè)宏塊列包括多個(gè)第三宏塊,該第b個(gè)宏塊列包括多個(gè)第四宏塊,并且該第二宏塊是位于該些第四宏塊中的第c個(gè), 該第一編碼器還用以對(duì)該些第三宏塊中的第(c+d)個(gè)第三宏塊執(zhí)行該動(dòng)作估測(cè)以后,對(duì)該第二宏塊執(zhí)行該動(dòng)作估測(cè),其中c為正整數(shù),并且d為大于等于2的正整數(shù)。
13.根據(jù)權(quán)利要求10所述的視頻編碼裝置,其特征在于,該第a個(gè)宏塊列包括多個(gè)第三宏塊,并且該第b個(gè)宏塊列包括多個(gè)第四宏塊,該視頻編碼裝置還包括: 一第三編碼器, 其中,該第一編碼器還用以依序地對(duì)該些第三宏塊執(zhí)行該動(dòng)作估測(cè), 當(dāng)該第一編碼器對(duì)該些第三宏塊中第e個(gè)第三宏塊執(zhí)行該動(dòng)作估測(cè)時(shí),由該第三編碼器開始依序地對(duì)該些第四宏塊執(zhí)行該動(dòng)作估測(cè),其中e為大于等于3的正整數(shù)。
14.根據(jù)權(quán)利要求10所述的視頻編碼裝置,其特征在于,該第一圖像包括多個(gè)宏塊列群組,該第a個(gè)宏塊列與該第b個(gè)宏塊列同屬于該些宏塊列群組中的一第一宏塊列群組,該第a個(gè)宏塊列包括多個(gè)第三宏塊,并且該第b個(gè)宏塊列包括多個(gè)第四宏塊,該些宏塊列群組包括一第二宏塊列群組,該第二宏塊列群組包括一第一宏塊列與一第二宏塊列,該第一宏塊列包括多個(gè)第五宏塊,并且該第二宏塊列包括多個(gè)第六宏塊,該視頻編碼裝置還包括: 一第三編碼器, 其中,該第一編碼器還用以交錯(cuò)地對(duì)該些第三宏塊的其中之一與該些第四宏塊的其中之一執(zhí)行該動(dòng)作估測(cè),并且同時(shí)由該第三編碼器交錯(cuò)地對(duì)該些第五宏塊的其中之一與該些第六宏塊的其中之一執(zhí)行該動(dòng)作估測(cè)。
15.根據(jù)權(quán)利要求9所述的視頻編碼裝置,其特征在于,該第一宏塊是被包括在一第一圖像,并且該第二宏塊是被包括在一第二圖像,并且該第一圖像不同于該第二圖像。
16.根據(jù)權(quán)利要求9所述的視頻編碼裝置,其特征在于,該情境熵值編碼包括一運(yùn)算編碼。
【文檔編號(hào)】H04N19/176GK103702129SQ201210370023
【公開日】2014年4月2日 申請(qǐng)日期:2012年9月27日 優(yōu)先權(quán)日:2012年9月27日
【發(fā)明者】張育瑋, 呂盈宏, 黃彥如 申請(qǐng)人:聯(lián)詠科技股份有限公司