閆 彬,陳耀武
(浙江大學數字技術及儀器研究所,杭州 310027)
基于內容的智能視頻監控文件系統
閆 彬,陳耀武
(浙江大學數字技術及儀器研究所,杭州 310027)
針對傳統文件系統碎片化會嚴重影響存儲性能的問題,結合視頻監控具有的基于內容檢索的特點,提出一種應用于智能視頻監控的專用文件系統。基于Extent的邏輯卷索引結構,以特征錄像段為單位進行特征內容的索引,采用B+樹和位圖提高索引效率。在索引策略中,基于數據簇回收最原始數據,實現循環存儲。通過控制數據連續存儲的時間,優化數據塊的分配,保證數據的連續、順序存儲。測試結果表明,該文件系統索引策略對存儲帶寬的下降比例僅為2.4%,在1 Mb/s的典型視頻碼率下,存儲帶寬相比傳統文件系統提高了24.5%,存儲空間利用率達到了99%。
基于內容;文件系統;索引策略;Extent結構;碎片整理;智能視頻監控
DO I:10.3969/j.issn.1000-3428.2015.10.047
隨著視頻監控技術的日益成熟,網絡視頻監控系統在城市安防系統中發揮著越來越重要的作用,并快速地朝著智能化網絡視頻監控的方向發展[1-2]。要從視頻監控的海量數據中快速定位到有效信息,依靠傳統的錄像回放及人工查找已無法滿足需求;基于視頻內容分析的視頻摘要、目標軌跡跟蹤等技術,使得信息檢索中人力的解放和效率的提升成為可能,也使得視頻監控存儲技術在滿足原有的高帶寬、大容量、高可靠性等基本需求之外,要滿足基于內容檢索的需求。傳統的基于內容圖像檢索的研究側重于對圖像集進行結構化處理、視頻分割和圖像特征提取[3-5],而存儲方案則是視頻監控智能化的另一個重要方面。如果用傳統文件系統存儲視頻監控數據,其多級指針的索引結構會導致磁盤I/O開銷較大,視頻數據碎片化比較嚴重,存取效率也會因此逐步降低[6]。
針對傳統文件系統的上述問題,本文提出一種基于內容的智能視頻監控專用文件系統,并對視頻
數據存儲過程中索引結構的維護和整理進行闡述。
本文設計的文件系統基于攝像機與存儲資源(邏輯卷)一一對應的方案:依據攝像機的存儲周期及碼率信息,為攝像機分配相應大小的邏輯卷,將邏輯卷格式化為此文件系統結構,所有數據依此格式進行組織,到達存儲周期后,回收最老錄像的存儲空間,實現循環存儲。文件系統結構分為元數據區及數據區,如圖1所示。

圖1 文件系統結構
數據區中的數據簇是邏輯組織結構,被劃分為數據塊,對所有數據塊進行連續編號,在其上存儲視頻數據;元數據區包含文件系統的超級塊和索引區。
(1)超級塊:文件的結構自描述,除了版本信息、創建時間、容量等基本信息外,還記錄了各索引區域的起始位置和大小、數據區的起始位置、數據簇的大小和數量、數據塊的大小等內容。超級塊是文件系統的基準,在文件系統格式化時寫入。
(2)索引區:基于區段(Extent)的索引和基于分配塊的位圖索引是文件系統的 2種索引實現方案[7-8]。該文件系統對數據塊采用基于Extent[9-10]的索引方式,降低了索引的空間占用率。
視頻數據以錄像段為基本單位進行組織,每個錄像段有唯一的ID;一個錄像段包含多個Extent,其索引結構如圖2所示。一個Extent記錄某段錄像在磁盤上的起始數據塊號和連續存儲的數據塊數。錄像段與其Extent數目的比例為1:4。

圖2 錄像段索引結構
索引區主要包括3個部分的索引:錄像段,空閑Extent及特征錄像段。(1)錄像段索引區域記錄了所有錄像段的索引信息,以錄像段的開始時間為鍵值,用B+樹組織錄像段索引,提升錄像段的檢索性能,索引區起始位置為 B+樹的根節點;(2)空閑Extent索引區域提供對所有空閑數據塊的索引,可看作節點為Extent的循環鏈表,每個節點記錄一段空閑數據塊的信息,所有Extent相鄰存儲;(3)特征錄像段與特征Extent索引區域用于索引被標記的視頻內容,可通過相應位圖,基于特定錄像段ID實現特征錄像的快速定位。
循環存儲之前錄像的各索引結構如圖3所示。文件系統格式化后,空閑Extent索引區域只包含一個Extent,索引整個數據區;初期存儲產生的每個錄像段也只有一個Extent;視頻內容被標記時,以錄像段的形式插入到特征錄像段索引區中。錄像段被標記的不連續片段被記錄在特征錄像段下不同的特征Extent中,特征位圖被相應置位;應用層可基于錄像段ID,通過特征錄像位圖快速索引到被標記的視頻內容。

