• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于OpenCV的公交客流計數(shù)方法

      2017-02-17 17:08:21張震李進(jìn)鋼
      現(xiàn)代電子技術(shù) 2017年2期

      張震+李進(jìn)鋼

      摘 要: 公交車客流統(tǒng)計是計算機(jī)視覺領(lǐng)域的重要研究方向,然而由于陰影、光照變化等動態(tài)紋理因素的影響使得構(gòu)建一個實時精確的客流統(tǒng)計算法變得較為困難。針對以上難題,提出一種基于OpenCV實現(xiàn)單目視覺下的客流統(tǒng)計方法。首先對取得的實時圖像進(jìn)行預(yù)處理;然后運(yùn)用Codebook和形態(tài)學(xué)濾波相結(jié)合的方法建立背景模型,消除動態(tài)紋理對前景的影響;最后采用改進(jìn)的Hough變換提取乘客的頭部區(qū)域,進(jìn)行跟蹤計數(shù)。實驗結(jié)果表明,乘車環(huán)境中該方法的檢測準(zhǔn)確率達(dá)88.6%以上,可應(yīng)用于實時的客流計數(shù)系統(tǒng)。

      關(guān)鍵詞: 客流計數(shù); Codebook; 背景模型; 形態(tài)學(xué)濾波; 霍夫變換

      中圖分類號: TN911?34; TP391.41 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2017)02?0016?05

      Abstract: The bus passenger flow statistics is an important research direction in computer vision field. However, the influence of dynamic texture factors such as shadow and illumination variation makes the construction of a real?time accurate bus passenger flow statistic algorithm difficult. To solve this problem, a bus passenger counting method based on OpenCV is presented. The obtained real?time image is preprocessed. The method of combining Codebook background model with morphological filtering is adopted to build the the background model to eliminate the influence of dynamic texture on the foreground. The improved Hough transform is used to extract the head region of the passengers for tracking counting. The experiment results show that the calculation accuracy of the algorithm can reach more than 88.6%, so it can be applied to the real?time passenger counting system.

      Keywords: passenger counting; Codebook; background model; morphological filtering; Hough transform

      0 引 言

      快速、精確地統(tǒng)計公共區(qū)域人流量,對商業(yè)應(yīng)用和公共安全有著重要的意義。公交車作為一種載客量大和周轉(zhuǎn)率高的公共交通工具,其智能化管理水平直接關(guān)系著城市的交通運(yùn)行情況。根據(jù)實時客流情況,合理安排公交車輛調(diào)度,可以有效解決出行難問題。由于乘車環(huán)境光線的劇烈變化和較高的實時性要求,公交車的客流統(tǒng)計技術(shù)成為研究的難點(diǎn)。

      目前,機(jī)器視覺領(lǐng)域已經(jīng)成為客流統(tǒng)計研究的重點(diǎn),文獻(xiàn)[1?2]采用在 DSP 上實現(xiàn)雙向通道和出入口的視頻人數(shù)統(tǒng)計方法,運(yùn)算量較大,無法滿足實時性的要求。文獻(xiàn)[3]利用雙目立體攝像機(jī),只對感興趣的區(qū)域進(jìn)行跟蹤并計數(shù),該方法需要在公交車上安裝相應(yīng)的雙目攝像系統(tǒng),成本較高且不實際。文獻(xiàn)[4?5]利用人頭顏色和背景的差異進(jìn)行人數(shù)統(tǒng)計,易在白發(fā)老人上下車的場景中出現(xiàn)較大誤差。針對以上方法的不足,本文提出一種基于Codebook[6?7]和Hough[8]變換實現(xiàn)單目視覺下的客流統(tǒng)計方法。該方法充分利用公交車內(nèi)已有的監(jiān)控系統(tǒng),提取乘客頭部特征,實現(xiàn)乘客上下車方向判別和自動計數(shù)的功能。系統(tǒng)整體框架如圖1所示。

      1 圖像預(yù)處理

      圖像預(yù)處理作為公交乘客檢測算法的基礎(chǔ),其處理效果直接影響到后期的運(yùn)動檢測等一系列操作。在公交車視頻監(jiān)控環(huán)境下,由于不可避免地受到噪聲干擾,影響到后續(xù)的目標(biāo)檢測。在研究經(jīng)典背景提取算法的基礎(chǔ)上,本文選取全局閾值法對采集得到的CCD彩色圖像進(jìn)行預(yù)處理,將目標(biāo)和背景簡單的分開,得到乘客輪廓信息,處理結(jié)果如圖2所示。

      2 運(yùn)動目標(biāo)檢測

      公交車在行進(jìn)過程中,車內(nèi)光線、陰影一直在發(fā)生變化,這最終都將反映到攝像頭攝取的實時圖像中。為了能夠?qū)ψ兓膱鼍斑M(jìn)行背景建模,本文選取了Codebook和形態(tài)學(xué)濾波相結(jié)合的算法。

      2.1 建立背景模型

      Codebook算法基本思想是為圖像中每一個像素點(diǎn)匹配一個包含多個碼元的碼本。其中,每個碼元包含背景學(xué)習(xí)、檢測時的最大、最小閾值成員。在背景建模期間,對每個像素點(diǎn)進(jìn)行碼本匹配,檢測像素點(diǎn)的觀察值是否在碼元的學(xué)習(xí)閾值范圍之內(nèi),如果在碼本中某個碼元的閾值范圍內(nèi),則認(rèn)為它是擾動的;如果不在碼本中某個碼元的閾值范圍內(nèi),則背景是動態(tài)的,需要建立新的碼元并設(shè)置相應(yīng)的閾值。因此,在建立背景模型的過程中,不斷進(jìn)行碼本匹配,最終得到動態(tài)的背景模型。

      處理時,對每一像素建立對應(yīng)的Codebook,捕捉背景中相關(guān)變化的圖像,在進(jìn)行足夠多幀的圖像學(xué)習(xí)后,訓(xùn)練一個基本的背景模型。通過不斷更新有移動前景條件下的背景,從而保持背景能定期得到更新。

      2.2 運(yùn)動檢測

      比較對應(yīng)像素的Codebook是否出現(xiàn)在碼元中,輸出比較的結(jié)果:某個像素在該像素的編碼組的某個碼元的范圍之內(nèi),則判斷該點(diǎn)是背景點(diǎn),輸出值為0,否則判斷是前景點(diǎn),輸出值為1,運(yùn)動前景被提取出來。

      2.3 形態(tài)學(xué)濾波

      Codebook區(qū)分出的前景序列不可避免地受到光照、陰影等動態(tài)紋理因素的影響,這樣有可能導(dǎo)致下一步目標(biāo)分割不成功。本文采用形態(tài)學(xué)腐蝕濾除動態(tài)紋理帶來的干擾,腐蝕公式如下:

      由于動態(tài)紋理在前景圖像上會造成“斑點(diǎn)”,與運(yùn)動前景中的人體相比,這些斑點(diǎn)面積很小,并不連貫,呈離散分布狀態(tài)。運(yùn)用圖像腐蝕可以較好地消除“斑點(diǎn)”。圖3(a)表示視頻序列中的某幀前景,圖3(b)則為腐蝕處理過的該幀前景。

      經(jīng)過形態(tài)學(xué)腐蝕處理之后,影響前景的“斑點(diǎn)”被消除掉,圖像內(nèi)的較大運(yùn)動區(qū)域依然存在,運(yùn)動乘客形態(tài)特性更為明顯,為后續(xù)的目標(biāo)分割以及跟蹤計數(shù)創(chuàng)造了良好的前提條件。

      3 運(yùn)動目標(biāo)特征提取

      運(yùn)動目標(biāo)分割是對目標(biāo)檢測算法輸出的二值化后的前景圖進(jìn)行分割提取,得到用以追蹤的矩形框??紤]到可能出現(xiàn)乘客隨身攜帶物品的場景,本文使用一種基于改進(jìn)Hough變換的目標(biāo)分割算法。該分割算法能夠精確識別乘客頭部在前景圖像上生成的圓形輪廓。

      3.1 Hough變換原理

      考慮到公交車的實際情況,監(jiān)控攝像頭安裝在上下車門正上方垂直90°的位置。分析整個過程,發(fā)現(xiàn)只有乘客的頭部能保存完整的信息。當(dāng)車廂內(nèi)較為擁擠時,乘客身體其他部位遮擋嚴(yán)重,只有頭部信息能夠清晰地反映到圖像中。乘客的頭部是剛體,大小形狀不會發(fā)生變化,容易區(qū)分出與其他特征部位的差距,經(jīng)過攝像頭時,乘客頭部只會出現(xiàn)一次?;谝陨峡紤],本文采用乘客頭部作為追蹤的對象。

      在圖像平面中,任意一個圓的方程式表示如下:

      式中:為圓的半徑;為圓心的坐標(biāo)。Hough變換的圓檢測在變換過程中,構(gòu)建一個三維的累加數(shù)組,然后對圖像中的邊緣點(diǎn)作Hough變換,計算出該點(diǎn)在三維空間上的對應(yīng)曲線,在相應(yīng)的累加數(shù)組上進(jìn)行加1操作,即:

      通過累加可以觀測到累加數(shù)組上的局部最大值的點(diǎn),這個最大值對應(yīng)的點(diǎn)就表示圖像平面上圓的圓心以及半徑參數(shù)。

      傳統(tǒng)的基于Hough變換的圓檢測需要消耗大量的時間和存儲空間,產(chǎn)生無效累積,使得Hough變換僅僅在理論分析上是可行的,而幾乎不可能進(jìn)行實際應(yīng)用。

      在實際計算中,像素點(diǎn)梯度方向角可在邊緣檢測中利用邊緣檢測算子得到,此時梯度方向角可由梯度向量在x方向上的分量和在y方向上的分量求取,即:

      如圖4所示,表示圓心坐標(biāo),是邊緣點(diǎn)的梯度方向,指向圓心。可得出下列計算圓心的方程:

      本文采用一種基于梯度方向的Hough變換檢測算法。該方法利用邊緣像素點(diǎn)的局部梯度信息減少計算量,可以獲得較為精準(zhǔn)的圓心位置。

      (1) 運(yùn)用Canny算法對前景圖像進(jìn)行邊緣提取,獲取邊緣點(diǎn)的灰度變化梯度。

      (2) 對像元進(jìn)行賦值:灰度梯度值大于閾值的像元賦值1,標(biāo)記其梯度方向,并在相應(yīng)的二維累加數(shù)組各單元上進(jìn)行加1操作;灰度梯度值小于閾值的像元賦值0。

      (3) 經(jīng)過步驟1,步驟2處理后,累加數(shù)組中會出現(xiàn)一個局部最大值,這個值就表示圓心的位置坐標(biāo)。

      經(jīng)過以上步驟,累加數(shù)組從三維空間降低為二維空間,一對多映射修改為一對一映射,在節(jié)約存儲空間的同時也降低了計算量。

      3.2 Hough變換的改進(jìn)

      Hough變換并不計算所有的邊緣點(diǎn),而是隨機(jī)采樣3點(diǎn),將結(jié)果映射到圓參數(shù)空間中,采樣到達(dá)要求時,參數(shù)空間中所有值不為0的點(diǎn)都是假定存在的圓。由于Hough變換魯棒性較強(qiáng),即使檢測到一小段圓弧,仍將形成目標(biāo)圓,造成干擾。此外,目標(biāo)圓在前景區(qū)域可能被分割成若干段連通的圓弧,Hough變換將檢測出多個重疊圓。

      經(jīng)過實驗觀察發(fā)現(xiàn),檢測出的真圓上邊緣點(diǎn)的數(shù)量和圓的周長存在簡單的正比例關(guān)系,即:半徑越大,其邊緣點(diǎn)的數(shù)量愈多。虛假圓上邊緣點(diǎn)集中分布在某段圓弧處,數(shù)量較少。

      為了解決上述問題,本文設(shè)定極限匹配值。計算累加器數(shù)值與半徑的比值大小,若:

      認(rèn)為該圓是假圓,直接排除,若:

      則將該圓作為候選圓,求取半徑r,本文中取值0.12。

      乘客攜帶的隨身物品也會出現(xiàn)在前景區(qū)域,會造成較大干擾。為了避免誤檢,考慮到乘客頭部反映到攝像機(jī)中成像的大小,設(shè)置最大圓半徑max_radius和最小圓半徑min_radius,用以限制區(qū)分成圓的半徑大小。只有當(dāng)求得的半徑r在max_radius和min_radius之間,即:

      認(rèn)為該候選圓是真圓,進(jìn)行成圓;如果不在二者之間,不進(jìn)行成圓。本文中max_radius設(shè)為150,min_radius設(shè)為90。

      為了去除重合圓,經(jīng)過多次實驗驗證,可以粗略地認(rèn)為兩個圓的圓心之間的距離不能小于兩個圓的半徑之和的否則認(rèn)為是同一個圓。假設(shè)兩個圓,如果滿足式(9),則認(rèn)為這兩個圓是重合的,只保留其中一個,如圖5所示。

      圖6(a)表示未改進(jìn)情況下的檢測到的圓, 圖6(b)表示改進(jìn)之后檢測到的圓。通過對比可以看出,改進(jìn)后,Hough變換正確避開假圓,在前景內(nèi)提取頭部區(qū)域。

      考慮到下一步系統(tǒng)對目標(biāo)的追蹤和計數(shù),矩形框效果更好。本文對上一步獲得的圓求取外接正方形,作為用于追蹤的矩形框。在運(yùn)動檢測階段,形態(tài)學(xué)腐蝕在消除“斑點(diǎn)”的同時,也造成頭部邊緣區(qū)域的縮小。為此,選取的矩形框應(yīng)稍大一些,用以補(bǔ)償。

      4 運(yùn)動目標(biāo)跟蹤及計數(shù)

      4.1 運(yùn)動目標(biāo)跟蹤

      考慮到公交車的人流特殊性,乘客之間距離較小且移動緩慢,實時攝取的圖像中相鄰兩幀時間差只有數(shù)十ms,運(yùn)動目標(biāo)基本未發(fā)生變化,相鄰兩幀圖像同一乘客形成的陰影有很大一部分的區(qū)域是重合的。基于上述特點(diǎn),本文采用了一種基于目標(biāo)區(qū)域動態(tài)更新的跟蹤方法[9]。

      本算法的思想是:以第k幀為目標(biāo)幀檢測到運(yùn)動區(qū)域,分割出來,建立初始模板并進(jìn)行編號。在第k+1幀中遍歷上一幀目標(biāo)位置的周圍區(qū)域,通過圖像匹配和最小成本估算為目標(biāo)區(qū)域關(guān)聯(lián)最佳模板[10]。這樣,關(guān)聯(lián)的模板和目標(biāo)區(qū)域得到更新。最終通過不斷更新模板位置,記錄坐標(biāo),完成對運(yùn)動目標(biāo)的追蹤。追蹤流程圖如圖7所示。

      4.2 運(yùn)動目標(biāo)計數(shù)

      本文在上下車門處設(shè)置計數(shù)線位置,通過記錄跟蹤矩形框上下邊框與計數(shù)線的接觸情況,程序判斷是否啟動計數(shù)系統(tǒng)以及記錄運(yùn)動目標(biāo)當(dāng)前狀態(tài),效果如圖8所示。

      5 實驗結(jié)果

      由于尚未在公交車上裝載,因此系統(tǒng)的測試由計算機(jī)模擬的方式完成。本文設(shè)計的硬件開發(fā)平臺為SBS3730開發(fā)板,軟件開發(fā)平臺為Qt,采用OpenCV算法庫中的圖像數(shù)據(jù)結(jié)構(gòu)和封裝函數(shù)圖像進(jìn)行處理。

      系統(tǒng)測試界面圖如圖9所示。

      實驗的測試素材由6段乘客上下車視頻片段組成,這些視頻均由現(xiàn)有公交車監(jiān)控設(shè)備攝取,基本涵蓋同時上下車、擁擠、攜帶行李、光照變化等常見狀況,程序的測試結(jié)果如表1所示。

      測試結(jié)果表明,系統(tǒng)算法的計數(shù)精度達(dá)到88.6%以上,基本上達(dá)到了公交車實際應(yīng)用的要求。分析出現(xiàn)錯誤計數(shù)的原因為高人流密度下乘客過于集中,較難分割緊密依靠在一起的目標(biāo),容易出現(xiàn)漏檢。

      6 結(jié) 語

      公交車是一種復(fù)雜的計數(shù)場所,為了滿足計數(shù)的實時性、準(zhǔn)確性要求,本文提出一種基于OpenCV的公交客流計數(shù)方法。Codebook背景模型與形態(tài)學(xué)濾波相結(jié)合的人體檢測方法,減少光照、陰影等因素的影響,分割出前景。改進(jìn)后的Hough變換能夠準(zhǔn)確識別乘客頭部區(qū)域并進(jìn)行提取。實驗結(jié)果表明,該方法的計數(shù)準(zhǔn)確性可以滿足實際應(yīng)用的需求。但是文中依然存在一些問題,如Hough變換提取乘客頭部信息的算法還有待進(jìn)一步改進(jìn),以提高系統(tǒng)在高人流密度下的準(zhǔn)確率;由于條件所限,本算法目前仍處于試驗階段,如果在現(xiàn)實乘車環(huán)境中應(yīng)用,必然會碰到很多未知的問題。因此提高算法的準(zhǔn)確率并將其應(yīng)用在實際的客流計數(shù)系統(tǒng)中,將是本文后續(xù)研究的重點(diǎn)。

      參考文獻(xiàn)

      [1] 高傳瑩.基于DSP的視頻人數(shù)統(tǒng)計研究[D].合肥:合肥工業(yè)大學(xué),2010:17?26.

      [2] ZHU Q Y, TANG L, JIANG Y P, et al. A novel approach of counting people based on stereovision and DSP [C]// 2010 The 2nd International Confe?rence on Computer and Automation Engineering. Singapore: ICCAE, 2010: 81?84.

      [3] TERADA K, YOSHIDA D, OE S, et al. A Method of counting the passing people by using the stereo images [C]// Proceedings of IEEE International Conference on Image Processing. Tokushima, Japan: The University of Tokushima, 2009, 2: 338?342.

      [4] LIN Shcngfu, CHEN Jawych, CHAO Hungxin. Estimation of number of people in crowded scenes using per?spcctivc transform ation [J]. IEEE transac?tions on systems, man and cybernetics (Part A), 2010,31(6): 645?654.

      [5] 王強(qiáng),馮燕.基于顏色和形狀信息的快速人數(shù)統(tǒng)計方法[J].計算機(jī)測量與控制,2010,18(9):2157?2159.

      [6] 李偉生,汪釗.基于時空背景模型的自適應(yīng)運(yùn)動目標(biāo)檢測方法[J].計算機(jī)應(yīng)用,2014,34(12):3515?3520.

      [7] 霍東海,楊丹,張小洪,等.一種基于主成分分析的Codebook背景建模算法[J].自動化學(xué)報,2012,38(4):591?600.

      [8] 蔣曉峰.基于視頻圖像處理的公交車人流量統(tǒng)計系統(tǒng)的研究[D].廣州:華南理工大學(xué),2013:45?67.

      [9] 尹俊超,劉直芳.基于OpenCV的運(yùn)動目標(biāo)檢測與跟蹤[J].計算機(jī)工程與設(shè)計,2011,32(8):2817?2820.

      [10] 余旺盛,田孝華,侯志強(qiáng),等.基于關(guān)鍵區(qū)域特征匹配的視覺跟蹤算法[J].電子學(xué)報,2014,42(11):2150?2156.

      [11] 王愛麗,董寶田,王澤勝,等.融合光流速度場與背景差分的自適應(yīng)背景更新方法[J].中國鐵道科學(xué),2014,35(6):131?137.

      [12] 吳桐,王玲.基于幀差分塊的混合高斯背景模型[J].計算機(jī)工程與應(yīng)用,2014,50(23):176?180.

      [13] 周燦,余仲秋,張暉.畸變校正與幀差法相結(jié)合的運(yùn)動目標(biāo)檢測[J].光學(xué)技術(shù),2014,40(6):531?534.

      [14] 崔莫磊.公交視頻人數(shù)統(tǒng)計系統(tǒng)的設(shè)計與開發(fā)[D].鄭州:鄭州大學(xué),2013:28?32.

      林州市| 安龙县| 望奎县| 南澳县| 黄浦区| 林口县| 夏津县| 四子王旗| 泽州县| 富顺县| 阜城县| 沅江市| 道孚县| 轮台县| 呼玛县| 江津市| 社旗县| 榆中县| 临西县| 舞钢市| 资源县| 嘉义市| 元朗区| 伊通| 呼图壁县| 根河市| 外汇| 铁岭市| 沁阳市| 东至县| 孟津县| 汉川市| 罗江县| 汉阴县| 临漳县| 沈阳市| 万盛区| 晴隆县| 集贤县| 连江县| 汕尾市|