智慧交通day00-项目简介

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

本项目分两个模块:

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

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

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

  • 用户层:通过摄像头或人工选择视频送入服务层中进行处理,处理完成后可输出经渲染后的视频,或触发报警装置
  • 服务层:主要包含两个模块,
    • 一是车辆追踪及计数,该模块模块一对输入的视频进行处理,使用yoloV3模型进行目标检测,然后使用SORT进行目标追踪,使用卡尔曼滤波器进行目标位置预测,并利用匈牙利算法对比目标的相似度,完成车辆目标追踪,利用虚拟线圈的思想实现车辆目标的计数,并根据计数完成车道拥堵的判断;
    • 另一个是车道线的检测,该模块使用张氏较正法对相机进行较正,利用较正结果对图像去畸变,然后利用边缘与颜色提取车道线,利用仿射变换转换成鸟瞰图,并利用直方图滑动窗口的算法精确定位车道线,利用最小二乘法进行拟合,实现车道线的检测,并计算车辆偏离车道中心的距离,触发报警装置。
  • 效果展示

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.txtrequirements.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
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/469765.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Moblin MID开发学习笔记 - application launcher安装过程

(参照http://test.moblin.org/projects/application-launcher)a) 安装git:在Target下打开Terminal:# apt-get install git-coreb) 安装Genesis:(http://test.moblin.org/projects/genesis-application-lifecycle-manager)在Target下打开Terminal:# cd /usr/src/# git…

智慧交通day01-算法库01:numba

1 numba介绍 numba是一个用于编译Python数组和数值计算函数的编译器,这个编译器能够大幅提高直接使用Python编写的函数的运算速度。 numba使用LLVM编译器架构将纯Python代码生成优化过的机器码,通过一些添加简单的注解,将面向数组和使用大量…

链表c++实现一

#include <iostream>using namespace std; typedef char nodeEntry; struct Node{ //数据成员 nodeEntry data; Node* next; //构建函数 Node(); Node(nodeEntry item,Node* link NULL);}; Node::Node(){ next NULL;} Node::Node(nodeEntry item,Node* link){ data it…

计算机语言恢复,win10系统找回消失不见语言栏的恢复方法

win10系统使用久了&#xff0c;好多网友反馈说关于对win10系统找回消失不见语言栏设置的方法&#xff0c;在使用win10系统的过程中经常不知道如何去对win10系统找回消失不见语言栏进行设置&#xff0c;有什么好的办法去设置win10系统找回消失不见语言栏呢&#xff1f;在这里小编…

MID开发笔记

RK:1 服务器&#xff1a;192.168.1.402 登录服务器命令:ssh softwin192.168.1.40 softwincn&#xff1b;界面在places ->connect to server,选择ssh&#xff0c;输入地址跟密钥即可。3 git中删除分支 git branch -D xxx&#xff0c;git log可以查看更新的信…

智慧交通day01-算法库02:imutils

1.imutils功能简介 imutils是在OPenCV基础上的一个封装&#xff0c;达到更为简结的调用OPenCV接口的目的&#xff0c;它可以轻松的实现图像的平移&#xff0c;旋转&#xff0c;缩放&#xff0c;骨架化等一系列的操作。 安装方法&#xff1a; pip install imutils在安装前应确…

linux 常用操作指令(随时更新)

ls: 查看当前目录下文件列表 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录&#xff0c;包括隐藏的a(all) mkdir 创建目录 -p 创建目录&#xff0c;若无父目录&#xff0c;则创建p(parent) cd 切换目录 touch 创建…

北京中软国际软件测试面试,中软国际软件测试面试题 2012年中软国际软件测试笔试题...

一&#xff0e;简答题&#xff1a;(60分)1. 写出软件测试的基本流程。(2. 分别用等价类划分和边界值方法设计测试用例测试密码域。要求密码必须是数字或字母且必须大于6位小于15位。(6分)3. 用SQL语句查询前十条记录&#xff1f;(6分)4. 什么是唯一索引&#xff0c;非唯一索引&…

16进制数组转字符串

修改函数原型&#xff0c;确保每次malloc后可以释放堆控件 char * HexToString(char *str,unsigned char Hex[],unsigned char lenth) {unsigned char i0,j0;unsigned char tema,temp;//char *str(char*)malloc(lenth*2);for(i0;i<lenth;i){tema(Hex[i]>>4)&0x0F;…

智慧交通day01-算法库03:cv.dnn

1.DNN模块 1.1. 模块简介 OpenCV中的深度学习模块&#xff08;DNN&#xff09;只提供了推理功能&#xff0c;不涉及模型的训练&#xff0c;支持多种深度学习框架&#xff0c;比如TensorFlow&#xff0c;Caffe,Torch和Darknet。 OpenCV那为什么要实现深度学习模块&#xff1f;…

高标清硬盘播出服务器,高标清4通道SDI硬盘播出服务器 XUAPX4000HD

原标题&#xff1a;高标清4通道SDI硬盘播出服务器 XUAPX4000HDXUAP多通道硬盘自动播出系全系统设计 IP/TS/SDI多种播出模式XUAP系统采用先进硬件译码技术的自动播出系统&#xff0c;可依设定时间自动化切换影片与触发连动外围设备&#xff0c;如 矩阵、录像机、切换器 等&#…

行为科学统计第3章

行为科学统计 Statistics for the Behavioral Sciences 人生很累&#xff0c;现在不累&#xff0c;以后更累啦&#xff5e; 第3章 集中趋势 引言&#xff1a;一个平均数最主要的优势是它提供了单个数字&#xff0c;这个数字可以描述整个分布&#xff0c;并且可以被用于与其他分…

linux驱动层获取当前的系统时间

#include <linux/timer.h> #include <linux/timex.h> #include <linux/rtc.h>/*添加到合适位置*/struct timex txc; struct rtc_time tm;do_gettimeofday(&(txc.time));rtc_time_to_tm(txc.time.tv_sec,&tm);printk("UTC time :%d-%d-%d %d:%d…

智慧交通day02-车流量检测实现01:总览

随着城市交通量的迅猛增加&#xff0c;车流量统计已成为智能交通系统中一项关键技术和热门研究方向。高效而精确的车流量检测可以交通管理者和决策者&#xff0c;以及驾驶员提供数据支撑&#xff0c;从而为交通调度&#xff0c;降低拥堵情况的发生&#xff0c;提高道路利用率有…

从qq服务器删除误收邮件,如何恢复从qq邮箱删除的电子邮件

Qq邮箱恢复意外删除的邮件方法第1步: 如果您删除邮件&#xff0c;则无论是普通删除还是完整删除&#xff0c;都可以选择在几秒钟内撤消&#xff0c;以便恢复以前意外删除的邮件. 也就是说&#xff0c;在删除消息后&#xff0c;请在删除上述提示后单击“撤消”. 如果提示消息消失…

linux-虚拟机安装

第一步&#xff1a;下载 安装虚拟机&#xff01; 链接: http://pan.baidu.com/s/1nuGLwsL 密码: 2qdy 第二步&#xff1a;镜像文件&#xff01; 链接: http://pan.baidu.com/s/1nuGLwsL 密码: 2qdy linux 命令大全&#xff1a; arch 显示机器的处理器架构(1) uname -m 显示机器…

安卓JNI传结构体

安卓层代码: package com.demouhf.uhfjni;import android.util.Log; class Foo {protected int len;protected String name; } public class Demouhf {static {try {Log.i("JNI", "wqf Trying to load libnhf.so");/* 調用gsensor.so */System.loadLibra…

智慧交通day02-车流量检测实现02:多目标追踪

1.多目标跟踪分类 多目标跟踪&#xff0c;即MOT&#xff08;Multi-Object Tracking&#xff09;&#xff0c;也就是在一段视频中同时跟踪多个目标。MOT主要应用在安防监控和自动驾驶等领域中。 1.1 初始化方法 多目标跟踪&#xff0c;即MOT&#xff08;Multi-Object Trackin…

GIT非常好的整理

初始化配置 C代码 #配置使用git仓库的人员姓名 git config --global user.name "Your Name Comes Here" #配置使用git仓库的人员email git config --global user.email youyourdomain.example.com #配置到缓存 默认15分钟 git config --global cred…

centos虚拟机wifi设置代理服务器,vmware虚拟机centos在宿主机连WIF..._网络编辑_帮考网...

caotongjiang新兵答主12-13TA获得超过6747个赞资料:netmask ip地址 broadcast 子网掩码 gateway 网关 dns DNS服务器vmware三种网络连接上网设置&#xff1a;1.桥接方式(bridge) :默认使用vmnet0将虚拟机的ip设置与主机同网段未使用ip,其余与主机相同:ip地址与主机同段相异,子网…