01.08 物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統


背景

對於安全性問題夜間監視是非常重要,一些研究試圖通過使用紅外熱像儀自動檢測闖入禁區的人員。但是,從紅外閉路電視(閉路電視)中檢測人身具有挑戰性,因為他們通常安裝在頭頂位置,並且人只在結果圖像中佔據很小的區域。因此,本研究提出了一種在夜間檢測紅外閉路電視圖像中人物的準確有效的方法。為此,構建了三個不同的紅外圖像數據集。其中兩個來自安裝在公共海灘上的紅外閉路電視,另一個來自安裝在人行天橋上的前視紅外(FLIR)攝像機。此外,基於卷積神經網絡(CNN)的像素級分類器用於細粒度人檢測。將該方法的檢測性能與五種常規檢測方法進行了比較。結果表明,所提出的基於CNN的人類檢測方法在所有數據集中均優於常規檢測方法。特別是,該方法在所有數據集的對象級檢測中均保持F1分數高於80%。通過改善從紅外圖像進行人體檢測的性能,我們希望這項研究將有助於夜間公共區域的安全性。結果表明,所提出的基於CNN的人類檢測方法在所有數據集中均優於常規檢測方法。特別是,該方法在所有數據集的對象級檢測中均保持F1分數高於80%。通過改善從紅外圖像進行人體檢測的性能,我們希望這項研究將有助於夜間公共區域的安全性。結果表明,所提出的基於CNN的人類檢測方法在所有數據集中均優於常規檢測方法。特別是,該方法在所有數據集的對象級檢測中均保持F1分數高於80%。通過改善從紅外圖像進行人體檢測的性能,我們希望這項研究將有助於夜間公共區域的安全性。


介紹

夜間入侵預警系統是物聯網(IoT)技術的一些最重要的應用。由於夜間缺乏安全人員並且視野有限,夜間闖入危險區域的入侵者面臨很高的受傷或死亡風險。擁有自動預警系統來阻止入侵者對於公眾安全和禁區安全至關重要。夜間入侵警告最重要的應用之一是防溺水。根據世界衛生組織(WHO)的數據,每年有37.2萬人死於溺水事故。儘管大多數溺水事故發生在白天,但防止溺水的夜間入侵預警系統很重要,因為在夜間可能會缺少救生員,救援行動也更加困難[。由於持續的努力,以防止這些溺水事故的一部分,一些智能監控系統已使用閉路電視與計算機視覺和機器學習技術。這些系統自動檢測在圖像中既定邊界之間遊動的人員,並在系統發現有人越過安全線時向主管發出警報。但是,大多數系統使用白天拍攝的圖像進行操作,而在夜間檢測水中人員的性能卻大大降低。

為了在夜間更有效地檢測人員,一些研究採用了基於機器學習的方法,使用了從紅外攝像機圖像中提取的特定特徵。這些基於機器學習的人體檢測方法可以根據應用的特徵描述符和分類器的類型進行分類。例如,直方圖梯度方向(HOG)的,尺度不變特徵變換(SIFT)樣取向特徵,和強度分佈為基礎的慣性特徵(慣量)被廣泛地用於功能提取,和支持向量機(SVM),或AdaBoost算法經常用作分類器。此外,哈爾級聯分類器,這是基於公知的物體檢測方法類Haar與升壓級聯分類器的功能,也被在幾個研究。如果選擇適當的特徵和特徵提取技術,則經典的機器學習方法通常會顯示令人滿意的檢測性能。在另一方面,這些方法從在含有曖昧或嘈雜特徵。

為了解決這個問題,深學習方法基於卷積神經網絡(CNN)最近已經提出了在紅外圖像。由於增加的模型複雜度導致更好的學習能力,因此這些基於深度學習的方法可以增強紅外圖像中的對象檢測性能。它已經在文獻中發現,基於CNN-人體檢測方法表現出更好的檢出率相比,基於SVM的分類方法。基於深度學習的方法的檢測性能取決於擁有正確的訓練數據。因此,為在夜間檢測游泳者的特定情況構建合適的數據集至關重要。一些研究開發了紅外圖像數據集,例如KAIST,CVC-14和LSI 。]在夜間進行人體檢測。但是,由於這些紅外圖像數據集旨在檢測行人,因此它們由從安裝在地面車輛上的攝像機捕獲的圖像組成。與出於安全目的在海灘上安裝的CCTV相比,這些圖像中的人物具有明顯不同的外觀,在CCTV上,人物僅由幾個像素(即,水上部分人體)代表。因此,為了達到在夜間對CCTV圖像中的人進行遠距離監視的目的,需要更具體的數據集和更細粒度的物體檢測方法。


