專利名稱:識別動態(tài)視頻內(nèi)容的方法
技術領域:
本項發(fā)明涉及的是一個識別動態(tài)視頻內(nèi)容的方法,更具體的說,是一個識別動態(tài)視頻內(nèi) 容指紋的方法。
這里所謂的"指紋"是指一系列的點信息(電視接收機解碼器所產(chǎn)生的),而每一個點信 息又都是從電視信號的一幀中選出,而這些幀數(shù)又是從所有電視信號中選出。并且一幀中能 選出一個或者多個點信息數(shù)據(jù)。所以,所謂的"指紋"可用于獨特地識別出所說的電視信號。
背景技術:
本文件詳細描述了視頻內(nèi)容的機制和方法。視頻是最好的將信息傳輸給大眾的辦法。而 今所有的視頻內(nèi)容幾乎都是數(shù)字格式的,從視頻采集、制作、編輯、特效到壓縮和發(fā)布,都 是數(shù)字格式。此外,還有大量的視頻內(nèi)容被越來越多地存儲在DVD、錄像帶、計算機服務器 以及大量儲存序列中。
管理數(shù)字視頻內(nèi)容對所有視頻擁有者來說已經(jīng)成為一項巨大的挑戰(zhàn),視頻和寬帶服務提 供者,甚至是家庭用者。這是因為不像文本信息,視頻內(nèi)容不能被很簡單地就被電腦搜索以 及識別。也不像音頻,視頻內(nèi)容數(shù)據(jù)要占用更大的空間。此外,通過人工參與來識別視頻內(nèi) 容很困難也很低效,因為過程很耗費時間也很難操作。這些因素都使得有效地管理、獲取和 搜索視頻內(nèi)容變得很困難。但是,搜索和識別視頻內(nèi)容的需要越來越重要,伴隨著越來越多 的在網(wǎng)上的寬帶提供以及更低的數(shù)字存儲裝置的成本。
因此,這里有一個用很少或者沒有人工參與來實現(xiàn)有效識別視頻內(nèi)容的需要。
發(fā)明內(nèi)容
本發(fā)明能提供一種識別動態(tài)視頻內(nèi)容,有效管理、歸檔以及搜索視頻內(nèi)容的一種方法。 本發(fā)明還能提供一種識別動態(tài)視頻內(nèi)容的方法,可以降低數(shù)字儲存裝置的成本。 本發(fā)明能提供一種識別動態(tài)視頻內(nèi)容的方法,可以用于從給出的視頻部分中提取信息,
再將這些信息用于進一步地自動識別,如果一樣的視頻內(nèi)容已將在不同的視頻數(shù)據(jù)流中出現(xiàn)過。
因此,在此項發(fā)明中,提供了一種識別動態(tài)視頻內(nèi)容的方法,預先形成一個已存儲的指
紋數(shù)據(jù)庫,包含了播出的視頻內(nèi)容的視頻信號,這里至少包含了以下幾步在一個緩沖器中 存儲連續(xù)的視頻幀序列的動態(tài)視頻內(nèi)容;通過采樣器來獲得視頻幀;把樣本值儲存到指紋中, 也即是指紋A被儲存到指紋數(shù)據(jù)庫中;在指紋數(shù)據(jù)庫的指紋A和余下的指紋部分B之間進行 指紋模型下的匹配演算,來確定動態(tài)視頻內(nèi)容在之前是否播出過。
此項發(fā)明所提供的方法可以有效地管理、歸檔以及搜索視頻內(nèi)容,降低數(shù)字存儲設備的 成本,以及在很少或者無人工參與下有效地識別視頻內(nèi)容。
圖l:從視頻幀進行部分取樣關鍵步驟的示意圖
圖2:至少在與匹配指紋相關的部分,確定原始視頻內(nèi)容A和B是否相同的匹配過程示意圖
圖3:在SSAD值中檢測值明顯減小的關鍵元素示意圖
圖4:在SSAD值中進一步檢測值明顯減小的關鍵元素示意圖
圖5:對視頻幀進行部分取樣的首選方法的示意圖
圖6:對每一幀進行部分取樣的過程示意圖
圖7:樣本值的組織管理過程示意圖
圖8:幾種確定進行部分取樣的視頻幀的數(shù)量的常用方法 圖9:指紋提取的大致過程示意圖
圖10:從兩個視頻幀上取得的樣本之間進行用SAD操作進行指紋匹配演算的過程 圖11:從兩個視頻幀上取得的樣本之間進行匹配的過程 圖12: —系列的SSAD值的生成過程
圖13:指紋匹配的識別的特征在于SSAD值在匹配之前明顯減小,在匹配之后明顯增大
具體實施例方式
以下描述了一個可以用于從給出的視頻內(nèi)容部分提取信息,并運用提取的信息來進一步 識別相同的在不同視頻數(shù)據(jù)流中出現(xiàn)過的視頻內(nèi)容的方法。 正確識別視頻內(nèi)容的性能有很多重要的應用方面。 一下列出了幾個,但不僅限于以下幾個方 面
視頻搜索 視頻監(jiān)控 視頻拼接 視頻切換 視頻廣告
下文中,將首先描述從給出的視頻內(nèi)容數(shù)據(jù)中提取信息,被稱為指紋提取過程。接著會 具體描述怎么運用指紋數(shù)據(jù)在一個不同的視頻內(nèi)容中找到匹配。 在說有的闡述中,會集中在視頻信號的儲存上,雖然在大多數(shù)情況下,視頻信號是與音頻信 號一體進來的。音頻信號會被認為是與視頻信號同步的。在視頻信號上的指紋識別也能識別 相關的音頻內(nèi)容。因此,在此文件余下的部分,會只討論對視頻信號的指紋運作處理。
同時,假設視頻數(shù)據(jù)是數(shù)字化的。也可以將此構想應用于模擬視頻內(nèi)容,但在應用這里 所描述的方法之前需要將模擬視頻信號數(shù)字化成為數(shù)字數(shù)據(jù)流。因此,在此文件中不對怎樣 處理模擬視頻內(nèi)容作具體闡述。
此外,假設數(shù)字視頻內(nèi)容是未被壓縮的格式。對壓縮的視頻內(nèi)容來說,要應用此方法前需要 先解壓縮(或者解碼)。
最后,假設視頻幀是連續(xù)的,也就是說每一幀會在解碼器那里一起顯示。對于隔行顯示 的幀,會在兩個分開的時間點交錯顯示——兩個場(奇偶場)。在這樣的情況下,假設以下所 有描述的運作適用于其中任一一個場。
未壓縮格式的數(shù)字視頻數(shù)據(jù)可以由有時間順序的視頻幀來代表。每一幀都可以被描述為一個二維的像素值序列。每一像素值又能進一步地被分解為亮度和色度兩個組成部分。未來獲取 以及搜索視頻內(nèi)容,我們只使用視頻的亮度像素值。
數(shù)字視頻是由時間連續(xù)的幀組成的,當呈現(xiàn)給人眼時就會顯示成連續(xù)的動態(tài)畫面。首先 描述了從這些視頻幀提取信息的辦法,以便提取的信息可用于識別視頻幀。 進行指紋匹配所需的步驟可以被概括為以下幾點 從視頻A提取指紋數(shù)據(jù)
將從視頻A提取的指紋數(shù)據(jù)整理到一個數(shù)據(jù)中心 從視頻B提取指紋數(shù)據(jù)
在兩個指紋之間進行指紋模式匹配的演算 接下來,我們將具體闡述每一個步驟。
2. 1指紋提取
最簡單的提取指紋的辦法就是把所有的幀都儲存到一個磁盤存儲器里。當然,這個辦法 也有它的缺陷就是要占據(jù)很大的存儲量。此外,很快得檢索出已儲存的視頻幀也很困難,由 于存儲帶寬的限制。
本文件所闡述的方法第一步是對視頻幀進行部分取樣。明確的是,對每一幀視頻來說,進行 了一個空間上的部分取樣,特定數(shù)量的樣本從視頻幀里取得并被存儲為樣本值。關鍵步驟可 以參看圖一
2. 1. 1視頻幀的部分取樣
如圖5所示,這個取樣方法是獨立于每幀的分辨率的,使它在處理不同分辨率的圖片時 也可以很穩(wěn)定。
2.1.2多個視頻幀的部分取樣
這個過程可以參看圖8,第一種辦法需要最少的運算量、內(nèi)存以及存儲。最后一種則需 要最多的運算量、內(nèi)存以及存儲。
每一系列的被取樣的視頻幀都會產(chǎn)生一個連續(xù)的二維樣本值的序列。這個被取樣的序列 就是所謂的被取樣的視頻的指紋。
從以上值得注意的是,取樣方法不不同就可能會有多于一組的指紋序列產(chǎn)生。對于第一 和第三種取樣方法,只有一個指紋。但是第二種取樣方法就可能產(chǎn)生多組指紋序列,每一組 分別識別相關的不同視頻部分。當然,多組指紋數(shù)據(jù)的序列可以被組織管理到一個更加復雜 的指紋序列,這個不在此文件中詳加描述。
接下來,會具體闡釋怎樣處理一個單獨的指紋序列。
2. 2指紋匹配
這個部分描述了指紋提取運作過程的反向運作,也就是來運用一個給出的指紋序列在一 個不同的視頻內(nèi)容流里尋找匹配,可能會部分或者整個匹配指紋所代表的視頻內(nèi)容。
具體內(nèi)容可以參看圖2,兩個指紋存儲會經(jīng)過好幾個步驟來確定它們是個否匹配。 2.2. l絕對差別的求和運算
指紋匹配運算的關鍵就是兩盒指紋之間的絕對差別(Sum of Absolute Difference , SAD)的求和運算。絕對差別的運算是最基本評估樣本之間差別的。SAD值很大的話就意味著兩個 視頻幀之間的圖像內(nèi)容差距很大。具體實例看參看圖10。 2.2.2移動SAD窗口和SAD序列的求和(sum of SAD , SSAD)
以上描述的SAD運算會在兩個指紋數(shù)據(jù)組之間重復進行, 一個從指紋A獲取,另一個從 指紋B中獲取。目標在于在指紋B中進行搜索是否有一個小部分能與指紋A匹配。這里假設 指紋A比指紋B包含更少數(shù)量的樣本。
SSAD具體過程可以參看圖12。 2. 2. 3指紋匹配檢測
SSAD值被表示為S(l), S(2),..., S(n), S (n+1),被存儲到一個模型序列儲存中, 一個 模型提取器檢驗了所有臨近的SSAD值以及得出模型值,表示為P(l), P(2), P(3)…
P(n) = (S(n)-S(n-l))/S(n) 在這里S(n)代表了指紋A和指紋B在指紋窗口中在它們第n幀上的區(qū)別,指數(shù)n指的 是每次指紋序列B被一個相關指紋A移位一幀。這里P(1)沒有被定義也不會被用到,只有當 S(n)的值為零或接近臨界值零時才會用到。否則,P(n)為零。從另一個系列序列中提取的模 型值會被存貯到一個模型存儲中。然后一個模型檢驗器會用以下幾步來選擇模型存儲中的值 首先,在模型存儲中選擇一個具體位置,比如說m,在一個大小是2M-1的窗口中識別出 m的位置
P(m-M+1), P(m-M+2),…,P(m-1), P(m), P(m+1),…,P(m+M-2), P(m+M-1), 接著,這些值會一個模型值搜集器加起來,得出一個結果C(m),公式如下 C(m)=-P(m-M+1)- .. —P(m-1)_P(m)+P (m+1)+. ■+P (m+M-1)
這里M是一個被選出來的常量,以保證在滾動窗口 2M-1中包括了足夠多的P值來計算C值。
最后,C(m)的值會與一個給出了臨界值的用戶視圖進行比較,來確定指紋A和可能的指 紋B是否匹配。還有幀號也是通過以上過程來確定,再輸出到統(tǒng)計分布值采集器中。
權利要求
1.本項發(fā)明是一種識別動態(tài)視頻內(nèi)容的方法,預先形成一個已存儲的指紋數(shù)據(jù)庫,包含了播出的視頻內(nèi)容的視頻信號,這里至少包含了以下幾步在一個緩沖器中存儲連續(xù)的視頻幀序列的動態(tài)視頻內(nèi)容;通過采樣器來獲得視頻幀;把樣本值儲存到指紋中,也即是指紋A被儲存到指紋數(shù)據(jù)庫中;在指紋數(shù)據(jù)庫的指紋A和余下的指紋部分B之間進行指紋模型下的匹配演算,來確定動態(tài)視頻內(nèi)容在之前是否播出過。
2. 根據(jù)權利要求1所述的方法,指紋模型下的演算匹配包含了在指紋A以及每一個可能的指 紋B之間進行絕對差別的求和運算。公式如下SAD(A,B) = lA卜Bll + |A2-B2| + |A3_B3| + |A4-B4| + lA5-B5l+… I…I是絕對值運算從指紋A的第一幀中獲得的樣本被表示為A1,A2, A3, A4, A5,;在滾動窗口中從指 紋B的第一幀中獲得的樣本被表示為Bl, B2, B3, B4, B5,…;然后把在各自來自A和B的 相同位置的幀進行匹配,Aland Bl, A2 and B2,…,A5 and B5,…SAD(絕對差別求和)的操作在樣本的第二幀時在A和B又進行一次,因此,指紋A的每 一幀和可能的指紋B的幀,直到所有的視頻幀數(shù)都被包括在計算中,最后結果被相加得出一 個總的絕對差別和(SSAD)。一樣的過程又被重復,通過交換指紋B和相關指紋A的一幀的位置,這樣的交換每進行 一次就會產(chǎn)生一個新的SSAD值。這樣,就生成了一系列的SSAD值被存儲成一個序列。 一個 指紋匹配的識別意味著SSAD值在匹配之前明顯減小,在匹配之后明顯增大。
3. 根據(jù)權利要求2所述的方法,SSAD值被表示為S(l), S(2),..., S(n), S(n+1),被存儲到 一個模型序列儲存中, 一個模型提取器檢驗了所有臨近的SSAD值以及得出模型值,表示為 P(l), P(2)' P(3)…P(n) = (S(n)-S(n-l))/S(n) 在這里S(n)代表了指紋A和指紋B在指紋窗口中在視頻A和視頻B在第n幀上的區(qū)別, 指數(shù)n指的是指紋序列B每相對于相關的指紋序列A移動一幀。這里P(l)沒有被定義也不會 被用到,只有當S(n)的值為零或接近臨界值零時才會用到。否則,P(n)為零。從另一個系列 序列中提取的模型值會被存貯到一個模型存儲中。然后一個模型檢測器會用以下幾步來選擇 模型存儲中的值首先,在模型存儲中選擇一個具體位置,比如說m,在一個大小是2M-1的窗口中識別出 m的位置P(m-M+1), P(m-M+2),…,P(m-l), P(m), P(m+1),…,P(m+M-2), P(m+M-1), 接著,這些值會一個模型值搜集器加起來,得出一個結果C(m),公式如下C (m) =-P (m-M+l) - .. -P (m-l) -P (m) +P (m+l) +.. +P (m+M-l) 這里M是一個被選出來的常量,以保證在滾動窗口 2M-1中包括了足夠多的P值來計算C值。最后,C(m)的值會與一個給出了臨界值的用戶視圖進行比較,來確定指紋A和可能的指 紋B是否匹配。還有幀的數(shù)量也是通過以上過程來確定,再輸出到統(tǒng)計分布值采集器中。
4. 根據(jù)權利要求3所述的方法,統(tǒng)計分布值采集器集合了所有超出所給出的臨界值的C(m) 模型值,并且計算出其超過的次數(shù),再存儲到一個序列中,每一個圖都包含了一個m值,C(m) 值以及C(m)值超過臨界值的次數(shù)。
5. 根據(jù)權利要求4所述的方法, 一個最大值選擇器會檢察在直方圖當中所有的值,找出出現(xiàn) 次數(shù)最多的那個值。這個值指得就是指紋匹配的幀。
6. 根據(jù)權利要求1所述的方法,樣本值會根據(jù)樣本的視頻亮度來被選擇。
7. 根據(jù)權利要求1所述的方法,樣本值是在每一幀上的同一位置上取得。并且在每一幀上取 得的樣本數(shù)量也是相同的,在哪個位置取得樣本是固定不變的。
8. 根據(jù)權利要求1所述的方法,樣本是從圖像中生成,是為了保證樣本盡量均勻地分布在圖 像里。
9. 根據(jù)權利要求1所述的方法,樣本是位于視頻分辨率的水平以及垂直方向的整數(shù)位置。
10. 根據(jù)權利要求l所述的方法,每一幀取5個樣本值,其中 樣本l是在圖像的中間位置;樣本2是在水平方向中間以及垂直方向的頂端四分之一的位置; 樣本3是在水平方向中間以及垂直方向的底部四分之一的位置; 樣本4是在垂直方向中間以及水平方向偏左四分之一的位置; 樣本5是在垂直方向中間以及水平方向偏右四分之一的位置。
全文摘要
本發(fā)明提供一種識別動態(tài)視頻內(nèi)容的方法,預先形成一個已存儲的指紋數(shù)據(jù)庫,包含了播出的視頻內(nèi)容的視頻信號,這里至少包含了以下幾步在一個緩沖器中存儲連續(xù)的視頻幀序列的動態(tài)視頻內(nèi)容;通過采樣器來獲得視頻幀;把樣本值儲存到指紋中,也即是指紋A被儲存到指紋數(shù)據(jù)庫中;在指紋數(shù)據(jù)庫的指紋A和余下的指紋部f分B之間進行指紋模型下的匹配演算,來確定動態(tài)視頻內(nèi)容在之前是否播出過。通過本發(fā)明的方法可以有效地管理、歸檔以及搜索視頻內(nèi)容,降低數(shù)字存儲設備的成本,以及在很少或者無人工參與下有效地識別視頻內(nèi)容。
文檔編號H04N7/26GK101631240SQ200810132600
公開日2010年1月20日 申請日期2008年7月17日 優(yōu)先權日2008年7月17日
發(fā)明者驥 張 申請人:北京億科三友科技發(fā)展有限公司