包曉敏,李 平
(浙江理工大學信息學院,浙江杭州 310018)
在工業生產領域中,為保障生產車間工作區域人員安全,大多采用金屬防護欄、安全標語提示等防護措施,但事故仍時有發生[1]。隨著機器視覺技術的蓬勃發展,運動目標檢測作為機器視覺核心技術,由于其高效精準的優勢,具有較高的研究價值與發展潛力[2]。本文通過軟硬件協同工作,搭建基于運動目標檢測的安全防護系統,與傳統工業車間安全防護相比,具有操作簡單、空間占用小、低成本等優點。同時,本文對最大模糊化熵閾值三幀差分算法進行優化改進,實現對運動目標的精準檢測與非法闖入危險區域自動報警功能。
運動目標檢測是將用戶感興趣的部分從采集的圖像序列中分割出來[3-6]。運動目標檢測較為成熟的方法有幀差法、光流法、背景差分法[6]。幀差法是將圖像序列中相鄰圖像前一幀作為當前幀背景模型,但易被噪聲污染,使運動目標在檢測過程中可能產生內部空洞現象[7-8]。光流法是利用圖像序列中各個像素點矢量特征從中檢測出運動目標的算法,根據不同的光流提取運動目標,但是在噪聲、變化的光源等情況下會對其計算結果造成較大影響,算法復雜度高,很難進行實時性檢測[9-11]。背景差分法通過待測幀圖像與背景圖像之間作差分計算以提取運動目標,該方法操作簡單,計算量小,但容易受到外部光照強度、區域環境條件等因素影響,需要通過視頻序列的幀間信息間斷更新背景,否則會使運動目標檢測準確性降低[12-14]。
本文通過對固定攝像頭采集的圖像信息進行運動目標檢測研究,提出一種最大模糊熵閾值化三幀差分運動目標檢測方法,在目標和背景區分的閾值選取上實現自適應選取,有效提高算法檢測能力。
安全防護系統主要包括圖像信息采集和圖像信息處理。通過對視頻監控場景內采集到的圖像信息進行實時處理分析,檢測出其范圍內的運動目標。如果運動物體闖入非法區域就發出報警信號。
系統硬件結構部分主要由CCD 相機、視頻采集卡和監控計算機等部分組成。該系統將CCD 相機獲取的視頻信號進行數字化,檢測檢測區域運動目標,若發現目標非法闖入危險區域,則給出報警信號,并啟動系統硬盤存儲。
本文系統監控軟件由PyCharm64 作為開發工具,完成圖像獲取、圖像形態學操作、運動目標檢測等功能。系統軟件流程如圖1 所示。

Fig.1 System software design圖1 系統軟件設計
系統運行過程中,由CCD 相機捕捉視頻信息,運用視頻采集卡默認的應用接口庫編制采集的圖像。在圖像采集過程中會伴隨產生噪聲,使圖像信息質量降低,因此需要對圖像信息進行預處理,圖像預處理操作主要包含灰度化、圖像形態學變換、二值化、輪廓提取等[15]。通過預處理操作后運用運動目標檢測算法檢測監控區域是否有人員闖入危險區域,如果檢測到運動目標闖入危險區域,則發出警報信號,如果沒有則繼續采集下一幀圖像信息。其中,系統實現的關鍵是實現運動目標檢測和自動報警功能,這是本文重點研究內容。
三幀差分算法[16]是對幀間差分算法的進一步改進,通過對比采集的視頻序列中連續的三幀圖像,首先對所得三幀圖像進行濾波去除噪聲,再分別作幀差法處理,用第k幀圖像與第k-1 幀圖像相減,得到二值化圖像D1(x,y),然后再將k+1 幀圖像與第k 幀圖像相減,得到二值化圖像D2(x,y),最后將D2(x,y)與D1(x,y)作邏輯“與”運算,即可得到三幀差分圖像D(x,y)。算法公式表示為:

三幀差分算法流程如圖2 所示。

Fig.2 Three frame difference algorithm flow圖2 三幀差分算法流程
采用三幀差法可在一定程度上解決幀差法檢測運動目標時重影問題,但無法解決檢測過程中運動目標邊緣輪廓不清晰、內部存在“空洞”問題。無論幀差法還是三幀差法,在對圖像差分二值化處理時,二值化閾值是確定不變的,并不能自動適應環境的變化。閾值是決定目標檢測準確性因素之一,自適應選取閾值可大幅提高檢測準確性。
介于三幀差分法在檢測運動目標時二值化閾值無法自適應環境進行改變,本文提出一種模糊集理論,通過建立差分圖像的隸屬函數,依據最大模糊熵準則,確定最佳閾值分割,達到更加準確識別運動的目標。2.2.1 模糊子集與隸屬函數
根據迷糊集合理論[17],U是論域,稱映射μA:U→[ 0,1 ],x→μA(x)確定1 個U上的模糊子集A,μA稱為模糊集A的隸屬函數(membership function),μA(x)表示x對A的隸屬程度。
本文對視頻序列圖像采用三幀差分法得到的差分圖像進行模糊集定義。設差分圖像X的灰度級數為L,大小為M×N,令Xmn表示坐標(m,n)處像素點的灰度值。將差分圖像劃分成目標(target)模糊集和背景(backdrop)模糊集。這兩個迷糊集隸屬函數分別定義為[18]:

其中,[a,b]為模糊區間,[ 0,a]和[b,L-1 ]為非模糊區間。μtarget(xmn)表示(m,n)像素點屬于目標程度,μbackdrop(xmn)表示(m,n)像素點屬于背景程度,且μtarget(xmn)+μbackdrop(xmn)=1。當xmn=(a+b)/2 時,該灰度級像素屬于目標和背景的隸屬度均為0.5,則可選xmn=(a+b)/2 為分割閾值。灰度級小于的像素屬于背景區域,灰度級大于的像素屬于目標區域。
2.2.2 最大模糊熵閾值分割
根據概率論與數理統計[19]的知識,目標(target)模糊集發生的概率P(target)為:

背景(backdrop)模糊集發生的概率P(backdrop)為:

圖像模糊熵為:

由信息論知,事件熵越大,則事件真實可能性越大[20]。若圖像熵取最大值,則背景和目標區分度最佳。根據最大模糊熵原則,可得到最佳模糊區間a、b,則即可得到最佳閾值為(a+b)/2。
2.2.3 算法流程
最大模糊熵閾值三幀差法將差分后圖像像素值與自適應最大熵閾值進行比較,判決運動目標與背景,其算法流程見圖3。

Fig.3 Three frame difference algorithm for maximum fuzzy entropy threshold圖3 最大模糊熵閾值三幀差分算法流程
在視頻監控區域預先設定工業機器人禁止闖入的危險區域,使用矩形邊框進行劃分。危險的矩形區域對應具體坐標值,當運動目標檢測到返回目標值,與預先設計的矩形區域坐標值進行對比,若屬于該劃定區域,則可認為是闖入事件,觸發報警功能,否則顯示安全。
本文算法仿真實驗環境為Intel Core i5-7500 CPU,3.40GHz,內存為8GB,Microsoft Windows 7 操作系統,通過OpenCV 軟件完成。選取采集的視頻監控,視頻幀為360×240,共500 幀,選取其中連續的三幀圖像序列,如圖4 所示。采用三幀差分算法與本文算法所得的實驗仿真結果如圖5 所示。

Fig.4 Three frames consecutively selected圖4 選取連續的三幀圖像

Fig.5 Simulation results of the algorithm圖5 算法仿真實現效果
圖5(a)為采用三幀差分算法實現運動目標檢測的二值化圖像,圖5(b)為采用本文算法實現運動目標檢測的二值化圖像。通過兩圖對比可知,相比三幀差分算法,本文采用的算法明顯增強了運動目標檢測輪廓連續性,降低了對外部環境條件的敏感程度,消除了圖像噪聲,檢測更加準確,實時性更高。
當前,算法準確率多以識別率η和誤檢率ξ進行衡量,文獻[21]引入1 個綜合指標H 評估目標檢測算法性能。H 值越大,表明算法檢測準確率越高。H 值定義為:

利用固定攝像機采集多組不同圖像信息序列分別對兩種算法進行目標檢測實驗,統計出兩種算法識別率和誤檢率數據,如圖表1 所示。

Table 1 Results of the two algorithms(%)表1 算法對比結果 (%)
由表1 可知,本文采用改進的最大模糊熵閾值三幀差分算法識別率達99.3%,同時誤檢率較低,僅達到1.7%。因此采用本文算法可更好地實現運動目標檢測。
系統對運動目標闖入進行檢測的實驗結果如圖6 所示。圖6(a)和圖6(b)是運動目標進入監控場景中,此時實時檢測到運動目標未進入預定的機器人工作危險區域,系統在視頻幀右上側實時顯示“safe”安全等級;圖6(c)和圖6(d)系統實時檢測到運動目標進入機器人工作危險區域,系統實時發出危險警報,并實時顯示“dangerous”危險警報,符合預期的設計要求。
本文利用漏檢率和正檢率,對運動目標闖入危險區域后系統實現自動報警并進行定量分析,定義漏檢率為運動目標闖入危險區域系統未實現自動報警的數目與所有闖入危險區域行為數目之比,正檢率為運動目標闖入危險區域系統實現自動報警的數目與所有闖入危險區域行為數目之比。通過對60 段闖入行為視頻進行測試,得到漏檢率與正檢率統計結果如表2 所示。

Fig.6 Experimental results of the system圖6 系統實驗結果

Table 2 System automatic alarm detection results表2 系統自動報警檢測結果
由表2 可得,運動目標闖入危險區域觸發系統自動報警功能正檢率高達96.7%,而漏檢率不足4%。實驗結果表明,本文系統能夠滿足工業安全防護需求,有較好的魯棒性,可保障工業安全生產。
本文針對目前傳統工業生產安全防護措施的弊端,利用智能信息處理技術對運動目標進行實時檢測,重點研究了在三幀差算法基礎上采用最大模糊熵自適應選取閾值的方法,可更加準確高效地提取運動目標,同時,對運動目標闖入危險區域實現自動報警這一功能也進行了探究。實驗表明,本文系統可實現工業安全防護多項功能。后續將進一步研究目標檢測算法在動態視頻場景情況下的魯棒性,提高安全防護靈活性。