專利名稱:運(yùn)動(dòng)矢量編碼和解碼的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般來說涉及數(shù)字視頻處理。特別地,本發(fā)明涉及包括編碼與解碼運(yùn)動(dòng)矢量編碼的方法和裝置。
背景技術(shù):
運(yùn)動(dòng)估計(jì)(Motion estimation,簡稱 ME)與運(yùn)動(dòng)補(bǔ)償(Motioncompensation,簡稱 MC)是現(xiàn)代視頻編碼標(biāo)準(zhǔn)(如 MPEG-1、MPEG-2、MPEG-4、H. 261、H. 263,H. 264 和 AVS)中的重 要工具,以壓制時(shí)間冗余,從而達(dá)到高編碼效率。在ME/MC中,當(dāng)前幀被分為不重疊的區(qū)塊。 對于當(dāng)前幀中的每個(gè)當(dāng)前塊,在參考幀中限定搜索區(qū)。搜索區(qū)中的每一點(diǎn)對應(yīng)于一個(gè)候選 塊,該候選塊潛在地是當(dāng)前塊的良好預(yù)測。限定相似性度量并且在搜索區(qū)進(jìn)行搜索以基于 相似性度量查找候選塊,該候選塊與當(dāng)前塊的相似性即使不是最大,也是很大。該具有最大 相似性的候選塊將是最佳匹配塊。最佳匹配快與當(dāng)前塊之間的相對位移被稱為運(yùn)動(dòng)矢量, 其需要被編碼。運(yùn)動(dòng)矢量(motion vector,簡稱MV)的編碼也被稱為運(yùn)動(dòng)矢量編碼(motion vectorcoding,簡稱 MVC)。另一方面,為了解碼端實(shí)現(xiàn)運(yùn)動(dòng)補(bǔ)償,編碼端需要耗費(fèi)大量的比特流用于傳遞運(yùn) 動(dòng)矢量信息。例如在H. 264中,當(dāng)比特率很低(例如QP = 40)時(shí),運(yùn)動(dòng)矢量信息所耗費(fèi)的 比特?cái)?shù)目占總編碼數(shù)目的百分比很高,甚至達(dá)到50 %。所以本領(lǐng)域迫切需要更有效的方法 進(jìn)行運(yùn)動(dòng)矢量編碼來提高其編碼效率。在最新的運(yùn)動(dòng)矢量編碼方法中,引入了許多工具以提高運(yùn)動(dòng)矢量編碼的效率。例 如,為了減小運(yùn)動(dòng)矢量的壓縮位的數(shù)量,H. 264標(biāo)準(zhǔn)利用簡單的預(yù)測編碼技術(shù)編碼運(yùn)動(dòng)矢 量。對于每個(gè)當(dāng)前塊,H. 264利用三個(gè)相鄰的運(yùn)動(dòng)矢量(MV)的中間的一個(gè)構(gòu)成運(yùn)動(dòng)矢量預(yù) 測器(motion vector predictor,簡稱MVP)。MVP與當(dāng)前塊的真實(shí)MV的運(yùn)動(dòng)矢量差(motion vector difference,簡稱MVD)被編碼到位流中。該“中間MVP”有效地減少用于MV編碼的 位,因?yàn)槠湓诖蠖鄶?shù)情況下類似于當(dāng)前塊的真實(shí)MV。但是,中間MVP并不能總是最優(yōu)地預(yù)測 當(dāng)前MV。需要更有效的MVP以進(jìn)一步減少用于MV的編碼位數(shù)。還曾有過其他方法試圖獲得有效的運(yùn)動(dòng)矢量編碼。例如,在以下公開文件中有所 jE^is-KampJ-EvertzffIM-WienmuDecoder side motion vectorderivation for inter frame video coding”,出自 IEEE 國際圖像處理會議(IEEEInternational Conference on Image Processing),pp. 1120-1123,2008,(以下稱為 “S. Kamp 等人的文章”)以及第 7,023,919號、名禾爾為“Method for coding motionvector using 2-dimentional minimum bitrate predicting technique,,的美國專利。在S. Kamp等人的文章中,說明了一種獲取運(yùn)動(dòng)矢量的方法。該方法在解碼端執(zhí)行 類似運(yùn)動(dòng)估計(jì)的方法以取得運(yùn)動(dòng)矢量和參考索引。但是,該方法不能自適應(yīng)地改變MV預(yù)測 器候選集,并且該方法放棄使用現(xiàn)有精確的ME方法來獲得MV而是直接在解碼端用不是非 常準(zhǔn)確的模板匹配方式來獲得MV,并且該方法中沒有使用猜測策略。此外,模板匹配使用固 定大小和形狀的模板。該方法中沒有使用參考索引或MVD??偟膩碚f,該方法十分復(fù)雜,并且使用模板匹配得到MV和參考索引自身并不總是可靠的。在第7023919號美國專利申請中,說明了一種運(yùn)動(dòng)矢量編碼的方法。該方法沒有 使用匹配技術(shù)減少M(fèi)V預(yù)測器候選集,也沒有提供自適應(yīng)候選集。即使使用猜測策略,其基 于最小位速率而非最小MVD。該方法中并沒有將基于時(shí)間的MV預(yù)測器用作候選。該方法缺 乏效率,特別是在MVD很小的情況下更是如此。另外不同的MVD可能具有相同的位速率,使 得基于最小位速率的標(biāo)準(zhǔn)缺乏效率。還有別的方法利用邊界匹配進(jìn)行了嘗試。例如在以下公開文件中YanChen, Yang Hu, Oscar C. Au,Houqiang Li, Chang Wen Chen 的"Video ErrorConcealment Using Spatio-Temporal Boundary Matching and Partial DifferentialEquation", IEEE ^^ 體學(xué)報(bào)(IEEE TRANSACTIONS ON MULTIMEDIA), VOL. 10,NO. 1,2008 年 1 月(以下稱為 “Yan Chen等人的文章”),以及第 5,596,370 號、名稱為“Boundary matching motion estimation apparatus”的美國專禾丨J。在Yan Chen等人的文章中,提供了一種用于隱藏視頻信號中的錯(cuò)誤的系統(tǒng)和方 法。邊界匹配僅限于用于錯(cuò)誤隱藏。該公開的方法沒有指出利用邊界匹配選擇可以提高M(jìn)V 預(yù)測器的準(zhǔn)確度從而減小MVD,也沒有利用從編碼端精確運(yùn)動(dòng)估計(jì)中獲得的現(xiàn)有MV。此外, 本方法中沒有使用模板匹配。該方法的缺點(diǎn)是利用邊界匹配以獲得MV本身并不總是可靠 的。在第5,596,370號美國專利中,提供了一種進(jìn)行運(yùn)動(dòng)估計(jì)的裝置。邊界匹配僅限 于獲取運(yùn)動(dòng)矢量,本方法的目的是提供一種運(yùn)動(dòng)估計(jì)的替代方法。該方法沒有使用在編碼 端運(yùn)動(dòng)估計(jì)中獲得的MV,缺點(diǎn)在于利用邊界匹配而非運(yùn)動(dòng)估計(jì)獲得MV本身并不總是可靠 的。邊界匹配僅限于用以得到運(yùn)動(dòng)矢量,該方法并未給出運(yùn)動(dòng)矢量編碼的信息。由于并沒 有自適應(yīng)候選設(shè)置,所以該方式?jīng)]有效率,并且該方法不考慮其他匹配技術(shù),例如自適應(yīng)模 板匹配。因而,需要提供一種運(yùn)動(dòng)矢量編碼的系統(tǒng)和方法,以解決上述一個(gè)或多個(gè)問題。有關(guān)視頻編碼的其他背景技術(shù)可以參照一下文件Iain Richardson的H. 264and M-PEG-4VideoCompression,Wiley&Sons, 2003 以及Alan Bovik 的 The Essential Guide to Video Processing, Academic Press 2009。這些公開的文件都作為參考被引入其中。
發(fā)明內(nèi)容
鑒于上述,本發(fā)明需要一種運(yùn)動(dòng)矢量編碼和解碼的方法和裝置,以克服上述技術(shù) 中的方法效率低、可靠性差的問題。具體地,本發(fā)明提供了一種運(yùn)動(dòng)矢量編碼方法,包括以下步驟步驟1 限定預(yù)測器的候選集,其中所述預(yù)測器基于與所述運(yùn)動(dòng)矢量相鄰的運(yùn)動(dòng) 矢量自適應(yīng)的變化;步驟2 利用匹配方法減少所述候選集中的預(yù)測器的數(shù)目以減少索引使用的位 數(shù);步驟3 基于最小運(yùn)動(dòng)矢量差的標(biāo)準(zhǔn)在所述候選集中的剩余預(yù)測器中選定最優(yōu)的 預(yù)測器,并得到當(dāng)前運(yùn)動(dòng)矢量差;步驟4 基于剩余預(yù)測器和當(dāng)前運(yùn)動(dòng)矢量差,利用猜測策略探測運(yùn)動(dòng)矢量預(yù)測器以進(jìn)一步節(jié)約用于編碼索引的位數(shù);步驟5 判斷是否能探測到正確的運(yùn)動(dòng)矢量預(yù)測器,如果探測到正確的運(yùn)動(dòng)矢量 預(yù)測器,則編碼至少當(dāng)前運(yùn)動(dòng)矢量差,如果無法探測到正確的運(yùn)動(dòng)矢量預(yù)測器,則對至少當(dāng) 前運(yùn)動(dòng)矢量差和索引進(jìn)行編碼。其中,所述匹配方法為邊界匹配方法或自適應(yīng)模板匹配方法。其中,所述邊界匹配方法為,將對應(yīng)于所述候選集中的預(yù)測器的一部分?jǐn)?shù)據(jù)粘貼 到當(dāng)前數(shù)據(jù)空間,得到邊界匹配誤差,去除所述候選集中邊界匹配誤差最大的一個(gè)或多個(gè) 預(yù)測器。其中,所述自適應(yīng)模板匹配方法為,基于自適應(yīng)模板與當(dāng)前數(shù)據(jù)之間可能的相關(guān) 性確定用于當(dāng)前數(shù)據(jù)空間的自適應(yīng)模板的形狀;或者基于自適應(yīng)模板內(nèi)的一致性確定用于 當(dāng)前數(shù)據(jù)空間的自適應(yīng)模板的尺寸。其中,所述自適應(yīng)模板匹配方法還包括利用基于候選集中預(yù)測器對應(yīng)的位移,計(jì) 算當(dāng)前數(shù)據(jù)空間的模板與參考畫面中位移后的數(shù)據(jù)空間的模板之間的差。其中,自適應(yīng)模板匹配方法中,所述自適應(yīng)模板的寬度和形狀已指定。其中,所述步驟5之后,如果探測到正確的運(yùn)動(dòng)矢量預(yù)測器,則發(fā)送至少已編碼的 當(dāng)前運(yùn)動(dòng)矢量差;如果無法探測到正確的運(yùn)動(dòng)矢量預(yù)測器,則發(fā)送至少已編碼的當(dāng)前運(yùn)動(dòng) 矢量差和已編碼的作為索引的位。其中,所述預(yù)測器的候選集包括若干成比例的空間和時(shí)間預(yù)測器。其中,所述步驟1中,與所述運(yùn)動(dòng)矢量相鄰的運(yùn)動(dòng)矢量為與所述運(yùn)動(dòng)矢量時(shí)間相 鄰、空間相鄰、時(shí)間與空間相鄰或基于分析策略相鄰的運(yùn)動(dòng)矢量。其中,步驟4中的猜測策略,所述剩余預(yù)測器的數(shù)目至少為1個(gè),對每個(gè)剩余預(yù)測 器和當(dāng)前運(yùn)動(dòng)矢量差產(chǎn)生一個(gè)中間參數(shù),基于最小運(yùn)動(dòng)矢量差的標(biāo)準(zhǔn)為每個(gè)中間參數(shù)重新 選擇待選的預(yù)測器,如果重新選擇的待選的預(yù)測器與產(chǎn)生該中間參數(shù)的剩余預(yù)測器相同, 則判定該剩余預(yù)測器為可選預(yù)測器,如果可選預(yù)測器的數(shù)目為1個(gè),則該可選預(yù)測器為正 確的運(yùn)動(dòng)矢量預(yù)測器。本發(fā)明還提供了一種解碼已編碼的運(yùn)動(dòng)矢量的方法,所述已編碼的運(yùn)動(dòng)矢量被如 權(quán)利要求1所述的方法編碼,包括以下步驟步驟1 解碼運(yùn)動(dòng)矢量差;步驟2 限定預(yù)測器的候選集,其中所述預(yù)測器基于與所述運(yùn)動(dòng)矢量相鄰的運(yùn)動(dòng) 矢量自適應(yīng)的變化;步驟3 利用匹配方法減少所述候選集中的預(yù)測器的數(shù)目;步驟4 基于所述候選集中的剩余預(yù)測器和解碼的運(yùn)動(dòng)矢量差,利用猜測策略判 斷能否確定運(yùn)動(dòng)矢量預(yù)測器;步驟5 如果能確定運(yùn)動(dòng)矢量預(yù)測器,則利用解碼的運(yùn)動(dòng)矢量差和已確定的運(yùn)動(dòng) 矢量預(yù)測器得到運(yùn)動(dòng)矢量;如果不能確定運(yùn)動(dòng)矢量預(yù)測器,則解碼索引并判定運(yùn)動(dòng)矢量預(yù) 測器,利用解碼的運(yùn)動(dòng)矢量差和已判定的運(yùn)動(dòng)矢量預(yù)測器得到運(yùn)動(dòng)矢量。所述匹配方法與編碼時(shí)采用的匹配方法相同。本發(fā)明還提供了一種運(yùn)動(dòng)矢量編碼裝置,包括以下部分第一選擇模塊,用以選擇組成候選集的預(yù)測器;
第一處理模塊,接收所述第一選擇模塊的預(yù)測器的候選集,用以利用匹配方法減 少所述候選集中的預(yù)測器的數(shù)目;第二選擇模塊,與所述第一處理模塊連接,接收所述候選集中的剩余預(yù)測器,基于 最小運(yùn)動(dòng)矢量差的標(biāo)準(zhǔn)在所述剩余預(yù)測器中選定最優(yōu)的預(yù)測器;第二處理模塊,與所述第二選擇模塊連接,根據(jù)選定的最優(yōu)的預(yù)測器得到當(dāng)前運(yùn)
動(dòng)矢量差;探測模塊,與所述第二處理模塊和第一處理模塊連接,基于接收的所述候選集中 的剩余預(yù)測器和當(dāng)前運(yùn)動(dòng)矢量差,利用猜測策略探測運(yùn)動(dòng)矢量預(yù)測器;判斷模塊,與所述探測模塊連接,如果探測模塊的探測結(jié)果為探測到正確的運(yùn)動(dòng) 矢量預(yù)測器,則將判斷結(jié)果發(fā)送到編碼模塊;編碼模塊,接收所述判斷結(jié)果,編碼至少當(dāng)前運(yùn)動(dòng)矢量差或者編碼至少當(dāng)前運(yùn)動(dòng) 矢量差和索引。本發(fā)明還提供了一種運(yùn)動(dòng)矢量解碼裝置,包括以下部分接收模塊,接收至少已編碼的運(yùn)動(dòng)矢量差;第一解碼模塊,連接所述接收模塊,根據(jù)接收的至少已編碼的運(yùn)動(dòng)矢量差,解碼運(yùn)
動(dòng)矢量差;第一選擇模塊,用以選擇組成候選集的預(yù)測器;第一處理模塊,接收所述第一選擇模塊的預(yù)測器的候選集,用以利用匹配方法減 少所述候選集中的預(yù)測器的數(shù)目;判斷模塊,連接所述第一處理模塊與所述第一解碼模塊,基于所述候選集中的剩 余預(yù)測器和解碼的運(yùn)動(dòng)矢量差,利用猜測策略判斷能否確定運(yùn)動(dòng)矢量預(yù)測器;第二解碼模塊,連接所述判斷模塊,根據(jù)所述判斷結(jié)果解碼索引;分析模塊,連接所述第一處理模塊和第二解碼模塊,根據(jù)解碼的索引判定運(yùn)動(dòng)矢 量預(yù)測器;第二處理模塊,連接所述判斷模塊、所述第一解碼模塊和所述分析模塊,根據(jù)判斷 結(jié)果,利用解碼的運(yùn)動(dòng)矢量差和已解碼確定的運(yùn)動(dòng)矢量預(yù)測器得到運(yùn)動(dòng)矢量;或者利用解 碼的運(yùn)動(dòng)矢量差和已判定的運(yùn)動(dòng)矢量預(yù)測器得到運(yùn)動(dòng)矢量。本發(fā)明提供的運(yùn)動(dòng)矢量編碼和解碼的方法可以迅速、可靠、有效地對運(yùn)動(dòng)矢量進(jìn) 行編解碼的處理,提高了系統(tǒng)的效率。并且本發(fā)明可用于任何采用運(yùn)動(dòng)估計(jì)的視頻編碼系 統(tǒng),并且需要將運(yùn)動(dòng)信息發(fā)送到解碼器,例如但不限于札264、10^4乂5、10^。此外,本發(fā)明 還可用于任何采用混合預(yù)測編碼的編碼器。通過以下說明的實(shí)施例,還公開了本發(fā)明的其他方面。
下面將參考附圖,詳細(xì)說明本發(fā)明的這些以及其他目的、方面和實(shí)施方式,其中圖1表示根據(jù)本發(fā)明實(shí)施例的當(dāng)前塊及其相鄰塊的示范性表示。圖2表示根據(jù)本發(fā)明實(shí)施例的塊的內(nèi)部邊界像素和外部邊界像素。圖3表示根據(jù)本發(fā)明實(shí)施例的模板匹配的示范性模板。圖4表示根據(jù)本發(fā)明實(shí)施例的模板寬度等于4的示范性模板。
圖5表示根據(jù)本發(fā)明實(shí)施例的MVCBM的流程圖。圖6表示根據(jù)本發(fā)明實(shí)施例的MVCATM的流程圖。圖7表示根據(jù)本發(fā)明實(shí)施例的一個(gè)視頻編碼系統(tǒng)的實(shí)施例的方框圖。圖8表示根據(jù)本發(fā)明實(shí)施例的一個(gè)視頻解碼系統(tǒng)的實(shí)施例的方框圖。圖9表示根據(jù)本發(fā)明實(shí)施例的運(yùn)動(dòng)矢量編碼裝置的示意圖。圖10表示根據(jù)本發(fā)明實(shí)施例的運(yùn)動(dòng)矢量解碼裝置的示意圖。
具體實(shí)施例方式本發(fā)明涉及視頻編碼方法。特別地,其涉及運(yùn)動(dòng)矢量(MV)編碼,其中MV編碼基于 邊界匹配或自適應(yīng)模板匹配,也就是基于邊界匹配的運(yùn)動(dòng)矢量編碼(MVCBM)和基于自適應(yīng) 模板匹配的運(yùn)動(dòng)矢量編碼(MVCATM)。一般來說,本發(fā)明限定預(yù)測器候選集,其中預(yù)測器基于 相鄰MV的當(dāng)前分布自適應(yīng)地變化。隨后,匹配技術(shù)(MVCBM中的邊界匹配和MVCATM中的自 適應(yīng)模板匹配)用于減小預(yù)測器候選集的大小以減少索引使用的編碼位數(shù)。而后,在包含 于減少的集之中的預(yù)測器中選擇最優(yōu)的運(yùn)動(dòng)矢量預(yù)測器?;谧钚VD標(biāo)準(zhǔn)的猜測策略進(jìn) 一步節(jié)約了索引的位數(shù)。具體地,可能的MVP候選集包括若干成比例的空間和時(shí)間預(yù)測器。為了增加預(yù)測 器的多樣性,空間預(yù)測器基于相鄰運(yùn)動(dòng)矢量的特征自適應(yīng)地改變。為了從候選集(CS)中選 擇良好的預(yù)測器,使用的匹配技術(shù)例如但不限于邊界匹配(BM)和自適應(yīng)模板匹配(ATM)。 從通過匹配技術(shù)選出的預(yù)測器中選擇當(dāng)前塊的最優(yōu)MVP以使MVD最小。由于最優(yōu)MVP是基 于最小MVD的標(biāo)準(zhǔn)選出,所以引入猜測策略,從而在一些情況下可以節(jié)省將MVP索引信號傳 輸?shù)浇獯a器的比特?cái)?shù)。本發(fā)明相對于H. 264標(biāo)準(zhǔn)可以顯著地降低位速率。A.成比例的運(yùn)動(dòng)矢量預(yù)測器相鄰塊的運(yùn)動(dòng)矢量被用作當(dāng)前塊的運(yùn)動(dòng)矢量的預(yù)測器。相鄰塊的運(yùn)動(dòng)矢量可以對 應(yīng)實(shí)施例中的不同參考幀,該實(shí)施例中允許例如H. 264中的多個(gè)參考幀。兩個(gè)相鄰的塊的 運(yùn)動(dòng)矢量對應(yīng)不同的參考幀時(shí),其時(shí)間距離相對當(dāng)前幀而言是不同的。因而在使用多個(gè)參 考幀的實(shí)施例中,在被用作預(yù)測當(dāng)前塊的運(yùn)動(dòng)矢量之前,相鄰塊的運(yùn)動(dòng)矢量根據(jù)其時(shí)間距 離被成比例地縮放。圖1表示當(dāng)前塊及其相鄰塊的示范性表示。以mvA(當(dāng)前塊的左側(cè)的塊 A的MV)為例,假設(shè)塊A與其參考塊之間的時(shí)間距離是dp,當(dāng)前塊與其參考塊之間的時(shí)間距 離是d。。由以下方式計(jì)算成比例的預(yù)測器mvSA
dcmvsA=mvA^-f-
dr (1)利用相同的方法可以計(jì)算塊B的mvSB,塊C的mvse等。因此,每個(gè)預(yù)測器在使用之 前都成比例縮放。B. MVP 候選集本發(fā)明的一個(gè)方面是為數(shù)據(jù)壓縮中的參數(shù)產(chǎn)生和表示提供預(yù)測器和編碼方法,例 如在視頻壓縮中編碼運(yùn)動(dòng)矢量。根據(jù)相鄰的數(shù)據(jù)信息自適應(yīng)地選擇兩個(gè)或多個(gè)候選?!跋?鄰”的數(shù)據(jù)信息包括但不限于空間相鄰、時(shí)間相鄰、相鄰的結(jié)合和基于分析策略的相鄰的一 些函數(shù)。分析策略包括但不限于當(dāng)前相關(guān)、分布,例如選擇與其他相鄰矢量不類似的相鄰的 運(yùn)動(dòng)矢量作為候選,用以在視頻壓縮中編碼當(dāng)前的運(yùn)動(dòng)矢量。
可能的MVP候選集包括若干成比例的空間和時(shí)間預(yù)測器。為了增加預(yù)測器的多樣 性,空間預(yù)測器基于相鄰運(yùn)動(dòng)矢量的特征自適應(yīng)地改變。在一個(gè)實(shí)施例中,為了使MVP達(dá)到高準(zhǔn)確度,MVP候選集中包括時(shí)間和空間的MVP。 MVP候選集包括多個(gè)這樣的MVP,其數(shù)量根據(jù)情況而變,例如但不限于5個(gè)MVP或8個(gè)MVP。在進(jìn)一步實(shí)施例中,對于一個(gè)給定的候選集,包括的預(yù)測器基于MVP的當(dāng)前分布 自適應(yīng)地變化。例如,不失普遍性,候選集的尺寸被選作3,并且尺寸等于3的候選集中包括 mv^^n^i和mvSnei。n^^是根據(jù)公式(1)成比例縮放的共址MV(指在前一幀和當(dāng)前塊 具有相同位置的塊的運(yùn)動(dòng)矢量)。其為時(shí)間MVP候選。mvSH.264和mvSnei為空間MVP候選。mvSH.264是3個(gè)相鄰的運(yùn)動(dòng)矢量的中間的一個(gè)(這3個(gè)相鄰的運(yùn)動(dòng)矢量根據(jù)公式 ⑴成比例縮放),例如其可以從mVsA、mVsB和mvse的中間的一個(gè)獲得。mvSnei是三個(gè)成比例的相鄰運(yùn)動(dòng)矢量mvSA、mvSB和mvsc中的一個(gè),其離mvSH.264最遠(yuǎn)mvsn = ar§max || mvx -mvSH2M \\2,x = SA,SB,SC 卩)設(shè)置該預(yù)測器mvSMi的原因在于,在相鄰的塊A、B和C中僅一個(gè)屬于包含當(dāng)前塊 的對象時(shí),試著得到更有效的MVP。在這種情況下,中間的MVP與當(dāng)前塊的實(shí)際MV的相關(guān)性 可能很低。所以,MVP候選集(Candidate Set,簡稱CS)由該具體示范性條件下的三個(gè)MVP組 成,其中該條件下候選集的尺寸等于3 (尺寸-3CS)CS = {mvSH.264, mvScol, mvSnei}(3)C. CS減少和優(yōu)化MVP初始MVP候選集會包含許多MVP,選出的一個(gè)的索引需要許多位以說明。為了減少 用于最優(yōu)MVP的索引的位,減少CS以包含更少數(shù)目的預(yù)測器。一個(gè)實(shí)施例中,使用叫做邊 界匹配的方法。另一實(shí)施例中,使用叫做自適應(yīng)模板匹配的方法。基于匹配狀態(tài)使減少的 候選集(Reduced CandidateSet,簡稱RCS)尺寸固定或可變。例如選出最佳預(yù)測器,如果后 面的預(yù)測器近乎良好則也選出后面的幾個(gè)良好的預(yù)測器。或者如果最好的預(yù)測器遠(yuǎn)好于其 他預(yù)測器,則我們也可以僅選擇最好的預(yù)測器。在該具有mv^pmvig和mvSMi的尺寸-3CS 的特例中,我們可以使用尺寸為2的固定尺寸的RCS。D.邊界匹配本發(fā)明的一個(gè)方面為確定自適應(yīng)候選集;通過匹配技術(shù)減小候選集以節(jié)約索引 的位數(shù);執(zhí)行基于最小MVD的猜測策略和全部MV編碼過程;在MV編碼中利用邊界匹配作為 匹配技術(shù)。本發(fā)明的進(jìn)一步的方面還包括進(jìn)行邊界匹配,例如將對應(yīng)于每個(gè)候選的一部分 數(shù)據(jù)復(fù)制到當(dāng)前數(shù)據(jù)空間內(nèi),測量當(dāng)前數(shù)據(jù)空間的相鄰數(shù)據(jù)與粘貼的數(shù)據(jù)部分之間的協(xié)調(diào) 性和連續(xù)性。在以下文章中對邊界匹配(Boundary matching,簡稱BM)已有說明Yan Chen, Yang Hu,Oscar C. Au,Houqiang Li, Chang Wen Chen 的"Video ErrorConcealment Using Spatio-Temporal Boundary Matching and Partial DifferentialEquation",出自 IEEE 多媒體學(xué)報(bào)(IEEE TRANSACTIONS 0NMULTIMEDIA),VOL. 10,NO. 1,2008 年 1 月,在此引入其 公開內(nèi)容。
邊界匹配廣泛應(yīng)用于誤差隱藏以找到指向參考幀中的最可能的塊的運(yùn)動(dòng)矢量,以 恢復(fù)損失塊。BM估計(jì)基于塊及其相鄰塊之間的空間連續(xù)性搜索預(yù)測器。如果使用不正確的 預(yù)測器,則相應(yīng)的重建塊與其相鄰塊不具有高空間連續(xù)性的可能性很大。但如果使用正確 的預(yù)測器,則重建的塊與相鄰塊應(yīng)當(dāng)是連續(xù)的。匹配標(biāo)準(zhǔn)是邊界匹配誤差(boundary matching error,簡稱BME),其測量候選塊 的內(nèi)部邊界像素與當(dāng)前塊的外部邊界像素之間的空間不連續(xù)性,如圖2所示。圖2表示塊的 內(nèi)部邊界像素和外部邊界像素。字母N、W、E、S代表方向北、西、東和南。BME具有兩部分 平滑不連續(xù)失真(smoothdiscontinuity distortion,簡稱SDD)和邊緣不連續(xù)失真(edge discontinuitydistortion,簡禾爾 EDD)BME = a XSDD+(l_a ) XEDD(4)其中權(quán)重因子a為0至1之間的實(shí)數(shù)。注意到在本實(shí)例化的MV編碼方法中BM在編碼器和解碼器都能執(zhí)行以找到合適的 預(yù)測器。由于當(dāng)前塊的東側(cè)和南側(cè)通常尚未在解碼器解碼,僅使用容易獲得的邊界信息,例 如北側(cè)和/或西側(cè)邊界的信息。SDD和EDD計(jì)算如下 其中如果(x,y)指向外部邊界,則pre。(x,y)指的是(x,y)位置處的當(dāng) 前重建像素值,如果(x,y)指向內(nèi)部邊界內(nèi),則!^?!?y)指的是可能的候選塊。 ▽-=[例/&,例/辦]是梯度算子,=卜⑷/辦,⑷/&]是與梯度方向正交的方向的正規(guī)算 子,& =+卩”/3丨是拉普拉斯算子。在一個(gè)典型實(shí)施例中,這些相關(guān)的算子可以計(jì)
算如下 等式(6)中,(▽ (A ))/(!(▽ (A .))|)代表拉普拉斯估計(jì)的歸一化梯度, (▽1*)/(| VI I)是沿切線方向的歸一化矢量。如果跨邊界的結(jié)構(gòu)被合適地匹配,兩項(xiàng) 應(yīng)當(dāng)彼此正交并且內(nèi)積為零。但是,如果匹配不當(dāng),兩項(xiàng)的內(nèi)積的絕對值往往會變大,引起內(nèi)積變大。此外,對于等式(6)中的每個(gè)像素,內(nèi)積被乘以梯度幅值| ▽ !,這往往會使得 EDD的數(shù)值范圍和SDD的數(shù)值范圍具有可比性。內(nèi)積還反映了邊界處的塊的狀況。對于CS中的每個(gè)預(yù)測器,對應(yīng)的參考塊用于計(jì)算BME。那些具有較少BME的預(yù)測 器包括在RCS中。例如,在具有mv^i、mvSH.264和mvSnei的尺寸-3的CS的特例中,去除具有 最大BME的預(yù)測器,RCS中包括其他兩個(gè)預(yù)測器。E.自適應(yīng)模板匹配本發(fā)明的另一方面為確定自適應(yīng)候選集;通過匹配技術(shù)減少候選集以節(jié)約索引 的位數(shù);開發(fā)自適應(yīng)模板形狀和寬度策略;執(zhí)行基于最小MVD的猜測策略和全部MV編碼過 程;MV編碼中利用自適應(yīng)模板匹配作為匹配技術(shù)。此外,本發(fā)明提供了基于相關(guān)性和相似 性標(biāo)準(zhǔn)確定模板形狀和寬度的策略,該策略適用于多種應(yīng)用,例如但不限于運(yùn)動(dòng)矢量編碼。本發(fā)明的進(jìn)一步的方面還包括基于模板與當(dāng)前數(shù)據(jù)之間可能的相關(guān)性確定用于當(dāng)前數(shù)據(jù)空間的模板形狀,例 如,在如H. 264的基于塊的視頻壓縮系統(tǒng)中,如果宏塊由率_失真標(biāo)準(zhǔn)分為不同分區(qū)(這意 味著不同分區(qū)之間的相關(guān)性可以很低),本分區(qū)的模板可能不包括另一分區(qū)內(nèi)的像素;基于模板內(nèi)的一致性確定用于當(dāng)前數(shù)據(jù)空間的模板尺寸,例如,計(jì)算可能的模板 內(nèi)部之差,如果與當(dāng)前數(shù)據(jù)空間離得遠(yuǎn)的像素不類似于與當(dāng)前數(shù)據(jù)空間離得近的像素,則 可以從模板中去除離得遠(yuǎn)的像素;而模板匹配技術(shù)可以包括但不限于,利用基于候選的位移,計(jì)算當(dāng)前數(shù)據(jù)空間的模 板與參考畫面中基于位移的模板之間的差。圖3表示模板匹配的示范性模板。模板匹配已在以下文章中說明S.Kamp, M. Evertz 禾口M. Wien 的"Decoder side motion vector derivation for inter framevideo coding,,,出自 IEEE 國際圖像處理會議(IEEE International Conference onlmage Processing), pp. 1120-1123,2008,在此通過參考引入。為了獲得當(dāng)前塊的良好預(yù)測,繞目 標(biāo)塊的左邊界和上邊界限定L形的模板區(qū)(TR)。限定模板寬度M_left和M_up為延伸到 模板區(qū)的目標(biāo)左邊和上邊的像素的寬度。為了測試當(dāng)前塊的模板與對應(yīng)于MVP的候選塊的 模板之間的相似性,僅需要計(jì)算兩個(gè)模板的絕對差和(sum of absolute difference,簡稱 SAD)。當(dāng)模板屬于與當(dāng)前塊相同的對象時(shí),如果MVP給出的模板SAD很小,可以合理推測對 應(yīng)于MVP的塊也可以提供當(dāng)前塊的良好預(yù)測。但是,如果模板區(qū)中的一些部分屬于具有不同運(yùn)動(dòng)的另一對象,即使MVP良好,這 仍會得出一個(gè)大模板SAD。一個(gè)實(shí)施例中,為避免這種情況,不使用固定尺寸的M_left和 M_up,而是基于模板與目標(biāo)塊之間的可能的相關(guān)性和模板內(nèi)部的相似性,使用自適應(yīng)的模 板形狀和寬度。在較佳實(shí)施例中,由于能給出更有意義的模板SAD,所以使用大模板。但是 任何屬于不同當(dāng)前塊所屬對象的像素應(yīng)不包括在該模板中。L形模板包含兩部分上方部分和左側(cè)部分。術(shù)語“左側(cè)模板”指的是L形模板的 左側(cè)部分。類似的,術(shù)語“上方模板”指的是L形模板的上側(cè)部分。典型地,我們允許模板 為L形模板、左側(cè)模板或上方模板。在具有mv^pmvig和mvSmi的尺寸_3的CS的示范性實(shí)施例中,我們根據(jù)當(dāng)前塊 與其相鄰塊之間的相關(guān)性將模板形狀選擇策略限定如下如果(blocktype = P16*16)
則使用左側(cè)模板和上方模板;否則如果(blocktype = P16*8)/*具有上方16x8的分區(qū)和下方16x8的分區(qū)*/則上方分區(qū)使用左側(cè)模板和上方模板,下方分區(qū)僅使用左側(cè)模板;否則如果(blocktype = P8*16)/*具有左側(cè)8x16的分區(qū),右側(cè)8x16的分區(qū)*/則左側(cè)分區(qū)與使用左側(cè)模板和上方模板,右側(cè)分區(qū)僅使用上方模板;否則如果(blocktype = P8*8)/*具有四個(gè)8x8的分區(qū),其中一些可以再分為更小 的尺寸為4x8、8x4、4x4的分區(qū)*/則當(dāng)前MB的左上角處分區(qū)使用左側(cè)模板和上方模板,當(dāng)前MB的左邊界處分區(qū)僅使用左側(cè)模板,當(dāng)前MB的上邊界處分區(qū)僅使用上方模板,其他分區(qū)使用左側(cè)模板和上方模板。該策略的原因也是我們希望將宏塊(MB)分為不同分區(qū)的原因。不同的分區(qū)之間 往往具有相對較低的相關(guān)性或者不同的運(yùn)動(dòng)情況。所以當(dāng)使用模板SAD選出良好MVP時(shí), 將另一分區(qū)中的像素包括在模板中可能會對所選出的良好MVP的正確性帶來風(fēng)險(xiǎn)。但是也 能使用其他的模板形狀選擇策略。如果當(dāng)前塊平滑,則需要模板中的像素具有類似的亮度和平滑性。如果當(dāng)前塊是 紋理塊,則需要模板中的像素具有類似的紋理。如果當(dāng)前塊具有邊緣,則需要模板中的像素 具有邊緣,該邊緣是塊內(nèi)的邊緣的延伸,并且模板中邊緣兩側(cè)上的像素類似于塊內(nèi)的像素。 換句話說,根據(jù)模板與塊之間的一致性或類似性設(shè)置模板寬度。在具有mv^pmvig和mvSmi的尺寸_3的CS的示范性實(shí)施例中,將模板寬度的構(gòu) 造標(biāo)準(zhǔn)限定如下圖4表示模板寬度等于4的示范性模板。模板的最大寬度是N = 4 ;/*也就是模板具有N排像素*/計(jì)算模板中相鄰的排之間的差。以上方模板為例,如圖4所示,計(jì)算SAD 12 = 1排與2排之間的絕對值差之和(SAD);SAD23 = 2排與3排之間的SAD ;SAD34 = 3排與4排之間的SAD ;如果(SAD12> SAD23+ 閾值 1)上方模板僅包括1排;否則如果(SAD23> SAD 12+ 閾值 2 || SAD 12 > SAD34+ 閾值 3)上方模板包括1排和2排;否則如果(SAD34> SAD 12+ 閾值 2)上方模板包括1排、2排、3排;否則上方模板包括1排、2排、3排、4排;同樣的,使用相同的方法得到左側(cè)模板的寬度。一旦對當(dāng)前塊設(shè)定了模板形狀和 寬度,具有相同形狀和寬度的參考塊的模板就用以計(jì)算模板SAD。參考畫面中的較好匹配模 板區(qū)域具有與當(dāng)前模板之間較小的模板SAD。由于模板與當(dāng)前塊的空間相關(guān)性很高,所以有 理由假設(shè)對應(yīng)于較好匹配模板的塊能為當(dāng)前塊提供良好預(yù)測。
在本發(fā)明中,對于CS中的每個(gè)預(yù)測器均計(jì)算對應(yīng)的模板SAD。那些具有較少模板 SAD的預(yù)測器包括在RCS中。例如,在具有Hivsral、mvSH.264和mvSnei的尺寸-3的CS的特例中, 去除具有最大模板SAD的預(yù)測器,RCS中包括其他兩個(gè)預(yù)測器。F.最終MVP決定
本發(fā)明的另一方面是對減少的候選集中的所有候選執(zhí)行比較和計(jì)數(shù)過程,而每個(gè) 比較和計(jì)數(shù)過程中都比較了候選和當(dāng)前參數(shù)的差并編碼最小的差。在本發(fā)明中,根據(jù)設(shè)置的策略,經(jīng)匹配技術(shù)減小后的候選集可能包含一個(gè)或多個(gè) MVP。例如,在具有IWset^ mvSH.264和Hivsnei的尺寸-3的CS的特例中,RCS包含兩個(gè)預(yù)測器。 所以還需要從兩個(gè)預(yù)測器中選出最終的預(yù)測器?,F(xiàn)將當(dāng)前塊的最終MVP的pmv。pt限定如下PmvOpl = ar§ ^n D(mv - Pmv')(8)其中Pmvi指的是包括在RCS中的第i個(gè)MVP,D( ·)是用以測量距離的函數(shù),mv代 表當(dāng)前塊的運(yùn)動(dòng)矢量。當(dāng)前塊的最終MVD是(mv-pmv。pt)。G.索引編碼本發(fā)明的另一方面是通過猜測策略編碼候選的索引,該候選與當(dāng)前參數(shù)相比具有 最小的差。猜測策略是基于已編碼的最小的差和減少的候選集一般而言,對N個(gè)候選產(chǎn)生 N個(gè)可能的參數(shù),隨后基于最小的差的標(biāo)準(zhǔn)為每個(gè)可能的參數(shù)重新選擇最佳候選和獲得新 的最小差。如果此最佳候選與產(chǎn)生該可能參數(shù)的候選相同(新最小差也同時(shí)和原來已經(jīng)編 碼的最小差相等),則該候選可能;否則設(shè)定該候選為不可能。如果可能的候選僅有一個(gè), 則不需要編碼索引,否則需要編碼索引。當(dāng)RCS中所有MVP都相同時(shí),不需要索引通知選定。否則,需要一個(gè)或多個(gè)位通 知最終MVP的索引。但是,最優(yōu)的MVP可以在一些情況下在解碼器處獲得,不需要傳送 索引。以下說明了最優(yōu)的MVP如何獲得HyunDuk Cho,Sung Deuk Kim的“Method for coding motion vector using 2-dimentionalminimum bitrate predicting technique,,, 第7023919B2號美國專利,2006年4月,此處通過參考引入其公開內(nèi)容。提出了猜測策略。 不同的是本實(shí)施例使用最小化MVD作為標(biāo)準(zhǔn),代替以最小位速率作為標(biāo)準(zhǔn),后者在不同MVD 具有相同位速率時(shí)效率不高。在本實(shí)施例中,假設(shè)經(jīng)過匹配技術(shù)后,候選集中剩余預(yù)測器的數(shù)目為N,并且已經(jīng) 確定了最佳預(yù)測器和MVD。對于每個(gè)預(yù)測器MVP_i,首先假設(shè)其是最終預(yù)測器,從而可以得 到一個(gè)新的運(yùn)動(dòng)矢量(MVP_i的值加上MVD)。對此新的運(yùn)動(dòng)矢量根據(jù)差最小的標(biāo)準(zhǔn)來重 新在N個(gè)預(yù)測器中選擇最優(yōu)的一個(gè),如果選擇的是MVP_i,則說明MVP_i是有可能的,否則 MVP_i是不可能的。以具有Iwsc^ mvSE 264 和 mvSnei (RCS 中具有 2 個(gè) MVPmvBM1 和 mvM2)的尺寸 _3 的 CS 的示范性實(shí)施例作為實(shí)例,表示如何工作步驟1 獲得兩個(gè)可能的運(yùn)動(dòng)矢量MVl = MVD+mvBM1和MV2 = MVD+mvBM2 ;步驟2 假設(shè)MVl是真實(shí)的運(yùn)動(dòng)矢量,根據(jù)等式8選擇用于MVl的最佳預(yù)測器。如 果用于MVl的最佳預(yù)測器是mvBM1,則設(shè)置flag_BMl = 1,否則flag_BMl = 0 ;步驟3 假設(shè)MV2是真實(shí)的運(yùn)動(dòng)矢量,根據(jù)等式8選擇用于MV2的最佳預(yù)測器。如 果用于MV2的最佳預(yù)測器是mvBM2,則設(shè)置flag_BM2 = 1,否則flag_BM2 = 0 ;步驟4 如果((flag_BMl = 1 && flag_BM2 = 1) || (flag_BMl = 0&&flag_BM2 =0)),將傳送最終MVP的索引。否則不傳送索引,根據(jù)flag_BMl和flag_BM2可以獲得最佳 預(yù)測器。圖5表示用于MVCBM的流程圖。在將邊界匹配用作匹配技術(shù)以進(jìn)行運(yùn)動(dòng)矢量編碼 的示范性實(shí)施例中在編碼器側(cè)MVCBM (編碼器)步驟501 計(jì)算成比例縮放的中間預(yù)測器( mv_SH. 264)、共址預(yù)測器(mv_SCol)和 與鄰近預(yù)測器中的中間預(yù)測器最不相同的預(yù)測器(mv_Snei),但是通過與等式(1)類似的 方法將共址預(yù)測器(mv_SC0l)和鄰近預(yù)測器成比例縮放。步驟503 利用邊界匹配選擇兩個(gè)預(yù)測器(mv_bml和mv_bm2)進(jìn)入具有較少的邊 界匹配誤差的減少的候選集(RCS)。當(dāng)然也可以選擇多于兩個(gè)探測器。步驟505 基于最小的MVD標(biāo)準(zhǔn),在mv_bml與mv_bm2之間為當(dāng)前塊選擇最終MVP, 得到MVD。步驟507 基于當(dāng)前MVD,利用猜測策略判斷是否能探測到正確的MVP ;如果能探測 到正確的MVP,不需要在隨后編碼并發(fā)送位作為索引;否則需要在隨后編碼并發(fā)送1位作為 索引(在邊界匹配后預(yù)測器的數(shù)目大于2,則作為索引的位可以大于1);步驟509 編碼MVD和其他信息,在不能探測到正確的MVP的情況下還需要編碼索 弓丨。其他信息例如包括編碼塊模式(Coded Block Pattern,簡稱CBP)、量化的殘差等。所述步驟509中,在實(shí)際的編碼流程中,宏塊里所有分區(qū)的MVP索引是放在一起編 碼輸出的,并且是在整個(gè)宏塊編碼輸出的最后面。這樣做的原因在于在解碼端,在重建過程 中才考慮解碼MVP索引,而之前宏塊其他信息都已經(jīng)被解碼了。在解碼器側(cè)MVCBM (解碼器)步驟511 解碼MVD和其他信息,開始重建當(dāng)前塊。其他信息例如包括例如包括 CBP、量化的殘差等。步驟513和步驟515與編碼器的步驟501、503相同。步驟517 基于解碼的MVD,利用猜測策略判斷能否確定MVP ;如果無法確定哪一個(gè) 是MVP,則解碼1位為索引。步驟519 利用MVP和MVD得到當(dāng)前塊的MV。圖6表示MVCATM的流程圖。在將自適應(yīng)模板匹配用作運(yùn)動(dòng)矢量編碼的匹配技術(shù) 的另一示范性實(shí)施例中編碼器側(cè)MVCATM (編碼器)步驟601 計(jì)算成比例縮放的中間預(yù)測器(mv_SH. 264)、共址預(yù)測器(mv_SCol)和 與鄰近預(yù)測器中的中間預(yù)測器最不相同的預(yù)測器(mv_Snei),但是通過與等式(1)類似的 方法將共址預(yù)測器(mv_SC0l)和鄰近預(yù)測器成比例縮放。步驟603 基于模板與目標(biāo)塊之間可能的類似性和相關(guān)性,為當(dāng)前塊限定具有自 適應(yīng)形狀和寬度的模板;步驟605 利用自適應(yīng)模板匹配選擇具有較少模板SAD的兩個(gè)預(yù)測器(mv_tml和mv_tm2)ο步驟607 基于最小的MVD標(biāo)準(zhǔn),在mv_tml與mv_tm2之間為當(dāng)前塊選擇最終MVP, 得到MVD。步驟609 基于當(dāng)前MVD,利用猜測策略判斷是否能探測到正確的MVP ;如果能探測 到正確的MVP,不需要在隨后編碼并發(fā)送位作為索引;否則需要在隨后編碼并發(fā)送1個(gè)位作 為索引;步驟611 編碼MVD和其他信息,在不能探測到正確的MVP的情況下還需要編碼索 弓丨。其他信息例如包括CBP、量化的殘差等。解碼器側(cè)MVCATM (角軍碼器)步驟621 解碼MVD和其他信息,開始重建當(dāng)前塊。其他信息例如包括CBP、量化的
殘差等。步驟623、步驟625和步驟627 與在編碼器側(cè)的步驟601、603、605相同。步驟629 基于解碼的MVD,利用猜測策略判斷能否確定MVP ;如果無法確定哪一個(gè) 是MVP,則為索引解碼1位。步驟631 利用MVP和MVD得到當(dāng)前塊的MV。圖7表示視頻編碼系統(tǒng)的一個(gè)實(shí)施例的方框圖。本發(fā)明是在運(yùn)動(dòng)估計(jì)(ME) 后執(zhí)行運(yùn)動(dòng)矢量編碼(MVC)。運(yùn)動(dòng)矢量將會提供給宏塊,如果該宏塊是幀間預(yù)測 (inter-prediction,簡稱Inter-Pred)型。如果宏塊是幀內(nèi)預(yù)測(Intra-Pred)型,則一個(gè) 運(yùn)動(dòng)矢量也不需要。通過變換(T)變換殘量并通過量化(Q)量化殘量給出量化的殘量。通 過熵編碼將MVD與量化的殘量以及需要傳輸?shù)乃饕黄鹁幋a,將用于傳輸?shù)妮敵鏊偷浇獯a 器。在量化的殘量上執(zhí)行解量化(Q-I)和逆變換(T-I)。重建的殘量加入到ME得到的預(yù)測 塊的結(jié)果中以給出參考圖像。圖8表示視頻解碼系統(tǒng)的一個(gè)實(shí)施例的方框圖。解碼的宏塊是幀間預(yù)測 (Inter-Pred)型時(shí),進(jìn)一步解碼MVD。通過熵解碼來解碼位流以獲得解碼的殘差。通過解量 化(Q-I)解量化解碼的殘量并通過逆變換(T-I)逆變換以給出信號。在重建過程中執(zhí)行運(yùn) 動(dòng)矢量編碼方法的解碼(DMVC)。如果DMVC中的猜測策略無法確定運(yùn)動(dòng)矢量預(yù)測器(MVP), 則可能需要進(jìn)一步解碼額外的索引。DMVC產(chǎn)生的MV用于運(yùn)動(dòng)補(bǔ)償(MC)中。MC的結(jié)果加 入信號給出重建的幀。圖9表示了根據(jù)本發(fā)明實(shí)施例的一種運(yùn)動(dòng)矢量編碼裝置,包括以下部分901、第一選擇模塊,用以選擇組成候選集的預(yù)測器;903、第一處理模塊,接收所述第一選擇模塊的預(yù)測器的候選集,用以利用匹配方 法減少所述候選集中的預(yù)測器的數(shù)目;905、第二選擇模塊,與所述第一處理模塊連接,接收所述候選集中的剩余預(yù)測器, 基于最小運(yùn)動(dòng)矢量差的標(biāo)準(zhǔn)在所述剩余預(yù)測器中選定最優(yōu)的預(yù)測器;907、第二處理模塊,與所述第二選擇模塊連接,根據(jù)選定的最優(yōu)的預(yù)測器得到當(dāng)
前運(yùn)動(dòng)矢量差;909、探測模塊,與所述第二處理模塊和第一處理模塊連接,基于從第一處理模塊中得到的剩余的預(yù)測器和當(dāng)前運(yùn)動(dòng)矢量差,利用猜測策略探測運(yùn)動(dòng)矢量預(yù)測器;
911、判斷模塊,與所述探測模塊連接,如果探測模塊的探測結(jié)果為探測到正確的 運(yùn)動(dòng)矢量預(yù)測器,則將判斷結(jié)果發(fā)送到編碼模塊;913、編碼模塊,接收所述判斷結(jié)果,編碼至少當(dāng)前運(yùn)動(dòng)矢量差或者編碼至少當(dāng)前 運(yùn)動(dòng)矢量差和索引。圖10表示了更加本發(fā)明實(shí)施例的一種運(yùn)動(dòng)矢量解碼裝置,包括以下部分1001、接收模塊,接收至少已編碼的運(yùn)動(dòng)矢量差;1003、第一解碼模塊,連接所述接收模塊,根據(jù)接收的至少已編碼的運(yùn)動(dòng)矢量差, 解碼運(yùn)動(dòng)矢量差;1005、第一選擇模塊,用以選擇組成候選集的預(yù)測器;1007、第一處理模塊,接收所述第一選擇模塊的預(yù)測器的候選集,用以利用匹配方 法減少所述候選集中的預(yù)測器的數(shù)目;1009、判斷模塊,連接所述第一處理模塊與所述第一解碼模塊,基于所述候選集中 剩余預(yù)測器和解碼的運(yùn)動(dòng)矢量差,利用猜測策略判斷能否確定運(yùn)動(dòng)矢量預(yù)測器;1011、第二解碼模塊,連接所述判斷模塊,根據(jù)所述判斷結(jié)果解碼索引;1013、分析模塊,連接所述第一處理模塊和第二解碼模塊,根據(jù)解碼的索引判定運(yùn) 動(dòng)矢量預(yù)測器;1015、第二處理模塊,連接所述判斷模塊、所述第一解碼模塊和所述分析模塊,根 據(jù)判斷結(jié)果,利用解碼的運(yùn)動(dòng)矢量差和已解碼確定的運(yùn)動(dòng)矢量預(yù)測器得到運(yùn)動(dòng)矢量;或者 利用解碼的運(yùn)動(dòng)矢量差和已判定的運(yùn)動(dòng)矢量預(yù)測器得到運(yùn)動(dòng)矢量。一般說來,視頻編解碼以及運(yùn)動(dòng)矢量編解碼的多種實(shí)施方式能在多種終端設(shè)備或 用戶設(shè)備中實(shí)施,終端設(shè)備或用戶設(shè)備包括但不限于手機(jī)及其他無線通信裝置、個(gè)人數(shù)字 助理(PDA)、便攜式和臺式計(jì)算機(jī)、圖像/視頻裝置(如數(shù)碼照相機(jī))、音頻-視頻(AV)設(shè) 備(如視頻播放器)、游戲裝置、允許訪問及可能的瀏覽的因特網(wǎng)或局域網(wǎng)(LAN)裝置、以及 這些功能相結(jié)合的可移動(dòng)的單元或裝置。本發(fā)明的實(shí)施例可以以軟件、硬件、應(yīng)用邏輯或者軟件、硬件與應(yīng)用邏輯組合的方 式實(shí)施。軟件、應(yīng)用邏輯和/或硬件可以存留于集成電路芯片、模塊或存儲器上。如果需要 的話,一部分軟件、硬件和/或應(yīng)用邏輯可以存留于集成電路芯片上,一部分軟件、硬件和/ 或應(yīng)用邏輯可以存留于模塊上,以及一部分軟件、硬件和/或應(yīng)用邏輯可以存留于存儲器 上。在一個(gè)示例中,應(yīng)用邏輯、軟件或指令集存留在各種常規(guī)計(jì)算機(jī)可讀介質(zhì)中的任何一種 內(nèi)。本發(fā)明的上下文中,“計(jì)算機(jī)可讀介質(zhì)”可以是任意媒質(zhì)或裝置,其包含、存儲、通信、傳 播或傳送指令以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備(如計(jì)算機(jī))使用或與指令執(zhí)行系統(tǒng)、裝置或 設(shè)備共同使用。計(jì)算機(jī)可讀介質(zhì)可以包括計(jì)算機(jī)可讀存儲媒質(zhì),其可以是含有或存儲指令 的任意媒質(zhì)或裝置以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備(如計(jì)算機(jī))使用或與指令執(zhí)行系統(tǒng)、裝 置或設(shè)備共同使用。如果需要的話,此處討論的不同功能可以以彼此不同的次序和/或同時(shí)執(zhí)行。此 夕卜,如果需要的話,上述功能的一個(gè)或多個(gè)可以是任選的或可以組合。盡管獨(dú)立權(quán)利要求中指出的本發(fā)明的多個(gè)方面,本發(fā)明的其他方面包括上述實(shí)施 例中的特征及其組合和/或具有獨(dú)立權(quán)利要求的特征的從屬權(quán)利要求,而不僅是權(quán)利要求 中明確給出的組合。
此處還應(yīng)注意在以上說明本發(fā)明的示范性實(shí)施例的同時(shí),這些說明不應(yīng)當(dāng)看做是限制的意思。還可以做出多種變換和改進(jìn)而不背離權(quán)利要求限定的本發(fā)明的范圍。
權(quán)利要求
一種運(yùn)動(dòng)矢量編碼方法,其特征在于,包括以下步驟步驟1限定預(yù)測器的候選集,其中所述預(yù)測器基于與所述運(yùn)動(dòng)矢量相鄰的運(yùn)動(dòng)矢量自適應(yīng)的變化;步驟2利用匹配方法減少所述候選集中的預(yù)測器的數(shù)目以減少索引使用的位數(shù);步驟3基于最小運(yùn)動(dòng)矢量差的標(biāo)準(zhǔn)在所述候選集中的剩余預(yù)測器中選定最優(yōu)的預(yù)測器,并得到當(dāng)前運(yùn)動(dòng)矢量差;步驟4基于剩余預(yù)測器和當(dāng)前運(yùn)動(dòng)矢量差,利用猜測策略探測運(yùn)動(dòng)矢量預(yù)測器以進(jìn)一步節(jié)約用于編碼索引的位數(shù);步驟5判斷是否能探測到正確的運(yùn)動(dòng)矢量預(yù)測器,如果探測到正確的運(yùn)動(dòng)矢量預(yù)測器,則編碼至少當(dāng)前運(yùn)動(dòng)矢量差,如果無法探測到正確的運(yùn)動(dòng)矢量預(yù)測器,則對至少當(dāng)前運(yùn)動(dòng)矢量差和索引進(jìn)行編碼。
2.根據(jù)權(quán)利要求1所述的一種運(yùn)動(dòng)矢量編碼方法,其特征在于,所述匹配方法為邊界 匹配方法或自適應(yīng)模板匹配方法。
3.根據(jù)權(quán)利要求2所述的一種運(yùn)動(dòng)矢量編碼方法,其特征在于,所述邊界匹配方法為, 將對應(yīng)于所述候選集中的預(yù)測器的一部分?jǐn)?shù)據(jù)粘貼到當(dāng)前數(shù)據(jù)空間,得到邊界匹配誤差, 去除所述候選集中邊界匹配誤差最大的一個(gè)或多個(gè)預(yù)測器。
4.根據(jù)權(quán)利要求2所述的一種運(yùn)動(dòng)矢量編碼方法,其特征在于,所述自適應(yīng)模板匹配 方法為,基于自適應(yīng)模板與當(dāng)前數(shù)據(jù)之間可能的相關(guān)性確定用于當(dāng)前數(shù)據(jù)空間的自適應(yīng)模 板的形狀;或者基于自適應(yīng)模板內(nèi)的一致性確定用于當(dāng)前數(shù)據(jù)空間的自適應(yīng)模板的尺寸。
5.根據(jù)權(quán)利要求4所述的一種運(yùn)動(dòng)矢量編碼方法,其特征在于,所述自適應(yīng)模板匹配 方法還包括利用基于候選集中預(yù)測器對應(yīng)的位移,計(jì)算當(dāng)前數(shù)據(jù)空間的模板與參考畫面中 位移后的數(shù)據(jù)空間的模板之間的差。
6.根據(jù)權(quán)利要求4所述的一種運(yùn)動(dòng)矢量編碼方法,其特征在于,自適應(yīng)模板匹配方法 中,所述自適應(yīng)模板的寬度和形狀已指定。
7.根據(jù)權(quán)利要求1所述的一種運(yùn)動(dòng)矢量編碼方法,其特征在于,所述步驟5之后,如果 探測到正確的運(yùn)動(dòng)矢量預(yù)測器,則發(fā)送至少已編碼的當(dāng)前運(yùn)動(dòng)矢量差;如果無法探測到正 確的運(yùn)動(dòng)矢量預(yù)測器,則發(fā)送至少已編碼的當(dāng)前運(yùn)動(dòng)矢量差和已編碼的作為索引的位。
8.根據(jù)權(quán)利要求1所述的一種運(yùn)動(dòng)矢量編碼方法,其特征在于,所述預(yù)測器的候選集 包括若干成比例的空間和時(shí)間預(yù)測器。
9.根據(jù)權(quán)利要求1所述的一種運(yùn)動(dòng)矢量編碼方法,其特征在于,所述步驟1中,與所述 運(yùn)動(dòng)矢量相鄰的運(yùn)動(dòng)矢量為與所述運(yùn)動(dòng)矢量時(shí)間相鄰、空間相鄰、時(shí)間與空間相鄰或基于 分析策略相鄰的運(yùn)動(dòng)矢量。
10.根據(jù)權(quán)利要求9所述的一種運(yùn)動(dòng)矢量編碼方法,其特征在于,步驟4中的猜測策略, 所述剩余預(yù)測器的數(shù)目至少為1個(gè),對每個(gè)剩余預(yù)測器和當(dāng)前運(yùn)動(dòng)矢量差產(chǎn)生一個(gè)中間參 數(shù),基于最小運(yùn)動(dòng)矢量差的標(biāo)準(zhǔn)為每個(gè)中間參數(shù)重新選擇待選的預(yù)測器,如果重新選擇的 待選的預(yù)測器與產(chǎn)生該中間參數(shù)的剩余預(yù)測器相同,則判定該剩余預(yù)測器為可選預(yù)測器, 如果可選預(yù)測器的數(shù)目為1個(gè),則該可選預(yù)測器為正確的運(yùn)動(dòng)矢量預(yù)測器。
11.一種解碼已編碼的運(yùn)動(dòng)矢量的方法,所述已編碼的運(yùn)動(dòng)矢量被如權(quán)利要求1所述 的方法編碼,其特征在于,包括以下步驟步驟1 解碼運(yùn)動(dòng)矢量差;步驟2 限定預(yù)測器的候選集,其中所述預(yù)測器基于與所述運(yùn)動(dòng)矢量相鄰的運(yùn)動(dòng)矢量 自適應(yīng)的變化;步驟3 利用匹配方法減少所述候選集中的預(yù)測器的數(shù)目;步驟4 基于所述候選集中的剩余預(yù)測器和解碼的運(yùn)動(dòng)矢量差,利用猜測策略判斷能 否確定運(yùn)動(dòng)矢量預(yù)測器;步驟5 如果能確定運(yùn)動(dòng)矢量預(yù)測器,則利用至少解碼的運(yùn)動(dòng)矢量差和已確定的運(yùn)動(dòng) 矢量預(yù)測器得到運(yùn)動(dòng)矢量;如果不能確定運(yùn)動(dòng)矢量預(yù)測器,則解碼索引并判定運(yùn)動(dòng)矢量預(yù) 測器,利用至少解碼的運(yùn)動(dòng)矢量差和已判定的運(yùn)動(dòng)矢量預(yù)測器得到運(yùn)動(dòng)矢量。
12.根據(jù)權(quán)利要求11所述的一種解碼已編碼的運(yùn)動(dòng)矢量的方法,其特征在于,所述匹 配方法與編碼時(shí)采用的匹配方法相同。
13.根據(jù)權(quán)利要求12所述的一種解碼已編碼的運(yùn)動(dòng)矢量的方法,其特征在于,所述匹 配方法為邊界匹配方法或自適應(yīng)模板匹配方法。
14.一種運(yùn)動(dòng)矢量編碼裝置,其特征在于包括以下部分 第一選擇模塊,用以選擇組成候選集的預(yù)測器;第一處理模塊,接收所述第一選擇模塊的預(yù)測器的候選集,用以利用匹配方法減少所 述候選集中的預(yù)測器的數(shù)目;第二選擇模塊,與所述第一處理模塊連接,接收所述候選集中的剩余預(yù)測器,基于最小 運(yùn)動(dòng)矢量差的標(biāo)準(zhǔn)在所述剩余預(yù)測器中選定最優(yōu)的預(yù)測器;第二處理模塊,與所述第二選擇模塊連接,根據(jù)選定的最優(yōu)的預(yù)測器得到當(dāng)前運(yùn)動(dòng)矢 量差;探測模塊,與所述第二處理模塊和第一處理模塊連接,基于接收的所述候選集中的剩 余預(yù)測器和當(dāng)前運(yùn)動(dòng)矢量差,利用猜測策略探測運(yùn)動(dòng)矢量預(yù)測器;判斷模塊,與所述探測模塊連接,如果探測模塊的探測結(jié)果為探測到正確的運(yùn)動(dòng)矢量 預(yù)測器,則將判斷結(jié)果發(fā)送到編碼模塊;編碼模塊,接收所述判斷結(jié)果,編碼至少當(dāng)前運(yùn)動(dòng)矢量差或者編碼至少當(dāng)前運(yùn)動(dòng)矢量 差和索引。
15.一種運(yùn)動(dòng)矢量解碼裝置,其特征在于包括以下部分 接收模塊,接收至少已編碼的運(yùn)動(dòng)矢量差;第一解碼模塊,連接所述接收模塊,根據(jù)接收的至少已編碼的運(yùn)動(dòng)矢量差,解碼運(yùn)動(dòng)矢量差;第一選擇模塊,用以選擇組成候選集的預(yù)測器;第一處理模塊,接收所述第一選擇模塊的預(yù)測器的候選集,用以利用匹配方法減少所 述候選集中的預(yù)測器的數(shù)目;判斷模塊,連接所述第一處理模塊與所述第一解碼模塊,基于所述候選集中的剩余預(yù) 測器和解碼的運(yùn)動(dòng)矢量差,利用猜測策略判斷能否確定運(yùn)動(dòng)矢量預(yù)測器; 第二解碼模塊,連接所述判斷模塊,根據(jù)所述判斷結(jié)果解碼索引; 分析模塊,連接所述第一處理模塊和第二解碼模塊,根據(jù)解碼的索引判定運(yùn)動(dòng)矢量預(yù) 測器;第二處理模塊,連接所述判斷模塊、所述第一解碼模塊和所述分析模塊,根據(jù)判斷結(jié) 果,利用解碼的運(yùn)動(dòng)矢量差和已解碼確定的運(yùn)動(dòng)矢量預(yù)測器得到運(yùn)動(dòng)矢量;或者利用解碼 的運(yùn)動(dòng)矢量差和已判定的運(yùn)動(dòng)矢量預(yù)測器得到運(yùn)動(dòng)矢量。
全文摘要
本發(fā)明涉及視頻編碼方法。具體地,其涉及運(yùn)動(dòng)矢量(MV)編碼,其中MV編碼基于邊緣匹配或自適應(yīng)模板匹配,也就是基于邊界匹配(MVCBM)的運(yùn)動(dòng)矢量編碼和基于自適應(yīng)模板匹配(MVCATM)的運(yùn)動(dòng)矢量編碼。一般來說,本發(fā)明限定預(yù)測候選集,其中預(yù)測器基于相鄰MV的當(dāng)前分布自適應(yīng)地變化。隨后,匹配技術(shù)(MVCBM中的邊界匹配和MVCATM中的自適應(yīng)模板匹配)用于減小預(yù)測候選集的大小以減少索引使用的位數(shù)。而后,在包含于減少的集中的預(yù)測器中選擇最優(yōu)的運(yùn)動(dòng)矢量預(yù)測器?;谧钚VD標(biāo)準(zhǔn)的猜測策略進(jìn)一步節(jié)約了索引的位數(shù)。
文檔編號H04N7/50GK101860754SQ20101017428
公開日2010年10月13日 申請日期2010年4月30日 優(yōu)先權(quán)日2009年12月16日
發(fā)明者代晶靜, 劉雨, 區(qū)子廉, 楊雯, 鄒峰 申請人:香港應(yīng)用科技研究院有限公司