点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

高速公路场景基于计算机视觉的车辆检测和流量统计

1、文章信息

《Vision-based vehicle detection and counting system using deep learning in highway scenes》

长安大学宋焕生老师团队2019年发在European Transport Research Review上的一篇论文成果。

2、摘要

针对图像中车辆尺寸变化的问题,本文提出了一种基于视觉的车辆检测与计数系统。一个新的高清公路车辆数据集,共11129张图像包含57290个注释实例。与现有的公开数据集相比,所提出的数据集包含标注有微小目标的图像,为基于深度学习的车辆检测提供了完整的数据基础。在所提出的车辆检测与计数系统中,首先提取图像中的高速公路路面,然后采用新的分割方法将其分为远端区和近端区,该方法对提高车辆检测效果至关重要。在此基础上,将上述两个区域放入YOLOv3网络中,以检测车辆的类型和位置。最后,利用ORB算法得到车辆的运动轨迹,以此来判断车辆的行驶方向,得到不同车辆的流量。利用多个基于不同场景的高速公路监控视频对所提出的方法进行了验证。实验结果表明,采用本文提出的分割方法可以得到更高的检测精度,特别是对于小型车辆目标的检测。此外,本文所描述的新策略在判断驾驶方向和计算车辆数量方面表现出显著的效果。

3、简介

高速公路监控视频场景中的车辆检测与统计对于高速公路智能交通管理与控制具有重要意义。随着交通监控摄像头的大量安装,已经获得了庞大的交通视频流数据库进行分析。通常,在高视角下,可以考虑更远的路面。在该视角下,车辆的物体尺寸变化较大,并且远离道路的小物体的检测精度较低。面对复杂的摄像机场景,有效解决上述问题并进一步应用是至关重要的。本文针对以上问题提出了可行的解决方案,并将车辆检测结果应用于多目标跟踪和车辆计数。

4、创新点

  • 数据集:建立了高速公路车辆的大规模高清数据集,该数据集可以提供许多不同的车辆目标,这些目标在高速公路监控摄像机捕获的各种场景下进行了完全标注。在处理车辆尺寸变化时,该数据集可用于评估许多车辆检测算法的性能。

  • 目标检测:为了提高车辆检测的准确性,提出了一种在高速公路场景下检测小目标的方法。提取公路表面区域,分为远端区域和近端区域,并分别放入卷积网络进行车辆检测。

  • 目标跟踪:提出了一种针对高速公路场景的多目标跟踪与轨迹分析方法。通过ORB算法提取并匹配检测目标特征点,并确定道路检测线以确定车辆的移动方向和统计交通流量。

5、主体内容

本文结构完整,前后联系紧密,主体内容就是从上述创新点的三大块层层递进进行解释和说明,具体的研究方法流程示意图如下图。首先,输入交通场景的视频数据。然后,对图像的道路表面区域进行提取和分割。接着,采用YOLOv3深度学习目标检测方法对高速公路交通场景中的车辆目标进行检测。最后,对检测到的车辆框进行ORB特征提取,完成多目标跟踪,获取车辆交通信息。

车辆数据集

