專利名稱:在有遮擋情況下跟蹤車輛的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種在有遮擋情況下跟蹤車輛的方法,屬于圖像處理領(lǐng)域、計算機視覺領(lǐng)域和智能交通領(lǐng)域。
背景技術(shù):
近年來,利用視頻技術(shù)進行車輛檢測與跟蹤成為智能交通領(lǐng)域中的一個熱點,它可模仿人的視覺功能進行車輛檢測和跟蹤,具備可檢測多個車道、安裝維修簡單等優(yōu)點。相對于跟蹤普通的運動目標(biāo)來說,跟蹤交通監(jiān)控錄像中的車輛有一些特殊之處。一方面,交通流中的存在多種不同型號的車輛,難以提取相對穩(wěn)定且對所有車輛都適用的特征,這給車輛檢測帶來一定挑戰(zhàn);另一方面,當(dāng)視野中同時出現(xiàn)多輛車時,車輛之間容易發(fā)生遮擋,遮擋很容易導(dǎo)致車輛跟錯或者跟丟。目前,利用視頻技術(shù)進行運動目標(biāo)檢測的方法大致為背景差分法、幀間差分法、灰度特征法、光流法等方法,運動目標(biāo)跟蹤的方法主要有以下幾種:基于特征點的跟蹤方法、基于輪廓的跟蹤方法、基于三維模型的跟蹤方法、基于光流的跟蹤方法等。以上這些方法在車輛跟蹤中的應(yīng)用效果仍有待提高,針對車輛跟蹤的特殊性,尤其是遮擋引發(fā)的難題,還需要一種簡單實用的處理方法,總的來說,遮擋導(dǎo)致的檢測或跟蹤準(zhǔn)確度問題是視頻車輛跟蹤技術(shù)的面臨的挑戰(zhàn)。
發(fā)明內(nèi)容
本發(fā)明針對現(xiàn)有的視頻車輛跟蹤技術(shù)所面對的車輛遮擋現(xiàn)象造成的車輛定位不準(zhǔn)、車輛跟丟的問題,提出一種在有遮擋情況下跟蹤車輛的方法。為了實現(xiàn)上述目的,本發(fā)明可采用的技術(shù)方案是:一種在有遮擋情況下跟蹤車輛的方法,它包括以下步驟:S1、采集圖像并設(shè)置檢測線圈;S2、從第二幀圖像開始,采用運動矢量法查找每幀圖像中的新塊;S3、查找由所述新塊組成的連通區(qū)域;S4、判斷該連通區(qū)域?qū)儆谝褭z測到的現(xiàn)有車輛還是屬于新車輛;S5、將所有前一幀中已檢測到的車輛跟蹤到當(dāng)前幀;S6、對當(dāng)前幀中所有的車輛做遮擋處理,如果當(dāng)前幀圖像中的屬于某輛車的某塊與另一輛車在當(dāng)前幀圖像中的掩碼區(qū)域發(fā)生重疊的像素個數(shù)大于閾值,則將該塊記為發(fā)生遮擋的塊,并將所述某輛車記為該塊的當(dāng)前歸屬車輛,所述另一輛車記為該塊的備選歸屬車輛;對當(dāng)前幀圖像中的某一個發(fā)生遮擋的塊進行歸屬判斷:查找前一幀圖像中是否存在與該塊對應(yīng)的塊,若不存在,則將該塊判決為不屬于任何車輛的塊;否則,分別計算該塊在前一幀圖像中對應(yīng)的塊與該塊的當(dāng)前歸屬車輛在前一幀圖像中的掩碼區(qū)域、該塊的備選歸屬車輛在前一幀圖像中的掩碼區(qū)域發(fā)生重疊的像素個數(shù),并將該塊判決給重疊像素個數(shù)較多的車輛。
根據(jù)本發(fā)明所述的在有遮擋情況下跟蹤車輛的方法,所述S6進一步包括:如果該塊在前一幀圖像中對應(yīng)的塊和該塊的當(dāng)前歸屬車輛在前一幀圖像中的掩碼區(qū)域發(fā)生重疊的像素個數(shù)與該塊的備選歸屬車輛在前一幀圖像中的掩碼區(qū)域發(fā)生重疊的像素個數(shù)的差值小于臨界值,則判斷該塊不屬于任何車輛;否則,將該塊判決給重疊像素個數(shù)較多的車輛。根據(jù)本發(fā)明所述的在有遮擋情況下跟蹤車輛的方法,所述檢測線圈包括多個塊,每個塊為行像素和列像素相等的像素矩陣。根據(jù)本發(fā)明所述的在有遮擋情況下跟蹤車輛的方法,所述S2進一步為:從第二幀圖像開始,對前一幀圖像中檢測線圈內(nèi)的每個塊而言:查找當(dāng)前幀圖像中是否存在與該塊對應(yīng)的塊,若存在,則計算該塊的運動矢量,如果該塊的運動矢量超過設(shè)定值,則將該塊標(biāo)記為新塊,所述塊的運動矢量是指以該塊的中心位置為起點,以下一幀圖像中與該塊對應(yīng)的塊的中心位置為終點的矢量,某幀圖像中與某塊對應(yīng)的塊是指所述某幀圖像中與所述某塊的匹配程度最大且大于設(shè)定值的塊。根據(jù)本發(fā)明所述的在有遮擋情況下跟蹤車輛的方法,所述S4進一步為:對前一幀圖像中的每一個由新塊組成的連通區(qū)域而言:如果該連通區(qū)域與已檢測到的某輛車在前一幀圖像中的掩碼區(qū)域有重疊,則將該連通區(qū)域中的每一個新塊均記為屬于該輛車的塊;如果該連通區(qū)域與已檢測到的所有車輛在前一幀圖像中掩碼區(qū)域均不重疊,且該連通區(qū)域中新塊的個數(shù)超過預(yù)定值,則新增加一輛已檢測到的車輛,并將該連通區(qū)域中的每一個新塊均記為屬于該新增加的車輛的塊;某輛車在某幀圖像中的掩碼區(qū)域是指在該幀圖像中由屬于該輛車的所有塊的所有像素所組成的區(qū)域。根據(jù)本發(fā)明所述的在有遮擋情況下跟蹤車輛的方法,所述S5進一步為:對前一幀圖像中已記為屬于某輛車的每一個塊而言:查找當(dāng)前幀圖像中是否存在與該塊對應(yīng)的塊,如果存在,則將當(dāng)前幀圖像中與該塊對應(yīng)的塊記為屬于該塊所屬于的車輛的塊。本發(fā)明具有跟蹤準(zhǔn)確度高的優(yōu)點:由于前一幀中屬于車輛的塊在當(dāng)前幀中的對應(yīng)塊構(gòu)成了當(dāng)前幀屬于車輛的塊,所以當(dāng)前幀的車輛掩碼區(qū)域會適應(yīng)車輛整體大小和形狀相對于前一幀的變化,準(zhǔn)確地檢測出當(dāng)前幀中屬于車輛的像素。本發(fā)明進一步具有的優(yōu)點是:能夠在交通擁擠的情況下進行車輛跟蹤。本發(fā)明通過查找發(fā)生遮擋的塊在前一幀圖像中的對應(yīng)塊,并根據(jù)該對應(yīng)塊與車輛掩碼區(qū)域的重疊程度來對發(fā)生遮擋的塊進行歸屬判決,避免了發(fā)生遮擋的車輛的塊的相互混淆,從而提高了交通擁擠情況下車輛跟蹤的穩(wěn)定性。應(yīng)當(dāng)認(rèn)識到,本發(fā)明以上各方面中的特征可以在本發(fā)明的范圍內(nèi)自由組合,而并不受其順序的限制一只要組合后的技術(shù)方案落在本發(fā)明的實質(zhì)精神內(nèi)。
下面將結(jié)合附圖及實施例對本發(fā)明作進一步說明,附圖中:圖1是本發(fā)明在有遮擋情況下跟蹤車輛的方法的流程圖;圖2是實施例中的檢測線圈內(nèi)的互不重疊的塊及由新塊組成的兩個連通區(qū)域;圖3是實施例中屬于已檢測到的一輛車的所有塊;圖4是實施例中車輛的掩碼區(qū)域示意圖,其中白色像素組成的區(qū)域表示圖3中的車輛的掩碼區(qū)域;圖5a至圖5c是實施例中分別屬于發(fā)生遮擋的兩輛車的塊,其中圖5a是遮擋處理之前,所有屬于這兩輛車的塊,圖5b是屬于這兩輛車的發(fā)生遮擋的塊,圖5c是對發(fā)生遮擋的塊進行歸屬判決后的所有屬于這兩輛車的塊;圖6是實施例中對某一塊進行歸屬判決的流程圖。
具體實施例方式下面結(jié)合附圖和具 體實施方式,進一步闡明本發(fā)明,應(yīng)理解這些實施方式僅用于說明本發(fā)明而不用于限制本發(fā)明的范圍,在閱讀本發(fā)明之后,本領(lǐng)域的技術(shù)人員對本發(fā)明的各種等價形式的修改均落于本申請的權(quán)利要求所限定的范圍。結(jié)合圖1說明本發(fā)明的在有遮擋情況下跟蹤車輛的方法的基本過程:采集視頻,在圖像上的視場區(qū)域設(shè)置檢測線圈。標(biāo)記前一幀圖像中檢測線圈內(nèi)運動矢量較大的塊為新塊,找出前一幀圖像中新塊連通區(qū)域。判斷新塊連通區(qū)域與已檢測車輛是否有重疊,如果有重疊則新塊連通區(qū)域中所有塊屬于與其有重疊的車輛;如果沒有重疊且新塊連通區(qū)域中塊的個數(shù)大于閾值,則新塊連通區(qū)域中所有塊為新車的塊。將前一幀圖像中的所有車輛跟蹤到當(dāng)前幀。對當(dāng)前幀的每一輛車做遮擋處理。結(jié)合圖2至圖6說明一個實際實施方案:S1、用一個固定視場的攝像機對公路或隧道進行拍攝,每隔固定時間從攝像機采集一幀圖像,在采集的圖像上車輛進入視場的區(qū)域設(shè)置矩形檢測線圈,令檢測線圈的寬度為x*k個像素、長度為y*k個像素,其中μ、λ和k都是大于零的整數(shù),采集的每一幀圖像中行和列均為k個像素的像素矩陣稱為塊,用η表示已檢測出來的車輛的總數(shù)、St表示在采集的第t幀圖像中所檢測出來的車輛的集合,將η初始化為O、S1初始化為空集;S2、設(shè)當(dāng)前幀圖像為第t幀圖像Pt,前一幀圖像為第t-Ι幀圖像Pw,對圖像Pw的檢測線圈內(nèi)互不重疊的λ*μ個塊中的每一個塊進行如下處理:設(shè)該塊為big,查找在圖像Pt中與塊bl^最匹配的塊blt,如果塊blt與塊bl^的匹配程度大于閾值T1,則將塊blt記為在圖像Pt中與塊blt_i對應(yīng)的塊,若塊blt_i的運動矢量的大小超過閾值T2,則標(biāo)記塊big為新塊,塊big的運動矢量是指以塊big的中心點位置為起點、以塊blt的中心點位置為終點的矢量;實施例中,采用公知的三步搜索算法查找某個塊的匹配塊,采用255減去兩個塊之間MAD值的差作為兩個塊之間的匹配程度,兩個塊之間MAD值是兩個塊之間對應(yīng)像素灰度值的平均絕對誤差,T1取值為240,T2取值為k的0.8 倍。S3、利用公知的區(qū)域生長法查找圖像Pw中由新塊組成的所有的連通區(qū)域;實施例中,λ為26、μ為3,檢測線圈及由新塊組成的連通區(qū)域見圖2 ;S4、對圖像Pw中每一個由新塊組成的連通區(qū)域進行如下處理:如果該連通區(qū)域與車輛集合Sw中的所有車輛在圖像Pw中的掩碼區(qū)域都無重疊,且該新塊連通區(qū)域中新塊的個數(shù)超過閾值T3,實施例中,T3取值為5 ;則令已檢測出來的車輛的總數(shù)η自增1,并在車輛集合Sw中增加一個編號為η的車輛Cn,令車輛Cn在圖像Pt-!中的塊集合Bt_1;n為該連通區(qū)域中所有新塊,其中,車輛集合Sw表示在圖像Pw中所檢測出來的車輛的集合;車輛在圖像中的掩碼區(qū)域是指車輛在圖像中的塊集合中的所有像素所形成的區(qū)域;實施例中屬于已檢測到的一輛車的所有塊見圖3,圖3中車輛的掩碼區(qū)域見圖4 ;如果該新塊連通區(qū)域與車輛集合Sw中編號為i的車輛Ci在圖像Pw中的掩碼區(qū)域Mt' i有重疊,則將該新塊連通區(qū)域中的所有新塊加入到車輛Ci在圖像Pw中的塊集合Bt' i中;S5、跟蹤車輛:令車輛集合St為空集,對車輛集合Sw中的每一輛車的進行如下處理:S5.1、設(shè)該車為編號為i的車輛Ci,在車輛集合St中添加車輛Ci,令車輛Ci在圖像Pt中的塊集合Bt,i為空集;S5.2、對車輛Ci在圖像Pw中的塊集合Bt_1;i中的每一個塊進行如下處理:設(shè)該塊為b2t_i,查找在圖像Pt中是否存在與塊b2t_i對應(yīng)的塊b2t,若存在,則將塊b2t添加到塊集合Bt;i中;S5.3、如果塊集合Bt;i為空集,則從車輛集合St中刪除車輛Ci ;S6、遮擋處理:S6.1、檢測當(dāng)前幀圖像中的每個屬于車輛的塊是否發(fā)生遮擋:設(shè)車輛集合St中的車輛Ci的塊集合By中的某塊為b3t,如果塊b3t與車輛Cj在圖像Pt中的掩碼區(qū)域Mt,j發(fā)生重疊的像素個數(shù)大于閾值T4,則將塊b3t記為發(fā)生遮擋的塊,并將車輛Ci記為塊b3t的當(dāng)前歸屬車輛,車輛&記為該塊的備選歸屬車輛;其中,Cj表示車輛集合St中除了車輛Ci之外的任一輛車。實例中,將閾值T4取為k2的0.2倍,圖5a顯示了兩輛發(fā)生遮擋的車,白色方框代表屬于下方車輛的塊,黑色方框代表屬于上方車輛的塊,這兩輛車之間發(fā)生遮擋的塊見圖5b所示。S6.2、對當(dāng)前幀圖像中的每一個發(fā)生遮擋的塊進行歸屬判決:設(shè)當(dāng)前幀圖像中某個發(fā)生遮擋的塊為b4t,塊b4t的當(dāng)前歸屬車輛為Ci,備選歸屬車輛為Cp對塊b4t進行歸屬判決的流程見圖6 ;查找在圖像Pw中是否存在與塊&七對應(yīng)的塊b4t_i,若不存在,則將塊b4t判決為不屬于任何車輛的塊,并從塊集合中刪除塊b4t ;否則將塊b4t_i記為在圖像Pt-!中與塊匕七對應(yīng)的塊,計算圖像Pw中塊b4t_i與車輛Ci在圖像Pt_i中的掩碼區(qū)域Mt_1;i發(fā)生重疊的像素個數(shù)Oi,計算圖像Pw中塊b4t_i與車輛&在圖像Pw中的掩碼區(qū)域Mg,」發(fā)生重疊的像素個數(shù)Oj,如果表達式I O1-Oj I A2的值小于閾值T5,則將塊b4t判決為不屬于任何車輛的塊,并從塊集合中刪除塊b4t ;否則,如果Oi大于Op將塊b4t判決為屬于車輛Ci的塊,如果Oi不大于Op將塊b4t判決為屬于車輛的塊,并從塊集合中刪除塊b4t,向塊集合Bt,j中添加 塊b4t。實例中將T5取值為0.5,對圖5a的車輛進行遮擋處理后的結(jié)果見圖5c所示。
權(quán)利要求
1.一種在有遮擋情況下跟蹤車輛的方法,其特征是它包括以下步驟: 51、采集圖像并設(shè)置檢測線圈; 52、從第二幀圖像開始,采用運動矢量法查找每幀圖像中的新塊; 53、查找由所述新塊組成的連通區(qū)域; 54、判斷該連通區(qū)域?qū)儆谝褭z測到的現(xiàn)有車輛還是屬于新車輛; 55、將所有前一幀中已檢測到的車輛跟蹤到當(dāng)前幀; 56、對當(dāng)前幀中所有的車輛做遮擋處理,如果當(dāng)前幀圖像中的屬于某輛車的某塊與另一輛車在當(dāng)前幀圖像中的掩碼區(qū)域發(fā)生重疊的像素個數(shù)大于閾值,則將該塊記為發(fā)生遮擋的塊,并將所述某輛車記為該塊的當(dāng)前歸屬車輛,所述另一輛車記為該塊的備選歸屬車輛; 對當(dāng)前幀圖像中的某一個發(fā)生遮擋的塊進行歸屬判斷:查找前一幀圖像中是否存在與該塊對應(yīng)的塊,若不存在,則將該塊判決為不屬于任何車輛的塊;否則,分別計算該塊在前一幀圖像中對應(yīng)的塊與該塊的當(dāng)前歸屬車輛在前一幀圖像中的掩碼區(qū)域、該塊的備選歸屬車輛在前一幀圖像中的掩碼區(qū)域發(fā)生重疊的像素個數(shù),并將該塊判決給重疊像素個數(shù)較多的車輛。
2.根據(jù)權(quán)利要求1所述的在有遮擋情況下跟蹤車輛的方法,其特征在于, 所述S6進一步包括:如果該塊在前一幀圖像中對應(yīng)的塊和該塊的當(dāng)前歸屬車輛在前一幀圖像中的掩碼區(qū)域發(fā)生重疊的像素個數(shù)與該塊的備選歸屬車輛在前一幀圖像中的掩碼區(qū)域發(fā)生重疊的像素 個數(shù)的差值小于臨界值,則判斷該塊不屬于任何車輛;否則,將該塊判決給重疊像素個數(shù)較多的車輛。
3.根據(jù)權(quán)利要求1或2所述的在有遮擋情況下跟蹤車輛的方法,其特征在于,所述檢測線圈包括多個塊,每個塊為行像素和列像素相等的像素矩陣。
4.根據(jù)權(quán)利要求1或2所述的在有遮擋情況下跟蹤車輛的方法,其特征在于,所述S2進一步為: 從第二幀圖像開始,對前一幀圖像中檢測線圈內(nèi)的每個塊而言:查找當(dāng)前幀圖像中是否存在與該塊對應(yīng)的塊,若存在,則計算該塊的運動矢量,如果該塊的運動矢量超過設(shè)定值,則將該塊標(biāo)記為新塊,所述塊的運動矢量是指以該塊的中心位置為起點,以下一幀圖像中與該塊對應(yīng)的塊的中心位置為終點的矢量,某幀圖像中與某塊對應(yīng)的塊是指所述某幀圖像中與所述某塊的匹配程度最大且大于設(shè)定值的塊。
5.根據(jù)權(quán)利要求1或2所述的在有遮擋情況下跟蹤車輛的方法,其特征在于,所述S4進一步為: 對前一幀圖像中的每一個由新塊組成的連通區(qū)域而言:如果該連通區(qū)域與已檢測到的某輛車在前一幀圖像中的掩碼區(qū)域有重疊,則將該連通區(qū)域中的每一個新塊均記為屬于該輛車的塊;如果該連通區(qū)域與已檢測到的所有車輛在前一幀圖像中掩碼區(qū)域均不重疊,且該連通區(qū)域中新塊的個數(shù)超過預(yù)定值,則新增加一輛已檢測到的車輛,并將該連通區(qū)域中的每一個新塊均記為屬于該新增加的車輛的塊;某輛車在某幀圖像中的掩碼區(qū)域是指在該幀圖像中由屬于該輛車的所有塊的所有像素所組成的區(qū)域。
6.根據(jù)權(quán)利要求1或2所述的在有遮擋情況下跟蹤車輛的方法,其特征在于,所述S5進一步為:對前一幀圖像中已記為屬于某輛車的每一個塊而言:查找當(dāng)前幀圖像中是否存在與該塊對應(yīng)的塊,如果存在,則將當(dāng)前幀圖像中與該塊對應(yīng)的塊記為屬于該塊所屬于的'車輛的塊。
全文摘要
本發(fā)明公開了一種在有遮擋情況下跟蹤車輛的方法,它包括如下步驟采集圖像并設(shè)置檢測線圈,通過判斷檢測線圈內(nèi)塊的運動矢量的大小來檢測屬于車輛的塊;通過查找前一幀圖像中每一個屬于車輛的塊在當(dāng)前幀圖像中的對應(yīng)的塊,來跟蹤每一輛車;通過當(dāng)前幀圖像中屬于某一輛車的塊與其它車輛的掩碼區(qū)域的重疊程度來檢測發(fā)生遮擋的塊,查找發(fā)生遮擋的塊在前一幀圖像中的對應(yīng)塊,通過該對應(yīng)塊與前一幀圖像中車輛掩碼區(qū)域的重疊程度來對發(fā)生遮擋的塊進行歸屬判決,從而完成對車輛遮擋的處理。本發(fā)明在有遮擋情況下跟蹤車輛的方法具有跟蹤準(zhǔn)確度高和穩(wěn)定性強的優(yōu)點。
文檔編號G06T7/20GK103136935SQ201310010960
公開日2013年6月5日 申請日期2013年1月11日 優(yōu)先權(quán)日2013年1月11日
發(fā)明者路小波, 熊陽 申請人:東南大學(xué)