?

基于深度學習的遮擋情形下行人檢測

2024-01-12 10:02龐丁黎奪實祥偉楊舒舒秦君
云南電力技術 2023年6期
關鍵詞:置信行人卷積

龐丁黎,奪實祥偉,楊舒舒,秦君

(云南電網有限責任公司德宏供電局,云南 德宏 678400)

0 前言

據統計,大約80%的人從外部世界中獲得的信息都是來自于視覺,所以,視覺信息在人們獲得信息中扮演著非常重要的角色。同時,伴隨著科學技術的持續發展,人們需要利用現有的技術,來幫助人們完成某些視覺任務,從而使計算機視覺這一領域成為了當下的一個研究熱點。

在計算機視覺領域中,行人檢測屬于一個重要的研究領域,它主要是通過使用圖像處理和機器學習的方法,來對圖像中的行人展開定位,并對每個行人目標的大致位置進行精確的預測。一個較為精確的行人檢測模型,是后續圖像智能分析(行人目標跟蹤,識別,檢索,匹配等領域)的先驗條件。所以,它的應用領域非常廣泛,包括:軍事領域、視頻監控與安防領域、無人駕駛領域、搜索營救領域[1]。

2005 年,Dalal 等通過對行人區域進行分割,并通過對其局部區域進行梯度直方圖的統計,得到了行人邊緣的輪廓信息。自HOG(High Theoretical Graph,簡稱HOG)特征被提出以來,已有不少學者在此基礎上對其進行了改進。為了提高梯度直方圖的檢測效率問題,Zhu 等人[2]采用積分圖的形式加速梯度直方圖的計算。Yangwei Pang 等人通過對局部窗口重疊區域的特征利用,避免了梯度直方圖在特征選取的時候重復計算問題,將檢測時間縮短為原來的1/5。2008 年Felzenszwalb 等人[3]基于圖結構,提出了可形變部件模型(Deformable Part Model,簡稱DPM),該模型主要包括根模型和部件模型兩部分。該模型將整體和局部信息結合在一起。根模型在低分辨的特征圖上捕獲整體輪廓,部件模型在高分辨率的特征圖上捕獲細節部分,將二者進行融合得到最終的結果。2010 年,Felzenszwalb 等人[4]在原有可形變部件模型的基礎上,融入了視覺語法和多個視覺角度,采用一組混合模型,能夠更好的處理人體的形變問題。目前可形變部件模型已成為眾多分類器、分割、人體姿態和行為分類的重要部分。然而在可形變部件模型的檢測算法中,算法的時間主要消耗在部件和圖片匹配過程以及最優部件位置的選取與計算上,Felzenszwalb的模型在當時的時間復雜度上并不理想,因此,Felzenszwalb 在可形變部件模型的基礎上提出了級聯檢測,使用主成分分析法對特征進行降維,提高了整個算法的速度。

隨著深度學習技術的不斷發展,行人遮擋檢測進入了第二階段,使用深度學習方法進行檢測。2009 年Piotr Dollar 等人[5]開源了Caltech數據集,從而為行人遮擋檢測在深度學習領域的發展提供了更多的高質量的行人訓練數據集,為近年來深度學習在行人遮擋檢測領域的發展奠定了基石。2017 年 Shanshan Zhang 等人[6],對于Cityscapes 數據集進行了重新標注并且開源了Citypersons 數據集,與此同時對于Faster RCNN 進行了改進,使其更有利于行人遮擋檢測任務,使用該方法進行行人遮擋檢測成為近幾年行人遮擋檢測領域的基準線。2018 年行人遮擋檢測領域有了迅猛的發展,Chunluan Zhou等人[7]提出了在模型訓練的時候, 將可見框和全身框同時進行訓練,這兩個部分相互影響,從而降低在遮擋條件下漏檢率。Xinlong Wang 等人提出了Rep Loss,降低了密集場景下行人的漏檢率。

從國內外的研究現狀分析,不管是基于傳統的機器學習方法還是基于深度學習方法對于行人遮擋檢測這一領域仍存在很多的不足,還需要加以研究。

1 行人檢測理論

行人檢測指的是以行人為對象檢測的主體,對輸入圖片中是否含有行人進行判斷,如果圖片中有行人,就將其位置框出來,反之,則會忽略該圖片。但在行人檢測中,遮擋是一種很普遍的現象,其根本原因在于攝像機與移動物體的視角不同,即攝像機與移動物體的視角不同,所以,在現實生活中,遮擋現象普遍存在。由于人體局部被遮擋,導致對人體進行識別時,往往會出現漏檢的情況。

