本实用新型专利技术公开了一种手势识别系统,适用于机器人视觉的手势识别,其包括有用以采集输入视频流数据的采集视频流模块、与采集视频流模块连接的手势分割模块、与手势分割模块连接的指尖检测模块、连接指尖检测模块的手势分类模式识别模块以及连接手势分类模式识别模块的手势信息输出模块。藉由手势分割模块、与手势分割模块连接的指尖检测模块、连接指尖检测模块的手势分类模式识别模块,通过边缘检测、跟踪、边缘点插值,为类指尖点检测提供基本条件,之后通过手指间凹槽点过滤以及手臂点过滤,将类指尖点确认为指尖点,其大部分操作是基于类指尖点,因此整体效率较高,足够满足系统的实时性需求,提高效率。(*该技术在2022年保护过期,可自由使用*)
【技术实现步骤摘要】
本技术属于手势识别
,尤其涉及适用于机器人视觉的一种手势识别系统。
技术介绍
目前,随着科技的逐渐发展,仿人机器人得到人们越来越多的关注,相应的研究领域涉及仿人机器人的体系结构、仿人视觉、仿人交互、两足步行。其中手势识别是人和机器人的一个重要交互手段,也是人机交互(HCI)、虚拟现实中重要的组成部分,引起了众多研究者的兴趣。在手势识别技术中,完成数据采集后需要对手进行建模。常见的手部特征主要有肤色特征,纹理特征,轮廓特征等等。关于手部特征的选取和建模,研究者们已经做了大量的工作。其中,对指尖位置的检测和提取是一种常用的技术。如中国专利申请第200910198196. 9号公开的指示手势的手指尖定位方法,其通过计算指示手势的手部区域重心Cx,Cy,以及指示手势的手部区域轮廓线上各点的像素坐标i,j到重心Cx,Cy的距离D,将距离D具有最大值的像素坐标i,j确定为指示手势的手指尖位置Px,Py。另外,还有采用计算掌心与轮廓边缘的距离检测单个指尖的位置等方法。但由于背景的复杂性和系统的实时性要求,现有的方法都很难高效,快速地进行指尖检测,指尖的精确定位仍然是一个具有挑战性的课题。故,实有必要进行研究,提供一种手势识别系统以解决目前现有技术中存在的问题,实现高效快速地进行指尖检测,对指尖快速准确地定位。
技术实现思路
本技术实施例的目的在于提供一种手势识别系统,以高效快速地进行指尖检测,快速准确地对指尖定位。本技术实施例是这样实现的,一种手势识别系统,适用于机器人视觉的手势识别,包括有采集输入视频流数据的采集视频流模块、指尖检测模块、手势分割模块以及手势分类模式识别模块;其中,所述手势分割模块设置于所述采集视频流模块与指尖检测模块之间;所述手势分类模式识别模块连接于指尖检测模块的输出;而所述手势分类模式识别模块连接有一手势信息输出模块。进一步地,所述手势分割模块包括有插值单元,与该插值单元连接有肤色区域边缘提取单元和肤色区域跟踪单元。进一步地,所述指尖检测模块包括有曲率计算单元、分别与曲率计算单元连接的手指间凹槽点过滤单元以及手臂点过滤单元。本技术手势识别系统藉由手势分割模块、与手势分割模块连接的指尖检测模块、连接指尖检测模块的手势分类模式识别模块,通过边缘检测、跟踪、边缘点插值等等,为类指尖点检测提供基本条件,之后通过手指间凹槽点过滤以及手臂点过滤,将类指尖点确认为指尖点,其大部分操作是基于类指尖点,而类指尖点的数量在每一帧中很少,一般不超过10个,因此整体效率较高,足够满足系统的实时性需求,提高效率。附图说明图I是本技术手势识别系统的流程图示。图2是本技术计算出边缘轮廓上每个点的曲率后的效果图。图3是本技术的凹槽点和指尖点的区别不意图。图4是本技术的凹槽点过滤效果图。图5是本技术的手向向量图。图6是本技术的指尖点聚类后效果图。具体实施方式为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。请参照图I所示,本技术手势识别系统,适用于机器人视觉的手势识别,其包括有用以采集输入的视频流数据的采集视频流模块、与采集视频流模块连接的手势分割模块、与手势分割模块连接的指尖检测模块、连接指尖检测模块的手势分类模式识别模块以及连接手势分类模式识别模块的手势信息输出模块。其中,手势分割模块从输入的二值化图像序列中提取边缘信息,获取肤色区域边缘,得到肤色区域的边缘轮廓,其包括有肤色区域边缘提取单元、肤色区域跟踪单元以及插值单元。肤色区域边缘提取单元从输入的二值化图像序列中提取边缘信息,所述二值化图像系视频流中基于肤色信息分割好的二值化图像。本实施例中,采用Canny算子提取边缘信息,使用OpenCV自带的cvCanny和cvFindContours库函数来完成边缘检测。在边缘检测时,为了避免由于光照条件的影响而造成手部区域的边缘可能不连续,采用形态学中的膨胀/腐蚀操作使得边缘连续。在本技术实施例中,使用2次连续的膨胀操作cvDilate以及I次腐蚀操作cvErode,以保证边缘检测时能检测出完整的手部边缘。另外,在获取肤色区域边缘之后,同时还计算出每个边缘轮廓的外接矩形(各边平行于坐标轴的外接矩形)以及最小包围矩形(各边不一定平行于坐标轴的最小外接矩形)。肤色区域跟踪单元用于进行肤色区域跟踪,将一个肤色区域的轮廓(或简称为一个肤色区域)称为一个Object。在全局变量中,保存一个vector〈Object>objects,用于记录场景中出现的所有Object。给每一个Object增加了一个score参量,用来评价这个Object在图像中出现的频率。当一个Object的score足够大时,就可以认为这个0bject在每一帧中都出现了。具体地,当对一帧图像进行边缘检测时,能输出若干个肤色区域vector<0bject>frame 0bjects。将 frame 0bjects 与全局 objects 中的肤色区域进行两两对比。一旦frame 0bjects中的某个肤色区域regionl和全局objects中的某个肤色区域region2为同一个Object的不同形态时,便用regionl的新信息来更新region2的信息,将regionl从frame Objects中移除(因为已找到objects中对应的肤色区域),同时,将对应的region2的score值增加10. O ;对于frame Object中那些无法跟objects中任意一个肤色区域配对的肤色区域,则视其为出现了一个新的肤色区域,并将其插入objects,设该区域的初始score为-10. O。另外,在每一个巾贞循环内,将所有的objects中的肤色区域的score值均减少5. O,当某个肤色区域的score值小于-20. O时,贝U意味着该区域已经很久没有被匹配上了,很有可能该肤色区域已经从摄像头范围内移出。此时即可将该肤色区域从objects中移除。在本实施例中,对于两个肤色区域regionl和region2,若它们的外接矩形recti和rect2的面积比在[0. 5, 2. 0]之间,并且recti和rect2相交出的矩形的面积intersectArea达到了两个父矩形中面积较小者的面积的2倍或以上,则可判定为regionl与region2是同一个Object的不同形态。插值单元用于对肤色区域的边缘轮廓点序列进行插值,以保证相邻点之间的距离大致相等。具体地,若边缘点序列中相邻的两个点为pl和p2,当pi与p2的Manhattan距离大于2时,贝U在其中插入若干点。插值方法为从pl开始,在X方向和y方向分别向p2靠近I个像素并产生插值点,再次继续从两个方向分别向p2靠近I个像素并产生插值点,反复进行下去。在插值的过程中若X方向与y方向中的某一个维度上已经达到p2对应维度上的值,则该维度上的值保持不变,另一个维度上继续增加,直到插值点就是P2为止,停止插值。例如,若pl = (2,8), p2 = (5,13),则插值点序列为pl = (2,8) 本文档来自技高网...
【技术保护点】
一种手势识别系统,适用于机器人视觉的手势识别,包括有采集输入视频流数据的采集视频流模块、指尖检测模块、手势分割模块以及手势分类模式识别模块,其特征在于:所述手势分割模块设置于所述采集视频流模块与指尖检测模块之间;所述手势分类模式识别模块连接于指尖检测模块的输出;而所述手势分类模式识别模块连接有一手势信息输出模块。
【技术特征摘要】
1.一种手势识别系统,适用于机器人视觉的手势识别,包括有采集输入视频流数据的采集视频流模块、指尖检测模块、手势分割模块以及手势分类模式识别模块,其特征在于所述手势分割模块设置于所述采集视频流模块与指尖检测模块之间;所述手势分类模式识别模块连接于指尖检测模块的输出;而所述手势分类模式识别模块连接有一...
【专利技术属性】
技术研发人员:李博男,
申请(专利权)人:李博男,
类型:实用新型
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。