1 引 言 近些年來,在很多涉及生命財產安全的行業中,安全監控越來越引起人們的重視。鐵路行業的安全監控一直以來是鐵道部和國家關注的重點項目,隨著我國火車的不斷提速,安全問題不容忽視,如何保證行車安全和行人安全直接關系到整個鐵路行業的發展。 本文設計的鐵路沿線視頻監控方法是通過一種基于視頻圖像處理實現對于行人穿越鐵路線的監控。當被監視區域中出現目標后可以自動報警并且存儲相應的故障照片,為事后的工作提供可靠的依據。算法設計的最大特點是提出一種以圖像處理為核心的安全監控設計,通過圖像處理可以自動判斷有無危險情況發生并自動報警,特別是在監控人員不在時能夠發揮很大的作用。 2 視頻監控系統中背景的提取 背景圖像是指視場中沒有運動目標的圖像,即使視場內有運動目標,背景算法也通過技術處理除去目標而獲得沒有運動目標的背景圖像。目前常規的背景提取的方法有統計直方圖法、統計中值法、多幀圖像平均法和連續幀差法等。 以上四種方法分別有各自的缺點。統計直方圖法存在的問題是隨著統計幀數的增加,得到的背景圖像效果并不明顯;統計中值法存在的問題與統計直方圖法也相差無幾,此外該算法實現時計算量較大,占用計算機內存較大,處理較慢;多幀圖像平均法得到背景圖像受目標運動量的影響比較大,隨著平均幀數的增加,噪聲消除才會有所改善;連續幀差法靜止的背景圖像不能直接獲得,其關鍵是如何在有目標運動的情況下獲得良好的背景圖像,由于該算法并沒有對幀差分本身進一步處理,存在的問題是易把紋理相似的前景交疊區域誤認為背景。 綜合考慮以上四種背景提取方法,本文采用結合多幀圖像平均法和連續幀差法這兩種方法來進行視頻序列背景的提取。考慮到運動目標的多樣性,有目標經過視場而引起的變化長時間內可忽略不計。多幀圖像平均法時將運動目標看作為噪聲,用累加平均的方法消除噪聲,利用目標運行一段時間的序列圖像進行平均而得到視場背景圖像。連續幀差算法是通過當前幀的圖像與前一幀圖像的差值找到運動區域,對運動區域的背景保持不變,而非運動區域的背景則用當前幀進行更新,經過一段時間的迭代便可提取出背景。兩種方法的結合可以很好地彌補各自的缺點,能夠適應鐵路沿線周邊環境的要求,對存在運動目標的背景能夠提取出質量較高的背景圖像。具體過程如下: 只考慮三幀的情況下,首先從視頻序列中隨便提取三幀,如圖1(a)~圖1(c)所示。然后對提取出來的三幀圖像分別轉換為灰度圖并求出它們的灰度平均圖像,以灰度平均圖像作為連續幀差法的第一幀圖像(即原始圖像)。通過原始圖像和提取的三幀圖像來做連續幀差法,得到的背景圖像經過灰度圖如圖1(d)所示。 3 視場中危險區域的劃定 從已經得到的背景圖像灰度圖開始,進行一系列的圖像處理,將會得到一幅標定了危險區域的二值圖像。首先對背景灰度圖進行均勻化處理,依次是圖像增強、圖像二值化、區域標記、除去圖像毛糙和圖像膨脹。 圖像二值化后的結果如圖2(a)所示,得到的最終結果如圖2(b)所示。從兩幅圖像的對比可以看出,圖像經過一系列處理后,基本標定了危險區域。對于得到的圖2(b),圖中白色的區域為鐵道雙軌內部即設定的危險區域。應用此種方法得到的結果圖像在光照條件充足情況下能夠得到更好的效果,不適用于光照條件不足和夜間的危險區域標定。 4 危險情況存在時圖像的自動保存 由于視頻拍攝的位置是平行于地面,所以拍攝到的視場很寬廣。如果對拍到的整個鐵路線進行監控,那么周圍環境會對圖像處理帶來很大的干擾。所以為了達到較好的監控效果,只考慮沿線的某一塊區域,本文選定的監測區域是:行的位置從346~386的像素點,列的位置從341~370的像素點。待監測的視頻是25幀/s,每秒鐘從視頻中抽取一幀進行監測。對于每一幀待監測的圖像首先要進行圖像的預處理,處理步驟包括有轉換為灰度圖、二值化、圖像膨脹等。把預處理后的圖像和圖2(b)做相與運算,然后對得到的結果圖像在監測區域內進行像素統計。 首先設定一個計數器counter,并令其初始值為0。在監測區域內對每個像素點進行二值判斷,如果像素點的值為0(即黑色點),那么計數器自動加1,待監測區域內的每個點判斷完畢后,再對counter的值進行判斷。如果counter的值大于200(說明監測區域有很大的干擾,即有人進入),則自動對當前待監測的幀以灰度圖的形式保存起來,如果 counter的值小于等于200(說明監測區域沒有受到足夠大的干擾),則本幀監測結束,不保存圖像,轉而監測下一幀。 對每一幀都做上述處理,經過一段時間的監測后,系統會自動保存一些危險情況存在時的圖像(灰度圖形式)。圖像自動保存方法流程圖如圖3所示。 從監控結果來看,得到的是一幅幅危險情況存在時的圖像,圖像自動保存的部分結果如圖4所示。這些圖像是從10 min的視頻數據中自動抽取出來的,從這些圖像中可以分析整個設計的識別率,識別率的高低影響著算法設計和程序編寫的好壞。 通過鐵軌的人總數為114人左右,計算機成功識別出的越軌行為有99人、計算機沒有識別出的越軌行為有15人,本身無越軌行為但被計算機識別出的有9人。監控結果的成功率=(99÷114)×100%=86.8%;監控結果的漏報率=(15÷114)×100%=13.2%;監控結果的誤報率= (9÷114)×100%=7.9%。 5 一種目標識別算法 鐵路上運動目標主要分為:行人、車輛、小動物和其他。 在對目標進行識別前先要對危險情況存在時灰度圖圖像自動保存的結果進行必要的圖像處理,目的是為后續的目標識別奠定基礎,使經過處理后的圖像更加方便地應用于目標識別。在這里圖像預處理主要包括增強圖像對比度、中值濾波和平滑處理等。目標識別算法的流程圖如圖5所示。 根據運動目標的分類可知,車輛的周長是最長的,所以首先直接判斷圖像中運動目標的周長,如果大于某一設定好的閾值,則可輕易判斷出視場中目標屬于車輛。余下的目標中,行人比小動物的縱橫軸比值大,設定縱橫軸比閾值,據此可以判斷出目標屬于行人。最后將設定一個面積閾值,面積大于此閾值則可判斷目標屬于小動物,否則目標屬于其他一些環境的干擾。 6 結 語 本文首先對拍攝到的視頻進行背景提取,根據提取到的背景經過一系列的圖像處理最終對視場中危險區域進行劃定。然后系統自動監測視頻數據,自動以灰度圖的形式保存危險情況存在時的圖像,目的是為了后續的目標識別。最后根據鐵路沿線上可能出現的運動目標,提出了一種運動目標識別算法。從監控結果可以看出,整個算法設計具有一定的可行性,可以作為基于圖像處理的鐵路沿線視頻監控的一種算法,有一定的參考價值。 |