陳建促,王 越,朱小飛,李章宇,林志航
重慶理工大學 計算機科學與工程學院,重慶400054
生物資源是人類賴以生存和發(fā)展的自然基礎,是生態(tài)系統(tǒng)平衡與穩(wěn)定的有力保障。野生動物資源是生物資源的重要組成部分,具有珍稀性和生命脆弱性,保護和合理利用野生動物資源對可持續(xù)發(fā)展有著重要意義[1]。然而,當下對于野生動物的監(jiān)測保護是通過實地探查,或者使用昂貴的實時錄像機進行不間斷的定點錄像,需要投入大量的人力物力。因此,將目標檢測的研究成果運用于野生動物視頻檢測領域,對輔助科學研究有重要意義。
近年來,國內(nèi)外研究學者在野生動物領域做了一系列的分類與檢測識別研究工作。謝素儀[2]通過結(jié)合Haar-like 特征提取器與Adaboost 分類器完成對貓臉的檢測;劉文定等人[3]結(jié)合感興趣區(qū)域ROI 與卷積神經(jīng)網(wǎng)絡對國家級自然保護區(qū)的陸生野生動物進行自動識別;劉威[4]結(jié)合形狀、運動特征以及Adaboost分類方法對運動動物目標進行分類檢測。隨著深度卷積網(wǎng)絡的不斷發(fā)展,基于深度學習的目標檢測方法憑借其強大的特征學習能力,表現(xiàn)出了巨大優(yōu)勢。在基于深度學習的目標檢測領域,文獻[5]結(jié)合selective search 算法與SVM分類器,提出了基于區(qū)域的卷積神經(jīng)網(wǎng)絡R-CNN,其提取出的特征魯棒性高、通用性好,但存在時間開銷大的缺點;文獻[6]使用卷積神經(jīng)網(wǎng)絡直接產(chǎn)生候選框區(qū)域?qū)-CNN 進行改進,提出的Faster R-CNN模型解決了R-CNN 模型的時空開銷大的問題;Facebook 人工智能實驗室設計的基于回歸的YOLO[7]模型,使用端到端的訓練方法,提升了目標檢測的速度,但其檢測精度低;谷歌團隊設計的SSD[8]模型對全圖各個位置的多尺度區(qū)域進行回歸,目標檢測精度高,但檢測速度不及YOLO模型;Redmon等人[9]通過Darknet-53卷積神經(jīng)網(wǎng)絡與金字塔網(wǎng)絡,對全圖進行三個不同尺度的特征圖檢測,得到檢測速度與檢測精度的平衡。在上述模型中,YOLOv3 模型的綜合性能最優(yōu),在保持YOLO 模型檢測速度的同時,達到了SSD 模型的檢測精度。針對YOLOv3模型應用于視頻目標檢測時,未考慮到連續(xù)視頻圖像間的相關性問題,本文提出了Context-aware YOLO 模型。該模型充分利用相鄰視頻幀中目標間的強關聯(lián)性,將Darknet-53 殘差神經(jīng)網(wǎng)絡作為特征提取器,通過互信息熵對視頻相鄰幀的相似度進行量化得到相關因子,再將相關因子應用于視頻前后相鄰幀的特征圖融合,最終對融合后的特征圖進行檢測;另外,采用直方圖均衡對視頻中的“鏡頭切換”進行判斷,確定特征圖融合的臨界條件。本文的主要貢獻如下:
(1)使用線性迭代的方式對視頻前后幀三個不同尺度的特征圖分別進行融合;
(2)通過圖像互信息熵擬合出視頻相鄰幀融合的相關因子;
(3)引入直方圖均衡計算圖像相似度的方法,確定相鄰幀的融合條件。
目標檢測是機器視覺的一個重要研究方向,而深度神經(jīng)卷積網(wǎng)絡憑借其提取目標特征的抽象能力、抗平衡能力、抗尺度變化能力強的優(yōu)勢,使其成為機器視覺領域的研究熱點。
在深度學習圖像目標檢測領域,Sermanet等人[10]提出的Overfeat 模型使用卷積網(wǎng)絡實現(xiàn)多尺度與滑動窗口方法,對圖像進行集成識別、定位和檢測;文獻[5]提出的R-CNN模型結(jié)合Selective Search算法篩選出感興趣區(qū)域,并對圖像提取到的候選區(qū)域進行特征提取,最終通過SVM 分類器進行分類,但其存在時間開銷與空間開銷大的缺點;He 等人[11]提出的SSPNet 網(wǎng)絡在卷積層與全連接層之間加入空間金字塔池化層,解決了候選區(qū)域計算的冗余問題,在保持精度的前提下,檢測速度相對于R-CNN 提升了38 倍;Ren 等人[6]提出的Faster R-CNN,通過RPN 將候選區(qū)域生成、特征提取、候選目標確認與包圍框回歸統(tǒng)一到同一個網(wǎng)絡框架中,提升了R-CNN的檢測精度與檢測速度;清華大學提出的Hyper net[12]通過網(wǎng)絡多層級特征提取、最大池化降維、逆卷積擴增、LRN正則化堆疊[13],對形成的Hyper Feature Maps進行預測與定位;Redmon等人[7]提出的YOLO算法直接將整張圖作為網(wǎng)絡的輸入,并通過一次前向傳播直接得到目標包圍框的位置和目標類別,其檢測速度快,但精度與定位準確度低;由于YOLO未采用多窗口機制來處理多尺度窗口,Liu 等人[8]結(jié)合YOLO 算法速度快與RPN 中多參考窗口技術的優(yōu)點,提出的SSD 算法在多個分辨率上的特征圖進行檢測,在準確率接近Faster R-CNN的同時,保持了極快的檢測速度;Lin等人[14]提出的Retina-Net 提出Focal Loss 聚焦損失函數(shù),通過降低網(wǎng)絡訓練過程中簡單背景樣本的學習權重,對難樣本的聚焦和網(wǎng)絡學習能力進行重新分配,使得檢測精度和速度全面超越基于候選區(qū)域的模型;Redmon等人[9]提出的YOLOv3 模型,將Darknet-53 作為基礎特征提取網(wǎng)絡,并使用金字塔網(wǎng)絡對圖像進行多尺度檢測,實現(xiàn)了檢測精度與速度的融合。
考慮到將視頻拆分為連續(xù)的圖像幀進行處理時,會丟失幀間相關性,將YOLOv3 模型、圖像相似度與時間序列關系相結(jié)合,對Darknet-53網(wǎng)絡提取到的連續(xù)前后視頻幀的特征圖進行線性迭代融合,以提升野生動物視頻目標檢測的準確率。
為了有效檢測視頻中的目標,借鑒文獻[9]中提出的實時目標檢測YOLOv3(You Only Look Once)模型。YOLOv3模型是Redmond和Farhadi提出的一種基于回歸的實時目標檢測模型,是一個可以一次性預測多個目標框位置和類別的深度卷積網(wǎng)絡。其將Darknet-53 殘差神經(jīng)網(wǎng)絡作為特征提取網(wǎng)絡,對輸入圖像進行特征提取,得到三個不同尺度的特征圖;在Darknet-53 的基礎上,通過加入額外卷積層對圖片進行多尺度預測,從而獲得更高的語義信息。如圖1 為YOLOv3 的模型結(jié)構(gòu)圖。
在對視頻進行實時目標檢測的過程中,對單張圖像進行分析和處理在很大程度上限制了所能獲取的目標特征,但視頻圖像序列卻包含了大量的信息,借助視頻圖像序列關系更有利于目標的特征提取。Contextaware YOLO是基于深度學習的視頻目標檢測方法,是對YOLOv3模型的改進,其模型結(jié)構(gòu)如圖2所示。
圖1 YOLOv3模型結(jié)構(gòu)圖
如圖2所示,Context-aware YOLO模型首先對輸入的視頻序列使用直方圖均衡計算相似度的方法,判斷幀融合的臨界條件;使用Darknet-53網(wǎng)絡對視頻幀進行特征提??;并對不同視頻幀提取到的三個不同尺度特征圖分別進行線性迭代融合;對融合之后的特征圖進行類別與目標框的預測,獲得具有目標語義關聯(lián)信息的最終檢測結(jié)果。
在相鄰幀融合之前,引入直方圖均衡[15]計算圖像相似度的方法,對相鄰視頻圖像進行相似度度量。若為視頻“鏡頭切換”,相鄰視頻幀則不存在時間序列關系,若仍對其進行特征圖融合,會導致識別率降低。
在對圖像進行直方圖均衡相似度度量時,假設圖像某像素點的RGB值為(a,b,c),則直方圖:
對圖像中每個像素點分別進行式(1)的計算,得到圖像的直方圖數(shù)據(jù);并對直方圖數(shù)據(jù)使用巴氏系數(shù)進行計算:
式中,p、p′分別代表源圖像與候選圖像的直方圖數(shù)據(jù),P 為巴氏系數(shù)因子值,即相似度,P ∈[0,1]。若相似度P 小于閾值σ(σ=0.5),則視為視頻“鏡頭切換”,將不對相鄰視頻圖像的特征圖進行融合;若相似度P 不小于閾值σ,則對相鄰視頻圖像進行特征圖融合。
圖2 Context-aware YOLO模型結(jié)構(gòu)圖
為充分利用視頻序列所包含的目標信息,本文對經(jīng)過Darknet-53提取到的視頻圖像特征圖進行有效融合,以提升目標檢測準確率。在Context-aware YOLO模型中,相鄰特征圖融合結(jié)構(gòu)圖如圖3所示。
圖3 特征圖融合結(jié)構(gòu)圖
在圖3中,當前幀在與其前后幀圖像進行特征圖融合時,采用線性迭代的方式,并將原特征圖更新為融合后的特征圖。
假設當前特征圖為Fn,當前幀的前一幀為Fn-1,當前幀的后一幀為Fn+1,則融合后的特征圖F′n:
其中:
且ω 表示相鄰視頻幀的相關因子,ω ∈[0,1]。
在特征融合中,如何有效選取相關因子ω 是本節(jié)的重點。針對相關因子的選取,使用互信息熵計算圖像相似度,對得到的相似度進行高斯變化,并與距離權重相乘。
相關因子ω:
其中σ=0.6;μ=0.6;x 為相鄰視頻幀圖像的相似度均值,取值為0.69;distance_weight為距離權重,取值為1。
圖像互信息熵:
假設有視頻圖像A、B,則A、B的互信息熵H(A)、H(B):
A、B 的聯(lián)合熵H(A,B):
A、B 的互信息熵I(A,B):
式中,H(A,B)表示A、B 共同包含的信息。若A、B 包含的共同信息越少,則H(A,B)越小;因此,I(A,B)越大。
為了得到式(5)中的參數(shù)x,將相鄰圖像與當前幀的互信息熵進行歸一化處理,即x:
其中,x ∈(0,1]。
本文實驗環(huán)境與配置為:Ubuntu 14.04 操作系統(tǒng),Intel Xeon E5-2623 v3 處理器,64 GB 內(nèi)存,NVIDIA Tesla K80顯卡,以及Keras深度學習框架。
實驗數(shù)據(jù)集采用基于視頻的野生動物檢測數(shù)據(jù)集WVDDS。WVDDS 數(shù)據(jù)集包含了12 個類別,253 段視頻片段,視頻按照每5 幀標注一次的頻率進行標注,標注采用PASCAL VOC格式,共6 601視頻圖像。
5.3.1 模型再訓練參數(shù)
為了與YOLOv3 在同等條件下進行檢測性能的比較,在原作者提供的權重文件基礎上,使用WVDDS 數(shù)據(jù)集進行再訓練,其再訓練模型的參數(shù)如表1所示。
表1 模型再訓練的參數(shù)表
5.3.2 相關因子
為了驗證視頻序列圖像相似度的變化關系,選取視頻中的第一幀作為當前幀,對視頻所有序列圖像與當前幀使用互信息熵進行相似度計算,并進行歸一化。視頻序列中,當前幀與視頻序列幀的相關因子變化曲線如圖4所示。
圖4 當前幀與視頻序列幀的相關因子變化曲線
如圖4,距當前幀越近,其相似度越大;據(jù)當前幀越遠,其相似度越小。相似度呈下降趨勢,且保持在0.1上下。
表2 使用互信息熵對視頻的相鄰兩幀分別進行相似度計算,相似度均值作為式(5)中x 的取值。如表2所示,x 的取值為0.69。
表2 視頻相鄰幀的互信息熵相似度
5.4.1 直方圖相似度判斷
在4.3 節(jié)中,使用直方圖均衡對視頻相鄰幀的相似度進行判斷。圖5 展示了相鄰視頻幀相似度。若相鄰幀的相似度S 不小于0.5,則進行相鄰特征圖融合;反之,則判斷為視頻“鏡頭切換”,不進行融合。
如圖5所示,(a)、(c)的相似度不小于閾值,對進行特征圖融合,但是(b)、(d)的相似度小于閾值,判斷為視頻“鏡頭切換”,不對其進行特征圖融合。
5.4.2 目標檢測結(jié)果
為了與YOLOv3算法進行對比,本文算法將初始訓練參數(shù)設定為與YOLOv3 原模型一致。在進行檢測任務時,閾值scores=0.5,IOU=0.5。圖6為YOLOv3模型與Context_aware YOLO模型的實驗結(jié)果對比,其中,第1、3、5、7 行為YOLOv3 模型的檢測結(jié)果,第2、4、6、8行為Context_aware YOLO模型的檢測結(jié)果。
圖5 相鄰視頻幀的圖像相似度
如圖6 所示,第2、4、6、8 行相對于第1、3、5、7 行的目標檢測率得到了提升。其中,第1、2行為背景遮擋的檢測結(jié)果對比,第3、4 行為自遮擋的檢測結(jié)果對比,第5、6行與7、8行組為形變的檢測結(jié)果對比。
5.4.3 平均準確率
檢測性能使用平均準確率AP 進行評估,其通過數(shù)值積分對P-R 曲線進行計算,P 代表Precision準確率,R 代表Recall召回率。其中:
式中,TP 表示True Positives;TN 表示True Negatives;FP表示False Positives;FN 表示False Negatives。
F1 值為模型準確率與召回率的加權平均,其反映了模型準確率與召回率的綜合性能,它的取值在0~1之間。F1的計算公式如下,
表3為YOLOv3模型與Context-aware YOLO模型在IOU 為0.5 時的P-R變化結(jié)果,表3 說明Context-aware YOLO 模型相對于YOLOv3 模型的F1 值提升了2.4%,mAP提升了4.71%;
表3 YOLOv3模型與Context-aware YOLO模型的對比
圖6 YOLOv3與本文模型的檢測結(jié)果對比
表4 不同模型在WVDDS數(shù)據(jù)集上的類別平均準確率
圖7 不同模型在WVDDS數(shù)據(jù)集上的類別P-R曲線對比
表4 為YOLOv3 模型與Context-aware YOLO 模型在WVDDS數(shù)據(jù)集上的類別平均準確率對比實驗結(jié)果;圖7為YOLOv3模型(第1、3行)與Context-aware YOLO模型(第2、4行)在WVDDS數(shù)據(jù)集上的P-R 變化曲線。
如表4,Context-aware YOLO模型中類別的準確率均高于YOLOv3模型;參照圖7,由于融合前后幀特征圖信息的Context_aware YOLO 模型更能對遮擋、形變目標進行準確檢測,檢測成功的目標數(shù)量與檢測置信度得到了提升。因此,模型的整體檢測性能也得到了提升。
本文在YOLOv3目標檢測算法的基礎上,對Darknet-53特征提取網(wǎng)絡提取到的視頻前后幀的三個尺度特征層進行線性迭代融合,將融合后的特征圖通過額外卷積層,并使用NMS 非極大值抑制進行最終檢測。實驗表明,在手工標注的同一野生動物視頻數(shù)據(jù)集下,Context-aware YOLO 算法相比于YOLOv3 算法,整體的目標檢測識別率得到了提升。