zoukankan      html  css  js  c++  java
  • 基于计算机视觉的交通场景智能应用——需求分析及原型设计

    需求分析

      本题要求运用计算机视觉对交通场景进行智能识别,对于公共交通的管理提供的便利,要求参赛作品应该具有至少一种常见的场景案例识别,比如有对路口过往车辆的流量和车速进行检测,对于路口交通的饱和度以及拥堵情况,或者对闯红灯的机动车,斑马线不礼让行人,机动车占用公交车道,机动车违停或者违规越线等违章行为进行检测识别,基于我们的水平以及知识储备,我们会着重对路口过往车辆的流量和车速,路口交通的饱和度以及拥堵情况进行检测,

    1、功能性需求

    1. 测试用视频为公共交通路口摄像头所录制的真实视频

    2. 实现机动车检测以及车牌识别

    3. 实现路口交通的流量统计或饱和度、机动车违停或者违规越线、机动车占用公交车道、机动车闯红灯、斑马线不礼让行人,机动车不按导向行驶,实时车速检测违章超速等功能

    4. 在视频画面上有实时的信息标注。

    5. 最终应输出场景行为识别行为判断的结果(例如,车牌号为XXX的车辆超速行驶,车速为XX或不礼让行人等等)

    2、非功能性需求

    1. 系统运行顺畅无卡顿,无闪退等严重BUG。

    2. UI界面美观、逻辑合理、交互友好。

    3.  作品中标明哪些部分使用了开源代码及出处。

    4. 文档应详细阐述所使用的技术算法,以及实现思路。

    5. 作品中最好输出运行结果的置信度或预测准确率。

    原型设计

    设计思路

    1. 图像采集

    2. 图像预处理

      对图像进行滤波,去除噪声改善光照,提高亮度、对比度

      在实际的交通场景中,由于运动抖动、自然光、天气条件等各种因素的影响,不可避免的会在采集的图像中引入一定程度的干扰和噪声,所以首先需要将这些不利因素消除,对采集到的图像进行一些预处理。通过图像均衡、图像增强和图像去噪等算法,将图像的光线均衡,突出关键信息。将图像变得清晰、易辨认。

    3. 图像分割检测

      对行人、车辆、车牌、交通标志及交通标志线进行分隔
      颜色分割:

      预处理后的图像仍然包含很多信息,交通标志在其中只有很小的一个区域,为了减小处理的数据量,加快处理速度,一般都会先将交通标志的区域检测出来,再去判断这个区域中的交通标志的具体含义。交通标志在颜色和形状上都有一定的特殊性,所以一般通过这两个特征去检测交通标志。

      形状分割:

      仅仅检测颜色显然又是不够的,由于光照、背景色的影响和干扰,还需要在颜色检测结果的基础上对相应区域进行形状检测。交通标志具有边缘清晰、形状简单易辨认的特点。这些特征在排除颜色影响后的灰度图像中更加明显,因此通过一定的边缘检测算子去判断图像像素中出现的灰度阶跃变化,一般就能较为准确的检测出交通标志的形状和轮廓特征。

    4. 图像提取

      在图像检测完成以后,图像中基本就只剩下了交通标志的关键信息,这些信息简单直观,但计算机依然不会知道这些信息的具体含义,这时候需要再进一步对这些图像特征进行提取和比对,才能对具体的信息进行识别。
    5. 识别结果匹配
      通过机器学习以及特征库对比,判断车辆信息,以及是否存在违规行为

    参考:http://www.cnsoftbei.com/plus/view.php?aid=474

    https://blog.51cto.com/31329846/2351748

  • 相关阅读:
    UNIX网络编程(转载)
    cin、cin.get()、cin.getline()、getline()、gets()等函数的用法(转)
    GSL GNU Scientific Library
    为人处事很有意义
    上海老大杜月笙——教你看穿一个人
    超实用的Linux/Unix快捷键大汇总(开发、管理)(2)(转)
    STL map常用操作简介(转)
    使用ifstream和getline读取文件内容[c++]
    VIM Tips
    超实用的Linux/Unix快捷键大汇总(开发、管理)(1)(转)
  • 原文地址:https://www.cnblogs.com/lixv2018/p/12805307.html
Copyright © 2011-2022 走看看