?

基于集成學習策略的高速公路氣象識別

2024-01-02 09:25陳德實
廣東公路交通 2023年6期
關鍵詞:陰天晴天天氣

陳德實

(廣東省高速公路有限公司京珠北分公司,廣東 韶關 512735)

0 引言

雨天、霧天、雪天及路面積雪、結冰等自然天氣現象導致的能見度低、路面濕滑等造成車輛行駛困難,易造成嚴重的交通事故;同時天氣變化多端,同一時間高速公路不同路段天氣狀況不同,尤其是一些極端天氣會對高速公路運行造成影響,因此需要實時監測不同路段的天氣狀況,對惡劣天氣做出及時響應[1-4],實時管控高速公路運行狀態,確保高速公路運行安全。

目前,傳統的天氣識別主要依靠傳感器或人類自己的視覺來完成。傳感器的前期安裝和后期維護需要耗費大量的人力、物力和財力,而且天氣狀況的識別精度和實時性會受到周圍環境的影響,導致天氣識別出現誤差。相對而言,天氣圖像的獲得比較容易,因此,基于天氣圖像的天氣識別方法逐漸盛行起來。Lu[5]等通過提取圖像的天空、陰影、映射和薄霧特征,實現了晴天和多云的天氣分類;Roser[6]等和Yan[7]等通過計算天氣圖像不同區域的亮度、飽和度和色彩等,利用支持向量機實現了車載視覺系統的晴天和雨天的識別;馬嘯[8]等和孟凡軍[9]等在傳統K均值聚類的基礎上,通過提取圖像飽和度分量作為識別霧霾天氣的特征,從而實現了霧霾天氣的識別;于浩[10]等通過提取圖像的色相、飽和度和亮度等特征,采用貝葉斯分類,實現對雨天和霧天的識別。

上述方法手動進行特征的提取,只能進行兩種或三種天氣類型的識別,泛化性不高,準確率也較低。高速公路監控圖像只關注道路特征,天空特征不明顯。針對這些問題,本文采用集成學習策略,通過高速公路監控圖像對霧天、雪天、雨天、陰天和晴天等五類天氣進行識別,及時對惡劣條件下的路面情況進行預警。

1 集成學習策略

集成學習[14]可以使用多個模型進行組合,從而得到一個更好的模型,還可以根據遇到的具體問題研究者自己設計不同的組合方案來獲得更優的模型,這是集成學習作為一種組合優化方法的優勢。

集成學習算法之間的主要區別在于以下5個方面[15]:不同的集成學習算法選擇不同的基礎分類器作為構建塊;集成學習算法可以采用不同的訓練方式;集成學習算法使用不同的集成方法將多個分類器的預測結果進行綜合;集成學習算法通過增加分類器之間的差異性來獲得更好的集成效果;不同的集成學習算法可以采用不同的預測策略來生成最終的預測結果。在選擇合適的集成學習算法時,需要考慮具體問題的特點、數據集的特征以及算法的性能和適用性,以及對于所需性能的需求。

1.1 數據集的構建

收集涵蓋不同天氣條件下的高速公路氣象數據集,包括各種天氣條件下的攝像頭圖像、氣象傳感器數據等。預處理步驟包括數據清洗、數據標注和圖像增強等。從華南、華東和東北各一個省的路面攝像頭截取視頻幀,共截取 104 621張圖片,其中訓練集:陰天20 565張、霧天16 145張、雨天20 829張、雪天18 836張、晴天19 006張;測試集:陰天1 918張、霧天1 743張、雨天1 118張、雪天1 639張、晴天2 552張。部分高速公路氣象圖片如圖1所示。

圖1 部分高速公路天氣圖像

1.2 數據增強

圖像識別的精確度不僅與算法本身相關,還依賴于訓練樣本。數據增強被用于模型訓練過程中,常用的數據增強方法包括隨即縮放裁剪、圖像拉伸、旋轉、水平翻轉等。針對天氣圖像的特點,本文采用圖像隨即縮放裁剪進行圖像增強,如圖2所示。

圖2 圖像增強

1.3 集成學習策略