這項研究提出了一種準確而有效的方法,可以在夜間檢測安裝在頭頂位置的紅外閉路電視中的人員。為此,提出了用於細粒度人檢測的基於CNN的像素方式分類器。這項研究基於紅外攝像機從上方視角獲取的圖像,獲取了三個不同的數據集。此外,本文還提出了一種改進的CNN模型,其中三個輸入通道取自

(i)原始紅外圖像

(ii)與前一幀的差異圖像

(iii)背景減法蒙版。為了驗證所提出的方法,使用四種不同的人類檢測方法進行了比較分析。這項研究的主要貢獻是

  • 引入一種細粒度的人檢測器,該檢測器的精度比基線方法高10–30%;
  • 演示在挑戰性條件下執行遠程目標檢測的能力;
  • 驗證訓練有素的檢測器對不同數據集進行概括的能力。

方法



  • 數據集的組成

這項研究使用了三個紅外圖像數據集,分別是“學校”,“海灘”和“海岸”,以訓練和測試人體檢測算法。“學校”數據集是使用紅外(FLIR)攝像機從校園的人行天橋上方拍攝的。“海灘”和“海岸”數據集是使用紅外閉路電視從韓國公共海灘旁的一座建築物的屋頂上獲取的。所有數據集均在夜間收集,並在像素級別標記。表1顯示了數據集的詳細信息,而圖1,圖2和圖3描述所有數據集中的樣本原始圖像和標籤圖像。將所有數據集分為80%訓練數據和20%測試數據。進行分割的同時要確保訓練數據和測試數據中的圖像出現在原始視頻的不同時間段。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

圖1. 學校數據集的示例圖像和地面真相標籤。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

圖2. 海灘數據集的示例圖像和地面真相標籤。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

圖3. 海岸數據集的示例圖像和地面真相標籤。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

表1. 每個數據集的詳細信息

“學校”數據集用於在明亮的城市地區從高空俯瞰基準,對夜間人體檢測的性能進行基準測試。該數據集是在大學校園內使用許多不同的光源採集的,這些光源對基於強度的檢測算法構成了挑戰。另一方面,使用“海灘”和“海岸”數據集來評估評估人類探測夜間夜間溺水的能力。圖4顯示了由沙灘CCTV攝像機捕獲的夜間場景的佈局。現場包括一個公共海灘,周圍是安全浮標,周圍散佈著幾組人。感興趣的任務是自動檢測夜間在海域內游泳的任何人。這是一項具有挑戰性的任務,因為由於相機距離場景較遠,因此關注區域僅構成圖像中的一小部分。其他挑戰性因素包括波浪產生的噪音和周圍建築物的不規則照明。為了部分克服這些問題,將原始圖像裁剪為僅包含感興趣的區域,即靠近海灘的海域。因此,僅檢測到侵入水域的人員,而未檢測到海灘上的人員。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

圖4. 海灘數據集中監視區域的可視化。

  • 人體從紅外圖像檢測

這項研究實施了六種不同的方法來檢測紅外圖像中的人物,包括我們提出的方法和五種基準方法:

(i)簡單閾值化

(ii)自適應閾值化

(iii)背景減法和

