智慧交通day00-项目简介

简介: 汽车的日益普及在给人们带来极大便利的同时,也导致了拥堵的交通路况,以及更为频发的交通事故。智能交通技术已成为推动现代技术交通技术发展的重要力量,智能交通不仅能够提供实时的交通路况信息,帮助交通管理者规划管理策略,而且还能优化出行者的出行策略。还可以减轻交通道路的堵塞情况,降低交通事故的发生概率,提高道路运行的安全系数。

815902569f6a467a99304f9ac1482386.png


汽车的日益普及在给人们带来极大便利的同时,也导致了拥堵的交通路况,以及更为频发的交通事故。智能交通技术已成为推动现代技术交通技术发展的重要力量,智能交通不仅能够提供实时的交通路况信息,帮助交通管理者规划管理策略,而且还能优化出行者的出行策略。还可以减轻交通道路的堵塞情况,降低交通事故的发生概率,提高道路运行的安全系数。


本项目分两个模块:


  • 一个是基于视频的车辆跟踪及流量统计,是一个可跟踪路面实时车辆通行状况,并逐帧记录不同行车道车流量数目的深度学习项目,在视频中可看出每个车辆的连续帧路径,该项目可拓展性强,可根据企业业务外接计费结算系统、LED显示系统、语音播报系统、供电防雷系统等,


  • 另一个是车道线检测项目,是实现自动驾驶的首要任务,广泛应用于自动驾驶厂家,能够根据车载摄像头的输入,对安全驾驶区域进行预判,提醒驾驶员进行安全驾驶,减少交通事故的发生。


该项目的架构图如下所示:


8457ca58494145479685a523721abac1.png


  • 用户层:通过摄像头人工选择视频送入服务层中进行处理,处理完成后可输出经渲染后的视频,或触发报警装置


  • 服务层:主要包含两个模块,


  • 一是车辆追踪及计数,该模块模块一对输入的视频进行处理,使用yoloV3模型进行目标检测,然后使用SORT进行目标追踪,使用卡尔曼滤波器进行目标位置预测,并利用匈牙利算法对比目标的相似度,完成车辆目标追踪,利用虚拟线圈的思想实现车辆目标的计数,并根据计数完成车道拥堵的判断;


  • 另一个是车道线的检测,该模块使用张氏较正法对相机进行较正,利用较正结果对图像去畸变,然后利用边缘与颜色提取车道线,利用仿射变换转换成鸟瞰图,并利用直方图和滑动窗口的算法精确定位车道线,利用最小二乘法进行拟合,实现车道线的检测,并计算车辆偏离车道中心的距离,触发报警装置。


  • 效果展示:

e7b7f16a9d1a4f37a98a67c1d1a59664.png


2.环境安装


该项目中使用的工具包包含以下:


NumPy 是使用 Python 进行科学计算的基础包。


Numba 是一个开源 JIT 编译器,它将 Python 和 NumPy 代码的子集转换为快速机器码。


SciPy 是数学、科学和工程的开源软件。SciPy 库依赖于 NumPy,它提供方便快捷的 N 维数组操作。


h5py 从 Python 读取和写入 HDF5文件。


pandas 用于数据分析、时间序列和统计的强大的数据结构。


opencv-python 用于 Python 的预构建 OpenCV 包。


moviepy 用于进行视频处理的工具包


Filterpy 实现了卡尔曼滤波器和粒子滤波器等


具体版本见requirements文件中。


安装方法:


# 创建虚拟环境
conda create -n dlcv python
# 激活虚拟环境
source activate dlcv
# 激活虚拟环境(window)
activate dlcv
# 安装对应的工具包
pip install -r requirements.txt
requirements.txt 见文末


总结


1.智慧交通中包含两个模块:多目标车辆跟踪及流量统计和车道线检测


2.智慧交通项目分为用户层和服务层,用户层进行视频或摄像头的操作,服务层对视频进行处理,完成多目标车辆的跟踪及车流量的统计和车道线检测


requirements.txt:


amqp==2.5.2
billiard==3.6.3.0
celery==4.4.2
certifi==2019.11.28
chardet==3.0.4
click==7.1.1
colorama==0.3.9
cycler==0.10.0
Cython==0.29.19
decorator==4.4.2
Django==2.2.10
django-redis==4.11.0
filterpy==1.4.5
fire==0.1.3
Flask==1.1.1
h5py==2.8.0
idna==2.8
imageio==2.8.0
imageio-ffmpeg==0.4.1
importlib-metadata==1.6.0
imutils==0.5.3
itsdangerous==1.1.0
Jinja2==2.11.1
Kalman==0.1.3
kiwisolver==1.1.0
kombu==4.6.8
llvmlite==0.31.0
MarkupSafe==1.1.1
matplotlib==2.2.3
moviepy==1.0.1
numba==0.39.0
numpy==1.15.4
opencv-python==3.4.3.18
pandas==0.23.4
Pillow==7.0.0
proglog==0.1.9
protobuf==3.11.3
pyparsing==2.4.6
python-dateutil==2.8.1
pytz==2019.3
redis==3.4.1
requests==2.21.0
scipy==1.1.0
six==1.14.0
sqlparse==0.3.1
tensorboardX==1.6
torch==0.4.1
torchvision==0.2.1
tqdm==4.29.1
urllib3==1.24.3
vine==1.3.0
Werkzeug==1.0.0
zipp==3.1.0


目录
相关文章
|
7月前
|
机器学习/深度学习 TensorFlow API
ensorFlow 智能移动项目:6~10(3)
ensorFlow 智能移动项目:6~10(3)
63 0
|
7月前
|
机器学习/深度学习 算法 TensorFlow
ensorFlow 智能移动项目:6~10(5)
ensorFlow 智能移动项目:6~10(5)
41 0
|
6月前
|
分布式计算 数据可视化 大数据
于SpringBoot+大数据城市景观画像可视化设计和实现
于SpringBoot+大数据城市景观画像可视化设计和实现
|
4月前
|
监控 数据可视化 前端开发
【前端】政务服务大数据可视化监控平台(源码+html+css+js)
【前端】政务服务大数据可视化监控平台(源码+html+css+js)
|
7月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的安康学院新型冠状病毒肺炎疫情防控专题网站的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的安康学院新型冠状病毒肺炎疫情防控专题网站的详细设计和实现(源码+lw+部署文档+讲解等)
|
7月前
|
传感器 数据采集 监控
基于Springcloud可视化项目:智慧工地可视化大数据云平台源码
终端层,充分利用物联网技术和移动应用提高现场管控能力。通过传感器、摄像头等终端设备,实现对项目建设过程的实时监控、智能感知、数据采集和高效协同,提高作业现场的管理能力。
121 5
|
7月前
|
人工智能 TensorFlow 算法框架/工具
ensorFlow 智能移动项目:6~10(6)
ensorFlow 智能移动项目:6~10(6)
34 0
|
7月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
ensorFlow 智能移动项目:6~10(4)
ensorFlow 智能移动项目:6~10(4)
56 0
|
7月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
ensorFlow 智能移动项目:6~10(2)
ensorFlow 智能移动项目:6~10(2)
50 0
|
7月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
ensorFlow 智能移动项目:6~10(1)
ensorFlow 智能移动项目:6~10(1)
60 0