CN102799857A - 一种视频多车辆轮廓检测方法 - Google Patents

一种视频多车辆轮廓检测方法 Download PDF

Info

Publication number
CN102799857A
CN102799857A CN2012102025080A CN201210202508A CN102799857A CN 102799857 A CN102799857 A CN 102799857A CN 2012102025080 A CN2012102025080 A CN 2012102025080A CN 201210202508 A CN201210202508 A CN 201210202508A CN 102799857 A CN102799857 A CN 102799857A
Authority
CN
China
Prior art keywords
car
vehicle
field picture
body outline
piece
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012102025080A
Other languages
English (en)
Other versions
CN102799857B (zh
Inventor
路小波
熊阳
路畅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southeast University
Original Assignee
Southeast University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Southeast University filed Critical Southeast University
Priority to CN201210202508.0A priority Critical patent/CN102799857B/zh
Publication of CN102799857A publication Critical patent/CN102799857A/zh
Application granted granted Critical
Publication of CN102799857B publication Critical patent/CN102799857B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Traffic Control Systems (AREA)

Abstract

一种视频多车辆轮廓检测方法,首先画虚拟围栏圈出监控区域,画虚拟检测器获取车宽、最小车长等参数;再通过背景差分、二值化、形态学开操作、轮廓提取等一系列步骤得到车身轮廓集合;通过跟踪组成车辆的像素块,实现车辆的跟踪,得到车辆的初始轮廓;以车辆的初始轮廓为基础,吞并同属本车的车身轮廓,使正在驶入监控区域的车辆的轮廓更完整;从剩余的车身轮廓中选择较大的轮廓,作为新车初始轮廓,再吞并同属本新车的车身轮廓,使得新驶入监控区域的车辆被及时地检测出来。该方法解决了摄像机抖动、道路两旁图像干扰、车辆前景不连通、邻近车辆轮廓粘连问题。

Description

一种视频多车辆轮廓检测方法
技术领域
本发明涉及一种视频多车辆轮廓检测方法,属于交通监控、视频图像处理、机器视觉技术领域。
背景技术
近些年来,利用视频技术进行车辆检测成为车辆检测技术中的一个热点,它可模仿人的视觉功能进行车辆检测和跟踪,具备可检测多个车道、安装维修简单等优点。
视频车辆检测技术从策略上可以分为两类:基于虚拟线圈和基于跟踪的方法。虚拟线圈法通过检测特定检测区域内图像变化可以检测通过该区域的运动车辆,检测区域的选取依赖人的先验知识,可大幅度的减少干扰并减轻计算负担,该方法简单高效,适用于车辆计数,但该类方法很难得到车辆图像的完整轮廓和车辆运动轨迹。基于跟踪的方法可以识别并记忆每辆车在视频帧序列中的图像轮廓和运动轨迹,适用于更广泛更高级的应用,如交通事件检测。
基于跟踪的方法中,车辆的检测通常采用检测车辆的完整前景边缘或查找前景连通域的方法。该类方法是建立在车辆前景连通的基础上的,然而,为了得到连通的车辆前景,往往造成干扰信号被放大或者邻近车辆互相粘连的结果,这种结果会降低车辆检测的准确性。既能抑制干扰信号又使不同车辆互相分离的图像处理方法,往往造成单个车辆的前景分裂成若干连通区域而不是一个连通的整体,这使得车辆的完整轮廓难以获得,尤其当多辆车同时出现在视频中时,问题更为严重。另外,道路两旁树木摇曳、摄像机轻微抖动、行人走动等情况也会对车辆检测造成干扰。
发明内容
本发明针对现有技术在面对多个车辆同时进入监控区域、摄像机轻微抖动、背景复杂等问题时的不足,提出一种视频多车辆轮廓检测方法,其特征在于:
步骤1:初始化:
步骤1.1:获取一段视频,再从视频获取背景图像;
步骤1.2:以图像左上角的像素位置为原点,像素为单位长度,从左到右的方向为X轴正方向,从上到下的方向为Y轴正方向,建立坐标系;
步骤1.3:用一个多边形在视频场景中圈出监控区域,该多边形称为虚拟围栏,如果车辆行驶方向为从下至上,则虚拟围栏的底部为水平线,该底部水平线称为入境线,如果车辆行驶方向为从上至下,则虚拟围栏的顶部为水平线,该顶部水平线称为入境线,入境线的Y轴坐标表示为Y_IN;
步骤1.4:获取一帧有轿车刚好完全驶入监控区域的图像,车辆刚好完全驶入监控区域是指车辆尾部紧贴入境线,在该车的车头前画一条水平线,称为最小车长线,最小车长线的Y轴坐标表示为Y_LONG,在最小车长线与入境线之间画一条水平线,称为触发线,触发线的Y轴坐标表示为Y_TOUCH,触发线与最小车长线的距离和触发线与入境线的距离之比为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)中处于监控区域内且灰度值大于阈值T1的像素称为前景像素,否则称为背景像素,令前景像素灰度值为255,背景像素灰度值为0,得到第k帧二值图binary (k),T1可取值为20~50;
步骤3.3:,对第k帧二值图binary(k)进行形态学开运算,得到第k帧前景图像obj(k),形态学开运算中的核是边长为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)中删除边界框脱离触发线的车身轮廓,轮廓的边界框是指包围轮廓的最小矩形,边界框脱离触发线是指:如果车辆行驶方向为从下至上,边界框的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倍。
步骤4.2中将第k-1帧图像中编号为n的车car(n,k-1)的块集合SUBS(n,k-1)中的块sub(x,y,k-1)跟踪到第k帧图像的步骤如下:
步骤4.2.1:设置矩形搜索区域rect,rect的中心点坐标表示为(xr,yr),如果车car(n,k-1)被标记为新车,则rect的中心点坐标等于块sub(x,y,k-1)的中心点坐标,xr等于x,yr等于y,rect的边长为WIDE/2,如果车car(n,k-1)被标记为旧车,则xr等于x+mean(n,k-1).x,yr等于y+mean(n,k-1).y,rect的边长为mean(n,k-1)的长度,其中mean(n,k-1).x和mean(n,k-1).y分别表示车car(n,k-1)的运动矢量mean(n,k-1)的X轴分量和Y轴分量;
步骤4.2.2:按下式计算块sub(x,y,k-1)与第k帧图像中矩形搜索区域rect内的每个块的匹配值:
match ( x 3 , y 3 , k ) = Σ ( zx , zy ) ∈ sub ( x , y , k - 1 ) | P ( zx + x 3 - x , zy + y 3 - y , k ) - P ( zx , zy , k - 1 ) |
式中,match(x3,y3,k)表示块sub(x,y,k-1)与第k帧图像中矩形搜索区域rect内中心点坐标为(x3,y3)的块sub(x3,y3,k)的匹配值,(zx,zy)表示块sub(x,y,k-1)中的像素的坐标,P(zx+x3-x,zy+y3-y,k)表示第k帧图像f(k)中坐标为(zx+x3-x,zy+y3-y)的像素的灰度值,P(zx,zy,k-1)表示第k-1帧图像f(k-1)中坐标为(zx,zy)的像素的灰度值,将第k帧图像中矩形搜索区域rect内的所有块中与块sub(x,y,k-1)的匹配值最小的块表示为sub(x4,y4,k);
步骤4.2.3:在第k帧差分图dif(k)中与块sub(x4,y4,k)位置和大小都对应的像素矩阵称为块sub(x4,y4,k)的差分块,如果块sub(x4,y4,k)的差分块中的所有像素的平均灰度值大于阈值T3,则将块sub(x4,y4,k)加入到车car(n,k)的块集合SUBS(n,k)中,并保存块sub(x4,y4,k)的运动矢量为(x4-x,y4-y),T3取值20~30。
步骤4.5中获取包围车car(n,k)的块集合SUBS(n,k)中所有块的顶点的凸包的步骤如下:
步骤4.5.1:将SUBS(n,k)中每一个块的4个顶点加入点集B;
步骤4.5.2:采用公知的Graham扫描法获取点集B的凸包,该凸包即包围SUBS(n,k)中所有块的凸包,点集的凸包是指一个最小凸多边形,满足点集中的点或者在多边形边上或者在其内。
步骤5.4中判断车辆能否吞并车身轮廓的步骤如下:
步骤5.4.1:如果车辆的轮廓的边界框与车身轮廓的边界框之间有交集,则车辆能吞并车身轮廓,结束判断车辆能否吞并车身轮廓,否则进入步骤5.4.2;
步骤5.4.2:如果车辆的轮廓的边界框脱离最小车长线,则车辆不能吞并车身轮廓,结束判断车辆能否吞并车身轮廓,否则进行步骤5.4.3;
边界框脱离最小车长线是指:如果车辆行驶方向为从下至上,边界框的4个顶点的Y轴坐标值均小于Y_LONG,如果车辆行驶方向为从上至下,边界框的4个顶点的Y轴坐标值均大于Y_LONG;
步骤5.4.3:如果车辆的轮廓的边界框与车身轮廓的边界框的并集的宽小于WIDE,则车辆能吞并车身轮廓。
有益效果:
1.通过画虚拟围栏的方法,圈出监控区域,使视频中非路面区域的图像不参与车辆检测,简化了场景,避免了道路两旁树木摇曳、行人走动等对车辆检测造成的干扰。
2.通过形态学开运算消除细小轮廓,有效消除摄像机抖动形成的前景区域噪声,同时使邻近车辆的前景区域分离,避免了邻近车辆之间轮廓的粘连。
3.通过将车辆图像划分为多个块,查找前一帧的块在当前帧的最佳匹配块,实现车辆在连续两帧图像间的跟踪,使同一辆车在多帧视频图像中不会被误识别成多辆车,同一帧图像中的多辆车不会相互混淆。由于块与像素的个数几乎相等,车辆块的凸包可以作为车辆的轮廓。
4.通过对车辆的块求凸包,以此凸包为车辆初始轮廓,结合车宽、最小车长等参数吞并同属本车的车身轮廓,使正在驶入监控区域的车辆的轮廓更加完整,同时避免一帧图像中一辆车被误识别为多辆车;从剩余的车身轮廓中选择较大的轮廓,作为新车初始轮廓,再吞并同属本新车的车身轮廓,使得新驶入监控区域的车辆被及时地检测出来。
附图说明
1.图1是视频多车辆轮廓检测总体流程图。
2.图2是建立坐标系以及虚拟线圈画法示意图。
3.图3是实例中第126帧背景差分图。
4.图4是实例中第126帧二值图。
5.图5是实例中第126帧前景图。
6.图6是实例中第126帧边缘图。
7.图7是实例中第126帧图像中删除脱离触发线的车身轮廓后剩余的车身轮廓。
8.图8是实例中第125帧图像中检测出来的所有车辆。
9.图9是实例中第125帧图像中检测出来的所有车辆被跟踪到第126帧图像的结果。
10.图10是实例中第126帧旧车轮廓与车身轮廓的位置关系。
11.图11是新车检测流程图
12.图12是旧车轮廓更新流程图。
13.图13是实例中第126帧图像中所有车辆轮廓检测结果。
14.图14是为实例中第126帧图像中的车辆添加填充块后的效果图。
具体实施方式
为了更好的理解本发明的技术方案,下面结合附图及某公路上的视频实例对本发明作进一步描述。该方法的总体流程图见图1,该方法实现步骤如下:
步骤1:初始化:
步骤1.1:获取一段视频,本实例中车辆行驶方向为从下到上,再从视频获取背景图像,背景图像可采用多种方式获取,例如直接拍摄法或者多帧均值法,直接拍摄法是指直接抓拍视频场景中无车的图像作为背景图像,多帧均值法是指用多帧图像的平均值图像作为背景图像,本实例中采用多帧均值法获取背景图像;
步骤1.2:以图像左上角的像素位置为原点,像素为单位长度,从左到右的方向为X轴正方向,从上到下的方向为Y轴正向,建立坐标系,本实例中坐标系见图2;
步骤1.3:用一个多边形在视频场景中圈出监控区域,该多边形称为虚拟围栏,如果车辆行驶方向为从下至上,则虚拟围栏的底部需画成水平线,该底部水平线称为入境线,如果车辆行驶方向为从上至下,则虚拟围栏的顶部需画成水平线,该顶部水平线称为入境线,入境线的Y轴坐标表示为Y_IN,本实例中虚拟围栏画法见图2,入境线的Y轴坐标Y_IN为574;
步骤1.4:获取一帧有轿车刚好完全驶入监控区域的图像,车辆刚好完全驶入监控区域是指车辆尾部紧贴入境线,在该车的车头前画一条水平线,称为最小车长线,最小车长线的Y轴坐标表示为Y_LONG,在最小车长线与入境线之间画一条水平线,称为触发线,触发线的Y轴坐标表示为Y_TOUCH,触发线与最小车长线的距离和触发线与入境线的距离之比为3:1~4:1,例如:触发线的Y轴坐标表示为Y_TOUCH,触发线与最小车长线的距离和触发线与入境线的距离之比为3:1、3.5:1或4:1,本实例中最小车长线的Y轴坐标Y_LONG为353,触发线的Y轴坐标Y_TOUCH为521,在该车两侧画2条竖直线,使2条竖直线之间的距离为该车宽度的1.3~1.5倍,例如:2条竖直线之间的距离为该车宽度的1.3、1.4或1.5倍,该竖直线称为车宽线,2条车宽线之间的距离表示为WIDE,本实例中,2条车宽线之间的距离WIDE为209,是该车宽度(该车最左边像素L点和最右边像素R点的X轴距离)的1.3倍,最小车长线、触发线、车宽线画法见图2;
步骤1.5:用变量S表示整段视频中已检测出来的车辆总数,用变量k表示正在检测的图像在视频中的帧序,第k帧图像表示为k),第k帧检测出来的车辆的集合表示为CARS(k),CARS(k)中的编号为n的车表示为car(n,k),编号n表示car(n,k)是整段视频中第n辆被检测出来的车,car(n,k)的轮廓表示为c(n,k);
设f(k)是由M×N个像素构成的像素矩阵,将f(k)划分为(M-m+1)×(N-m+1)个块,每个块是由m×m个像素构成的像素矩阵,m取值为WIDE的0.1~0.3倍,例如:m取值为WIDE的0.1、0.15或0.3倍,本实例中,M为720,N为576,m为21,中心点坐标为(x,y)的块表示为sub(x,y,k),属于编号为n的车car(n,k)的块集合表示为SUBS(n,k);
步骤1.6:令k为0,N为0,CARS(0)为空集;
步骤2:表示帧序的变量k自增1,获取第k帧图像f(k),令CARS(k)为空集;
步骤3:获取车身轮廓集合:
步骤3.1:取第k帧图像f(k)与背景图像之差的绝对值图像作为第k帧差分图dif(k),本实例中第126帧差分图dif(126)见图3;
步骤3.2:第k帧差分图dif(k)中处于监控区域内且灰度值大于阈值T1的像素称为前景像素,否则称为背景像素,令前景像素灰度值为255,背景像素灰度值为0,得到第k帧二值图binary (k),T1取值为20~50,例如,T1取值为20、30或50;本实例中T1取值为22,第126帧二值图binary(126)见图4;
步骤3.3:对binary(k)进行形态学开运算,得到第k帧前景图像ob(k),形态学开运算中的核是边长为m/2的矩形,核的参考点是核的中心点,本实例中第126帧前景图像obj(126)见图5;
形态学开运算是图像处理领域公知的算法,形态学开运算是指先腐蚀再膨胀,腐蚀是指将像素值设为与该像素对应的核覆盖下所有点中的最小值,膨胀是指将像素值设为与该像素对应的核覆盖下所有点中的最大值,核可以是任何的形状或大小,并拥有一个单独定义的参考点;
步骤3.4:采用公知的Canny边缘检测法检测第k帧前景图像ob(k)中的边缘像素点,令边缘像素点的灰度值为255,非边缘像素点的灰度值为0,得到第k帧边缘图con(k),本实例中第126帧边缘图con(126)见图6;
Canny边缘检测法是图像边缘检测领域的公知算法,该算法主要步骤如下:首先,用高斯滤波器平滑图像,然后用一阶有限差分计算梯度幅值和方向,然后对梯度幅值进行非极大值抑制,用双阈值算法检测和连接边缘,本实例中Canny边缘检测法的双阈值都取值为100。
步骤3.5:采用公知的爬虫法获取第k帧边缘图con(k)中的所有车身轮廓,第k帧图像中的车身轮廓的集合表示为BODYS(k),车身轮廓是第k帧边缘图con(k)中边缘像素点的集合,对于任意一个车身轮廓body1内的任意一个像素点D1,存在一个车身轮廓body1内的像素点D2,像素点D2是像素点D1的8邻域像素点之一,像素点D1的8邻域像素点是指与像素点D1相比X轴坐标值或Y轴坐标值相差为1的像素点;
爬虫法是一种获取图像中物体轮廓的公知方法,它采用如下规则进行处理:
(1)任取一个边缘像素点作为起始点,每次只前进一步,步距为一个象素;
(2)跨步由背景区进入目标区后各步向左转,直到穿出目标区为止;
(3)跨步由目标区进入背景区后各步向右转,直到穿出背景区为止,围绕目标物循环一周后,回到起始点,所走过的轨迹便是对象物的轮廓;
步骤3.6:从BODYS(k)中删除边界框脱离触发线的车身轮廓,轮廓的边界框是指包围轮廓的最小矩形,分别以轮廓上所有点的X轴坐标的最小值和最大值作为轮廓的边界框的左边和右边的X轴坐标,以轮廓上所有点的Y轴坐标的最小值和最大值作为轮廓的边界框的上边和下边的Y轴坐标值,边界框脱离触发线是指:如果车辆行驶方向为从下至上,边界框的4个顶点的Y轴坐标值均小于Y_TOUCH,如果车辆行驶方向为从上至下,边界框的4个顶点的Y轴坐标值均大于Y_TOUCH;
本实例中,删除脱离触发线的车身轮廓后剩余的车身轮廓见图7;
步骤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);
块的运动矢量是指块的中心点坐标减去前一帧与该块对应的块的中心点坐标得到的矢量;
本实例中,第125帧图像中的车辆集合CARS(125)中的所有车见图8,第125帧图像中的车辆集合CARS(125)中的所有车被跟踪到第126帧图像的结果见图9,第126帧图像中旧车轮廓与车身轮廓的位置关系见图10;
步骤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的凸包;点集的凸包是指一个最小凸多边形,满足该点集中的点或者在该最小凸多边形边上或者在其内。
Graham扫描法是获取点集的凸包的公知算法,首先,找到所有点中Y轴坐标最小的点,如果Y轴坐标相同,找X轴坐标最小的点.,以这个点为基准求所有点的极角,并按照极角从小到大的顺序对这些点排序,基准点排在最前,建立一个栈,初始时前3个点进栈,对于每个剩余的点,设该剩余的点的坐标为(x5,y5),栈顶的点的前一个点的坐标为(x6,y6),栈顶的点坐标为(x7,y7),若(x6-x5)*(y7-y5)–(x7-x5)*(y6-y5)为正值,则将栈顶的点出栈,直至没有点需要出栈以后将该剩余的点进栈,所有点处理完之后栈中保存的点就是凸包上的点。
步骤5.5.3:从第k帧图像的车身轮廓集合BODYS(k)中删除该车身轮廓;
步骤5.6:返回步骤5.2;更新旧车轮廓流程图见图11;
步骤6:检测新车:
如果BODYS(k)为空集,则省略该步骤;
如果第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;检测新车流程图见图12;
本实例中,第126帧图像的车辆轮廓检测结果见图13,其中编号为5的车是新车。
步骤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个顶点全被车car(n,k)的轮廓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倍,例如:阈值T2取值为m×m的0.6、0.7或0.8倍。
本实例中,T2取值为m×m的0.7倍,为第126帧图像的车辆添加填充块后的结果见图14。
步骤4.2中将第k-1帧图像中编号为n的车car(n,k-1)的块集合SUBS(n,k-1)中的块sub(x,y,k-1)跟踪到第k帧图像的步骤如下:
步骤4.2.1:设置矩形搜索区域rect,rect的中心点坐标表示为(xr,yr),如果车car(n,k-1)被标记为新车,则rect的中心点坐标等于块sub(x,y,k-1)的中心点坐标,xr等于x,yr等于y,rect的边长为WIDE/2,如果车car(n,k-1)被标记为旧车,则xr等于x+mean(n,k-1).x,yr等于y+mean(n,k-1).y,rect的边长为mean(n,k-1)的长度,其中mean(n,k-1).x和mean(n,k-1).y分别表示车car(n,k-1)的运动矢量mean(n,k-1)的X轴分量和Y轴分量;
步骤4.2.2:按下式计算块sub(x,y,k-1)与第k帧图像中矩形搜索区域rect内的每个块的匹配值:
match ( x 3 , y 3 , k ) = Σ ( zx , zy ) ∈ sub ( x , y , k - 1 ) | P ( zx + x 3 - x , zy + y 3 - y , k ) - P ( zx , zy , k - 1 ) |
式中,match(x3,y3,k)表示块sub(x,y,k-1)与第k帧图像中矩形搜索区域rect内中心点坐标为(x3,y3)的块sub(x3,y3,k)的匹配值,(zx,zy)表示块sub(x,y,k-1)中的像素的坐标,P(zx+x3-x,zy+y3-y,k)表示第k帧图像f(k)中坐标为(zx+x3-x,zy+y3-y)的像素的灰度值,P(zx,zy,k-1)表示第k-1帧图像f(k-1)中坐标为(zx,zy)的像素的灰度值,将第k帧图像中矩形搜索区域rect内的所有块中与块sub(x,y,k-1)的匹配值最小的块表示为sub(x4,y4,k);
步骤4.2.3:在第k帧差分图dif(k)中与块sub(x4,y4,k)位置和大小都对应的像素矩阵称为块sub(x4,y4,k)的差分块,如果块sub(x4,y4,k)的差分块中的所有像素的平均灰度值大于阈值T3,则将块sub(x4,y4,k)加入到车car(n,k)的块集合SUBS(n,k)中,并保存块sub(x4,y4,k)的运动矢量为(x4-x,y4-y),T3取值20~30,例如:T3取值20、25或30,本实例中,T3取值25。
步骤4.5中获取包围车car(n,k)的块集合SUBS(n,k)中所有块的顶点的凸包的步骤如下:
步骤4.5.1:将SUBS(n,k)中每一个块的4个顶点加入点集B;
步骤4.5.2:采用公知的Graham扫描法获取点集B的凸包,该凸包即包围SUBS(n,k)中所有块的凸包,
步骤5.4中判断车辆能否吞并车身轮廓的步骤如下:
步骤5.4.1:如果车辆的轮廓的边界框与车身轮廓的边界框之间有交集,则车辆能吞并车身轮廓,结束判断车辆能否吞并车身轮廓,否则进入步骤5.4.2;
步骤5.4.2:如果车辆的轮廓的边界框脱离最小车长线,则车辆不能吞并车身轮廓,结束判断车辆能否吞并车身轮廓,否则进行步骤5.4.3;
边界框脱离最小车长线是指:如果车辆行驶方向为从下至上,边界框的4个顶点的Y轴坐标值均小于Y_LONG,如果车辆行驶方向为从上至下,边界框的4个顶点的Y轴坐标值均大于Y_LONG;
步骤5.4.3:如果车辆的轮廓的边界框与车身轮廓的边界框的并集的宽小于WIDE,则车辆能吞并车身轮廓。

