聶 瑋 曹 悅, 朱冬雪 朱藝璇 黃林毅
1(國網天津市電力公司電力科學研究院 天津 300384)2(四川大學視覺合成圖形圖像技術國防重點學科實驗室 四川 成都 610064)
隨著硬件技術、信號處理技術的飛速發展,人機交互已經在日常工作生活中頻繁應用[1]。現有的智能硬件已經可以利用可穿戴的數據套件直接感知人的姿勢與行為動作,然而這類應用需要輔助的套件進行信息采集,限制了交互信息的自然表達。通過視覺對人體行為動作進行識別,可以實現各種復雜信息的交互,該技術不需要較為復雜的數據采集設備,使人機交互更加自然[3]。
經過多年的發展,基于視覺的行為識別技術仍然存在一些亟需解決問題,主要歸因于人體的非剛性特征以及復雜背景的影響[4]。傳統的行為識別算法大都采用行人檢測與分割,然后提取動作特征,最后利用特征進行分類識別[5]。由于傳統的方法需要針對不同的任務設計不同的人工特征,例如顏色特征、光流特征、HOG特征等[6],這些特征容易受環境影響,泛化能力較差。Karpathy等[7]提出一種基于顯著性分割的多特征行為分類模型。該方法結合多種顏色空間模型從復雜背景中分割出人體區域,并采用改進的HU不變矩進行姿態輪廓描述,獲取人體的多特征級聯向量,最后利用SVM實現特征數據分類。該方法在簡單背景下測試數據的識別精度較高,但對自然狀態下采集的人體圖像的識別精度很差。
基于機器學習的行為動作識別模型是目前研究較多的方向,在一定程度上提高了識別的精度。由于類膚色信息或復雜背景導致分割算法不能得到準確的人體輪廓,進而影響后期姿態行為識別率。Tran等[8]提出一種基于智能學習的行為識別方法,通過機器學習算法對復雜圖像智能分析,獲取人體序列連貫時空特征,進而完成相應的高精度分類。可以看出,通過直接對分割區域進行特征提取,再采用智能算法進行行為判斷,雖然能夠在一定程度上提高模型分類的準確率,但特征的表征能力直接影響系統的識別精度。傳統的圖像處理、機器學習等人體輪廓檢測及行為識別模型泛化性不強,對噪聲等干擾比較敏感,不能對自然環境下采集的大規模圖像數據進行有效識別。相較于SVM、決策樹、神經網絡等淺層學習模型的檢測算法[9],以CNN為代表的深度學習強調了模型結構的深度,更突出行為特征學習的重要性,利用大數據來學習特征,更能表征數據豐富的特征信息。Simonyan等[10]首次將卷積神經網絡運用到行為識別領域,通過設計一種更深層次的網絡結構,并采用Dropout技術增強模型的泛化能力,其檢測精度超過傳統淺層學習模型。深度模型本質上是一種深層非線性網絡結構,通過網絡中多隱層節點將低層特征組合成更加抽象的高層特征,實現復雜函數逼近,具有強大本質特征的學習能力。
隨著深度學習的迅速發展與廣泛應用,現有的AlexNet[11]、GoogleNet[2]、殘差網絡(ResNet)[13]等深度學習算法已經在圖像分類上取得了很好的成果,具有良好的應用前景,但是也存在網絡計算量大、模型復雜、實時性不強等缺點。同時,現有的深度學習網絡結構只是利用高層次特征進行圖像的分類識別,這導致往往很難區分需要精細特征才能識別的目標,比如手勢類別、車輛型號等。Szegedy等[14]在LeNet-5 網絡基礎上設計了雙通道CNN的動態行為識別方法,此方法不用人工提取特征,網絡通過訓練自動學習特征,但特征提取不夠精細,在識別中采用常見的單一特征卷積神經網絡很難取得很好的識別效果。因此, 現有的深度學習模型不能直接用于人體行為識別。
針對復雜監控背景下的行為特征,本文在多尺度深度模型的基礎上,提出一種改進的邊緣感知多尺度深度學習網絡。通過提取連續序列的時空深度特征,更加準確地表征了行人的運動信息,使得卷積神經網的識別率得到提升。該方法引入自適應多尺度特性,實現同一層卷積層不同尺寸卷積核生成不同尺度特征,通過級聯淺層和深層的特征達到不同抽象程度的特征圖融合。同時,為了增強模型的泛化能力,本文提出基于正則化約束的損失函數。
人體行為識別的關鍵是逐幀獲取人體的輪廓信息,然后通過時空序列進行特征建模,進而實現行為動作的準確識別。然而,由于現有的人體輪廓分割算法缺乏對邊界區域的約束,不能有效地提升目標邊界輪廓的精度。此外,盡管基于多通道融合的方法整合了多種特征信息,但缺乏全局結構信息的表征,網絡仍無法將人體從復雜背景中分離。
因此,從保留邊緣的角度出發,本文提出了一種新穎的邊緣感知融合模塊,可以學習到更精細的人體輪廓信息。首先,受HED模型的啟發[9]在BSDS數據集[10]上訓練一個基于VGG網絡的監測流(EDS),并在訓練損失函數時固定EDS的參數。然后,對于每個輸入圖像,從已訓練的EDS中提取邊緣圖,并將它們與DenseBlocks[11]的旁路輸出特征進行融合,以幫助訓練行為識別檢測流。總而言之,邊緣感知融合模塊旨在為行為檢測任務提供額外的邊緣相關的信息。
從全局視角出發,我們采用一個基于多尺度金字塔監督模塊,這個監督模塊是基于金字塔池化模型(PPM)構建的。PPM[12]實現了一系列池化操作,以便收集不同尺度的全局結構信息,而監督模塊的多個旁路輸出監控可以分層次地生成行人動作預測。將這兩部分組合起來,該模塊可以高效地提高最終預測結果。
當使用行人的動作進行監督識別時,現有方法主要從行人邊緣光流去預測行為動作,無法對行人邊緣去模糊,進而導致識別效率低。因此,本文通過提供具有直接邊緣感知監督的行人行為檢測網絡來提升預測精度。其次,現有的行為檢測方法僅通過基于通道操作來利用旁路輸出特征(特征相加或特征拼接),而忽略全局結構特征的重要性。因此,本文將多尺寸金字塔池化模塊和輔助監督相結合來彌補以前模型的不足。本文方法的網絡結構如圖1所示,它由兩個模塊組成,其中邊緣感知融合模塊是基于VGG-16網絡改進的,而多尺度金字塔監督模塊是基于DENSENET網絡改進的。