本文采用經典識別網絡DenseNet121進行五類天氣的識別。使用DenseNet121作為基礎分類器,在訓練集上進行訓練,基于訓練集的隨機子樣本進行多次訓練,每次使用不同的參數初始化或數據采樣,得到多個不同的DenseNet121模型。針對容易混淆的陰、晴兩類天氣進行識別,在ResNet-18基礎上加上度量學習MS-Loss,提高識別的準確率。通過多次實驗確認三種模型權重,達到提高識別準確率的目的。

1.3.1 DenseNet121網絡

DenseNet121網絡在前向反饋模式中,每一層都連接它之后的層,所以DenseNet121每一層的輸入包括當前層之前的其他所有層的輸入,加強了特征在層之間的傳播和特征復用。DenseNet121的主體結構是dense block,其結構如圖3所示。

圖3 DenseNet121網絡結構示例

使用DenseNet121訓練后的測試結果混淆矩陣見表1,整體識別準確率為85.8%,其中晴天和陰天兩種類別容易識別錯誤。

表1 DenseNet121測試結果混淆矩陣

1.3.2 ResNet-18

針對晴天、陰天容易識別錯誤的問題,本文采用ResNet識別網絡模型進行晴天和陰天二分類識別。ResNet主要包含5種深度的網絡結構,大致可以分為兩類:第一種是BasicBlock,主要用于ResNet-18、ResNet-34這些淺層網絡上;第二種是Bottleneck,主要用在ResNet-50、101和152甚至更深層的網絡結構。本文采用ResNet-18結構網絡,主要包含4層,其結構如圖4所示。

圖4 ResNet-18結構

采用ResNet-18進行晴、陰二分類訓練后的測試結果混淆矩陣見表2,整體識別準確率為88.0%,晴天和陰天兩種類別的識別準確率得到提高。

表2 模型2測試結果混淆矩陣

1.3.3 度量學習MS-Loss

度量學習是對模型卷積層學到的特征向量,在其特征空間內拉大類間間距,縮小類內間距。計算方式如式(1)所示:

(1)

式中:Sik為樣本對的余弦相似性;λ為相似度;α、β為超參數。

如圖5所示,對于一個batch里ResNet-18輸出的特征向量,計算樣本對的自身間的相似度、自身與正樣本對的相似差異性、自身與負樣本對的相似差異性等三種相似度。流程為:

圖5 MS-Loss計算過程

(1)樣本篩選,選擇樣本對的自身間的相似度較大的樣本。

(2)樣本加權,將自身與正樣本對的相似差異性和自身與負樣本對的相似差異性對樣本加權。

從表3可見,ResNet-18加入采用度量學習計算后,整體的天氣識別準確率提高至88.2%。由此可見,采用度量學習可提高天氣識別的準確率。

表3 ResNet18+MS-Loss測試結果混淆矩陣

1.3.4 集成學習

集成學習常見的結合策略包括平均法、投票法及學習法等,其中較常用的為加權投票法。

加權投票法[16]首先估計出個體學習器的誤差,然后使權重大小和誤差大小成反比,最終T個個體學習器加權投票的結果如式(2)所示。

(2)

從以上三種模型的測試結果可以看出,單一模型只關注于一種特征,使用單一模型對高速公路天氣進行識別達不到要求,所以采用集成學習對天氣進行識別。本文采用的集成學習策略為:

模型1:對完整的五分類訓練集采用densenet121模型[11]進行訓練,得到85.8%五分類準確率。

模型2:對訓練集取晴、陰二分類,并對訓練集進行抽幀篩選處理,用ResNet-18[12]進行訓練,得到88.0%二分類準確率。

模型3:對五分類訓練集進行抽幀篩選處理,用ResNet-18+MS-Loss[13]進行訓練,得到88.2%五分類準確率。

模型1輸出概率向量a,模型2(晴、陰二分類模型)輸出概率向量b,模型3輸出概率向量c。模型1發揮模型2的晴、陰二分類的優勢,并與模型3進行決策融合,較好地改善了晴、陰二分類的準確率。概率加權平均計算公式如式(3)所示。

p=γ·a+(1-γ)·c

(3)

集成學習策略測試結果見表4,識別準確率達到91.0%。從表1~表4的測試混淆矩陣可以看出,集成學習方法較好地改善了晴、陰二分類的識別準確率。

表4 集成學習測試結果混淆矩陣

