一种计算机视觉自动开车门方法及其系统与流程

文档序号:21640830发布日期:2020-07-29 02:52阅读:339来源:国知局
一种计算机视觉自动开车门方法及其系统与流程

本发明涉及深度学习的技术领域,尤其涉及一种计算机视觉自动开车门方法及计算机视觉自动开车门系统。



背景技术:

近年来市面上的根据手势开门的智能系统较少,调研到的一款是麦格纳生产的一款采用红外式感应手势的智能开门系统,该电动化开启系统分三个部分组成,第一是感应系统,感应系统的实现方式是红外式;第二部分是配套的自动开启的智能锁;第三部分是执行机构。具体操作方式是用户做一个划过的手势,电动后门就能自动开启,开启缝隙大约为30到50毫米,可以用手直接开启。该系统只是简单得通过检测红外线的方式来检测附近是否有人体或者手部出现,不能根据用户订制制定的特殊手势,也可能出现当有人经过时的误判端开门。



技术实现要素:

本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。

鉴于上述现有存在的问题,提出了本发明。

因此,本发明解决的一个技术问题是:提出一种计算机视觉自动开车门方法,更为准确得识别特定手势或姿势,减少因为误检测出现的误开门。

为解决上述技术问题,本发明提供如下技术方案:一种计算机视觉自动开车门方法,包括采集目标手势获取姿势图片数据;对所述姿势图片数据进行打标;利用打标完成的所述姿势图片数据训练深度神经网络;将摄像头实时拍摄到的图像输入所述深度神经网络中逐帧进行预测,并输出预测结果数据;根据所述预测结果数据结合算法逻辑判断手势或姿势是否满足开门意图;若满足开门意图,车辆控制器控制车辆自动开启车门。

作为本发明所述的计算机视觉自动开车门方法的一种优选方案,其中:所述目标手势获取包括,采用1920*1080的高清单目摄像头;在白天夜晚室内室外多种不同光线的环境下,与车身摄像头相同的角度;使用单目摄像头连续拍摄需要采集的手部手势以及躯体姿势的图片数据。

作为本发明所述的计算机视觉自动开车门方法的一种优选方案,其中:所述姿势图片数据进行标注包括,通过2d方框将不同手势,姿势框出;分为相对应的含义类型;对手部手指、手掌关键点和躯体关键进行定位标注,标注出关键点在图中的像素坐标。

作为本发明所述的计算机视觉自动开车门方法的一种优选方案,其中:包括使用mxnet深度学习框架,搭建深度神经网络;

定义损失函数,softmax函数如下:

crossentropy函数:

其中l是损失,sj是softmax的其中输出向量s的第j个值,表示样本属于第j个类别的概率,yj前面有个求和符号,j的范围也是1到类别数t,因此label—y是一个1*t的向量,里面的t个值,而且只有1个值是1,其他t-1个值都是0,真实标签对应的位置的那个值是1,其他都是0。

作为本发明所述的计算机视觉自动开车门方法的一种优选方案,其中:使用mxnet深度学习框架对标注好的所述姿势图片数据进行读取;并对搭建的所述深度神经网络进行训练;利用所述损失函数预测的结果与真值的误差、误差的大小再利用梯度优化器对所述深度神经网络的参数进行更新;直至训练指标达到98%以上。

作为本发明所述的计算机视觉自动开车门方法的一种优选方案,其中:所述逐帧预测包括,编写调用训练的所述深度神经网络;读取实时摄像头帧并输入所述深度神经网络对读取的帧进行实时处理;将所述深度神经网络每帧处理过后的结果编写成数组;所述数组传入进行逻辑预测。

作为本发明所述的计算机视觉自动开车门方法的一种优选方案,其中:所述判断手势或姿势是否满足开门意图,包括,判断获取的所述数组是否包含想要的结果;若目标结果标签为2,获得的所述数组中若包含[1,2,3,4],则视为检测结果满足我们的需求,可将判断结果设为1;反之则视为检测结果不包含目标结果,将判断结果设为-1。

作为本发明所述的计算机视觉自动开车门方法的一种优选方案,其中:根据所述判断结果控制车门包括,若判断结果为1,将视为满足开门意图;将开门指令发送给自动开门电动机;反之判断结果为-1,则视为不满足开门意图,不会发送指令给自动开门电机。