基于機器學習的方法是現階段行人檢測算法的主流,主要運用特征提取和分類任務兩個模塊[8]來進行檢測圖像或視頻幀中的行人。特征提取部分主要是獲得邊緣特征、顏色特征、紋理特征等行人外觀特征和深度語義特征信息,然后把這些特征運用于訓練分類器,將背景和行人目標兩個類別進行高效地辨別并輸出分類結果。最后對輸入的測試圖像進行檢測,若存在行人目標則輸出其預測框,如圖1 所示。

圖1 行人檢測流程

目前基于深度學習的目標檢測算法,比如說Faster RCNN,YOLO V3,SSD,RetinaNet等算法,對于非遮擋場景,也就是整張圖片中完整的行人目標有較好的表現,但是在遮擋場景下效果就變得很差,如圖2 所示,我們可以看到由于行人之間遮擋會導致目標檢測算法會產生漏檢現象。相比于完整的行人目標,檢測器難以提取遮擋行人的特征,從而導致檢測結果變差。綜上所述,行人遮擋檢測是行人檢測領域當中的難題之一。這也是本文主要的研究內容。

圖2 行人之間遮擋導致漏檢效果

行人遮擋檢測主要分為2 種情況:如圖3左圖所示表示物體對于行人的遮擋,如圖3 右圖所示表示行人與行人之間的遮擋。對于一般的目標檢測算法,在被遮擋的行人場景中表現良好,但是在被遮擋的行人圖像中很容易產生漏檢現象。

圖4 深度置信網絡結構

在實際安防場景中,遮擋問題主要出現在行人密集場景,行人與行人之間的遮擋出現的頻率遠遠大于物體對于行人的遮擋。因此本文主要解決行人與行人之間的遮擋的問題,經過實驗發現,本文算法不僅僅可以減少因為行人與行人之間的遮擋而產生的漏檢,而且還可以減少因為物體對于行人遮擋而產生的漏檢。

2 基于深度學習的遮擋行人檢測

基于深度學習的遮擋行人檢測算法主要分成3 種類別:

1)基于深度置信網絡(DBN);

2)基于卷積神經網絡(CNN);

3)基于循環神經網絡(RNN)。

基于深度學習的算法對遮擋處理主要有兩種方式:

1)引入部件模型,通過深度學習網絡結構和部件模型的相結合,綜合處理遮擋;

2)基于優化函數,通過優化損失函數對遮擋進行處理。

2.1 基于DBN的檢測算法

基于深度置信網絡的檢測算法是基于深度置信網絡(Deep Belief Network,DBN)進行建模,能夠有效地識別和定位輸入圖像中的目標物體。深度置信網絡是一種多層前饋神經網絡,它通過對多個無監督層進行訓練來提高學習性能。這種網絡通常由多個限制玻爾茲曼機(Restricted Boltzmann Machine,RBM)組成[9],每個RBM 都包含一個可見層和一個隱藏層。RBM 的學習過程是通過無監督的方法進行的,即網絡根據訓練數據自動學習每個RBM 中的參數。深度置信網絡通過逐層訓練每個RBM 來進行訓練,從而實現了對高層特征的自動提取和學習。

在基于深度置信網絡的檢測算法中,首先通過將輸入圖像傳遞給深度置信網絡來提取特征。然后,通過添加全連接層和輸出層,將網絡轉換為分類器,用于對輸入圖像中的目標進行識別和定位。深度置信網絡的主要優點在于它能夠有效地學習圖像中的高級特征,因此在處理復雜圖像時比傳統的檢測算法表現更好。此外,深度置信網絡還可以通過微調來進一步提高性能,這種微調技術利用大量標記數據來對網絡進行訓練,從而實現更好的分類和檢測。

雖然基于深度置信網絡的檢測算法在實際應用中表現出了良好的性能,但它們也存在一些局限性。例如:

1)訓練數據量的要求較高?;谏疃戎眯啪W絡的檢測算法通常需要大量的訓練數據來獲得良好的性能。這可能會限制它們在某些應用場景下的效果,特別是在數據量較小的情況下;

2)訓練和調試過程相對復雜。由于深度置信網絡的復雜性和訓練過程的非監督性質,這種算法的訓練和調試過程相對復雜。這使得它們可能需要更多的專業知識和技能來使用和優化。

3)可解釋性較低。由于深度置信網絡的復雜性和非線性性質,它們通常比傳統的檢測算法更難解釋。這可能會限制它們在某些實際應用場景中的使用,例如醫療診斷或法律審查等需要對決策過程進行解釋的場景。

