李娟 王瑞良
(1.中原工學院,河南鄭州 450007;2.中國廣電河南網絡有限公司鄭州市分公司,河南鄭州 450000)
隨著信息技術的發展與信息設備軟硬件性能的快速提升,人們在企事業單位及日常生活、工作中利用數字成像設備(如手機、數碼相機)形成了海量的圖像、視頻等數字化的影像檔案,這類檔案蘊含著比其他類型更加豐富的檔案信息,記錄并管理著人類歷史的進程,而如何從這些大規模的數字化檔案中快速有效地檢索出用戶所需要的圖像,增強檔案管理的數字化、智能化,成為當今檔案管理工作的主要問題之一,也是創造檔案最大化社會效益的手段之一。
近幾年,人工智能技術迅速崛起,人們獲取信息和使用信息的途徑也得到了迅猛的發展,如圖像分類、圖像識別已應用于現代社會中的各個領域,且發揮著越來越重要的作用。將基于深度學習的圖像識別技術應用于檔案管理工作中,并提高檔案檢索效率,是數字檔案信息資源管理工作中的重要組成,也是利用計算機對其進行智能化的、高效的處理亟待解決的問題。
數字圖像檔案的存儲與檢索目前采用的方式復雜多樣,但大部分數字圖像數據都采用表+實體的方法來存儲,即將數字圖像存儲在文件系統中,數據庫表只提供一個字段存儲圖像數據文件的存儲路徑,這種管理模式將路徑與圖像分開存儲,容易造成二者的不一致性,給檔案的管理和維護工作帶來了一定的難度,同時也大大降低了檔案的安全性。隨著大數據的發展與非結構化數據庫的出現,將圖像文件與其他數據同時存儲在數據庫當中是十分有必要的,這樣就避免了數據的不一致性,也增強了數據的安全性和可遷移性。
數字圖像檔案面臨的另一個難點是如何對數據庫中的圖像進行檢索,傳統方法是進行人工標注圖像內容,這種方式已無法與現在媒體的產生速度相匹配了,不僅耗費大量資源,且容易出錯。張倩[1]等人根據內容和性質,將信息集合到一個預先設定的類別中,當用戶查詢某個關鍵詞時,搜索引擎只根據這些描述進行檢索,提高所需信息的命中率;鄭國富[2]等人是先對圖像內容進行分類,再提取用的需求特征,當然用戶進行檢索時,將檢索內容進行轉變,并進行相似度匹配,從而查詢出有用的信息;姬鳳英[3]等人是在輸入圖像時提取圖像特征向量,根據用戶指定的查詢特征利用距離函數與數據庫中的特征向量進行相信匹配,并分級進行檢索,先進行紋理匹配再進行顏色等其他特征的匹配以提高檢索的準確率。
以上方法的缺陷是特征由人工選取,選取什么特征、選取多少特征,直接決定了提取特征向量的好壞。而且,對于一些類別之間差異細微、圖像干擾嚴重等問題,利用傳統的機器學習方法進行的識別精度將大打折扣。
隨著數字圖像檔案的海量增長,信息檢索的效率逐漸滿足不了檔案工作的需求,因此,本文將利用深度學習方法解決數字圖像檔案的智能檢索問題。
在繼2014年Rcnn[4],2015年Fast R-CNN[5]后,2016年Shaoqing Ren,Kaiming He,Ross Girshick 等人共同提出了Faster R-CNN[6]物體檢測的卷積神經網絡模型。Faster R-CNN 其結構描述如圖1 所示,最左邊是輸入圖片,經過卷積層得到特征圖(feature map)。基于該特征圖,通過區域生成網絡(RPN)提取區域推薦窗(region proposals),每張圖片生成300個推薦窗,把這些推薦窗映射到CNN的最后一層卷積特征圖上;再由基于興趣區域的池化層(RoI pooling)生成固定尺寸的特征圖;最后利用Softmax Loss和Smooth L1 Loss對分類概率和邊框回歸聯合訓練。