作为本发明所述的计算机视觉自动开车门方法的一种优选方案,其中:若所述自动开门电机接收到了满足开门意图的指令,将会通电开启电机并打开车门,否则电机将保持断点待命状态。

本发明解决的另一个技术问题是:提出一种计算机视觉自动开车门方法,更为准确得识别特定手势或姿势,减少因为误检测出现的误开门。

为解决上述技术问题,本发明提供如下技术方案:一种计算机视觉自动开车门系统,包括采集模块、打标模块、深度神经网络模块、逻辑判断模块和控制模块;所述采集模块设置于车身,用于采集目标手势获取姿势图片数据;所述打标模块用于对所述姿势图片数据进行打标;所述深度神经网络模块用于对实时拍摄到的图像逐帧进行预测,并输出预测结果数据;所述逻辑判断模块根据所述预测结果数据结合算法逻辑判断手势或姿势是否满足开门意图并生成控制指令;若满足开门意图,所述控制模块接收所述控制指令,用于车辆控制器控制车辆自动开启车门。

本发明的有益效果:能够更为准确得识别特定手势或姿势,减少因为误检测出现的误开门,通过摄像头能够在距离较远的地方识别出特点手势或姿势,并能够为客户订制特定的手势或姿势,通过特定手势或姿势让门自动开启能够增强该系统的安全性和隐私性。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:

图1为本发明第一种实施例所述计算机视觉自动开车门方法的整体流程示意图;

图2为本发明第一种实施例所述计算机视觉自动开车门系统的整体原理结构示意图;

图3为本发明第三种实施例所述手掌边缘点示意图;

图4为本发明第三种实施例所述手掌边缘轮廓绘制示意图;

图5为本发明第三种实施例所述仿真结果示意图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明,显然所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护的范围。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。

其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。

本发明结合示意图进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。

同时在本发明的描述中,需要说明的是,术语中的“上、下、内和外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一、第二或第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

本发明中除非另有明确的规定和限定,术语“安装、相连、连接”应做广义理解,例如:可以是固定连接、可拆卸连接或一体式连接;同样可以是机械连接、电连接或直接连接,也可以通过中间媒介间接相连,也可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

实施例1

参照图1的示意,示意为本实施例提出基于计算机视觉自动开车门方法的整体流程示意图,该方法可以更为准确得识别特定手势或姿势,减少因为误检测出现的误开门,从可识别距离而言也优于红外式检测系统。通过摄像头可以在距离较远的地方识别出特点手势或姿势,并且可以为客户订制特定的手势或姿势,通过特定手势或姿势让门自动开启也可以增强该系统的安全性和隐私性。具体的,一种计算机视觉自动开车门方法,包括,

s1:采集目标手势获取姿势图片数据;本步骤中目标手势获取包括,

采用1920*1080的高清单目摄像头;

在白天夜晚室内室外多种不同光线的环境下,与车身摄像头相同的角度;

使用单目摄像头连续拍摄需要采集的手部手势以及躯体姿势的图片数据。

s2:对姿势图片数据进行打标,其中姿势图片数据进行标注包括,

通过2d方框将不同手势,姿势框出;

分为相对应的含义类型;

对手部手指、手掌关键点和躯体关键进行定位标注,标注出关键点在图中的像素坐标。

s3:利用打标完成的姿势图片数据训练深度神经网络;具体的包括,

使用mxnet深度学习框架,搭建深度神经网络;

定义损失函数,softmax函数如下:

crossentropy函数:

其中l是损失,sj是softmax的其中输出向量s的第j个值,表示样本属于第j个类别的概率,yj前面有个求和符号,j的范围也是1到类别数t,因此labely是一个1*t的向量,里面的t个值,而且只有1个值是1,其他t-1个值都是0,真实标签对应的位置的那个值是1,其他都是0。

进一步的,使用mxnet深度学习框架对标注好的所述姿势图片数据进行读取;

并对搭建的所述深度神经网络进行训练;

利用所述损失函数预测的结果与真值的误差、误差的大小

再利用梯度优化器对所述深度神经网络的参数进行更新;

直至训练指标达到98%以上。

