目前高速公路車流量日趨增加,根據數據統計,京珠高速日均車流量7萬輛左右,最高峰日車流量達到(dào)15萬輛。面對如此大(dà)的(de)車流量,清理行車障礙,預防事故發生,保障道(dào)路安全暢通,是(shì)高速公路管理處不(bù)可回避的(de)日常工作之(zhī)一(yī / yì /yí)。然而(ér)在(zài)現實生活中,我們會碰到(dào)以(yǐ)下問題:
村民爲(wéi / wèi)圖方便,橫穿高速公路。
由于(yú)安全意識差,圖方便,偶爾會有人(rén)在(zài)收費站附近或高速公路路邊上(shàng)下車。
雖然高速公路是(shì)封閉的(de),但偶爾會有狗、貓等動物闖入高速公路,或是(shì)有動物從運輸車上(shàng)掉下來(lái),在(zài)高速公路上(shàng)行走。
前方行駛車輛有箱子(zǐ)、輪胎等物品遺落在(zài)行車道(dào)上(shàng)。
有些車子(zǐ)叉口開過頭,爲(wéi / wèi)圖方便,會倒車行駛,極易被後方車輛追尾,發生事故。
農用車、摩托車等禁止上(shàng)高速的(de)車輛闖入高速公路行駛。
淩晨2:00-5:00大(dà)型客運汽車在(zài)高速公路行駛。
以(yǐ)上(shàng)問題一(yī / yì /yí)旦出(chū)現,若得不(bù)到(dào)及時(shí)處理,容易發生交通事故。所以(yǐ)如何及時(shí)發現行車安全隐患,并對其及時(shí)排查治理是(shì)我們首要(yào / yāo)關心解決的(de)問題。
高速公路視頻監控現狀
現在(zài)所有的(de)高速公路上(shàng)均安裝了(le/liǎo)視頻監控系統,但大(dà)部分是(shì)普通的(de)視頻監控,并非智能視頻監控。這(zhè)種模式有以(yǐ)下缺點:
要(yào / yāo)求有人(rén)24小時(shí)盯住視頻牆,觀看路面狀況。這(zhè)樣容易産生疲勞,錯過緊急畫面。
攝像頭畫面切換時(shí),存在(zài)死角,當隐患在(zài)沒有切換到(dào)的(de)畫面裏時(shí),我們無法發現問題。
從上(shàng)面兩個(gè)方面來(lái)看,普通視頻監控已無法滿足車流量日漸增長的(de)高速公路管理,引進智能監控勢在(zài)必行!
現有智能視頻監控
目前市場上(shàng)現有的(de)智能監控系統形式很多,主要(yào / yāo)在(zài)跟蹤、定位、識别等方面,但很遺憾沒有專門針對高速公路通行運營研發的(de)産品,不(bù)能解決2.2.1中的(de)問題。
IMCH智能監控系統
爲(wéi / wèi)解決2.2.1中羅列的(de)問題,我公司特研發了(le/liǎo)高速公路行車路況智能監控報警系統,爲(wéi / wèi)了(le/liǎo)區分其它智能監控系統,我們将系統命名爲(wéi / wèi)IMCH,據測算IMCH系統的(de)應用将高速公路行車安全隐患減少28%。
在(zài)高速公路現有的(de)視頻監控系統基礎上(shàng)增加一(yī / yì /yí)個(gè)智能分析儀,将系統升級爲(wéi / wèi)IMCH智能監控系統,實現對高速公路路況智能管控,降低行車風險。本次改造隻需接視頻流即可,不(bù)改變原有電路。
計算機視覺(Computer Vision),簡稱CV,包含對象檢測、人(rén)臉識别、文字識别等。對象檢測(Object Detection)是(shì)計算機視覺一(yī / yì /yí)項基本功能。深度學習技術是(shì)計算機視覺的(de)最有效技術之(zhī)一(yī / yì /yí)。
将多個(gè)人(rén)工神經元排列相連接起來(lái),就(jiù)形成了(le/liǎo)多層人(rén)工神經網絡。圖給出(chū)了(le/liǎo)一(yī / yì /yí)個(gè)多層人(rén)工神經網絡結構的(de)一(yī / yì /yí)個(gè)例子(zǐ)。該神經網絡分爲(wéi / wèi)輸入層,隐藏層和(hé / huò)輸出(chū)層。輸入層有3個(gè)輸入(X0, X1, X2),中間有一(yī / yì /yí)個(gè)隐藏層,輸出(chū)層有2個(gè)輸出(chū)(Y1,Y2),共有5個(gè)神經元。
該網絡的(de)連接結構采用多層全連接(Fully Connected Network, FCN)的(de)模式,是(shì)人(rén)工神經網絡中最簡單的(de)連接方式。爲(wéi / wèi)了(le/liǎo)叙述方便,以(yǐ)下人(rén)工神經網絡簡稱神經網絡。
圖 多層神經網絡
經過不(bù)斷的(de)實驗測試,人(rén)們發現不(bù)同的(de)神經網絡架構适合處理不(bù)同的(de)任務。比如說(shuō),卷積網絡适用于(yú)圖像處理。因爲(wéi / wèi)這(zhè)種網絡結構适合圖像處理的(de)不(bù)變性,比如貓的(de)圖像,平移旋轉處理後依然是(shì)貓。
我們系統使用一(yī / yì /yí)體化設計的(de)卷積神經網絡YOLO算法(You Only Look Once)。YOLO算法由華盛頓大(dà)學(University of Washington)計算機科學家Joseph Redmon提出(chū),是(shì)一(yī / yì /yí)種高效的(de)實時(shí)對象檢測技術。
對于(yú)高維數據如圖像(200x200),如果第一(yī / yì /yí)層是(shì)全連接的(de)話,這(zhè)意味着第一(yī / yì /yí)個(gè)隐藏層的(de)每個(gè)神經元都有40, 000個(gè)輸入權重。爲(wéi / wèi)了(le/liǎo)效率更高,可以(yǐ)強制神經元的(de)輸入權重的(de)數量,強制輸入隻和(hé / huò)局部的(de)神經元有連接。這(zhè)樣形成的(de)網絡又稱爲(wéi / wèi)局部網絡,或者局部連接網絡。
圖 卷積網絡的(de)權重共享
權重共享(Weight sharing)是(shì)一(yī / yì /yí)種簡單的(de)局部網絡形成方法,如圖2-6所示。這(zhè)種權重共享等效于(yú)信号處理領域中的(de)卷積運算(Convolution)。
實際中,每一(yī / yì /yí)個(gè)卷積層後緊跟着一(yī / yì /yí)個(gè)下采樣層,比如采用最大(dà)池化(max-pooling) 方法完成下采樣。最大(dà)池化層的(de)操作,就(jiù)是(shì)在(zài)過濾器之(zhī)後(卷積之(zhī)後),計算出(chū)卷積層神經元的(de)輸出(chū)的(de)最大(dà)值。最大(dà)池化的(de)操作原理,如圖所示。
圖 卷積網絡的(de)最大(dà)池化操作
卷積操作就(jiù)是(shì)在(zài)輸入信号上(shàng)使用了(le/liǎo)過濾器(Filter),而(ér)過濾器的(de)參數就(jiù)是(shì)一(yī / yì /yí)組權重值。因此,這(zhè)種局部區域的(de)權重共享的(de)神經網絡,又稱爲(wéi / wèi)卷積網絡(Convolutional neural network,簡稱CNN)。
一(yī / yì /yí)個(gè)卷積網絡工作原理,如圖所示。
圖 卷積網絡
最新CNN進展還包括LCN (local contrast Normalization)。 LCN操作在(zài)最大(dà)池化層之(zhī)後,其目标是(shì)減去平均值,除以(yǐ)标準差。這(zhè)個(gè)操作允許亮度不(bù)變性,對于(yú)圖像識别用處很大(dà)。
YOLO是(shì)一(yī / yì /yí)個(gè)可以(yǐ)一(yī / yì /yí)次性從圖像中預測多個(gè)物體類别和(hé / huò)位置的(de)卷積神經網絡,能夠實現端到(dào)端的(de)對象檢測任務。和(hé / huò)傳統機器學習算法(例如DPM,Deformable Part Model)通過滑窗提取較爲(wéi / wèi)粗略的(de)HOG特征相比,YOLO使用神經網絡讀取圖像中更爲(wéi / wèi)細粒度的(de)像素級别信息,顯著地(dì / de)提高了(le/liǎo)識别精度。和(hé / huò)另一(yī / yì /yí)類R-CNN算法(Region-based Convolutional Neural Network)相比,YOLO不(bù)是(shì)通過複雜的(de)選擇性搜索(Selective Search)預先提取上(shàng)千個(gè)可能包含物體的(de)區域,而(ér)是(shì)将整張圖像輸入做一(yī / yì /yí)個(gè)回歸問題,在(zài)保證精度的(de)前提下,極大(dà)地(dì / de)提高了(le/liǎo)識别速度,更加适合高速公路監控場景;同時(shí),使用圖像整體信息也(yě)使得YOLO算法能夠更好地(dì / de)區分檢測目标和(hé / huò)背景區域,改善背景誤檢問題。
圖 YOLO檢測系統流程
上(shàng)圖展示的(de)是(shì)YOLO檢測系統的(de)基本流程。首先将輸入圖像預處理,分割爲(wéi / wèi)S × S個(gè)網格,如果一(yī / yì /yí)個(gè)目标物體的(de)中心落在(zài)某網格中,則該網格負責檢測目标物體。随後,通過預先訓練好的(de)神經網絡模型,每個(gè)網格負責預測B個(gè)邊界框,每個(gè)邊界框對應5個(gè)預測參數:邊界框的(de)中心點坐标(x,y),寬度、高度(w,h)以(yǐ)及置信度(Confidence)。這(zhè)裏的(de)置信度綜合反映了(le/liǎo)當前邊界框中存在(zài)目标的(de)可能性 PrObject 和(hé / huò)目标位置預測的(de)準确性 IOUpredtruth,具體形式如下:
Confidence=PrObject×IOUpredtruth
如果邊界框中不(bù)存在(zài)目标物體,則 PrObject=0,不(bù)再進行後續操作,跳至判斷後續邊界框。如果存在(zài)目标,則在(zài)預測上(shàng)述參數的(de)同時(shí),預測該網格中物體屬于(yú)某一(yī / yì /yí)類别(假設共有C個(gè)類别)的(de)條件概率 PrClassi|Object,取概率最大(dà)的(de)類别作爲(wéi / wèi)我們的(de)預測,如此就(jiù)可得到(dào)每個(gè)邊界框中的(de)物體類别可能性和(hé / huò)位置預測準确性:
PrClassi|Object×PrObject×IOUpredtruth=PrClassi×IOUpredtruth
最終,我們對置信度超過設定阈值的(de)邊界框進行非極大(dà)值抑制(Non Maximum Suppression),得到(dào)最終的(de)檢測結果。
YOLO網絡結構(下圖所示)的(de)設計借鑒了(le/liǎo)GoogleNet的(de)思想,采用24個(gè)卷積層和(hé / huò)2個(gè)全連接層,最終輸出(chū)S × S × (B × 5 + C)的(de)張量,用以(yǐ)上(shàng)述預測判斷。對于(yú)計算能力有限的(de)處理器,我們可以(yǐ)改用快速版網絡,減少至9個(gè)卷積層,犧牲部分預測精度,提高系統的(de)運行速度。
圖 YOLO神經網絡的(de)結構
我們的(de)目标是(shì)将事故發生率下降減少28%,IMCH系統拟通過以(yǐ)下幾個(gè)方面實現目标:
降低車輛與行人(rén)、動物發生碰撞的(de)風險。
降低碰撞固定物或靜止車輛風險。
減少疲勞駕駛帶來(lái)的(de)風險隐患。
減少倒車追尾相撞事故發生。
杜絕農用車、摩托車等禁止上(shàng)高速的(de)車輛闖入高速公路行駛。
杜絕淩晨2:00-5:00大(dà)型客運汽車在(zài)高速公路行駛。
從上(shàng)圖可見項目完成需要(yào / yāo)約15周左右的(de)時(shí)間。
系統擁有深度學習功能,即在(zài)機器學習的(de)基礎上(shàng)進一(yī / yì /yí)步深入模拟人(rén)腦進行分析學習的(de)神經網絡,模仿人(rén)腦的(de)機制來(lái)訓練和(hé / huò)預測數據,例如圖像、聲音和(hé / huò)文本。其實質是(shì)通過構建具有很多隐層的(de)機器學習模型和(hé / huò)海量的(de)訓練數據,來(lái)學習更有用的(de)特征,從而(ér)最終提升分類或預測的(de)準确性。深度學習正是(shì)運用了(le/liǎo)類似的(de)分層次抽象思想,更高層次的(de)概念從低層次的(de)概念學習得到(dào),而(ér)每一(yī / yì /yí)層都自底向上(shàng),對沒有人(rén)工标注的(de)數據進行學習,最後再用人(rén)工監督自頂向下反向進行調優。另一(yī / yì /yí)方面,深度學習并不(bù)同時(shí)訓練所有層,有效的(de)降低訓練上(shàng)的(de)計算量和(hé / huò)減少訓練偏差的(de)方法。簡單的(de)說(shuō),就(jiù)是(shì)自底向上(shàng)每次隻訓練一(yī / yì /yí)層網絡,通過非監督學習“逐層初始化”(layer-wise pre-training)網絡,當所有層訓練完之(zhī)後,再自頂向下反向調教(back propagation)優化。當然,深度學習的(de)一(yī / yì /yí)個(gè)别名Unsupervised Feature Learning,顧名思義,Unsupervised的(de)意思就(jiù)是(shì)不(bù)要(yào / yāo)人(rén)參與特征的(de)選取過程。
據測試經過一(yī / yì /yí)個(gè)月左右時(shí)間的(de)學習訓練,系統的(de)識别率能達到(dào)90%以(yǐ)上(shàng)。
系統對在(zài)高速公路内行走的(de)人(rén)員進行識别報警,并以(yǐ)短信形式通知相關幹系人(rén),如:“K342+100附近有人(rén)在(zài)高速公路上(shàng)行走”。同時(shí)系統記錄該路段發現行人(rén)的(de)頻次,并進行排序,提醒管理者對常發路段采取有效措施,加強管理。
系統對在(zài)高速公路邊等侯人(rén)員進行識别報警,并以(yǐ)短信形式通知相關幹系人(rén),如:“K342+100附近有人(rén)在(zài)高速公路路邊等候”。同時(shí)系統記錄該路段發現等候的(de)頻次,并進行排序,提醒管理者對常發路段采取有效措施,加強管理。系統抓拍在(zài)高速公路内上(shàng)下乘客的(de)車輛牌照,移交給高速交警。
系統對在(zài)高速公路範圍内出(chū)現的(de)動物進行識别報警,并以(yǐ)短信形式通知相關幹系人(rén),如:“K342+100附近有動物在(zài)高速公路範圍内遊蕩,請相關部門及時(shí)處理。”系統每隔一(yī / yì /yí)段時(shí)間催促一(yī / yì /yí)次,直到(dào)動物消失,間隔時(shí)間、通知人(rén)用戶自行設定。
系統對在(zài)高速公路路面上(shàng)出(chū)現的(de)障礙物進行識别報警,并以(yǐ)短信形式通知相關幹系人(rén),如:“K342+100附近發現障礙物,請相關部門及時(shí)處理。”系統每隔一(yī / yì /yí)段時(shí)間催促一(yī / yì /yí)次,直到(dào)障礙物消失,間隔時(shí)間、通知人(rén)用戶自行設定。
系統對在(zài)高速公路範圍内停止不(bù)動的(de)車輛進行識别報警,并以(yǐ)短信形式通知相關幹系人(rén),如:“K342+100附近有車輛停靠,請相關部門關注現場,确認是(shì)否需要(yào / yāo)救助。”系統每隔一(yī / yì /yí)段時(shí)間催促一(yī / yì /yí)次,直到(dào)車輛消失,間隔時(shí)間、通知人(rén)用戶自行設定。
系統對在(zài)高速公路範圍内倒車車輛進行識别報警,并以(yǐ)短信形式通知相關幹系人(rén),如:“K342+100附近有車輛在(zài)倒車,請相關部門及時(shí)處理。”系統抓拍在(zài)高速公路上(shàng)倒車的(de)車輛牌照,移交給高速交警。
在(zài)全封閉的(de)高速公路上(shàng)長時(shí)間行車,使駕駛員産生單調感,意識混沌,産生睡意,易形成疲勞駕駛。在(zài)夜間的(de)巡邏過程中有時(shí)能夠發現前面的(de)車輛走“s”型路線,在(zài)高速上(shàng)左右搖晃,達到(dào)這(zhè)種不(bù)可思議的(de)地(dì / de)步,發生事故就(jiù)再所難免了(le/liǎo)。
系統對在(zài)高速公路範圍内走“S”型線路的(de)車輛進行識别,并以(yǐ)短信形式通知相關幹系人(rén),如:“K342+100附近,車牌湘A08F42車輛在(zài)走“S”型線路。”對連續兩個(gè)“S”型線路的(de)車輛判斷爲(wéi / wèi)疲勞駕駛,通知高速交警。
系統對非機動車、拖拉機、輪式專用機械車、鉸接式客車、全挂拖鬥車以(yǐ)及其他(tā)設計最高時(shí)速低于(yú)七十公裏的(de)機動車進行識别,并以(yǐ)短信形式通知相關幹系人(rén),如:“K342+100附近,發現車牌爲(wéi / wèi)甘03-83902的(de)禁入高速公路機動車”。
系統對淩晨2:00至5:00欲駛入高速公路或在(zài)高速公路範圍内行駛的(de)大(dà)中型客車進行識别報警,并以(yǐ)短信形式通知相關幹系人(rén),如:“3:10發現有大(dà)中型客車欲在(zài)高灘岩收費站駛入高速公路,請相關人(rén)員及時(shí)處理。”“3:30發現K342+100附近有大(dà)中型客車行駛,請相關人(rén)員及時(shí)處理”。
系統以(yǐ)攝像頭爲(wéi / wèi)單位,對各路段行人(rén)情況進行統計分析,并按發生頻率排列出(chū)某一(yī / yì /yí)時(shí)間段(默認月)的(de)統計報表,對頻率高的(de)前五個(gè)路段畫一(yī / yì /yí)年的(de)趨勢圖。
管理部門可對發現行人(rén)頻率高的(de)路段進行檢查,查看隔離栅是(shì)否破隕或存在(zài)人(rén)爲(wéi / wèi)打開,從而(ér)進入高速公路。并在(zài)路段醒目處設立告示牌,勸阻行人(rén)不(bù)要(yào / yāo)進入高速公路。
系統以(yǐ)攝像頭爲(wéi / wèi)單位,對各路段等候情況進行統計分析,并按發生頻率排列出(chū)某一(yī / yì /yí)時(shí)間段(默認月)的(de)統計報表(報表中寫明抓拍車牌),對頻率高的(de)前五個(gè)路段畫一(yī / yì /yí)年的(de)趨勢圖。
管理部門可對發現等候頻率高的(de)路段進行檢查,查看隔離栅是(shì)否破隕或存在(zài)人(rén)爲(wéi / wèi)打開,從而(ér)進入高速公路。并在(zài)路段醒目處設立告示牌,勸阻行人(rén)不(bù)要(yào / yāo)進入高速公路。
系統以(yǐ)攝像頭爲(wéi / wèi)單位,對各路段發現動物次數進行統計分析,并按發生頻率排列出(chū)某一(yī / yì /yí)時(shí)間段(默認月)的(de)統計報表,對頻率高的(de)前五個(gè)路段畫一(yī / yì /yí)年的(de)趨勢圖。
管理部門可對發現動物頻率高的(de)路段進行檢查,查看隔離栅是(shì)否破隕,以(yǐ)緻有動物從外界穿入高速公路範圍。
系統以(yǐ)攝像頭爲(wéi / wèi)單位,對各路段發現倒車次數進行統計分析,并按發生頻率排列出(chū)某一(yī / yì /yí)時(shí)間段(默認月)的(de)統計報表,對頻率高的(de)前五個(gè)路段畫一(yī / yì /yí)年的(de)趨勢圖。
管理部門對發現倒車頻率高的(de)路段加強标識引導,提醒防止車輛開過頭。
系統以(yǐ)攝像頭爲(wéi / wèi)單位,對各路段發現禁行車輛闖入高速公路次數進行統計分析,并按發生頻率排列出(chū)某一(yī / yì /yí)時(shí)間段(默認月)的(de)統計報表,對頻率高的(de)前五個(gè)路段畫一(yī / yì /yí)年的(de)趨勢圖。
管理部門對發現禁行車輛闖入高速公路頻率高的(de)路段加強警戒,防止禁行車輛闖入高速。
系統以(yǐ)攝像頭爲(wéi / wèi)單位,對淩晨2:00-5:00進入高速公路收費站的(de)客車次數進行統計分析,并按發生頻率排列出(chū)某一(yī / yì /yí)時(shí)間段(默認月)的(de)統計報表,對頻率高的(de)前五個(gè)路段畫一(yī / yì /yí)年的(de)趨勢圖。
管理部門對發現淩晨2:00-5:00進入高速公路收費站頻率高的(de)站點加強管理,防止此時(shí)段客車進入高速公路。
系統對某一(yī / yì /yí)時(shí)間段内(默認一(yī / yì /yí)年)的(de)行人(rén)、等候、動物、停車、倒車等行爲(wéi / wèi)進行統計分析,并按發生頻率畫圓餅圖,爲(wéi / wèi)管理者決策提供參考。
系統提供APP管理,其功能如下:
管理者接收系統提醒警示,方便各管理者根據職責作出(chū)響應。如:清除路面輪胎。
管理方員工處理完現場後可拍照上(shàng)傳,領導層可通過出(chū)勤次數、處理前後照片對比、處理時(shí)間等對員工進行獎罰。
管理者可現場調取視頻監控,作爲(wéi / wèi)處理依據。如:“S”型線路、倒車。
簡單的(de)OA管理。
4