圖1 Faster R-CNN 網絡結構圖Fig.1 Faster R-CNN Network Sstructure Diagram
Faster R-CNN使用了兩級探測器,由三個重要部件組成:共享底層卷積層、區域推薦網絡(RPN)和基于興趣區域(ROI)的分類器。RPN網絡主要用于生成region proposals,首先生成一堆Anchor box,對其進行裁剪過濾后通過softmax判斷anchors屬于前景(foreground)或者后景(background),即是物體或者不是物體,所以這是一個二分類;同時,另一分支bounding box regression修正anchor box,形成較精確的推薦。ROI Pooling層利用RPN生成的推薦和VGG16 最后一層得到的特征圖,得到固定大小的推薦特征圖,進入到后面可利用全連接操作來進行目標識別和定位。Faster R-CNN 的核心思想是用RPN代替之前的Selective Search(選擇性搜索),將提取的推薦框由2000個減少為300個,質量高、數據量少,解決了求出所有可能的候選框非常耗時的問題,且卷積網和Faster R-CNN部分共享,檢測速度大幅提升。
圖2是Faster R-CNN網絡在PASCAL VOC2007 數據集中的檢測結果。模型采用VGG-16,獲得這些結果的運行時間大概每幅圖像是198ms。從結果來看,通過Faster R-CNN 可以找出圖中有哪些對象,并標記出這些對象的具體位置信息。

圖2 Fast R-CNN 目標檢測案例Fig.2 Fast R-CNN Target Detection Case
在數字圖像檔案信息的存儲階段,考慮到圖像檢索與操作的一致性,將摒棄傳統的關系數據庫表,采用非結構化數據庫(如TRIP)作為存儲的首選方案。非結構化數據庫對字段長度沒有上限,不影響存儲空間,而且采用面向對象的大對象機制,該類數據庫專門有一個二進制數據的存儲字段,能存儲多達200多種不同格式的電子文件,也提供有字段用于存儲文件原始的base64編碼,即可將文件原始內容全部存儲至數據庫中。因此,若一份檔案文件關聯若干子文件或圖像,檔案文件實體及其子文件(或子圖像)的實體元數據均以子記錄的方式存儲于數據庫中。圖像元數據中需增加檢測對象和目標位置及精確度三個子字段來描述抽取后的內容,如表1所示。

表1 圖像子記錄元數據表設計Tab.1 Design of Image Sub-record Metadata Table
由于一幅圖像可能識別出的物體種類較多,可對檢測對象字段、檢測對象和目標位置及精確度進行子字段設計,即一個字段可以存儲多項信息。例如,一本書的作者有若干名,即可將作者設置為子字段的方式將每位作者存儲其中。
整個數字圖像檢索模塊可如圖3 所示,由存儲模塊、訓練模塊和檢索模塊構成。其中存儲模塊負責檔案文件的存儲,包括各類文件的原始數據、提取的元數據以及對圖像數據預檢測部分;訓練模塊則根據用戶預設的分類內容對樣本進行訓練,找到適用本項目的參數配置及網絡結構;檢索模塊則依據用戶輸入的檢索關鍵字,通過搜索引擎查詢出符合用戶描述的圖像。

圖3 檢索功能結構圖Fig.3 Retrieval function structure diagram
下面分別介紹這幾個模塊:
(1)圖像訓練模塊。該模塊以PASCAL VOC2007 數據集作為訓練樣本基礎,結合檔案所需要類別,對訓練樣本進行適當修改,仍以VGG16 作為預訓練網絡模型作為基本網絡,對Faster R-CNN 進行訓練,并獲取相關網絡模型的參數。
(2)圖像存儲模塊。該模塊將原始圖像以二進制編碼形式存儲在數據庫中,同時將該圖像進行預處理,以提高檢測的準確度,如:對圖像進行幾何變換、去噪、去模糊等處理。然后將處理后的圖像送入訓練后的Faster R-CNN對象檢測模型進行目標識別,將識別出的類別、位置及精度信息依次存入至數據庫中。
(3)搜索引擎。該模塊針對前期圖像提取的對象檢測結果,在數據庫中,先檢索出含有相同的目標的所有圖像,并對其標注的精確度使用排序算法進行從大到小的排序,同時可將位置信息標注在圖像上,最后顯示到用戶的檢索結果界面中。
本文提出了一種基于深度學習技術的智能數字圖像檔案檢索模式,不但能夠自動標注并保存數字圖像檔案的內容,而且還能對精度排序,檢索出與用戶輸入的關鍵字最接近的內容,大幅度減少了用戶的檢索時間,并提高了檢索的準確率。不但可以提升數字圖像檔案資源的利用率,而且能夠滿足用戶多元化的需求,也關系到后續信息服務的深入開展。