Claims (4)

1.一种视频多车辆轮廓检测方法,其特征在于:
步骤1:初始化:
步骤1.1:获取一段视频,再从视频获取背景图像;
步骤1.2:以图像左上角的像素位置为原点,像素为单位长度,从左到右的方向为X轴正方向,从上到下的方向为Y轴正方向,建立坐标系;
步骤1.3:用一个多边形在视频场景中圈出监控区域,该多边形称为虚拟围栏,如果车辆行驶方向为从下至上,则虚拟围栏的底部为水平线,该底部水平线称为入境线,如果车辆行驶方向为从上至下,则虚拟围栏的顶部为水平线,该顶部水平线称为入境线,入境线的Y轴坐标表示为Y_IN;
步骤1.4:获取一帧有轿车刚好完全驶入监控区域的图像,车辆刚好完全驶入监控区域是指车辆尾部紧贴入境线,在该车的车头前画一条水平线,称为最小车长线,最小车长线的Y轴坐标表示为Y_LONG,在最小车长线与入境线之间画一条水平线,称为触发线,触发线的Y轴坐标表示为Y_TOUCH,触发线与最小车长线的距离和触发线与入境线的距离之比为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)中处于监控区域内且灰度值大于阈值T1的像素称为前景像素,否则称为背景像素,令前景像素灰度值为255,背景像素灰度值为0,得到第k帧二值图binary (k),T1可取值为20~50;
步骤3.3:,对第k帧二值图binary(k)进行形态学开运算,得到第k帧前景图像obj(k),形态学开运算中的核是边长为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)中删除边界框脱离触发线的车身轮廓,轮廓的边界框是指包围轮廓的最小矩形,边界框脱离触发线是指:如果车辆行驶方向为从下至上,边界框的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倍。
2.如权利要求1所述的视频多车辆轮廓检测方法,其特征在于步骤4.2中将第k-1帧图像中编号为n的车car(n,k-1)的块集合SUBS(n,k-1)中的块sub(x,y,k-1)跟踪到第k帧图像的步骤如下:
步骤4.2.1:设置矩形搜索区域rect,rect的中心点坐标表示为(xr,yr),如果车car(n,k-1)被标记为新车,则rect的中心点坐标等于块sub(x,y,k-1)的中心点坐标,xr等于x,yr等于y,rect的边长为WIDE/2,如果车car(n,k-1)被标记为旧车,则xr等于x+mean(n,k-1).x,yr等于y+mean(n,k-1).y,rect的边长为mean(n,k-1)的长度,其中mean(n,k-1).x和mean(n,k-1).y分别表示车car(n,k-1)的运动矢量mean(n,k-1)的X轴分量和Y轴分量;
步骤4.2.2:按下式计算块sub(x,y,k-1)与第k帧图像中矩形搜索区域rect内的每个块的匹配值:
match ( x 3 , y 3 , k ) = Σ ( zx , zy ) ∈ sub ( x , y , k - 1 ) | P ( zx + x 3 - x , zy + y 3 - y , k ) - P ( zx , zy , k - 1 ) |
式中,match(x3,y3,k)表示块sub(x,y,k-1)与第k帧图像中矩形搜索区域rect内中心点坐标为(x3,y3)的块sub(x3,y3,k)的匹配值,(zx,zy)表示块sub(x,y,k-1)中的像素的坐标,P(zx+x3-x,zy+y3-y,k)表示第k帧图像f(k)中坐标为(zx+x3-x,zy+y3-y)的像素的灰度值,P(zx,zy,k-1)表示第k-1帧图像k-1)中坐标为(zx,zy)的像素的灰度值,将第k帧图像中矩形搜索区域rect内的所有块中与块sub(x,y,k-1)的匹配值最小的块表示为sub(x4,y4,k);
步骤4.2.3:在第k帧差分图dif(k)中与块sub(x4,y4,k)位置和大小都对应的像素矩阵称为块sub(x4,y4,k)的差分块,如果块sub(x4,y4,k)的差分块中的所有像素的平均灰度值大于阈值T3,则将块sub(x4,y4,k)加入到车car(n,k)的块集合SUBS(n,k)中,并保存块sub(x4,y4,k)的运动矢量为(x4-x,y4-y),T3取值20~30。
3.如权利要求1所述的视频多车辆轮廓检测方法,其特征在于步骤4.5中获取包围车car(n,k)的块集合SUBS(n,k)中所有块的顶点的凸包的步骤如下:
步骤4.5.1:将SUBS(n,k)中每一个块的4个顶点加入点集B;
步骤4.5.2:采用公知的Graham扫描法获取点集B的凸包,该凸包即包围SUBS(n,k)中所有块的凸包,点集的凸包是指一个最小凸多边形,满足点集中的点或者在多边形边上或者在其内。
4.如权利要求1所述的视频多车辆轮廓检测方法,其特征在于步骤5.4中判断车辆能否吞并车身轮廓的步骤如下:
步骤5.4.1:如果车辆的轮廓的边界框与车身轮廓的边界框之间有交集,则车辆能吞并车身轮廓,结束判断车辆能否吞并车身轮廓,否则进入步骤5.4.2;
步骤5.4.2:如果车辆的轮廓的边界框脱离最小车长线,则车辆不能吞并车身轮廓,结束判断车辆能否吞并车身轮廓,否则进行步骤5.4.3;
边界框脱离最小车长线是指:如果车辆行驶方向为从下至上,边界框的4个顶点的Y轴坐标值均小于Y_LONG,如果车辆行驶方向为从上至下,边界框的4个顶点的Y轴坐标值均大于Y_LONG;
步骤5.4.3:如果车辆的轮廓的边界框与车身轮廓的边界框的并集的宽小于WIDE,则车辆能吞并车身轮廓。
CN201210202508.0A 2012-06-19 2012-06-19 一种视频多车辆轮廓检测方法 Expired - Fee Related CN102799857B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210202508.0A CN102799857B (zh) 2012-06-19 2012-06-19 一种视频多车辆轮廓检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210202508.0A CN102799857B (zh) 2012-06-19 2012-06-19 一种视频多车辆轮廓检测方法

