楊蒙超宗偉林孫 凱郭 政郭保文(.山西呂梁學(xué)院礦業(yè)工程系,山西省呂梁市,0000; .中國(guó)礦業(yè)大學(xué)信息與電氣工程學(xué)院,江蘇省徐州市,008; .山西潞安環(huán)保能源開發(fā)股份有限公司王莊煤礦,山西省長(zhǎng)治市,0460)
?
基于Hi3516的礦井運(yùn)動(dòng)目標(biāo)檢測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
楊蒙超1宗偉林2孫 凱3郭 政2郭保文2
(1.山西呂梁學(xué)院礦業(yè)工程系,山西省呂梁市,033000; 2.中國(guó)礦業(yè)大學(xué)信息與電氣工程學(xué)院,江蘇省徐州市,221008; 3.山西潞安環(huán)保能源開發(fā)股份有限公司王莊煤礦,山西省長(zhǎng)治市,046031)
摘要針對(duì)煤礦井下專門設(shè)計(jì)的智能化視頻監(jiān)控系統(tǒng)相對(duì)較少的情況,設(shè)計(jì)與實(shí)現(xiàn)了一種基于Hi3516的礦井運(yùn)動(dòng)目標(biāo)檢測(cè)系統(tǒng)。該系統(tǒng)以Hi3516作為核心處理器,通過搭建交叉編譯開發(fā)平臺(tái)及程序的編寫,實(shí)現(xiàn)視頻實(shí)時(shí)采集、H.264編碼以及基于改進(jìn)分層光流法的運(yùn)動(dòng)目標(biāo)進(jìn)行實(shí)時(shí)檢測(cè),最后采用基于Live555的RTSP服務(wù)器完成視頻數(shù)據(jù)的實(shí)時(shí)傳輸,實(shí)現(xiàn)了遠(yuǎn)程視頻監(jiān)控及運(yùn)動(dòng)目標(biāo)檢測(cè)功能。試驗(yàn)結(jié)果表明,該系統(tǒng)運(yùn)動(dòng)目標(biāo)檢測(cè)準(zhǔn)確性高,穩(wěn)定性和實(shí)時(shí)性較好。
關(guān)鍵詞Hi3516 煤礦井下 運(yùn)動(dòng)目標(biāo)檢測(cè) 視頻監(jiān)控
中圖分類號(hào)TD673
文獻(xiàn)標(biāo)識(shí)碼A
近年來,隨著煤礦無人化開采的不斷推進(jìn),大量的視頻監(jiān)控系統(tǒng)被應(yīng)用到礦區(qū)中,但是專門針對(duì)礦井特殊環(huán)境而設(shè)計(jì)的視頻監(jiān)控系統(tǒng)卻相對(duì)較少。煤礦井下現(xiàn)場(chǎng)的高清呈現(xiàn)及運(yùn)動(dòng)人員的檢測(cè),對(duì)于礦區(qū)的及時(shí)報(bào)警、聯(lián)動(dòng)處理和事故后的報(bào)備情況具有重要的意義。因此,設(shè)計(jì)和實(shí)現(xiàn)智能化的視頻監(jiān)控系統(tǒng)是保證煤礦安全生產(chǎn)的一個(gè)重要環(huán)節(jié)。
智能化視頻監(jiān)控系統(tǒng)關(guān)鍵在于核心處理器性能和相關(guān)圖像處理算法的優(yōu)化程度,如何選擇合適的處理器及有效的處理算法,能在最大程度上發(fā)揮軟硬件性能,對(duì)于實(shí)現(xiàn)智能化視頻監(jiān)控系統(tǒng)至關(guān)重要。
Hi3516是華為海思開發(fā)的專門針對(duì)多媒體信息處理的基于Cortex A9內(nèi)核的芯片,具有可輸出超高清畫質(zhì)和低帶寬的情況實(shí)現(xiàn)網(wǎng)絡(luò)傳輸、顯示及存儲(chǔ)的優(yōu)點(diǎn),并且其特有的IVE(智能加速引擎)技術(shù)不但能適應(yīng)各種智能視頻的分析場(chǎng)景,同時(shí)在各種光照環(huán)境下都能輸出高質(zhì)量的智能分析結(jié)果,被廣泛應(yīng)用于實(shí)時(shí)視頻通信、數(shù)字圖像監(jiān)控以及網(wǎng)絡(luò)攝像機(jī)等領(lǐng)域。
針對(duì)煤礦井下低照度和低清晰度的特殊環(huán)境,本文設(shè)計(jì)并實(shí)現(xiàn)了基于Hi3516的礦井運(yùn)動(dòng)目標(biāo)檢測(cè)系統(tǒng),該系統(tǒng)采用海思公司的Hi3516作為核心處理器,通過搭建交叉編譯開發(fā)平臺(tái)及程序的編寫,實(shí)現(xiàn)視頻實(shí)時(shí)采集、H.264編碼、運(yùn)動(dòng)目標(biāo)實(shí)時(shí)檢測(cè)并通過Live555服務(wù)器完成視頻數(shù)據(jù)的實(shí)時(shí)傳輸。
運(yùn)動(dòng)目標(biāo)檢測(cè)是指從視頻序列圖像中提取出運(yùn)動(dòng)目標(biāo)的區(qū)域、尺寸以及顏色等特征信息,也是后續(xù)目標(biāo)跟蹤及其他圖像處理分析的基礎(chǔ)。采用改進(jìn)的分層光流法對(duì)煤礦井下運(yùn)動(dòng)目標(biāo)進(jìn)行檢測(cè),取得了較好的檢測(cè)效果。改進(jìn)的分層光流法首先采用抗噪性能較好的SUSAN角點(diǎn)檢測(cè)提取圖像中的特征點(diǎn),然后采用金字塔光流法對(duì)特征點(diǎn)進(jìn)行目標(biāo)檢測(cè),在保證運(yùn)動(dòng)目標(biāo)檢測(cè)準(zhǔn)確的基礎(chǔ)上又減少了運(yùn)算時(shí)間。因此,本系統(tǒng)采用這種算法對(duì)運(yùn)動(dòng)目標(biāo)進(jìn)行檢測(cè)。
基于Hi3516的礦井運(yùn)動(dòng)目標(biāo)檢測(cè)系統(tǒng)以Hi3516為核心處理器的Demo板作為試驗(yàn)平臺(tái),并搭載Linux操作系統(tǒng),通過固化于Hi3516芯片中的H.264編碼模塊對(duì)前端的CCD傳感器MN34041采集到的實(shí)時(shí)視頻數(shù)據(jù)進(jìn)行編碼,并對(duì)H.264編碼后的視頻數(shù)據(jù)中的運(yùn)動(dòng)物體進(jìn)行檢測(cè),最終實(shí)現(xiàn)視頻的實(shí)時(shí)觀看及運(yùn)動(dòng)物體的檢測(cè)。
該系統(tǒng)由硬件平臺(tái)和軟件平臺(tái)組成,硬件平臺(tái)為海思公司的Hi3516 Demo開發(fā)板,操作系統(tǒng)為L(zhǎng)inux-2.6.35;軟件平臺(tái)實(shí)現(xiàn)從CMOS傳感器MN34041獲取源數(shù)據(jù)并由板端的CPLD進(jìn)行模數(shù)轉(zhuǎn)換等一系列處理,首先由H.264編碼器完成視頻數(shù)據(jù)編碼,其次通過運(yùn)動(dòng)目標(biāo)檢測(cè)模塊進(jìn)行運(yùn)動(dòng)目標(biāo)的檢測(cè)。具體的工作流程為:當(dāng)局域網(wǎng)內(nèi)有RTSP客戶端發(fā)起請(qǐng)求連接時(shí),系統(tǒng)啟動(dòng)H.264編碼器開始編碼,完成編碼后的視頻幀數(shù)據(jù)經(jīng)過運(yùn)動(dòng)目標(biāo)檢測(cè)模塊處理后經(jīng)由RTSP服務(wù)器分發(fā)到局域網(wǎng)中的RTSP客戶端實(shí)現(xiàn)實(shí)時(shí)監(jiān)控,觀看的同時(shí)也可以實(shí)時(shí)錄像,系統(tǒng)整體結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)整體結(jié)構(gòu)
系統(tǒng)分為視頻采集與H.264編碼、運(yùn)動(dòng)物體檢測(cè)、網(wǎng)絡(luò)傳輸和客戶端這4個(gè)部分,其中視頻采集模塊主要是通過前端的CCD傳感器MN34041采集實(shí)時(shí)的數(shù)據(jù)并通過Demo板上的CPLD芯片完成模數(shù)轉(zhuǎn)換,通過Hi3516啟動(dòng)H.264編碼模塊完成視頻編碼;運(yùn)動(dòng)物體檢測(cè)模塊主要是完成編碼后的視頻幀進(jìn)行運(yùn)動(dòng)物體檢測(cè)并作出標(biāo)記;網(wǎng)絡(luò)傳輸模塊對(duì)開源的Live555項(xiàng)目中的RTSP服務(wù)器進(jìn)行裁剪實(shí)現(xiàn)視頻的實(shí)時(shí)傳輸,通過客戶端VLC可以觀看到實(shí)時(shí)監(jiān)控畫面;客戶端目前由VLC實(shí)現(xiàn)。
3.1Linux交叉編譯環(huán)境的搭建
嵌入式系統(tǒng)軟件的開發(fā)不同于普通軟件的開發(fā)。由于嵌入式開發(fā)板端有限的資源,無法在板端進(jìn)行開發(fā)和調(diào)試,所以通常需要在PC機(jī)上以交叉編譯調(diào)試的方式進(jìn)行嵌入式程序的開發(fā)和調(diào)試。Hi3516的開發(fā)通常是在安裝Windows操作系統(tǒng)的PC機(jī)上運(yùn)行虛擬機(jī),并將Linux操作系統(tǒng)安裝到虛擬機(jī)上,然后在Linux環(huán)境下完成程序的開發(fā)與交叉編譯;也可以是1臺(tái)安裝Linux系統(tǒng)的服務(wù)器,Windows工作臺(tái)通過登陸Linux服務(wù)器完成Hi3516 Demo板的程序開發(fā)與編譯,三者同處于一個(gè)網(wǎng)絡(luò)中, Hi3516 Linux開發(fā)環(huán)境如圖2所示。為了開發(fā)方便,本系統(tǒng)在安裝Windows操作系統(tǒng)的PC機(jī)上安裝Oracle VM VirtualBox虛擬機(jī),在Oracle虛擬機(jī)上安裝Ubuntu,最后安裝交叉編譯器。
圖2 Hi3516 Linux開發(fā)環(huán)境
3.2視頻采集與編碼的實(shí)現(xiàn)
Hi3516 Demo板通過攝像頭MN34041完成圖像的采集,具體的圖像采集與編碼流程如圖3所示。
圖3 圖像采集與編碼流程
3.3網(wǎng)絡(luò)傳輸模塊的實(shí)現(xiàn)
網(wǎng)絡(luò)傳輸模塊對(duì)開源的Live555項(xiàng)目中的RTSP服務(wù)器進(jìn)行裁剪實(shí)現(xiàn)視頻的實(shí)時(shí)傳輸,因此首先介紹Live555開源項(xiàng)目,然后討論基于Live555開源項(xiàng)目中的RTSP服務(wù)器的實(shí)現(xiàn)過程,并在Hi3516 Demo板端實(shí)現(xiàn)RTSP服務(wù)器。
3.3.1Live555開源項(xiàng)目介紹及源碼分析
Live555是一個(gè)C++開源項(xiàng)目,提供了跨平臺(tái)的流媒體解決方案,從而實(shí)現(xiàn)了對(duì)標(biāo)準(zhǔn)流媒體傳輸協(xié)議諸如RTP/RTCP、RTSP和RTMP等協(xié)議的支持,并且支持對(duì)不同的音視頻編碼格式的媒體數(shù)據(jù)的流化、接收和處理,包括MPEG、DV、JPEG、H.263+以及H.264等視頻和多種音頻編碼格式。由于Live555項(xiàng)目的良好設(shè)計(jì)和易于擴(kuò)展,因此可以很方便地實(shí)現(xiàn)跨平臺(tái)開發(fā)使用。
Live555項(xiàng)目中提供了多媒體庫文件,因此可以通過該庫文件構(gòu)建不同協(xié)議的多媒體應(yīng)用程序。由于在本設(shè)計(jì)使用RTSP協(xié)議實(shí)現(xiàn)視頻流的傳輸,因此選擇了live555/live/testProgs目錄下的test OnDemandRTSPServer.cpp作為裁剪移植的對(duì)象。test On Demand RTSPServer.cpp中,程序的執(zhí)行可以分為系統(tǒng)初始化、創(chuàng)建RTSP服務(wù)器、創(chuàng)建Session以及事件循環(huán)這4個(gè)步驟。
3.3.2基于Live555的RTSP服務(wù)器的實(shí)現(xiàn)
將基于Live555的RTSP服務(wù)器裁剪移植到Hi3516 Demo板上,實(shí)現(xiàn)通過RTSP服務(wù)器發(fā)送264碼流,實(shí)現(xiàn)流程如圖4所示。首先初始化創(chuàng)建RTSP服務(wù)器,然后啟動(dòng)視頻編碼服務(wù),創(chuàng)建視頻源,程序分兩步執(zhí)行:
(1)創(chuàng)建視頻編碼線程,啟動(dòng)編碼發(fā)送程序;
(2)執(zhí)行循環(huán)等待RTSP客戶端發(fā)起請(qǐng)求連接,連接成功后向客戶端發(fā)送實(shí)時(shí)數(shù)據(jù)。
圖4 RTSP服務(wù)器執(zhí)行流程
3.4基于改進(jìn)分層光流法的運(yùn)動(dòng)物體檢測(cè)模塊
基于改進(jìn)分層光流法的運(yùn)動(dòng)物體檢測(cè)模塊,既可以在Hi3516板端實(shí)現(xiàn)RTSP服務(wù)器的基礎(chǔ)上增加運(yùn)動(dòng)目標(biāo)檢測(cè)的功能,又可以最終實(shí)現(xiàn)基于Hi3516的礦井運(yùn)動(dòng)目標(biāo)檢測(cè)系統(tǒng)。
要實(shí)現(xiàn)運(yùn)動(dòng)目標(biāo)的檢測(cè),需要將視頻源綁定到偵測(cè)通道,然后將接收到的視頻流經(jīng)過改進(jìn)的分層光流算法處理,在視頻幀中找到運(yùn)動(dòng)目標(biāo),確定輪廓的尺寸及中心坐標(biāo),由于Hi3516出色的圖形處理性能,提供了通道疊加的功能,可以根據(jù)這些參數(shù)畫出矩形框,然后將這一圖層疊加到編碼通道上,經(jīng)由H.264編碼器編碼后通過RTSP服務(wù)器發(fā)送出去,改進(jìn)分層光流算法在Hi3516板端實(shí)現(xiàn)流程如圖5所示。
圖5 改進(jìn)分層光流算法在Hi3516板端實(shí)現(xiàn)流程
3.4.1在Hi3516板端實(shí)現(xiàn)改進(jìn)的分層光流法
為了程序簡(jiǎn)潔明了的實(shí)現(xiàn)跨平臺(tái)移植,在Linux環(huán)境下,將改進(jìn)后的分層光流法的用C語言實(shí)現(xiàn)并編譯成動(dòng)態(tài)鏈接庫的形式,只留出函數(shù)接口供程序調(diào)用,這樣極大的增強(qiáng)了程序的可移植性。利用改進(jìn)的分層光流法檢測(cè)運(yùn)動(dòng)目標(biāo)的具體流程如圖6所示。
圖6 改進(jìn)分層光流法檢測(cè)運(yùn)動(dòng)目標(biāo)的具體流程圖
3.4.2檢測(cè)結(jié)果疊加到VENC通道
通常情況下可能會(huì)在視頻中疊加OSD來顯示一些如通道號(hào)和時(shí)間戳等信息,也有可能會(huì)填充色塊,疊加在圖像上的OSD信息與遮擋在圖像上的色塊統(tǒng)稱為區(qū)域,Hi3516中使用REGION模塊統(tǒng)一管理這些區(qū)域資源。
區(qū)域創(chuàng)建后,通過海思提供的API函數(shù)將該區(qū)域疊加到某個(gè)通道中,在通道進(jìn)行調(diào)度時(shí),則會(huì)將OSD疊加在視頻中,從而將區(qū)域疊加到視頻圖像中相應(yīng)的位置。
為了驗(yàn)證本文所設(shè)計(jì)和實(shí)現(xiàn)的系統(tǒng)的性能,對(duì)系統(tǒng)進(jìn)行了煤礦現(xiàn)場(chǎng)進(jìn)行實(shí)地實(shí)驗(yàn),實(shí)驗(yàn)環(huán)境如下:
(1)實(shí)驗(yàn)地點(diǎn):山西長(zhǎng)治王莊煤礦。
(2)實(shí)驗(yàn)網(wǎng)絡(luò):王莊煤礦局域網(wǎng),網(wǎng)關(guān)為192.168.3.1,子網(wǎng)掩碼為255.255.255.0。
(3)服務(wù)器配置:Hi3516 Demo板,操作系統(tǒng)為L(zhǎng)inux-2.6.35,攝像頭MN34041,IP地址為192.168.3.2。
(4)客戶端配置:統(tǒng)一安裝VLC播放器的10臺(tái)通用PC機(jī),IP地址分別為192.168.3.111~192.168.3.120,操作系統(tǒng)為Windows 7。
(5)視頻編碼算法:H.264。
煤礦井下實(shí)時(shí)監(jiān)控畫面如圖7所示,運(yùn)動(dòng)目標(biāo)檢測(cè)結(jié)果如圖8所示。
圖7 煤礦井下實(shí)時(shí)監(jiān)控畫面
圖8 運(yùn)動(dòng)目標(biāo)檢測(cè)結(jié)果
由圖7和圖8可看出,本文設(shè)計(jì)并實(shí)現(xiàn)的系統(tǒng)在實(shí)時(shí)傳輸視頻畫面的基礎(chǔ)上,可以準(zhǔn)確無誤的檢測(cè)出運(yùn)動(dòng)目標(biāo)。
連續(xù)運(yùn)行使用板端服務(wù)器和10臺(tái)PC機(jī)5 d,測(cè)試服務(wù)器運(yùn)行的穩(wěn)定性,5 d后查看10個(gè)VLC播放器的情況,畫面播放正常,且保持同步、實(shí)時(shí),通過該測(cè)試充分證明了該系統(tǒng)的穩(wěn)定性。
通過Hi3516處理器設(shè)計(jì)與實(shí)現(xiàn)軟硬件環(huán)境,并結(jié)合基于改進(jìn)分層光流算法,最終實(shí)現(xiàn)煤礦井下現(xiàn)場(chǎng)的實(shí)時(shí)監(jiān)控及運(yùn)動(dòng)目標(biāo)的檢測(cè),該系統(tǒng)具有穩(wěn)定性好以及運(yùn)動(dòng)檢測(cè)準(zhǔn)確性高的優(yōu)點(diǎn),為后續(xù)運(yùn)動(dòng)目標(biāo)跟蹤和識(shí)別等奠定了基礎(chǔ)。
參考文獻(xiàn):
[1]程德強(qiáng),郭政,劉潔等.一種基于改進(jìn)光流法的電子穩(wěn)像算法[J].煤炭學(xué)報(bào),2015(3)
[2]康毅.海思IVE技術(shù)開啟智能視頻監(jiān)控新紀(jì)元[J].中國(guó)公共安全:學(xué)術(shù)版,2014(22)
[3]Hisilicon. Hi3516 Full-HD IP-Cam SOC產(chǎn)品簡(jiǎn)介[EB/OL].海思半導(dǎo)體公司,2012
[4]程德強(qiáng),劉潔,郭政.基于分層光流的煤礦井下運(yùn)動(dòng)目標(biāo)跟蹤算法[J].工礦自動(dòng)化,2015(3)
[5]Hisilicon. Hi3516 Linux開發(fā)環(huán)境用戶指南[EB/ OL].海思半導(dǎo)體公司,2012
[6]Vun N et.al.Implementation of an embedded H.264 live video streaming system[C].//IEEE International Symposium on Consumer Electronics.IEEE, 2010
[7]孫泉.支持H264的實(shí)時(shí)流媒體服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)[D].北京郵電大學(xué),2010
(責(zé)任編輯王雅琴)
Design and implementation of moving objects detection system in coal mines based on Hi3516
Yang Mengchao1,Zong Weilin2,Sun Kai3,Guo Zheng2,Guo Baowen2
(1.Department of mining engineering,Shanxi Lvliang University,Lvliang,Shanxi 033000,China; 2.School of Information and Electrical Engineering,China University of Mining and Technology,Xuzhou,Jiangsu 221008,China; 3.Wangzhuang Coal Mine,Shanxi Lu'an Environmental and Energy Development Co.,Ltd, Changzhi,Shanxi 046031,China)
AbstractIn view of the relative lack of specially designed intelligent video monitoring system for underground coal mine,a kind of moving objects detection system in coal mines based on Hi3516 was designed and implemented. The system took the Hi3516 as the core processor, through programming and setting up the cross compiler development platform,real-time video capture,H.264 encoding and real-time moving objects detection based on improved hierarchical optical flow method were realized,then the real-time video data transmission was achieved through RTSP server based on Live555,which realized the remote video monitoring and moving objects detection.The test results showed that the system had high accuracy of moving objects detection,better stability and real-time performance.
Key wordsHi3516,underground coal mine,moving object detection,video surveillance
作者簡(jiǎn)介:楊蒙超(1993-),男,山西長(zhǎng)治人,現(xiàn)就讀山西呂梁學(xué)院礦業(yè)工程系,主要從事煤礦開采技術(shù)研究。