一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于深度图像的驾驶行为识别方法和系统

2022-07-02 12:59:33 来源:中国专利 TAG:


1.本发明涉及人工智能领域的计算机视觉方法,特别涉及一种基于深度图像的驾驶行为识别方法和系统。


背景技术:

2.随着汽车普及度进一步提高,安全驾驶问题也一次又一次登上新闻头条。驾驶员的决策和行为是影响驾驶安全的主要因素,由于未严格遵守既有规定的驾驶行为而导致的事故数量占到了交通事故总数的60%。根据世界卫生组织的数据,如果不采取有效的措施,到2030年道路交通事故将成为第七大死亡原因。卷积神经网络是目前图像与视频处理领域最强大的网络结构,在相关任务上表现出的优越性无可比拟。同时,cnn在大规模数据集imagenet上呈现出的识别效果也让驾驶员的行为识别成为了一个切实可行的方向。通常来说,驾驶行为均为坐姿,并且由交互系统所采集到的图像背景也会相对简单。
3.目前在人体姿态识别领域,较常见的是主成分分析法(principal component analysis,pca)。该方法能够识别8种典型坐姿,并通过面部皮肤的像素数时变来分析面部动作。在kinect的骨骼追踪功能应用方面,openpose人体姿态识别项目是美国卡耐基梅隆大学(cmu)基于卷积神经网络和监督学习并以caffe为框架开发的开源库,它可以实现人体动作、面部表情、手指运动等姿态估计,是世界上首个基于深度学习的实时多人二维姿态估计应用。2019年,y.xing团队设计了基于深度卷积神经网络(cnn)的驾驶员活动识别系统,首先利用高斯混合模型(gaussian mixture model,gmm)对原始图像进行分割并将驾驶员图像从背景环境分离,然后使用三种不同的预训练神经网络(alexnet,googlenet,resnet50)对cnn模型进行训练。上述现有技术并没有将基于kinect的深度图像方法与卷积神经网络方法很好地融合起来,以解决驾驶员不良驾驶行为检测问题。


技术实现要素:

