本發(fā)明涉及大數(shù)據(jù)處理技術領域,尤其涉及視頻圖像檢索技術領域,具體是指一種面向警務實戰(zhàn)的海量視頻分布式檢索方法。
背景技術:
視頻圖像是公安維護社會穩(wěn)定和人民生命財產(chǎn)安全必不可少的信息資源。然而,隨著視頻監(jiān)控系統(tǒng)規(guī)模的不斷擴大,一方面視頻監(jiān)控數(shù)據(jù)出現(xiàn)了爆炸性的增長,另一方面現(xiàn)有的絕大多數(shù)視頻監(jiān)控系統(tǒng)仍停留在人為觀察和手工操作的基礎之上,當監(jiān)控場景中出現(xiàn)異常情況或潛在危險時,都需要警務人員進行人為分析與處理,即使是事后調(diào)查取證,也需要辦案人員對視頻數(shù)據(jù)進行人工搜索,這種模式很大程度上限制了視頻監(jiān)控資源的有效利用,直接影響到了辦案效率。利用計算機輔助進行視頻檢索是目前最直接可行的方法。
視頻檢索通常指的是基于內(nèi)容的圖像檢索,即直接從圖像中提取視覺特征,通過圖像視覺特征之間的匹配達到檢索目的。它公共安全、司法管理,軍事等領域有著廣泛地應用。然而,目前的基于內(nèi)容檢索技術仍存在著交互性差,圖像底層特征與高層語義之間存在“語義鴻溝”等很多問題,而且現(xiàn)有的視頻圖像檢索系統(tǒng)如QBIC,Virage,Photobook,Webseek等大都基于視頻圖像的底層特征,檢索耗時且準確度不高,也無法滿足公安行業(yè)因為數(shù)據(jù)保密級別高而需要靈活部署和快速檢索的需求。
因此,有必要提出一種面向警務實戰(zhàn)的海量視頻圖像檢索方法。
技術實現(xiàn)要素:
本發(fā)明的目的是克服了上述現(xiàn)有技術的缺點,提供了一種能夠實現(xiàn)靈活部署和快速檢索的面向警務實戰(zhàn)的海量視頻分布式檢索方法。
為了實現(xiàn)上述目的,本發(fā)明具有如下構成:
該面向警務實戰(zhàn)的海量視頻分布式檢索方法,包括以下步驟:
(1)搭建分布式網(wǎng)絡環(huán)境;
(2)管理計算資源并傳輸數(shù)據(jù);
(3)對視頻數(shù)據(jù)進行管理和存儲;
(4)對任務進行分配和管理;
(5)對視頻的關鍵幀進行處理;
(6)進行結構化信息管理;
(7)進行實時展示和反饋。
較佳地,所述的步驟(1)具體為:
搭建控制端計算機、客戶端計算機和服務端計算機的基本環(huán)境。
較佳地,所述的步驟(2)具體為:
網(wǎng)絡交換機自動IP分配設置,控制端計算機通過DHCP協(xié)議掃描網(wǎng)絡,搜集網(wǎng)絡中的計算資源,并自動配置和控制端計算機相同的NFS共享文件夾,視頻數(shù)據(jù)通過網(wǎng)絡中任何計算機的傳輸接口拷貝到NFS共享文件夾中,實現(xiàn)網(wǎng)絡共享。
較佳地,所述的步驟(3)具體為:
控制端計算機對NFS中的視頻實行登記管理,形成視頻資源表,根據(jù)實際處理情況標記視頻文件的狀態(tài)。
更佳地,所述的根據(jù)實際處理情況標記視頻文件的狀態(tài),具體為:
將新增視頻文件標記為未處理,將處理完的視頻文件標記為處理過,將正在處理的視頻文件標記處理中,將因故障沒有處理完的視頻文件標記為處理中斷并記錄中斷位置。
較佳地,所述的步驟(4)具體為:
控制端計算機掃描視頻文件資源表,統(tǒng)計被標記為未處理和處理中斷的視頻文件,評估資源表中的計算資源和網(wǎng)絡中可用計算資源的傳輸成本,將傳輸成本最小的視頻資源分配給閑置的計算資源,同時將視頻資源的狀態(tài)改變?yōu)樘幚碇小?/p>
較佳地所述的步驟(5)還包括一下步驟:
(5-1)服務端計算機接受控制端計算機任務分配指令,從NFS中取得需要處理的視頻文件;
(5-2)根據(jù)自身可用的CPU核的數(shù)目,將視頻文件解碼分成相應多段;
(5-3)多線程同時解碼提取關鍵幀,置入根據(jù)計算機可用內(nèi)存大小而設定的緩存池中;
(5-4)多線程同時處理關鍵幀,存儲關鍵幀,特征提取,特征比對,特征存儲,計算相似度;
(5-5)利用目標檢測器實現(xiàn)對關鍵幀中的相關目標的檢測定位。
較佳地,所述的步驟(6)具體為:
將特征以向量方式進行連接,通過HBASE實現(xiàn)分布式存儲,并通過倒排表、HASH方法對特征文件進行索引,提取任務中人物圖像和背景圖像的特征并量化。
較佳地,所述的步驟(7)具體為:
將計算局部區(qū)域的特征同海量圖像特征比對,找到最相似的區(qū)域,計算兩者的相似度并按照其從大到小將對應的關鍵幀在網(wǎng)頁上實時展示,能夠提供相關反饋的接口,加載人工經(jīng)驗,進一步修正檢索結果。
采用了該發(fā)明中的面向警務實戰(zhàn)的海量視頻分布式檢索方法,實現(xiàn)案件偵破過程中視頻線索的快速發(fā)現(xiàn),即快速搭建一個分布式網(wǎng)絡,將一切可用的計算資源連接起來,有效存儲和管理不斷增加的偵查視頻數(shù)據(jù),針對已有的線索信息,在海量的偵查視頻中分布式檢索,并依照實時展現(xiàn)檢索結果實現(xiàn)相關反饋,以便快速準確地獲得視頻線索,具有廣泛的應用范圍。
附圖說明
圖1為本發(fā)明的面向警務實戰(zhàn)的海量視頻分布式檢索方法的系統(tǒng)結構示意圖。
圖2為本發(fā)明的面向警務實戰(zhàn)的海量視頻分布式檢索方法的發(fā)起檢索任務的示意圖。
圖3為本發(fā)明的面向警務實戰(zhàn)的海量視頻分布式檢索方法的任務分配的示意圖。
圖4為本發(fā)明的面向警務實戰(zhàn)的海量視頻分布式檢索方法的任務回收的示意圖。
圖5為本發(fā)明的面向警務實戰(zhàn)的海量視頻分布式檢索方法的檢索任務流程圖。
具體實施方式
為了能夠更清楚地描述本發(fā)明的技術內(nèi)容,下面結合具體實施例來進行進一步的描述。
該面向警務實戰(zhàn)的海量視頻分布式檢索方法,包括以下步驟:
(1)搭建分布式網(wǎng)絡環(huán)境;
(2)管理計算資源并傳輸數(shù)據(jù);
(3)對視頻數(shù)據(jù)進行管理和存儲;
(4)對任務進行分配和管理;
(5)對視頻的關鍵幀進行處理;
(6)進行結構化信息管理;
(7)進行實時展示和反饋。
較佳地,所述的步驟(1)具體為:
搭建控制端計算機、客戶端計算機和服務端計算機的基本環(huán)境。
較佳地,所述的步驟(2)具體為:
網(wǎng)絡交換機自動IP分配設置,控制端計算機通過DHCP協(xié)議掃描網(wǎng)絡,搜集網(wǎng)絡中的計算資源,并自動配置和控制端計算機相同的NFS共享文件夾,視頻數(shù)據(jù)通過網(wǎng)絡中任何計算機的傳輸接口拷貝到NFS共享文件夾中,實現(xiàn)網(wǎng)絡共享。
較佳地,所述的步驟(3)具體為:
控制端計算機對NFS中的視頻實行登記管理,形成視頻資源表,根據(jù)實際處理情況標記視頻文件的狀態(tài)。
更佳地,所述的根據(jù)實際處理情況標記視頻文件的狀態(tài),具體為:
將新增視頻文件標記為未處理,將處理完的視頻文件標記為處理過,將正在處理的視頻文件標記處理中,將因故障沒有處理完的視頻文件標記為處理中斷并記錄中斷位置。
較佳地,所述的步驟(4)具體為:
控制端計算機掃描視頻文件資源表,統(tǒng)計被標記為未處理和處理中斷的視頻文件,評估資源表中的計算資源和網(wǎng)絡中可用計算資源的傳輸成本,將傳輸成本最小的視頻資源分配給閑置的計算資源,同時將視頻資源的狀態(tài)改變?yōu)樘幚碇小?/p>
較佳地所述的步驟(5)還包括一下步驟:
(5-1)服務端計算機接受控制端計算機任務分配指令,從NFS中取得需要處理的視頻文件;
(5-2)根據(jù)自身可用的CPU核的數(shù)目,將視頻文件解碼分成相應多段;
(5-3)多線程同時解碼提取關鍵幀,置入根據(jù)計算機可用內(nèi)存大小而設定的緩存池中;
(5-4)多線程同時處理關鍵幀,存儲關鍵幀,特征提取,特征比對,特征存儲,計算相似度;
(5-5)利用目標檢測器實現(xiàn)對關鍵幀中的相關目標的檢測定位。
較佳地,所述的步驟(6)具體為:
將特征以向量方式進行連接,通過HBASE實現(xiàn)分布式存儲,并通過倒排表、HASH方法對特征文件進行索引,提取任務中人物圖像和背景圖像的特征并量化。
較佳地,所述的步驟(7)具體為:
將計算局部區(qū)域的特征同海量圖像特征比對,找到最相似的區(qū)域,計算兩者的相似度并按照其從大到小將對應的關鍵幀在網(wǎng)頁上實時展示,能夠提供相關反饋的接口,加載人工經(jīng)驗,進一步修正檢索結果。
如圖1所示,系統(tǒng)基于Apache Thrift框架實現(xiàn)通信,主要分為客戶端,控制端和服務端三個部分,實現(xiàn)多臺服務器共同工作。為構建上述系統(tǒng),本發(fā)明使用的方法如圖5所示,包括以下操作步驟:
步驟1:搭建控制端計算機的基本環(huán)境,它是整個分布式系統(tǒng)運行的基礎,需要安裝Linux操作系統(tǒng),并和配置包括thrift,boost C++,Eigen,OpenCV,F(xiàn)FTW,OpenMP,NFS,RabbitMQ,F(xiàn)Fmpeg等庫環(huán)境,以支持網(wǎng)絡通信、分布式計算、存儲共享、視頻解碼以及視頻圖像特征提取等方面工作。
步驟2:搭建客戶端計算機基礎環(huán)境,為了合理利用資源,可以在控制端計算機上部署。該步驟包含目標圖片檢索前個性化區(qū)域選擇和檢索結果的實時展示。個性化區(qū)域選擇,用戶根據(jù)關注點,用鼠標在目標圖像上選擇一個矩形區(qū)域,將該區(qū)域的圖像提交到控制端計算機,如圖2所示,計算其傳統(tǒng)的興趣點特征,如HOG,SIFT等特征,并將該特征存儲在計算機中。檢索結果的實時展示,將相似度從高到低的排序結果存入HTML文件,并按照自定義頻率將其載入到安裝了Reload Every插件的Firefox瀏覽器中展示給用戶。通過對結果列表中無關圖像和相關圖像進行人工標注,改進檢索過程中的相似度度量框架。
步驟3:搭建服務端計算機的基本環(huán)境,它是任務具體執(zhí)行的單位,可以類似步驟1那樣安裝Linux操作系統(tǒng),并和配置包括thrift,boost C++,Eigen,OpenCV,F(xiàn)FTW,OpenMP,NFS,RabbitMQ,F(xiàn)Fmpeg等庫環(huán)境,以支持后面網(wǎng)絡通信、分布式計算、存儲共享、視頻解碼以及視頻圖像特征提取等方面工作;也可以通過虛擬機的方式,直接把標準的運行環(huán)境拷貝過來。
步驟4:配置網(wǎng)絡。網(wǎng)絡交換機實現(xiàn)自動IP分配設置,控制端計算機通過DHCP協(xié)議掃描網(wǎng)絡,搜集網(wǎng)絡中的計算資源,如CPU核數(shù)、系統(tǒng)可用內(nèi)存大小、磁盤大小等,形成計算資源表;自動配置和控制端計算機相同的NFS共享文件夾。
步驟5:數(shù)據(jù)傳輸。視頻數(shù)據(jù)通過網(wǎng)絡中任何計算機的傳輸接口如USB接口拷貝到NFS共享文件夾中,實現(xiàn)網(wǎng)絡共享。
步驟6:視頻數(shù)據(jù)管理??刂贫擞嬎銠C對NFS中的視頻實行登記管理,形成視頻資源表,標記視頻文件的狀態(tài)(未處理/處理過/處理中/處理中斷):新增視頻文件標記“未處理”,處理完的標記為“處理過”,正在處理的文件標記“處理中”,因為故障沒有處理完的視頻,標記為“處理中斷”并記錄中斷位置。
步驟7:任務分配。控制端計算機掃描視頻文件資源表,統(tǒng)計狀態(tài)標記為“未處理”和“處理中斷”的視頻文件。評估這些資源和網(wǎng)絡中可用計算資源的傳輸成本,把傳輸成本最小的視頻資源分配給閑置的計算資源,同時改變視頻資源的狀態(tài)為“處理中”,其中傳輸成本計算同視頻文件大小正相關,同計算機傳輸距離正相關,如圖3所示。
步驟8:視頻關鍵幀處理。服務端計算機接受控制端計算機任務分配指令,從NFS中取得需要處理的視頻文件,根據(jù)自身可用的CPU核的數(shù)目,將視頻文件解碼分成相應多段,多線程同時解碼提取關鍵幀,置入根據(jù)計算機可用內(nèi)存大小而設定的緩存池中;同時多線程同時處理關鍵幀,存儲關鍵幀,特征提取,特征比對,特征存儲,計算相似度等。其中,提取的特征包括傳統(tǒng)的興趣點特征和深度特征。傳統(tǒng)特征提取方法是用opposift+harrislaplace的方法和HOG方法提取關鍵幀的SIFT、HOG等特征,將這些特征以列向量形式存到HBASE中,如圖4所示;利用目標檢測器,如行人檢測器、汽車檢測器等目標大類檢測器,實現(xiàn)對關鍵幀中的相關目標的檢測定位。特征索引,將步驟8中的特征文件中的特征聚類m類、量化、構建倒排表。通過倒排表,提取任務中人物圖像和背景圖像的特征并量化。特征比對,計算和查詢檢測區(qū)域和目標圖像的SIFT特征,然后從倒排表中找到對應的類的特征點,并找到這些特征點對應的圖片。最后按照圖片的權重進行排序priority=前景中特征點數(shù)×ratio1+背景中特征點數(shù)×ratio2,其中ratio1和ratio2是權重參數(shù)。
采用了該發(fā)明中的面向警務實戰(zhàn)的海量視頻分布式檢索方法,實現(xiàn)案件偵破過程中視頻線索的快速發(fā)現(xiàn),即快速搭建一個分布式網(wǎng)絡,將一切可用的計算資源連接起來,有效存儲和管理不斷增加的偵查視頻數(shù)據(jù),針對已有的線索信息,在海量的偵查視頻中分布式檢索,并依照實時展現(xiàn)檢索結果實現(xiàn)相關反饋,以便快速準確地獲得視頻線索,具有廣泛的應用范圍。
在此說明書中,本發(fā)明已參照其特定的實施例作了描述。但是,很顯然仍可以作出各種修改和變換而不背離本發(fā)明的精神和范圍。因此,說明書和附圖應被認為是說明性的而非限制性的。