圖1 深度網絡結構框架圖
由于稠密連接模型在分類任務中的卓越性能和內存的高效實現,本文選擇最近提出的稠密連接網絡(DenseNet121)作為深度編解碼模型。與常用的VGG16或ResNet-50比較,基于DenseNet的訓練過程可以通過稠密殘差連接使其收斂更快。具體來說,我們的編碼器結構由第一個卷積層和池化層(DenseBlock0)再加上從預訓練的DenseNet121之中提取的前三個DenseBlocks(DenseBlock1,DenseBlock2,DenseBlock3)組成,輸出特征圖的分辨率是輸入圖像大小的1/32 。如圖2所示,每個解碼器模塊被設計為殘差轉換模塊[13],其中1×1卷積負責增加和減小維度,最后一層旨在通過雙線性插值將特征圖的分辨率加倍。每個解碼器模塊的輸入是由兩個具有相同空間分辨率的部分拼接而成,其中第一部分是來自每個相應DenseBlock的特征圖。為簡單起見,解碼器模塊中每個卷積層之后的批量歸一化層和ReLU層被省略。

圖2 解碼器模塊
上文提到的編解碼模塊前饋網絡可以產生粗略的行人預測,但是由于上采樣操作不能恢復空間信息和更精細的細節,所以不能很好地保留邊緣結構。本文提出了一種新穎的邊緣感知融合模塊來保留更多的邊緣結構信息,并將邊緣感知特征圖融入到行人行為檢測任務中。邊緣檢測的任務是檢測自然圖像中的邊緣和物體邊界。邊緣檢測是一種基礎的計算機視覺任務,也是實現分割和目標檢測這些任務的重要步驟。我們利用和邊緣相關的互補信息來輔助行人輪廓檢測及動作行為預測任務。首先在行人檢測基準數據集上單獨地訓練基于VGG網絡的監測流模塊,該模塊由基于HED模塊構建,通過拼接多個旁側輸出的組合,然后將這些拼接起來的輸出送入融合層來獲得統一的輸出,其中融合層使用內核大小為5的1×1的卷積。
我們將每一個輸入圖像接入到監測模塊和檢測模塊中。 監測模塊的模型參數是固定的,并且多級邊緣感知特征圖被融合到檢測模塊中以幫助訓練視頻流中空時動作行為識別任務。 具體而言,通過監測模塊的conv2-2(128通道)、conv3-3(256通道)、conv4-3(512通道)和conv5-3(512通道)這四個級別來獲取特征映射。然后分別將它們與Decoder4、Decoder3、Decoder2和Decoder1的輸出通過拼接操作融合。邊緣感知融合模塊的融合機制可以表示為:
Fi=Cat(Xi,Ej)
(1)
式中:Fi標記為模塊的輸出特征圖;Xi表示SDS模塊中相應塊的中間特征;Ej表示檢測模塊中相應塊的中間特征;i和j的取值對為((i,j)∈{(5,1),(4,2),(3,3),(2,4)};Cat 是表示逐通道的拼接操作。 此外,對于具有和輸入圖像同樣的空間分辨率的Decoder5,我們又將最終邊緣檢測結果(1通道)和原始RGB圖像(3通道)融合形成最強互補的細節。
盡管上文已經提到的編解碼網絡可以通過拼接操作組合來自不同級別的特征圖,但由于缺失全局上下文結構,這個網絡缺乏在輸入圖像中捕獲多尺度行人的能力。為了解決這個問題,我們采用金字塔池化模塊[12],該模塊已經在分類和分割等任務中取得了非常有效性能。首先,在不同級聯網絡完成四級平均池化操作,然后將池化特征上采樣到和原始輸入一樣的大小,最后將多級池化特征與原始特征拼接起來。在基本的金字塔池化操作基礎上,提出了一種新的多尺度金字塔監督模塊來更好地利用多尺度全局上下文結構。這不僅將一個多尺度金字塔監督模塊網絡應用到最終預測部分,而是將多個輔助旁側輸出與多尺度金字塔監督模塊相結合,以實現多尺度監督。 因此,我們在每個邊緣感知融合模塊后面附加PPM網絡模塊,以加速學習過程。
Si=σ(Wi×Cat(Wi,1×PP1(Xi),…,Wi,n×PPn(Xi))
(2)
式中:Xi(i∈{2,3,4,5})表示第i個解碼塊的輸出;PPn表示在第n級的金字塔池化操作,n∈{1,2,3,4};Wi,n表示1×1卷積的權重;σ是Sigmoid函數,用來縮放參數;Si()表示最后第i個旁路預測輸出。在訓練階段,每個輔助預測Si將分別和真實的行人掩碼通過基于像素的交叉熵損失函數進行監督學習。在行人動作預測時,只選擇與輸入圖像有相同分辨率的輸出,進而可以識別不同類別行為動作的分類與識別。
為了評估本文提出的邊緣感知稠密網絡網絡行人識別算法性能,訓練集使用國際上通用的行為識別數據:KTH,UCF101與HMDB5[18]。其中:KTH數據庫包括25個不同行人在四種場景下演繹的6類行為,分別是走路(Walking)、跑步(running)、揮手(handwaving)、慢走(jogging)、拳擊(boxing)和拍掌(handclapping),鏡頭相對固定,背景簡單;UCF101與HMDB5是包含大量行為類別的復雜數據集,大多數數據來自視頻片段,行人運動復雜,視角變化大,存在大量多人運動交互。
本文提出的網絡模塊在PyTorch深度學習框架下完成。為了提高優化效率,采用ADAM優化算法,其參數設定為:alpha=0.001,beta1=0.9,beta2=0.999 和 epsilon=10-8。每個流的批處理大小為1。對于行人輪廓檢測模塊,學習率設置為10-6,訓練迭代次數為200 000次;對于基于VGG網絡的監測流模塊,學習率設置為10-6,迭代次數設置為300 000次。圖3與圖4分別展示了訓練與測試過程中的準確率和Loss值變化曲線,充分說明本文網絡具有快速的收斂效率。訓練樣本的大小調整為384×384 并作為網絡的輸入,采用圖形處理單元GTX 1080TI來做訓練和預測。大約需要8個小時來訓練邊緣檢測網絡,而行人行為識別檢測網絡的訓練需要另外的7個小時。在檢測端,本文模型可以每秒處理5幀圖像。

圖3 訓練過程中準確率迭代曲線圖

圖4 訓練過程中Loss值變化曲線
本文采用精度-召回(PR)曲線,識別精度指標來評估行人檢測與動作識別算法的性能。首先通過預測得行人的輪廓處理來計算出PR值,然后繪制PR曲線。為進一步驗證本文提出的改進深度網絡對行為數據集的分類精度,本文選用了目前工程應用較多的智能算法進行對比,包括:SRM[5],BMP[18],DSS[8],MSR[9],DCL[10]。為了公平比較,所有對比算法的結果均來自原文實驗結果及源代碼。UCF101數據集上行為識別PR曲線如圖5所示,可以看出本文算法性能較好。表1展示了不同算法對四種數據庫的行為識別的精度。

圖5 UCF101數據集上PR曲線

表1 不同方法的識別準確率 %
從表1的結果可以看出,本文模型具有較高的分類識別準確率。SRM是一種非深度學習模型,利用提出視頻序列光流軌跡,獲取多種層次特征編碼,并利用SVM分類器實現最終行為識別。在固定視場的簡單背景圖像的識別精度較高,而對于復雜場景的視頻序列的結果只有73%,目前多種改進算法是基于相鄰幀之間的光流和Surf關鍵點進行匹配,從而消除/減弱相機運動帶來的影響。BMP是目前常用的空時光流識別模型,通過空間特征(Spatial)與密集光流(Temporal)分別訓練CNN模型,然后通過三維融合得到最終的分類結果。MSR是多通道三維卷積網絡,通過對每一個通道進行卷積和下采樣操作,最后將所有通道的信息組合起來得到最終的特征描述。本文算法是基于各模型的綜合改進,利用邊緣感知融合模塊和多尺度金字塔監督模塊,提取豐富的全局上下文信息,增強識別的精度。本文模型在UCF101數據集上也取得了90.55%的最好結果。
由于不同數據集的行為類別較多,為了準確地分析不同類別下的行為識別性能,本文采用了HMDB5數據識別結果的分類混淆矩陣進行定量描述,其混合視頻的測試結果如圖6所示,橫坐標表示本文模型識別的行為類別,縱坐標為實際行為類別。由圖6可知,個別行為存在誤報情況,但比例很小,大部分行為均有80%的診斷正確率。同時,數據集中walking與jigging在序列上差異較小,但通過本文模型的進行檢測,其檢測結果精度較高,充分說明本文模型能得到較為理想的分類效果。

圖6 多類行為分類任務的混淆矩陣圖
為了分析模型采用的邊緣感知融合模塊和多尺度金字塔監督模塊對整體能的影響。本文采用DenseNet121網絡作為編解碼基準模型,通過將金字塔池化模型應用到解碼器部分,并在此基礎上集成邊緣感知融合模塊,以生成最終行為識別網絡。通過對不同模塊性能的分析可以看出,邊緣感知融合模塊和多尺度金字塔監督模塊都可以較大幅度地改善性能。這是由于邊緣感知融合模塊主要側重于改善邊界區域,提升行人邊緣特征的表征能力。多尺度金字塔監督模塊則可以在行人特征基礎上對不同尺度下目標序列進行空時特征編碼,最終提升了整體行為識別的精度。
為了提升行人檢測與行為識別的精度,本文提出了一種新穎的邊緣感知深度網絡方法。該網絡通過邊緣感知融合模塊提升行人輪廓精度,利用多尺度金字塔池化層捕獲視頻序列的空時特征。邊緣相關特征的互補特征能夠有效地保留行人目標的清晰邊界,而輔助旁側輸出與金字塔池化層輸出的組合可以提取豐富的全局上下文信息。大量定性定量的實驗結果表明,本文模型可以有效地提高現有行人檢測與行為識別網絡的性能。