劉 偉
(重慶郵電大學(xué)通信與信息工程學(xué)院,重慶 400065)
行人之間遮擋現(xiàn)象在行人跟蹤、行人識(shí)別與檢測(cè)、行人統(tǒng)計(jì)等許多行人圖像研究中都會(huì)涉及到。行人之間的遮擋已經(jīng)嚴(yán)重地影響識(shí)別、檢測(cè)、跟蹤等各種算法的執(zhí)行效果,如何做到遮擋分割算法并保證算法的實(shí)時(shí)性和可靠性,目前具有重要的研究意義。對(duì)遮擋條件下行人分割所使用的不同采樣設(shè)備有不同的算法和結(jié)果,都是現(xiàn)階段值得研究的方向。
遮擋行人分割主要是對(duì)感興趣區(qū)域分割[1-5]。行人分割的算法對(duì)魯棒性提出了很高的要求,同時(shí),算法的實(shí)時(shí)性系統(tǒng)必須滿(mǎn)足。在現(xiàn)階段應(yīng)用中,不同設(shè)備對(duì)應(yīng)不同算法也會(huì)對(duì)魯棒性和實(shí)時(shí)性有很大的影響。目前,常用于遮擋條件下行人采樣的設(shè)備有單目和雙目設(shè)備。單目設(shè)備有采用可見(jiàn)光設(shè)備[6]和熱紅外設(shè)備[7-8]。而可見(jiàn)光設(shè)備是目前最常用的設(shè)備,在遮擋條件下處理受到光線(xiàn)影響大且分割遮擋算法一般從顏色、材質(zhì)等方面進(jìn)行,但是算法復(fù)雜而且在人群遮擋時(shí)服裝等接近的時(shí)候容易導(dǎo)致算法不準(zhǔn);熱紅外設(shè)備不受光線(xiàn)影響,主要是靠溫度來(lái)區(qū)分目標(biāo),當(dāng)遮擋目標(biāo)表面溫度接近時(shí)不容易區(qū)分目標(biāo)。雙目檢測(cè)主要采用2個(gè)可見(jiàn)光設(shè)備。傳統(tǒng)的雙目可見(jiàn)光設(shè)備雙目圖像位置關(guān)系結(jié)合算法[9],利用處于一定夾角的可見(jiàn)光攝像機(jī)采集同一個(gè)位置的視頻圖像,然后,算出該位置帶有點(diǎn)云特征的結(jié)合圖像。雙目可見(jiàn)光設(shè)備算法雖然可以分割提取遮擋目標(biāo),但是該設(shè)備算法存在算法復(fù)雜實(shí)時(shí)性差并且受光源影響大等問(wèn)題。
針對(duì)在實(shí)際應(yīng)用中當(dāng)前常用設(shè)備的一系列問(wèn)題,本文采用Kinect設(shè)備解決遮擋條件下行人檢測(cè)問(wèn)題。由于Kinect設(shè)備采用深度采樣數(shù)據(jù)并且?guī)в衅矫嫖恢玫狞c(diǎn)云圖像,可以有效避免光源問(wèn)題,而且在遮擋條件下目標(biāo)必然處于不同深度位置,因此,可以簡(jiǎn)化算法排除遮擋。單目可見(jiàn)光設(shè)備的平面位置關(guān)系相關(guān)算法、熱紅外設(shè)備的分割算法和雙目可見(jiàn)光設(shè)備的點(diǎn)云信息算法都可以為深度圖像分割提供算法思路,避免大量基礎(chǔ)算法的研究。目前深度采樣設(shè)備的算法思路僅對(duì)深度圖像的自遮擋有大量研究,其中,基于深度數(shù)據(jù)變化[10]、基于形態(tài)學(xué)水線(xiàn)區(qū)域分割[11]和聚類(lèi)算法[12]提供了對(duì)遮擋行人之間的分割算法思路。在水平方向采樣行人深度數(shù)據(jù)時(shí),人自身的形態(tài)會(huì)導(dǎo)致一個(gè)人的深度數(shù)據(jù)驟變,而且在實(shí)際使用中Kinect深度數(shù)據(jù)會(huì)有大量噪聲存在,根據(jù)深度數(shù)據(jù)變化和邊緣檢測(cè)方法會(huì)把一個(gè)人分割為隨機(jī)多個(gè)人。聚類(lèi)算法雖然可以有效分割行人,但是聚類(lèi)算法需要迭代運(yùn)算,實(shí)時(shí)性低。雙峰和迭代自適應(yīng)閾值算法[13]簡(jiǎn)單,但是不能確定多個(gè)閾值分割。所以,本文研究新的算法用于Kinect,提出一種基于雙峰法和迭代自適應(yīng)閾值算法的改進(jìn)閾值算法,改進(jìn)并融合一種消除多余目標(biāo)的算法。結(jié)果表明了改進(jìn)算法的魯棒性和實(shí)時(shí)性都滿(mǎn)足需求。
雙峰法的思想是把圖像看成由前景和背景組成,并且前景和背景都在灰度直方圖上形成高峰,就把在2個(gè)高峰之間最低谷處的值作為圖像分割的閾值,如圖1所示。
圖1 雙峰法Fig.1 Double-peak threshold method
迭代閾值法的思想是基于逼近算法,首先,需要找出圖像的最大和最小灰度值,分別記為Rmax和Rmin,令閾值為T(mén):
再根據(jù)(1)式計(jì)算的閾值T將圖像的平均灰度值分成2組R1和R2。然后,分別求出2組的平均灰度值u1和u2。用(2)式算出新閾值:
最后,循環(huán)計(jì)算閾值,直到新的u1和u2不再發(fā)生改變,就能獲得所需要的閾值去分割圖像。
Kinect深度數(shù)據(jù)都是漸大或者漸小,很難滿(mǎn)足雙峰閾值法的要求找到低谷,并且需要的閾值往往不只一個(gè)。迭代法滿(mǎn)足深度數(shù)據(jù)的特性,但是迭代法需要重復(fù)逼近運(yùn)算,算法實(shí)時(shí)性低。
K均值聚類(lèi)算法的目的是以像素值相似為基礎(chǔ)來(lái)分割圖像。其主要步驟為第1步對(duì)輸入基因表達(dá)矩陣作為對(duì)象集X,輸入指定聚類(lèi)類(lèi)數(shù)N,并在X中隨機(jī)選取N個(gè)對(duì)象作為初始聚類(lèi)中心。設(shè)定迭代中止條件,比如最大循環(huán)次數(shù)或者聚類(lèi)中心收斂誤差容限。第2步進(jìn)行迭代。根據(jù)相似度準(zhǔn)則將數(shù)據(jù)對(duì)象分配到最接近的聚類(lèi)中心,從而形成一類(lèi)。初始化隸屬度矩陣。第3步,更新聚類(lèi)中心。然后,以每一類(lèi)的平均向量作為新的聚類(lèi)中心,重新分配數(shù)據(jù)對(duì)象。最后,一直反復(fù)執(zhí)行第2步和第3步直至滿(mǎn)足中止條件。
基于形態(tài)學(xué)水線(xiàn)區(qū)域分割算法[11]首先需要產(chǎn)生距離圖,采用(3)式迭代的腐蝕二值化的深度圖:
(3)式中:m是非空?qǐng)D像的最大個(gè)數(shù);k表示迭代腐蝕次數(shù);B為原始圖像;S為結(jié)構(gòu)元素。
然后,用極限腐蝕的方法反復(fù)地腐蝕目標(biāo)將會(huì)把目標(biāo)腐蝕到消失,保留消失前一步結(jié)果,并設(shè)為目標(biāo)種子。用圖像值減去極限腐蝕得到的結(jié)果,得到了極限腐蝕合集。最后,對(duì)上一步集合的值和其對(duì)應(yīng)位置進(jìn)行粗化,就是連接在一起并明確畫(huà)出分割線(xiàn)來(lái)分割。
K均值聚類(lèi)和基于形態(tài)學(xué)水線(xiàn)區(qū)域分割算法都用到了迭代算法的思想,計(jì)算機(jī)重復(fù)運(yùn)算量非常大,而且基于形態(tài)學(xué)水線(xiàn)區(qū)域分割算法還要用到形態(tài)學(xué)運(yùn)算,將進(jìn)一步增加運(yùn)算時(shí)間。
姚亞夫[6]在論文中提出對(duì)圖像中擁有相同像素的連通域進(jìn)行分析,這個(gè)連通域被稱(chēng)為Blob。采用常用的Blob分析方法分割行人,Blob分析是根據(jù)圖像閾值分割后所得到的各個(gè)Blob的外接矩形與中心位置作為特征,將2個(gè)或2個(gè)以上符合算法約束條件的Blob融合成一個(gè)外接矩形,該邊界包含融合前的所有Blob,以實(shí)現(xiàn)準(zhǔn)確的分割目標(biāo)。采樣設(shè)備安裝在行人的側(cè)面,獲得行人側(cè)面視頻并且行人與水平線(xiàn)垂直。通常情況下,垂直相鄰的Blob屬于需要融合的同一個(gè)行人目標(biāo),而水平相鄰的Blob不屬于同一個(gè)行人目標(biāo)。因此,垂直方向設(shè)置一個(gè)常數(shù)T1用來(lái)融合Blob,T1取值為行人在視頻圖像中的像素高度。水平方向設(shè)置一個(gè)T2,T2取值為0或負(fù)數(shù)。當(dāng)進(jìn)行比較的2個(gè)Blob滿(mǎn)足最小垂直距離小于T1且最小水平距離小于T2,Blob就進(jìn)行融合。然后,尋找下一個(gè)Blob,直到?jīng)]有符合條件為止。
此算法不適合行人離攝像頭距離不同而導(dǎo)致的高度和寬度的變化,并且有遮擋同時(shí)存在的情況。
Leibe B[14]等人提出先要找到行人的準(zhǔn)確位置,用3個(gè)標(biāo)準(zhǔn)應(yīng)用:相距、覆蓋和重疊。把行人的位置用外接矩形表示出來(lái),然后,找到這個(gè)矩形的一個(gè)固定縱橫比。在2個(gè)矩形中間設(shè)置內(nèi)接橢圓,測(cè)得的2個(gè)矩形框中心距離為d,再測(cè)出橢圓中心指向矩形左上角角點(diǎn)的半徑為r。根據(jù)d和r的比較,再自定義一個(gè)比較標(biāo)準(zhǔn),這樣就可以得出是屬于上面3種應(yīng)用中的哪一種應(yīng)用標(biāo)準(zhǔn),如圖2所示。
圖2 遮擋距離示意圖Fig.2 Schematic schematic diagram
此算法可以作為判斷遮擋條件,但是當(dāng)要處理的已經(jīng)不是遮擋問(wèn)題時(shí),而是一個(gè)運(yùn)動(dòng)目標(biāo)被分割為2個(gè)或者多個(gè)目標(biāo),需要合并多余目標(biāo)時(shí),這個(gè)算法就有不足之處。
首先,要把圖像深度數(shù)據(jù)用閾值分割方法與分割為多個(gè)部分,本文融合雙峰和迭代自適應(yīng)閾值算法,把單獨(dú)目標(biāo)的圖像深度數(shù)據(jù)的最小值(Tmin)和最大值(Tmax)都作為峰值,然后,根據(jù)實(shí)驗(yàn)統(tǒng)計(jì)的行人深度數(shù)據(jù)值進(jìn)行分割多個(gè)目標(biāo)。統(tǒng)計(jì)單個(gè)輪廓非零最小值Nmin和最大值Nmax。
(4)式中:目標(biāo)分為F個(gè)區(qū)域,閾值為T(mén)min,Tmin+f,…,Tmin+ ( F -1)f,Tmax這個(gè)算式可以把運(yùn)動(dòng)目標(biāo)根據(jù)f的值分割開(kāi)。其中,f為人的厚度 ,本文取值25。
經(jīng)過(guò)融合雙峰和迭代自適應(yīng)閾值分割預(yù)處理后,一般情況下已經(jīng)能正確識(shí)別運(yùn)動(dòng)行人目標(biāo)的位置和數(shù)量,但是還是有在人群集中覆蓋或者噪聲干擾較大的部分情況下,一個(gè)人會(huì)處于深度分割閾值的兩面,導(dǎo)致識(shí)別錯(cuò)誤,如圖3所示。
圖3 一個(gè)人被識(shí)別為多個(gè)Fig.3 A person is identified as plurality
本文提出改進(jìn)算法,圖3的情況可以用圖4的矩形框來(lái)表示,其中,一個(gè)人被分為了M和N這2個(gè)矩形框的情況,如圖4所示。
圖4 一個(gè)行人被識(shí)別為兩個(gè)行人示意圖Fig.4 Schematic that a pedestrian was identified as two pedestrians
以M矩形為起點(diǎn),依次尋找符合條件的N矩形,算法公式為
(5)—(7)式中:x,y為分割的任一矩形左上角點(diǎn)坐標(biāo);Cx,Cy為分割的任一矩形中心點(diǎn)坐標(biāo);w,h為分割的任一矩形寬和高。(5)式是為了找到圖4中間的垂直三角形,矩形框是檢測(cè)到的運(yùn)動(dòng)物體輪廓的外接矩形,垂直三角形是2個(gè)矩形的質(zhì)心連線(xiàn)。找到N矩形的質(zhì)心坐標(biāo)范圍在M矩形橫坐標(biāo)內(nèi),即( x ,x+w),并且垂直三角形的高必須要大于寬。然后,再把2個(gè)矩形的坐標(biāo)y最大點(diǎn)和x最大點(diǎn)記錄,畫(huà)出包涵2個(gè)矩形的最小外接矩形,作為最后的運(yùn)動(dòng)目標(biāo)運(yùn)動(dòng)范圍。
在一臺(tái)主頻為2.5 GHz,內(nèi)存為2 GB,利用Intel公司的開(kāi)放源代碼計(jì)算機(jī)視覺(jué)庫(kù)OpenCV和OpenNI作為Kinect傳感器設(shè)備的接口用VS2010組建實(shí)驗(yàn)平臺(tái),實(shí)現(xiàn)該算法。本文使用Kinect在室內(nèi)拍攝了一系列水平狀態(tài)下復(fù)雜背景與簡(jiǎn)單背景的行人數(shù)據(jù)進(jìn)行實(shí)驗(yàn),其中,可見(jiàn)光圖像和深度圖像大小都為640×480,幀率為每秒30幀。圖5是本實(shí)驗(yàn)流程圖。
在閾值分割部分,如果統(tǒng)一處理所有輪廓,使有些人被分割為2個(gè)人,如圖6所示。因?yàn)椴煌喞械娜宋挥诓煌疃任恢脤?dǎo)致統(tǒng)計(jì)的最大值和最小值不能適用于每一個(gè)人,使本實(shí)驗(yàn)最終結(jié)果如圖7所示。
表1顯示了視頻中有少量行人和大量行人時(shí)不同算法處理一幀需要的速度??梢钥闯?,該算法基本滿(mǎn)足實(shí)時(shí)性。
表1 不同算法運(yùn)算時(shí)間 (單位:ms)Tab.1 Processing time for different algorithm (Unit:ms)
圖5 流程圖Fig.5 Flow chart
圖6 不同區(qū)域處理比較Fig.6 Comparison of different regional processing
圖7 不同背景情況Fig.7 Different background
定義識(shí)別率Pd,誤檢幀率Pf,平均錯(cuò)檢個(gè)數(shù)Nf分別為
(8)—(10)式中:F為總體幀數(shù);Fr為正確識(shí)別幀數(shù);Ff為錯(cuò)誤檢測(cè)幀數(shù);Fd為檢測(cè)識(shí)別幀數(shù);Na誤檢幀樣本平均數(shù);Nb錯(cuò)誤檢測(cè)樣本平均數(shù)。表2列出了各消除多余目標(biāo)算法結(jié)果。
表2 各算法比較Tab.2 Comparison of algorithms
基于Kinect的遮擋條件下行人目標(biāo)檢測(cè)有著廣闊的應(yīng)用前景,使用本文提出的融合雙峰和迭代自適應(yīng)閾值算法能有效分割行人目標(biāo),并且配合使用本文提出的多余目標(biāo)融合算法能夠得到較好的結(jié)果。本文使用的算法在需要大量運(yùn)算的復(fù)雜背景與人流量大的情況下,能保持處理一幀70 ms,94.8%的準(zhǔn)確率。比傳統(tǒng)可見(jiàn)光設(shè)備在處理速度和準(zhǔn)確率上都有所提升。
[1]李偉,何鵬舉,楊恒,等.基于雙閾值運(yùn)動(dòng)區(qū)域分割的AdaBoost行人檢測(cè)算法[J].計(jì)算機(jī)應(yīng)用研究,2012,29(9):3571-3574.
LIWei,HE Pengju,YANG Heng,et al.AdaBoost pedestrian detection algorithm based on dual-threshold motion area segmentation[J].Application Research of Computers,2012,29(9):3571-3574.
[2]高潮,田翠翠,郭永彩.基于改進(jìn)聚類(lèi)中心分析法的紅外行人分割[J].計(jì)算機(jī)工程,2011,37(6):2678-2684.
GAO Chao,TIAN Cuicui,GUO Yongcai.Pedstrian Segmentation in Infrared Images Based on Improved Clustering Centers Analysis Algorithm[J].Computer Engineering ,2011,37(6):2678-2684.
[3]王海星.圖像背景自適應(yīng)分割技術(shù)研究[J].昆明冶金高等專(zhuān)科學(xué)校學(xué)報(bào),2010,26(5):18-22.
WANG Haixing.On Image Background Adaptive Segmentation Technology[J].Journalof Kunming Metallurgy College,2010,26(5):18-22.
[4]JORGE S.Maroues.Automatic Tracking Of Multiplt PtdestriansWith Group For Mation And Occlusions[J].IEEE PAMI,2010(31):210-227.
[5]郭鎖利,辛棟,劉延飛.近代圖像分割方法綜述[J].四川兵工學(xué)報(bào),2002(7):93-96.
GUO Suoli,XIN Dong,LIU Yanfei.Review of modern method of picture segmentation[J].Journal of Sichuan Ordnance,2012(7):93-96.
[6]姚亞夫,劉佰昂.基于位置特征的運(yùn)動(dòng)行人檢測(cè)與跟蹤方法[J].廣西大學(xué)學(xué)報(bào):自然科學(xué)版,2009,34(006):769-773.
YAO Yafu,LIU Baiang.A method of detecting and tracking moving pedestrians based on position features[J].Journal of Guangxi university:Natural Science Edition,2009,34(06):769-773.
[7]郭永彩,胡瑞光,高潮.紅外圖像中的行人檢測(cè)[J].重慶大學(xué)學(xué)報(bào),2009,32(9):1070-1073.
GUO Yongcai,HU Ruiguang,GAO Chao.Pedestrian detection in infrared images[J].Journal of Chongqing University:Natural Science Edition,2009,32(9):1070-1073.
[8]賈俊濤.一種串聯(lián)組合分類(lèi)的紅外行人檢測(cè)方法[J].應(yīng)用光學(xué),2012,33(4):770-773.
JIA Juntao.Infrared pedestrian detection method using series combination classification[J].Journal of Applied Optics,2012,33(4):770-773.
[9]錢(qián)慧佳,楊明,李顥,等.一種基于激光雷達(dá)和視覺(jué)的行人檢測(cè)方法[J].上海交通大學(xué)學(xué)報(bào),2010(7):946-950.
QIAN Huijia,YANG Ming,LI Hao,et al.A Pedestrian Detection Method Based on Laser Scanner and Camera[J].Journal of Shanghai Jiaotong University,2010(7):946-950.
[10]張世輝,張煜婕,孔令富.一種基于深度圖像的自遮擋檢測(cè)方法[J].小型微型計(jì)算機(jī)系統(tǒng),2010,5(31):965-968.
ZHANG Shihui,ZHANG Yujie,KONG Lingfu.Self-occlusion Detection Approach Based on Depth Image[J].Journal of Chinese Computer Systems,2010,5(31):965-968.
[11]張梅,文靜華,張祖勛,等.基于形態(tài)學(xué)水線(xiàn)區(qū)域的深度圖像分割[J].光學(xué)技術(shù),2009,35(3):326-329.
ZHANG Mei,WEN Jinghua,ZHANG Zuxuan,et al.Segmentation for range image based onmorphology watershed region[J].Optical Technioue,2009,35(3):326-329.
[12]HOFFMAN R,JAIN A K.Segmentation and classification of range images[J].Pattern Analysis and Machine Intelligence,IEEE Transactions on,1987(5):608-620.
[13]趙善龍,劉明勇.圖像二值化時(shí)閾值自適應(yīng)選取方法及其Visual C++實(shí)現(xiàn)[J].哈爾濱鐵道科技,2006(1):8-11.
ZHAO Shanlong,LIU Mingyong.When Image Binarization An Adaptive Threshold Selection Method And Visual C++to Achieve[J].Harbin Railway Technology,2006(1):8-11.
[14]LEIBE B,SEEMANN E,SCHIELE B.Pedestrian detection in crowded scenes[C]//2005 IEEE Computer Society Computer Vision and Pattern Recognition.San Diego,USA:IEEE Press,2005:878-885.
(編輯:劉 勇)