4)對計算資源要求較高?;谏疃戎眯啪W絡的檢測算法通常需要大量的計算資源來進行訓練和推理。這可能會限制它們在某些低成本或低功耗設備上的應用,例如移動設備或嵌入式設備。

5)對數據質量的要求較高。由于基于深度置信網絡的檢測算法通常需要大量的訓練數據,因此數據質量對它們的性能至關重要。如果訓練數據中存在噪聲或錯誤標注,可能會導致算法的性能下降。

總之,基于深度置信網絡的檢測算法是一種非常有前途的技術,它在圖像處理和計算機視覺領域具有廣泛的應用前景。通過不斷地改進和優化,這種算法有望在未來實現更好的性能和更廣泛的應用。

2.2 基于CNN的檢測算法

基于卷積神經網絡(如圖5 所示)的檢測算法是一種應用深度學習技術進行目標檢測的方法。它使用卷積神經網絡(Convolutional Neural Networks,CNN)來對輸入圖像進行處理和分類,從而實現對目標的檢測和識別[10]。

圖5 神經網絡結構

基于卷積神經網絡的檢測算法有如下優勢:

1)特征提取能力強。卷積神經網絡具有非常強的特征提取能力,能夠從輸入圖像中提取出高層次、抽象的特征,這些特征可以用來區分不同的目標類別。卷積神經網絡的卷積層和池化層結構可以有效地捕捉不同尺度和方向的特征。

2)魯棒性好?;诰矸e神經網絡的檢測算法對圖像中的光照、尺度、姿態、遮擋等變化具有很好的魯棒性,能夠處理各種復雜的場景。

3)可擴展性強?;诰矸e神經網絡的檢測算法能夠輕松地應用于多類別目標檢測、實時目標跟蹤等任務中,并能夠通過添加更多的卷積層、池化層或全連接層等進一步提升其性能。

4)訓練效率高?;诰矸e神經網絡的檢測算法使用反向傳播算法進行訓練,相較于傳統的機器學習算法,其訓練效率更高。同時,由于CNN 可以直接使用圖像作為輸入,因此無需進行繁瑣的特征提取過程,也降低了訓練的復雜度。

5)實現方式多樣?;诰矸e神經網絡的檢測算法有很多不同的實現方式,如Faster R-CNN(見圖6)、YOLO、SSD 等,這些算法都可以根據不同的需求進行定制和改進。

圖6 R-CNN算法結構

雖然基于卷積神經網絡的檢測算法具有許多優點,但也存在一些不足之處。

1)目標定位精度?;诰矸e神經網絡的檢測算法在目標定位精度上仍存在一定的局限性。尤其是在目標大小不一的情況下,算法可能難以精確地定位目標,這可能會導致誤判和漏檢。

2)目標多樣性?;诰矸e神經網絡的檢測算法往往只能檢測出一類或少數類目標,對于目標種類較多的情況,可能需要訓練多個不同的模型進行檢測,這會增加算法的復雜性和成本。

3)訓練數據量?;诰矸e神經網絡的檢測算法需要大量的訓練數據才能獲得良好的性能。對于某些應用場景,如醫學圖像分析等,數據采集難度較大,可能會影響算法的性能。

4)運算速度。雖然基于卷積神經網絡的檢測算法可以通過GPU 等硬件加速來提高運算速度,但仍存在一定的計算復雜度,可能無法滿足實時性要求較高的應用場景。

總之,基于卷積神經網絡的檢測算法在實際應用中具有一定的局限性,需要在算法設計和應用場景選擇上進行綜合考慮。在未來,隨著技術的不斷發展和數據資源的不斷積累,相信這些不足之處也將會逐步被克服。

2.3 基于RNN的檢測算法

基于循環神經網絡(RNN)的行人檢測是計算機視覺領域的一項重要研究。RNN 是一種能夠對序列數據進行建模的深度學習模型(見圖7)。在行人檢測任務中,RNN 可以通過對序列數據進行處理和判斷,來實現對行人的檢測。RNN 是一類以序列數據為輸入,在序列的演進方向進行遞歸并且所有節點(循環單元)按鏈式連接的遞歸神經網絡。其中雙向循環神經網絡(Bidirectional RNN,Bi-RNN)和長短期記憶網絡(Long Short Term Memory networks,LSTM)是常見的循環神經網絡。

圖7 循環神經網絡結構