(iv)K均值聚類和(v卷積神經網絡(CNN)


檢測任務被公式化為像素級別的二進制分類,即,每個像素被分類為人的一部分或沒有。這允許在哪裡可以相比包圍盒,其是不準確的並且僅得到目標[的粗略近似來確定確切的對象概略的細粒度檢測26 ]。

  • 使用常規計算機視覺進行人體檢測

在紅外圖像中檢測人的最簡單方法是通過閾值。簡單閾值化技術將恆定閾值應用於像素強度,以確定與人類相對應的像素。由於人類通常比周圍環境溫度更高,因此紅外圖像中相應的像素將具有更高的強度。與簡單閾值相比,自適應閾值不使用固定閾值,而是使用由局部強度值的高斯加權總和確定的變化閾值。這允許閾值過程對於照明條件的變化更加魯棒。

這項研究還基於人類通常相對於周圍環境移動這一事實來考慮背景減法。通過背景減法,可以將人類與一系列紅外圖像區分開來,因為像素會隨時間變化,而像素保持不變。該方法適用於本研究,因為攝像機的安裝位置和視角固定。因此,像素值的任何實質變化都可以歸因於運動物體。實施的背景扣除方法基於 的方法,其中高斯混合模型用於表示像素強度變化。

此外,K-均值聚類方法,該方法通常用於具有一定範圍內的強度值,進行了審議。前景對象將具有與背景像素不同的特定像素值分佈。因此,使用K均值算法確定每個分佈的平均值(即前景與背景),以便可以將前景和背景像素分開。

  • 使用深度神經網絡進行人體檢測

深神經網絡已經示出在文獻證明在各種圖像處理任務。即使紅外圖像與視覺圖像相比外觀可能有所不同,但仍可以應用類似的技術。本研究使用為語義圖像分割任務設計的CNN。該架構具有ResNet的基礎網絡和帶有無規則卷積的頂層。網絡接收N×N×3圖像的輸入,並輸出N×N像素方式的標籤。

圖5顯示了詳細的網絡架構:

三個輸入通道取自

(i)原始紅外圖像

(ii)與前一幀的差異圖像

(iii)背景減法蒙版。


這樣一來,網絡就可以在進行預測時捕獲時間信息。使用交叉熵損失對網絡進行了二元分類任務的訓練。網絡的輸出是每個像素的2D置信度分數數組。陣列以0.99的檢測閾值進行過濾以創建二進制掩碼。高檢測閾值用於確保充分濾除檢測結果中的噪聲。為了確定實際人數,使用了連通分量算法將二進制掩碼中的相鄰像素合併在一起以形成單個對象。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

圖5. 所提出的人檢測方法的網絡架構。


為每個數據集訓練了兩個網絡模型。在本文的其餘部分中,“學校”,“海灘*”和“海岸*”是指使用所有三個輸入通道(即包含時間信息)而“學校”,“海灘”和“海灘”的情況。 “海岸”是指僅使用第一輸入通道(即,沒有時間信息)的場景。圖6顯示了訓練的前20個時期每個數據集的訓練損失圖。訓練進度對於所有數據集都顯示出相似的趨勢,其中損失函數在前幾個時期迅速下降,然後逐漸平穩。該圖還顯示,與“海灘”和“海岸”數據集相比,“學校”數據集的訓練損失通常更高。這可能是因為“大學”數據集在明亮的城市場景中具有更寬的像素強度值範圍。


物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

圖6. 每個數據集訓練期間的前20個時期的損失函數(對數標度)。(*)表示使用時間輸入。


與傳統的視覺圖像相比,在特定數據集實現分割網絡方面存在一些挑戰。首先,由於從俯視圖拍攝圖像,因此與肯定檢測相對應的像素僅佔據圖像中的小區域。為了解決此問題,使用了ResNet的修改版本,輸出步幅要小得多,同時減小了功能圖的深度,以將內存消耗保持在合理的水平。這允許網絡就像素鄰域進行細粒度的預測。此外,由於標籤分佈嚴重偏斜(每個圖像的背景像素約為99%,前景像素僅為1%)。


實驗結果

通過“學校”,“海灘”和“海岸”數據集評估了擬議的人體檢測方法在紅外圖像中的性能。

評估指標是

(i)精度

(ii)召回率

(iii)F1分數

分別在像素級別和對象級別進行測量。所提出的方法在兩種配置下進行了評估:

  1. 一種僅使用第一個輸入通道(即沒有時間信息)
  2. 另一種使用所有三個輸入通道(即包含時間信息)


將所提出的方法與五種基線方法進行了比較,這些基線方法是

(i)簡單閾值處理

(ii)自適應閾值處理

(iii)背景扣除

(iv)K均值聚類

(v)基線CNN

基線CNN是直接從而無需進行任何修改,例如輸出步幅調整或加權損失函數。

圖7,圖8和圖9顯示了與基線方法相比檢測結果的可視化,而表2,表3,表4,表5,表6和表7顯示了數值結果。圖7,圖8和圖9表明,與基線方法相比,我們的方法獲得了更好的檢測結果,幾乎接近了地面真實性。我們的方法能夠在不理會諸如燈柱和波浪之類的背景物體的情況下正確檢測人。表2中的數值結果證實了這一點。,表3,表4,表5,表6和表7,其中我們的方法在所有數據集中獲得了最佳的像素級和對象級F1得分。在“大學”數據集中,使用時間信息作為CNN輸入能夠改善檢測性能,而在“海灘”和“海岸”數據集中,時間信息效果不佳。這是因為由於移動的波浪,“海灘”和“海岸”數據集具有很高的動態性,因此檢測器可能對波浪的隨機運動變得過於敏感,並導致假陽性。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

圖7. 學校數據集的檢測結果:(a)原始紅外圖像,(b)地面真實情況,(c)簡單閾值,(d)自適應閾值,(e)背景減法,(f)K-均值聚類,(g)基線卷積神經網絡(CNN),(h)我們的方法和(i)我們的方法。


物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

圖8. 海灘數據集的檢測結果:(a)原始紅外圖像,(b)地面真實情況,(c)簡單閾值,(d)自適應閾值,(e)背景減法,(f)K-均值聚類,(g)基線CNN,(h)我們的方法和(i)我們的方法。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

圖9. 海岸數據集的檢測結果:(a)原始紅外圖像,(b)地面真實情況,(c)簡單閾值化,(d)自適應閾值化,(e)背景減法,(f)K均值聚類,(g)基線CNN,(h)我們的方法和(i)我們的方法。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

在“海灘”數據集中檢測游泳人士是一項挑戰,因為游泳者只會顯示為小白點。由於安全浮標和移動波會反射背景光,並在IR圖像中顯示為小白點,因此常規檢測方法(例如閾值或背景減法)無法很好地工作。如圖8所示,這些混雜因素可導致多種假陽性,從而簡化了檢測方法。另一方面,提出的CNN方法能夠考慮到更高級別的特徵,例如有助於區分游泳者的形狀和強度變化。表4和表5 證明了我們提出的方法在人類檢測任務中勝過簡單的方法,例如背景扣除。

與基線CNN方法相比,根據表2,表3,表4,表5,表6和表7的結果,我們提出的方法在所有三個數據集中仍然能夠勝過它。與基線CNN相比,提出的方法具有相似的對象級檢測分數,但像素級檢測分數高得多。這種效果在圖7 g和圖8中很明顯g,其中CNN基線方法只能識別人員的大致輪廓。相反,我們的方法能夠準確標記特定像素。這表明我們對CNN訓練提出的改進建議,例如加權損失函數和輸出步幅調整,有助於提高網絡與基線CNN相比在像素級別捕獲更精細細節的能力。

圖10顯示了海灘數據集隨時間的檢測結果。檢測結果表明,該方法即使不斷移動到場景中的不同位置,也能夠成功檢測出水中的人。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

圖10. 海灘數據集隨時間的檢測結果。第一行顯示原始紅外圖像;中間一行顯示基本事實;最下面一行顯示了基於我們提出的方法的檢測結果。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

圖11. 像素檢測結果的精確調用曲線。黃色框表示曲線上每個點的檢測閾值。


為了確定經過訓練在一個數據集中檢測人類的檢測器是否能夠對另一個數據集中的人類進行泛化和檢測,這項研究進行了交叉比較研究,其中對檢測器進行了不同數據集的訓練和測試。這是一項具有挑戰性的任務,因為學校和海灘數據集之間的外觀,對象大小和背景景色存在很大差異,並且某些學習到的功能可能無法推廣。表8顯示了使用不同訓練測試配置的像素級和對象級F1得分。當使用與訓練數據集不同的測試數據集時,F1分數要比相同時更低。但是,結果仍優於大多數基準方法(請參閱表2,表3,表4和表5)。這表明,即使訓練集和測試集中的對象不同,人類檢測器仍具有跨數據集進行概括的能力。將時間信息用作CNN輸入會產生不一致的結果,即,在某些配置下性能會提高,而在其他配置下則不會。這表明該網絡對時間變化很敏感,並且可能過度適合於背景噪聲較大的訓練數據。


物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

表8. 具有不同訓練/測試配置的F1分數的交叉比較。每個單元格的左側顯示像素級F1得分,右側顯示對象級F1得分。

物聯網IoT:開源代碼基於CNN的紅外圖像人檢測夜間入侵預警系統

表9顯示了使用Intel Xeon E3-1246(3.5 GHz)CPU和NVIDIA GTX 1080 GPU測量的每種方法每幀的計算時間。通常,除K均值聚類之外,與基線方法相比,我們的方法需要更多的計算時間。這是由於使用深度神經網絡對計算的要求很高。

結論

這項研究旨在使用紅外熱像儀來自動檢測夜間闖入危險區域的人員,以幫助預防事故。為了解決這個問題,創建了三個用於訓練和測試人員檢測算法的紅外圖像數據集。這項研究開發了一種基於CNN的人體檢測方法,該方法可以執行像素級分割並根據對象鄰域進行細粒度的預測。為了驗證所提出方法的檢測性能,對四種基線物體檢測方法進行了比較分析。


實驗結果表明,所提出的基於CNN的人類檢測方法在所有數據集中均優於常規檢測方法。特別是,該方法在所有數據集的對象級檢測中均保持F1分數高於90%。此外,這項研究有望通過改善人體從紅外圖像的檢測性能,為夜間公共區域的安全和安保做出貢獻。但是,由於數據集是在特定的時間和位置獲取的,因此該方法應用於不同的數據集時可能缺乏通用性。因此,未來的研究將集中在構建具有從更廣泛的視角和位置獲取的紅外圖像的數據集。另外,將探索諸如時域遞歸神經網絡(RNN)的用於合併時間圖像信息的更高級方法。


Paper地址:

https://www.mdpi.com/1424-8220/20/1/34/pdf

開源地址:

https://github.com/jingdao/IR_detection


分享到:


相關文章: