楊非凡 廖蘭芳
摘要:針對傳統(tǒng)的關(guān)鍵幀提取方法誤差率高、實時性差等問題,提出了一種基于深度學(xué)習(xí)的目標(biāo)檢測提取視頻圖像關(guān)鍵幀的方法,分類提取列車頭部、尾部及車身所在關(guān)鍵幀。在關(guān)鍵幀提取過程中,重點研究了基于SIFT特征的粗識別和Alex-Net卷積神經(jīng)網(wǎng)絡(luò)模型的精識別兩個階段,通過模型訓(xùn)練驗證基于卷積神經(jīng)網(wǎng)絡(luò)的關(guān)鍵幀提取器的可行性。
關(guān)鍵詞:卷積神經(jīng)網(wǎng)絡(luò)(CNN);關(guān)鍵幀;目標(biāo)檢測
中圖分類號:TP391? ? 文獻(xiàn)標(biāo)識碼:A? ? ?文章編號:1009-3044(2018)36-0201-03
1 概述
隨著我國鐵路的不斷發(fā)展,鐵路在運行過程中的安全性問題日益凸顯,視頻監(jiān)控在鐵路交通安全中起著至關(guān)重要的作用。通過攝像頭監(jiān)控、互聯(lián)網(wǎng)的傳播,監(jiān)控畫面實時顯示,鐵路部門可以利用視頻中的有效圖像信息,對視頻流進(jìn)行處理,從而有效地保證鐵路系統(tǒng)的正常運營。因此,如何快速有效地提取鐵路視頻圖像中的關(guān)鍵幀信息,是本文研究的重點。
考慮到視頻中相鄰幀的重復(fù)率一般比較高,關(guān)鍵幀的提取可以減少幀數(shù),進(jìn)而提升圖像特征點檢測和匹配效率,同時也為圖像拼接提供一個組織框架。針對這項關(guān)鍵技術(shù),得到了研究者們的廣泛關(guān)注,并取得了一定研究成果。文獻(xiàn)[1]從相鄰幀間的顏色或紋理信息變化程度出發(fā),提出了基于視頻內(nèi)容的方法。文獻(xiàn)[2]通過計算當(dāng)前幀與類心之間特征值的距離,將視頻中所有幀進(jìn)行聚類分析,得到基于視頻聚類的分析方法。文獻(xiàn)[3]提出基于運動特征分析的算法,其基本原理是利用光流分析,將視頻中運動量最小的一幀作為關(guān)鍵幀。
上述的三類傳統(tǒng)算法主要基于圖像整體信息的變化來選定關(guān)鍵幀,容易造成關(guān)鍵幀選取錯誤、計算量大、實時性差等問題。因此,本文在此基礎(chǔ)上使用一種基于深度學(xué)習(xí)的目標(biāo)檢測方法,通過建立卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)模型,分類提取視頻中列車頭部、尾部及車身所在關(guān)鍵幀,使得基于深度學(xué)習(xí)的目標(biāo)檢測在關(guān)鍵幀提取的應(yīng)用中成為可能。
2 卷積神經(jīng)網(wǎng)絡(luò)概述
作為深度學(xué)習(xí)在計算機(jī)視覺領(lǐng)域應(yīng)用的關(guān)鍵技術(shù),卷積神經(jīng)網(wǎng)絡(luò)是通過設(shè)計仿生結(jié)構(gòu)來模擬大腦皮層的人工神經(jīng)網(wǎng)絡(luò),可實現(xiàn)多層網(wǎng)絡(luò)結(jié)構(gòu)的訓(xùn)練學(xué)習(xí)。同傳統(tǒng)的圖像處理算法相比較,卷積神經(jīng)網(wǎng)絡(luò)可以利用局部感受野,獲得自主學(xué)習(xí)能力,以應(yīng)對大規(guī)模圖像處理數(shù)據(jù),同時權(quán)值共享和池化函數(shù)設(shè)計減少了圖像特征點的維數(shù),降低了參數(shù)調(diào)整的復(fù)雜度,稀疏連接提高了網(wǎng)絡(luò)結(jié)構(gòu)的穩(wěn)定性,最終產(chǎn)生用于分類的高級語義特征,因此被廣泛應(yīng)用于目標(biāo)檢測、圖像分類領(lǐng)域。
2.1 基本結(jié)構(gòu)
利用卷積神經(jīng)網(wǎng)絡(luò)模型的自主學(xué)習(xí)能力,可以實現(xiàn)目標(biāo)檢測,本節(jié)主要介紹一種典型的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),如圖1所示。
卷積神經(jīng)網(wǎng)絡(luò)是一種多層深度網(wǎng)絡(luò)結(jié)構(gòu),主要由輸入層、卷積層、池化層、全連接層和輸出層等部分組成。輸入層是需要處理的圖像,計算機(jī)可將其理解為若干矩陣。卷積層是卷積神經(jīng)網(wǎng)絡(luò)的重要組成部分,通過輸入層和卷積層之間矩陣的卷積運算,提取輸入圖像的特征。池化層也是卷積神經(jīng)網(wǎng)絡(luò)的重要組成部分,通常設(shè)置在卷積層之后,作用是對輸入圖像的目標(biāo)區(qū)域像素取平均值(Average)或最大值(Max),即降采樣處理,降低特征圖像分辨率的同時避免出現(xiàn)過擬合。全連接層位于最后一個池化層和輸出層之間,由0個或多個組成,其中每一個神經(jīng)元都與前一層的全部神經(jīng)元相連接,并根據(jù)目標(biāo)檢測的需要,有針對性地將特征向量映射到輸出層,便于分類。輸出層位于神經(jīng)網(wǎng)絡(luò)的最后,設(shè)定為Softmax回歸,主要作用是對全連接層映射過來的輸入向量進(jìn)行分類,最終輸出一維預(yù)測向量,維數(shù)等于分類的數(shù)目。
卷積神經(jīng)網(wǎng)絡(luò)中卷積層+池化層的組合,可以根據(jù)實際任務(wù)需要重復(fù)出現(xiàn)多次。通過多層神經(jīng)網(wǎng)絡(luò)的特征提取,逐步由空間特征到深層語義特征,得到不同深度的特征表達(dá)能力,最終經(jīng)過全連接層和輸出層得到目標(biāo)檢測的結(jié)果。因此,根據(jù)每層的功能,卷積神經(jīng)網(wǎng)絡(luò)可以劃分為兩個部分——由輸入層、卷積層和池化層構(gòu)成的特征提取器以及由全連接層和輸出層構(gòu)成的分類器。
2.2 訓(xùn)練方法
卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法如圖2所示,主要由前向傳播和反向傳播兩部分組成。前向傳播是樣本數(shù)據(jù)由低層到高層逐層傳播的過程,如果前向傳播得到的輸出值與目標(biāo)值存在誤差,則將誤差從高層往低層反向傳播回網(wǎng)絡(luò)中,計算誤差梯度,最后利用誤差梯度更新卷積神經(jīng)網(wǎng)絡(luò)每一層參數(shù)的權(quán)重,達(dá)到自主學(xué)習(xí)的能力。
2.3 常用模型
經(jīng)過近二十年的快速發(fā)展,涌現(xiàn)出了眾多卷積神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu),從早期用于手寫數(shù)字識別的LeNet模型到最近的深度殘差學(xué)習(xí)ResNet模型,卷積神經(jīng)網(wǎng)絡(luò)的層數(shù)和深度不斷增加,圖像識別的準(zhǔn)確度也不斷提高。
1998年LeCun等人[文獻(xiàn)4]設(shè)計了早期最具代表性的卷積神經(jīng)網(wǎng)絡(luò)LeNet,主要有2個卷積層、2個下抽樣層(池化層)、3個全連接層組成。2012年,Krizhevsky等人[文獻(xiàn)5]提出的Alex-Net模型在ILSVRC競賽中大幅度提高了圖像分類的準(zhǔn)確率,模型包含5個卷積層、3個池化層以及3個全連接層,通過長時間和大數(shù)據(jù)的訓(xùn)練(約6000萬訓(xùn)練參數(shù)),展現(xiàn)了卷積神經(jīng)網(wǎng)絡(luò)在圖像分類領(lǐng)域的巨大潛力。VGG-Net模型于2014年由Simonyan等人[文獻(xiàn)6]設(shè)計,一共有六種不同的網(wǎng)絡(luò)結(jié)構(gòu),其中所有卷積核的大小均設(shè)置為3×3,體現(xiàn)了 “簡潔,深度”的特點。2015年Szegedy等人[文獻(xiàn)7]提出的GoogleNet模型,不同于Alex-Net和VGG-Net模型通過增大網(wǎng)絡(luò)結(jié)構(gòu)的層數(shù)來提高準(zhǔn)確率,而是引入inception模塊,改變感受野的大小,提取到更豐富的特征。2016年He等人[文獻(xiàn)8]提出了ResNet模型,利用殘差學(xué)習(xí)緩解了網(wǎng)絡(luò)結(jié)構(gòu)層數(shù)增加到一定程度后,準(zhǔn)確度出現(xiàn)退化的問題,取得了當(dāng)前最好的圖像識別效果。
3 基于目標(biāo)檢測的關(guān)鍵幀提取方法研究
傳統(tǒng)的關(guān)鍵幀提取方法通常借助于圖像整體信息的變化,在鐵路監(jiān)控視頻上取得了不錯的效果,但仍然存在一些問題。首先,需要人工設(shè)計選定一列車廂的首尾幀,影響關(guān)鍵幀提取的實時性和效率。其次,沒有深入挖掘圖像的特征,造成選取的目標(biāo)關(guān)鍵幀錯誤率較高,泛化能力差。
卷積神經(jīng)網(wǎng)絡(luò)在目標(biāo)檢測上的成功應(yīng)用,可以看作識別圖像為目標(biāo)還是為非目標(biāo)。因此,本章設(shè)計了基于卷積神經(jīng)網(wǎng)絡(luò)的關(guān)鍵幀提取器,首先采用基于SIFT特征的關(guān)鍵點檢測算法,在鐵路視頻圖像上提取少量區(qū)域作為候選,并通過Alex-Net模型提取候選區(qū)域的深度特征,最后將特征輸入到SVM分類器中進(jìn)行分類,得到列車頭部、尾部和車身三種結(jié)果,驗證基于卷積神經(jīng)網(wǎng)絡(luò)的關(guān)鍵幀提取器的可行性。本文提出的關(guān)鍵幀提取器流程圖如圖3所示。
3.1 基于SIFT特征的關(guān)鍵幀粗識別
SIFT(Scale Invariant Feature Transform)全稱尺度不變特征變換,是一種檢測和描述圖像中局部特征的算法,由David Lowe于1999年提出[文獻(xiàn)],原理是在不同的尺度空間尋找極值點(特征點),計算位置、尺度、方向等信息,并把特征點用一個128維的特征向量進(jìn)行描述。由于SIFT特征可以較好地描述目標(biāo)的局部特性且對平移、旋轉(zhuǎn)等變換保持不變,可以應(yīng)用在視頻圖像的關(guān)鍵幀特征區(qū)域檢測。
SIFT特征點算法主要包括四個部分:首先在建立尺度空間的基礎(chǔ)上,利用高斯差分金字塔找到局部關(guān)鍵點;然后對尺度空間擬合處理,得到關(guān)鍵點位置和尺度的精確值;再進(jìn)一步使用梯度方向直方圖為關(guān)鍵點分配方向信息;最后生成特征點的描述向量。通過基于SIFT的關(guān)鍵幀特征區(qū)域粗識別,大量與目標(biāo)檢測差異較大的區(qū)域被拒絕,只有少數(shù)與目標(biāo)檢測相似的特征點作為候選區(qū)域進(jìn)入卷積神經(jīng)網(wǎng)絡(luò),為接下來的精識別減少了工作量。
3.2 基于卷積神經(jīng)網(wǎng)絡(luò)的關(guān)鍵幀精識別
在關(guān)鍵幀提取器的粗識別階段,已經(jīng)篩選出大量的非目標(biāo)區(qū)域,留下了少數(shù)候選區(qū)域。候選區(qū)域的圖像特征點具有相似性,需要深度挖掘圖像特征方可區(qū)分。因此,在關(guān)鍵幀提取器的精識別階段,使用Alex-Net卷積神經(jīng)網(wǎng)絡(luò)模型,對候選目標(biāo)區(qū)域提取深度卷積網(wǎng)絡(luò)特征,生成特征向量,并利用關(guān)鍵幀提取器的SVM分類器將特征向量分類,得到最終的提取結(jié)果。
本文中使用Alex-Net卷積神經(jīng)網(wǎng)絡(luò)模型,包含5個卷積層、3個池化層和3個全連接層,其中有60M個參數(shù)和650K神經(jīng)元,最多可以為1000類目標(biāo)進(jìn)行分類。候選目標(biāo)區(qū)域的SIFT特征向量,作為輸入圖像進(jìn)入模型,經(jīng)過五層卷積操作和相應(yīng)的最大池化處理,同時使用非線性激活函數(shù)ReLU加快收斂速度,GPU并行架構(gòu)實現(xiàn)高效的卷積計算。
4 實驗結(jié)果
本文的實驗環(huán)境為:Intel(R)Core(TM)i5-4210M CPU @ 2.60GHZ,8GB內(nèi)存,NVIDIA GTX 850M 顯卡。使用的開發(fā)工具為基于Python 3.6.5版本的PyCharm,Alex-Net卷積神經(jīng)網(wǎng)絡(luò)使用TensorFlow框架。
在實驗中,我們將事先錄好的鐵路監(jiān)控視頻,作為輸入圖像導(dǎo)入到關(guān)鍵幀提取器,通過SIFT特征提取和卷積神經(jīng)網(wǎng)絡(luò)的深度特征提取,自動調(diào)整網(wǎng)絡(luò)參數(shù)和權(quán)重,實現(xiàn)基于深度學(xué)習(xí)的目標(biāo)檢測提取視頻圖像關(guān)鍵幀,提取出視頻的關(guān)鍵幀圖像如圖4所示。
5 總結(jié)
通過卷積神經(jīng)網(wǎng)絡(luò)在目標(biāo)檢測領(lǐng)域的應(yīng)用,本文實現(xiàn)了鐵路視頻圖像關(guān)鍵幀提取器的設(shè)計和實現(xiàn),其中粗識別階段選取傳統(tǒng)的SIFT特征點,精識別階段利用卷積神經(jīng)網(wǎng)絡(luò)挖掘圖像深度特征,提高了關(guān)鍵幀提取的精度。
參考文獻(xiàn):
[1] 林通, 張宏江, 封舉富,等. 鏡頭內(nèi)容分析及其在視頻檢索中的應(yīng)用[J]. 軟件學(xué)報, 2002, 13(8):1577-1585.
[2] 張嬋, 高新波, 姬紅兵. 視頻關(guān)鍵幀提取的可能性C-模式聚類算法[J]. 計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報, 2005, 17(9):2040-2045.
[3] 章毓晉.圖像理解[ M] . 北京:清華大學(xué)出版社, 2006:377-380.
[4] LEcun, Yann, Bottou, Leon, Bengio, Yoshua, et al. Gradient-based learning applied to document recognition[J]. Proceedings of the IEEE, 1998, 86(11):2278-2324.
[5] Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks[C]// International Conference on Neural Information Processing Systems. Curran Associates Inc. 2012:1097-1105.
[6] K.Simonyan, A.Zisserman. Very deep convolutional networks for large-scale? image recognition[C]. International Conference on Learning Representations? (ICLR),? San Diego, CA, USA, 2015, 1-14.
[7] C.Szegedy,W. Liu,Y. Jia, et al. Going deeper with convolutions[C]. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Boston, MA, USA,? 2015, 1-9.
[8] K. He, X. Zhang, S. Ren, et al. Deep residual learning for image recognition[C]. Proc. of IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Las Vegas, NV, USA, 2016, 770-778.
[9] 李旭冬. 基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測若干問題研究[D]. 電子科技大學(xué), 2017.
[10] 殷文斌. 卷積神經(jīng)網(wǎng)絡(luò)在遙感目標(biāo)識別中的應(yīng)用研究[D]. 中國科學(xué)院大學(xué)(中國科學(xué)院遙感與數(shù)字地球研究所), 2017.
[通聯(lián)編輯:梁書]