Publications (2)

Publication Number Publication Date
CN102799857A true CN102799857A (zh) 2012-11-28
CN102799857B CN102799857B (zh) 2014-12-17

Family

ID=47198957

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210202508.0A Expired - Fee Related CN102799857B (zh) 2012-06-19 2012-06-19 一种视频多车辆轮廓检测方法

Country Status (1)

Country Link
CN (1) CN102799857B (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103310465A (zh) * 2013-06-27 2013-09-18 东南大学 一种基于马尔科夫随机场的车辆遮挡处理方法
CN104933430A (zh) * 2015-06-03 2015-09-23 北京好运到信息科技有限公司 一种用于移动终端的交互式图像处理方法及系统
CN105160328A (zh) * 2015-09-17 2015-12-16 国家电网公司 一种基于二值化图像的人体轮廓识别方法
CN106558067A (zh) * 2015-09-25 2017-04-05 株式会社理光 对象跟踪方法、装置和系统
CN106599918A (zh) * 2016-12-13 2017-04-26 开易(深圳)科技有限公司 车辆追踪方法及系统
WO2017117801A1 (zh) * 2016-01-08 2017-07-13 富士通株式会社 边界框生成装置及方法
CN107194402A (zh) * 2017-04-02 2017-09-22 南京汇川图像视觉技术有限公司 一种并行细化骨架提取方法
CN107664644A (zh) * 2017-09-30 2018-02-06 电子科技大学 一种基于机器视觉的物件表观自动检测装置及方法
CN109615656A (zh) * 2018-11-20 2019-04-12 哈尔滨理工大学 一种基于模型搜索的脊柱定位方法
CN110033455A (zh) * 2018-01-11 2019-07-19 上海交通大学 一种从视频中提取目标物体信息的方法
CN110930720A (zh) * 2019-11-28 2020-03-27 广州杰赛科技股份有限公司 一种车辆识别方法及装置
CN111469765A (zh) * 2020-04-16 2020-07-31 苏州立唐智能科技有限公司 一种具有去除车身阴影功能的检测系统及其方法
CN111723845A (zh) * 2020-05-19 2020-09-29 浙江工业大学 一种基于Mask轮廓的细胞图像分割方法
CN115375685A (zh) * 2022-10-25 2022-11-22 临沂天元混凝土工程有限公司 用于混凝土原料中的砂石粒径异常检测方法
CN115457448A (zh) * 2022-11-09 2022-12-09 安徽米娱科技有限公司 一种视频关键帧智能提取系统
CN115985100A (zh) * 2022-12-30 2023-04-18 云控智行科技有限公司 一种路侧设备电子围栏区域的生成方法、装置及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060200307A1 (en) * 2005-03-04 2006-09-07 Lockheed Martin Corporation Vehicle identification and tracking system
CN1984236A (zh) * 2005-12-14 2007-06-20 浙江工业大学 一种交通流信息视频检测中的特征采集方法
CN101419754A (zh) * 2007-10-24 2009-04-29 北京万集科技有限责任公司 一种基于视频的闯红灯检测方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060200307A1 (en) * 2005-03-04 2006-09-07 Lockheed Martin Corporation Vehicle identification and tracking system
CN1984236A (zh) * 2005-12-14 2007-06-20 浙江工业大学 一种交通流信息视频检测中的特征采集方法
CN101419754A (zh) * 2007-10-24 2009-04-29 北京万集科技有限责任公司 一种基于视频的闯红灯检测方法及系统

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103310465A (zh) * 2013-06-27 2013-09-18 东南大学 一种基于马尔科夫随机场的车辆遮挡处理方法
CN103310465B (zh) * 2013-06-27 2016-02-03 东南大学 一种基于马尔科夫随机场的车辆遮挡处理方法
CN104933430B (zh) * 2015-06-03 2018-10-09 北京好运到信息科技有限公司 一种用于移动终端的交互式图像处理方法及系统
CN104933430A (zh) * 2015-06-03 2015-09-23 北京好运到信息科技有限公司 一种用于移动终端的交互式图像处理方法及系统
CN105160328B (zh) * 2015-09-17 2018-08-03 国家电网公司 一种基于二值化图像的人体轮廓识别方法
CN105160328A (zh) * 2015-09-17 2015-12-16 国家电网公司 一种基于二值化图像的人体轮廓识别方法
CN106558067A (zh) * 2015-09-25 2017-04-05 株式会社理光 对象跟踪方法、装置和系统
WO2017117801A1 (zh) * 2016-01-08 2017-07-13 富士通株式会社 边界框生成装置及方法
CN106599918A (zh) * 2016-12-13 2017-04-26 开易(深圳)科技有限公司 车辆追踪方法及系统
CN106599918B (zh) * 2016-12-13 2019-12-17 开易(深圳)科技有限公司 车辆追踪方法及系统
CN107194402A (zh) * 2017-04-02 2017-09-22 南京汇川图像视觉技术有限公司 一种并行细化骨架提取方法
CN107194402B (zh) * 2017-04-02 2020-07-03 南京汇川图像视觉技术有限公司 一种并行细化骨架提取方法
CN107664644A (zh) * 2017-09-30 2018-02-06 电子科技大学 一种基于机器视觉的物件表观自动检测装置及方法
CN107664644B (zh) * 2017-09-30 2020-08-11 电子科技大学 一种基于机器视觉的物件表观自动检测装置及方法
CN110033455A (zh) * 2018-01-11 2019-07-19 上海交通大学 一种从视频中提取目标物体信息的方法
CN110033455B (zh) * 2018-01-11 2023-01-03 上海交通大学 一种从视频中提取目标物体信息的方法
CN109615656A (zh) * 2018-11-20 2019-04-12 哈尔滨理工大学 一种基于模型搜索的脊柱定位方法
CN110930720A (zh) * 2019-11-28 2020-03-27 广州杰赛科技股份有限公司 一种车辆识别方法及装置
CN110930720B (zh) * 2019-11-28 2020-11-13 广州杰赛科技股份有限公司 一种车辆识别方法及装置
CN111469765A (zh) * 2020-04-16 2020-07-31 苏州立唐智能科技有限公司 一种具有去除车身阴影功能的检测系统及其方法
CN111723845A (zh) * 2020-05-19 2020-09-29 浙江工业大学 一种基于Mask轮廓的细胞图像分割方法
CN115375685A (zh) * 2022-10-25 2022-11-22 临沂天元混凝土工程有限公司 用于混凝土原料中的砂石粒径异常检测方法
CN115457448A (zh) * 2022-11-09 2022-12-09 安徽米娱科技有限公司 一种视频关键帧智能提取系统
CN115457448B (zh) * 2022-11-09 2023-01-31 安徽米娱科技有限公司 一种视频关键帧智能提取系统
CN115985100A (zh) * 2022-12-30 2023-04-18 云控智行科技有限公司 一种路侧设备电子围栏区域的生成方法、装置及设备

Also Published As

Publication number Publication date
CN102799857B (zh) 2014-12-17

Similar Documents

Publication Publication Date Title
CN102799857A (zh) 一种视频多车辆轮廓检测方法
US11240471B2 (en) Road vertical contour detection
Barnes et al. Find your own way: Weakly-supervised segmentation of path proposals for urban autonomy
US11093763B2 (en) Onboard environment recognition device
Soquet et al. Road segmentation supervised by an extended v-disparity algorithm for autonomous navigation
Lee A machine vision system for lane-departure detection
US20160304098A1 (en) Road surface gradient detection device
KR102104005B1 (ko) 자동차의 도로변의 물체를 검출하는 방법, 컴퓨팅 장치, 운전자 보조 시스템 및 자동차
US20190278990A1 (en) Heterogeneous convolutional neural network for multi-problem solving
US20150262365A1 (en) Image processing device and image processing method
Kubota et al. A global optimization algorithm for real-time on-board stereo obstacle detection systems
Zhang et al. An efficient road detection method in noisy urban environment
CN104508708A (zh) 道路环境识别装置
CN108022249A (zh) 一种遥感视频卫星运动车辆目标感兴趣区域自动提取方法
JPWO2017115732A1 (ja) 画像処理装置、物体認識装置、機器制御システム、画像処理方法及び画像処理プログラム
CN102043957A (zh) 基于图像凹点的车辆分割方法
JP2005214914A (ja) 移動速度検出装置および移動速度検出方法
Marita et al. Stop-line detection and localization method for intersection scenarios
Park Lane detection algorithm based on Hough transform for high-speed self driving vehicles
Ma et al. Vision-based pedestrian detection-reliable pedestrian candidate detection by combining ipm and a 1d profile
Ma et al. A real time object detection approach applied to reliable pedestrian detection
Vatavu et al. Real-time modeling of dynamic environments in traffic scenarios using a stereo-vision system
JP6389119B2 (ja) 車線境界線認識装置
CN103136935A (zh) 在有遮挡情况下跟踪车辆的方法
Park et al. Lane estimation by particle-filtering combined with likelihood computation of line boundaries and motion compensation

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20141217

Termination date: 20170619