/CarInformationSystem

基于c++ qt opencv mysql 开发的车牌识别系统

Primary LanguageC++

车牌识别系统

该系统可用作车牌识别开发的参考

第一周

根据要实现的基于win10设备的车牌自动识别系统的基本功能,设计程序的整体结构。

主要使用技术

主要技术结构为:

  • 使用opencv实现车辆图像信息的采集
  • 拟采用dlib提取车牌的特征信息
  • 使用mysql存储识别车辆的信息
  • 使用qt设计车牌自动识别系统的界面

程序的实现步骤为:

  • 车牌信息采集
    • 使用opencv调用摄像头获取含车牌信息的图片
    • 车牌图像预处理
      • 通过高斯平滑、中值滤波的方式预处理图像,减少图像中的噪声
      • 通过膨胀和腐蚀技术,让车牌的轮廓变得更为明显
  • 车牌定位
    • 灰度化处理
      • 根据车牌的彩色图片进行灰度化处理成灰度图像
    • 边缘检测
      • 检测车牌的边缘,拟采用Roberts边缘检测算子、Sobel边缘检测算子、Krisch边缘检测算子或是Laplacian边缘检测算子进行边缘检测。
    • 二值化处理
    • 定位图像符合区域
  • 车牌字符分割
    • 去除定位车牌时使用的边框信息,只保留车牌字母、数字、汉字图像
    • 使用垂直投影和水平投影实现车牌中字母、数字、汉字的分割
    • 最终得到每一个单独的字母、数字、汉字
  • 车牌信息识别
    • 对车牌信息,每一个字进行归一化处理
    • 对车牌信息,每一个字进行细化处理,利于后续的特征值提取
    • 字符识别
      • 通过模板匹配进行字符识别
      • (可能实现)通过神经网络进行特征值训练,并进行车牌识别
  • 车牌信息的数据库增删查改
    • 得到识别结果,与云服务器上mysql数据库存储的信息进行比对,如果有,则调用对应车辆基本信息,如果无,则可以进行数据录入
  • 车牌识别系统的显示功能
    • 将数据库调出的信息展示在系统界面中,方便交警查看
  • 车牌识别系统的录入功能
    • 如果数据库中没有车辆信息,则交警可从车牌自动识别系统的输入界面中进行信息输入,将结果录入云服务器数据库中。