專利名稱:視頻檢索方法及裝置的制作方法
技術領域:
本發(fā)明涉及檢索技術領域,具體涉及視頻檢索方法及裝置。
背景技術:
在視頻監(jiān)控中,通常需要對監(jiān)控數據進行檢索,如何能夠快速地從監(jiān)控 數據庫中檢索到需要的信息是檢索有效性的關鍵,而如何有效地組織分析結 果關系著能夠有效地快速檢索。
目前,在檢索監(jiān)控數據庫時,需要使用單獨的匹配算法將參考圖像與監(jiān) 控數據庫中的視頻序列進行匹配。圖1給出了要檢索的視頻片斷的運動軌跡 圖像,檢索時,需要對數據庫中的視頻序列逐幀進行運動軌跡分析,若分析 得到的某段視頻的運動軌跡與圖1中的運動軌跡匹配,則將該段視頻序列作 為檢索結果輸出。很顯然,現(xiàn)有的檢索方法速度很慢。
發(fā)明內容
本發(fā)明提供視頻檢索方法及裝置,以提高檢索速度。
本發(fā)明的技術方案是這樣實現(xiàn)的 一種視頻一企索方法,該方法包括 采集并保存視頻序列;
對視頻序列進行運動檢測,每檢測到一個運動片斷,計算并保存該運動片 斷的運動描述值;
當要在視頻序列中檢索運動片斷時,計算該要檢索的運動片斷的運動描述 值,將該計算得到的運動描述值與所述保存的各運動片斷的運動描述值一一匹 配,若匹配上,則輸出保存的該運動片斷。
所述運動描述值為運動區(qū)域值或運動軌跡值。當所述運動描述值為運動區(qū)域值時,
所述計算運動片斷的運動描述值包括確定該運動片斷的運動區(qū)域描述圖 像,將該運動區(qū)域描述圖像劃分為n個塊,其中,n為正整數,
對于每個塊,若該塊位于運動區(qū)域中,則將該塊取值為'T,;否則,將該 塊取值為"0",將n個塊的取值按照預定規(guī)則進行排列,得到該運動片斷的運 動區(qū)域值;或者,
對于每個塊,若該塊位于運動區(qū)域中,則將該塊取值為"0";否則,將該 塊取值為'T',將n個塊的取值按照預定規(guī)則進行排列,得到該運動片斷的運 動區(qū)域J直。
所述將運動區(qū)域描述圖像劃分為n個塊進一步包括對該n個塊從1至n 進4亍編號,
所述將n個塊的取值按照預定規(guī)則進行排列為將n個塊的取值按照其編 號的從小到大,依次從低位到高位排列;或者,
將n個塊的取值按照其編號的從小到大,依次從高位到低位排列。
所述對n個塊從1至n進行編號為按照每個塊出現(xiàn)前景的概率的從高到 低,依次對n個塊從1至n進行編號;或者,按照每個塊出現(xiàn)前景的概率的從 低到高,依次對n個塊從1至n進行編號。
所述將運動區(qū)域描述圖像劃分為n個塊為將運動區(qū)域描述圖像劃分為n 個大小相同的塊,或者,
按照前景出現(xiàn)概率高的區(qū)域上每個塊的面積小于前景出現(xiàn)概率低的區(qū)域上 每個塊的面積的原則,將運動區(qū)域描述圖像劃分為n個塊。
當所述運動描述值為運動軌跡值時,
所述計算運動片斷的運動軌跡值包括確定該運動片斷的運動區(qū)域描述圖 像,將該運動區(qū)域描述圖像劃分為n個塊,計算運動區(qū)域描述圖像中的每個前 景的重心,將每相鄰兩個前景的重心相連,得到運動軌跡,其中,n為正整數;
對于每個塊,若該塊位于運動軌跡上,則將該塊取值為'T';否則,將該 塊取值為"0",將n個塊的取值按照預定規(guī)則進行排列,得到該運動片斷的運動軌跡值;或者,
對于每個塊,若該塊位于運動軌跡上,則將該塊取值為"0";否則,將該 塊取值為"1",將n個塊的取值按照預定規(guī)則進行排列,得到該運動片斷的運 動軌跡值。
所述運動描述值以二進制表示,
所述將計算得到的運動描述值與〗果存的各運動片斷的運動描述值——匹配 包括將計算得到的運動描述值與保存的各運動片斷的運動描述值按位進行與 運算,若得到的結果大于預設值,則確定匹配上。
一種視頻檢索裝置,該裝置包括
采集模塊,采集視頻序列,將視頻序列保存到緩存中;
運動描述值計算模塊,對采集到的視頻序列進行運動檢測,每檢測到一個 運動片斷,計算該運動片斷的運動描述值,將運動片斷的運動描述值與運動片 斷索引的對應關系保存到數據庫中;接收用戶輸入的要檢索的運動片斷的運動 描述圖像,計算該運動描述圖像對應的運動描述值,將該運動描述值發(fā)送給檢 索模塊;
檢索模塊,接收運動描述值,將該運動描述值與數據庫保存的各運動片斷 的運動描述值——匹配,若匹配上,按照匹配上的運動片斷索引從緩存讀取運 動片斷并提供給用戶。
所述運動描述值計算模塊包括
運動區(qū)域確定模塊,對采集到的視頻序列進行運動檢測,每檢測到一個運 動片斷,確定該視頻序列的運動區(qū)域描述圖像,將運動區(qū)域描述圖像發(fā)送到塊 劃分才莫塊;
塊劃分模塊,將接收到的運動區(qū)域描述圖像劃分為n個塊,將塊劃分后的 運動區(qū)域描述圖像發(fā)送到運動區(qū)域值計算模塊,其中,n為正整數;
運動區(qū)域值計算模塊,對于接收到的運動區(qū)域描述圖像中的每個塊,若該 塊位于運動區(qū)域中,則將該塊取^直為'T,;否則,將該塊取值為"0";或者, 對于每個塊,若該塊位于運動區(qū)域中,則將該塊取值為"0";否則,將該塊取值為"1",將n個塊的取值按照預定規(guī)則進行排列,得到運動片斷的運動區(qū)域
值,將該運動區(qū)域值與運動片斷索引的對應關系保存到數據庫中,或者將運動 區(qū)域值發(fā)送給檢索模塊。
所述運動描述值計算模塊包括
運動區(qū)域確定模塊,對采集到的視頻序列進行運動檢測,每檢測到一個運 動片斷,確定該運動片斷的運動區(qū)域描述圖像,將運動區(qū)域描述圖像發(fā)送給塊 劃分模塊;
塊劃分模塊,將接收到的運動區(qū)域描述圖像劃分為n個塊,將塊劃分后的 運動區(qū)域描迷圖像發(fā)送到運動軌跡確定模塊;將接收到的運動軌跡描述圖像劃 分為n個塊,將塊劃分后的運動軌跡描述圖像發(fā)送到運動軌跡值計算模塊;
運動軌跡確定模塊,計算接收到的運動區(qū)域描述圖像中的每個前景的重心, 將每相鄰兩個前景的重心相連,得到運動軌跡掩膜圖像,將運動軌跡掩膜圖像 發(fā)送到運動軌跡值計算模塊;
運動軌跡值計算模塊,對于接收到的運動軌跡掩膜圖像或運動軌跡描述圖 像中的每個塊,若該塊位于運動軌跡上,則將該塊取值為'T';否則,將該塊 取值為"0";或者,對于每個塊,若該塊位于運動軌跡上,則將該塊取值為"0"; 否則,將該塊取值為"1",將n個塊的取值按照預定規(guī)則進行排列,得到運動 軌跡值,將運動軌跡值與運動片斷索引的對應關系保存到數據庫中,或者將運 動軌跡值發(fā)送給;險索模塊。
所述檢索模塊包括
檢索匹配模塊,接收運動描述值計算模塊發(fā)來的以二進制表示的要檢索的 運動片斷的運動描述值,將該運動描述值分別與數據庫中保存的以二進制表示 各運動片斷的運動描述值按位進行與運算,將與運算結果輸出到判斷模塊,若 接收到判斷模塊輸出的匹配指示,則按照匹配上的運動片斷索引從緩存讀取運 動片斷并提供給用戶;
判斷模塊,接收檢索匹配模塊發(fā)來的與運算結果,若該結果大于預設值, 則向檢索匹配模塊返回匹配指示。與現(xiàn)有技術相比,本發(fā)明通過對采集到的視頻序列進行運動檢測,每檢
測到一個運動片斷,計算并保存該運動片斷的運動描述值;當要從視頻序列 中檢索運動片斷時,計算該要檢索的運動片斷的運動描述值,將該計算得到 的運動描述值與所述保存的各運動片斷的運動描述值——匹配,若匹配上, 則輸出數據庫中的該運動片斷。本發(fā)明將視頻序列的運動檢測結果數值化, 不必應用復雜的多媒體數據庫而只需使用現(xiàn)有的技術成熟的關系型數據庫 即可實現(xiàn)視頻數據的檢索,實現(xiàn)筒單,提高了檢索速度。
圖1為現(xiàn)有的視頻檢索的參考圖像; 圖2為本發(fā)明實施例一提供的視頻檢索的流程圖; 圖3-1為本發(fā)明實施例提供的對運動區(qū)域描述圖像進行均勻塊劃分的 示意圖3-2為本發(fā)明實施例提供的對運動區(qū)域描述圖像進行不均勻塊劃分 的示意圖3-3為本發(fā)明實施例提供的對運動區(qū)域描述圖像塊劃分時,塊之間 重疊的示意圖4-1為本發(fā)明實施例提供的對一視頻序列進行運動檢測得到的一個 運動片斷的的運動區(qū)域描述圖像的示例圖4-3為本發(fā)明實施例提供的運動片斷的運動軌跡掩膜圖像的示例
圖5為本發(fā)明實施例二提供的視頻檢索的流程圖; 圖6-1為本發(fā)明實施例提供的對要檢索的運動片斷的運動軌跡描述圖 像進行塊劃分的示例圖6-2為本發(fā)明實施例提供的要檢索的運動片斷的運動軌跡掩膜圖像的示例圖7為本發(fā)明實施例提供的視頻檢索裝置的組成圖; 圖8為本發(fā)明實施例一提供的運動描述值計算模塊的組成圖; 圖9為本發(fā)明實施例二提供的運動描述值計算模塊的組成圖; 圖IO為本發(fā)明實施例提供的檢索模塊的組成圖。
具體實施例方式
下面結合附圖及具體實施例對本發(fā)明再作進一步詳細的說明。 圖2為本發(fā)明實施例一提供的視頻檢索的流程圖,如圖2所示,其具體 步驟如下
步驟201:采集并保存一個場景下的視頻序列;同時,對該視頻序列進 行運動檢測,每檢測到一個運動片斷,確定該運動片斷的運動區(qū)域描述圖像。
一個運動片斷的起始點為檢測到運動開始的幀,終止點為該運動結束的 幀。 一個視頻序列中可能存在多個運動片斷,例如若視頻序列共1000幀, 其中,1 ~ 500幀中未4全測到運動,501 ~ 700幀中檢測到運動,701 ~ 800幀 中未沖企測到運動,801 - 1000幀中凈全測到運動,則該視頻序列中存在兩個運 動片斷501 ~ 700幀、801 ~ 1000幀,每個運動片斷對應一個運動區(qū)域描述 圖像,用于描述前景在該運動片斷中的運動區(qū)域。
通常,運動區(qū)域描述圖像的大小與視頻序列中的每幀圖像的大小相同。
若該視頻序列中不存在前景,或者前景未發(fā)生運動,則就不存在運動區(qū) 域描述圖像。
步驟202:按照預先設定的塊劃分方法,將每個運動區(qū)域描述圖像劃分
為n個塊,將n個塊分別編號為l、 2.....n。
對于不同的場景,運動描述圖像的塊劃分方法可能不同。
n為正整數,n的取值可根據經驗確定,通常11<<圖像分辨率。n較大時,
可取i^2"1,其中,m為正整數。n個塊的大小可以相同,如圖3-l所示;
也可以不同,如圖3-2所示,對于前景出現(xiàn)概率較低處,塊的面積可以較大,而對于前景出現(xiàn)概率較高處,塊的面積可以較小,如圖3-2中,塊1~ 16為前景出現(xiàn)概率較高處。相鄰塊可以重疊,如圖3-3所示,塊2、 4、 5 重疊。
在對塊編號時,可以按照塊在運動區(qū)域描述圖像上的位置,從左到右從 上到下依次編號,也可以按照塊的重要性進行編號,例如對于前景出現(xiàn)概 率較高的區(qū)域上的塊可相鄰編號,如圖3-2所示,前景出現(xiàn)概率較高的塊 1 ~ 16相鄰編號。
對于運動區(qū)域描述圖像上的n個塊,按照其編號的從低到高,分別執(zhí)行 步驟203 ~ 206:
步驟203:判斷該塊是否為運動區(qū)域,若是,執(zhí)行步驟204;否則,執(zhí) 行步驟205。
步驟204:將該塊的值置為'T,,轉至步驟206。 步驟205:將該塊的值置為"0"。
在實際應用中,當塊為運動區(qū)域時,也可將塊的值置為"0",同時, 當塊不為運動區(qū)域時,將塊的值置為"1"。
步驟206:判斷當前塊的編號是否為n,若是,執(zhí)行步驟208;否則, 執(zhí)行步驟207。
步驟207:將塊的編號加l,返回步驟203。
步驟208:按照n個塊的編號的從低到高,將n個塊的值依次從高位到 低位排列,得到一個n位的二進制數,將該n位的二進制數作為運動區(qū)域值, 將運動片斷的索引與運動區(qū)域值的對應關系保存到監(jiān)控數據庫中。
運動片斷的索引可以是運動片斷的起始時刻+終止時刻,也可以是起始 時刻+持續(xù)時長。
在實際應用中,也可按照n個塊的編號的從低到高,將n個塊的值依次 從低位到高位排列。
步驟209:當要在某個場景下的視頻序列中檢索滿足設定的運動區(qū)域的 運動片斷時,根據記錄的場景標識與塊劃分方法的對應關系,確定該場景下的塊劃分方法,對該設定的運動區(qū)域描述圖像進行塊劃分,得到該運動片斷 的運動區(qū)域值。
步驟210:將步驟209中確定的運動區(qū)域值與監(jiān)控數據庫保存的各運動 片斷的運動區(qū)域值匹配,若匹配上,則根據該運動片斷的索引,在保存的視 頻序列中查找到該運動片斷。
這里,將步驟209中確定的運動區(qū)域值分別與監(jiān)控數據庫中保存的各運 動片斷的運動區(qū)域值按位作與運算,只要有其中一個位的與運算結果為1, 則認為匹配上;或者,將步驟209中確定的運動區(qū)域值分別與監(jiān)控數據庫中 保存的各運動片斷的運動區(qū)域值按位作與運算,將得到的所有結果位相加, 若得到的值大于預設值,則認為匹配上。
在實際應用中,為了避免運動片斷較長,可預先設定一個運動片斷最大 長度Lmax,若才全測到的運動片斷長度L〉Lmax,則以Lmax為間隔,將L 劃分為多個區(qū)間,對每個區(qū)間上的運動片斷計算運動區(qū)域值。
圖4- 1給出了對一視頻序列進行運動檢測得到的一個運動片斷的運動 區(qū)域描述圖像,如圖4-l所示,圖中包含6個人體,從左至右分別表示一 個人在不同時刻的位置。圖4-2給出了將運動區(qū)域描述圖像劃分為n個塊, 并對每個塊取值后得到的運動區(qū)域掩膜圖像,如圖4-2所示,圖中的陰影
部分即為運動區(qū)域,設n個塊從上至下從左至右分別編號為1、 2..... n,
則運動區(qū)域值為0x0063e6fe3c380000,其中,0x表示16進制。
圖2給出了通過將視頻序列中的每個運動片斷以一個運動區(qū)域值標識,
將視頻序列中的每個運動片斷以一個運動軌跡值標識,從而根據運動軌跡值 檢索視頻序列。
圖5為本發(fā)明實施例二提供的視頻檢索的流程圖,如圖5所示,其具體 步驟如下
步驟501 ~ 502與步驟201 ~ 202相同。
步驟503:對每個運動區(qū)域描述圖像中的每個前景進行重心計算,得到每個前景的重心。
如圖4-l所示,每個人體,即前景對應一個不規(guī)則圖形,該不規(guī)則圖 形的重心即為該人體的重心, 一共可得到6個人體重心。
步驟504:將相鄰前景的重心直線相連,得到運動軌跡掩膜圖像。
例如對于根據圖4-1得到的6個人體重心,將每相鄰兩個人體重心 直線相連,就可得到該人的運動軌跡,圖4-3為運動軌跡掩膜圖像。
對于運動軌跡掩膜圖像上的n個塊,按照其編號的從低到高,分別執(zhí)行 步驟505 - 508:
步驟505:判斷該塊是否為運動軌跡區(qū)域,若是,執(zhí)行步驟506;否則, 執(zhí)行步驟507。
步驟506:將該塊的值置為"1",轉至步驟508。 步驟507:將該塊的值置為"0"。
在實際應用中,當塊為運動軌跡區(qū)域時,也可將塊的值置為"0",同 時,當塊不為運動軌跡區(qū)域時,將塊的值置為'T'。
步驟508:判斷當前塊的編號是否為n,若是,執(zhí)行步驟510;否則, 執(zhí)行步驟509。
步驟509:將塊的編號加1,返回步驟505。
步驟510:按照n個塊的編號的從低到高,將n個塊的值依次從高位到 低位排列,得到一個n位的二進制數,將該n位的二進制數作為運動軌跡值, 將運動片斷的索引與運動區(qū)域值的對應關系保存到監(jiān)控數據庫中。
運動片斷的索引可以是運動片斷的起始時刻+終止時刻,也可以是起始 時刻+持續(xù)時長。
如圖4-3表示的運動軌跡值為0xc3663c000000,其中,0x表示16進制。
在實際應用中,也可按照n個塊的編號的從低到高,將n個塊的值依次 從低位到高位排列。
步驟511:當要在某個場景下的視頻序列中檢索滿足設定的運動軌跡的運動片斷時,根據記錄的場景標識與塊劃分方法的對應關系,確定該場景下 的塊劃分方法,對該設定的運動軌跡描述圖像進行塊劃分,得到該運動片斷 的運動軌跡值。
圖6-1為一個對要檢索的運動片斷的運動軌跡描述圖像進行塊劃分的 示意圖,圖6-2為根據圖6-1構造的運動軌跡掩膜圖像,根據圖6-2可 得到該運動片斷的運動軌跡值。
步驟512:將步驟511中確定的運動軌跡值與監(jiān)控數據庫保存的各運動 片斷的運動軌跡值匹配,若匹配上,則根據該運動片斷的索引,在保存的視 頻序列中查找到該運動片斷。
這里,將步驟511中確定的運動軌跡值分別與監(jiān)控數據庫中保存的各運 動片斷的運動軌跡值按位作與運算,只要有其中一個位的與運算結果為1, 則認為匹配上;或者,將步驟511中確定的運動軌跡值分別與監(jiān)控數據庫中 保存的各運動片斷的運動軌跡值按位作與運算,將得到的所有結果位相加, 若得到的值大于預設值,則認為匹配上。
圖7為本發(fā)明實施例提供的視頻檢索裝置的組成圖,如圖7所示,其主 要包括視頻采集模塊71、運動描述值計算模塊72和檢索模塊73,其中
視頻采集模塊71:采集一個場景下的視頻序列,將視頻序列保存到緩 存中。
運動描述值計算模塊72:從緩存中依次取出視頻序列,對該視頻序列進 行運動檢測,每檢測到一個運動片斷,計算該運動片斷的運動描述值,將運 動片斷的運動描述值與運動片斷索引的對應關系保存到監(jiān)控數據庫中;接收 用戶輸入的要檢索的運動片斷的運動描述圖像,計算該運動描述圖像的運動 描述值,將該運動描述值發(fā)送給檢索模塊73。
檢索模塊73:接收運動描述值計算模塊72發(fā)來的要檢索的運動片斷的運 動描述值,將該運動描述值與監(jiān)控數據庫中保存的各運動片斷的運動描述值一 一匹配,若匹配上,則根據匹配上的運動片斷索引從緩存中讀取運動片斷并提 供給用戶。圖8為本發(fā)明實施例一提供的運動描述值計算模塊72的組成圖,如圖8 所示,運動描述值計算模塊72可包括運動區(qū)域確定模塊721、塊劃分模塊722 和運動區(qū)域值計算模塊723,其中
運動區(qū)域確定模塊721:從緩存中取出視頻序列,對該視頻序列進行運動 檢測,每檢測到一個運動片斷,確定該運動片斷的運動區(qū)域描述圖像,將該運 動區(qū)域描述圖像及運動片斷索引輸出到塊劃分模塊722。
塊劃分模塊722:接收運動區(qū)域確定模塊721發(fā)來的運動區(qū)域描述圖像及 運動片斷索引,將運動區(qū)域描述圖像劃分為n個塊,將劃分后的運動區(qū)域描述 圖像及運動片斷索引輸出到運動區(qū)域值計算模塊723;接收用戶輸入的要檢索 的運動片斷的運動描述圖像及場景標識,根據保存的場景標識與塊劃分方法的 對應關系,確定輸入的場景標識對應的塊劃分方法,按照該塊劃分方法,將輸 入的運動區(qū)域描述圖像劃分為n個塊,將劃分后的運動區(qū)域描述圖像及檢索標 志發(fā)送到運動區(qū)域值計算模塊723,其中,n為正整數。
運動區(qū)域值計算模塊723:接收塊劃分模塊722發(fā)來的運動區(qū)域描述圖像, 對于運動區(qū)域描述圖像中的每個塊,若該塊位于運動區(qū)域中,則將該塊取值為 'T,;否則,將該塊取值為"0";或者,對于每個塊,若該塊位于運動區(qū)域中, 則將該塊取值為"0";否則,將該塊取值為"1",將n個塊的取值按照預定規(guī) 則進行排列,得到運動區(qū)域值,若接收到塊劃分模塊722發(fā)來的運動片斷索引, 則將運動區(qū)域值與運動片斷索引的對應關系保存到監(jiān)控數據庫中,若接收到塊 劃分模塊722發(fā)來的檢索標志,則將運動區(qū)域值發(fā)送給檢索模塊73。
圖9為本發(fā)明實施例二提供的運動描述值計算模塊72的組成圖,如圖9 所示,運動描述值計算模塊72可包括:運動區(qū)域確定模塊821 、塊劃分模塊822、 運動軌跡確定模塊823和運動軌跡值計算模塊824,其中
運動區(qū)域確定模塊821:從緩存中取出視頻序列,對該視頻序列進行運動 檢測,每檢測到一個運動片斷,確定該運動片斷的運動區(qū)域描述圖像,將運動 區(qū)域描述圖像及運動片斷索引輸出到塊劃分模塊822。
塊劃分模塊822:接收運動區(qū)域確定模塊821發(fā)來的運動區(qū)域描述圖像及運動片斷索引,將運動區(qū)域描述圖像劃分為n個塊,將劃分后的運動區(qū)域描述 圖像及運動片斷索引發(fā)送到運動軌跡確定模塊823,;接收用戶輸入的要檢索的 運動片斷的運動描述圖^f象及場景標識,才艮據保存的場景標識與塊劃分方法的對 應關系,確定輸入的場景標識對應的塊劃分方法,按照該塊劃分方法,將輸入 的運動軌跡描述圖像劃分為n個塊,將塊劃分后的運動軌跡描述圖像發(fā)送到運 動軌跡值計算模塊824,或者,進一步根據塊劃分后的運動軌跡描述圖像構造 運動軌跡掩膜圖像,將塊劃分后的運動軌跡掩膜圖像發(fā)送到運動軌跡值計算模 塊824,其中,n為正整數。
運動軌跡確定模塊823:接收塊劃分模塊822發(fā)來的運動區(qū)域描述圖像及 運動片斷索引,計算運動區(qū)域描述圖像中的每個前景的重心,將每相鄰兩個前 景的重心直線相連,得到運動軌跡掩膜圖像,將運動軌跡掩膜圖像及運動片斷 索引發(fā)送給運動軌跡值計算模塊824;接收塊劃分模塊822發(fā)來的運動區(qū)域描 述圖像及檢索標志,計算運動區(qū)域描述圖像中的每個前景的重心,將每相鄰兩 個前景的重心直線相連,得到運動軌跡掩膜圖像,將運動軌跡掩膜圖像及運動 片斷索引發(fā)送給運動軌跡值計算模塊824。
運動軌跡值計算模塊824:接收運動軌跡確定模塊823或塊劃分模塊822 發(fā)來的運動軌跡掩膜圖像,對于運動軌跡掩膜圖像中的每個塊,若該塊位于運 動軌跡上,則將該塊取值為"1";否則,將該塊取值為"0";或者,對于每個 塊,若該塊位于運動軌跡上,則將該塊取值為"0";否則,將該塊:f又值為'T,, 將n個塊的取值按照預定規(guī)則進行排列,得到運動軌跡值,若運動軌跡掩膜圖 像來自運動軌跡確定模塊823,則將運動軌跡值與及運動片斷索引的對應關系 保存到監(jiān)控數據庫中,若運動軌跡掩膜圖像來自塊劃分模塊822,則將運動軌 跡值發(fā)送給檢索模塊73。
圖10為本發(fā)明實施例提供的檢索模塊73的組成圖,如圖IO所示,檢索模 塊73可包括檢索匹配模塊731和判斷模塊732,其中
檢索匹配模塊731:接收運動描述值計算模塊72發(fā)來的以二進制表示的要 檢索的運動片斷的運動描述值,將該運動描述值分別與運動描述值計算模塊72保存的以二進制表示各運動片斷的運動描述值按位進行與運算,將與運算結果
輸出到判斷模塊732 ,若接收到判斷模塊732輸出的匹配指示,則按照匹配上 的運動片斷索引從緩存中讀M動片斷并提供給用戶。
判斷模塊732:接收檢索匹配模塊731發(fā)來的與運算結果,若該結果大于 預設值,則向檢索匹配模塊731返回匹配指示。
以上所述僅為本發(fā)明的過程及方法實施例,并不用以限制本發(fā)明,凡在 本發(fā)明的精神和原則之內所做的任何修改、等同替換、改進等,均應包含在 本發(fā)明的保護范圍之內。
權利要求
1、一種視頻檢索方法,其特征在于,該方法包括采集并保存視頻序列;對視頻序列進行運動檢測,每檢測到一個運動片斷,計算并保存該運動片斷的運動描述值;當要在視頻序列中檢索運動片斷時,計算該要檢索的運動片斷的運動描述值,將該計算得到的運動描述值與所述保存的各運動片斷的運動描述值一一匹配,若匹配上,則輸出保存的該運動片斷。
2、 如權利要求l所述的方法,其特征在于,所述運動描述值為運動區(qū)域值 或運動軌跡值。
3、 如權利要求2所述的方法,其特征在于,當所述運動描述值為運動區(qū)域 值時,所述計算運動片斷的運動描述值包括確定該運動片斷的運動區(qū)域描述圖 像,將該運動區(qū)域描述圖像劃分為n個塊,其中,n為正整數,對于每個塊,若該塊位于運動區(qū)域中,則將該塊取值為"1";否則,將該 塊取值為"0",將n個塊的取值按照預定規(guī)則進行排列,得到該運動片斷的運 動區(qū)域值;或者,對于每個塊,若該塊位于運動區(qū)域中,則將該塊取值為"0";否則,將該 塊取值為"1",將n個塊的取值按照預定規(guī)則進行排列,得到該運動片斷的運 動區(qū)i或^i。'
4、 如權利要求3所述的方法,其特征在于,所述將運動區(qū)域描述圖像劃分 為n個塊進一步包括對該n個塊從1至n進行編號,所述將n個塊的取值按照預定規(guī)則進行排列為將n個塊的取值按照其編 號的從小到大,依次從低位到高位排列;或者,將n個塊的取值按照其編號的從小到大,依次從高位到低位排列。
5、 如權利要求4所述的方法,其特征在于,所述對n個塊^人1至n進行編號為按照每個塊出現(xiàn)前景的概率的從高到低,依次對n個塊從1至n進行編 號;或者,按照每個塊出現(xiàn)前景的概率的從低到高,依次對n個塊從l至n進 行編號。
6、 如權利要求3至5任一所述的方法,其特征在于,所述將運動區(qū)域描迷 圖像劃分為n個塊為將運動區(qū)域描述圖像劃分為n個大小相同的塊,或者,按照前景出現(xiàn)概率高的區(qū)域上每個塊的面積小于前景出現(xiàn)概率低的區(qū)域上 每個塊的面積的原則,將運動區(qū)域描述圖像劃分為n個塊。
7、 如權利要求2所述的方法,其特征在于,當所述運動描述值為運動軌跡 值時,所述計算運動片斷的運動軌跡值包括確定該運動片斷的運動區(qū)域描述圖 像,將該運動區(qū)域描述圖像劃分為n個塊,計算運動區(qū)域描述圖像中的每個前 景的重心,將每相鄰兩個前景的重心相連,得到運動軌跡,其中,n為正整數;對于每個塊,若該塊位于運動軌跡上,則將該塊取值為"1";否則,將該 塊取值為"0",將n個塊的取值按照預定規(guī)則進行排列,得到該運動片斷的運 動軌跡值;或者,對于每個塊,若該塊位于運動軌跡上,則將該塊取值為"0";否則,將該 塊取值為"1",將n個塊的取值按照預定規(guī)則進行排列,得到該運動片斷的運 動軌跡值。
8、 如權利要求l、 2、 3、 7中任一所述的方法,其特征在于,所述運動描 述值以二進制表示,所述將計算得到的運動描述值與保存的各運動片斷的運動描述值——匹配 包括將計算得到的運動描述值與保存的各運動片斷的運動描述值按位進行與 運算,若得到的結果大于預設值,則確定匹配上。
9、 一種視頻檢索裝置,其特征在于,該裝置包括 采集模塊,采集視頻序列,將視頻序列保存到緩存中; 運動描述值計算模塊,對采集到的視頻序列進行運動檢測,每檢測到一個運動片斷,計算該運動片斷的運動描述值,將運動片斷的運動描述值與運動片斷索引的對應關系保存到數據庫中;接收用戶輸入的要檢索的運動片斷的運動 描述圖像,計算該運動描述圖像對應的運動描述值,將該運動描述值發(fā)送給檢 索模塊;檢索模塊,接收運動描述值,將該運動描述值與數據庫保存的各運動片斷 的運動描述值一^^匹配,若匹配上,按照匹配上的運動片斷索引從緩存讀取運 動片斷并提供給用戶。
10、如權利要求9所述的裝置,其特征在于,所述運動描述值計算模塊包括運動區(qū)域確定模塊,對采集到的視頻序列進行運動檢測,每檢測到一個運 動片斷,確定該視頻序列的運動區(qū)域描述圖像,將運動區(qū)域描述圖像發(fā)送到塊 劃分模塊;塊劃分模塊,將接收到的運動區(qū)域描述圖像劃分為n個塊,將塊劃分后的 運動區(qū)域描述圖像發(fā)送到運動區(qū)域值計算模塊,其中,n為正整數;運動區(qū)域值計算模塊,對于接收到的運動區(qū)域描述圖像中的每個塊,若該 塊位于運動區(qū)域中,則將該塊取值為'T,;否則,將該塊取值為"0";或者, 對于每個塊,若該塊位于運動區(qū)域中,則將該塊取值為"0";否則,將該塊取 值為"1",將n個塊的取值按照預定規(guī)則進行排列,得到運動片斷的運動區(qū)域 值,將該運動區(qū)域值與運動片斷索引的對應關系保存到數據庫中,或者將運動 區(qū)域值發(fā)送給檢索模塊。
11、如權利要求9所述的裝置,其特征在于,所述運動描述值計算模塊包括運動區(qū)域確定模塊,對采集到的視頻序列進行運動檢測,每檢測到一個運 動片斷,確定該運動片斷的運動區(qū)域描述圖像,將運動區(qū)域描述圖像發(fā)送給塊 劃分模塊;塊劃分模塊,將接收到的運動區(qū)域描述圖像劃分為n個塊,將塊劃分后的 運動區(qū)域描述圖像發(fā)送到運動軌跡確定模塊;將接收到的運動軌跡描述圖像劃 分為n個塊,將塊劃分后的運動軌跡描述圖像發(fā)送到運動軌跡值計算模塊;運動軌跡確定模塊,計算接收到的運動區(qū)域描述圖像中的每個前景的重心, 將每相鄰兩個前景的重心相連,得到運動軌跡掩膜圖像,將運動軌跡掩膜圖像發(fā)送到運動軌跡值計算模塊;運動軌跡值計算模塊,對于接收到的運動軌跡掩膜圖像或運動軌跡描述圖 像中的每個塊,若該塊位于運動軌跡上,則將該塊取值為"1";否則,將該塊 取值為"0";或者,對于每個塊,若該塊位于運動軌跡上,則將該塊取值為"0"; 否則,將該塊取值為"1",將n個塊的取值按照預定規(guī)則進行排列,得到運動 軌跡值,將運動軌跡值與運動片斷索引的對應關系保存到數據庫中,或者將運 動軌跡值發(fā)送給檢索模塊。
12、如權利要求9至11任一所述的裝置,其特征在于,所述檢索模塊包括檢索匹配模塊,接收運動描述值計算模塊發(fā)來的以二進制表示的要檢索的 運動片斷的運動描述值,將該運動描述值分別與數據庫中保存的以二進制表示 各運動片斷的運動描述值按位進行與運算,將與運算結果輸出到判斷模塊,若 接收到判斷模塊輸出的匹配指示,則按照匹配上的運動片斷索引從緩存讀取運 動片斷并提供給用戶;判斷模塊,接收檢索匹配模塊發(fā)來的與運算結果,若該結果大于預設值, 則向檢索匹配模塊返回匹配指示。
全文摘要
本發(fā)明公開了視頻檢索方法及裝置。方法包括采集并保存視頻序列,對視頻序列進行運動檢測,每檢測到一個運動片斷,計算并保存該運動片斷的運動描述值;當要在視頻序列中檢索一個運動片斷時,計算該要檢索的運動片斷的運動描述值,將該計算得到的運動描述值與所述保存的各運動片斷的運動描述值一一匹配,若匹配上,則輸出數據庫中的該運動片斷。本發(fā)明將視頻序列的運動檢測結果數值化,不必應用復雜的多媒體數據庫而只需使用現(xiàn)有的技術成熟的關系型數據庫即可實現(xiàn)視頻數據的檢索,實現(xiàn)簡單,提高了檢索速度。
文檔編號G06T7/20GK101303701SQ20081011581
公開日2008年11月12日 申請日期2008年6月27日 優(yōu)先權日2008年6月27日
發(fā)明者飛 高, 英 黃 申請人:北京中星微電子有限公司