專利名稱:運動估計的制作方法
技術領域:
本發(fā)明涉及一種簡單、快速以及比當前可用技術廉價的高效率的運動估計方法。
一般來說,MPEG視頻數(shù)據(jù)流的編碼需要若干步驟。第一步驟包括把每一畫面分成宏數(shù)據(jù)塊。理論上講,隨后將把該MPEG視頻數(shù)據(jù)流與全部可能的16×16像素陣列比較,該16×16像素陣列定位在固定畫面中對應位置的當前宏數(shù)據(jù)塊的規(guī)定垂直和水平搜索范圍之內(nèi)。在理論上,“全檢索算法”(即為了最佳匹配而在搜索區(qū)域中搜索每個可能的數(shù)據(jù)塊)總是產(chǎn)生該最佳匹配,但是其很少使用在實際應用中,因為它要求極大的計算量,例如對于N×N的一個數(shù)據(jù)塊尺寸和一個(N+2w)×(N+2w)的搜索區(qū)域,失真函數(shù)MAE必須針對每一數(shù)據(jù)塊計算(2w+1)2次,這將是一個極大的計算量。實際上是僅把該全檢索算法用作基準或測定判據(jù),使之與能夠快速和以較少計算執(zhí)行的不同的更實際的運動估計相比較。這些更實際的運動估計算法通常稱作“快速檢索算法”。
上述針對給定預測模式的搜索或“運動估計”過程產(chǎn)生對應于在指定搜索范圍之內(nèi)的固定畫面中的最接近匹配宏數(shù)據(jù)塊(根據(jù)一個規(guī)定的匹配判據(jù))的位置的一個運動矢量。一旦確定了預測模式和運動矢量,就從當前宏數(shù)據(jù)塊的對應于像素減去最接近匹配宏數(shù)據(jù)塊的像素值,產(chǎn)生16×16的差像素的陣列隨后被執(zhí)行一個離散余弦變換(DCT)而被轉變成8×8“數(shù)據(jù)塊”,其中產(chǎn)生的系數(shù)被逐一量化和霍夫曼編碼(按照預測類型、運動矢量和其它關于該宏數(shù)據(jù)塊的信息),以便產(chǎn)生MPEG比特數(shù)據(jù)流。如果在該固定畫面中沒有檢測到充分的宏數(shù)據(jù)塊匹配,即如果該當前畫面是一個幀內(nèi),即“I-”畫面,則上述過程將對于當前宏數(shù)據(jù)塊的實際像素執(zhí)行(即不相對于任何其它畫面中的像素提取差值),并且該宏數(shù)據(jù)塊被指定為一個“幀內(nèi)”宏數(shù)據(jù)塊。
針對所有的MPEG-2預測模式,運動估計的基礎技術包括把當前宏數(shù)據(jù)塊與固定畫面中的16×16像素陣列比較,根據(jù)指定度量估計匹配的質量,并且針對定位在該搜索范圍之內(nèi)的這種16×16像素陣列的每一個重復該過程。執(zhí)行這種搜索的硬件或軟件被通常稱為“搜索引擎”,并且存在若干用于確定該匹配質量的熟知判據(jù)。在這些判據(jù)當中最熟知的是最小絕對誤差(MAE),其中的搜索度量包括在該宏數(shù)據(jù)塊中的256個像素的每一個與在該匹配固定畫面宏數(shù)據(jù)塊中的對應像素的差值的絕對值取和;以及最小平方誤差(MSE),其中該度量包括上述像素差值的平方的取和。不論那種狀況,具有對應于取和的最小值的匹配被選擇作為在規(guī)定搜索范圍之內(nèi)的最佳匹配,并且相對于該當前宏數(shù)據(jù)塊的水平和垂直位置因此構成該運動矢量。然而如果該產(chǎn)生的最小取和被認為太大,則不存在針對該當前宏數(shù)據(jù)塊的適當匹配,而其被作為一個幀內(nèi)宏數(shù)據(jù)塊編碼。為本發(fā)明的目的,可用上述兩個判據(jù)的任一個或任何其它適當?shù)呐袚?jù)。
各種快速檢索算法僅以該搜索區(qū)域之內(nèi)的該候選運動矢量位置的一個預定子集估算該失真函數(shù)(例如MAE函數(shù)),從而減小了總體計算工作量。這些算法是以一種假設為基礎,即在該最佳匹配預測的方向上該失真測量是單調減少的。即使這種假設并不總是真實的,但是仍然能夠用少得多的計算找到一個次最佳的運動矢量。
解決運動估計最通常的方法是通常分成若干處理步驟的一個混合近似法。首先,能夠通過像素平均抽取該圖像。隨后,對于小數(shù)目的像素執(zhí)行快速檢索算法操作,產(chǎn)生一個接近最佳匹配的結果。隨后,圍繞一個較小搜索區(qū)域執(zhí)行獲得運動矢量的一個全檢索算法。如果要求半像素矢量(如利用MPEG-2),則作為一個單獨步驟或與有限的全部搜索結合執(zhí)行一個半像素搜索。
即使在運動估計的混合近似法中能夠實現(xiàn)很大的計算節(jié)省,但是為了計算MAE的每一迭代仍然必須執(zhí)行巨量計算。假定對于每一數(shù)據(jù)塊偏移都必須計算每一時鐘周期的失真函數(shù),其失真函數(shù)在要求應用例如其中運動數(shù)據(jù)塊尺寸是16×16的MPEG-2HDTV中是所希望的,則一個失真函數(shù)計算單元(DFCU)將包括若干從8(被用于運動判斷的8比特亮度數(shù)據(jù))開始增加比特寬度的簡單電路,以便產(chǎn)生MAE。該數(shù)字將等于下面的取和256每一DFCU的以8開始增加比特寬度的總數(shù)為757個電路,256個減法電路、256個絕對值計算電路、255個增加比特寬度的累加電路。
根據(jù)畫面清晰度,對于一個實際系統(tǒng)來說需要若干這樣的極端復雜的單元。在一個DFCU內(nèi)部使用較小數(shù)目的電路以便重復使用其硬件是可能的,但是這將實質上增加處理時間,并且在例如HDTV的提出的應用中可能是不可接受的。在此情況中,不得不簡單地增加DFCU的數(shù)量以便通過增強的并行處理做補償。
在實現(xiàn)運動估計的混合近似法(粗略搜索)中的第一步驟通常是硬件利用考慮的最需要的步驟,因為該步驟必須覆蓋最大的搜索區(qū)域以便產(chǎn)生相當精確的匹配。
根據(jù)上述內(nèi)容,當前在本專業(yè)中存在的一種需要是用于運動估計的一種方法,其能夠增強執(zhí)行運動估計的速度,大大地降低運動估計或要求執(zhí)行運動估計的DFCU硬件的總量和復雜性,并且以合理的代價提供顯著的圖像質量的改善。本發(fā)明人在序列號為09,287161的美國申請(1999年,4月6日提交,我們的參考號碼為PHA 23.652)公開了該運動估計方法,標題是“使用正交取和數(shù)據(jù)塊匹配的運動估計方法”,產(chǎn)生小得多的數(shù)據(jù)總量,為了標識最佳匹配,該總量的數(shù)據(jù)必須被比較,并且通過借助于比較唯一的宏數(shù)據(jù)塊符號、而不是借助比較當前宏數(shù)據(jù)塊和搜索區(qū)域中的排列像素的分別的亮度值而搜索最佳匹配,實現(xiàn)該運動估計搜索引擎中的一種實質上的降低。但是,該發(fā)明的方法不直接解決加速該運動估計查找過程的問題。
本發(fā)明的一個目的是提供一個改進的運動估計。為此目的,本發(fā)明提供了一種在獨立的權利要求中定義的一種方法和一個運動估計搜索引擎。在從屬權利要求中定義了有益的實施例。
本發(fā)明的一個方面的方法與裝置直接地用于解決由于多方面再使用針對該基準圖像搜索區(qū)域中的宏數(shù)據(jù)塊計算的正交取和而產(chǎn)生的問題,以便在單一嘗試中產(chǎn)生多個高質量的運動判斷搜索結果。
本發(fā)明包含一種用于確定在第一畫面中的第一個像素陣列和在基準圖像的一個搜索區(qū)域中的多個第二像素陣列之間的一個最佳匹配的方法,其中第一和第二像素陣列包括單個像素值的多行R和多列C。
從下面結合附圖的詳細描述,將容易地理解本發(fā)明的其它目的、特點和優(yōu)點,其中
圖1是一個基準圖像的搜索區(qū)域中的9×9像素陣列的通用結構的示意圖;圖2A是描述由圖1中描述的9×9像素陣列包含的一個8×8像素陣列的通用結構和像素編號結構的示意圖;圖2B是描述一個8×8像素陣列的位置和結構的示意圖,其起源是圖1描述的9×9像素陣列的坐標R1,C1定位的像素;圖2C是描述一個8×8像素陣列的位置和結構的示意圖,其起源是圖1描述的9×9像素陣列的坐標R1,C2定位的像素;圖2D是描述一個8×8像素陣列的位置和結構的示意圖,其起源是圖1描述的9×9像素陣列的坐標R2,C1定位的像素;圖2E是描述一個8×8像素陣列的位置和結構的示意圖,其起源是圖1描述的9×9像素陣列的坐標R2,C2定位的像素;圖3A是根據(jù)本發(fā)明最佳實施例的運動估計方法描述針對圖1中示出9×9像素陣列的一組局部水平取和SH1-SH9的示意圖;圖3B是根據(jù)本發(fā)明最佳實施例的運動估計方法描述針對圖1中示出9×9像素陣列的一組局部垂直取和SV1-SV9的示意圖;圖3C是根據(jù)本發(fā)明最佳實施例的運動估計方法的示意圖,示出適當?shù)匕严袼刂底蠡蛴蚁嗉拥揭粋€局部水平取和的原理,以便計算用于在圖1描述的9×9像素陣列之內(nèi)的一個給定的8×8像素陣列的全部水平取和;圖3D是根據(jù)本發(fā)明最佳實施例的運動估計方法的示意圖,示出適當?shù)匕严袼刂瞪匣蛳孪嗉拥揭粋€局部垂直取和的原理,以便計算用于在圖1描述的9×9像素陣列之內(nèi)的一個給定的8×8像素陣列的全部垂直取和;和圖4是構成本發(fā)明一個最佳實施例的運動估計搜索引擎的方框圖。
總的來說,本發(fā)明的運動估計方法通常包括下列步驟。
首先,按照美國申請序列號09/287161公開的方式,通過計算表示宏數(shù)據(jù)塊行的單個像素值的取和的一組水平取和以及表示該宏數(shù)據(jù)塊列的分別像素值取和的第一組垂直取和,計算當前被編碼的宏數(shù)據(jù)塊的一個全正交取和符號。該公開的美國申請在此處被用作參考。
其次,計算用于包含基準圖像的搜索區(qū)域中的多個基準像素陣列的各像素陣列的多個局部正交取和符號,該多個局部正交取和符號的每一個包括表示該基準像素陣列各個陣列之一的多行M的各像素值的取和的一組局部水平取和以及表示該基準像素陣列各個陣列之一的多列N的各像素值的取和的一組局部垂直取和,其中M<R并且N<C。
第三,使用該多個局部正交取和符號計算用于多個基準像素陣列各個陣列之一的多個全正交取和符號。最終,當前被編碼的該宏數(shù)據(jù)塊的全正交取和符號與該基準像素陣列的全正交取和符號的每一個比較,以便確定在該宏數(shù)據(jù)塊以及該基準像素陣列之間的最佳匹配。
在當前最佳實施例中,N=C-1并且M=R-1,并且該局部水平取和的組表示包含在容括全部基準像素陣列的一個(C+1)×(R+1)像素陣列的R+1行的N列中的取和,而局部垂直取和的組表示該(C+1)×(R+1)像素陣列的C+1列M行中包含的各像素值的取和。該R+1行和該C+1列總共包括擁有全部該基準像素陣列的該(C+1)×(R+1)像素陣列,并且該M行和N列是在該(C+1)×(R+1)像素陣列的中心。將被理解,C可以等于或不等于R,而M可以等于或不等于N。
使用一個規(guī)定的最佳匹配搜索度量,例如一個最小絕對誤差(MAE)搜索度量執(zhí)行該比較步驟,雖然本發(fā)明不局限于這種或任何其它特定的實施方案。
當前被編碼的宏數(shù)據(jù)塊和基準像素陣列的每一個構成抽取或未抽取的宏數(shù)據(jù)塊,具有由MPEG標準,例如MPEG-2標準定義的一個結構。而且,如在下文詳細描述的那樣,本發(fā)明的運動估計方法最好在一個數(shù)字視頻編碼器的運動估計搜索引擎中執(zhí)行,例如在一個MPEG-2數(shù)字視頻編碼器的運動估計搜索引擎中執(zhí)行。
提供多個局部正交取和符號的步驟最好通過首先計算每一個局部水平取和以及每一個局部垂直取和、然后把該計算的局部水平及垂直取和存儲在該運動估計搜索引擎的一個存儲器中執(zhí)行,而計算多個全正交取和符號的步驟的執(zhí)行最好通過針對每一個第二像素陣列,通過適當?shù)匕褋碜栽揗行的上或下的(C+1)×(R+1)像素陣列的一個選定行的像素值加到每一局部垂直取和而計算一組全垂直取和;以及針對每一個第二像素陣列,通過適當?shù)匕褋碜栽谠揘列上或下的(C+1)×(R+1)像素陣列的一個選定列的像素值加到每一局部水平取和而計算一組全水平取和。最好這兩個計算子步驟同時地執(zhí)行。
參考圖1、2A-2E和3A-3D描述本發(fā)明的運動估計方法的一個最佳實施例。首先應該認識到,雖然本發(fā)明描述的是8×8宏數(shù)據(jù)塊,但是本發(fā)明當然并不局限于任何特定的數(shù)據(jù)塊尺寸或結構。該8×8宏數(shù)據(jù)塊的描述僅是用于說明本發(fā)明的原理的。
更具體地說,圖1中能夠見到的是描述定位在基準圖像的一個規(guī)定搜索區(qū)域中的一個9×9像素陣列的通用結構的示意圖。該9×9像素陣列9個列C1-C9,以及9個行R1-R9。如將在下面描述的那樣,具有圖2A中描述的結構以及像素編號構形的四個分別的基準8×8像素陣列(即基準宏數(shù)據(jù)塊)被包含(或容括)在該9×9像素陣列中,如圖1中以方框標記×指示的各9×9像素陣列,具有源以R1-C1、R1-C2、R2-C1、以及R2-C2的像素坐標。起源是R1-C1的基準8×8像素陣列在圖2B中描述起源是R1-C2的基準8×8像素陣列在圖2C中描述;起源是R2-C1的基準8×8像素陣列在圖2D中描述;以及,起源是R2-C2的基準8×8像素陣列在圖2E中描述。
如將被在下文中詳細描述的那樣,根據(jù)本發(fā)明最佳實施例的運動估計方法,使用在一個存儲器中的存儲預先估計的局部水平取和以及局部垂直取和同時地計算四個單獨的基準8×8像素陣列的每一個的全正交取和符號,然后這四個基準8×8像素陣列的全正交取和符號被同時地與當前被編碼的該宏數(shù)據(jù)塊的全正交取和符號比較,以便根據(jù)例如規(guī)定的搜索度量,例如最小絕對誤差(MAE),確定這四個基準8×8像素陣列的哪一個最佳匹配該當前編碼的宏數(shù)據(jù)塊。當然,本發(fā)明并不局限于基準像素陣列的任何特定數(shù)目,例如比四個基準像素陣列或多或少的正交取和符號差能夠被同時地計算,然后根據(jù)本發(fā)明的原理而同時地與當前編碼的該宏數(shù)據(jù)塊的正交取和符號比較,從而在單一傳送(嘗試)中同時地執(zhí)行多個運動估計。
現(xiàn)在參考圖3A-3D,一組局部水平取和SH1-SH9(圖3A)和一組局部垂直取和SV1-SV9(圖3B)被計算,并且最好隨后存儲在該運動估計搜索引擎內(nèi)部的一個存儲器中。該局部水平取和SH1-SH9表示圖1中描述的9×9像素陣列的九個分別的行R1-R9中定位的中間七列C2-C8的分別的像素(亮度)值的取和。該局部垂直取和SV1-SV9表示圖1中描述的9×9像素陣列的九個單獨的行C1-C9中定位的中間七行R2-R8的單獨的像素(亮度)值的取和。容易理解,局部水平取和SH1-SH8對于起源為R1-C1和R1-C2(圖2B和2C中分別描述)的兩個基準8×8像素陣列是共同的,并且局部水平取和SH2-SH9對于起源為R2-C1和R2-C2(圖2D和2E中分別描述)的兩個基準8×8像素陣列是共同的;并且,局部垂直取和SV1-SV8對于起源為R1-C1和R2-C1(圖2B和2D中分別描述)的兩個基準8×8像素陣列是共同的,并且局部垂直取和SV2-SV9對于起源為R1-C2和R2-C2(圖2C和2E中分別描述)的兩個基準8×8像素陣列是共同的。
隨后,如圖3C中示意地示出,只通過把局部水平取和SH1-SH9的左或右的像素值適當?shù)丶拥皆摼植克饺『蚐H1-SH9,就能夠容易地計算用于四個單獨的基準8×8像素陣列的每一行的全水平取和;并且,如圖3D中示意地示出,只通過把局部垂直取和SV1-SV9的上或下的像素值適當?shù)丶拥皆摼植看怪比『蚐V1-SV9,就能夠容易地計算用于四個單獨的基準8×8像素陣列的每一列的全垂直取和。
針對分別四個基準8×8像素陣列(即產(chǎn)生的基準像素陣列的正交取和符號)每一個產(chǎn)生的完全的水平和垂直取和組能因此同時地與當前被編碼的宏數(shù)據(jù)塊的正交取和符號比較,以便確定四個基準像素陣列的哪一個構成最佳匹配。被發(fā)現(xiàn)構成該最佳匹配的基準像素陣列能因此被選擇,用于在該運動估計搜索引擎中進一步處理。因此,利用本發(fā)明的最佳實施例,四個基準像素陣列的每一個的完全正交取和符號能夠利用通過廣泛地反復使用這四個基準像素陣列共用的局部水平和局部垂直取和而計算的一個最小值同時地計算,并且能夠以單一嘗試(傳送)確定構成與當前被編碼的宏數(shù)據(jù)塊最佳匹配的該基準像素陣列之一,用于進一步的處理。
現(xiàn)在參考圖4,示出用于實現(xiàn)本發(fā)明運動估計方法的最佳實施例的運動估計搜索引擎20的一個方框圖。如所見,搜索引擎20包括計算邏輯和存儲器22,計算及存儲該局部水平取和SH1-SH9以及局部垂直取和SV1-SV9。局部水平取和SH1-SH9和局部垂直取和SV1-SV9被作為輸出提供,以及定位在坐標R1C1-R9C1、R1C2-R1C8、R9C2-R9C8和R1C9-R9C9的分別的像素值以兩個分別的輸出提供。多個加法器25用于把各像素值R1C1-R9C1、R1C2-R1C8、R9C2-R9C8和R1C9-R9C9適當之一添加到局部水平取和SH1-SH9和局部垂直取和SV1-SV9的適當之一,以便產(chǎn)生將要與當前被編碼的宏數(shù)據(jù)塊(“編碼宏數(shù)據(jù)塊”)比較的四個基準像素陣列每一個全水平取和組以及全垂直取和組。
具體地說,將看到用于圖2B中描述的基準像素陣列(即起源是R1-C1)的該全水平取和是R1C1+SH1、R2C1+SH2、R3C1+SH3、R4C1+SH4、R5C1+SH5、R6C1+SH6、R7C1+SH7、以及R8C1+SH8。這些全水平取和在圖4中標記為“HOR.SUMS LEFT1”。類似地,圖2B中描述的用于該基準像素陣列的全垂直取和是R1C1+SV1、R1C2+SV2、R1C3+SV3、R1C4+SV4、R1C5+SV5、R1C6+SV6、R1C7+SV7、以及R1C8+SV8。這些全垂直取和在圖4中標記為“VSUMS UP1”。以類似的方式計算針對其它三個基準像素陣列的全水平以及垂直取和。
具體地說,用于圖2C中描述的基準像素陣列(即起源是R1-C2)的該全水平取和是R1C9+SH1、R2C9+SH2、R3C9+SH3、R4C9+SH4、R5C9+SH5、R6C9+SH6、R7C9+SH7、以及R8C9+SH8。這些全水平取和在圖4中標記為“HSUMSRGHT1”。類似地,圖2C中描述的用于該基準像素陣列的全垂直取和是R1C2+SV2、R1C3+SV3、R1C4+SV4、R1C5+SV5、R1C6+SV6、R1C7+SV7、R1C8+SV8、以及R1C9+SV9。這些全垂直取和在圖4中標記為“VSUMS UP2”。
用于圖2D中描述的基準像素陣列(即起源是R2-C1)的該全水平取和是R2C1+SH2、R3C1+SH3、R4C1+SH4、R5C1+SH5、R6C1+SH6、R7C1+SH7、R8C1+SH8、以及R9C1+SH9。這些全水平取和在圖4中標記為“HSUMS LFT2”。類似地,圖2D中描述的用于該基準像素陣列的全垂直取和是R9C1+SV1、R9C2+SV2、R9C3+SV3、R9C4+SV4、R9C5+SV5、R9C6+SV6、R9C7+SV7、以及R9C8+SV8。這些全垂直取和在圖4中標記為“VSUMS DWN1”。
用于圖2E中描述的基準像素陣列(即起源是R2-C2)的該全水平取和是R2C9+SH2、R3C9+SH3、R4C9+SH4、R5C9+SH5、R6C9+SH6、R7C9+SH7、R8C9+SH8、以及R9C9+SH9。這些全水平取和在圖4中標記為“HSUMS RGHT2”。類似地,圖2E中描述的用于該基準像素陣列的全垂直取和是R9C2+SV2、R9C3+SV3、R9C4+SV4、R9C5+SV5、R9C6+SV6、R9C7+SV7、R9C8+SV8、以及R9C9+SV9。這些全垂直取和在圖4中標記為“VSUMS DWN2”。
繼續(xù)參考圖4,構成起源是R1-C1的基準像素陣列的正交的取和(即正交取和符號)的“HSUMS LFT 1”和“VSUMS UP1”被作為輸入加到第一MAE計算電路(“計算MAE1”)27,其以另一輸入端接收對應的當前編碼的宏數(shù)據(jù)塊(即“編碼宏數(shù)據(jù)塊”)的正交取和(即正交取和符號)。構成起源是R1-C2的基準像素陣列的正交的取和(即正交取和符號)的“HSUMS RGHT1”和“VSUMS UP2”被作為輸入加到第二MAE計算電路(“計算MAE2”)29,其以另一輸入端接收該編碼宏數(shù)據(jù)塊的對應的正交的取和(即正交的取和符號)。構成起源是R2-C1的基準像素陣列的正交的取和(即正交取和符號)的“HSUMS LFT2”和“VSUMSDWN1”被作為輸入加到第三MAE計算電路(“計算MAE3”)31,其以另一輸入端接收對應的該編碼宏數(shù)據(jù)塊(即“編碼宏數(shù)據(jù)塊”)的正交取和(即正交取和符號)。構成起源是R2-C2的基準像素陣列的正交的取和(即正交取和符號)的“HSUMSRGHT2”和“VSUMSDWN2”被作為輸入加到第四MAE計算電路(“計算MAE3”)33,其以另一輸入端接收對應的該編碼宏數(shù)據(jù)塊(即“編碼宏數(shù)據(jù)塊”)的正交取和(即正交取和符號)。
繼續(xù)參考圖4,將容易地理解,MAE計算電路27、29、31和33把分別基準像素陣列的正交取和符號與編碼宏數(shù)據(jù)塊的正交取和符號比較,然后計算各MAE(和/或任何其它適當?shù)氖д婧瘮?shù)/檢索度量)。由于MAE計算電路27、29、31和33并行排列,所以它們同時地操作計算該分別的MAE。最終,一個選擇電路35(標記“選擇四個的最佳”)接收由MAE計算電路27、29、31和33輸出的MAE(MAE1-MAE4),并且選擇最低的一個作為該最佳值,以及輸出結果供該運動估計處理中進一步使用。
本發(fā)明最佳實施例的運動估計搜索引擎20以單一嘗試(傳送)同時地把在定位(基準)畫面中的四個宏數(shù)據(jù)塊位置(基準像素陣列)的正交取和與該編碼宏數(shù)據(jù)塊的正交取和比較,以便根據(jù)指定的搜索度量(在此情況中是MAE)確定這四個基準像素陣列的哪一個包括該最佳匹配。當然,如在前已經(jīng)表明的那樣,本發(fā)明并不局限于基準像素陣列的任何特定數(shù)目,例如比四個基準像素陣列或多或少的正交取和符號差能夠被同時地計算,然后根據(jù)本發(fā)明的原理而同時地與當前編碼的該宏數(shù)據(jù)塊的正交取和符號比較,從而在單一傳送(嘗試)中同時地執(zhí)行多個運動估計。而且,應該認識到本發(fā)明的這種方法僅要求在該運動估計搜索過程開始時利用該局部正交取和寫入該存儲器一次,從而以在此之前描述的方式在該運動估計搜索引擎水平和垂直搜索時廣泛地反復使用該存儲的局部正交取和。
如前所述,DFCU的計算復雜性是運動估計電路(搜索引擎)造價的主要因素。但是,由于本發(fā)明的運動估計方法提供在DFCU的造價和復雜性方面的顯著降低,因此使得以未抽取或低級抽取的視頻信號開始進行運動估計搜索成為更加實際,從而極大改進了運動估計的搜索精確度,并且最終改進圖像質量。在此連接方式中,本發(fā)明的運動估計方法不僅實現(xiàn)運動估計級在數(shù)量上的降低,而且避免了對于全部刪除抽取級所需的特殊視頻濾波電路。利用這種硬件的節(jié)省,該搜索處理有可能以未抽取的視頻開始而以合理的造價獲得大的質量改善。
以本發(fā)明的運動估計方法實現(xiàn)的另一優(yōu)點是極大地提高運行速度。傳統(tǒng)上,為了比較配置的亮度幅值需要多級邏輯,實際地排除了以單一時鐘周期獲得結果的可能性。為此原因,或是不得不實際上把系統(tǒng)時鐘頻率降低,或是系統(tǒng)不得不流水線地使用實際邏輯資源。本發(fā)明的運動估計方法允許在單一時鐘周期中容易地實現(xiàn)同時/并行地計算多個正交取和,從而由于對應于在基準圖像的搜索區(qū)域中的基準像素陣列的多個(例如四個)的多個對應MAE(例如四個)的同時/并行計算,而極大降低MAE的計算時間。
除了這些優(yōu)點之外,本發(fā)明使用前面引用序列號為09/287161的美國申請公開的正交取和數(shù)據(jù)塊匹配而極大加速該運動估計方法。
而且本發(fā)明實現(xiàn)了勝過當前可用技術的三個顯著的特點由于正交取和計算的硬件共享而實質上減少硬件;在使用高共享硬件的單一搜索步驟中同時地判斷多個(例如4個)宏數(shù)據(jù)塊位置X。與視頻抽取相比,這種實現(xiàn)的X倍的加速不會危害搜索質量;和,能夠使用本發(fā)明的運動估計方法和裝置執(zhí)行全部搜索運動估計算法。
雖然在此之前已經(jīng)詳細描述了本發(fā)明的最佳實施例,但是應該清楚地理解,本專業(yè)的技術人員在所附的權利要求書定義的本發(fā)明基本構思指教的范圍中能夠進行許多變化和/或修改。
在權利要求書中,在圓括號之間的任何標號不應解釋為限制該權利要求。單詞’包括’不排除在權利要求中所列出之外的另一單元或步驟的存在。本發(fā)明能夠利用若干不同的單元硬件實現(xiàn)以及利用適當?shù)某绦蚩刂朴嬎銠C實現(xiàn)。在裝置權利要求列舉的若干裝置中,若干這些裝置能夠由同一個硬件項實現(xiàn)。在互不相同的從屬權利要求中引用措施的事實并不表明這些措施的組合不能被優(yōu)化使用。
總之,提供一個確定(20)在第一畫面中的第一個像素陣列和在基準圖像的一個搜索區(qū)域中的多個第二像素陣列之間的一個最佳匹配的方法,其中第一和第二像素陣列包括分別像素值的多行R和多列C。該方法包括步驟提供(22)第一像素陣列的第一全正交取和符號,包括該第一像素陣列的行的分別像素值總數(shù)的一組水平取和以及該第一像素陣列的列的分別像素值總數(shù)的第一組垂直取和;提供(22)用于多個第二像素陣列分別之一的多個局部正交取和符號,多個局部正交取和符號的每一個包括表示該第二像素陣列分別之一的多行M的分別像素值的取和的一組局部水平取和以及表示該第二像素陣列分別之一的多列N的分別像素值的取和的一組局部垂直取和,其中M<R及N<C;使用該多個局部正交取和符號,同時地計算(25)用于多個第二像素陣列各個陣列之一的多個第二全正交取和符號。以及,把第一全正交取和符號與第二全正交取和符號的每一個比較(27、29、31、33),以便確定在第一和第二像素陣列之間的最佳匹配。
權利要求
1.一種用于確定在第一畫面中的第一個像素陣列和在基準圖像的一個搜索區(qū)域中的多個第二像素陣列之間的一個最佳匹配的方法,其中第一和第二像素陣列包括各像素值的多行R和多列C,該方法包括步驟提供第一像素陣列的第一全正交取和符號,包括該第一像素陣列的行的各像素值總數(shù)的一組水平取和以及該第一像素陣列的列的各像素值總數(shù)的第一組垂直取和;提供用于多個第二像素陣列各陣列之一的多個局部正交取和符號,多個局部正交取和符號的每一個包括表示該第二像素陣列各陣列之一的多行M的各像素值的取和的一組局部水平取和以及表示該第二像素陣列各陣列之一的多列N的各像素值的取和的一組局部垂直取和,其中M<R及N<C,以及其中R可以等于或不等于C,而M可以等于或不等于N;使用該多個局部正交取和符號,計算用于該多個第二像素陣列各陣列之一的多個第二全正交取和符號;以及,把第一全正交取和符號與第二全正交取和符號的每一個比較,以便確定在第一和第二像素陣列之間的最佳匹配。
2.按照權利要求1的方法,其中N=C-1而M=R-1。
3.按照權利要求2的方法,其中該局部水平取和的組表示包含在容括全部第二像素陣列的一個(C+1)X(R+1)像素陣列的R+1行的N列的取和,而局部垂直取和的組表示該(C+1)×(R+1)像素陣列的C+1列的M行中包含的分別像素值的取和;該R+1行和C+1列總共地包括擁有全部第二像素陣列的該(C+1)×(R+1)像素陣列;和,該M行和N列是以該(C+1)×(R+1)像素陣列為中心的。
4.按照權利要求1的方法,其中的提供多個局部正交取和符號的步驟是通過首先計算每一個局部水平取和以及每一個局部垂直取和、然后把計算的局部水平和垂直取和存儲在一個存儲器中執(zhí)行的。
5.按照權利要求3的方法,其中計算多個第二全正交取和符號的步驟的執(zhí)行是通過針對每一個第二像素陣列,通過適當?shù)匕言谠揗行的上或下的(C+1)×(R+1)像素陣列的一個選定行的像素值加到每一局部垂直取和而計算一組全垂直取和;和針對每一個第二像素陣列,通過適當?shù)匕言谠揘列上或下的(C+1)×(R+1)像素陣列的一個選定列的像素值加到每一局部水平取和而計算一組全水平取和。
6.按照權利要求5的方法,其中針對每一個第二像素陣列的計算一組全垂直取和的子步驟以及針對每一個第二像素陣列的計算一組全水平取和的子步驟被同時地執(zhí)行。
7.按照權利要求1的方法,其中使用多個局部正交取和符號計算用于多個第二像素陣列分別之一的多個第二全正交取和符號的步驟是與計算該第二全正交取和符號的每一個同時地執(zhí)行。
8.按照權利要求3的方法,其中使用多個局部正交取和符號計算用于多個第二像素陣列分別之一的多個第二全正交取和符號的步驟是與計算該第二全正交取和符號的每一個同時地執(zhí)行。
9.一種用于確定在第一畫面中的第一個像素陣列和在基準圖像的一個搜索區(qū)域中的多個第二像素陣列之間的一個最佳匹配的運動估計搜索引擎,其中第一和第二像素陣列包括各像素值的多行R和多列C,該運動估計搜索引擎包括提供第一像素陣列的第一全正交取和符號的電路,該第一全正交取和符號包括該第一像素陣列的行的分別像素值總數(shù)的一組水平取和以及該第一像素陣列的列的分別像素值總數(shù)的第一組垂直取和;提供用于多個第二像素陣列分別之一的多個局部正交取和符號的電路,多個局部正交取和符號的每一個包括表示該第二像素陣列各陣列之一的多行M的各像素值的取和的一組局部水平取和以及表示該第二像素陣列各陣列之一的多列N的各像素值的取和的一組局部垂直取和,其中M<R及N<C,以及其中R可以等于或不等于C,而M可以等于或不等于N;使用該多個局部正交取和符號,計算用于該多個第二像素陣列各陣列之一的多個第二全正交取和符號的電路;以及,把第一全正交取和符號與第二全正交取和符號的每一個比較的電路,以便確定在第一和第二像素陣列之間的最佳匹配。
10.按照權利要求9的運動估計搜索引擎,其中第一和第二像素陣列的每一個是具有由MPEG標準定義的一個結構的宏數(shù)據(jù)塊。
11.按照權利要求10的運動估計搜索引擎,其中計算多個第二全正交取和符號的電路的操作是針對每一個第二像素陣列,通過適當?shù)匕言谠揗行的上或下的(C+1)×(R+1)像素陣列的一個選定行的像素值加到每一局部垂直取和而計算一組全垂直取和;以及,針對每一個第二像素陣列,通過適當?shù)匕言谠揘列上或下的(C+1)×(R+1)像素陣列的一個選定列的像素值加到每一局部水平取和而計算一組全水平取和。
12.按照權利要求9的運動估計搜索引擎,其中計算多個第二全正交取和符號的電路的操作將同時地計算第二全正交取和符號的每一個。
全文摘要
提供一個確定(20)在第一畫面中的第一個像素陣列和在基準圖像的一個搜索區(qū)域中的第二像素陣列之間的最佳匹配的方法。該方法包括步驟:提供(22)包括一組水平取和以及第一組垂直取和的第一像素陣列的第一全正交取和符號;提供(22)用于多個第二像素陣列各陣列之一的多個局部正交取和符號;使用該多個局部正交取和符號,同時地計算(25)用于多個第二像素陣列各陣列之一的多個第二全正交取和符號。以及,把第一全正交取和符號與第二全正交取和符號的每一個比較(27、29、31、33),以便確定在第一和第二像素陣列之間的最佳匹配。
文檔編號H04N7/32GK1314051SQ00801039
公開日2001年9月19日 申請日期2000年4月4日 優(yōu)先權日1999年4月6日
發(fā)明者M·巴克穆特斯基 申請人:皇家菲利浦電子有限公司