運動檢測電路與方法
【技術(shù)領域】
[0001]本發(fā)明涉及一種視頻裝置,且特別涉及一種運動檢測電路與方法。
【背景技術(shù)】
[0002]在現(xiàn)代生活中,人們可藉由顯示器觀賞不同視頻內(nèi)容。為了節(jié)省傳輸頻寬和/或存儲空間,所述視頻內(nèi)容可能被事先壓縮過。播放器中的視頻解碼器可以將經(jīng)壓縮視頻數(shù)據(jù)(視頻串流)進行解壓縮,以便呈現(xiàn)所述視頻內(nèi)容給使用者。在解壓縮的過程中,視頻解碼器需要對經(jīng)壓縮視頻數(shù)據(jù)進行運動檢測。由于視頻解碼器從經(jīng)壓縮視頻數(shù)據(jù)所獲得的信息相當少,使得運動檢測正確性難以提高。
【發(fā)明內(nèi)容】
[0003]本發(fā)明提供一種視頻解碼器的運動檢測電路與運動檢測方法,使用經(jīng)壓縮視頻數(shù)據(jù)的信息進行運動檢測。
[0004]本發(fā)明的實施例提供一種視頻解碼器的運動檢測電路,其包括運動向量(mot1nvector)過濾單元以及運動向量決定單元。運動向量過濾單元接收該視頻解碼器所提供目前視頻巾貞中多個宏塊(macro-block)的運動向量。運動向量過濾單元依照這些宏塊中的目前宏塊的該運動向量與空間上相鄰宏塊的運動向量之間的關(guān)系,或依據(jù)該目前宏塊的該運動向量與時間上相鄰宏塊的運動向量之間的關(guān)系,來決定是否濾除該目前宏塊的該運動向量而獲得該目前宏塊的一第一經(jīng)過濾信息。運動向量決定單元的輸入端耦接至該運動向量過濾單元的輸出端以接收該第一經(jīng)過濾信息,并依據(jù)該第一經(jīng)過濾信息決定該目前宏塊是否為一運動宏塊。
[0005]本發(fā)明的實施例提供一種視頻解碼器的運動檢測方法,包括:接收該視頻解碼器所提供一目前視頻幀中多個宏塊的運動向量;依照這些宏塊中的目前宏塊的該運動向量與這些宏塊中空間上相鄰宏塊的運動向量之間的關(guān)系,或依據(jù)該目前宏塊的該運動向量與時間上相鄰宏塊的運動向量之間的關(guān)系,來決定是否濾除該目前宏塊的該運動向量而獲得該目前宏塊的一第一經(jīng)過濾信息;以及依據(jù)該第一經(jīng)過濾信息決定該目前宏塊是否為一運動宏塊。
[0006]基于上述,本發(fā)明實施例所述視頻解碼器的運動檢測電路與運動檢測方法可以使用經(jīng)壓縮視頻數(shù)據(jù)的信息(運動向量和/或編碼類型信息)進行運動檢測。例如,在一些實施例中,依照一個目前宏塊的運動向量與多個空間上相鄰宏塊的運動向量之間的關(guān)系,或依據(jù)該目前宏塊的運動向量與多個時間上相鄰宏塊的運動向量之間的關(guān)系,所述運動檢測電路與運動檢測方法可以決定該目前宏塊是否為運動宏塊。
[0007]為讓本發(fā)明的上述特征和優(yōu)點能更明顯易懂,下文特舉實施例,并配合附圖作詳細說明如下。
【附圖說明】
[0008]圖1是依照本發(fā)明實施例說明視頻解碼器的一種運動檢測電路的電路方塊示意圖。
[0009]圖2是依照本發(fā)明實施例說明視頻解碼器的運動檢測方法的流程示意圖。
[0010]圖3是依照本發(fā)明實施例說明目前宏塊與空間上相鄰宏塊的示意圖。
[0011]圖4是依照本發(fā)明實施例說明目前宏塊與時間上相鄰宏塊的示意圖。
[0012]圖5是依照本發(fā)明另一實施例說明視頻解碼器的運動檢測電路的電路方塊示意圖。
[0013]圖6是依照本發(fā)明一實施例說明圖5所示運動向量過濾單元的電路方塊示意圖。
[0014]圖7是依照本發(fā)明又一實施例說明視頻解碼器的運動檢測電路的電路方塊示意圖。
[0015]圖8是依照本發(fā)明再一實施例說明視頻解碼器的運動檢測電路的電路方塊示意圖。
[0016]圖9是依照本發(fā)明另一實施例說明視頻解碼器的運動檢測方法的流程示意圖。
[0017]【符號說明】
[0018]10:視頻解碼器
[0019]11:運動向量
[0020]12:編碼類型信息
[0021]100、500、700、800:運動檢測電路
[0022]110、510:運動向量過濾單元
[0023]120、520:運動向量決定單元
[0024]300:目前視頻幀
[0025]511:運動向量空間過濾器
[0026]512:運動向量時間過濾器
[0027]530、750:幀運動檢測器
[0028]730,830:宏塊過濾單元
[0029]740:宏塊類型決定單元
[0030]831:宏塊空間過濾器
[0031]832:宏塊時間過濾器
[0032]AE:報警事件
[0033]MB0、MBl、MB2、MB3、MB4、MBt,x,y、MB(t 1)>x>y:宏塊
[0034]S210 ?S23O、S910 ?S%0:步驟
[0035]VS:經(jīng)壓縮視頻數(shù)據(jù)
【具體實施方式】
[0036]在本申請說明書全文(包括權(quán)利要求書)中所使用的「耦接」一詞可指任何直接或間接的連接手段。舉例而言,若文中描述第一裝置耦接于第二裝置,則應該被解釋成該第一裝置可以直接連接于該第二裝置,或者該第一裝置可以通過其他裝置或某種連接手段而間接地連接至該第二裝置。另外,凡可能之處,在附圖及實施方式中使用相同標號的元件/構(gòu)件/步驟代表相同或類似部分。不同實施例中使用相同標號或使用相同用語的元件/構(gòu)件/步驟可以相互參照相關(guān)說明。
[0037]圖1是依照本發(fā)明實施例說明視頻解碼器(video decoder) 10的一種運動檢測電路100的電路方塊示意圖。視頻解碼器10可以將經(jīng)壓縮視頻數(shù)據(jù)(視頻串流)VS進行解碼,以便從經(jīng)壓縮視頻數(shù)據(jù)(視頻串流)VS中取得目前視頻幀(video frame)中多個宏塊(macro-block, MB)的運動相關(guān)信息,例如運動向量(mot1n vector) 11和/或其他信息。在一些實施例中,視頻解碼器10可以是H.264解碼器、MPEG-4解碼器或是其他解碼器。
[0038]視頻解碼器10可以將這些宏塊的運動向量11輸出給運動檢測電路100。運動檢測電路100可以依據(jù)視頻解碼器10所提供的運動向量11來判斷目前宏塊是否為運動宏塊(mot1n macro-block),進而依據(jù)目前視頻巾貞中被判定為運動宏塊的區(qū)塊數(shù)量來對應發(fā)出報警事件(alarm event)AE。報警事件AE指出目前視頻巾貞是否屬于運動巾貞(mot1nframe)。若目前視頻巾貞中運動宏塊的數(shù)量超過預設閾值(predefined threshold) THl,則此目前視頻幀可以視為運動幀。報警事件AE可以被提供給解壓縮電路(未繪示)和/或其他視頻處理電路。舉例來說,視頻解壓縮器(未繪示)可以依照報警事件AE來對經(jīng)壓縮視頻數(shù)據(jù)(視頻串流)VS進行解壓縮。
[0039]圖2是依照本發(fā)明實施例說明視頻解碼器10的運動檢測方法的流程示意圖。請參照圖1與圖2,運動檢測電路100包括運動向量過濾單元110以及運動向量決定單元120。運動向量過濾單元110在步驟S210中接收視頻解碼器10所提供的運動向量11。在步驟S220中,依照這些宏塊中的一個目前宏塊的運動向量與一個或多個空間上相鄰宏塊(spatialneighboring macro-block)的運動向量之間的關(guān)系,和/或是依據(jù)該目前宏塊的運動向量與一個或多個時間上相鄰宏塊(temporal neighboring macro-block)的運動向量之間的關(guān)系,運動向量過濾單元110可以決定是否濾除該目前宏塊的運動向量來獲得該目前宏塊的第一經(jīng)過濾信息。
[0040]舉例來說,圖3是依照本發(fā)明實施例說明目前宏塊與空間上相鄰宏塊的示意圖。目前視頻幀300包含多個宏塊,例如圖3所示宏塊ΜΒ0、MB1、MB2、MB3與MB4。當該目前宏塊是宏塊MBO時,所述空間上相鄰宏塊則包括直接或間接相鄰接的宏塊。舉例來說,在本實施例中,所述空間上相鄰宏塊可以是于列(column)方向與目前宏塊MBO相鄰接的二相鄰宏塊(即宏塊MBl與宏塊MB2)以及于行(row)方向與目前宏塊MBO相鄰接的二相鄰宏塊(即宏塊MB3與宏塊MB4)。依照目前宏塊MBO的運動向量與空間上相鄰宏塊MBl?MB4的運動向量之間的關(guān)系,運動向量過濾單元110在步驟S220中可以決定是否濾除目前宏塊MBO的運動向量來獲得該目前宏塊MBO的第一經(jīng)過濾信息。
[0041]再舉例來說,圖4是依照本發(fā)明實施例說明目前宏塊與時間上相鄰宏塊的示意圖。在此假設目前視頻幀為第t幀。目前視頻幀(第t幀)包含多個宏塊,例如圖4所示宏塊MBt,x,y。MBt,x,y表示第t個視頻幀中位置X,y的宏塊。當目前宏塊是MBt, x, y時,所述時間上相鄰宏塊則包括前視頻幀(第t-Ι幀)中相同位置x,y的宏塊MB(tl),x,y。依據(jù)目前宏塊MBt,x,y的運動向量與時間上相鄰宏塊MB(t 1)>x>y的運動向量之間的關(guān)系,運動向量過濾單元110在步驟S220中可以決定是否濾除目前宏塊MBt, x,y的運動向量來獲得該目前宏塊MBtjxjy的第一經(jīng)過濾信息。
[0042]請參照圖1與圖2,運動向量決定單元120的輸入端耦接至運動向量過濾單元110的輸出端,以接收該第一經(jīng)過濾信息。依據(jù)該第一經(jīng)過濾信息,運動向量決定單元120在步驟S230中可以決定該目前宏塊是否為運動宏塊。舉例來說,運動向量決定單元120可以依據(jù)所述第一經(jīng)過濾信息與閾值TH2的關(guān)系來決定目前宏塊是否為運動宏塊。當目前宏塊的所述第一經(jīng)過濾信息大于閾值TH2時,運動向量決定單元120在步驟S230中可以決定該目前宏塊為運動宏塊,反之則該目前宏塊為非運動宏塊。運動向量決定單元120可以依據(jù)目前視頻幀中被判定為運動宏塊的區(qū)塊數(shù)量來對應發(fā)出報警事件AE。
[0043]圖5是依照本發(fā)明另一實施例說明視頻解碼器10的運動檢測電路500的電路方塊示意圖。圖5所示視頻解碼器10與運動檢測電路500可以參照圖1所示視頻解碼器10與運動檢測電路100的相關(guān)說明而類推