付 燕,竇曉熠,葉 鷗
(西安科技大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,陜西 西安 710054)
煤礦安全生產(chǎn)一直是煤炭行業(yè)的熱點(diǎn)話題,其重點(diǎn)問題是井下工作場(chǎng)所存在隨時(shí)隨機(jī)的危險(xiǎn)性[1],導(dǎo)致這些危險(xiǎn)性存在的主要原因是井下大量生產(chǎn)設(shè)備需要靠工作人員判斷狀態(tài)并且重復(fù)啟停操作。由于煤礦從業(yè)人員來源結(jié)構(gòu)復(fù)雜,人員眾多,自我約束力差異較大,面對(duì)井下作業(yè)場(chǎng)所設(shè)備多、操作枯燥、重復(fù)繁重的工作,作業(yè)人員容易懈怠出錯(cuò)[2]。如果監(jiān)管不到位,可能會(huì)出現(xiàn)搭乘皮帶、追趕猴車、不檢查或漏檢設(shè)備等“三違”行為[3]。因此,如何利用監(jiān)控視頻識(shí)別水泵房等井下場(chǎng)景中的人員巡檢是否按時(shí)、規(guī)范作業(yè),實(shí)現(xiàn)自動(dòng)化監(jiān)督管理,對(duì)于煤礦安全生產(chǎn)有十分重要的意義。
基于監(jiān)控視頻對(duì)目標(biāo)速度的估算,是通過對(duì)井下工作人員的狀態(tài)實(shí)時(shí)判斷和智能感知,從而實(shí)現(xiàn)人員作業(yè)監(jiān)督的方法。目前針對(duì)視頻移動(dòng)目標(biāo)的測(cè)速大致分為兩類方法,一類是通過算法模型提取圖像特征點(diǎn),并由特征點(diǎn)匹配和定位目標(biāo),進(jìn)而根據(jù)已知信息計(jì)算目標(biāo)速度[4]。例如,文獻(xiàn)[5]使用Harris角點(diǎn)檢測(cè)視頻連續(xù)幀,在所有的角點(diǎn)匹配對(duì)中選位移最長(zhǎng)的匹配對(duì),作為實(shí)際移動(dòng)距離的最近似測(cè)量。該方法不受外設(shè)條件的限制,但需要人為選擇和匹配特征點(diǎn)。文獻(xiàn)[6]利用灰度約束光流計(jì)算車輛的光流值,根據(jù)光流值計(jì)算速度。該方法具有良好的魯棒性,但是不能滿足實(shí)時(shí)性。文獻(xiàn)[7]利用幀差法檢測(cè)運(yùn)動(dòng)小球的速度,準(zhǔn)確性較好,但只能計(jì)算水平和垂直速度。文獻(xiàn)[8]對(duì)壓縮后的圖像采用改進(jìn)的光流法進(jìn)行計(jì)算,將光流速度轉(zhuǎn)換為血液的實(shí)際移動(dòng)速度,但實(shí)驗(yàn)只針對(duì)光照強(qiáng)度和運(yùn)動(dòng)速度變化較大的情況。此外,另一類目標(biāo)測(cè)速方法是基于視頻場(chǎng)景道路攝像機(jī)的標(biāo)定方法,通過尋找場(chǎng)景中明顯的幾何特征對(duì)攝像機(jī)進(jìn)行標(biāo)定,然后利用已標(biāo)定的特征點(diǎn)完成速度測(cè)量。例如,文獻(xiàn)[9]提出基于已知沿路距離和車道標(biāo)記特征的標(biāo)定方法,估計(jì)車輛運(yùn)動(dòng)區(qū)間。該方法可以應(yīng)用于各種復(fù)雜天氣場(chǎng)景,實(shí)時(shí)性較好,但必須存在可標(biāo)定的車道。文獻(xiàn)[10]提出基于參考圖像與路面信息的監(jiān)控?cái)z像機(jī)標(biāo)定方法,計(jì)算簡(jiǎn)單精確,但需要依賴車道標(biāo)線的間距和一條垂直于車道標(biāo)線的線段。文獻(xiàn)[11]采用基于級(jí)聯(lián)的霍夫變換和平行坐標(biāo)的方法來自動(dòng)標(biāo)定車輛,避免了對(duì)場(chǎng)景的實(shí)際測(cè)量,但局限性是被檢測(cè)目標(biāo)必須有很大一部分運(yùn)動(dòng)近似于直線。總的來說,上述兩類方法缺少通過自主學(xué)習(xí)方式,智能化自動(dòng)檢測(cè)跟蹤目標(biāo),并且人為設(shè)計(jì)的特征不夠穩(wěn)定,針對(duì)煤礦井下具有復(fù)雜背景的視頻數(shù)據(jù),場(chǎng)景中很難找到較明顯的幾何特征,較難明確可參考的車道邊緣線、任意平行線或垂直線,不適用于井下視頻監(jiān)控中的人員測(cè)速。
為此,本文針對(duì)煤礦井下視頻數(shù)據(jù),提出一種井下人員速度檢測(cè)方法。該方法首先采用深度學(xué)習(xí)目標(biāo)檢測(cè)算法對(duì)目標(biāo)進(jìn)行持續(xù)定位跟蹤;其次通過確定圖像消失點(diǎn),利用相似三角形原理估算目標(biāo)速度,實(shí)現(xiàn)對(duì)人員巡檢操作的實(shí)時(shí)自動(dòng)化感知。本文所提方法與基于標(biāo)定的方法相比,可以不受場(chǎng)景中幾何因素的影響,利用深度學(xué)習(xí)算法模型提高捕捉目標(biāo)特征的準(zhǔn)確度,進(jìn)而更加準(zhǔn)確的實(shí)現(xiàn)對(duì)煤礦井下人員移動(dòng)速度的測(cè)量。
本文的創(chuàng)新點(diǎn)包括:①提出基于深度學(xué)習(xí)算法得到目標(biāo)邊界框特征點(diǎn)計(jì)算圖像消失點(diǎn)的方法;②提出基于消失點(diǎn)建立不依賴場(chǎng)景標(biāo)定的三角形模型用于速度的估算。該方法主要解決無明顯幾何特征的井下場(chǎng)景中運(yùn)動(dòng)目標(biāo)速度測(cè)量的問題。
井下水泵房的巡檢人員主要負(fù)責(zé)掌握設(shè)備運(yùn)行情況,及時(shí)發(fā)現(xiàn)缺陷,保證設(shè)備的正常運(yùn)行[12]。值班人員必須固定時(shí)間巡視,巡視時(shí)應(yīng)遵守規(guī)定的路線,不得遺漏。當(dāng)工作人員在規(guī)定時(shí)間內(nèi)速度基本保持不變的次數(shù)與要求查看設(shè)備次數(shù)一致時(shí),屬于正常工作狀態(tài);當(dāng)其速度持續(xù)不斷地變化,代表該人員持續(xù)移動(dòng),可以判斷為沒有檢查設(shè)備,違反了巡檢制度,存在安全風(fēng)險(xiǎn)。
因此,本文基于深度學(xué)習(xí)目標(biāo)檢測(cè),提出速度估算方法監(jiān)測(cè)工作人員的狀態(tài)。該方法通過查看數(shù)據(jù)圖的波谷,反應(yīng)目標(biāo)在這一時(shí)間段內(nèi)的停留次數(shù),且停留時(shí)間是否足夠完成巡檢工作。
針對(duì)運(yùn)動(dòng)目標(biāo)實(shí)時(shí)速度測(cè)量的主要思想如圖1所示,文中對(duì)輸入的視頻圖像序列,采用YOLOv3算法檢測(cè)該目標(biāo)的邊界框,對(duì)相鄰幀的邊界框結(jié)合三維世界坐標(biāo)系與二維圖像坐標(biāo)系的轉(zhuǎn)換思想計(jì)算出圖像消失點(diǎn),然后由消失點(diǎn)建立的三角形模型對(duì)相鄰幀中運(yùn)動(dòng)目標(biāo)的速度進(jìn)行估算,最后分析實(shí)驗(yàn)數(shù)據(jù)結(jié)果。
圖1 本文方法的主要思想
為實(shí)現(xiàn)井下人員的實(shí)時(shí)測(cè)速,首先需要實(shí)時(shí)檢測(cè)視頻中的井下人員。在目標(biāo)檢測(cè)算法中,比起方向梯度直方圖HOG(Histogram of Oriented Gradient)[13]、尺度不變特征轉(zhuǎn)換SIFT(Scale-invariant Feature Transform)[14]等傳統(tǒng)的目標(biāo)檢測(cè)方法,深度學(xué)習(xí)算法的速度、準(zhǔn)確性相對(duì)較高,這類算法包括利用RPN網(wǎng)絡(luò)對(duì)候選區(qū)進(jìn)行推薦的Faster RCNN[15]系列網(wǎng)絡(luò)和直接回歸目標(biāo)框位置的YOLO[16]系列網(wǎng)絡(luò)和SSD[17]網(wǎng)絡(luò)等。由于YOLO系列網(wǎng)絡(luò)直接在特征圖(Feature Map)上回歸邊界框,減少了大量生成候選框的時(shí)間,且YOLOv3采用的Darknet-53網(wǎng)絡(luò)相比v1和v2縮小和加深了網(wǎng)絡(luò)結(jié)構(gòu)[18],從而在準(zhǔn)確度和實(shí)時(shí)性上都得到了提高。因此,本文采用YOLOv3對(duì)井下移動(dòng)目標(biāo)進(jìn)行檢測(cè)。
YOLOv3是端到端的CNN運(yùn)算,強(qiáng)調(diào)算法實(shí)時(shí)性[19]。它將輸入圖像分成若干網(wǎng)格,每個(gè)網(wǎng)格預(yù)測(cè)出若干邊界框,每個(gè)邊界框包含x、y、w、h四個(gè)坐標(biāo)和置信度五個(gè)基本參數(shù),置信度是用來判斷此邊界框是否含有物體。
YOLOv3主要采用DarkNet-53網(wǎng)絡(luò)進(jìn)行多尺度特征融合,通過K-means聚類方法對(duì)邊框做聚類分析,得到的先驗(yàn)框(Anchor Box)進(jìn)行目標(biāo)性評(píng)分,使用非極大值抑制(Non-maximum Suppression,NMS)和目標(biāo)置信度閾值判斷這塊位置是目標(biāo)的可能性大小,最后針對(duì)評(píng)分最高的先驗(yàn)框,采用邊框回歸的方法直接預(yù)測(cè)出中心點(diǎn)相對(duì)于網(wǎng)格左上角坐標(biāo)的偏移量。
邊框回歸如圖2所示,細(xì)虛線框平移到粗虛線框,然后進(jìn)行尺度縮放調(diào)整到實(shí)線真實(shí)框,Gx、Gy、Gw、Gh和Px、Py、Pw、Ph分別是真實(shí)框和先驗(yàn)框在特征圖上的中心點(diǎn)坐標(biāo)值以及寬和高。
圖2 邊框回歸
式中,Cx、Cy是網(wǎng)格單元左上角坐標(biāo),網(wǎng)絡(luò)實(shí)際學(xué)習(xí)的是tx、ty、tw、th四個(gè)坐標(biāo),最終得到的邊框坐標(biāo)值是bx、by、bw和bh,即真實(shí)框的位置和大小,是最終需要的預(yù)測(cè)輸出坐標(biāo)。其中σ(·)是指Sigmoid函數(shù)歸一化,確保目標(biāo)中心處于執(zhí)行預(yù)測(cè)的網(wǎng)絡(luò)單元中,防止過度偏移。
YOLOv3算法得到每幀目標(biāo)邊界框的特征點(diǎn)坐標(biāo),用于計(jì)算消失點(diǎn)并建立三角形模型。消失點(diǎn)可以看作空間中兩條平行線在無窮遠(yuǎn)處的相交點(diǎn)投影在圖像上所成的像點(diǎn),如圖3所示。
圖3 世界坐標(biāo)系中的消失點(diǎn)
首先在兩幀圖像對(duì)應(yīng)的空間坐標(biāo)系中尋找平行線,一般情況下,無論移動(dòng)距離是多少,同一個(gè)目標(biāo)在空間坐標(biāo)系中的高度是保持不變的。取同一目標(biāo)邊界框的任意兩個(gè)特征點(diǎn)在視頻某兩幀中對(duì)應(yīng)的坐標(biāo),分別連接同一特征對(duì)應(yīng)的坐標(biāo)點(diǎn),兩點(diǎn)連線的延長(zhǎng)線在空間坐標(biāo)系中一定呈平行狀態(tài),然后將其轉(zhuǎn)換至二維圖像坐標(biāo)系中,目標(biāo)高度對(duì)應(yīng)兩幀圖像中目標(biāo)框的高度,邊界框左上角和右下角可以看作特征點(diǎn)。因此,兩幀圖像中目標(biāo)左上角相連的延長(zhǎng)線和目標(biāo)右下角相連的延長(zhǎng)線可匯聚到消失點(diǎn)。
本文采用YOLOv3對(duì)每個(gè)視頻序列實(shí)現(xiàn)了目標(biāo)檢測(cè),并計(jì)算目標(biāo)的位置和大小。已知每幀圖像目標(biāo)框左上角坐標(biāo)點(diǎn)(bx,by),目標(biāo)框右下角坐標(biāo)點(diǎn)(qx,qy)。設(shè)第i幀目標(biāo)框左上角坐標(biāo)點(diǎn)為(bxi,byi),目標(biāo)框右下角坐標(biāo)為(qxi,qyi),第j幀目標(biāo)框左上角和右下角坐標(biāo)點(diǎn)分別為(bxj,byj)、(qxj,qyj),將兩幀圖像中對(duì)應(yīng)點(diǎn)連接得出兩條在空間坐標(biāo)系中的平行線,兩條平行線模型如式(2)。
由于兩點(diǎn)確定一條直線,將已知點(diǎn)分別帶入直線方程,可求出k值和d值,最后聯(lián)立兩個(gè)直線方程求出相交點(diǎn)(x0,y0),即得到所需的消失點(diǎn)。
基于目標(biāo)邊界框及消失點(diǎn)建立不依賴場(chǎng)景標(biāo)定的三角形模型并測(cè)量目標(biāo)速度,如圖4所示。坐標(biāo)系中存在兩個(gè)矩形框,分別表示同一個(gè)目標(biāo)在視頻前后幀中被檢測(cè)到的位置邊界框,A點(diǎn)和B點(diǎn)是邊界框?qū)?yīng)的右下角點(diǎn)。點(diǎn)Q表示圖像消失點(diǎn)。
圖4 速度計(jì)算方法
由目標(biāo)檢測(cè)已知A點(diǎn)和B點(diǎn)坐標(biāo),由消失點(diǎn)計(jì)算方法可以計(jì)算出Q點(diǎn)的坐標(biāo),從而可以知道直線QD和直線BD的長(zhǎng)度。因此,由式(3)可得直線QB長(zhǎng)度:
|QB|2=|QD|2+|BD|2
(3)
由相似三角形原理可知:
ΔQAC~ΔQBD
(4)
因此,線段QA可由QB以及已知的直線QC、QD表示為:
隨著運(yùn)動(dòng)目標(biāo)框右下角位置從B移動(dòng)到A,運(yùn)動(dòng)目標(biāo)的移動(dòng)距離可用|AB|表示,幀數(shù)用f表示。根據(jù)速度公式,運(yùn)動(dòng)目標(biāo)的實(shí)時(shí)運(yùn)動(dòng)速度即可由式(6)求出。
在實(shí)際應(yīng)用中,一秒內(nèi)行人移動(dòng)距離有限,在相鄰幀中邊界框的差異甚小。速度的測(cè)量基于消失點(diǎn)的計(jì)算,若移動(dòng)距離十分微小,則消失點(diǎn)的值不可避免的會(huì)出現(xiàn)不存在或者無法找到的情況,從而導(dǎo)致速度測(cè)量異?;虿淮嬖凇R虼?,提出兩種解決該問題的方法。第一種方法是取相差較遠(yuǎn)的兩幀代替相鄰幀測(cè)量速度,避免兩幀差距過小導(dǎo)致的問題;第二種方法是對(duì)視頻每n幀內(nèi)測(cè)量出的數(shù)據(jù)相加取平均值,縮小誤差,如式(7),從而得到可能與實(shí)際目標(biāo)移動(dòng)速度更貼合的速度數(shù)據(jù)。
在某煤礦井下實(shí)際的監(jiān)控視頻上評(píng)估了上述方法,以驗(yàn)證本文算法的性能。實(shí)驗(yàn)基于Keras2.2深度學(xué)習(xí)框架實(shí)現(xiàn),使用NVIDIA TITANXp GPU,Ubuntu16.04,64位操作系統(tǒng)計(jì)算。
本文所提的速度測(cè)量方法,是基于邊界框特征點(diǎn)求圖像消失點(diǎn),上一節(jié)針對(duì)消失點(diǎn)不存在或無法找到的問題,提出了兩種解決方法,為驗(yàn)證其有效性,做以下實(shí)驗(yàn)。
實(shí)驗(yàn)均使用本文提出的三角形模型估算速度方法,在一段目標(biāo)較平穩(wěn)移動(dòng)的煤礦井下監(jiān)控視頻中進(jìn)行實(shí)驗(yàn),對(duì)相鄰幀測(cè)量的速度進(jìn)行一系列的處理,得到的對(duì)比效果如圖5所示。方法一取不做處理的原始速度數(shù)據(jù),方法二取第n幀與n+10幀隔幀測(cè)量速度的數(shù)據(jù),方法三取每10幀相加求平均值的數(shù)據(jù),方法四取每25幀相加求平均值的數(shù)據(jù)。
圖5 不同方法處理速度數(shù)據(jù)
分析圖5中的數(shù)據(jù),方法一由于相鄰幀相差甚小,邊界框不太穩(wěn)定,數(shù)據(jù)上下波動(dòng)較大,會(huì)出現(xiàn)波動(dòng)偏大和劇烈的情況。方法二由于幀數(shù)相差過遠(yuǎn),消失點(diǎn)的值出現(xiàn)了過度偏移的情況,因此,數(shù)據(jù)也不理想。而方法三和四通過求平均值的方法,得出了與原始數(shù)據(jù)趨勢(shì)相似,波動(dòng)較穩(wěn)定的數(shù)據(jù),相比之下方法四的數(shù)據(jù)更穩(wěn)定,更能體現(xiàn)視頻中實(shí)際目標(biāo)的移動(dòng)趨勢(shì)和狀態(tài),因此之后的實(shí)驗(yàn)均使用方法四每25幀相加求平均值的數(shù)據(jù)。
由驗(yàn)證測(cè)量出的目標(biāo)速度數(shù)據(jù)是否符合實(shí)際視頻中的速度規(guī)律,可以判斷提出的數(shù)學(xué)三角形模型估算速度的方法是否可靠。如果測(cè)量出的數(shù)據(jù)與實(shí)際相符,則可以認(rèn)為該方法具有可靠性。
本文將一段工作人員巡檢的視頻做2倍速加速處理,分別截取原視頻和已加速處理視頻中工作人員移動(dòng)距離相同的兩個(gè)片段,如圖6(a)、6(b)所示,且2倍速視頻的時(shí)間比原視頻少一半。
圖6 視頻片段幀
在確保移動(dòng)目標(biāo)所處環(huán)境相同,移動(dòng)距離相同的情況下,使用本文估算速度的方法對(duì)兩段視頻進(jìn)行測(cè)量,結(jié)果如圖7所示。圖7(a)的虛線代表原視頻中工作人員移動(dòng)速度趨勢(shì),實(shí)線代表加速處理過的視頻中工作人員移動(dòng)速度趨勢(shì)。
圖7 兩段視頻目標(biāo)速度對(duì)比
從圖7中可以分析出:首先,實(shí)線橫坐標(biāo)時(shí)間序列比虛線的時(shí)間序列少一半,即由于目標(biāo)移動(dòng)距離相同,二倍速的視頻時(shí)間會(huì)短一半;其次,雖然實(shí)線數(shù)據(jù)少,但是虛線和實(shí)線兩條曲線整體的趨勢(shì)是大致相同的,符合在同一視頻中檢測(cè)的事實(shí);最后,從圖中可以明顯看出實(shí)線的值更高,即加速視頻的目標(biāo)速度更快,也與事實(shí)一致且正確。
根據(jù)以上的實(shí)驗(yàn)結(jié)果和數(shù)據(jù)分析,驗(yàn)證了本文提出的測(cè)量速度的方法是有效且可靠的。
本文所提方法可以根據(jù)測(cè)量的速度數(shù)據(jù)波動(dòng)來判斷移動(dòng)目標(biāo)是否存在異常行為。實(shí)驗(yàn)驗(yàn)證如下:準(zhǔn)備不同工作人員在同一井下水泵房巡檢的兩段視頻數(shù)據(jù)。其中,第一段視頻中工作人員在固定時(shí)間內(nèi)分別仔細(xì)檢查了四次設(shè)備,符合井下安全規(guī)范的操作;第二段視頻中工作人員在巡檢過程中移動(dòng)速度較快,只仔細(xì)檢查了兩次設(shè)備,其余兩次檢查設(shè)備停留時(shí)間較短,可以判斷為漏檢和不認(rèn)真檢查的非正常操作。
對(duì)以上兩段視頻使用本文方法測(cè)量速度,測(cè)量結(jié)果如圖8所示,圖8中虛線代表第一段視頻的測(cè)量結(jié)果,實(shí)線代表第二段視頻的測(cè)量結(jié)果。
圖8 巡檢人員速度數(shù)據(jù)異常分析
從圖8中可以看出:圖8(a)異常巡檢操作的速度數(shù)據(jù)相對(duì)較大,圖8(b)和圖8(c)的兩條曲線都有四個(gè)明顯的“波谷期”,即檢查設(shè)備的停留期,圖8(b)的四個(gè)“波谷”都持續(xù)了較長(zhǎng)時(shí)間,而圖8(c)的前兩個(gè)“波谷”十分短暫。因此可以分析出:第一段視頻中工作人員巡檢符合規(guī)定,速度數(shù)據(jù)正常,持續(xù)時(shí)間較久,速度較慢,有符合規(guī)定的檢查設(shè)備停留次數(shù),且停留時(shí)間較長(zhǎng);而第二段視頻中工作人員巡檢不符合規(guī)定,速度數(shù)據(jù)異常,數(shù)據(jù)整體相對(duì)偏大,巡檢時(shí)間短,移動(dòng)速度快,檢查設(shè)備的停留時(shí)間不足以完成巡檢任務(wù)。
從以上實(shí)驗(yàn)數(shù)據(jù)得出結(jié)論,本文所提方法可以有效地檢測(cè)井下水泵房工作人員的巡檢狀況,準(zhǔn)確監(jiān)督其是否按規(guī)定時(shí)間巡檢,且巡檢時(shí)是否按照規(guī)定認(rèn)真地檢查了設(shè)備。
本文提出一種基于深度學(xué)習(xí)目標(biāo)檢測(cè)算法計(jì)算圖像消失點(diǎn)并建立不依賴場(chǎng)景標(biāo)定的三角形模型,用于估算目標(biāo)的實(shí)時(shí)移動(dòng)速度。該方法采用了YOLOv3目標(biāo)檢測(cè)算法對(duì)視頻移動(dòng)目標(biāo)進(jìn)行動(dòng)態(tài)區(qū)域提取和邊界框預(yù)測(cè),能夠?qū)崟r(shí)較準(zhǔn)確地檢測(cè)到目標(biāo),在根據(jù)邊界框特征計(jì)算圖像消失點(diǎn)時(shí),解決了消失點(diǎn)不存在或無法找到的問題,進(jìn)而結(jié)合消失點(diǎn)在不依賴任何場(chǎng)景標(biāo)定的情況下建立三角形模型。在煤礦井下水泵房監(jiān)控視頻數(shù)據(jù)上使用該方法進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明,所測(cè)量的速度數(shù)據(jù)具有一定的有效性和可靠性,能夠判斷視頻中的工作人員是否按規(guī)定時(shí)間和路線進(jìn)行了認(rèn)真地巡檢,對(duì)煤礦安全生產(chǎn)監(jiān)督管理十分有意義。由于資源條件不足,本文采用的煤礦數(shù)據(jù)非公共數(shù)據(jù)集,在后續(xù)工作中,將實(shí)現(xiàn)根據(jù)移動(dòng)目標(biāo)的步態(tài)、姿勢(shì)等屬性檢測(cè)和跟蹤目標(biāo),完善智能化監(jiān)控系統(tǒng),使其能更廣泛的應(yīng)用于煤礦的安全生產(chǎn)。