s4:将摄像头实时拍摄到的图像输入深度神经网络中逐帧进行预测,并输出预测结果数据;本步骤中该逐帧预测包括,

编写调用训练的深度神经网络;

读取实时摄像头帧并输入深度神经网络对读取的帧进行实时处理;

将深度神经网络每帧处理过后的结果编写成数组;

数组传入进行逻辑预测。

s5:根据预测结果数据结合算法逻辑判断手势或姿势是否满足开门意图;判断手势或姿势是否满足开门意图,包括,

判断获取的数组是否包含想要的结果;

若目标结果标签为2,获得的数组中若包含[1,2,3,4],则视为检测结果满足我们的需求,可将判断结果设为1;

反之则视为检测结果不包含目标结果,将判断结果设为-1。

s6:若满足开门意图,车辆控制器控制车辆自动开启车门,若自动开门电机接收到了满足开门意图的指令,将会通电开启电机并打开车门,否则电机将保持断点待命状态。

与现有中通过红外感应的方式来检测是否有手靠近,是否需要开门的方式相比,本实施例通过计算机视觉的方式,准确判断手势和姿势的含义,可通过准确识别不同手势和姿势,做出不同的判断动作,解决现有方案容易出现意图误识别、安全性较低、个性化较差和可识别意图较少的缺点,同时可以增加识别距离,丰富识别意图,增加识别安全性,降低误识别概率,增加隐私性和个性化。

实施例2

参照图2的示意,示意为本实施例提出一种计算机视觉自动开车门系统的整体原理结构示意图,包括采集模块100、打标模块200、深度神经网络模块300、逻辑判断模块400和控制模块500;具体的,采集模块100设置于车身,用于采集目标手势获取姿势图片数据;打标模块200用于对姿势图片数据进行打标;深度神经网络模块300用于对实时拍摄到的图像逐帧进行预测,并输出预测结果数据;逻辑判断模块400根据预测结果数据结合算法逻辑判断手势或姿势是否满足开门意图并生成控制指令;若满足开门意图,控制模块500接收控制指令,用于车辆控制器控制车辆自动开启车门。

实施例3

上述实施例结合开启手势进行开启车门的操作,但是实际操作中周围存在无关人群,会有部分非车主手势若被误识别导致车门被开启,从而发生危险。针对此问题,现有存在通过用户身份绑定或者人脸识别的技术进行识别是否为车主本人,但是需要用到其它辅助技术来完成对手势的屏蔽,会增加开发的成本和难度。基于此,本实施例提出一种手势授权的车门开启控制方法,具体包括以下步骤,

用户注册并登录车载控制系统;

录入用户的手掌信息并对应获得手势授权;

提取手掌信息的掌纹特征和尺寸特征作为授权特征;

当系统接收到手势请求时,获取当前手掌图像,对当前手掌图像进行特征提取并与授权特征匹配;

根据匹配结果判断是否给予当前手势授权。

本实施例提出的手势授权方法,在未额外增加识别其它部位的同时,将手势识别和手掌授权的过程相结合,只需获得手掌图像,而无需获得人脸和其它图像,自身便可完成对其它非录入手掌的手势屏蔽筛选,且识别准备率较与传统人脸识别高。

参照图3的示意,进一步的,录入用户的手掌信息包括以下步骤:

车载摄像头拍摄用户待录入的手掌打开状态下正面和反面的图像;

进行图像的灰度处理,定义在3×3像素的邻域范围内,并以邻域中心点的像素作为阈值,通过与其相邻的8个像素的灰度值的比对,标记像素值的信息;

若该像素值大于阈值,则将其标注为1,否则标注为0;

标注完所有的像素值后得到8位二进制数,即为该领域的特征值;

图像在该领域内的纹理信息就由这个值中反映出特征图像,完成手掌信息的特征录入。

由于上述特征反应的是手掌的纹理,为提高识别的精度,本实施例中提出结合轮廓特征提取,采用边缘检测算法对手掌轮廓进行特征提取,具体包括以下步骤:

彩色图像转换为灰度图像,对图像进行高斯模糊,将灰度图像与高斯核进行卷积处理,抑制掉图像中的高频噪声。

图3中示意为8个边缘点,计算图像边缘幅值和角度,使用微分边缘检测算子获取图像边缘的幅值和角度。根据上述的卷积算子,能够推导出图像在两个坐标轴方向的梯度幅值和梯度方向的值为:

式中:f为图像灰度值,p为x方向梯度幅值,q为y方向梯度幅值,m为该点幅值,q为梯度方向,即角度。

非最大信号压制处理(边缘细化),为了排除其中不属于边缘的像素点,需要对其进行信号压制,即在已找到的点中找出其局部最大值点,并排除掉非局部最大值的点,得到细化后的边缘,精确边缘的具体位置。

双阈值边缘连接处理。对得到的边缘图像确定一个高阈值,以得到含有较少假边缘的图像.但由于所设置的阈值过大,会排除掉一些真边缘,造成得到的图像边缘并不闭合。因此,需要再确定一个低阈值,得到低阈值的边缘,用于连接图像边缘,使边缘重新闭合。

同时认为手上特征轮廓是一段平滑的曲线,定义轮廓曲线函数为s=g(x,y),显然s是非线性的,通过定义点1到点2的线段为s1,设函数模型为:

y=k11x2+k12x+c11

其中,k11,k12,c11为待定系数,以此内推,则s2线段定义函数为:

y=k21x+c21

其中k21和c21为待定系数,进一步划分为s31、s32,s33,其函数模型如下:

f(x,y)=s31f1(x,y)+s32f2(x,y)+s33f3(x,y)。

设f2(x,y)是一个高阶的多项式函数如下:

y=a0+a1x+a2x2+…+anxn,6≤n≤9

其中,从图形的拐点数可以判断其阶数n应不小于6,考虑到拟合的复杂度n应不大于9,而f1(x,y)和f3(x,y)是不高于3阶的多项式函数。整个轮廓曲线s的模型函数如下:

s=s1g1(x,y)+s2g(x,y)+s3g3(x,y)

s是平滑曲线,为满足连续、光滑条件,文本对s1、s2、s3,函数建立约束条件为:

其中,xd,yd分别为曲线分割点的横纵坐标;α(x,y),β(x,y)分别为分割点两侧的曲线函数。

综上分析,为得到函数s的表达式,需要确定s1、s2、s3,进一步分析可知,由于s1、s2函数模型阶数低,待定系数少,若s3已知,通过光滑曲线连续性约束条件再加上1~2个特征点就能得到相应s1、s2的解析函数.对s3而言,若能得到足够多的轮廓参考点,就可以采用最小二乘法分段拟合出该曲线,参照图4的示意,因而变成轮廓参考点的提取。

最后利用最近邻算法计算两张图像的特征的欧氏距离判断其相似度,若相似度大于某个阈值,则认为不是车主,否则判断为车主。

为验证本实施例方法具有较高的识别率,将采用传统人脸识别方式结合手势识别作为对比方法1,以及传统图像特征识别技术作为对比方法2,选取10名不同用户,而本方法需要将10名用户的手掌信息录入至车载控制系统内,对车辆进行开启请求,以每个用户采用各方法进行1~10次的matlb软件编程仿真测试,以车门开启视为识别成功,最终仿真结果如图5的示意,有图中可以看出,本方法在识别中取得了较高的精度。

应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。

此外,可按任何合适的顺序来执行本文描述的过程的操作,除非本文另外指示或以其他方式明显地与上下文矛盾。本文描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。

进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、ram、rom等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。

如在本申请所使用的,术语“组件”、“模块”、“系统”等等旨在指代计算机相关实体,该计算机相关实体可以是硬件、固件、硬件和软件的结合、软件或者运行中的软件。例如,组件可以是,但不限于是:在处理器上运行的处理、处理器、对象、可执行文件、执行中的线程、程序和/或计算机。作为示例,在计算设备上运行的应用和该计算设备都可以是组件。一个或多个组件可以存在于执行中的过程和/或线程中,并且组件可以位于一个计算机中以及/或者分布在两个或更多个计算机之间。此外,这些组件能够从在其上具有各种数据结构的各种计算机可读介质中执行。这些组件可以通过诸如根据具有一个或多个数据分组(例如,来自一个组件的数据,该组件与本地系统、分布式系统中的另一个组件进行交互和/或以信号的方式通过诸如互联网之类的网络与其它系统进行交互)的信号,以本地和/或远程过程的方式进行通信。

应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1