TWI451767B - 視訊編碼系統、移動估算裝置及移動估算方法 - Google Patents
視訊編碼系統、移動估算裝置及移動估算方法 Download PDFInfo
- Publication number
- TWI451767B TWI451767B TW099117084A TW99117084A TWI451767B TW I451767 B TWI451767 B TW I451767B TW 099117084 A TW099117084 A TW 099117084A TW 99117084 A TW99117084 A TW 99117084A TW I451767 B TWI451767 B TW I451767B
- Authority
- TW
- Taiwan
- Prior art keywords
- candidate search
- search
- motion vector
- candidate
- path
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/567—Motion estimation based on rate distortion criteria
Description
本發明係與視訊編碼有關,特別地,係關於一種不需利用複雜的乘法運算即能迅速地估算出對應於不同候選搜尋位置之移動向量成本函數的視訊編碼系統、移動估算裝置及其運作方法。
於視訊編碼系統(video encoding system)中,移動估算(motion estimation)技術係用以決定視訊串流中之一張影像相對於其鄰近影像的移動向量(motion vector)。於許多視訊編碼系統(例如與H.264或MPEG-4協定相容的系統)中,通常會採用移動估算法來協助找出不同畫面間的相依性,進而達到影像壓縮或畫面內容分析等應用。
一般而言,目前的影像處理技術主要係透過區塊比對找出最適當的移動向量,來表示某一欲比對的區域(比對視窗)在兩個不同畫面之間的相對位移。請參閱圖一(A),圖一(A)繪示先前技術中移動向量V的示意圖。如圖一(A)所示,移動向量V可以用來表示,先前畫面與目前畫面之間,對應特定區塊的水平及垂直位移的向量(如圖一中的向量V)。於實際應用中,最常使用的區塊匹配差異(block-matching discrepancy)計算方式為計算絕對值差之和(Sum of Absolute Differences,SAD)。
於各種移動向量的估算方法中,移動向量成本函數(motion vector cost function)算是一種較佳的估算方法,其公式如下:
移動向量成本函數=A×(mvbits[cx-px]+mvbits[cy-py])
其中A為比例因子(scaling factor);[cx,cy]為候選搜尋位置(search candidate)之移動向量;[px,py]為預估位置(predictor)之移動向量;mvbits[cx-px]為上述兩移動向量之x方向分量差的位元估算值;mvbits[cy-py]則為上述兩移動向量之y方向分量差的位元估算值。以mvbits[k]為例,其位元數與|k|之間的對應關係如圖一(B)所示。
請參照圖一(C),圖一(C)係繪示傳統的移動向量成本函數產生器之電路架構。如圖一(C)所示,移動向量成本函數產生器3包含第一減法單元30、第二減法單元31、第一移動向量位元估算單元32、第二移動向量位元估算單元33、加法單元34及乘法單元35。
首先,第一減法單元30根據候選搜尋位置之移動向量[cx,cy]的x分量cx與預估位置之移動向量[px,py]的x分量px計算兩者之差值[cx-px];第二減法單元31根據候選搜尋位置之移動向量[cx,cy]y分量cy與預估位置之移動向量[px,py]的y分量py計算兩者之差值[cy-py]。接著,第一移動向量位元估算單元32根據[cx-px]而計算移動向量位元mvbits[cx-px];以及第二移動向量位元估算單元33根據[cy-py]而計算移動向量位元mvbits[cy-py]。之後,加法單元34將mvbits[cx-px]與mvbits[cy-py]相加而得到(mvbits[cx-px]+mvbits[cy-py])。最後,乘法單元35再將比例因子A與(mvbits[cx-px]+mvbits[cy-py])相乘而得到所求的移動向量成本函數。
然而,上述傳統的移動向量成本函數產生器3的電路架構之缺點在於必須藉由高階乘法單元35進行複雜的乘法運算,因而導致時間限制以及邏輯閘數增加等問題。
因此,本發明實施例提供一種視訊編碼系統、移動估算裝置及其運作方法,以解決上述問題。
本發明之第一具體實施例為一種移動估算裝置。於此實施例中,該移動估算裝置係應用於一視訊編碼系統中。該移動估算裝置包含一第一計算模組及一第二計算模組。當移動估算之計算沿著一搜尋路徑自一第一候選搜尋位置(x1
,y1
)移動至一第二候選搜尋位置(x2
,y2
)時,該第一計算模組根據對應於該搜尋路徑之一搜尋路徑資訊估算出一第一移動向量成本差值。該第二計算模組根據一預設規則選擇性地將一原始移動向量成本值加上或減去該第一移動向量成本差值,以得到對應於該第二候選搜尋位置(x2
,y2
)之一第一移動向量成本值。x1
及x2
分別為該第一候選搜尋位置及該第二候選搜尋位置所對應的水平軸座標值;y1
及y2
分別為該第一候選搜尋位置及該第二候選搜尋位置所對應的垂直軸座標值。
本發明之第二具體實施例為一種移動估算之計算方法。於此實施例中,該方法係應用於一視訊編碼系統中。當移動估算之計算沿著一搜尋路徑自一第一候選搜尋位置(x1
,y1
)移動至一第二候選搜尋位置(x2
,y2
)時,根據對應於該搜尋路徑之一搜尋路徑資訊估算出一第一移動向量成本差值。根據一預設規則選擇性地將一原始移動向量成本值加上或減去該第一移動向量成本差值,以得到對應於該第二候選搜尋位置(x2
,y2
)之一第一移動向量成本值。x1
及x2
分別為該第一候選搜尋位置及該第二候選搜尋位置所對應的水平軸座標值;y1
及y2
分別為該第一候選搜尋位置及該第二候選搜尋位置所對應的垂直軸座標值。
綜上所述,由於本發明實施例之移動估算裝置並不需藉由複雜的乘法運算即可迅速且準確地估算出移動向量成本函數,故能夠有效避免先前技術所遭遇到之時間限制、邏輯閘數增加及移動估算效率不佳等問題,尤其是當該移動估算裝置同時進行多個候選搜尋位置之移動估算時,其提升移動估算效率之效果更為顯著。
關於本發明實施例之優點與精神可以藉由以下的發明詳述及所附圖式得到進一步的瞭解。
本發明實施例提出一種不需藉由複雜的乘法運算即能迅速地估算出對應於不同候選搜尋位置之移動向量成本函數的視訊編碼系統、移動估算裝置及其運作方法。
本發明之第一具體實施例為一種移動估算裝置。於此實施例中,該移動估算裝置係運用於一視訊編碼系統中。請參照圖二,圖二係繪示該移動估算裝置之功能方塊圖。如圖二所示,移動估算裝置1包含資訊提供模組10、第一計算模組12、第二計算模組14、第三計算模組16及儲存模組18。其中,資訊提供模組10係耦接至第一計算模組12、第二計算模組14及儲存模組18;第一計算模組12及第二計算模組14均耦接至第三計算模組16。
於此實施例中,當移動估算之計算尚未從第一候選搜尋位置(x1
,y1
)沿著一搜尋路徑開始進行之前,第一計算模組12將會先計算對應於第一候選搜尋位置(x1
,y1
)之原始移動向量成本值MVC0
。如圖三(A)所示,假設對應於第一候選搜尋位置(x1
,y1
)之移動向量表示為[cx0
,cy0
]且對應於預估位置之移動向量表示為[px,py],資訊提供模組10提供[cx0
,cy0
]、[px,py]及比例因子A至第一計算模組12,使得第一計算模組12能夠根據該些資訊計算得到原始移動向量成本值MVC0
。
值得注意的是,為了改善先前技術採用高階乘法器進行複雜的乘法運算,導致時間限制以及邏輯閘數增加等問題,第一計算模組12係藉由包含複數個加法單元的累加器來計算出原始移動向量成本值MVC0
,並未採用高階乘法器進行複雜的乘法運算,藉以有效地節省電路元件的成本。
請參照圖三(B),圖三(B)係繪示第一計算模組12的詳細功能方塊圖。如圖三(B)所示,第一計算模組12包含移動向量位元產生器120、加法器122及累加器124。移動向量位元產生器120包含第一減法器1200、第二減法器1202、第一移動向量位元估算單元1204及第二移動向量位元估算單元1206;累加器124包含複數個加法單元。
當第一減法器1200接收到cx0
及px時,第一減法器1200將cx0
及px相減後傳送至第一移動向量位元估算單元1204,第一移動向量位元估算單元1204再據以產生第一移動向量位元;當第二減法器1202接收到cy0
及py時,第二減法器1202將cy0
及py相減後傳送至第二移動向量位元估算單元1206,第二移動向量位元估算單元1206再據以產生第二移動向量位元。接著,當加法器122分別自第一移動向量位元估算單元1204及第二移動向量位元估算單元1206接收到第一移動向量位元及第二移動向量位元時,加法器122將第一移動向量位元與第二移動向量位元相加後傳送至累加器124,透過本身的複數個加法單元,累加器124可算出加法器122的加法結果乘以比例因子A之計算結果。
於此需說明的是,雖然第一計算模組12計算原始移動向量成本值MVC0
時,仍需將加法器122的加法結果乘以比例因子A,然而,由於比例因子A為一常數,故第一計算模組12並不需透過高階乘法器進行複雜的乘法運算,相反地,可藉由累加器124所包含的複數個加法單元即可實現將加法器122的加法結果乘以一常數的簡單運算,進而求得原始移動向量成本值MVC0
。
當第一計算模組12計算出對應於第一候選搜尋位置(x1
,y1
)之原始移動向量成本值MVC0
後,移動估算之計算即可開始沿著該搜尋路徑依序分別對沿途經過的各個候選搜尋位置進行。當然,在移動估算之計算開始進行之前,該搜尋路徑需先被決定,以利後續的移動估算。實際上,該搜尋路徑可以是系統預設值或由使用者所設定。
假設移動估算之計算係由第一候選搜尋位置(x1
,y1
)沿著該搜尋路徑移動至第二候選搜尋位置(x2
,y2
),且對應於第二候選搜尋位置(x2
,y2
)之移動向量表示為[cx1
,cy1
]。如圖三(C)所示,資訊提供模組10提供[cx1
,cy1
]、[px,py]以及對應於該搜尋路徑的搜尋路徑資訊給第二計算模組14。藉此,第二計算模組14即可根據該些資訊計算出第一移動向量成本差值△MVC1
。根據本發明實施例,在進行搜尋掃瞄的過程中,由於在移動估算之計算中,每一次移動的距離通常不會很大(例如一個像素),且通常為水平方向或垂直方向的移動。因此,第二計算模組14計算第一移動向量成本差值△MVC1
的負荷量並不大,故可有效節省系統運算資源。
接著,如圖三(D)所示,由於第一計算模組12已經計算出對應於第一候選搜尋位置(x1
,y1
)之原始移動向量成本值MVC0
,並且第二計算模組14已經計算出第一移動向量成本差值△MVC1
,因此,第三計算模組16對MVC0
與△MVC1
進行計算以得到對應於第二候選搜尋位置(x2
,y2
)之移動向量成本值MVC1
。值得注意的是,第三計算模組16係根據一預設規則而選擇性地將MVC0
加上或減去△MVC1
以得到MVC1
,並且該預設規則係由第三計算模組16根據該搜尋路徑資訊所估算出第一候選搜尋位置(x1
,y1
)與該第二候選搜尋位置(x2
,y2
)之間的座標值差異所決定。亦即該預設規則有關於兩搜尋位置之x座標差(x2
-x1
)及y座標差(y2
-y1
)為正或負。
接下來,將就第二計算模組14如何根據[cx1
,cy1
]、[px,py]以及對應於該搜尋路徑的搜尋路徑資訊計算第一移動向量成本差值△MVC1
進行更深入的探討。請參照圖四,圖四係繪示第二計算模組14之詳細功能方塊圖。如圖四所示,第二計算模組14包含第一多工器140、x分量處理器141、y分量處理器142、第二多工器143、加法器144、移動向量位元估算單元145、減法器146及移動向量成本差值計算單元147。
於此實施例中,第一多工器140係用以接收資訊提供模組10所輸入的對應於預估位置之移動向量[px,py]以及搜尋路徑資訊,並輸出[px,py]至移動向量位元估算單元145。至於資訊提供模組10所輸入的對應於第二候選搜尋位置(x2
,y2
)之移動向量[cx1
,cy1
],其x分量cx1
與y分量cy1
分別經過x分量處理器141及y分量處理器142之處理後,將會被傳送至第二多工器143,而第二多工器143輸出MV1
[cx1
,cy1
]至移動向量位元估算單元145。第二多工器143與移動向量位元估算單元145之間設置有加法器144,用以根據搜尋路徑資訊於MV1
加入一位移量(displacement),使其根據實際移動情形變成MV1
'。實際上,MV1
'可能是[cx1
',cy1
]、[cx1
,cy1
']或[cx1
',cy1
'],端視不同的搜尋路徑中的每一步移動距離大小而定。舉例而言,若搜尋路徑為蛇行路徑,則MV1
'應為[cx1
',cy1
]或[cx1
,cy1
'];若搜尋路徑為鑽石形狀路徑,則MV1
'可能為[cx1
',cy1
']。
接著,移動向量位元估算單元145分別根據不同的MV1
及MV1
'而產生第一移動向量位元及第二移動向量位元。之後,減法器146再將第二移動向量位元減去第一移動向量位元以產生移動向量位元差值。最後,移動向量成本差值計算單元147根據該移動向量位元差值計算得到第一移動向量成本差值△MVC1
。
此外,關於上述搜尋路徑之型式並無一定之限制,如圖五(A)至圖五(C)所示,搜尋路徑之型式可以是蛇行路徑(serpentine path)(圖五(A))、螺旋狀路徑(spiral path)(圖五(B))或鑽石形狀路徑(diamond path)(圖五(C)),但不以此為限。實際上,這些具有不同型式的搜尋路徑及其相對應的搜尋路徑資訊(例如搜尋路徑沿途經過的所有搜尋位置及搜尋順序等)可儲存於儲存模組18中。當第二計算模組14需要這些資訊以進行運算時,資訊提供模組10從儲存模組18存取所需之資訊以提供給第二計算模組14。
接下來,將以採用蛇行搜尋路徑對一畫面上的所有像素進行搜尋掃瞄之一實際例子作為說明。請參照圖六(A)及圖六(B),圖六(A)及圖六(B)係繪示透過蛇行搜尋路徑進行搜尋掃瞄之示意圖。如圖六(A)所示,假設比對區域(比對視窗)為圖中斜線部分且預估位置之座標為(0,0),搜尋路徑係由第一候選搜尋位置(-2,-2)開始依照(-2,-1)、(-2,0)、…、(-2,4)、(-1,4)、(-1,3)、…之順序一直蛇行搜尋至(4,4)為止。
當移動估算之計算還未真正從(-2,-2)沿著搜尋路徑開始進行之前,第一計算模組12將會先根據[cx0
,cy0
]、[px,py]及比例因子A計算對應於(-2,-2)之原始移動向量成本值MVC0
。
於此例中,[cx0
,cy0
]=[-2,-2]且[px,py]=[0,0]。接著,當移動估算之計算沿著搜尋路徑由(-2,-2)移動至(-2,-1)時,第二計算模組14根據[cx1
,cy1
]、[px,py]以及對應於該搜尋路徑的搜尋路徑資訊計算出第一移動向量成本差值△MVC1
。於此例中,[cx1
,cy1
]=[-2,-1]且[px,py]=[0,0],亦即僅有cy1
與cy0
不同,而cx1
則與cx0
相同,故第二計算模組14不必透過複雜的運算即可求出△MVC1
。之後,第三計算模組16即可根據預設規則選擇性地將MVC0
加上或減去△MVC1
以得到MVC1
。於此例中,由於移動估算之計算自(-2,-2)移動至(-2,-1)時,y1
-y0
=(-1)-(-2)=1>0,代表移動估算之計算於y方向上係往正方向移動,故第三計算模組16將會將MVC0
加上△MVC1
以得到MVC1
。同理,移動估算之計算沿著搜尋路徑由(-2,-1)移動至(-2,0)時之情形亦類似,在此不另行贅述。
如圖六(B)所示,當移動估算之計算持續沿著搜尋路徑欲由(-2,4)移動至(-1,4)時,情況會有所不同。假設於前一步驟所得到對應於(-2,4)之移動向量成本為MVC6
且[cx6
,cy6
]=[-2,4],第二計算模組14即會根據[cx7
,cy7
]、[px,py]以及對應於該搜尋路徑的搜尋路徑資訊計算出第七移動向量成本差值△MVC7
。於此例中,[cx7
,cy7
]=[-1,4]且[px,py]=[0,0],亦即cx7
與cx6
不同,而cy7
則與cy6
相同,故第二計算模組14不必透過複雜的運算即可求出△MVC7
。之後,第三計算模組16即可根據預設規則選擇性地將MVC6
加上或減去△MVC7
以得到MVC7
。於此例中,由於移動估算之計算自(-2,4)移動至(-1,4)時,x7
-x6
=(-1)-(-2)=1>0,代表移動估算之計算於x方向上係往正方向移動,故第三計算模組16將會將MVC6
加上△MVC7
以得到MVC7
。
於實際應用中,根據本發明實施例之移動估算裝置除了可以應用於如同上述實施例之整數像素的移動估算(Integer Motion Estimation,IME)外,亦可應用於分數像素的移動估算(Factional Motion Estimation,FME)的情況。舉例而言,如圖六(C)所示,於分數像素的移動估算中,候選搜尋位置可分成中央位置C、1/2候選搜尋位置H及1/4候選搜尋位置Q。若移動估算裝置係位於中央位置C,則移動估算之計算可透過一次移動而移動至該些1/2候選搜尋位置H。至於該些1/4候選搜尋位置Q,移動估算之計算需透過兩次移動才能從中央位置C移動至該些1/4候選搜尋位置Q,抑或是透過一次移動從該些1/2候選搜尋位置H移動至該些1/4候選搜尋位置Q。
本發明第二具體實施例為一種移動估算之計算方法。於此實施例中,該方法係應用於一視訊編碼系統中。請參照圖七,圖七係繪示該移動估算計算方法之流程圖。如圖七所示,首先,於步驟S10中,當移動估算之計算尚未開始進行之前,該方法將會先計算對應於第一候選搜尋位置(x1
,y1
)之原始移動向量成本值MVC0
。實際上,MVC0
係根據對應於第一候選搜尋位置之移動向量[cx0
,cy0
]、對應於預估位置之移動向量[px,py]以及比例因子A等計算而得。值得注意的是,為了改善先前技術採用高階乘法器進行複雜的乘法運算,導致時間限制以及邏輯閘數增加等問題,該方法可藉由累加器所包含的複數個加法單元,以實現簡單乘法運算,進而求得原始移動向量成本值MVC0
,並未直接採用複雜的乘法運算。
接著,於步驟S11中,移動估算之計算開始沿著一搜尋路徑自一第一候選搜尋位置(x1
,y1
)移動至一第二候選搜尋位置(x2
,y2
)。然後,該方法執行步驟S12,根據對應於該搜尋路徑之一搜尋路徑資訊而估算出一第一移動向量成本差值△MVC1
。實際上,第一移動向量成本差值△MVC1
係根據搜尋路徑資訊、對應於第二候選搜尋位置(x2
,y2
)之移動向量[cx1
,cy1
]以及對應於預估位置之移動向量[px,py]所估算出來。x1
及x2
分別為該第一候選搜尋位置及該第二候選搜尋位置所對應的水平軸座標值;y1
及y2
分別為該第一候選搜尋位置及該第二候選搜尋位置所對應的垂直軸座標值。
實際上,該搜尋路徑可以是一蛇行路徑、一螺旋狀路徑或一鑽石形狀路徑,並可為系統預設值或由使用者所設定,並無一定之限制。於此實施例中,假設該搜尋路徑依序經過第一候選搜尋位置(x1
,y1
)、第二候選搜尋位置(x2
,y2
)及第三候選搜尋位置(x3
,y3
),且該搜尋路徑資訊包含第一候選搜尋位置(x1
,y1
)、第二候選搜尋位置(x2
,y2
)及第三候選搜尋位置(x3
,y3
)之座標值。
接著,於步驟S13中,該方法根據一預設規則選擇性地將原始移動向量成本值MVC0
加上或減去第一移動向量成本差值△MVC1
,以得到對應於第二候選搜尋位置(x2
,y2
)之移動向量成本值MVC1
。於實際應用中,該預設規則有關於該第一候選搜尋位置(x1
,y1
)與該第二候選搜尋位置(x2
,y2
)之間的座標值差異,亦即該預設規則有關於兩搜尋位置之x座標差(x2
-x1
)及y座標差(y2
-y1
)為正或負。
在計算出對應於第二候選搜尋位置(x2
,y2
)之移動向量成本值MVC1
後,於步驟S14中,判斷第二候選搜尋位置是否為搜尋路徑之終點。若步驟S14的判斷結果為是,代表移動估算之計算已移動至搜尋路徑之終點,故整個移動估算之計算程序已完成;若步驟S14的判斷結果為否,該方法執行步驟S15,移動估算之計算自第二候選搜尋位置(x2
,y2
)繼續沿著該搜尋路徑移動至第三候選搜尋位置(x3
,y3
)。
於步驟S16,根據搜尋路徑資訊估算出一第二移動向量成本差值△MVC2
。x3
及y3
分別為該第三候選搜尋位置所對應的水平軸座標值及垂直軸座標值。於步驟S17中,根據該預設規則選擇性地將對應於第二候選搜尋位置(x2
,y2
)之移動向量成本值MVC1
加上或減去第二移動向量成本差值△MVC2
,以得到對應於第三候選搜尋位置(x3
,y3
)之一第二移動向量成本值MVC2
。
接下來,該方法將會判斷第三候選搜尋位置是否為搜尋路徑之終點,若判斷結果為否,代表搜尋路徑尚未結束,該方法即會重複上述步驟,直至整個搜尋路徑之移動估算的計算工作完成為止。藉此,透過該方法即能得到對應於搜尋路徑中之每個候選搜尋位置的移動向量成本值,進而可據以判斷出具有最低移動向量成本值之候選搜尋位置。
綜上所述,由於本發明實施例之移動估算裝置並不需藉由高階乘法器進行複雜的乘法運算,即可迅速且準確地估算出移動向量成本函數,故能夠有效避免先前技術所遭遇到之時間限制、邏輯閘數增加及移動估算效率不佳等問題。尤其是當移動估算裝置同時進行多個候選搜尋位置之移動估算時,其提升移動估算效率之效果更為顯著。此外,由於移動估算裝置在搜尋掃瞄過程中每一次移動的距離通常不大且大多為水平或垂直方向的移動,因此,移動估算裝置計算移動向量成本差值的負荷量並不大,故可有效節省系統運算資源。
藉由以上較佳具體實施例之詳述,係希望能更加清楚描述本發明之特徵與精神,而並非以上述所揭露的較佳具體實施例來對本發明之範疇加以限制。相反地,其目的是希望能涵蓋各種改變及具相等性的安排於本發明所欲申請之專利範圍的範疇內。
S10~S17...流程步驟
1...移動估算裝置
10...資訊提供模組
12...第一計算模組
14...第二計算模組
16...第三計算模組
18...儲存模組
30...第一減法單元
31...第二減法單元
34...加法單元
35...乘法單元
3...移動向量成本函數產生器
32...第一移動向量位元估算單元
33...第二移動向量位元估算單元
140...第一多工器
141...x分量處理器
142...y分量處理器
143...第二多工器
122、144...加法器
145...移動向量位元估算單元
146...減法器
147...移動向量成本差值計算單元
V...移動向量
MVC0
...原始的移動向量成本值
A...比例因子
△MVC1
...第一移動向量成本差值
C...中央位置
H...1/2候選搜尋位置
Q...1/4候選搜尋位置
[px,py]...對應於預估位置之移動向量
[cx,cy]...候選搜尋位置之移動向量
[cx0
,cy0
]...對應於第一候選搜尋位置(x1
,y1
)之移動向量
[cx1
,cy1
]...對應於第二候選搜尋位置(x2
,y2
)之移動向量
MVC1
...對應於第二候選搜尋位置(x2
,y2
)之移動向量成本值
120...移動向量位元產生器
124...累加器
1200...第一減法器
1202...第二減法器
1204...第一移動向量位元估算單元
1206...第二移動向量位元估算單元
圖一(A)係繪示先前技術中移動向量V的示意圖;圖一(B)係繪示mvbits[k]之位元數與|k|之間的對應關係;圖一(C)係繪示傳統的移動向量成本函數產生器之電路架構。
圖二係繪示根據本發明之第一具體實施例的移動估算裝置之功能方塊圖。
圖三(A)係繪示資訊提供模組與第一計算模組之間的資訊傳遞情形;圖三(B)係繪示第一計算模組的詳細功能方塊圖;圖三(C)係繪示資訊提供模組與第二計算模組之間的資訊傳遞情形;圖三(D)係繪示第一計算模組、第二計算模組與第三計算模組之間的資訊傳遞情形。
圖四係繪示第二計算模組之詳細功能方塊圖。
圖五(A)~圖五(C)係繪示不同型式的搜尋路徑。
圖六(A)及圖六(B)係繪示透過蛇行搜尋路徑進行搜尋掃瞄之示意圖;圖六(C)係繪示分數像素移動估算之一範例。
圖七係繪示根據本發明之第二具體實施例之移動估算裝置運作方法的流程圖。
1...移動估算裝置
10...資訊提供模組
12...第一計算模組
14...第二計算模組
16...第三計算模組
18...儲存模組
Claims (11)
- 一種移動估算裝置(motion estimation apparatus),應用於一視訊編碼系統(video encoding system)中,該移動估算裝置包含:一第一計算模組,當一移動估算之計算沿著一搜尋路徑(search path)自一第一候選搜尋位置(x1,y1)移動至一第二候選搜尋位置(x2,y2)時,該第一計算模組根據對應於該搜尋路徑之一搜尋路徑資訊估算出一第一移動向量成本差值(differential motion vector cost);以及一第二計算模組,耦接至該第一計算模組,用以根據一預設規則選擇性地將一原始移動向量成本值加上或減去該第一移動向量成本差值,以得到對應於該第二候選搜尋位置(x2,y2)之一第一移動向量成本值;其中,x1及x2分別為該第一候選搜尋位置及該第二候選搜尋位置所對應的水平軸座標值,y1及y2分別為該第一候選搜尋位置及該第二候選搜尋位置所對應的垂直軸座標值;該預設規則有關於該第一候選搜尋位置(x1,y1)與該第二候選搜尋位置(x2,y2)之間的座標值差異;以及該第一候選搜尋位置(x1,y1)與該第二候選搜尋位置(x2,y2)之間的座標值差異係根據該搜尋路徑資訊所估算出來。
- 如申請專利範圍第1項所述之移動估算裝置,進一步包含:一第三計算模組,耦接至該第一計算模組及該第二計算模組,該第三計算模組包含僅由加法器所構成的一累加器,用以計 算對應於該第一候選搜尋位置(x1,y1)之該原始移動向量成本值。
- 如申請專利範圍第1項所述之移動估算裝置,其中:該搜尋路徑係一蛇行路徑(serpentine path)、一螺旋狀路徑(spiral path)或一鑽石形狀路徑(diamond path)。
- 如申請專利範圍第1項所述之移動估算裝置,其中:當移動估算之計算自該第二候選搜尋位置(x2,y2)繼續沿著該搜尋路徑移動至一第三候選搜尋位置(x3,y3)時,該第一計算模組根據該搜尋路徑資訊估算出一第二移動向量成本差值,該第二計算模組根據該預設規則選擇性地將該第一移動向量成本值加上或減去該第二移動向量成本差值,以得到對應於該第三候選搜尋位置(x3,y3)之一第二移動向量成本值,x3及y3分別為該第三候選搜尋位置所對應的水平軸座標值及垂直軸座標值,該預設規則係和該第二候選搜尋位置(x2,y2)與該第三候選搜尋位置(x3,y3)之間的座標值差異有關。
- 如申請專利範圍第4項所述之移動估算裝置,其中:該搜尋路徑資訊包含該搜尋路徑依序經過的該第一候選搜尋位置(x1,y1)、該第二候選搜尋位置(x2,y2)及該第三候選搜尋位置(x3,y3)之座標值。
- 如申請專利範圍第4項所述之移動估算裝置,更包含:一儲存模組,用以儲存該搜尋路徑資訊。
- 一種計算一移動估算之方法,該方法係應用於一視訊編碼系統中,該方法包含下列步驟:當移動估算之計算沿著一搜尋路徑自一第一候選搜尋位置(x1,y1)移動至一第二候選搜尋位置(x2,y2)時,根據對應於該搜尋路徑之一搜尋路徑資訊估算出一第一移動向量成本差值;以及根據一預設規則選擇性地將一原始移動向量成本值加上或減去該第一移動向量成本差值,以得到對應於該第二候選搜尋位置(x2,y2)之一第一移動向量成本值;其中x1及x2分別為該第一候選搜尋位置及該第二候選搜尋位置所對應的水平軸座標值;y1及y2分別為該第一候選搜尋位置及該第二候選搜尋位置所對應的垂直軸座標值;以及該預設規則係和該第一候選搜尋位置(x1,y1)與該第二候選搜尋位置(x2,y2)之間的座標值差異有關。
- 如申請專利範圍第7項所述之方法,其中:該原始移動向量成本值對應於該第一候選搜尋位置(x1,y1)並且該原始移動向量成本值係由僅包含加法器所構成的一累加器運算而得。
- 如申請專利範圍第7項所述之方法,其中:該搜尋路徑係一蛇行路徑、一螺旋狀路徑或一鑽石形狀路徑。
- 如申請專利範圍第7項所述之方法,更包含下列步驟: 當移動估算之計算自該第二候選搜尋位置(x2,y2)繼續沿著該搜尋路徑移動至一第三候選搜尋位置(x3,y3)時,根據該搜尋路徑資訊估算出一第二移動向量成本差值;以及根據該預設規則選擇性地將該第一移動向量成本值加上或減去該第二移動向量成本差值,以得到對應於該第三候選搜尋位置(x3,y3)之一第二移動向量成本值;其中x3及y3分別為該第三候選搜尋位置所對應的水平軸座標值及垂直軸座標值,該預設規則係和該第二候選搜尋位置(x2,y2)與該第三候選搜尋位置(x3,y3)之間的座標值差異有關。
- 如申請專利範圍第10項所述之方法,其中:該搜尋路徑資訊包含該搜尋路徑依序經過的該第一候選搜尋位置(x1,y1)、該第二候選搜尋位置(x2,y2)及該第三候選搜尋位置(x3,y3)之座標值。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW099117084A TWI451767B (zh) | 2010-05-27 | 2010-05-27 | 視訊編碼系統、移動估算裝置及移動估算方法 |
US13/017,780 US8917770B2 (en) | 2010-05-27 | 2011-01-31 | Motion estimation apparatus and motion estimation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW099117084A TWI451767B (zh) | 2010-05-27 | 2010-05-27 | 視訊編碼系統、移動估算裝置及移動估算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201143449A TW201143449A (en) | 2011-12-01 |
TWI451767B true TWI451767B (zh) | 2014-09-01 |
Family
ID=45022117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099117084A TWI451767B (zh) | 2010-05-27 | 2010-05-27 | 視訊編碼系統、移動估算裝置及移動估算方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8917770B2 (zh) |
TW (1) | TWI451767B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI493476B (zh) * | 2014-01-02 | 2015-07-21 | Mstar Semiconductor Inc | 影像處理電路與方法 |
US10204449B2 (en) * | 2015-09-01 | 2019-02-12 | Siemens Healthcare Gmbh | Video-based interactive viewing along a path in medical imaging |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200519774A (en) * | 2003-09-30 | 2005-06-16 | Intel Corp | Rectangular-shape motion search |
US20050135484A1 (en) * | 2003-12-18 | 2005-06-23 | Daeyang Foundation (Sejong University) | Method of encoding mode determination, method of motion estimation and encoding apparatus |
TW200635378A (en) * | 2005-03-21 | 2006-10-01 | Pixart Imaging Inc | Improved diamond search and dynamic estimation method |
TW200727710A (en) * | 2005-12-15 | 2007-07-16 | Analog Devices Inc | Motion estimation using prediction guided decimated search |
TW201008295A (en) * | 2008-08-07 | 2010-02-16 | Acer Inc | Method for vedio coding |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080126278A1 (en) * | 2006-11-29 | 2008-05-29 | Alexander Bronstein | Parallel processing motion estimation for H.264 video codec |
-
2010
- 2010-05-27 TW TW099117084A patent/TWI451767B/zh not_active IP Right Cessation
-
2011
- 2011-01-31 US US13/017,780 patent/US8917770B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200519774A (en) * | 2003-09-30 | 2005-06-16 | Intel Corp | Rectangular-shape motion search |
US20050135484A1 (en) * | 2003-12-18 | 2005-06-23 | Daeyang Foundation (Sejong University) | Method of encoding mode determination, method of motion estimation and encoding apparatus |
TW200635378A (en) * | 2005-03-21 | 2006-10-01 | Pixart Imaging Inc | Improved diamond search and dynamic estimation method |
TW200727710A (en) * | 2005-12-15 | 2007-07-16 | Analog Devices Inc | Motion estimation using prediction guided decimated search |
TW201008295A (en) * | 2008-08-07 | 2010-02-16 | Acer Inc | Method for vedio coding |
Also Published As
Publication number | Publication date |
---|---|
US8917770B2 (en) | 2014-12-23 |
US20110293011A1 (en) | 2011-12-01 |
TW201143449A (en) | 2011-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7252282B2 (ja) | 画像予測方法および関連装置 | |
KR101393048B1 (ko) | 이미지들의 수퍼 해상도를 위한 방법 및 장치 | |
JP5044568B2 (ja) | 予測誘導間引き探索を使用する動き推定 | |
EP1917573B1 (en) | A displacement and tilt detection method for a portable autonomous device having an integrated image sensor and a device therefor | |
CN108573269B (zh) | 图像特征点匹配方法、匹配装置、电子设备及存储介质 | |
EP2377324A1 (en) | One step sub-pixel motion estimation | |
JP2010288110A (ja) | 画像処理装置および画像処理方法 | |
JP6394876B2 (ja) | 符号化回路、符号化方法 | |
WO2011020647A1 (en) | Method and apparatus for estimation of interframe motion fields | |
US20060285597A1 (en) | Reusing interpolated values in advanced video encoders | |
TWI451767B (zh) | 視訊編碼系統、移動估算裝置及移動估算方法 | |
TWI444049B (zh) | 畫面估測系統及其估測方法 | |
JP2011010297A (ja) | 誤差絶対値和の推定システム及び推定方法 | |
JPWO2012066866A1 (ja) | 動きベクトル検出装置、動きベクトル検出方法、フレーム補間装置及びフレーム補間方法 | |
CN102263944B (zh) | 视频编码系统、移动估算装置及移动估算的计算方法 | |
CN103618904B (zh) | 基于像素的运动估计方法及装置 | |
Kovačević et al. | Block-matching correlation motion estimation for frame-rate up-conversion | |
CN112422976B (zh) | 一种视频编码标准中的亮度分量运动补偿方法及视频编码方法 | |
TWI283133B (en) | Method for estimating motion of video coding | |
JP2005253015A (ja) | 動きベクトル検出装置、動きベクトル検出方法、及びプログラム | |
JP6390275B2 (ja) | 符号化回路、符号化方法 | |
WO2012028480A1 (en) | Global motion vector estimation | |
Kim et al. | Probabilistic global motion estimation based on Laplacian two-bit plane matching for fast digital image stabilization | |
TWI493977B (zh) | 影像搜尋模組及其方法 | |
JP4160855B2 (ja) | ブロックマッチング画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |