[發(fā)明專利]一種視頻多車輛輪廓檢測方法有效
| 申請?zhí)枺?/td> | 201210202508.0 | 申請日: | 2012-06-19 |
| 公開(公告)號: | CN102799857A | 公開(公告)日: | 2012-11-28 |
| 發(fā)明(設計)人: | 路小波;熊陽;路暢 | 申請(專利權)人: | 東南大學 |
| 主分類號: | G06K9/00 | 分類號: | G06K9/00;G06T7/20;G08G1/01;H04N5/14 |
| 代理公司: | 南京天翼專利代理有限責任公司 32112 | 代理人: | 湯志武 |
| 地址: | 210096*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 視頻 車輛 輪廓 檢測 方法 | ||
1.一種視頻多車輛輪廓檢測方法,其特征在于:
步驟1:初始化:
步驟1.1:獲取一段視頻,再從視頻獲取背景圖像;
步驟1.2:以圖像左上角的像素位置為原點,像素為單位長度,從左到右的方向為X軸正方向,從上到下的方向為Y軸正方向,建立坐標系;
步驟1.3:用一個多邊形在視頻場景中圈出監(jiān)控區(qū)域,該多邊形稱為虛擬圍欄,如果車輛行駛方向為從下至上,則虛擬圍欄的底部為水平線,該底部水平線稱為入境線,如果車輛行駛方向為從上至下,則虛擬圍欄的頂部為水平線,該頂部水平線稱為入境線,入境線的Y軸坐標表示為Y_IN;
步驟1.4:獲取一幀有轎車剛好完全駛入監(jiān)控區(qū)域的圖像,車輛剛好完全駛入監(jiān)控區(qū)域是指車輛尾部緊貼入境線,在該車的車頭前畫一條水平線,稱為最小車長線,最小車長線的Y軸坐標表示為Y_LONG,在最小車長線與入境線之間畫一條水平線,稱為觸發(fā)線,觸發(fā)線的Y軸坐標表示為Y_TOUCH,觸發(fā)線與最小車長線的距離和觸發(fā)線與入境線的距離之比為3:1~4:1,在該車兩側畫2條豎直線,使2條豎直線之間的距離為該車寬度的1.3~1.5倍,該豎直線稱為車寬線,2條車寬線之間的距離表示為WIDE;
步驟1.5:用變量S表示整段視頻中已檢測出來的車輛總數,用變量k表示正在檢測的圖像在視頻中的幀序,第k幀圖像表示為f(k),第k幀圖像中的車輛的集合表示為CARS(k),第k幀圖像中的編號為n的車表示為car(n,k),編號n表示car(n,k)是整段視頻中第n輛被檢測出來的車,car(n,k)的輪廓表示為c(n,k);
設第k幀圖像f(k)是由M×N個像素構成的像素矩陣,將第k幀圖像f(k)劃分為(M-m+1)×(N-m+1)個塊,每個塊是由m×m個像素構成的像素矩陣,m取值為WIDE的0.1~0.3倍,第k幀圖像中的中心點坐標為(x,y)的塊表示為sub(x,y,k),屬于編號為n的車car(n,k)的塊集合表示為SUBS(n,k);
步驟1.6:令表示幀序的變量k為0,整段視頻中已檢測出來的車輛總數S為0,第0幀車輛集合CARS(0)為空集;
步驟2:表示幀序的變量k自增1,獲取第k幀圖像f(k),令第k幀圖像的車輛集合CARS(k)為空集;
步驟3:獲取車身輪廓集合:
步驟3.1:取第k幀圖像f(k)與背景圖像之差的絕對值圖像作為第k幀差分圖dif(k);
步驟3.2:第k幀差分圖dif(k)中處于監(jiān)控區(qū)域內且灰度值大于閾值T1的像素稱為前景像素,否則稱為背景像素,令前景像素灰度值為255,背景像素灰度值為0,得到第k幀二值圖binary?(k),T1可取值為20~50;
步驟3.3:,對第k幀二值圖binary(k)進行形態(tài)學開運算,得到第k幀前景圖像obj(k),形態(tài)學開運算中的核是邊長為m/2的矩形,核的參考點是核的中心點;
步驟3.4:采用公知的Canny邊緣檢測法檢測第k幀前景圖像obj(k)中的邊緣像素點,令邊緣像素點的灰度值為255,非邊緣像素點的灰度值為0,得到第k幀邊緣圖con(k);
步驟3.5:采用公知的爬蟲法獲取第k幀邊緣圖con(k)中的所有車身輪廓,第k幀圖像中的車身輪廓的集合表示為BODYS(k),車身輪廓是第k幀邊緣圖con(k)中邊緣像素點的集合,對于任意一個車身輪廓body1內的任意一個像素點D1,存在一個車身輪廓body1內的像素點D2,像素點D2是像素點D1的8鄰域像素點之一。
步驟3.6:從第k幀圖像的車身輪廓集合BODYS(k)中刪除邊界框脫離觸發(fā)線的車身輪廓,輪廓的邊界框是指包圍輪廓的最小矩形,邊界框脫離觸發(fā)線是指:如果車輛行駛方向為從下至上,邊界框的4個頂點的Y軸坐標值均小于Y_TOUCH,如果車輛行駛方向為從上至下,邊界框的4個頂點的Y軸坐標值均大于Y_TOUCH;
步驟4:跟蹤舊車:
如果第k-1幀圖像的車輛集合CARS(k-1)為空集,則進入步驟5,否則將第k-1幀圖像中的車輛集合CARS(k-1)中的每輛車跟蹤到第k幀圖像,將第k-1幀圖像的車輛集合CARS(k-1)中編號為n的車car(n,k-1)跟蹤到第k幀圖像的步驟如下:
步驟4.1:在第k幀圖像的車輛集合CARS(k)中添加編號為n的車car(n,k),令車car(n,k)的塊集合SUBS(n,k)為空集;
步驟4.2:將車car(n,k-1)的塊集合SUBS(n,k-1)中每一個塊跟蹤到第k幀圖像;
步驟4.3:如果車car(n,k)的塊集合SUBS(n,k)為空集,則從第k幀圖像的車輛集合CARS(k)中刪除車car(n,k),并結束對車car(n,k-1)的跟蹤,否則進行步驟4.4;
步驟4.4:標記車car(n,k)為舊車;
步驟4.5:獲取包圍車car(n,k)的塊集合SUBS(n,k)中所有塊的頂點的凸包,令車car(n,k)的輪廓c(n,k)等于該凸包;
步驟4.6:計算車car(n,k)的塊集合SUBS(n,k)中所有塊的運動矢量的平均值,將該平均值保存為車car(n,k)的運動矢量mean(n,k);
塊的運動矢量是指塊的中心點坐標減去前一幀與該塊對應的塊的中心點坐標得到的矢量;
步驟5:更新舊車輪廓:
如果第k幀圖像的車輛集合CARS(k)為空集或者第k幀圖像的車身輪廓集合BODYS(k)為空集,則進入步驟6,否則進入步驟5.1;
步驟5.1:將第k幀圖像的車身輪廓集合BODYS(k)中的所有車身輪廓標記為未查看;
步驟5.2:從第k幀圖像的車身輪廓集合BODYS(k)中獲取一個標記為未查看的車身輪廓,如果獲取成功,將該車身輪廓標記為已查看,否則進入步驟6;
步驟5.3:從第k幀圖像的車輛集合CARS(k)中找出邊界框與該車身輪廓的邊界框距離最近的車輛,兩邊界框之間的距離是指邊界框中心點之間的距離,車輛的邊界框是指車輛的輪廓的邊界框;
步驟5.4:判斷該車輛能否吞并該車身輪廓;
步驟5.5:如果該車輛能吞并該車身輪廓,則該車輛吞并該車身輪廓;
車輛吞并車身輪廓的方法如下:
步驟5.5.1:合并車輛的輪廓與車身輪廓,得到點集A;
步驟5.5.2:采用公知的Graham掃描法獲取點集A的凸包,令該車身輪廓等于點集A的凸包;
步驟5.5.3:從第k幀圖像的車身輪廓集合BODYS(k)中刪除該車身輪廓;
步驟5.6:返回步驟5.2;
步驟6:檢測新車:
如果第k幀圖像的車身輪廓集合BODYS(k)為空集,則進入步驟7;
步驟6.1:從第k幀圖像的車身輪廓集合BODYS(k)中獲取一個邊界框寬度大于WIDE/3的車身輪廓,如果獲取失敗,則進入步驟7;
步驟6.2:車輛總數S自增1,在第k幀圖像的車輛集合CARS(k)中增加編號為S的車car(S,k),標記car(S,k)為新車,令車car(S,k)的輪廓c(S,k)等于由步驟6.1獲取的車身輪廓的凸包,令車car(S,k)的塊集合SUBS(S,k)為空集;
步驟6.3:從第k幀圖像的車身輪廓集合BODYS(k)中刪除由步驟6.1獲取的車身輪廓;
步驟6.4:采用車輛吞并車身輪廓的方法,用車car(S,k)吞并第k幀圖像的車身輪廓集合BODYS(k)中所有能被car(S,k)吞并的車身輪廓;
步驟6.5:返回步驟6.1;
步驟7:添加填充塊:
如果第k幀圖像的車輛集合CARS(k)為空集,則返回步驟2,否則在為第k幀圖像的車輛集合CARS(k)中的每輛車添加填充塊之后返回步驟2,為CARS(k)中任意一輛車car(n,k)添加填充塊的步驟如下:
對車car(n,k)的輪廓c(n,k)上的每個點進行如下操作:
一:設車car(n,k)的輪廓c(n,k)上的點坐標為(x1,y1),從以車car(n,k)的輪廓c(n,k)上的點(x1,y1)為頂點之一的四個塊sub(x1-m/2,y1-m/2,k)、sub(x1-m/2,y1+m/2,k)、sub(x1+m/2,y1-m/2,k)、sub(x1+m/2,y1+m/2,k)中找出4個頂點全被c(n,k)所包圍的塊作為填充塊,并標記填充塊為sub(x2,y2,k),判斷一個點D3是否被一個輪廓包圍的方法是:如果一個輪廓上有奇數個點滿足:X軸坐標值大于點D3的X軸坐標值,Y軸坐標值等于D3的Y軸坐標值,則點D3被該輪廓包圍,二:在第k幀二值圖binary(k)中與填充塊sub(x2,y2,k)位置和大小都對應的像素矩陣稱為填充塊sub(x2,y2,k)的二值塊,如果填充塊sub(x2,y2,k)的二值塊的非零像素個數大于閾值T2并且車car(n,k)的塊集合SUBS(n,k)中沒有與填充塊sub(x2,y2,k)重疊面積大于m×m/2的塊,則將填充塊sub(x2,y2,k)加入車car(n,k)的塊集合SUBS(n,k),閾值T2取值為m×m的0.6~0.8倍。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于東南大學,未經東南大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210202508.0/1.html,轉載請聲明來源鉆瓜專利網。