圖3 循環存儲前錄像的索引結構
到達存儲周期后需要進行空間回收,特征錄像段通常需被保留,因此,回收空間出現不連續,新寫入的錄像段也會出現分段;此時一個錄像段對應多個Extent,而空閑Extent索引鏈表也分裂為多個節點,故需要多種策略來維持文件系統的穩定與高效。
3.1 回收策略
回收過程即為清除或修改錄像段和特征錄像段索引區域,將新增的空間添加到空閑Extent區域的過程,應遵循2個原則:(1)一次至少回收一個數據簇,避免頻繁回收;(2)如果回收造成某錄像段剩余片段很短,則剩余片段一并回收。具體策略描述如下:
Step1 按時間索引到最老錄像段,獲得錄像段ID;計算錄像段的全部數據塊數目減去1 024,其值如果未超過一個數據簇的數據塊數目,則取出錄像段的全部Extent索引;否則取出錄像段所需回收的數據塊數目對應的Extent索引。遍歷取出的Extent索引ECur。
Step2 按錄像段ID檢索特征錄像段位圖,相應位若未被置位,則回收當前Extent,跳到Step5。
Step3 特征Extent若需保留,則回收ECur非保留部分;否則一并回收特征錄像段和特征Extent的相應區域。
Step4 特征錄像段的Extent區域中若因回收而出現空洞,則將后面的 Extent區域前移,保證Extent連續。
Step5 若錄像段取出的Extent索引未完成遍歷,則跳到Step2;若錄像段已無Extent,則回收其錄像段索引。
Step6 已回收數據塊數目若不足一個數據簇,則跳到Step1。
3.2 寫入策略
從磁盤存取數據的時間可以表示為[11]:

其中,Ts為磁頭尋道時間為磁盤的旋轉延遲為數據的傳送時間(r表示磁盤轉速,b表示要傳送的字節數,N表示一個磁道中的字節數)。在視頻數據存儲過程中,盡量分配連續的數據塊,避免了錄像段分段過多,降低了 Ts,進而提高數據的存取效率。寫入策略的2個基本原則:(1)空閑Extent區域是一個循環鏈表,數據存儲如需申請空閑空間,均從頭結點Extent申請,隨著數據的循環寫入和回收,其頭結點也循環移動;(2)由于短的特征片段的存在,部分空閑Extent可能很小,若空閑Extent頭結點是這樣的Extent,則向后移動頭結點,并再次嘗試分配,直到空閑Extent大小滿足需求。設BR為視頻碼率(M b/s),BS為數據塊大小(KB),錄像段連續存儲時間至少為CST(s),所需數據塊數目為DBN,則有:

空閑Extent的數據塊數目若小于DBN,則被跳過。實際方案中,BS為16 KB,按照常用的1 M b/s碼率進行存儲時,設定連續存儲時間應大于5 s,則空閑Extent至少包含40個數據塊才可用于分配。設數據緩沖NBC個數據塊后寫入磁盤,空閑Extent至少包含EBC個數據塊時才允許被分配(通常),則具體的寫入策略如下:
Step1 索引空閑Extent頭結點,其數據塊數目若大于EBC,則取出相應大小的空間,并將取出的空間從頭結點中刪除,跳到Step3。
Step2 其索引的第一個空閑數據塊的編號若與上一次最后寫入的數據塊號連續,則取出頭結點索引的所有數據塊,并后移頭結點;否則后移頭結點,并跳到Step1。
Step3 若錄像段為新建,則在錄像段索引區插入新的B+樹結點。
Step4 要寫入的數據塊號若與上一個數據塊號連續,則更新錄像段對應的Extent索引;否則意味著寫入空間分段,向錄像段的Extent索引區插入新的Extent索引。
Step5 將視頻數據寫入申請到的數據塊,如果已寫數據塊數目小于NBC,則跳到Step1。
依據此策略對圖3所示邏輯卷區域進行回收并重新寫入錄像后,其索引結構如圖 4所示,空閑Extent1和Extent2屬于被跳過的空閑空間。