文中是整理了前人的6类车辆数据集,分别为the KITTI benchmark dataset(http://www.cvlibs.net/datasets/kitti/ ) 、the Tsinghua-Tencent Traffic-Sign Dataset(http://cg.cs.tsinghua.edu.cn/traffic-sign/ )、the Stanford Car Dataset(http://ai.stanford.edu/~jkrause/cars/car_dataset.html )、the Comprehensive Cars Dataset(http://mmlab.ie.cuhk.edu.hk/datasets/comp_cars/index.html )、the BIT-Vehicle Dataset(http://iitlab.bit.edu.cn/mcislab/vehicledb )、the Traffic and Congestions (TRANCOS) dataset(http://agamenon.tsc.uah.es/Personales/rlopez/data/trancos/ )。虽然以往已经公开了大量数据集,但是针对中国车辆、中国高速公路交通场景以及提供大量完整的标注的高质量的数据集几乎没有。所以作者提出了他的高速公路监控视频数据集(http://drive.google.com/open?id=1li858elZvUgss8rC_yDsb5bDfiRyhdrX 谷歌云盘下载),数据集图片来自中国杭州的高速公路监控视频。这些图像覆盖了公路的远处,包含了比例发生巨大变化的车辆。数据集图像是从23个不同场景、不同时间和不同照明条件的监控摄像机中捕获的。该数据集将车辆分为三类:小汽车(42.17%)公共汽车(7.74%)卡车(50.09%),以及其他具体情况如下图。最后作者为了展示自己数据集的优势,将数据集中的注释实例数与PASCAL VOC,ImageNet和COCO数据集进行了对比,如下图所示。

目标检测

检测图像预处理-道路表面提取和分割

道路表面提取和分割的流程如下图所示:①使用高斯混合模型(GMM)对前500帧图像进行背景提取(由于背景占大多数时间,有更多的数据支持背景分布,更易检测);②使用高斯滤波(Gaussian filter)和MeanShift算法分别对提取图像的像素点和颜色进行平滑处理;③使用泛洪填充算法(Diffuse fill algorithm)对道路表面区域进行颜色填充(类似于Windows画图工具中的油漆桶功能);④通过图像空洞填充形态扩展操作更完整地提取路面;⑤对提取的道路表面进行分割。

为了更加生动形象地展示道路表面提取的过程,本文进行了相应的图解:(a)原始图像;(b)前景图像;(c)背景图像;(d)平滑处理后图像;(e)颜色填充后图像;(f)道路表面区域遮罩。

按照上面的流程进行道路表面区域提取,可以得到下图所示三个场景的提取结果。

其中,需要重点介绍的关键操作是图像分割处理(系统工程思考方法),将图像分为小物体检测区域和大物体检测区域(基于物体尺寸的变化会加大检测难度的考虑),分别输送到卷积神经网络进行检测,从而能够大幅度提高检测精度 。具体操作是将图像按照高度分为5块,靠近坐标原点的1/5区域作为远端区(小物体检测区域),剩下的4/5区域作为近端区(大物体检测区域),如下图所示。

车辆检测-yolov3

对于yolov3的原理介绍可以参见话题“计算机视觉与交通”第二期。Yolov3网络有三个输出尺寸,这三个尺寸分支最终会被合并。其中,浅层特征是用来检测小物体,深层特征是用来检测大物体(差别在感受野,浅层网络特征感受野小)。输入为分割处理后的图像(分辨率为832*832,并不是默认的416*416),最终输出为检测目标的中心坐标、置信度和类别。本文的车辆检测模型能够检测三种类型车辆,分别为小汽车(绿色框)、公交(蓝色框)和卡车(樱红色框),如下图所示。

目标跟踪

多目标跟踪-ORB

整个多目标跟踪的流程如下图所示,输入为yolov3的检测结果,中间经历特征点提取和特征点匹配,最后实现对车辆的连续跟踪。这里需要提一下,采用基于目标检测的跟踪方法的原因,这种方法能够处理新目标的出现和旧目标的消失(这也是该方法吃香的原因)。关于ORB算法的原理,可以参看论文ORB: an efficient alternative to SIFT or SURF。通过多目标跟踪可得下图所示结果示例。

6、结果和分析

本文在图像正中间位置添加了一道虚拟检测线,用于车流量的统计和车辆方向的判断,如下图所示红线。

最后的结果分析部分比较常规,也是从整个模型的精度速度两个方面进行比较说明。从结果来看,该文提出的方法检测精度已经非常高了,特别是召回率能达到0.89,处理速度也是比较快的,能够达到实时性的要求,个人认为有一定的实际运用价值。下面就是对文中结果的罗列,第一个表格为网络模型整体的精度,第二个表格为三个不同场景下的结果。

本期编辑:大连理工大学 龚云海

邮箱:gongyunhai@mail.dlut.edu.cn

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。

下载3

在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

揭晓高速公路场景下计算机视觉与交通的秘密相关推荐

  1. 动态场景下的轨迹规划(轨迹生成/代码实现/未来挑战)!

    作者 | Young 编辑 | 半杯茶的小酒杯 点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨卷干货,即可获取 点击进入→自动驾驶之心[轨迹预测]技术交流群 后台回复[轨迹预 ...

  2. 复杂场景下智能汽车目标检测心得体会

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 引言 一.复杂背景目标检测的复杂是什么? 二.目标检测环境的复杂性包含哪些? 三.复杂场景目标检测的目标复杂性包含哪些? 四 ...

  3. 计算机视觉在交通领域,主要有哪几方面的应用?

    计算机视觉在交通领域主要有如下几个方面的应用:第一个是感知,既车辆的检测,第二个是车辆身份的识别,第三是车辆身份的比对,第四个是车辆的行为分析,第五个是驾控,也就是现在非常火的汽车辅助驾驶与无人驾驶. ...

  4. YOLOv5在无人机/遥感场景下做旋转目标检测时进行的适应性改建详解(踩坑记录)...

    作者丨略略略@知乎(已授权) 来源丨https://zhuanlan.zhihu.com/p/358441134 编辑丨极市平台 文章开头直接放上我自己的项目代码: https://github.co ...

  5. 高速场景下自动驾驶车辆定位方法综述

    文章:A Survey of Localization Methods for Autonomous Vehicles in Highway Scenarios 作者:Johann Laconte   ...

  6. 一种公路场景下基于视觉的车辆检测和计数系统

    1 文章信息 本次介绍的是题目为<Vision-based vehicle detection and counting system using deep learning in highwa ...

  7. 特定场景下Yolo改进算法:Poly-Yolo

    论文名称:Poly-YOLO: higher speed, more precise detection and instance segmentation for YOLOv3 论文地址:https ...

  8. 从CV到ML 直播场景下新技术的应用

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/vn9PLgZvnPs1522s82g/article/details/82392646 本文来自花椒 ...

  9. OpenYurt:延伸原生 Kubernetes 到边缘场景下的落地实践

    作者 | 何淋波(新胜) 来源|阿里巴巴云原生公众号 随着云原生技术的逐步成熟,阿里云容器服务团队在具体落地实践过程中不断探索云原生技术的应用边界.同时随着物联网和 5G 的迅猛发展,传统的边缘计算架 ...

最新文章

  1. LeetCode 45跳跃游戏46全排列
  2. WCF学习笔记之序列化
  3. 电脑文件夹可以分屏的软件_电脑上什么便签软件可以添加音频?
  4. Android N 去电流程,【私人备忘录】Android P 去电代码流程
  5. 台式计算机计量单位,计算机常见计量单位解析
  6. LINUX脚本中如何判断相等
  7. Chrome浏览器的Network面板介绍
  8. Sqlserver2008数据库可疑文件
  9. 怎么运行java程序_怎么运行java程序?运行java程序的一般步骤?
  10. 西瓜数据集介绍以及获取。
  11. gp和mysql数据库_gp数据库 连接
  12. python遍历json_python3如何遍历json数据
  13. 修改Linux文件格式为unix
  14. 【C++OJ多重继承与虚拟继承】商旅信用卡(多重继承)
  15. 老猿Python博客文章目录索引
  16. 基于微博平台的python爬虫数据采集,非常简单的小案例!
  17. 【51CTO学院三周年】初识51cto到习惯打开51cto
  18. 新颖的自我介绍_新颖一分钟自我介绍4篇
  19. 使用EasyExcel导入、根据模板下载(附前后端代码)
  20. 从0开始学习 GitHub 系列之「04.向GitHub 提交代码」----转载自stormzhang 原创文章

热门文章

  1. 论坛社区做推广要精心的策划
  2. 【原】开源——基于文件驱动的站点开发
  3. Nginx——upstream参数
  4. 干掉 Postman?测试接口直接生成API文档,这工具真香!
  5. 一个项目在启动前都应该明确哪些事
  6. 真香!20张图揭开「队列」的迷雾,一目了然
  7. 浓缩精华的架构演进过程,我连看了六遍!
  8. 计算机视觉算法工程师(旷视、商汤、智云、海康)面试总结
  9. 使用深度神经网络进行自动呼叫评分(一)
  10. 电商系统如何做搜索引擎?