朱家新,郭德全,蘭時(shí)勇,3
(1.四川大學(xué) 視覺合成圖形圖像技術(shù)國(guó)防重點(diǎn)學(xué)科實(shí)驗(yàn)室,四川 成都 610065;2.成都信息工程大學(xué) 控制工程學(xué)院,四川 成都 610225;3.四川大學(xué) 計(jì)算機(jī)學(xué)院,四川 成都 610065)
基于幀間特征和連通域檢測(cè)的人數(shù)統(tǒng)計(jì)
朱家新1,郭德全2,蘭時(shí)勇1,3
(1.四川大學(xué) 視覺合成圖形圖像技術(shù)國(guó)防重點(diǎn)學(xué)科實(shí)驗(yàn)室,四川 成都 610065;2.成都信息工程大學(xué) 控制工程學(xué)院,四川 成都 610225;3.四川大學(xué) 計(jì)算機(jī)學(xué)院,四川 成都 610065)
為了更好地管理機(jī)場(chǎng)、火車站及汽車站等人流密集的固定場(chǎng)所,文中提出一種簡(jiǎn)單、高效的人員流量統(tǒng)計(jì)算法。首先,將視頻序列中的圖像轉(zhuǎn)化為灰度圖像,利用幀差法提取前景圖像并將其二值化;然后,利用上下邊緣點(diǎn)匹配的連通域檢測(cè)算法對(duì)前景圖像中的連通域進(jìn)行提取,利用人頭的形狀信息和灰度信息對(duì)連通域進(jìn)行篩選;最后,通過(guò)對(duì)人頭連通域的跟蹤實(shí)現(xiàn)人數(shù)統(tǒng)計(jì)。在提出的人頭跟蹤計(jì)數(shù)算法中,利用人頭連通域在視頻幀中的信息和容器對(duì)人頭特征進(jìn)行跟蹤計(jì)數(shù)。實(shí)驗(yàn)結(jié)果表明,該算法具有良好的人頭跟蹤和計(jì)數(shù)效果。
人頭特征;跟蹤;計(jì)數(shù);連通域
隨著視頻監(jiān)控系統(tǒng)的廣泛應(yīng)用,利用計(jì)算機(jī)圖像技術(shù)自動(dòng)處理視頻監(jiān)控中的信息,減少人工參與,是視頻監(jiān)控和數(shù)據(jù)分析未來(lái)發(fā)展的方向。人數(shù)統(tǒng)計(jì)在現(xiàn)實(shí)生活中有很廣泛的應(yīng)用,例如,大型場(chǎng)館客流量的統(tǒng)計(jì),如火車站、機(jī)場(chǎng)及汽車站等等;公交線路的客流量統(tǒng)計(jì);超市、博物館、展覽館等一些公共場(chǎng)所人數(shù)的統(tǒng)計(jì)等等。這些統(tǒng)計(jì)數(shù)據(jù)能夠幫助決策者更好地進(jìn)行資源規(guī)劃和管理,例如在火車站或機(jī)場(chǎng)可以根據(jù)不同時(shí)段客流量統(tǒng)計(jì)的數(shù)據(jù)開放售票或檢票通道的數(shù)量;交通部門可以根據(jù)公交線路的客流量統(tǒng)計(jì)來(lái)規(guī)劃公交線路以及安排公交車的數(shù)量;公共場(chǎng)所可以根據(jù)客流量的數(shù)據(jù)來(lái)規(guī)劃展覽路線、方式,及開放時(shí)間或工作服務(wù)人員的排班等等,同時(shí)為人員密集區(qū)的安全提供監(jiān)測(cè)保障。
人體目標(biāo)的識(shí)別和跟蹤是目前計(jì)算機(jī)視頻處理的難點(diǎn),目前,對(duì)視頻中人體目標(biāo)識(shí)別和跟蹤有以下幾種方法[1]:基于特征的人數(shù)統(tǒng)計(jì)算法[2-4]、基于區(qū)域的人數(shù)統(tǒng)計(jì)算法[5-8]、基于模板匹配的人數(shù)統(tǒng)計(jì)算法[9-10]。
文獻(xiàn)[4]根據(jù)圖像中行人占有面積分裂和合并前景,在理想情況下有比較好的計(jì)數(shù)效果。文獻(xiàn)[6]利用人頭的形狀和顏色信息對(duì)人頭區(qū)域進(jìn)行檢測(cè),它包含兩個(gè)步驟:黑色區(qū)域的提取和形狀分析,通過(guò)對(duì)圖像HSV空間V通道的像素設(shè)定閾值,可以得到黑色區(qū)域,這種方法能抵抗光照的變化和陰影的影響。文獻(xiàn)[9]通過(guò)使用半圓模型對(duì)前景圖像的人頭肩所在位置進(jìn)行搜索,然后利用Snake模型與卡爾曼濾波結(jié)合跟蹤目標(biāo),但是Snake模型比較適合單目標(biāo)的跟蹤,當(dāng)目標(biāo)有重疊時(shí),精度會(huì)下降。
采用垂直攝像頭的方法可以有效減少行人之間的遮擋[11],在這種情況下,行人通常只有頭部表現(xiàn)的較為完整[12],并且行人的頭部部分基本不會(huì)發(fā)生遮擋。文獻(xiàn)[13-14]在提取出運(yùn)動(dòng)目標(biāo)后還需對(duì)重疊的目標(biāo)進(jìn)行分割。
文中采用在頂部安裝垂直攝像頭的方式,統(tǒng)計(jì)經(jīng)過(guò)的行人。人數(shù)統(tǒng)計(jì)的具體步驟如下:
對(duì)于采集的視頻圖像,首先對(duì)其進(jìn)行預(yù)處理,調(diào)整視頻的大小,如果視頻為彩色圖像,將其轉(zhuǎn)換成灰度圖像,減少計(jì)算量;然后對(duì)預(yù)處理得到的視頻做幀間差運(yùn)算,提取運(yùn)動(dòng)目標(biāo),劃定行人人頭部分候選區(qū)域;最后根據(jù)人體先驗(yàn)知識(shí)和現(xiàn)實(shí)中人頭特征對(duì)人頭部分候選區(qū)域進(jìn)行篩選,對(duì)符合要求的人頭部分進(jìn)行跟蹤并計(jì)數(shù)。
該方案的優(yōu)勢(shì)如下:計(jì)算量較?。皇芄庹兆兓完幱暗挠绊懶?;在多行人情況下,不需要進(jìn)行分割。
2.1 預(yù)處理和前景提取
首先,對(duì)輸入的視頻進(jìn)行預(yù)處理,如果視頻格式是三通道的彩色圖像,將其轉(zhuǎn)化為灰度圖像并調(diào)整視頻尺寸,減少計(jì)算量,加快處理視頻的速度。
對(duì)于預(yù)處理得到的視頻,每隔兩幀處理一幀,采用幀差法對(duì)前景進(jìn)行提取,直接對(duì)當(dāng)前幀與背景圖像作差分,可有效得出運(yùn)動(dòng)前景圖像,然后將背景圖像更新為當(dāng)前幀,直接差分可以表示為[15]:
d(x,y)=|a(x,y)-b(x,y)|
(1)
其中,a(x,y)和b(x,y)分別是當(dāng)前幀圖像和背景圖像位于坐標(biāo)(x,y)處的像素灰度值;d(x,y)是運(yùn)動(dòng)前景圖像在相應(yīng)坐標(biāo)處像素的灰度值。
得到的運(yùn)動(dòng)前景圖像,存在很多的噪聲干擾。這時(shí),先對(duì)前景圖像做二值化處理,濾除噪聲,得到運(yùn)動(dòng)候選區(qū)域。二值化處理表示為:
(2)
其中,d(x,y)是運(yùn)動(dòng)前景圖像位于坐標(biāo)(x,y)處像素的灰度值;g(x,y)是相應(yīng)位置的二值圖像的值,取值是“0”或“255”。
基于OpenCV對(duì)預(yù)處理得到的圖像進(jìn)行數(shù)學(xué)形態(tài)學(xué)處理,進(jìn)一步減少噪聲并增加人頭候選區(qū)域的特征[16]。通過(guò)這種方法,可以濾除一些突變的噪聲點(diǎn)。
2.2 連通域檢測(cè)和篩選
在垂直攝像頭的實(shí)驗(yàn)環(huán)境下,人的頭部有近似圓的形狀,但是不同人的頭部之間也存在差異[10]。利用數(shù)學(xué)形態(tài)學(xué)處理減少前景提取的誤差之后,對(duì)前景圖像基于上下邊緣點(diǎn)匹配進(jìn)行連通域檢測(cè)[17],計(jì)算連通域的面積s和長(zhǎng)寬比例t,要求s>C,a≤t≤b。其中,C為指定的人頭部分連通域面積的最小值;a和b分別為指定人頭區(qū)域長(zhǎng)寬比例的最小值和最大值,C、a、b的值均根據(jù)實(shí)際情況調(diào)整。根據(jù)這個(gè)條件,剔除不符合大小和形狀要求的連通域,并且針對(duì)檢測(cè)的連通域,返回到初始圖像進(jìn)行顏色信息匹配,當(dāng)連通域?qū)?yīng)區(qū)域的顏色信息符合頭部區(qū)域的顏色信息時(shí),就認(rèn)為該連通域代表的就是行人的人頭特征。檢測(cè)并篩選連通域過(guò)程如圖1所示。
圖1 人頭連通域提取標(biāo)記過(guò)程
對(duì)每一幀的運(yùn)動(dòng)前景進(jìn)行連通域檢測(cè),檢測(cè)到幾個(gè)連通域即表示有幾個(gè)行人在當(dāng)前幀的畫面中出現(xiàn)。采用連通域以下的幾個(gè)信息來(lái)唯一地標(biāo)識(shí)行人T:檢測(cè)到該連通域時(shí)視頻的幀數(shù)Tf,連通域中心點(diǎn)的坐標(biāo)Tp,連續(xù)檢測(cè)到該行人對(duì)應(yīng)的連通域的幀數(shù)Tn(用以判定響應(yīng)強(qiáng)度),行人的速度矢量Tv。每一個(gè)行人的信息都保存在容器S中,在處理每幀圖像的前后,對(duì)容器里所有行人的信息進(jìn)行動(dòng)態(tài)更新。對(duì)人頭連通域跟蹤與計(jì)數(shù)的流程圖如圖2所示。
圖2 跟蹤計(jì)數(shù)流程
當(dāng)在某一幀的前景圖像中檢測(cè)到連通域時(shí),首先對(duì)其信息進(jìn)行初始化。其中Tf,Tp均可由連通域的信息獲得,Tn=0,Tv=0。然后判斷其對(duì)應(yīng)的行人是否為新進(jìn)入監(jiān)測(cè)區(qū)域的行人,原則如下:設(shè)容器此時(shí)的元素個(gè)數(shù)為n,則
A=
(3)
其中,Tpx、Tpy表示當(dāng)前檢測(cè)到連通域中心點(diǎn)的橫坐標(biāo)和縱坐標(biāo);S[m]px、S[m]py表示容器S中第m個(gè)元素中心點(diǎn)的橫坐標(biāo)和縱坐標(biāo);D表示判定兩個(gè)連通域是代表兩個(gè)行人的最小值。
當(dāng)A>D時(shí),表示該連通域?qū)?yīng)的行人是新進(jìn)入監(jiān)測(cè)區(qū)域人員,將該連通域的信息添加保存在容器S中,同時(shí)總?cè)藬?shù)計(jì)數(shù)加1。
當(dāng)A (4) 更新完信息后如果S[m]n=1,則可以對(duì)行人的行進(jìn)方向做出判斷,此時(shí)如果S[m]v>0,表示相應(yīng)的行人是出去的,則行人出去的計(jì)數(shù)加1;如果S[m]v<0,表示行人是進(jìn)入的,則行人進(jìn)入的計(jì)數(shù)加1。 由于現(xiàn)實(shí)中環(huán)境復(fù)雜,行人在通過(guò)視頻監(jiān)測(cè)區(qū)域的時(shí)候,并不是每幀都能被檢測(cè)到。在處理完每一幀圖像后,會(huì)對(duì)容器中沒有更新信息的元素進(jìn)行處理,表示該元素對(duì)應(yīng)的行人是“實(shí)際”出現(xiàn)在視頻中并被檢測(cè)到的。根據(jù)S[n]f是否與當(dāng)前視頻的幀數(shù)一致判斷S[n]元素是否被更新過(guò)。 假定S[n]的信息在當(dāng)前幀沒有被更新,會(huì)對(duì)其做如下更新處理: (5) 及時(shí)更新位置是為了保證以后再檢測(cè)到已檢測(cè)行人的連通域時(shí),不會(huì)誤判為新的行人,減少誤差。更新完信息后,若S[n]n=0,表示該連通域代表的行人已經(jīng)走出視頻監(jiān)測(cè)區(qū)域,則從容器中刪除該行人的信息。 文中采用每隔兩幀處理一次的方法對(duì)視頻進(jìn)行處理,一方面加快了視頻的處理速度,另一方面減小了對(duì)進(jìn)入或進(jìn)出行人分別計(jì)數(shù)的誤差。 4.1 實(shí)驗(yàn)結(jié)果 實(shí)驗(yàn)所用硬件環(huán)境:CPU為Intel(R) Core(TM) i5-2300 CPU @2.80 GHz,內(nèi)存4.00 GB。軟件環(huán)境:操作系統(tǒng)Windows 7,實(shí)驗(yàn)開發(fā)工具M(jìn)icrosoft Visual Studio 2010,采用.NET Framework 4.5框架。使用C++語(yǔ)言和OpenCV 2.4.3實(shí)現(xiàn)算法,原始的輸入視頻尺寸為1 280×720,幀速率為25 幀/秒,實(shí)驗(yàn)的場(chǎng)景是在某公司的走廊。 在測(cè)試中,為了減少干擾,前景圖像像素的灰度值只有大于閾值B(設(shè)定為100),才被認(rèn)為是人頭目標(biāo)區(qū)域的像素;C取值為4 000;a和b分別取值為0.5和2.0;D取值為5 000。 實(shí)驗(yàn)總共進(jìn)行了三組,其中兩組分別為只有單向行人的情況,另外一組為有雙向行人,存在行人交錯(cuò)的情況。設(shè)正確檢測(cè)人數(shù)為p,誤檢人數(shù)為q,漏檢人數(shù)為r,則正確率PT=p/(p+q),查全率RT=p/(p+r),調(diào)和準(zhǔn)確率FT=2*PT*RT/(PT+RT),實(shí)驗(yàn)結(jié)果如表1所示。 由測(cè)得的數(shù)據(jù)表明,平均處理一幀圖像的時(shí)間為0.078s,多種情況下,文中算法有90%以上的精確度。 實(shí)驗(yàn)結(jié)果表明,文中算法計(jì)數(shù)的準(zhǔn)確率高,對(duì)于特殊情況下行人的跟蹤計(jì)數(shù)也有很好的效果,例如行人交錯(cuò)行走或三行人并肩行走等,均能很好地檢測(cè)出每個(gè)行人的頭部連通域并進(jìn)行跟蹤。 三人并肩行走情況如圖3所示。 圖3 三行人并肩行走跟蹤 同時(shí),存在少量誤檢和漏檢的情況,當(dāng)出現(xiàn)以下情況時(shí),系統(tǒng)不能很好地跟蹤計(jì)數(shù)行人: (1)行人戴淺顏色的帽子或者行人頭發(fā)稀疏,由于前景提取是用幀差的方法,容易漏檢。如圖4所示,右下角的行人因頭發(fā)稀疏其頭部區(qū)域不能在前景中提取出來(lái)。 圖4 行人頭發(fā)稀疏情況 (2)行人經(jīng)過(guò)視頻監(jiān)測(cè)的邊緣區(qū)域,前景頭部提取不完整或者頭部區(qū)域僅有少部分出現(xiàn)在視頻監(jiān)測(cè)區(qū)域內(nèi),容易漏檢。 (3)行人穿戴黑色衣物時(shí)有可能造成誤檢。 4.2 算法分析及對(duì)比 文獻(xiàn)[6]使用一種融合顏色、距離和形狀信息的跟蹤方法對(duì)人頭進(jìn)行跟蹤,通過(guò)對(duì)跟蹤軌跡的分析,對(duì)行人進(jìn)行計(jì)數(shù)。但是,該方法在行人遮擋嚴(yán)重的情況下準(zhǔn)確率低,當(dāng)行人有交疊時(shí),容易造成誤檢。文獻(xiàn)[7]將目標(biāo)分割成多個(gè)區(qū)域,每個(gè)區(qū)域由一個(gè)團(tuán)塊表示,每個(gè)團(tuán)塊包含了相應(yīng)區(qū)域的所有像素的平均值、形狀和位置,通過(guò)團(tuán)塊匹配跟蹤目標(biāo)。但是,文獻(xiàn)[7]需要對(duì)目標(biāo)的初始狀態(tài)進(jìn)行記錄,對(duì)行人的初始狀態(tài)依賴大,在行人有粘連時(shí),容易漏檢。 具體實(shí)驗(yàn)對(duì)比結(jié)果如表2所示。從表2可以看出文中算法優(yōu)于其他算法。 表1 計(jì)數(shù)結(jié)果 表2 算法對(duì)比 文中利用視頻圖像處理技術(shù)實(shí)現(xiàn)了對(duì)一個(gè)固定場(chǎng)景的出入人數(shù)和總?cè)藬?shù)的統(tǒng)計(jì)。研究目的希望將該技術(shù)應(yīng)用到多種場(chǎng)景中,例如火車站、機(jī)場(chǎng)、大型場(chǎng)館、展覽館等等,利用人員流量計(jì)數(shù)的數(shù)據(jù),為資源配置最優(yōu)化提供支持。文中使用的跟蹤和計(jì)數(shù)人頭特征的方法簡(jiǎn)單、易于實(shí)現(xiàn)并且精確度高。 實(shí)驗(yàn)結(jié)果表明,文中算法有效、可靠。但是也有部分不足之處,需要進(jìn)一步改善,如:對(duì)頭發(fā)稀疏或戴帽子行人的檢測(cè)識(shí)別問(wèn)題、對(duì)視頻邊緣行人的檢測(cè)問(wèn)題等。這也是下一步工作的方向,考慮提高算法的魯棒性,或改進(jìn)監(jiān)控方式,如采用多攝像頭進(jìn)行檢測(cè)。另外,對(duì)算法在不同應(yīng)用場(chǎng)景中的適應(yīng)性,有待進(jìn)一步驗(yàn)證。 [1] 趙明瀚,王晨升.基于視頻的人數(shù)識(shí)別方法綜述[J].軟件,2013,34(3):10-12. [2] Albiol A,Silla M J,Albiol A,et al.Video analysis using corner motion statistics[C]//Proc of IEEE international workshop on performance evaluation of tracking and surveillance.[s.l.]:IEEE,2009:31-38. [3] 呂濟(jì)民,曾昭賢,張茂軍.基于非最大抑制聚類的視頻人數(shù)估測(cè)方法[J].模式識(shí)別與人工智能,2012,25(1):150-156. [4] Chen Thouho,Hsu Chewei.An automatic bi-directional passing-people counting method based on color image processing[C]//Proceedings of 37th IEEE international Carnahan conference on security technology.Piscataway,NJ,USA:IEEE Press,2003:200-207. [5] Yu Shengsheng,Chen Xiaoping,Sun Weiping,et al.A robust method for detecting and counting people[C]//Proceedings of international conference on audio,language and image processing.Piscataway,NJ,USA:IEEE Press,2008:1545-1549. [6] 王 強(qiáng),馮 燕.基于顏色和形狀信息的快速人數(shù)統(tǒng)計(jì)方法[J].計(jì)算機(jī)測(cè)量與控制,2010,18(9):2157-2159. [7] 王書朋,姬紅兵.利用團(tuán)塊模型進(jìn)行目標(biāo)跟蹤[J].西安電子科技大學(xué)學(xué)報(bào):自然科學(xué)版,2008,35(5):799-804. [8] 鄭翔翔,張 怡.基于頭部檢測(cè)和跟蹤的人數(shù)統(tǒng)計(jì)方法[J].計(jì)算機(jī)應(yīng)用與軟件,2011,28(2):44-46. [9] Jaijing K,Kaewtrakulpong P,Siddhichai S.Object detection and modeling algorithm for automatic visual people counting system[C]//Proc of 6th international conference on electrical engineering/electronics,computer,telecommunications and information technology.[s.l.]:IEEE,2009:1062-1065. [10] 劉子源,蔣承志.基于OpenCV和Haar特征分類器的圖像人數(shù)檢測(cè)[J].遼寧科技大學(xué)學(xué)報(bào),2011,34(4):384-388. [11] 文嘉俊,徐 勇,戰(zhàn)蔭偉.基于AdaBoost和幀間特征的人數(shù)統(tǒng)計(jì)[J].中國(guó)圖象圖形學(xué)報(bào),2011,16(9):1729-1735. [12] 于海濱,劉敬彪,劉濟(jì)林.用于行人頭部特征提取的目標(biāo)區(qū)域匹配方法[J].中國(guó)圖象圖形學(xué)報(bào),2009,14(3):482-488. [13] Septian H,Tao Ji,Tan Y.People counting by video segmentation and tracking[C]//Proceedings 9th international conference on control,automation and robotics and vision.Piscataway,NJ,USA:IEEE Press,2006:1-4. [14] Chen Chao-Ho,Chen Tsong-Yi,Wang Da-Jinn,et al.A cost-effective people-counter for a crowd of moving people based on two-stage segment[J].Journal of Information Hiding and Multimedia Signal Processing,2012,3(1):12-23. [15] 李衡宇,何小海,吳 煒,等.基于計(jì)算機(jī)視覺的公交車人流量統(tǒng)計(jì)系統(tǒng)[J].四川大學(xué)學(xué)報(bào):自然科學(xué)版,2007,44(4):825-830. [16] 閆敬文,樊秋月.基于視頻圖像處理的人數(shù)統(tǒng)計(jì)方法[J].汕頭大學(xué)學(xué)報(bào):自然科學(xué)版,2008,23(2):69-73. [17] 謝 貴,彭嘉熊.基于上下邊緣點(diǎn)匹配的連通域搜索算法[J].華中科技大學(xué)學(xué)報(bào):自然科學(xué)版,2002,30(4):64-65. People Counting Based on Inter-frame Features and Connected Domain Detection ZHU Jia-xin1,GUO De-quan2,LAN Shi-yong1,3 (1.State Key Lab of Fundamental Sci. on Synthetic Vision,Chengdu 610065,China;2.School of Control Engineering,Chengdu University of Information Technology,Chengdu 610225,China;3.College of Computer Science,Sichuan University,Chengdu 610065,China) In order to manage airports,railway stations and bus stations and other crowded places fixed with a better way,a simple and efficient personnel traffic statistics algorithm was proposed.First,the video images was converted into grayscale images,and then the foreground image was extracted using the frame difference method and was converted into binary image.Second,connected domain was detected based on matching between the points of up-contour and down-contour,and then head features were extracted using shape and gray information of head.Finally,people was counted by tracking head connected domain.In this head tracking and counting algorithm presented,use the basic information and container of head connected domain in the video image for tracking and counting.Experimental results show that the algorithm has a good head tracking and counting results. head features;tracking;counting;connected domain 2015-05-26 2015-08-31 時(shí)間:2016-01- 國(guó)家“863”高技術(shù)發(fā)展計(jì)劃項(xiàng)目(2013AA013802)作者簡(jiǎn)介:朱家新(1992-),男,碩士生,研究方向?yàn)閳D像處理、計(jì)算機(jī)視覺;郭德全,博士,研究方向?yàn)閳D形圖像、信號(hào)與信息處理;蘭時(shí)勇,博士,研究方向?yàn)閳D形圖像、計(jì)算機(jī)仿真。 http://www.cnki.net/kcms/detail/61.1450.TP.20160126.1521.068.html TP391 A 1673-629X(2016)02-0101-04 10.3969/j.issn.1673-629X.2016.02.0234 實(shí)驗(yàn)結(jié)果與對(duì)比分析
5 結(jié)束語(yǔ)