4.针对上述背景技术存在的问题,提出了一种基于深度图像的驾驶行为识别方法和系统,采用jetson nano作为边缘计算设备,在降低系统复杂度的同时提高了姿态识别的准确率,做到了易部署、高可靠。
5.一种基于深度图像的驾驶行为识别方法,包括如下步骤:
6.s1、采集驾驶员的深度图像序列,形成包含驾驶员上半身骨骼点信息的图像训练集;
7.s2、对所述训练集进行深度图像预处理;
8.s3、进一步分析图像位置信息,获取深度图像时间序列,并对深度图像时间序列进行归一化处理;
9.s4、进一步分析图像骨骼信息,计算骨骼节点矩阵,并对骨骼节点三维矩阵进行归一化处理;
10.s5、利用改进的vgg-16网络处理所得数据,融合深度图像序列和骨骼点信息的训
练结果,输出驾驶行为分类结果。
11.进一步地,步骤s1中,通过microsoft azure kinect dk采集驾驶员的深度图像序列,其中每一帧图像包括rgb信息与距离信息;距离信息指每一个像素点(x,y)到离摄像头平面最近的平面的距离(以毫米为单位),它直接反映了景物可见表面的几何形状。
12.进一步地,步骤s2中,所述训练集深度图像预处理,包括对于由车内复杂环境导致的图像遮挡问题,修补深度信息丢失的像素点。
13.进一步地,步骤s2中,深度信息修补具体为,对于驾驶员坐姿上半身不同位置的骨骼,分别设置骨骼长度均值l与误差参数σ,当所采集深度图像相应位置处骨骼长度在[l-σ,l σ]之间时视作图像信息完整,对于长度不足的位置进行平滑填充,得出骨骼关节特征向量。
[0014]
进一步地,步骤s3中,包括如下分步骤:
[0015]
步骤s3-1,将驾驶员姿态深度图像序列的每一帧投影到三个正交的笛卡尔平面坐标系上,提取序列中驾驶员行为的三维结构空间特征;
[0016]
步骤s3-2,计算每两个连续帧的三维空间特征的绝对差值,叠加后得到作为神经网络输入的深度运动图,即深度图像时间序列。
[0017]
进一步地,步骤s4中,包括如下分步骤:
[0018]
步骤s4-1,利用驾驶员姿态深度图像中的距离信息检测其上半身行为边缘,对目标进行分割后从背景中提取行为轮廓,其中仅识别驾驶姿势下人体关键部位的主要骨骼点,包括:头、双肩中央、左肩、左肘关节、左腕关节、左手、右肩、右肘关节、右腕关节、右手、脊柱中段,按照1~11的顺序,对其标号;
[0019]
步骤s4-2,将基于microsoft azure kinect dk坐标系(x,y,z)的骨骼运动序列转换为骨骼节点三维矩阵,其中x、y、z方向与rgb图像的r、g、b通道一一对应;骨骼运动序列是按照时间顺序排列的骨骼数据,每组骨骼数据含有11个主要骨骼点三维坐标,并以1~11的标号进行标识;
[0020]
步骤s4-3,对所述骨骼节点三维矩阵进行归一化处理,设置目标帧数为n帧,选取[0,n]帧作为归一化的骨骼运动序列,多于目标帧的序列截取丢弃,少于目标帧的序列填零补充;
[0021]
步骤s4-4,处理后的骨骼节点矩阵尺寸为n
×
11
×
3,得到作为神经网络输入的骨骼数据。
[0022]
进一步地,步骤s5中,基于双流卷积神经网络思想的改进的vgg-16模型,采用包含五通道的卷积神经网络,其中前三个通道用于训练深度运动图,后两个通道用于训练骨骼节点矩阵与骨骼关节特征向量;
[0023]
利用后期融合的方法,分别将所得驾驶员姿态深度图像的三维空间特征与时间信息、坐姿上半身骨骼数据的三维运动坐标与拓扑形状的分类结果进行集成决策输出。
[0024]
一种基于深度图像的驾驶行为识别系统,包括:
[0025]
通过microsoft azure kinect dk内置红外发射装置与红外深度摄像头收集驾驶员上半身位置信息,经过cmos传感器解码运算后获取包含距离信息的驾驶员姿态深度图像,即rgb-d图像;
[0026]
采用nvidia jetson nano作为边缘计算设备,基于获取的图像进行分析并输出最
终识别结果。
[0027]
进一步地,利用集成于nvidia jetson nano开发板中的深度学习的方法分析与提取图像信息,识别15种不同驾驶行为,包括:
[0028]
正常驾驶,左手打电话,左手看手机,右手打电话,右手看手机,与副驾驶位说话,调中间仪表,喝水,吃东西,向后转头,弯腰低头,手离开方向盘,眯眼,打哈欠,点头。
[0029]
本发明达到的有益效果为:利用深度相机替代传统相机的方法,所收集的深度图像相较于rgb图像增加了距离信息,即rgb-d图像。对于真实驾驶环境中可能出现的灯光昏暗、背景杂乱的现象,使用深度图像能够更好地提取驾驶员行为特征。同时,骨骼追踪算法在数据预处理阶段能够较好地补全图像缺失信息,为后续训练提供了良好基础。此外,考虑了15种常见驾驶行为,基本包含了大部分易导致危险事故发生的不良驾驶行为,具有很高的实用价值。本发明采用一种骨骼追踪融合卷积神经网络与疲劳检测的计算机视觉处理方法,设计了一套轻便低复杂度的边缘系统,满足了真实驾驶环境下易部署、高稳定性的要求,能够高效、准确、及时地检测出驾驶员的违规行为并给予警示,从而减少交通安全事故发生的可能性,为道路安全保驾护航。
附图说明
[0030]
图1是本发明实施例中的基于深度图像的驾驶行为识别方法的流程示意图。
[0031]
图2是本发明所述基于深度图像的驾驶行为识别方法中改进的vgg-16网络结构示意图。
[0032]
图3是本发明所述基于深度图像的驾驶行为识别方法中五通道卷积神经网络架构示意图。
[0033]
图4是本发明实施例中的基于深度图像的驾驶行为识别系统中microsoft azure kinect sd结构示意图。
[0034]
图5是本发明实施例中的基于深度图像的驾驶行为识别系统中nvidia jetson nano结构示意图。
具体实施方式
[0035]
下面结合说明书附图对本发明的技术方案做进一步的详细说明。
[0036]
请参照图1,本发明提供一种基于深度图像驾驶行为识别方法,包括:
[0037]
s100、采集驾驶员的深度图像序列,形成包含驾驶员上半身骨骼点信息的图像训练集。
[0038]
本实施例中,驾驶员的深度图像序列通过microsoft azure kinect dk采集。其中,本实施例中的被测对象主要以私家车司机为例,通过深度相机私家车司机的深度图像序列。需要说明的是,本实施例的被测对象也可以是公共交通司机。
[0039]
s200、对所述训练集进行深度图像预处理。
[0040]
由于车内环境的影响,深度相机所采集的驾驶员图像可能存在部分位置的遮挡问题,使得图像信息不完整。因此,需要对深度图像进行预处理,修补缺失的像素点。
[0041]
可以理解地,人体骨骼在结构上满足一定的长度约束。本发明以此为前提,通过限制所采集图像中提取骨骼信息的长度来修补缺失像素点。对于驾驶员坐姿上半身不同位置
的骨骼,分别设置骨骼长度均值l与误差参数σ,当所采集深度图像相应位置处骨骼长度在[l-σ,l σ]之间时视作图像信息完整,对于长度不足的位置进行平滑填充,得出骨骼关节特征向量。
[0042]
s300、进一步分析图像位置信息,获取深度图像时间序列。
[0043]
在s200步骤完成后,所采集驾驶员深度图像数据为包含完整位置信息与骨骼信息的图片集合。本环节在此基础之上,进一步处理所得图像数据,目标在于从中获取深度图像时间序列。
[0044]
首先,将驾驶员姿态深度图像的每一帧投影到三个正交的笛卡尔平面坐标系上,提取序列中驾驶员行为的三维结构空间特征。具体地,通过投影算法,深度图像序列map的每一帧mapi(i表示第i帧)将获取三个分量,分别为前视图侧视图俯视图即(v∈(f,s,t))。
[0045]
之后,计算每两个连续帧的三维空间特征的绝对差值,叠加后得到可作为神经网络输入的深度图像时间序列。具体地,本发明采用深度运动图(dmm)方法,dmmv(v∈(f,s,t))的计算方法为:
[0046][0047]
s301、对深度图像时间序列进行归一化处理。
[0048]
为使神经网络更容易学习到图像特征,需要对输入数据进行归一化处理。本实施例中,对s210步骤完成后的深度图像时间序列需要去除dmmv中像素值为零的边界部分,并统一缩放为224*224的大小。
[0049]
s400、进一步分析图像骨骼信息,计算骨骼节点矩阵。
[0050]
在s200步骤完成后,所采集驾驶员深度图像数据为包含完整位置信息与骨骼信息的图片集合。本环节在此基础之上,进一步处理所得图像数据,目标在于从中计算骨骼节点矩阵。
[0051]
首先,利用驾驶员姿态深度图像中的距离信息检测其上半身行为边缘,对目标进行分割后从背景中提取行为轮廓,其中仅识别驾驶姿势下人体关键部位的主要骨骼点,包括:头、双肩中央、左肩、左肘关节、左腕关节、左手、右肩、右肘关节、右腕关节、右手、脊柱中段。按照1~11的顺序,对其标号。
[0052]
之后,将基于microsoft azure kinect dk坐标系(x,y,z)的骨骼运动序列转换为骨骼节点三维矩阵,其中x、y、z方向与rgb图像的r、g、b通道一一对应。骨骼运动序列是按照时间顺序排列的骨骼数据,每组骨骼数据含有11个主要骨骼点三维坐标,并以1~11的标号进行标识。矩阵行数代表骨骼运动序列的帧数n,矩阵列数代表每一帧骨骼节点数11。最终将每个骨骼运动序列输出为n
×
11
×
3的三维矩阵。
[0053]
s401、对骨骼节点三维矩阵进行归一化处理。
[0054]
为使神经网络更容易学习到图像特征,需要对输入数据进行归一化处理。本实施例中,s220步骤所得骨骼节点矩阵采用截取获补充的方法进行归一化。具体地,设置目标帧数为54帧。选取[0,54]帧作为归一化的骨骼运动序列,多于目标帧的序列截取丢弃,少于目标帧的序列填零补充。处理后的骨骼节点矩阵尺寸为54*11*3,得到作为神经网络输入的骨
骼数据。
[0055]
s500、利用改进的vgg-16网络处理所得数据,融合深度图像序列和骨骼点信息的训练结果,输出驾驶员行为分类结果。
[0056]
本发明采用包含五通道的卷积神经网络,其中前三个通道用于训练深度运动图,后两个通道用于训练骨骼节点矩阵与骨骼关节特征向量。利用后期融合的方法,分别将所得驾驶员姿态深度图像的三维空间特征与时间信息、坐姿上半身骨骼数据的三维运动坐标与拓扑形状的分类结果进行集成决策输出。每一个单通道卷积神经网络采用改进的vgg-16网络,删除经典vgg-16模型的9个卷积层、1个全连接层、1个池化层,简化了模型复杂度。
[0057]
请参照图2,本发明提供了基于深度图像的驾驶行为识别系统中改进的vgg-16网络结构示意图。本发明构建的单通道卷积神经网络共有10个训练层,其中包含4个卷积层、4个池化层以及2个全连接层,不包含分类层。卷积层步长(stride)都为1且采用填充(padding)算法,能够保留卷积过程中的特征图信息。池化层步长(stride)都为2且采用最大池化(max-pooling)算法,能够避免平均池化的模糊化效果。第一个全连接层产生1024个神经元节点(fc-1024)输出,第二个全连接层产生15个神经元节点(fc-15)输出,对应15种不同驾驶行为类别。
[0058]
后期融合有多种算法可选,常见的有平均值法、最大值法、乘积法。本实施例选取平均值法,将五个分类器的输出结果相加并取平均值,能够平均每一个数据对结果的影响,消除突出数据的贡献,得到较为平滑的结果。具体地,其计算方法如下:
[0059][0060]
其中n代表分类器个数,pi表示每个分类器的概率向量。
[0061]
本实施例中,每个卷积神经网络输出后均采用softmax分类器,获取对每个类别的分类概率。
[0062]
请参照图3,本发明提供了基于深度图像的驾驶行为识别系统中五通道卷积神经网络架构示意图。其中五个通道的cnn均采用上述改进的vgg-16网络结构与相同的训练参数,彼此相互独立,在系统运行过程中同时训练,经过集成决策后将相应的分类结构融合输出。使用本发明所述五通道卷积神经网络实现了多模态数据的并行训练,能够同时处理驾驶员姿态的多特征信息,从而更加充分地考虑到了人体行为的时空细节,极大地提高了模型准确率。
[0063]
请参照图4,本发明提供了基于深度图像的驾驶行为识别系统中microsoft azure kinect dk结构示意图。本发明主要依赖于深度摄像头获取图像信息,具体工作原理包括:
[0064]
该深度相机能够实现调幅连续波(amcw)时差测距(tof)原理。该相机将近红外(nir)频谱中的调制光投射到场景中。然后,它会记录光线从相机传播到场景,然后从场景返回到相机所花费的间接时间测量值。处理这些测量值可以生成深度图。深度图是图像每个像素的一组z坐标值,以毫米为单位。
[0065]
采用基于tof原理的深度相机,能够克服光照变化和物体纹理影响。本实施例中,考虑到出行时间因素,可能出现阳光直射的情况或夜间光线昏暗的情况;考虑到车内环境因素,驾驶员可能会在不同装饰风格的背景下行车。本发明采用microsoft azure kinect dk作为深度相机能够很好地克服上述问题。
[0066]
请参照图5,本发明提供了基于深度图像的驾驶行为识别系统中nvidia jetson nano结构示意图。
[0067]
jetson nano开发工具包使用microsd卡作为启动设备和主存储。本实施例中,采用32gb uhs-1卡以提供足够的系统内存。本发明主要利用其处理图像分类任务,能够在一个易于使用的平台中并行运行多个神经网络,运行时只需5瓦特功率。在提供足够算力支持的基础上,功耗极低,很好地适应了车内相对狭小环境下系统布置的需求,简化了边缘计算系统的复杂度。
[0068]
以上所述仅为本发明的较佳实施方式,本发明的保护范围并不以上述实施方式为限,但凡本领域普通技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入权利要求书中记载的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献