当前位置:首页 > 汽车电子 > 汽车电子
[导读] 如何为驾驶员提供一个有效实用的安全辅助驾驶系统是车辆安全驾驶的一个重要课题。基于机器视觉的疲劳驾驶检测技术已在国内外开展了广泛研究,其中以驾驶员眼部特征的检测最为广泛。 本文以低成本、低功耗、高实时

 如何为驾驶员提供一个有效实用的安全辅助驾驶系统是车辆安全驾驶的一个重要课题。基于机器视觉的疲劳驾驶检测技术已在国内外开展了广泛研究,其中以驾驶员眼部特征的检测最为广泛。

本文以低成本、低功耗、高实时性为设计原则,以ARM+DSP构成硬件平台,并移植了嵌入式操作系统Windows CE 5.0,设计了一套基于驾驶员眼部特征的疲劳驾驶检测算法,对驾驶员驾驶过程进行实时检测和报警,从而提高驾驶的安全性与舒适性。

1 硬件平台设计

系统硬件平台选用三星公司ARM9架构的S3C2440作为核心处理器,利用TI公司的TMS320DM642作为视频采集处理模块,其结构框图如图1所示。DSP平台主要负责采集图像、图像算法处理,ARM平台主要完成整个系统的控制处理,两者之间通过网口实现通信和同步。在系统运行过程中,ARM平台可实时显示采集到的视频以及相应眼部疲劳特征识别的结果,同时用户可通过触摸屏交互界面对系统进行设置和控制。为保证系统平台具有高的可靠性以实现复杂的系统调度,在设计过程中对本系统各平台进行了操作系统移植,DSP平台移植了DSP/BIOS系统,ARM平台移植了Wince操作系统。

S3C2440是一款基于ARM92OT核的16/32 bit RSIC结构的嵌入式微处理器,主频为400 MHz,最高可达533 MHz;片内外资源丰富,具有强大的处理能力。系统存储扩展了64 MB的NANDFlash、64 MB的SDRAM;另外还有2 MB的NORFalsh,用于存放系统引导加载程序[1]。

TMS320DM642芯片[2]能够实时高速地完成大数据量的数字视频编解码处理,是强大的高性能单片多媒体处理器,具有高质量、多通道、优越的视频处理性能,以及完整的软件可编程特性;基于C64x系列VelociTI.2DSP 架构的设计,与TI公司其他的C64x数字信号处理器代码相兼容,拥有500/600 MHz时钟频率,性能高,其传输速率达4 000/4 800 MIPS;不仅具有C64x系列芯片的主要特征,还高度集成了音视频等外部设备的接口,方便多媒体应用开发。

2 图像识别算法

2.1 总体检测流程

首先,根据脸部肤色的聚类特性检测驾驶员脸部位置,在人脸检测的基础上,根据眼睛在人脸上的几何位置分布,确定眼睛的大概位置,缩小眼部检测的区域范围;其次,在缩小的眼部搜索区域范围内,利用Sobel边缘检测算法对眼部区域进行边缘检测,提取眼部的边缘信息,并对其进行二值化处理;再对二值化后的眼部区域进行连通成分分析,采用基于区域连通的二值图像滤波方法去除眼部周围图像噪声点的干扰;然后根据改进的积分投影算法,计算左右眼角和上下眼睑的距离,确定驾驶员眼睛的睁闭状态;最后,定义眨眼频率,并据此实现疲劳驾驶的检测。具体的算法流程如图2所示。


2.2 基于肤色聚类的人脸检测

肤色对面部表情、头部旋转以及图像尺度的变化不敏感, 但是人脸检测的一个重要特征。在HSV 颜色空间, 图像的照度和色度是分离的,肤色聚类更紧密, 不易受周围光线的影响。因此, 本文采用基于RGB 和HSV 颜色空间的肤色聚类算法对驾驶员脸部进行检测。从摄像头采集的图像为RGB 格式, 可以利用式(1)实现从RGB 颜色空间到HSV 空间的转换[ 3]。



2.3 眼部感兴趣区域确定

假设检测出的人脸区域长度为HF、宽度为WF, 在竖直方向上, 眼睛大概位于脸部二分之一以上、头顶以下
HF/5 的区域。在水平方向上, 眼部边界区域被定位于距离脸部左边界WF/8 处开始到距离脸部右边界WF/8 处
的区域。根据上述原则, 初始眼部检测区域为如图3 中所示的矩形EFGH 区域。



2.4 基于Sobel 算子的边缘检测

边缘是图像灰度变化剧烈的地方, 在从皮肤到眼白再到瞳孔的变化过程中, 包含了丰富的眼部图像边缘信
息, 因此可以用边缘提取的方法将眼部边缘提取出来作为人眼检测和定位的基础。利用Sobel 边缘算子对初始眼部检测区域进行边缘检测,能够有效地将眼部边缘提取出来。Sobel 算子可用矩阵形式表示为:


2.5 改进积分投影算法确定左右眼角和上下眼睑的距离