圖4 循環存儲后錄像的索引結構
3.3 碎片整理策略
上述回收策略和寫入策略會造成空閑索引區域的碎片化,如圖4中空閑Extent已分裂為3個部分,需通過碎片整理來保證空閑空間連續。錄像回收是導致空閑Extent碎片化的原因,故將碎片整理的時機分攤在每次空間回收后。設回收的區域為ER,碎片整理的過程就是將ER置入空閑Extent區域的過程。ER區域與某空閑Extent相鄰時應進行合并,否則將ER作為新的空閑Extent插入到空閑索引中;插入位置依據當前存儲位置進行評價,以保證錄像整體上的順序化。
設Extent的起始位置字段名稱為SBN,數據塊數目字段名稱為 BC,數據區所有數據塊數目為BTC,空閑Extent索引區名稱為EF,以i為游標遍歷EF,臨時數據塊號BTN,算法描述如下:
Step1 由頭結點開始正向遍歷空閑Extent索引區,計算:

如果BTN與ER.SBN相等,跳到Step2;否則,計算:
BTN=(ER.SBN+ER.BC+BTC)%BTC
如果BTN與EF[i].SBN相等,跳到Step3;如果空閑Extent索引區域已遍歷結束,則跳到Step4。
Step2 向前合并,將ER合并到EF[i]的末端,計算:

如果BTN與EF[i+1].SBN相等,則說明EF[i]索引區域與EF[i+1]的索引區域變為連續,此時將EF[i+1]索引合并到EF[i],同時刪除EF[i+1],EF[i+1]后面的所有Extent向前復制一個Extent的長度;算法結束。
Step3 向后合并,將ER合并到EF[i]的前端,算法結束。
Step4 將ER作為空閑Extent單獨插入,下一個申請的空閑空間起始數據塊為EF[0].SBN,各Extent到它的邏輯距離可表征這個Extent在時間上被分配的順序,設Extent邏輯距離為LDis(E),則:

逆序遍歷空閑Extent索引區,如果LDis(EF[i]>LDis(ER),則將EF[i]后移置EF[i+1];否則,將ER插入到EF[i+1]的位置,算法結束。
以浙江大學蘇州工業研究院視頻監控系統為測試平臺,實現對文件系統相關策略的效率及有效性的驗證。測試平臺網絡拓撲如圖5所示。

圖5 網絡視頻監控拓撲結構
事務中心服務器型號為Dell PowerEdge R210,2 GB內存,操作系統為CentOS6.0,負責設備管理和任務調度;攝像機均為IP攝像機,DM 368 432 MHz處理器,256 MB內存,Linux操作系統,內核版本2.6.27,負責視頻數據的采集、編碼及存儲;IP SAN型號為DotHill R-Evolution 3920 Raidar,在IP SAN存儲集群中為2個攝像機分配存儲資源,Storm視頻分析集群用于提供視頻內容的實時分析。設計測試方案中構造短的特征錄像段,以得出嚴重碎片化時的測試結果,方案描述如下:
選取攝像機A,B,采用視頻監控典型的1 M b/s碼率,配置存儲周期2 h,IP SAN分配卷大小為1 GB;存儲計劃為早7點到晚6點,間隔1 h存儲;將攝像機布置在停車場相鄰位置對入口進行采樣,數據提交到Storm集群進行車牌識別;攝像機A在存儲時將非本市車牌的錄像段標記為特征錄像段,在每次回收特征錄像段Extent時隨機判斷是否保留。存儲一定時間后,可通過事務中心服務器對所有的特征錄像段實現秒級檢索。每次錄像存滿存儲周期后,統計攝像機 A,B的數據存儲總耗時,計算平均存儲帶寬,結果如圖6所示。

圖6 攝像機平均存儲帶寬
隨著視頻數據的不斷存儲與回收,攝像機A會進
行特征錄像段索引建立和回收的操作,由圖6可以得出,攝像機A平均存儲帶寬低于攝像機B,表明維護索引的操作會在一定程度上影響數據存儲帶寬;但由于:(1)文件系統索引區采用B+樹和錄像段位示圖加快索引;(2)碎片整理操作的時間消耗被分攤到每次空間回收時;(3)這些操作僅多了內存中的簡單邏輯判斷和有限次的磁盤I/O操作,故對攝像機A的存儲帶寬影響不會很多。測試中最大帶寬差距僅為0.37 M b/s,攝像機B的平均存儲帶寬為6.67 M b/s,攝像機A的平均存儲帶寬為6.51 Mb/s,相對B下降的比例僅為2.4%,表明特征錄像的相關操作對數據存儲效率的影響可以忽略不計。文獻[12]對基于傳統文件系統(Ext3)的存儲效率做了類似實驗,其在1 Mb/s的碼率下平均存儲帶寬約為5.23 Mb/s,本文件系統的存儲帶寬比其提高了24.5%。
每次取樣時對攝像機A的空閑Extent數、不可用碎片包含的數據塊數目進行統計,得出表1所示結果。

表1 攝像機A碎片統計
統計結果顯示,空閑Extent數目在2~7范圍內波動,表明碎片整理策略有效地將空閑Extent數目控制在某個范圍,碎片化程度不會加劇。不可用的數據塊數目被控制在80以下,而邏輯卷數據區所含數據塊數目約為 61 000,數據區空間利用率超過99%,存儲空間被充分利用。依據不同特征場景,本文件系統方案可通過調整數據寫入時對空閑Extent數據塊數目的限制,達到對碎片化和存取效率的平衡。
本文根據網絡視頻監控的數據存儲特點,提出一種基于內容的智能視頻監控專用文件系統。該文件系統采用 B+樹和位圖來組織基于錄像段和Extent的索引結構,并通過特征錄像段實現了基于內容的索引策略;在此基礎上優化了數據塊的分配、回收及碎片整理方案。依托實際平臺的測試結果表明,該文件系統實現了基于視頻特征內容的索引;相比傳統文件系統,存儲帶寬有了較大提升;各項策略維持了穩定的存儲帶寬和較高的磁盤利用率。由于視頻監控系統存在經常斷電的情況,如何在系統故障的情況下,保證文件系統的數據一致性將是下一步研究的重點。
[1] Haering N,Venetianer P L,Lipton A.The Evolution of Video Surveillance:An Overview[J].Machine Vision and Applications,2008,19(5):279-290.
[2] 潘國輝.安防天下2:智能高清視頻監控原理精解與最佳實踐[M].北京:清華大學出版社,2014.
[3] Das M,Liou S P.A New Hybrid Approach to Video Organization for Content-based Indexing[C]//Proceedings of IEEE Conference on Multimedia Computing and Systems.Washington D.C.,USA:IEEE Press,1998:96-100.
[4] 李向陽,莊越挺,潘云鶴.基于內容的圖像檢索技術與系統[J].計算機研究與發展,2001,38(3):344-354.
[5] 秦莉娟.基于內容的自動視頻監控研究[D].杭州:浙江大學,2006.
[6] 陳 歡,范志華,熊 勁,等.影響文件系統性能的若干因素的實驗[J].計算機工程,2007,33(8):74-76.
[7] Wikipedia.Extent(File Systems)[EB/OL].(2014-09-27). http://en.wikipedia.org/wiki/Extent-(file-systems).
[8] Bar M.Linux文件系統[M].天宏工作室,譯.北京:清華大學出版社,2003.
[9] Microsoft TechNet.Optimizing NTFS[EB/OL].(2014-08-14).http://technet.microsoft.com/en-us/library/ cc76 7961.aspx.
[10] Mathur A,Cao Mingming,Dilger A.Ext4:The Next Generation of the Ext3 File System[J].USENIX Magazine,2007,32(3).
[11] Stallings W.操作系統:精髓與設計原理[M].陳向群,譯.北京:機械工業出版社,2010.
[12] 湯家興,陳耀武,蔣榮欣.一種網絡視頻監控系統的專用存儲方案[J].計算機工程,2013,39(12):31-34.
編輯 顧逸斐
Intelligent Video Surveillance File System Based on Content
YAN Bin,CHEN Yaowu
(Institute of Digital Technology and Instrument,Zhejiang University,Hangzhou 310027,China)
Fragmentation of traditional file system seriously affects storage performance.Aiming at this drawback and combined with the characteristics of content-based retrieval in video surveillance,a dedicated file system for intelligent video surveillance is proposed.The proposed approach provides an Extent-based logical volume index structure,retrieves feature content based on feature video segments,and improves index efficiency by B+tree and bitmap.According to the index strategy proposed,recycle the oldest data based on data cluster,which realizes circular storage,optimize data block allocation policy by controlling the continuous storage time and evaluating allocated time of fragmentation,ensuring a continuous,sequential data storage.Test results show that the defragmentation impact to storage bandwidth is only 2.4%,compared with the traditional file system.It increases storage efficiency by 24.5%respectively on typical storage bit rate of 1 M b/s,while the storage space utilization is more than 99%.
content-based;file system;index strategy;Extent structure;defragmentation;intelligent video surveillance
閆 彬,陳耀武.基于內容的智能視頻監控文件系統[J].計算機工程,2015,41(10):250-254.
英文引用格式:Yan Bin,Chen Yaowu.Intelligent Video Surveillance File System Based on Content[J].Computer Engineering,2015,41(10):250-254.
1000-3428(2015)10-0250-05
A
TP18
浙江省重點科技創新團隊基金資助項目(2011R09021-02)。
閆 彬(1988-),男,碩士研究生,主研方向:視頻監控,網絡存儲;陳耀武,教授、博士生導師。
2014-11-17
2014-12-09E-m ail:robin3yb@gmail.com