專(zhuān)利名稱(chēng):獲得基于塊的運(yùn)動(dòng)估計(jì)中的運(yùn)動(dòng)向量的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及獲得視頻信號(hào)壓縮的基于塊的運(yùn)動(dòng)估計(jì)中的運(yùn)動(dòng)向量 的方法。
背景技術(shù):
諸如MPEG2和H264的視頻壓縮標(biāo)準(zhǔn)通過(guò)根據(jù)一個(gè)或多個(gè)之前編 碼的畫(huà)面的部分來(lái)預(yù)測(cè)一個(gè)畫(huà)面中的宏塊,從而實(shí)現(xiàn)壓縮。對(duì)于尺寸 為16X16像素的典型宏塊,存在用于找出最佳向量的已知方法,該最 佳向量描述之前的編碼畫(huà)面的部分到當(dāng)前畫(huà)面中宏塊的變換。例如, 給定x和y向量(二者可以是相關(guān)的;搜索區(qū)域的形狀并不必須是矩 形的)的最大范圍,已知的絕對(duì)差值之和(SAD)的方法為搜索區(qū)域 內(nèi)的每個(gè)可能匹配點(diǎn)計(jì)算宏塊中的像素與之前編碼幀中的相應(yīng)像素之 間的絕對(duì)差值之和,并搜索最小的SAD,其可被認(rèn)為對(duì)應(yīng)于最優(yōu)向量。 還已知有諸如搜索最大的互相關(guān)系數(shù)的其它方法。
諸如H264的一些視頻壓縮標(biāo)準(zhǔn)允許用更小的塊,已知為宏塊的劃 分(以及子分區(qū)),來(lái)預(yù)測(cè)圖像,這些更小的塊中的每個(gè)都可用不同向 量來(lái)預(yù)測(cè)。理論上,這允許以低得多的殘差(residual)來(lái)預(yù)測(cè)宏塊內(nèi) 有多于一個(gè)運(yùn)動(dòng)的區(qū)域。視頻壓縮標(biāo)準(zhǔn),包括H264,指定了視頻是如 何用語(yǔ)法(例如,塊尺寸和向量語(yǔ)法)來(lái)描述的。它們并不指定如何 執(zhí)行編碼,例如,在每個(gè)點(diǎn)確定最優(yōu)的塊尺寸的方法,或如何從源視 頻序列獲得向量。根據(jù)H264標(biāo)準(zhǔn)存在許多種對(duì)圖像的任意給定序列進(jìn) 行編碼的方式;視頻編碼的技術(shù)是選擇較好的一個(gè)。
已經(jīng)觀察到,對(duì)于即使尺寸為16X16的塊,基于塊的搜索有時(shí)可 能產(chǎn)生與現(xiàn)實(shí)世界的運(yùn)動(dòng)不相關(guān)且似乎是隨機(jī)的向量。這通常發(fā)生在 諸如由相對(duì)于草坪運(yùn)動(dòng)場(chǎng)(grass sports pitch)移動(dòng)的相機(jī)所產(chǎn)生的圖 像上。盡管塊向量計(jì)分(block vector score)確保了將殘差編碼的成本 最小化,但向量自身是隨機(jī)的,因此它們具有較高的熵和較高的編碼
成本。這有效地增加了對(duì)于相同視頻質(zhì)量的比特速率。
在塊尺寸減小時(shí)這個(gè)問(wèn)題變得更加尖銳;通過(guò)基于塊的搜索方法
找出匹配現(xiàn)實(shí)世界的運(yùn)動(dòng)的4X4子分區(qū)不能可靠地進(jìn)行。這是因?yàn)? X4的塊搜索是僅僅基于16個(gè)像素的差值進(jìn)行的,而與其相比16X16 的塊是基于256個(gè)像素的。對(duì)于更小的塊,圖像中的隨機(jī)噪聲或其它 細(xì)節(jié)將更有可能產(chǎn)生"錯(cuò)誤"匹配。
發(fā)明內(nèi)容
本發(fā)明的目的是至少改善現(xiàn)有技術(shù)中的前述缺點(diǎn)。 根據(jù)本發(fā)明的第一方面,提供了在基于塊的運(yùn)動(dòng)估計(jì)中為宏塊分
區(qū)獲得運(yùn)動(dòng)向量的方法,其包括為宏塊并且為可得的相鄰宏塊確定 向量;將宏塊劃分成分區(qū);為每個(gè)分區(qū)確定候選運(yùn)動(dòng)向量的集合,其 包括來(lái)自宏塊和在可能時(shí)來(lái)自至少兩個(gè)相鄰宏塊的向量;對(duì)于集合中 的每個(gè)候選運(yùn)動(dòng)向量計(jì)算分區(qū)的塊向量計(jì)分,并從具有最好計(jì)分的集 合中選擇候選運(yùn)動(dòng)向量作為每個(gè)分區(qū)的向量。
方便的是,該方法包括用16X16的塊執(zhí)行塊匹配運(yùn)動(dòng)搜索;將 16X16的塊劃分成8X8的分區(qū)并從父宏塊(parent)或相鄰的16X16 宏塊選擇最好的向量。
替換的,該方法包括將每個(gè)8X8分區(qū)劃分成4X4子分區(qū)并從父 分區(qū)和相鄰分區(qū)選擇最好的向量。
可選的,該方法包括將每個(gè)4X4子分區(qū)劃分成2X2子分區(qū)并從 父子分區(qū)和相鄰子分區(qū)選擇最好的向量。
可選的,該方法包括將每個(gè)2X2子分區(qū)劃分成像素,并從父2X2 子分區(qū)和相鄰2X2子分區(qū)選擇最好的向量。
方便的是,塊向量計(jì)分是絕對(duì)差值之和。
方便的是,該方法還包括檢查是否有足夠的宏塊分區(qū)具有相同的 向量或?qū)⒛鼙桓行У鼐幋a為更大分區(qū)的分區(qū)的向量。
方便的是,該方法還包括允許候選向量的擾動(dòng)(perturbation)以 平滑圖像中不同運(yùn)動(dòng)的區(qū)域之間的過(guò)渡。
有益的是,宏塊被劃分成多個(gè)分區(qū),以在預(yù)定編碼成本內(nèi)獲得對(duì) 分區(qū)合計(jì)的最好計(jì)分。
5
根據(jù)本發(fā)明的第二方面,提供了包括代碼裝置的計(jì)算機(jī)程序產(chǎn)品, 該代碼裝置用于當(dāng)在一個(gè)或多個(gè)計(jì)算機(jī)上運(yùn)行程序時(shí)執(zhí)行權(quán)利要求1 至6中的任一項(xiàng)的方法的所有步驟。
根據(jù)本發(fā)明的第三方面,提供了如上所述的計(jì)算機(jī)程序產(chǎn)品,其 包含在計(jì)算機(jī)存儲(chǔ)介質(zhì)中。
現(xiàn)在,將參考附圖通過(guò)舉例的方式來(lái)描述本發(fā)明。 圖1顯示了劃分成宏塊的源圖像;
圖2顯示了對(duì)于圖1的源圖像的參考圖像,利用根據(jù)現(xiàn)有技術(shù)的 最好匹配宏塊向量來(lái)從參考圖像重構(gòu)源圖像;
圖3顯示了按照?qǐng)D2的最好匹配宏塊向量來(lái)移動(dòng)宏塊的結(jié)果;
圖4顯示了對(duì)于圖1的源圖像的參考圖像,利用根據(jù)本發(fā)明的最 好匹配分區(qū)的宏塊向量來(lái)從參考圖像重構(gòu)源圖像;
圖5顯示了按照?qǐng)D4的最好匹配分區(qū)的宏塊向量移動(dòng)劃分的宏塊 的結(jié)果;
圖6是根據(jù)本發(fā)明的流程圖。
在各圖中,相似的附圖標(biāo)記表示相似的部分。
具體實(shí)施例方式
參考圖1,源圖像包括相對(duì)于隨機(jī)星形121的背景12的不規(guī)則的 白色前景對(duì)象ll。覆蓋線(xiàn)13、 14表示源圖像被劃分成的宏塊網(wǎng)格。
圖2顯示了參考圖像,其中白色不規(guī)則的對(duì)象ll比在源圖像中更 靠右。正方形表示對(duì)圖1中每個(gè)宏塊的最好匹配的圖像區(qū)域,還帶有 相應(yīng)的向量,其用間斷的帶箭頭的線(xiàn)21、 22、 25來(lái)顯示。由于不規(guī)則 的對(duì)象11在參考圖像中比在源圖像中更靠右,所以需將不規(guī)則的對(duì)象 11向左移動(dòng)以從參考圖像產(chǎn)生源圖像。中間宏塊23和下部中間宏塊 24并沒(méi)匹配好并具有偽運(yùn)動(dòng)向量(spurious motion vector) 21、 22。
圖3顯示了當(dāng)按圖2所示那樣預(yù)測(cè)宏塊時(shí)的重構(gòu)。中間頂部宏塊 31、中間中部宏塊24和中間底部宏塊23與圖1的源圖像相比都在不 同位置。
圖4顯示了根據(jù)本發(fā)明劃分宏塊獲得的結(jié)果。中間和中間底部宏
塊23、 24每個(gè)都己經(jīng)被分成四個(gè)分區(qū)231—234和241—244。這些分 區(qū)的主要部分都采取了附近宏塊的向量而不是父宏塊23、 24的向量, 使得它們的運(yùn)動(dòng)與相鄰宏塊相一致。
圖5顯示了根據(jù)以上圖4產(chǎn)生的預(yù)測(cè)。預(yù)測(cè)的圖像比使用現(xiàn)有技 術(shù)的未劃分的宏塊的圖3中的之前預(yù)測(cè)更像圖1中的源圖像。
這樣,在本發(fā)明的方法中,每個(gè)宏塊被劃分成分區(qū)。對(duì)于每個(gè)分 區(qū),塊向量計(jì)分被計(jì)算,如果使用之前計(jì)算的向量從至少一個(gè)鄰接宏 塊以及父宏塊預(yù)測(cè)該分區(qū),則獲得該塊向量計(jì)分,其中各分區(qū)是從父 宏塊中劃分出來(lái)的。該處理要求在能夠開(kāi)始該歩驟以前,對(duì)于編碼序 列中的當(dāng)前宏塊之后的宏塊的宏塊向量必須是已知的。
來(lái)自鄰接宏塊的候選向量和父宏塊的向量當(dāng)中的最好塊向量計(jì)分 被找到,并被選擇作為這個(gè)分區(qū)的最好向量。
已經(jīng)為這種水平的劃分找到了 2m乘2n的向量場(chǎng),該場(chǎng)可用相同 的方法被再次分割,以產(chǎn)生更精細(xì)的分辨率圖像。
在每個(gè)水平上,還可能檢査是否有足夠的宏塊分區(qū)具有相同向量 或?qū)⒈桓行У鼐幋a為更大分區(qū)的分區(qū)的向量。
此外,候選向量的小擾動(dòng)可被允許,§卩,可在提出的向量周?chē)鷪?zhí) 行小搜索,以便提供圖像中不同運(yùn)動(dòng)區(qū)域之間的更平滑的過(guò)渡。
以上參考?jí)K向量計(jì)分搜索描述了本方法。因?yàn)榭梢岳斫獗痉椒o(wú) 論應(yīng)用什么樣的根據(jù)其進(jìn)行最小化的成本函數(shù),在每個(gè)水平上應(yīng)用的 成本函數(shù)都不必要與在任何其它水平上應(yīng)用的成本函數(shù)相同。然而, 將理解絕對(duì)差值之和(SAD)的計(jì)分是用在本發(fā)明中的簡(jiǎn)便的塊向量 計(jì)分。
圖6顯示了分散處理的流程圖。
圖6中的輸出1至5表示在不同水平的塊劃分處的向量場(chǎng)。輸出5 表示每個(gè)像素的向量。
通常,相鄰塊被限制為兩個(gè)最近相鄰體。這樣,遠(yuǎn)離特定水平的 塊網(wǎng)格邊緣的塊的左側(cè)頂部分區(qū)將具有來(lái)自塊上方的向量和從塊到左 側(cè)的向量作為候選向量,替換匹配是根據(jù)候選向量計(jì)算的。
這會(huì)起作用是因?yàn)閷?duì)于每個(gè)分區(qū)僅有幾個(gè),通稱(chēng)為三或四個(gè),候
選向量,所以由于隨機(jī)噪聲而找出更好的匹配的可能性會(huì)非常小。在 實(shí)行中,每個(gè)宏塊被劃分,并且來(lái)自一個(gè)宏塊的分區(qū)被附加到另一個(gè) 宏塊上,使得通過(guò)為分區(qū)分配與相鄰宏塊相同的向量而使分區(qū)與另一 個(gè)宏塊一起移動(dòng)到它們被附加的宏塊。
將理解的是在圖像邊緣處,對(duì)于根據(jù)其選擇向量以便與父向量相 比較的宏塊,僅有一個(gè)或沒(méi)有相鄰宏塊。
盡管已經(jīng)討論過(guò)將宏塊等分成四個(gè)分區(qū),宏塊也可以替換地例如 被豎直或水平劃分成兩半,或者以其他方式劃分。
宏塊可以這樣的方式劃分成分區(qū),以便能在預(yù)定可接受的編碼成 本內(nèi)獲得對(duì)所有分區(qū)合計(jì)的最好計(jì)分。
在流程圖的任意點(diǎn)或多個(gè)點(diǎn)處可引進(jìn)一個(gè)或多個(gè)細(xì)化階段,以便 允許向量在半個(gè)或四分之一個(gè)像素尺度上。
權(quán)利要求
1.一種在基于塊的運(yùn)動(dòng)估計(jì)中為宏塊的分區(qū)獲得運(yùn)動(dòng)向量的方法,其包括a.為所述宏塊和可得的相鄰宏塊確定向量;b.將所述宏塊劃分成分區(qū);c.為每個(gè)分區(qū)確定候選運(yùn)動(dòng)向量的集合,其包括來(lái)自所述宏塊的以及可得的至少兩個(gè)相鄰宏塊的向量;d.為所述集合的每個(gè)候選運(yùn)動(dòng)向量計(jì)算所述分區(qū)的塊向量計(jì)分;e.從所述集合中選出具有最好的計(jì)分的候選運(yùn)動(dòng)向量作為每個(gè)分區(qū)的向量;以及f.檢查是否有足夠的宏塊分區(qū)具有相同的向量,或者具有將被更有效地編碼為更大分區(qū)的分區(qū)的向量。
2. 如權(quán)利要求l所述的方法,其包括a. 使用16X16的塊執(zhí)行塊匹配運(yùn)動(dòng)搜索;以及b. 將所述16X16的塊劃分成8X8的分區(qū),并且從所述父宏塊和 相鄰的16X16的宏塊中選擇最好的向量。
3. 如權(quán)利要求2所述的方法,包括將每個(gè)8X8的分區(qū)劃分成4X4 的子分區(qū),并且從所述父分區(qū)和相鄰分區(qū)選擇最好的向量。
4. 如權(quán)利要求3所述的方法,其包括將每個(gè)4X4的子分區(qū)劃分成2 X2的子分區(qū),并且從所述父子分區(qū)和相鄰子分區(qū)選擇最好的向量。
5. 如權(quán)利要求4所述的方法,其包括將每個(gè)2X2的子分區(qū)劃分成像 素,并且從所述父2X2的子分區(qū)和相鄰2X2的子分區(qū)選擇最好的向
6.如權(quán)利要求l所述的方法,其中所述塊向量計(jì)分是絕對(duì)差值之和。
7. 如權(quán)利要求1所述的方法,還包括允許所述候選向量的擾動(dòng)來(lái)平 滑圖像中不同運(yùn)動(dòng)區(qū)域之間的過(guò)渡。
8. 如權(quán)利要求1所述的方法,其中所述宏塊被劃分成分區(qū),以在預(yù) 定編碼成本內(nèi)獲得對(duì)所述分區(qū)合計(jì)的最好計(jì)分。
9. 一種包括代碼裝置的計(jì)算機(jī)程序產(chǎn)品,其用于在所述程序運(yùn)行在 一個(gè)或多個(gè)計(jì)算機(jī)上時(shí)執(zhí)行權(quán)利要求1至8中任一項(xiàng)所述的方法的所 有步驟。
10. 如權(quán)利要求9所述的計(jì)算機(jī)程序產(chǎn)品,其被包含在計(jì)算機(jī)存儲(chǔ)介 質(zhì)中。
全文摘要
本發(fā)明公開(kāi)了一種在基于塊的運(yùn)動(dòng)估計(jì)中為宏塊分區(qū)獲得運(yùn)動(dòng)向量的方法,其通過(guò)將各宏塊劃分成分區(qū)并為每個(gè)分區(qū)確定分區(qū)運(yùn)動(dòng)向量來(lái)實(shí)現(xiàn)。最好的向量是從分區(qū)的分區(qū)運(yùn)動(dòng)向量和從相鄰宏塊的分區(qū)的向量中為每個(gè)分區(qū)選擇的。
文檔編號(hào)H04N7/26GK101179731SQ20071018610
公開(kāi)日2008年5月14日 申請(qǐng)日期2007年11月12日 優(yōu)先權(quán)日2006年11月10日
發(fā)明者A·R·哈蓋特, D·王 申請(qǐng)人:泰德廣播電視公司