2 道路狀況判斷

考慮到天氣寒冷時會出現雖然天氣是晴朗的,但是路面會存在積雪、積水或結冰的現象,需要對路面情況進行判斷。

2.1 語義分割

語義分割網絡通常包括編碼器和解碼器兩部分。編碼器常用一個預先訓練的分類網絡,如mobilenet、resnet等,然后使用解碼器對編碼器學習到的低分辨率的圖像特征語義投影到高分辨率的像素空間上,得到像素級的分類。

文獻[17]提出了第一種語義分割結構—全卷積神經網絡(FCN),也是第一次將深度學習應用到語義分割上,但存在精度較低、對細節不敏感及忽略空間的一致性等缺點。文獻[18]提出了SegNet網絡,在解碼器中加入了最大池化指數,以提高分割分辨率。文獻[19]提出了DeepLab網絡,將空洞卷積加入了分割網絡中,提出了在空間維度上實現金字塔型的空洞池化及全連接條件隨機場。文獻[12]提出了DeepLabv3+網絡,為了擴展DeepLabv3,結合空間金字塔池化結構和編碼解碼器結構設計一個簡單而有效的解碼器模塊,以細化分割結果,且詳細研究了Xception模型,并將深度可分離卷積添加進解碼器模塊,提升了編碼解碼的性能,在不影響推理速度的基礎上較大地提高了分割的準確度。本文采用DeepLabv3+網絡對路面進行分割,從而識別出路面積水、積雪等區域。

2.2 天氣識別整體算法流程

由于從高速公路監控視頻中很難判斷是否結冰,本文采用語義分割算法對路面進行積水和積雪的分割識別。首先識別出路面,再對路面進行積雪和積水的檢測,結合天氣預報或溫度傳感器判斷路面是否結冰。識別流程如圖6所示。

圖6 天氣識別整體流程

天氣識別的步驟:

(1)使用五分類天氣識別模型對輸入圖像進行特征提取,識別出圖片中的天氣類別,輸出陰天、晴天、霧天、雨天及雪天的概率。

(2)若陰天、晴天的概率在前2位,則使用陰、晴二分類模型進行分類,提高陰、晴識別的準確率。

(3)根據步驟2得到的天氣識別結果,若為雨天或雪天則對圖片進行路面分割,得到路面區域,并通過特征提取判斷路面是否積雪或積水。

(4)當路面區域檢測出白色雪狀時判斷路面積雪,當路面區域出現反光且車輛行駛濺起水花時判斷路面積水。通過溫度傳感器或天氣預報得到當前溫度,若溫度低于閾值,則判斷為路面結冰,否則為路面積水。

(5)輸出圖片天氣識別結果及路面狀態檢測結果。

3 工程應用

將基于集成學習策略的天氣識別模型接入高速公路視頻事件識別系統中,系統每隔5min進行天氣識別,圖7為視頻事件識別系統。系統接入韶關路段的監控視頻,統計了12月至1月的天氣識別準確率達到了90%,實現了大雨、大霧等惡劣天氣的及時告警。

圖7 視頻事件識別系統

4 結語

本文采用集成學習策略,通過集成多個分類器的預測結果,可以降低由單個分類器引起的誤差,提高氣象識別的準確性。不同的分類器可能會捕捉到不同的特征和模式,從而提供更準確的預測結果。在氣象識別工作中,不同天氣條件的樣本可能存在類別不平衡。集成學習可以通過綜合多個分類器的結果,達到更好的類別平衡,防止模型對少數類別的過擬合。

針對高速公路較難分辨的晴天和陰天,將DenseNet121、ResNet-18、ResNet-18+MS-Losss三個模型進行融合,有效地提高了晴天、陰天的識別準確率。同時,通過語義分割方法在天氣晴朗或陰天時也能準確識別天氣,并檢測出路面積水、積雪或結冰,為高速公路安全運營提供良好的保障。

猜你喜歡
陰天晴天天氣
它若安好,便是晴天
天氣冷了,就容易抑郁嗎?
一起來寫“雪”
誰是天氣之子
太陽躲在哪里
盛暑天氣,覓得書中一味涼
Weather(天氣)
給陰天染上色彩
晴天有時下豬
陰天
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合