对滤波后的二值图像, 首先将初始眼部检测区域EFGH 从水平方向的中线位置分成如图3 所示的左右两个部分(即右眼检测区域EMNH 和左眼检测区域MFGN),然后利用改进积分投影算法分别在左右眼检测区域内确定左右眼的左右眼角距离及上下眼睑距离。因左、右眼的参数确定方法类似,故仅以右眼检测区域EMNH 为例说明参数的确定过程。具体实现过程如下:

(1)为避免计算过程中眼睛上方眉毛对定位结果的影响, 算法在确定上下眼睑边缘, 从右眼检测区域EMNH
的最下方一行像素开始向上搜索,逐行从左至右统计每行中灰度值等于1 的像素个数, 并将第i 行中灰度值为
1 的像素个数之和存放在数组Nc [i] 中, 规定右眼检测区域EMNH 的最下方一行为第0 行, 即i=0 ; 每搜索统计完一行后i 自动加1。

(2) 对当前第i 行中灰度值等于1 的像素的个数之和进行统计计算, 如果:


3 实验与分析

为验证眼睛疲劳特征检测算法的有效性,在构建的ARM+DSP系统上对采集到的视频图像进行实验验证。在沪宁高速南京段的实验结果表明,该系统将算法处理时间控制在50 ms以内,取得了良好的实时效果,疲劳驾驶检测正确率达97.6%。部分图像的眼部区域检测结果如图4所示,其中,第一行为人脸检测后的面部定位图像,第二行为经Sobel边缘检测后的眼部二值图像,第三行为得到的眼部边界定位图像。

通过观察发现,通常情况下,驾驶员在睁眼和闭眼时,左、右眼的睁闭情况是同步的,即同时睁开或同时闭合。因此,在对眼睛睁闭状态进行判断时,为减少计算量,仅对左眼的睁闭情况进行判断。针对图4所示的眼部区域检测结果,利用式(8)计算其左眼睁闭度的大小,计算结果如表1所示。
由表1可知,图4中第一列和第二列所示的眼睛闭合时的睁闭度值明显小于第三列和第四列所示的眼睛睁开时的睁闭度值。故只要选择合适的阈值,根据眼睛睁闭度值的大小,就可对驾驶员眼睛的睁闭状态进行有效判断。

本文在ARM+DSP系统上实现了基于眼部特征的疲劳驾驶检测算法。利用基于肤色聚类的脸部检测算法确定脸部边界,采用一种简单有效的改进积分投影算法,实现了驾驶员眼部睁闭状态的有效判定和疲劳驾驶的实时检测。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

近日,Arm推出了Arm® Ethos™-U85神经网络处理器(NPU)和Arm Corstone™-320物联网参考设计平台,旨在满足海量的数据处理和大规模计算,加速推进边缘AI的发展进程。

关键字: ARM

从世界上第一颗DSP诞生至今30年来,国际一线老牌芯片厂商长期占据领先技术和市场地位,国内芯片厂商在DSP上的声量很小。然而经过了6年的沉心打磨之后,湖南进芯电子开始在这一领域崭露头角。凭借着更贴近中国本土特色的差异化产...

关键字: DSP MCU 电机控制 进芯电子

为了赶超云计算市场上的竞争对手,谷歌正试图通过定制的Arm服务器芯片降低云计算服务成本。

关键字: 谷歌 ARM 定制芯片

嵌入式开发作为一个融合了计算机软硬件和系统工程的综合性领域,其成功与否往往取决于三个核心要素的有效整合与协调。这三个要素分别是:硬件平台的选择与设计、软件开发及其优化、以及系统级的设计与集成。深入理解并熟练掌握这三个方面...

关键字: 嵌入式开发 ARM

随着汽车软件数量爆发式的增长,整个行业都需要重新思考汽车产品的开发流程。为此,Arm推出了丰富的硬件IP、新的系统IP,以及全新的汽车计算与计算子系统产品路线图,旨在为各种汽车应用实现性能、功能安全、可扩展等方面的支持。

关键字: ARM 汽车电子

知名移动芯片设计公司ARM最近迈出重要一步,它正式推出汽车芯片设计。ARM推出的芯片设计方案名叫Neoverse,随同芯片一起推出的还有面向汽车制造商、汽车供应商的新系统。

关键字: ARM 汽车芯片 芯片

随着通用人工智能的发展,数据中心的计算需求逐步提高。针对多模态数据、大模型的推理和训练需要更高的算力支持,而随着算力提升与之而来的还需更关注在功耗方面的优化。对于头部云计算和服务厂商而言,针对专门用例提高每瓦性能变得至关...

关键字: ARM 服务器 AI Neoverse CSS

一直以来,riscv架构都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来riscv架构的相关介绍,详细内容请看下文。

关键字: riscv ARM riscv架构

今天,小编将在这篇文章中为大家带来数字信号处理器DSP的有关报道,通过阅读这篇文章,大家可以对它具备清晰的认识,主要内容如下。

关键字: DSP 数字信号处理器

DSP的国产替代不会是一件很容易的事情,但受到当前国际竞争态势的影响,本土开发者亟需拥有降本优势、供应链安全保证,以及能协助打造极高竞争力产品的DSP芯片。也就是说,发展国产DSP是不二选择。

关键字: DSP
关闭
关闭