有效
一种辅助安全驾驶的多任务驾驶员视线估计方法及系统
李霖、武新梅、马建芳、周刚、朱海红、严如玉
武汉大学
摘要
本发明提出了一种辅助安全驾驶的多任务驾驶员视线估计方法及系统。本发明从视频序列中获取多帧驾驶员图像,通过Dlib CNN方法提取每帧驾驶员图像的人脸关键特征点及面部区域图像,结合每帧驾驶员图像的人脸关键特征点进行眼部区域裁剪及头部姿态提取,得到每帧驾驶员图像的左眼区域图像、右眼区域图像、头部姿态;构建驾驶员视线估计网络,将每帧驾驶员图像的左眼区域图像、右眼区域图像、面部区域图像、头部姿态作为驾驶员视线估计网络的输入,得到每帧驾驶员图像的估计视线方向、估计注视区域类型;获取实时驾驶员图像,输入至驾驶视线估计网络,得到实时驾驶员估计视线方向、估计注视区域类型。
1.一种辅助安全驾驶的多任务驾驶员视线估计方法,其特征在于,包括以下步骤:步骤1:从视频序列中获取多帧驾驶员图像,标记每帧驾驶员图像的视线方向、注视区域类型,将每帧驾驶员图像通过Dlib CNN方法提取每帧驾驶员图像的多个人脸关键特征点、每帧驾驶员图像的面部区域图像,结合每帧驾驶员图像的多个人脸关键特征点进行眼部区域裁剪及驾驶员头部姿态提取,得到每帧驾驶员图像的左眼区域图像、每帧驾驶员图像的右眼区域图像、每帧驾驶员图像的头部姿态;步骤2:构建驾驶视线估计网络,将每帧驾驶员图像的左眼区域图像、每帧驾驶员图像的右眼区域图像、每帧驾驶员图像的面部区域图像、每帧驾驶员图像的头部姿态作为输入至驾驶员视线估计网络进行视线估计,得到每帧驾驶员图像的估计视线方向、估计注视区域类型,结合每帧驾驶员图像的视线方向、注视区域类型构建驾驶员视线估计网络损失函数,通过SGD算法优化训练得到优化后驾驶视线估计网络;步骤3:获取实时驾驶员图像,输入至优化后驾驶视线估计网络进行视线估计,得到实时驾驶员图像的估计视线方向、估计注视区域类型;所述左眼EE-Net网络模型,用于输入每帧驾驶员图像的左眼区域图像,进行左眼特征提取得到每帧驾驶员图像的左眼特征;所述左眼EE-Net网络模型由第一左眼卷积层、第一左眼激活层、第一左眼扩展卷积层、第一左眼扩展激活层、第一左眼最大池化层、第二左眼卷积层、第二左眼激活层、第二左眼扩展卷积层、第二左眼扩展激活层、第二左眼最大池化层、第三左眼卷积层、第三左眼激活层、第三左眼扩展卷积层、第三左眼扩展激活层、第四左眼卷积层、第四左眼激活层、第四左眼扩展卷积层、第四左眼扩展激活层依次级联构成;所述进行左眼特征提取得到每帧驾驶员图像的左眼特征,具体如下:每帧驾驶员图像的左眼区域图像依次通过第一左眼卷积层进行卷积特征提取、第一左眼激活层进行特征激活、第一左眼扩展卷积层进行模型通道数扩展、第一左眼扩展激活层进行特征激活、第一左眼最大池化层处理、第二左眼卷积层进行卷积特征提取、第二左眼激活层进行特征激活、第二左眼扩展卷积层进行模型通道数扩展、第二左眼扩展激活层进行特征激活、第二左眼最大池化层处理、第三左眼卷积层进行卷积特征提取、第三左眼激活层进行特征激活、第三左眼扩展卷积层进行模型通道数扩展、第三左眼扩展激活层进行特征激活、第四左眼卷积层进行卷积特征提取、第四左眼激活层进行特征激活、第四左眼扩展卷积层进行模型通道数扩展、第四左眼扩展激活层进行特征激活,得到每帧驾驶员图像的左眼特征。
2.根据权利要求1所述的辅助安全驾驶的多任务驾驶员视线估计方法,其特征在于:步骤1所述结合每帧驾驶员图像的多个人脸关键特征点进行眼部区域裁剪,得到每帧驾驶员图像的左眼区域图像、每帧驾驶员图像的右眼区域图像,具体如下:根据步骤1中所述每帧驾驶员图像的多个人脸关键特征点中的左眼左侧眼角关键点、左眼右侧关键点计算左眼中心点位置和左眼眼角间的距离,左眼裁剪区域的边长为左眼眼角间距离的一定倍数,依据中心与边长确定左眼裁剪矩形框,进而得到每帧驾驶员图像的左眼区域图像;根据步骤1中所述每帧驾驶员图像的多个人脸关键特征点中的右眼左侧眼角关键点、右眼右侧关键点计算右眼中心点位置和右眼眼角间的距离,右眼裁剪区域的边长为右眼眼角间距离的一定倍数,依据中心与边长确定右眼裁剪矩形框,进而得到每帧驾驶员图像的右眼区域图像。
3.根据权利要求2所述的辅助安全驾驶的多任务驾驶员视线估计方法,其特征在于:步骤1所述结合每帧驾驶员图像的多个人脸关键特征点进行驾驶员头部姿态提取,具体提取过程如下:通过人脸关键点检测算法提取每帧驾驶员图像的多个人脸关键特征点像素坐标;根据每帧驾驶员图像的多个人脸关键特征点像素坐标与标准人脸3D模型中对应的关键点坐标值,使用经典的Perspective-n-Point算法计算3D人脸坐标系到相机坐标系之间的旋转矩阵及平移矩阵;将所述旋转矩阵作为头部姿态向量,所述头部姿态向量包括:头部姿态的俯仰角、头部姿态的偏航角以及头部姿态的滚转角;通过头部姿态的俯仰角、头部姿态的偏航角以及头部姿态的滚转角构建所述头部姿态向量。
4.根据权利要求3所述的辅助安全驾驶的多任务驾驶员视线估计方法,其特征在于:步骤2所述驾驶视线估计网络,包括:左眼EE-Net网络模型、右眼EE-Net网络模型、全局面部特征卷积神经网络、第一视线回归全连接层、第二视线回归全连接层、注视区域1 1卷积层、注视区域平均池化层、注视区域线性回归层、注视区域LogSoftmax激活层。
5.根据权利要求1所述的辅助安全驾驶的多任务驾驶员视线估计方法,其特征在于:所述右眼EE-Net网络模型,用于输入每帧驾驶员图像的右眼区域图像,进行右眼特征提取得到每帧驾驶员图像的右眼特征;所述右眼EE-Net网络模型由第一右眼卷积层、第一右眼激活层、第一右眼扩展卷积层、第一右眼扩展激活层、第一右眼最大池化层、第二右眼卷积层、第二右眼激活层、第二右眼扩展卷积层、第二右眼扩展激活层、第二右眼最大池化层、第三右眼卷积层、第三右眼激活层、第三右眼扩展卷积层、第三右眼扩展激活层、第四右眼卷积层、第四右眼激活层、第四右眼扩展卷积层、第四右眼扩展激活层依次级联构成;所述进行右眼特征提取得到每帧驾驶员图像的右眼特征,具体如下:每帧驾驶员图像的右眼区域图像依次通过第一右眼卷积层进行卷积特征提取、第一右眼激活层进行特征激活、第一右眼扩展卷积层进行模型通道数扩展、第一右眼扩展激活层进行特征激活、第一右眼卷积最大池化层处理、第二右眼卷积层进行卷积特征提取、第二右眼激活层进行特征激活、第二右眼扩展卷积层进行模型通道数扩展、第二右眼扩展激活层进行特征激活、第二右眼卷积最大池化层处理、第三右眼卷积层进行卷积特征提取、第三右眼激活层进行特征激活、第三右眼扩展卷积层进行模型通道数扩展、第三右眼扩展激活层进行特征激活、第四右眼卷积层进行卷积特征提取、第四右眼激活层、第四右眼扩展卷积层进行模型通道数扩展、第四右眼扩展激活层进行特征激活、进行特征激活,得到每帧驾驶员图像的右眼特征。
6.根据权利要求5所述的辅助安全驾驶的多任务驾驶员视线估计方法,其特征在于:全局面部特征卷积神经网络,用于输入每幅驾驶员图像的面部区域图像,进行面部特征提取得到每幅驾驶员图像的面部特征;全局面部特征卷积神经网络包括:第一阶段全局面部卷积模块、第二阶段全局面部卷积模块、第三阶段全局面部卷积模块、第四阶段全局面部卷积模块、第五阶段全局面部卷积模块、第六阶段全局面部卷积模块、第七阶段全局面部卷积模块、第八阶段全局面部卷积模块、第九阶段全局面部卷积模块;所述第一阶段全局面部卷积模块,包括:第一全局卷积层;所述第二阶段全局面部卷积模块,包括:第二阶段第一全局移动翻转瓶颈卷积层、第二阶段第一全局通道注意力模块;所述第三阶段全局面部卷积模块,包括:第三阶段第一全局移动翻转瓶颈卷积层、第三阶段第一全局通道注意力模块、第三阶段第二全局移动翻转瓶颈卷积、第三阶段第二全局通道注意力模块;所述第四阶段全局面部卷积模块,包括:第四阶段第一全局移动翻转瓶颈卷积层、第四阶段第一全局通道注意力模块、第四阶段第一全局空间注意力模块、第四阶段第二全局移动翻转瓶颈卷积层、第四阶段第二全局通道注意力模块、第四阶段第二全局空间注意力模块;所述第五阶段全局面部卷积模块,包括:第五阶段第一全局移动翻转瓶颈卷积层、第五阶段第一全局通道注意力模块、第五阶段第一全局空间注意力模块、第五阶段第二全局移动翻转瓶颈卷积层、第五阶段第二全局通道注意力模块、第五阶段第二全局空间注意力模块、第五阶段第三全局移动翻转瓶颈卷积层、第五阶段第三全局通道注意力模块、第五阶段第三全局空间注意力模块;所述第六阶段全局面部卷积模块,包括:第六阶段第一全局移动翻转瓶颈卷积层、第六阶段第一全局通道注意力模块、第六阶段第一全局空间注意力模块、第六阶段第二全局移动翻转瓶颈卷积层、第六阶段第二全局通道注意力模块、第六阶段第二全局空间注意力模块、第六阶段第三全局移动翻转瓶颈卷积层、第六阶段第三全局通道注意力模块、第六阶段第三全局空间注意力模块;所述第七阶段全局面部卷积模块,包括:第七阶段第一全局移动翻转瓶颈卷积层、第七阶段第一全局通道注意力模块、第七阶段第一全局空间注意力模块、第七阶段第二全局移动翻转瓶颈卷积层、第七阶段第二全局通道注意力模块、第七阶段第二全局空间注意力模块、第七阶段第三全局移动翻转瓶颈卷积层、第七阶段第三全局通道注意力模块、第七阶段第三全局空间注意力模块、第七阶段第四全局移动翻转瓶颈卷积层、第七阶段第四全局通道注意力模块、第七阶段第四全局空间注意力模块;所述第八阶段全局面部卷积模块,包括:第八阶段第一全局移动翻转瓶颈卷积层、第八阶段第一全局通道注意力模块、第八阶段第一全局空间注意力模块;所述第九阶段全局面部卷积模块,包括:第九全局卷积层、第九全局激活层。
7.根据权利要求6所述的辅助安全驾驶的多任务驾驶员视线估计方法,其特征在于:所述的第二阶段第一全局移动翻转瓶颈卷积层、第三阶段第一全局移动翻转瓶颈卷积层、第三阶段第二全局移动翻转瓶颈卷积、第四阶段第一全局移动翻转瓶颈卷积层、第四阶段第二全局移动翻转瓶颈卷积层、第五阶段第一全局移动翻转瓶颈卷积层、第五阶段第二全局移动翻转瓶颈卷积层、第五阶段第三全局移动翻转瓶颈卷积层、第六阶段第一全局移动翻转瓶颈卷积层、第六阶段第二全局移动翻转瓶颈卷积层、第六阶段第三全局移动翻转瓶颈卷积层、第七阶段第一全局移动翻转瓶颈卷积层、第七阶段第一全局通道注意力模块、第七阶段第二全局移动翻转瓶颈卷积层、第七阶段第三全局移动翻转瓶颈卷积层、第七阶段第四全局移动翻转瓶颈卷积层、第八阶段第一全局移动翻转瓶颈卷积层,均包括:1 1升维卷积层、深度可分离卷积层、1 1降维卷积层、Dropout层;所述的第二阶段第一全局通道注意力模块、第三阶段第一全局通道注意力模块、第三阶段第二全局通道注意力模块、第四阶段第一全局通道注意力模块、第四阶段第二全局通道注意力模块、第五阶段第一全局通道注意力模块、第五阶段第二全局通道注意力模块、第五阶段第三全局通道注意力模块、第六阶段第一全局通道注意力模块、第六阶段第二全局通道注意力模块、第六阶段第三全局通道注意力模块、第七阶段第一全局通道注意力模块、第七阶段第二全局通道注意力模块、第七阶段第三全局通道注意力模块、第七阶段第四全局通道注意力模块、第八阶段第一全局通道注意力模块,均包括:最大池化层、平均池化层、1 1卷积层、SiLU激活层、1 1卷积层、加权层、Sigmoid激活层;所述的第四阶段第一全局空间注意力模块、第四阶段第二全局空间注意力模块、第五阶段第一全局空间注意力模块、第五阶段第二全局空间注意力模块、第五阶段第三全局空间注意力模块、第六阶段第一全局空间注意力模块、第六阶段第二全局空间注意力模块、第六阶段第三全局空间注意力模块、第七阶段第一全局空间注意力模块、第七阶段第二全局空间注意力模块、第七阶段第三全局空间注意力模块、第七阶段第四全局空间注意力模块、第八阶段第一全局空间注意力模块,均包括:最大池化层、平均池化层、7 7卷积层、Sigmoid激活层;所述全局面部特征卷积神经网络各网络层是按照EfficientNet网络模型内部网络层的方式进行级联;第一视线回归全连接层,用于输入每帧驾驶员图像的左眼特征、每帧驾驶员图像的右眼特征、每帧驾驶员图像的面部特征、头部姿态向量,进行回归处理,得到每帧驾驶员图像的第一融合特征;第二视线回归全连接层,用于输入每帧驾驶员图像的第一融合特征,进行回归处理,得到每帧驾驶员图像的估计视线方向;将每帧驾驶员图像的面部特征依次通过注视区域1 1卷积层进行卷积特征提取、注视区域平均池化层进行池化处理、注视区域线性回归层进行线性回归、注视区域LogSoftmax激活层进行特征激活,得到每帧驾驶员图像的每种注视区域类型的概率,在每帧驾驶员图像的所有注视区域类型的概率中选择概率的注视区域类型作为每幅驾驶员图像的估计注视区域类型。
8.根据权利要求7所述的辅助安全驾驶的多任务驾驶员视线估计方法,其特征在于:步骤2所述驾驶员视线估计网络损失函数,包括:驾驶员视线方向估计损失函数、驾驶员注视区域估计损失函数;所述驾驶员视线方向估计损失函数用于约束所述每帧驾驶员图像的估计视线方向,定义如下:使用均方误差MSE作为驾驶员视线方向估计损失函数 ,可被定义为:其中, N 表示驾驶员图像数量, i 表示每帧驾驶员图像的索引, 为第 i 帧驾驶员图像的估计视线方向, 为第 i 帧驾驶员图像的视线方向;所述驾驶员注视区域估计损失函数用于约束每帧驾驶员图像的估计注视区域,驾驶员注视区域估计损失函数 包括交叉熵损失函数 、中心损失函数 ;所述交叉熵损失函数 定义为:其中, i 表示每帧驾驶员图像的索引, 是第 i 帧驾驶员图像的注视区类型, 是第 i 帧驾驶员图像的估计注视区域类型;交叉熵损失函数 用于衡量每帧驾驶员图像的每种注视区域类型预测概率值与每帧驾驶员图像的注视区域真实值之间的差异;所述中心损失函数 减少类内的间距,可被定义为:其中, N 表示驾驶员图像数量, 是第 i 帧驾驶员图像的特征向量, 是第 i 帧驾驶员图像注视区域的中心;所述驾驶员注视区域估计的损失函数可被定义为:其中, 表示中心损失函数的权重,用于调整类内紧凑性。
9.一种辅助安全驾驶的多任务驾驶员视线估计系统,基于权利要求1至8中任一所述的辅助安全驾驶的多任务驾驶员视线估计方法,其特征在于,包括:驾驶员图像及姿态提取模块,用于从视频序列中获取多帧驾驶员图像,标记每帧驾驶员图像的视线方向、注视区域类型,将每帧驾驶员图像通过Dlib CNN方法提取每帧驾驶员图像的多个人脸关键特征点、每帧驾驶员图像的面部区域图像,结合每帧驾驶员图像的多个人脸关键特征点进行眼部区域裁剪及驾驶员头部姿态提取,得到每帧驾驶员图像的左眼区域图像、每帧驾驶员图像的右眼区域图像、每帧驾驶员图像的头部姿态;驾驶视线估计网络训练模块,用于构建驾驶视线估计网络,将每帧驾驶员图像的左眼区域图像、每帧驾驶员图像的右眼区域图像、每帧驾驶员图像的面部区域图像、每帧驾驶员图像的头部姿态作为输入至驾驶员视线估计网络进行视线估计,得到每帧驾驶员图像的估计视线方向、估计注视区域类型,结合每帧驾驶员图像的视线方向、注视区域类型构建驾驶员视线估计网络损失函数,通过SGD算法优化训练得到优化后驾驶视线估计网络;实时驾驶员图像估计模块,用于获取实时驾驶员图像,输入至优化后驾驶视线估计网络进行视线估计,得到实时驾驶员图像的估计视线方向、估计注视区域类型。




