基于ARM的非接触式安全驾驶预警系统方案设计
3系统整体设计方案
本文引用地址:http://www.amcfsurvey.com/article/265857.htm3.1系统设计流程
整个系统设计流程:1)检测摄像头和开发板;2)获取图像。通过摄像头实时地获取驾驶员的头像;3)搭建软件开发环境。移植QpenCV到ARM下,在Linux下安装QT;4)人眼方面的处理。首先使用OpenCV里自带的Haar分类器进行眼睛识别定位,然后将提取出来的眼睛区域图像进行二值化处理,最后通过扫描二值化图像的黑像素点,得到眼睛最高点和最低点两个点的坐标,通过坐标差值计算出眼睛的高度值;5)判断疲劳。当检测到眼睛的高度值小于或等于设定的眼睛高度阈值,则记录下来,若连续五帧眼睛的高度值都小于或等于阈值,则判定驾驶员处于疲劳状态;6)报警。LED发光报警;7)编写疲劳驾驶的GUI.流程图如图10所示。
图10 系统流程图
3.2系统GUI的设计
在人和计算机的互动过程中,有一层面,即我们所说的界面(interface)。GUI(Graphical User Interface)即图形用户界面,作为一种可视化的用户界面,使用图形界面代替正文界面。它的作用是实现用户和计算机之间的良好的交互。
应用程序的编译环境是Qt Creator,使用疲劳预警系统时,刚打开会出现以下显示begin的一个button,触摸开始按钮系统就会进入疲劳监测程序,监测结束判断疲劳时开发板给led灯以示预警。结束预警系统时,只需轻触界面的“close”键即可返回一开始的begin界面。如图11所示。
图11 GUI界面
轻触eye系统进入主界面后,可以通过界面最下端的显示区域观察。当驾驶员闭眼时,系统最下端则会获取到闭眼状态的图像,当连续五帧图像都是闭眼时,系统就会报警。图12系统界面。
图12 系统界面
4结束语
本文是基于ARM处理器设计的驾驶员疲劳预警系统,在搭建好的ARM平台开发环境的基础上,利用QT技术设计系统界面,最后基于OpenCV移植驾驶员疲劳预警算法。本文设计的预警系统具有以下优点或特色:1)采用性能强劲的ARM系列处理平台作为系统的硬件环境,与其他如DSP+ARM的架构相比,在处理性能相差不大的情况下,系统的硬件成本大大降低,更符合经济的要求;2)相比脑电图、眼电图、心电图等需要接触驾驶员身体的装置,本设计采用摄像头实现非接触式,更方便使用;3)依据系统各个处理模块的特点,采用多种算法相结合的办法实现系统,更加体现实时性、高效性。
蜂鸣器相关文章:蜂鸣器原理
评论