本申请属于计算机技术领域,尤其涉及一种基于机器人的手势识别方法及机器人。
背景技术:
随着人工智能以及人机交互的发展和普及,人机交互已经逐渐融入了人们的生活,这也极大地便利了人们的工作和生活。例如,手势识别作为一种新兴的人机交互方式,在交互的过程中,用户可以通过简单的手势与机器人交互或者控制机器人,让机器理解人类的行为,从而可以通过无接触的方式完成交互过程。然而,现有的机器人手势识别方法识别精度不高,导致识别结果不准确,不利于用户与机器人交互。
技术实现要素:
有鉴于此,本申请实施例提供了一种基于机器人的手势识别方法及机器人,以解决现有的机器人手势识别方法识别精度不高,导致识别结果不准确,不利于用户与机器人交互的问题。
本申请实施例的第一方面提供了一种基于机器人的手势识别方法,包括:
采集待识别手势图像;
获取所述待识别手势图像对应的手部区域图像;
采用第一预设方法对所述手部区域图像进行手势识别处理,得到第一手势;
采用第二预设方法对所述手部区域图像进行手势识别处理,得到第二手势;
基于所述第一手势、所述第二手势以及预设权重系数,确定所述待识别手势图像对应的手势识别结果。
进一步地,为了快速地获取到清晰的手部区域图像,进而提高手势识别的准确率,获取所述待识别手势图像对应的手部区域图像可以包括:
对所述待识别手势图像进行去噪处理,得到去噪图像;
对所述去噪图像进行皮肤区域检测,得到所述手部区域图像。
进一步地,为了快速地获取到清晰的手部区域图像,进而提高手势识别的准确率,对所述去噪图像进行皮肤区域检测,得到所述手部区域图像可以包括:
获取所述去噪图像中的皮肤区域,得到皮肤区域图像;
对所述皮肤区域图像进行形态学操作,得到皮肤区域显著的二值图像;
对所述二值图像进行滤波处理,得到所述手部区域图像。
进一步地,为了准确地识别手部区域图像对应的手势,所述采用第一预设方法对所述手部区域图像进行手势识别处理,得到第一手势包括:
获取所述手部区域图像对应的每个凹包和每个凸包;
获取每个所述凹包对应的坐标值;所述坐标值包括起始点坐标值、终止点坐标值和连接点坐标值;
基于每个所述凹包对应的坐标值以及每个所述凸包,计算所述手部区域图像中的手势对应的夹角值;
获取所述夹角值对应的第一手势。
进一步地,为了准确地识别手部区域图像对应的手势,所述采用第二预设方法对所述手部区域图像进行手势识别处理,得到第二手势包括:
将所述手部区域图像输入预设神经网络模型进行特征提取处理,得到所述手部区域图像对应的特征图像;
将所述特征图像输入预设分类器模型进行分类处理,得到所述第二手势。
所述预设权重系数包括第一预设权重值和第二预设权重值,进一步地,为了提升手势识别的精确度,使手势识别结果更准确,所述基于所述第一手势、所述第二手势以及预设权重系数,确定所述待识别手势图像对应的手势识别结果包括:
计算所述第一手势与所述第一预设权重值的第一乘积,以及计算所述第二手势与所述第二预设权重值的第二乘积;
将所述第一乘积与所述第二乘积之和,与预设阈值进行比较,得到目标比较结果;
基于预设比较结果与预设识别结果之间的对应关系,确定所述目标比较结果对应的手势识别结果。
进一步地,为了便于用户与机器人进行交互,本申请还包括:获取所述手势识别结果对应的控制指令,并基于所述控制指令控制机器人。
本发明实施例的第二方面提供了一种机器人,该机器人包括:
采集单元,用于采集待识别手势图像;
获取单元,用于获取所述待识别手势图像对应的手部区域图像;
第一识别单元,用于采用第一预设方法对所述手部区域图像进行手势识别处理,得到第一手势;
第二识别单元,用于采用第二预设方法对所述手部区域图像进行手势识别处理,得到第二手势;
确定单元,用于基于所述第一手势、所述第二手势以及预设权重系数,确定所述待识别手势图像对应的手势识别结果。
进一步地,所述获取单元包括:
处理单元,用于对所述待识别手势图像进行去噪处理,得到去噪图像;
检测单元,用于对所述去噪图像进行皮肤区域检测,得到所述手部区域图像。
进一步地,所述检测单元具体用于:
获取所述去噪图像中的皮肤区域,得到皮肤区域图像;
对所述皮肤区域图像进行形态学操作,得到皮肤区域显著的二值图像;
对所述二值图像进行滤波处理,得到所述手部区域图像。
进一步地,所述第一识别单元具体用于:
获取所述手部区域图像对应的每个凹包和每个凸包;
获取每个所述凹包对应的坐标值;所述坐标值包括起始点坐标值、终止点坐标值和连接点坐标值;
基于每个所述凹包对应的坐标值以及每个所述凸包,计算所述手部区域图像中的手势对应的夹角值;
获取所述夹角值对应的第一手势。
进一步地,所述第二识别单元具体用于:
将所述手部区域图像输入预设神经网络模型进行特征提取处理,得到所述手部区域图像对应的特征图像;
将所述特征图像输入预设分类器模型进行分类处理,得到所述第二手势。
所述预设权重系数包括第一预设权重值和第二预设权重值;
进一步地,所述确定单元具体用于:
计算所述第一手势与所述第一预设权重值的第一乘积,以及计算所述第二手势与所述第二预设权重值的第二乘积;
将所述第一乘积与所述第二乘积之和,与预设阈值进行比较,得到目标比较结果;
基于预设比较结果与预设识别结果之间的对应关系,确定所述目标比较结果对应的手势识别结果。
进一步地,所述机器人还包括:
控制单元,用于获取所述手势识别结果对应的控制指令,并基于所述控制指令控制机器人。
本发明实施例的第三方面提供了另一种机器人,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储支持终端执行上述方法的计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行以下步骤:
采集待识别手势图像;
获取所述待识别手势图像对应的手部区域图像;
采用第一预设方法对所述手部区域图像进行手势识别处理,得到第一手势;
采用第二预设方法对所述手部区域图像进行手势识别处理,得到第二手势;
基于所述第一手势、所述第二手势以及预设权重系数,确定所述待识别手势图像对应的手势识别结果。
本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
采集待识别手势图像;
获取所述待识别手势图像对应的手部区域图像;
采用第一预设方法对所述手部区域图像进行手势识别处理,得到第一手势;
采用第二预设方法对所述手部区域图像进行手势识别处理,得到第二手势;
基于所述第一手势、所述第二手势以及预设权重系数,确定所述待识别手势图像对应的手势识别结果。
本申请实施例提供的一种基于机器人的手势识别方法及机器人具有以下有益效果:
本申请实施例,机器人采集待识别手势图像;获取所述待识别手势图像对应的手部区域图像;采用第一预设方法对所述手部区域图像进行手势识别处理,得到第一手势;采用第二预设方法对所述手部区域图像进行手势识别处理,得到第二手势;基于所述第一手势、所述第二手势以及预设权重系数,确定所述待识别手势图像对应的手势识别结果。上述方式,机器人采集待识别手势图像,并获取对应的手部区域图像,通过两种不同的方法对手部区域图像进行手势识别处理,进而对两种识别结果进行加权,得到最终的手势识别结果,使得到的识别结果更准确,有利于用户与机器人交互。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的一种基于机器人的手势识别方法的实现流程图;
图2是本申请另一实施例提供的一种基于机器人的手势识别方法的实现流程图;
图3是本申请一实施例提供的一种机器人的示意图;
图4是本申请另一实施例提供的一种机器人的示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
请参见图1,图1是本发明实施例提供的一种基于机器人的手势识别方法的示意流程图。本实施例中基于机器人的手势识别方法的执行主体为机器人。如图1所示的基于机器人的手势识别方法包括:
s101:采集待识别手势图像。
待识别手势图像可以理解为需要被识别出手势的图像。机器人预先开启摄像头,在检测到当前用户做出手势时,通过该摄像头采集当前用户的手势图像,即采集待识别手势图像。也可以是在检测到当前用户做出手势时,采集包含手势动作的预设时长的视频,获取采集的视频中的一帧图像作为待识别手势图像。例如,教育机器人预先开启摄像头,在检测到当前用户做出手势时,采集包含该手势动作的2秒的视频,获取该视频中最后一帧图像作为待识别图像。
s102:获取所述待识别手势图像对应的手部区域图像。
机器人获取待识别手势图像对应的手部区域图像,即待识别手势图像中包含了用户做出手势时的手部图像,机器人获取该手部区域的图像。具体地,机器人可先对待识别手势图像进行去噪处理,得到待识别手势图像对应的去噪图像;对去噪图像进行皮肤区域检测,得到待识别手势图像对应的手部区域图像。
进一步地,为了快速地获取到清晰的手部区域图像,进而提高手势识别的准确率,s102可以包括s1021-s1022,具体如下:
s1021:对所述待识别手势图像进行去噪处理,得到去噪图像。
机器人对待识别手势图像进行去噪处理,得到去噪图像。机器人可以先对待识别手势图像进行高斯滤波处理,具体地,机器人调整待识别手势图像,得到待识别手势图像对应的灰度图像。将灰度图像对应的rgb颜色模式转换为hsv颜色模式,得到去噪图像,具体地,机器人获取灰度图像对应的rgb颜色模式,基于rgb颜色模式获取灰度图像在各个通道对应的通道值,基于各个通道值以及通道转换方法将灰度图像rgb颜色模式转换为hsv颜色模式,得到去噪图像。
s1022:对所述去噪图像进行皮肤区域检测,得到所述手部区域图像。
机器人对去噪图像进行皮肤区域检测,得到待识别手势图像对应的手部区域图像。具体地,机器人获取去噪图像中的皮肤区域,得到皮肤区域图像;对皮肤区域图像进行形态学操作,如膨胀操作和腐蚀操作,得到皮肤区域显著的二值图像;对二值图像进行滤波处理,得到手部区域图像。
进一步地,为了快速地获取到清晰的手部区域图像,进而提高手势识别的准确率,s1022可以包括s10221-s10223,具体如下:
s10221:获取所述去噪图像中的皮肤区域,得到皮肤区域图像。
机器人获取去噪图像中的皮肤区域,得到皮肤区域图像。具体地可通过预设函数检测去噪图像中的皮肤区域,即检测手部皮肤区域,提取该皮肤区域对应的图像,即得到该皮肤区域图像。
s102212:对所述皮肤区域图像进行形态学操作,得到皮肤区域显著的二值图像。
机器人对皮肤区域图像进行形态学操作,得到皮肤区域显著的二值图像。形态学操作包括形态学腐蚀操作以及形态学膨胀操作,通俗点可理解为腐蚀就是“变瘦”,膨胀就是“变胖”。机器人对皮肤区域图像进行形态学膨胀操作,得到膨胀图像;进而对该膨胀图像进行形态学腐蚀操作,得到皮肤区域显著的二值图像。皮肤区域显著可以理解为在该二值图像中,手部皮肤区域非常明显,即在该二值图像中皮肤区域明显区别于其余非皮肤区域。
s10223:对所述二值图像进行滤波处理,得到所述手部区域图像。
机器人对二值图像进行滤波处理,得到手部区域图像。具体地,可通过中值滤波方法对二值图像进行滤波处理,得到手部区域图像。例如,将二值图像中孤立的像素点的值用该点的一个邻域中各点值的中值代替,使得像素值更接近真实值,从而消除孤立的噪声点。对二值图像进行中值滤波处理,使得到的手部区域图像更清晰,便于后续对手部区域图像进行手势识别处理。
s103:采用第一预设方法对所述手部区域图像进行手势识别处理,得到第一手势。
机器人采用第一预设方法对手部区域图像进行手势识别处理,得到第一手势。具体地,获取手部区域图像对应的每个凹包和每个凸包,其中,凹包指两个手指中凹陷进去的地方,凸包指凸起的每个手指;当用户做出不同的手势时,会得到不同的手部区域图像,进而该手部区域图像对应不同的凹包和凸包;机器人获取每个凹包对应的坐标值,如起始点坐标值、终止点坐标值以及连接点坐标值;基于每个凹包对应的各个坐标值和手部区域图像对应的凸包,计算手部区域图像中的手势对应的夹角值;根据该夹角值获取与该夹角值对应的手势,即获取第一手势。
进一步地,为了准确地识别手部区域图像对应的手势,s103可以包括s1031-s1034,具体如下:
s1031:获取所述手部区域图像对应的每个凹包和每个凸包。
机器人获取手部区域图像对应的每个凹包和每个凸包;凹包指两个手指中凹陷进去的地方,凸包指凸起的每个手指;当用户做出不同的手势时,会得到不同的手部区域图像,进而该手部区域图像对应不同的凹包和凸包,机器人获取该手部区域图像对应的每个凹包和每个凸包;也可以理解为机器人获取手部区域图像中的所有凹包和所有凸包。
s1032:获取每个所述凹包对应的坐标值;所述坐标值包括起始点坐标值、终止点坐标值和连接点坐标值。
机器人获取每个凹包对应的坐标值。其中,每个凹包对应的坐标值包括该凹包对应的起始点坐标值、该凹包对应的终止点坐标值以及该凹包对应的连接点坐标值。连接点坐标值又称为远端点坐标值,是指两个手指的连接处对应的点的坐标值。
s1033:基于每个所述凹包对应的坐标值以及每个所述凸包,计算所述手部区域图像中的手势对应的夹角值。
机器人基于每个凹包对应的坐标值以及每个凸包,计算手部区域图像中的手势对应的夹角值。具体地,可统计该手部区域图像对应的凸包的数量,通过获取到的凹包以及凸包可预测手部区域图像对应的手势;基于每个凹包对应的起始点坐标值、终止点坐标值和连接点坐标值,通过预设计算方法计算手部区域图像中的手势对应的夹角值;例如,通过三角形余弦定理计算手部区域图像中的手势对应的夹角值。
s1034:获取所述夹角值对应的第一手势。
机器人获取手部区域图像中的手势对应的夹角值所对应的第一手势;其中,第一手势可理解为通过第一预设方法对手部区域图像进行手势识别处理后得到的手势识别结果,例如,第一手势可以为剪刀手、布、拳头、指向不同方向的食指等。具体地,机器人的数据库中预先存储有不同的手势,以及每个手势对应的夹角值范围,可根据获取到的夹角值确定该夹角值属于哪个夹角值范围内,进而确定该夹角值对应的手势,即第一手势。进一步地,数据库中还可存储每个手势对应的夹角值的数量,当获取到的夹角值有多个时,先获取与其夹角值数量匹配的手势,获取该手势对应的每个夹角值的夹角值范围,判断获取到的夹角值是否都在对应的夹角值范围内;当获取到的夹角值都在对应的夹角值范围内时,将该手势作为手部区域图像对应的手势识别结果,即将该手势作为第一手势。
s104:采用第二预设方法对所述手部区域图像进行手势识别处理,得到第二手势。
机器人采用第二预设方法对手部区域图像进行手势识别处理,得到第二手势。其中,第二手势可理解为通过第二预设方法对手部区域图像进行手势识别处理后得到的手势识别结果,第二手势可能与第一手势相同,也可能与第一手势不同。具体地,可将手部区域图像输入预设神经网络模型进行特征提取处理,得到手部区域图像对应的特征图像;将特征图像输入预设分类器模型进行分类处理,得到第二手势。第二手势可以理解为机器人采用第二预设方法对手部区域图像进行手势识别处理后,得到手势识别结果。值得说明的是,s103与s104可同时执行,以实际执行顺序为准,对此不做限定。
进一步地,为了准确地识别手部区域图像对应的手势,s104可以包括s1041-s1042,具体如下:
s1041:将所述手部区域图像输入预设神经网络模型进行特征提取处理,得到所述手部区域图像对应的特征图像。
机器人将手部区域图像输入预设神经网络模型进行特征提取处理,得到手部区域图像对应的特征图像。预设神经网络模型是预先训练好的神经网络模型;在训练过程中,训练中的神经网络模型的输入为手部区域样本图像,该神经网络模型对这些手部区域样本图像进行特征提取处理,训练中的神经网络模型的输出每个手部区域样本图像对应的特征图像,并根据输出结果以及损失函数更新神经网络模型的参数。当训练中的神经网络模型的损失函数开始收敛时,证明该神经网络模型已经训练完成,得到训练好的神经网络模型,即预设神经网络模型。机器人将手部区域图像输入预设神经网络模型,预设神经网络模型中的各个网络层提取该手部区域图像中的关键点特征向量,并基于这些关键点特征向量生成特征图像,预设神经网络模型输出手部区域图像对应的特征图像。
s1042:将所述特征图像输入预设分类器模型进行分类处理,得到所述第二手势。
机器人将特征图像输入预设分类器模型进行分类处理,得到第二手势。具体地,预设分类器模型是预先训练好的分类器模型;在训练过程中,训练中的分类器模型的输入为样本特征图像以及各个样本特征图像对应的手势。该分类器模型对这些样本特征图像进行分类处理,训练中的分类器模型输出每个样本特征图像对应的手势,并根据输出结果以及损失函数更新分类器模型的参数。当训练中的分类器模型的损失函数开始收敛时,证明该分类器模型已经训练完成,得到训练好的分类器模型,即预设分类器模型。机器人将特征图像输入预设分类器模型,预设分类器模型对该特征图像进行分类处理,获取与该特征图像匹配的手势,预设分类器模型输出该手势,即输出第二手势。
s105:基于所述第一手势、所述第二手势以及预设权重系数,确定所述待识别手势图像对应的手势识别结果。
机器人基于第一手势、第二手势以及预设权重系数,确定待识别手势图像对应的手势识别结果。其中,预设权重系数可以包括第一预设权重值和第二预设权重值,第一预设权重值与第一手势对应,第二预设权重值与第二手势对应。第一手势以及第二手势都以数值的形式表现,机器人计算第一手势与第一预设权重值的第一乘积,以及计算第二手势与第二预设权重值的第二乘积;将第一乘积与第二乘积之和,与预设阈值进行比较,得到目标比较结果;基于预设比较结果与预设识别结果之间的对应关系,确定目标比较结果对应的手势识别结果。
进一步地,为了提升手势识别的精确度,使手势识别结果更准确,s105可以包括s1051-s1053,具体如下:
s1051:计算所述第一手势与所述第一预设权重值的第一乘积,以及计算所述第二手势与所述第二预设权重值的第二乘积。
预设权重系数可以包括第一预设权重值和第二预设权重值,第一预设权重值与第一手势对应,第二预设权重值与第二手势对应。第一手势以及第二手势都以数值的形式表现,机器人计算第一手势与第一预设权重值的第一乘积,以及计算第二手势与第二预设权重值的第二乘积可以理解为,机器人计算第一手势对应的数值与第一预设权重值的第一乘积,以及计算第二手势对应的数值与第二预设权重值的第二乘积。
s1052:将所述第一乘积与所述第二乘积之和,与预设阈值进行比较,得到目标比较结果。
机器人将第一乘积与第二乘积之和,与预设阈值进行比较,得到目标比较结果,其中,预设阈值可预先设置,用于和第一乘积与第二乘积之和作比较。具体地,计算第一乘积与第二乘积之和,将计算得到的和与预设阈值进行比较,得到目标比较结果。例如,目标结果可能为第一乘积与第二乘积之和大于预设阈值,也可能为第一乘积与第二乘积之和等于预设阈值,还可能为第一乘积与第二乘积之和小于预设阈值。
s1053:基于预设比较结果与预设识别结果之间的对应关系,确定所述目标比较结果对应的手势识别结果。
机器人基于预设比较结果与预设识别结果之间的对应关系,确定目标比较结果对应的手势识别结果。具体地,可预先建立并存储各个比较结果与各个识别结果之间的对应关系。其中,预设比较结果包括第一乘积与第二乘积之和大于预设阈值、第一乘积与第二乘积之和等于预设阈值以及第一乘积与第二乘积之和小于预设阈值,对应的预设识别结果为第一手势和第二手势;即当第一乘积与第二乘积之和大于或等于预设阈值时,对应的预设识别结果均为第一手势;当第一乘积与第二乘积之和小于预设阈值时,对应的预设识别结果为第二手势。
机器人基于目标比较结果获取与其匹配的预设比较结果,进而获取到该目标比较结果对应的预设识别结果,即手势识别结果,也就获取到了待识别手势图像对应的最终的手势识别结果。例如,当目标比较结果为第一乘积与第二乘积之和大于或等于预设阈值时,对应的手势识别结果为第一手势,即机器人采用第一预设方法对手部区域图像进行手势识别处理,得到的手势识别结果。当目标比较结果为第一乘积与第二乘积之和小于预设阈值时,对应的手势识别结果为第二手势,即机器人采用第二预设方法对手部区域图像进行手势识别处理,得到的手势识别结果。
本申请实施例,机器人采集待识别手势图像;获取所述待识别手势图像对应的手部区域图像;采用第一预设方法对所述手部区域图像进行手势识别处理,得到第一手势;采用第二预设方法对所述手部区域图像进行手势识别处理,得到第二手势;基于所述第一手势、所述第二手势以及预设权重系数,确定所述待识别手势图像对应的手势识别结果。上述方式,机器人采集待识别手势图像,并获取对应的手部区域图像,通过两种不同的方法对手部区域图像进行手势识别处理,进而对两种识别结果进行加权,得到最终的手势识别结果;提升了机器人手势识别的识别精度,使得到的识别结果更准确,有利于用户与机器人交互。
请参见图2,图2是本发明另一实施例提供的一种基于机器人的手势识别方法的示意流程图。本实施例中基于机器人的手势识别方法的执行主体为机器人。
本实施例与上一实施例的区别为s206,本实施例中s201-s205与上一实施例中的s101-s105完全相同,具体请参阅上一实施例中s101-s105的相关描述,此处不赘述。
进一步地,为了便于用户与机器人进行交互,在s205之后还可包括s206,具体如下:
s206:获取所述手势识别结果对应的控制指令,并基于所述控制指令控制机器人。
机器人获取手势识别结果对应的控制指令,并基于控制指令控制机器人。可预先存储有不同的手势识别结果对应的不同的控制指令,可根据这些控制指令控制机器人,使机器人做出不同的动作,实现机器人与用户之间的交互。例如,机器人可根据不同的控制指令做出行走、停止、语音交互、语言模仿、灯光特效等。
本申请实施例,机器人采集待识别手势图像;获取所述待识别手势图像对应的手部区域图像;采用第一预设方法对所述手部区域图像进行手势识别处理,得到第一手势;采用第二预设方法对所述手部区域图像进行手势识别处理,得到第二手势;基于所述第一手势、所述第二手势以及预设权重系数,确定所述待识别手势图像对应的手势识别结果。上述方式,机器人采集待识别手势图像,并获取对应的手部区域图像,通过两种不同的方法对手部区域图像进行手势识别处理,进而对两种识别结果进行加权,得到最终的手势识别结果;提升了机器人手势识别的识别精度,使得到的识别结果更准确,有利于用户与机器人交互;进一步,根据不同的控制指令可使机器人做出不同的动作,增强了机器人与用户的交互能力;例如当机器人为教育机器人,用户为学生时,教育机器人可根据不同的控制指令在不同场景做出不同的动作,提高了教育机器人与学生之间的互动能力。
请参见图3,图3是本申请一实施例提供的一种机器人的示意图。该机器人包括的各单元用于执行图1、图2对应的实施例中的各步骤。具体请参阅图1、图2各自对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。参见图3,包括:
采集单元310,用于采集待识别手势图像;
获取单元320,用于获取所述待识别手势图像对应的手部区域图像;
第一识别单元330,用于采用第一预设方法对所述手部区域图像进行手势识别处理,得到第一手势;
第二识别单元340,用于采用第二预设方法对所述手部区域图像进行手势识别处理,得到第二手势;
确定单元350,用于基于所述第一手势、所述第二手势以及预设权重系数,确定所述待识别手势图像对应的手势识别结果。
进一步地,所述获取单元320包括:
处理单元,用于对所述待识别手势图像进行去噪处理,得到去噪图像;
检测单元,用于对所述去噪图像进行皮肤区域检测,得到所述手部区域图像。
进一步地,所述检测单元具体用于:
获取所述去噪图像中的皮肤区域,得到皮肤区域图像;
对所述皮肤区域图像进行形态学操作,得到皮肤区域显著的二值图像;
对所述二值图像进行滤波处理,得到所述手部区域图像。
进一步地,所述第一识别单元330具体用于:
获取所述手部区域图像对应的每个凹包和每个凸包;
获取每个所述凹包对应的坐标值;所述坐标值包括起始点坐标值、终止点坐标值和连接点坐标值;
基于每个所述凹包对应的坐标值以及每个所述凸包,计算所述手部区域图像中的手势对应的夹角值;
获取所述夹角值对应的第一手势。
进一步地,所述第二识别单元340具体用于:
将所述手部区域图像输入预设神经网络模型进行特征提取处理,得到所述手部区域图像对应的特征图像;
将所述特征图像输入预设分类器模型进行分类处理,得到所述第二手势。
所述预设权重系数包括第一预设权重值和第二预设权重值;
进一步地,所述确定单元350具体用于:
计算所述第一手势与所述第一预设权重值的第一乘积,以及计算所述第二手势与所述第二预设权重值的第二乘积;
将所述第一乘积与所述第二乘积之和,与预设阈值进行比较,得到目标比较结果;
基于预设比较结果与预设识别结果之间的对应关系,确定所述目标比较结果对应的手势识别结果。
进一步地,所述机器人还包括:
控制单元,用于获取所述手势识别结果对应的控制指令,并基于所述控制指令控制机器人。
请参见图4,图4是本申请另一实施例提供的一种机器人的示意图。如图4所示,该实施例的机器人4包括:处理器40、存储器41以及存储在所述存储器41中并可在所述处理器40上运行的计算机可读指令42。所述处理器40执行所述计算机可读指令42时实现上述各个手势识别方法实施例中的步骤,例如图1所示的s101至s105。或者,所述处理器40执行所述计算机可读指令42时实现上述各实施例中各单元的功能,例如图3所示单元310至350功能。
示例性的,所述计算机可读指令42可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器41中,并由所述处理器40执行,以完成本申请。所述一个或多个单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机可读指令42在所述机器人4中的执行过程。例如,所述计算机可读指令42可以为采集单元、获取单元、第一识别单元、第二识别单元以及确定单元,各单元具体功能如上所述。
所述机器人可包括,但不仅限于,处理器40、存储器41。本领域技术人员可以理解,图4仅仅是机器人4的示例,并不构成对机器人4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述机器人还可以包括输入输出设备、网络接入设备、总线等。
所称处理器40可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器41可以是所述机器人4的内部存储单元,例如机器人4的硬盘或内存。所述存储器41也可以是所述机器人4的外部存储设备,例如所述机器人4上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述存储器41还可以既包括所述机器人4的内部存储单元也包括外部存储设备。所述存储器41用于存储所述计算机可读指令以及所述机器人所需的其他程序和数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神范围,应包含在本申请的保护范围之内。