傳統神經網絡將原始圖像作為輸入,網絡的復雜程度導致學習時間較長,影響檢測器的性能。崔鵬等提出DSAEN(Deep Sparse Auto-Encoder Network),在輸入晨后加了一層感興趣縣,提取出充分表示行人信息的混合特征,在處理神經網絡復雜的運算問題時,該算法將通過網絡得到的特征輸入到線性核函數的SVM分類器中進行訓練,并采用非極大值抑制法,降低計算量,能夠對行人的位置進行精確定位。Stewart 等人提出了一種由over feat 模型改進而來的方法,如圖8。該方法將圖像解碼成一組人體檢測器,使用一個循環的LSTM 層進行序列生成,并使用一個新的提夫函數,同時結合定位和檢測兩方面對模型進行端對端訓練。同時也證明了可以利用LSTM 單元鏈將圖像內容解碼為可變長度的相干實值輸出,是一個分部處理遮擋的新思路。

圖8 LSTM結構

在RNN 模型中,輸入序列的每個時間步都有一個對應的隱藏狀態。這個隱藏狀態是在模型學習過程中動態生成的,可以捕捉到輸入序列中的長期依賴關系。對于行人檢測任務,輸入序列通常是由視頻幀組成的。RNN 模型的核心是循環層。在循環層中,RNN 會根據當前時間步的輸入和上一個時間步的隱藏狀態,計算出當前時間步的隱藏狀態。這個隱藏狀態可以看作是對前面所有時間步的信息進行了聚合。由于循環層的結構,RNN 能夠捕捉到輸入序列中的時序信息,對于行人檢測任務尤為重要。

在行人檢測任務中,RNN 通常被用于序列建模,即將輸入的視頻幀序列轉換為輸出的序列,其中序列中的每個元素代表當前時間步是否存在行人。為了實現這個目標,通常需要使用卷積神經網絡(CNN)來對每個視頻幀進行特征提取,然后再將提取出的特征作為輸入序列,傳入RNN 模型進行處理?;赗NN 的行人檢測模型通常需要經過大量的訓練才能達到較高的準確率。在訓練過程中,需要使用大量的數據對模型進行訓練,并對模型進行不斷的優化。同時,也需要對模型進行調參,以達到最佳的性能。

總的來說,基于RNN 的行人檢測是一項具有挑戰性的任務,需要對深度學習模型有深入的了解,并在實踐中不斷探索和優化。

3 結束語

基于深度學習的遮擋情形下行人檢測是計算機視覺領域中一個重要的研究方向,旨在解決現實場景中行人被遮擋的情況下的檢測問題。近年來,隨著深度學習技術的發展和硬件設備的不斷升級,基于深度學習的遮擋情形下行人檢測已經取得了顯著的進展。首先,可以通過訓練大規模的數據集來學習遮擋情形下行人的特征,進而提高檢測的準確性和魯棒性;其次,一些基于深度學習的方法采用多尺度的特征提取方式和級聯式的檢測網絡,可以有效地提高檢測的速度和效率;此外,一些基于深度學習的方法還將注意力機制和目標跟蹤技術等引入行人檢測中,進一步提升了檢測的性能和魯棒性。

基于深度學習的遮擋情形下行人檢測在未來仍有較大的發展空間和應用前景。首先,隨著深度學習技術的不斷進步,基于深度學習的方法在檢測的準確性、魯棒性和速度等方面都將得到進一步的提高;其次,隨著自動駕駛、智能監控等領域的發展,基于深度學習的遮擋情形下行人檢測將在未來扮演著越來越重要的角色,成為保障交通安全和提高智能化程度的關鍵技術之一。同時,隨著物聯網和云計算等技術的不斷發展,基于深度學習的遮擋情形下行人檢測也將得到更加廣泛的應用和普及,包括城市交通管理、公共安全監控等領域。

綜上所述,基于深度學習的遮擋情形下行人檢測是一個充滿挑戰和機遇的領域,需要不斷探索和創新,才能不斷提高檢測的準確性、魯棒性和效率,為人類社會的發展做出更大的貢獻。

猜你喜歡
置信行人卷積
急診住院醫師置信職業行為指標構建及應用初探
基于置信職業行為的兒科住院醫師形成性評價體系的構建探索
基于3D-Winograd的快速卷積算法設計及FPGA實現
基于模糊深度置信網絡的陶瓷梭式窯PID優化控制
毒舌出沒,行人避讓
從濾波器理解卷積
路不為尋找者而設
基于傅里葉域卷積表示的目標跟蹤算法
我是行人
基于CUDA和深度置信網絡的手寫字符識別
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合