基于Kinect深度信息的手指检测与手势识别

合集下载

基于深度信息的指尖追踪及手势识别

基于深度信息的指尖追踪及手势识别

基于深度信息的指尖追踪及手势识别顾德;李吉【摘要】This paper presents an algorithm to realize the finger and palm tracking based on the depth information in real time. The recognized actions can be used for hand pose recognition. The depth map of the hands is captured by Kinect, which then converts the depth map to 3D point cloud in a form of pixel matrix. Fingers and direction of palms are calculated by using K-curvature algorithm. Finger names are determined according to their relative distances. Experimental results show that the present method effectively achieves the finger and palm tracking, and is unaffected by light and complex background. This method can apply to hand pose recognition.%提出了一个基于深度信息对手指和手部进行实时跟踪,并可用于手势识别的方案。

用Kinect获取深度信息,然后生成手部的三维点云,进行过滤转换成像素矩阵;使用K-curvature算法获取指尖和手掌方位,然后通过手指之间的相关距离进行手指标定。

实验结果证明该方案识别追踪效果稳定且高效,不受光照和复杂背景影响,能够同时跟踪双手共10个手指和2个掌心的动作轨迹,并用于手势识别。

基于微软Kinect的手势识别技术研究

基于微软Kinect的手势识别技术研究

基于微软Kinect的手势识别技术研究近年来,随着科技的快速发展,各种智能设备也逐渐普及。

其中,基于微软Kinect的手势识别技术备受关注。

这一技术通过使用Kinect摄像头和深度传感器,可以感知人体的运动姿势和动作,并将其转化为相应的指令,实现对设备的控制。

本文就从技术原理、应用场景及发展趋势等方面进行探讨。

一、技术原理微软Kinect是一款专门用于游戏控制的设备,其核心技术在于3D深度摄像头和红外发射器。

摄像头能够捕捉周围环境的深度信息,而红外发射器则能够检测人体的运动姿势。

其中,深度摄像头通过红外线的反射和接收,可以精确地测量物体距离,将其转化为三维坐标。

而红外发射器则可以发射红外信号,以检测人体在空间中的运动。

基于这一技术,Kinect的手势识别功能应运而生。

通过人体骨架模型的建立和动作捕捉算法,Kinect可以识别人体姿态和动作,并将其转化成计算机能够理解的指令。

例如,向左移动手臂可以控制游戏中的角色向左转动,向前伸手可以控制角色前进等等。

同时,Kinect还支持语音控制和面部表情识别等功能,大大提升了用户的交互体验。

二、应用场景手势识别技术作为一种新兴的交互方式,已经得到了广泛的应用。

除了游戏控制以外,其实际应用场景还包括人机交互、智能家居、虚拟现实等领域。

在人机交互领域,手势识别技术可以被应用于机器人控制、医疗诊断、智能办公等方面。

例如,在智能办公场景中,用户可以通过手势控制电脑的开关、程序的启动以及文档的编辑等操作,提高工作效率。

在智能家居领域,手势识别技术可以被应用于智能家电的控制、家庭安防等方面。

例如,在智能家电方面,用户可以通过手势控制灯光的开关、音响的播放以及电视的切换等操作,提高家居生活的便利程度。

在虚拟现实领域,手势识别技术可以被应用于3D模型设计、游戏控制等方面。

例如,在游戏领域中,用户可以通过手势控制游戏角色的动作和攻击技能,提供更为真实的游戏体验。

三、发展趋势手势识别技术虽然已经取得了很大的进展,但还有很多发展空间。

《2024年基于Kinect的手势识别与机器人控制技术研究》范文

《2024年基于Kinect的手势识别与机器人控制技术研究》范文

《基于Kinect的手势识别与机器人控制技术研究》篇一一、引言随着人工智能技术的不断发展,人机交互技术已成为研究热点之一。

其中,基于Kinect的手势识别技术因其高精度、高效率、低成本的优点,得到了广泛的应用。

而将手势识别技术应用于机器人控制,则能够进一步拓展人机交互的范畴,提高机器人的智能化水平。

本文将对手势识别技术和机器人控制技术进行深入的研究和探讨,基于Kinect传感器进行实验和分析。

二、Kinect传感器及其应用Kinect是微软公司开发的一款体感设备,具有捕捉人体动作、语音和手势等功能。

在计算机视觉、人机交互、机器人控制等领域有着广泛的应用。

基于Kinect的手势识别技术,可以通过捕捉人体手部动作的信息,实现对手势的准确识别和解析。

同时,Kinect还可以实时监测人体骨骼的位置和运动状态,从而更精确地完成动作捕捉。

三、手势识别技术研究基于Kinect的手势识别技术,主要通过以下步骤实现:首先,利用Kinect传感器捕捉人体的骨骼信息;其次,通过算法对手部骨骼信息进行提取和预处理;然后,利用机器学习算法对手势进行分类和识别;最后,将识别的手势信息转化为计算机可以理解的指令或命令。

在手势识别技术中,机器学习算法的应用至关重要。

常见的机器学习算法包括支持向量机(SVM)、随机森林(Random Forest)、神经网络等。

这些算法可以通过训练大量的手势样本,提高手势识别的准确性和鲁棒性。

此外,深度学习算法在手势识别中也得到了广泛的应用,如卷积神经网络(CNN)等。

四、机器人控制技术研究机器人控制技术是实现人机交互的关键技术之一。

基于Kinect的手势识别技术可以实现对机器人的控制。

在机器人控制中,需要将识别的手势信息转化为机器人的运动指令或动作。

这需要借助于计算机视觉技术和运动规划技术。

计算机视觉技术可以实现对机器人周围环境的感知和识别,从而为机器人的运动规划提供依据。

运动规划技术则可以根据机器人的任务需求和周围环境信息,规划出最优的运动轨迹和动作。

基于Kinect的手势识别算法研究及应用

基于Kinect的手势识别算法研究及应用
sensor
Digital TV simulation control
割方法¨-及基于人为增加限制的方法(如有些系统要求使用者
0引

戴上有色手套∞1)。手势的特征提取是影响手势识别率的关键 因素,目前特征值的选取有很多方法。7J1:选择手掌区域、手掌 中心及手的倾斜度,或提取手掌轮廓区域的几何特征或手掌的 运动轨迹等进行分析识别;在手势识别环节,识别方法可以分为 基于规则的手势识别。9 o和基于机器学习的手势识别¨””1。其 中基于机器学习的手势识别方法通过学习大量的训练样本特征 向量来确定分类器,是一种鲁棒性较高的手势识别方法。目前 手势识别中人手分割与定位主要是从彩色的视频帧图像或静态 图像中提取颜色及形状等信息进行手势的定位与识别,但颜色 特征易受光照变化和人手肤色等因素的影响使得在复杂背景下
trajectories
using Kinect and extracts the
tangent.ande
of
trajectory
as the feature,then employs the improved hidden Markov model to the proposed dynamic hand gestures recognition algorithm
technology.In order
to
improve the performance of Kinect—based hand gesture recognition,we propose the static hand gestures recognition algorithm,which is based
that the
proposed static hand gestures recognition algorithm obtains hi【sher recognition rate.The palm

基于深度信息的指尖追踪及手势识别

基于深度信息的指尖追踪及手势识别
b a c k g r o u nd . Th i s me t h o d c a n a p p l y t o ha n d po s e r e c o g n i t i o n.
Ke y wo r d s : d e p t h d a t a ; i f n g e r t i p d e t e c t i o n ; g e s t u r e r e c o g n i t i o n ; Hu ma n - Ma c h i n e I n t e r a c t i o n ( HCI )

要: 提 出 了一 个基 于深度 信 息对手指 和 手部进行 实时跟 踪 , 并可用 于手 势识别 的方案 。用 K i n e c t 获取 深度信
息, 然后生成手部 的三维点云 , 进行 过滤转换成像素矩 阵; 使用K - c u r v a t u r e 算法获取 指 尖和手掌方位 , 然后通 过手 指 2 1Leabharlann 40 6 2 , Ch i na
GU De ,LI Ji . Ha nd a nd ing f e r t r a c ki n g b a s e d o n Ki ne c t de pt h i n f o r ma t i o n .Co mp ut e r En g i ne e r i n g a n d Appl i c a —
s h o w t ha t t h e p r e s e nt me t h o d e f f e c t i v e l y a c h i e v e s t h e in f g e r a n d p a l m t r a c k i n g ,a n d i s u n a f f e c t e d b y l i g ht a n d c o mp l e x

3基于Kinect深度信息的手势识别_王艳

3基于Kinect深度信息的手势识别_王艳

第28卷第1期2013年2月北京信息科技大学学报Journal of Beijing Information Science and Technology UniversityVol.28No.1Feb.2013文章编号:1674-6864(2013)01-0000-05基于Kinect 深度信息的手势识别王艳,张奇志(北京信息科技大学自动化学院,北京100192)摘要:设计了一种基于Kinect 深度信息和双阈值分割的运动手势识别算法。

结合OpenCV 和OpenNI ,在vs2010环境下实现了该算法。

利用Kinect 的深度摄像头获取深度图像;对该图像进行双阈值分割,获取手部图像;再对手部图像进行形态学处理,获取完整的手形;最后,利用OpenNI 的手势生成器GestureGenerator 对手势进行跟踪识别。

利用深度图像进行手势识别,通过双阈值分割,不仅去除了背景干扰,也能去除一部分前景干扰。

用不同颜色点、圆和线的形式表示各种手势,可以清晰地实时显示识别效果。

关键词:手势识别;Kinect ;深度信息;手势生成中图分类号:TP 24文献标志码:A Gesture recognition based on Kinect depth informationWANG Yan ,ZHANG Qi-zhi(School of Automation ,Beijing Information Science and Technology University ,Beijing 100192,China )Abstract :An algorithm of moving gesture recognition based on the depth information of Kinect and dual threshold segmentation is designed.The algorithm is realized under VS2010by integrating OpenCV and OpenNI.Firstly ,the depth camera of Kinect is used to get the depth image.Secondly ,the dual thresholds are used to segment the image to get the image of just hand.Then morphology process is performed for the image to achieve more integrity hand shape.Finally ,the GestureGenerator of OpenNI is utilized to track and recognize the gesture.In this method ,the obstructions of background and part of foreground are removed by dual threshold segmentation.Points ,circles and lines in different colors are used to describe the gestures ,so the results of recognition can be clearly shown in real time.Key words :gesture recognition ;Kinect ;depth information ;gesture generation收稿日期:2012-09-17基金项目:国家自然科学基金资助项目(11172047,11072038);北京市属高等学校人才强教深化计划资助项目(PHR201106131)作者简介:王艳(1987—),女,四川资阳人,硕士研究生,主要从事手势识别方面的研究。

基于KINECT深度图像信息的手势轨迹识别及应用

基于KINECT深度图像信息的手势轨迹识别及应用

收稿日期:2012-01-12;修回日期:2012-04-10基金项目:国家科技部国际合作项目(2010DFA12160);重庆市科技攻关资助项目(STC ,2010AA2055);国家自然科学基金资助项目(51075420,60905066);重庆市教委科学技术研究项目(KJ100516)作者简介:张毅(1966-),男,重庆人,教授,博导,主要研究方向为机器人及应用、数据融合、信息无障碍技术(zhangyi99@263.net );张烁(1986-),女,河南商丘人,硕士研究生,主要研究方向为图像传感与处理;罗元(1972-),女,湖北人,教授,博士,主要研究方向为机器视觉、智能信号处理、数字图像处理;徐晓东(1981-),男,山东潍坊人,博士研究生,主要研究方向为机器人视觉、人—机器人交互研究.基于Kinect 深度图像信息的手势轨迹识别及应用*张毅1a,张烁1a,罗元1b ,徐晓东2(1.重庆邮电大学a.自动化学院;b.光电工程学院,重庆400065;2.电子科技大学自动化学院,成都611731)摘要:为实现基于Kinect 深度图像信息的手势轨迹识别,提出了一种基于隐马尔可夫模型(HMM )的手势轨迹识别的方法。

首先采用新型Kinect 传感器获取图像深度信息;然后通过OpenNI 的手部分析模块获得手心的位置,提取轨迹特征;最后利用隐马尔可夫模型训练有效的轨迹样本并实现轨迹的识别。

实验结果证明,该方法能有效地识别手势轨迹,并可用于控制智能轮椅的运动。

关键词:手势轨迹识别;Kinect 传感器;OpenNI ;隐马尔可夫模型中图分类号:TP311.52文献标志码:A文章编号:1001-3695(2012)09-3547-04doi :10.3969/j.issn.1001-3695.2012.09.092Gesture track recognition based on Kinect depthimage information and its applicationsZHANG Yi 1a ,ZHANG Shuo 1a ,LUO Yuan 1b ,XU Xiao-dong 2(1.a.Institute of Automation ,b.Institute of Optoelectronics Engineering ,Chongqing University of Posts &Telecommunications ,Chongqing 400065,China ;2.School of Automation ,University of Electronic Science &Technology of China ,Chengdu 611731,China )Abstract :In order to realize the gesture track recognition based on the depth image information got by the Kinect sensor ,this paper presented a new method.First ,it used Kinect sensor to obtain depth image information.Then it obtained the position of palm through OpenNI hand analysis module ,and extracted trajectory feature.Finally ,it adopted Hidden Markov model (HMM )trained effective track sample and achieved track recognition.Experiments results show that the presented method can effectively identify the gesture track ,and apply to control intelligent wheelchair.Key words :gesture track recognition ;Kinect sensor ;OpenNI ;HMM近年来,鉴于手势具有直观性、自然性的特点,其已成为人机交互的一种重要手段[1,2]。

基于Kinect深度图像的指尖检测与手势识别

基于Kinect深度图像的指尖检测与手势识别

基于Kinect深度图像的指尖检测与手势识别高晨;张亚军【摘要】Aiming at the problem that hand gesture recognition system based on ordinary camera is susceptible to the different lighting conditions and complex background, a fingertip detection and hand gesture recognition algorithm based on Kinect depth image is proposed. First, we get depth image by Kinect sensor. Then the hand region is extracted by putting the depth of thresholds on hand point detected by using OpenNI library. Fingertip detection based on convex hull and curvature is proposed. After the number of fingertips and the location of fingertips being detected, it calculates a feature vector including the number of fingers, the angles between fingertips and horizontal of the hand, the angles between two consecutive fingers, and the distance between fingertips and hand center point. Finally, a support vector machine(SVM) is applied to identify nine scheduled number hand gesture. Five experimenters are invited to perform 9 different hand gestures in the complex environment, which each gesture is repeated at thirty times and the angle of hand gesture is different every time. The experiment results show that this algorithm can detect the number and location of fingertips, and the recognition rate of nine hand gesture is 97.1% on average. This proposed method uses simple features and has good robustness, also it is real-time.%针对基于普通摄像头的手势识别系统在不同光照条件和复杂环境下易受影响的问题,提出一种基于kinect深度图像进行指尖检测和手势识别的算法.首先利用Kinect传感器获取深度图像,再利用OpenNI手部跟踪器检测出手部的位置,根据手部位置对手势进行深度阈值分割.提出一种结合凸包和曲率检测指尖的算法,检测出指尖数目和位置后,计算出包括指尖和手掌水平方向的夹角、相邻两个指尖夹角以及指尖与掌心的距离的特征向量,最后利用支持向量机(SVM)对预定的9种数字手势进行识别.实验邀请5位实验者在复杂环境下每个手势做30次,每次的手势角度不同,实验结果表明该方法能够准确检测出指尖的数目和位置,9种数字手势平均识别率达到97.1%,该方法使用特征简单,实时性好,有较好的鲁棒性.【期刊名称】《计算机系统应用》【年(卷),期】2017(026)004【总页数】6页(P192-197)【关键词】Kinect传感器;指尖检测;支持向量机;手势识别【作者】高晨;张亚军【作者单位】北京化工大学机电工程学院,北京 100029;北京化工大学机电工程学院,北京 100029【正文语种】中文不同于以往的鼠标、键盘等交互设备, 手势作为一种新的人机交互方式, 不需要直接接触, 这种人机交互方式更接近人与人之间的交流. 手势识别系统可以通过摄像头获取包含手势的图像信息, 根据图像信息解释手势的含义, 成熟的手势识别系统已经开始应用于很多领域, 如体感游戏, 智能电视, 医疗设备, 手语识别和机器人控制等[1-3].采用普通摄像头获取图像信息进行手势识别容易受到光照和背景的影响, 针对此问题, 文献[4]通过给使用者佩带有颜色的手套来分割手势. 但是当背景有和手套颜色一样的物体时, 仍会影响手势的分割, 并且文献[4]使用的普通摄像头在光线不足的情况无法检测到手势. 而微软推出的Kinect摄像头可以同时获取彩色图像和深度图像信息, 利用深度图像进行手势识别可以避免光照和环境的影响.近几年基于Kinect的指尖检测和手势识别已经有相关的研究, 文献[5]采用三维手势模型, 将手部分成21个不同的部分, 然后使用支持向量机(SVM)做分类器识别常用的手语. 但是其模型复杂, 运算量大, 实时性较差. 文献[6]和[7]都采用深度阈值分割手势区域,默认手势区域是距离摄像头最近的, 但是当手掌和手臂垂直的情况下就会将手臂也分割出来, 降低手势识别的准确率. 文献[8]使用距离直方图来识别手势, 而文献[9]综合了距离特征和曲率特征使用多级支持向量机来识别手势. 文献[10]通过从深度图像中分割手部区域, 并建立表观特征, 再用决策树识别手势. 文献[8-10]使用的特征都较复杂, 需要的计算量较大.针对上述问题本文提出一种把指尖数目, 手部方向, 掌心和指尖距离以及指尖相对于手部水平方向夹角作为特征向量, 再通过支持向量机的方法进行手势识别的算法, 如图1所示.主要的工作步骤如下:Step 1. 检测到手部区域, 将手部区域从复杂背景中分割出来;Step 2. 根据分割出来的手势区域, 计算出手掌掌心、手部水平方向, 再结合凸包和曲率检测指尖, 最后计算出指尖相对于手部水平方向的夹角, 相邻指尖之间的夹角和指尖与掌心的距离;Step3. 最后采集9种预设数字手势样本, 用支持向量机方法训练识别手势. Kinect摄像头可以同时获取深度图像和RGB彩色图像, 并且支持骨骼跟踪和动作识别. Kinect一共有三个摄像头, 左边镜头为红外线发射器, 中间镜头是一般常见的RGB 彩色摄像头, 右边镜头是由红外线CMOS 摄像头所构成的 3D 深度传感器. 根据深度传感器可以获取摄像头一定范围内物体与摄像头的距离.2.1 基于OpenNI的手势检测通过开源库OpenNI可以检测到挥手、前推和举起三种预设手势动作并获得手部掌心的坐标. 本文采用识别效果较好的前推动作和挥手动作, 手部对着Kinect摄像头前推或者挥手时, 即可检测到手部区域,并且给出掌心的粗略坐标, 识别效果如图2所示. 距离摄像头越近的点灰度值越大, 离摄像头远的点灰度值越小, 红色的点为识别出来的掌心位置, 从图2可以发现OpenNI给出的掌心位置不准确, 本文将根据手部轮廓的最大内切圆重新计算掌心坐标.2.2 基于深度阈值的手势分割Kinect获取到的深度数据为16位, 若使用不带用户ID的方式存储深度值, 则16位中的低12位为深度值, 即最大值为4096, 其代表4.096m. 通过OpenNI获得的粗略掌心坐标包括二维坐标和深度值, 本文采用双深度阈值方法分割手势区域, 对掌心深度d在加减阈值T范围内的像素按照式(1)进行二值化, 公式如下所示:式(1)中d为掌心的深度值, T为手掌厚度的深度阈值, H(x, y)为分割后手部深度图像中点(x, y)所对应的像素值, D(x, y)为深度图像中点(x, y)所对应的深度值.为了避免手臂和手腕的干扰, 取距离掌心长宽一定的矩形作为包含手势的感兴区域, 分割效果如图3所示, 从图3(b)中可以看到经过式(1)分割出的手部区域, 其边缘存在锯齿, 会对之后的指尖检测造成干扰,针对此问题, 本文采用中值滤波和形态学开闭运算对其进行去除噪声处理, 使手部边缘平滑, 效果如图3(c)所示.3.1 手部边缘检测为了获取手部轮廓的特征, 本文采用Canny边缘检测算法, 边缘检测即检测出图像亮度变化大的区域, Canny 边缘检测算法是对信噪比和定位之乘积的最优化逼近算子, 用来计算图像边缘的梯度幅度和相位值,选取合理幅度阈值来确定边缘点[11]. 从抑制噪声方面来讲, Canny边缘检测子不容易受到噪声的干扰, 而相同尺度下LOG算子却容易受到噪声的干扰, 抑制噪声的能力要弱一些. 此外, 由于Canny边缘检测算子采用两种不同的阈值分别检测强边缘和弱边缘, 并且当弱边缘和强边缘相连时, 只将弱边缘包含在输出图像中, 故而Canny算子更容易检测出真正的弱边缘, 因此本文采用Canny边缘检测来提取手部轮廓. 检测效果如图4所示.3.2 计算手掌掌心位置通过OpenNI获得的手掌掌心坐标不够准确, 本文通过计算手部轮廓的最大内切圆来确定手掌掌心坐标和掌心圆半径. 首先计算手部轮廓内每个点到轮廓边界距离的最小值, 找出其中最大距离值所对应的点即为掌心点, 距离即掌心圆半径. 这个过程计算量会很大, 影响手势识别的实时性, 因此本文不计算感兴区间内的所有点, 而是每隔N个点计算一个点, 经过实验验证当N=4时可以保证速度和准确性. 求出的掌心圆如图5所示.3.3 计算手部水平方向为了计算指尖的相对位置, 要先计算手部水平方向, 如图6所示, xh为手部水平方向, α为手部水平方向和x轴方向的夹角, θ为手部主轴和x轴方向的夹角, 这两个夹角可以根据文献[12]中提出的方法, 利用图像中心矩计算, 公式如下所示:式(2)中θ为手部主轴和水平方向的夹角, α为手部水平方向和x轴水平方向的夹角, (2,0)mu和(0,2)mu为图像的二阶中心矩.3.4 指尖检测3.4.1 凸包结合曲率检测指尖算法本文采用凸包算法与曲率检测算法相结合的算法, 可以精确的获得指尖的位置, 首先求出包围手部轮廓的最小外接圆, 然后利用OpenCV计算机视觉开源库中函数convexHull和convexityDefects求出包含手部轮廓的凸包和凸缺陷, 手部轮廓的凸包和凸缺陷模型如图7所示, A、B、C等为手部轮廓的凸缺陷, 凸缺陷包括起始点Ps、终止点Pe、缺陷上距离轮廓凸包最远的点pd, 凸包缺陷深度Id. 根据指尖的几何特征, 指尖点应该满足的条件如下所示:1) 凸缺陷深度应该大于掌心圆半径, 但小于手部轮廓最小外接圆半径, 即ra<Id<rb.2) 凸缺陷起始点和终止点的夹角应小于90°, 即θα<90o.3) 指尖点附近最小曲率值应小于60°, 即θk<60o.检测指尖时首先将满足上述条件(1)和(2)的凸缺陷的起始点和终止点保存到点集Ap中, 并且删除重复和距离过近的点, 然后以点集Ap中的点Pi为原点, 在手部轮廓中各取Pi之前和之后的10个点, 计算这20个点的K曲率, 即向量(Ai(j), Ai(j-k))与(Ai(j), Ai(j+k))之间的夹角, 若点Pi的K曲率值小于60°并且是20个点中K曲率值最小的点, 则其为指尖点. 本文算法相比较于传统的K曲率检测指尖运算量小, 只需要计算凸缺陷起始点和终止点极其附近的20个点的K曲率, 同时有效地排除了两个手指指尖的凹点, 通过实验验证当K取值30时效果最好.上述三个条件虽然能较好的满足基本的指尖检测, 但是也存在一些不足, 如只有一个指尖时, 是没有凸缺陷满足条件1)和2), 此时我们把凸缺陷起始点和终止点夹角并且凸缺陷深度Id大于阈值Td的凸缺陷起始点和终止点存储到点集Ap中, 然后通过上述方法计算点集Ap中点的K曲率通过条件3)来检测指尖. 3.4.2计算指尖点与手部水平方向夹角在获得了掌心圆、手部方向, 指尖坐标等特征之后, 接下来计算指尖点和手部水平方向的夹角, 以及相邻两个指尖与掌心的夹角. 如图8所示, 分别计算每个指尖与手部水平方向的夹角α[i](i=0, 1, 2, 3, 4),在计算相邻两个指尖和掌心形成的夹角β[i](i=0, 1, 2, 3), 最后计算每个指尖和掌心指尖的距离D[i](i=0, 1, 2, 3, 4), 最后把计算得到的结果保存到特征向量数组中, 如式(4)所示:式(4)中fV储存特征向量的数组, N为指尖数目, []iα为每个指尖和手部水平方向的夹角, []iβ为相邻两个指尖的夹角, D[]i为每个指尖与掌心的距离.在得到手部特征向量之后, 要设计分类器根据每种手势的特征对手势进行分类. 本文采用支持向量机作为分类器, 支持向量机具有能有效发现目标函数的全局最优解, 最大化决策边界等特点13. 在解决线性问题中, SVM 能直接在该空间中划分出分割平面, 但在实际问题中更多的是非线性的问题, 支持向量机首先在低维空间中完成计算, 然后通过核函数将输入空间映射到高维特征空间, 最终在高维特征空间中构造出最优分离超平面, 从而把平面上本身不好分的非线性数据分开, 常用的核函数包括多项式核函数、径向基(RBF)核函数和 Sigmoid 核函数. 本文采用径向基函数, 因为其模型简单, 参数相对较少, 可以有效的把非线性问题转换为线性问题, 并经过实验验证径向基核函数的效果最好.为了验证本文提出方法的可靠性和准确性, 本文使用内存8G, CPU为Intel(R)*************************的笔记本作为处理平台, 使用微软Kinect一代摄像头采集图像, 通过使用开源库OpenNI、Opencv进行编程, 编程环境为VS2015, 实验包括指尖检测和手势识别两个部分, 实验过程中光照环境不稳定, 实验者与Kinect摄像头距离约为1m.5.1 指尖检测实验分析本文分别对指尖数目为0到5的六种情况进行测试, 测试过程中, 指尖的方向不断变化, 测试结果如图9所示. 然后将每种指尖数目的视频序列保存1000帧, 每隔5帧提取1帧, 共提取200帧, 统计出检测结果如表1所示.通过图9和表1可以看出, 本文提出的结合凸包和曲率检测指尖的算法平均准确率可以达到97.9%,在手部运动的过程中能准确的检测出指尖的位置和数目, 可以有效排除手腕处的干扰点, 针对不同方向的指尖都可以准确检测出来, 具有较好的鲁棒性. 同时可以看出1个手指和三个手指的误判比其他的多, 因为三个手指的情况较多, 在手指没伸直的情况下, 容易造成误判, 而一个手指则因为无法使用凸包和曲率结合算法, 容易受手腕干扰, 不同光照下的检测效果如图10所示.5.1 数字手势识别实验为了验证本文提出的手势识别算法, 本实验针对如图11所示的9种数字手势进行识别, 实验前先构建训练样本数据库, 邀请5位实验者针对每个手势做10次, 要求每个手势的角度不同, 总共采集450张样本图像, 然后对样本图像进行训练, 计算每张样本图像对应的特征向量并保存结果. 训练完成之后, 为了验证算法的鲁棒性, 再邀请另外的5个人实时检测手势, 每个手势做30次, 即测试样本图像共1350张, 每种手势的识别率如表2所示.从图11和表2可以看出, 用指尖与掌心的距离、指尖与手部水平方向的夹角以及相邻指尖之间的夹角作为特征向量可以明确的表示出每种手势的特征, 平均手势识别率可以达到97.1%, 其中手势3和手势6误检率最高, 因为手势3不是正对着摄像头时容易因为遮挡而识别错误, 手势6因为在运动过程中小拇指会因为噪声干扰而误判为手势8. 每帧手势识别处理时间平均为0.015秒, 实时性比较好. 本文方法与常用的HOG+SVM、几何特征、模板匹配方法14相比使用的特征简单, 计算量小, 准确率也相差不多.本文通过使用Kinect深度图像信息进行指尖检测和手势识别, 有效地解决了在不同光照条件和复杂背景下指尖检测和手势识别的难题, 提出一种结合凸包和曲率检测指尖算法, 避免传统曲率检测误判点多和凸包检测位置不准确的缺点. 检测出指尖后, 提出一种需要样本少, 方法简单的手势识别算法, 该方法利用指尖与手部水平方向夹角, 相邻指尖夹角以及指尖和掌心距离作为特征向量, 使用支持向量机做分类器.通过实验证明该算法手势识别精度较高, 指尖检测较准确, 能够在不同光照条件和复杂背景下进行检测,鲁棒性较好.但是本文提出的方法在手指并在一起等一些特殊情况无法准确检测出指尖, OpenNI的手部跟踪器效果不是很好, 在有遮挡的情况会跟丢手部区域, 在今后的工作中研究更精确, 鲁棒性更好的跟踪算法.1 孙丽娟,张立材,郭彩龙.基于视觉的手势识别技术.计算机技术与发展,2008,18(10):214–216.2 易靖国,程江华,库锡树.视觉手势识别综述.计算机科学, 2016,43(6A):103–108.3 李勇,高文,姚鸿勋.基于颜色手套的中国手指语字母的动静态识别.计算机工程与应用,2002,17:55–58.4 Lamberti L, Camastra F. Real-time hand gesture recognition using a color glove. Springer Proc. of the 16th International Conference on Image Analysis and Processing, 2011, 6978(1): 365–373.5 Keskin C, Kirac F, et al. Real time hand pose estimation using depth sensors. IEEE International Conference on Computer Vision Workshops, 2011, 28(5): 1228–1234.6 王艳,张奇志.基于Kinect深度信息的手势识别.北京信息科技大学学报,2013,28(1): 22–26.7 邓瑞,周玲玲,应忍冬.基于Kinect深度信息的手势提取与识别研究.计算机应用研究,2013,30(4):1263–1265.8 Ren Z, Yuan J, Zhang Z. Robust hand gesture recognition based on finger earth mover’s distance with a commodity depth cam era. Proc. of ACM Conference on Multimedia. 2011. 1093–1096.9 Domini F, Donadeo M, Marin G. Hand gesture recognition with depth data. ARTEMIS ’13 Proc. of the 4th ACM/IEEE International Workshop on Analysis and Retrieval of Tracked Events and Motion in Imagery Stream. 2013. 9–1610 曹雏清,李瑞峰,赵立军.基于深度图像技术的手势识别方法.计算机工程,2012,38(8):16–18.11 薛丽霞,李涛,王佐成.一种自适应的Canny边缘检测算法.计算机应用研究,2012,27(9):3588–3590.12 Liao SX, Pawlak M. Image Analysis by Moments. The University of Manitoba Winnipeg, 1993.13 祁亨年.支持向量机及其应用研究综述.计算机工程,2004, 30(10):6–9.14 刘淑萍,刘羽,淤俊,汪增福.结合手指检测的HOG特征的分层静态手势识别.中国图像图形学报,2015,20(6):781–788.。

基于Kinect传感器的教学手势识别

基于Kinect传感器的教学手势识别

基于Kinect传感器的教学手势识别
王宪兵;袁盼盼
【期刊名称】《新型工业化》
【年(卷),期】2016(006)009
【摘要】随着多媒体技术的迅速发展,许多高校采用多媒体计算机系统辅助教学.为了增强课堂的趣味性以及教学的新颖性,将体感交互系统巧妙地应用于多媒体教学.利用微软公司设计的Kinect传感器的骨骼跟踪功能,建立骨骼跟踪模型,通过手势识别实现对PPT的播放控制.建立手势识别库并利用计算简单、方便有效的两点法进行关节点之间的角度计算来实现手势识别,将手势反馈到系统并完成相应的控制指令输出,实现PPT的播放、翻页等基本操作.实验表明,手势控制PPT操作成功率高,能够有效地控制PPT播放.
【总页数】7页(P28-34)
【作者】王宪兵;袁盼盼
【作者单位】湘潭大学信息工程学院,湖南湘潭411100;湘潭大学信息工程学院,湖南湘潭411100
【正文语种】中文
【相关文献】
1.基于Kinect传感器的近场手势识别追踪系统的实现 [J], 王博龙;房建成
2.基于Kinect传感器和HOG特征的静态手势识别 [J], 邹潇;郑庆庆;李冰
3.基于Kinect传感器的静态手势识别与仿真 [J], 葛艳茹;张国伟;孙温和;卢秋红
4.基于Kinect传感器和HOG特征的静态手势识别 [J], 邹潇;郑庆庆;李冰
5.基于Kinect传感器的静态手势识别与仿真 [J], 葛艳茹[1];张国伟[1];孙温和[1];卢秋红[2]
因版权原因,仅展示原文概要,查看原文内容请购买。

基于Kinect深度信息的手势提取与识别研究

基于Kinect深度信息的手势提取与识别研究

s h o w t h a t t h e a v e r a g e r e c o g n i t i o n r a t e o f t h i s s c h e me i s 9 5 % ,a n d t h e s c h e me ma k e s h i g h p r e c i s i o n w i t h s i mp l e d e v i c e a n d
9 5 %, 使 用设备 简单 且精度 较 高 , 鲁棒 性较好 。 关键 词 :手势识 别 ; 深度 信 息 ; 三 维点云 ; 人机 交互 ;支持 向量 机
中图分 类 号 :T P 3 9 1 . 4 1 文 献标 志码 :A 文章 编号 :1 0 0 1 — 3 6 9 5 ( 2 0 1 3 ) 0 4 — 1 2 6 3 . 0 3
邓 瑞, 周玲玲 , 应忍冬
( 上海 交通 大 学 电子信 息 与 电气工程 学 院 , 上海 2 0 0 2 4 0 )
摘 要 :针 对基 于视 觉 的手 势识 别技 术 对环境 背景要 求较 高的 问题 , 提 出了一 种使 用深度 信 息进行 手微 软 K i n e c t 摄 像 头进行 手势 深度 图的采 集 , 再 将 深度 图转换 为三 维 点云 , 根 据 深 度信 息过 滤来提 取手 势数 据 。对手 势数据 进行 方 向校 正后 统 计手 势 数据 中深 度信 息 的 区 间分 布特 征 并 输入 到 支持 向量 机进 行训 练 , 从 而实现 了对数 字手 势 1~5的手势 识 别。 实验 结果证 明 , 该手 势识 别方案 的 平均 识 别 率达到
第3 0卷 第 4期 2 0 1 3年 4月
计 算 机 应 用 研 究

基于Kinect传感器深度信息的动态手势识别

基于Kinect传感器深度信息的动态手势识别
第5 2卷
第 4期
厦 门大 学 学报 ( 自然 科 学版 )
J o u r n a l o f Xi a me n Un i v e r s i t y( Na t u r a l S c i e n c e )
Vo 1 . 5 2 No . 4
2 0 1 3年 7月
模型空 间里的点分类 到该空 间里某个 子集 的过 程 ; 而动 态手势识别 就是 把这 些 点组 成 的轨 迹分 类 到某 个 子集 的过程 , 由于涉及 时 间及 空 间上 下文 , 在 进行 建 模 时通
势; 文 献[ 5 ] 提 出用 S UR F剪 裁手 势 , 并 通 过简 单 的 前
常显示 为一条动作 轨迹 , 这种识 别难度 大但 更具 有实用
性. 现有 的动态手 势识 别 技术 可 以分 归 3类 : 基 于 隐 马 尔可 夫 模 型 ( HMM) 的 识 别 ] , 基 于 动 态 时 间 规 整 ( D TW) 的识 别 以 及 基 于 压 缩 时 间 轴 的 识 别 l - 3 ] . 基 于
激光散斑 获取深度 信息 , 不受环 境 的光 照变 化和 复杂 背 景的影 响 , 以此来进行 手势跟踪 与识别.
处理( 手势 跟踪 、 手势 分 割 、 特征提取等) ; 二 是 手 势 运 动轨迹 提取 和分 类. 例如文 献[ 2 ] 提 出采用 三维 坐标 系
利用手 势重 心 的 中心位 置 进 行 轨迹 提 取 和 分类 , 识 别
J u 1 .2 o 1 3
基 于 Ki n e c t 传 感 器 深 度 信 息 的 动 态 手 势 识 别
陶丽君 , 李 翠 华 , 张希婧 , 李 胜睿
( 厦 门大 学 信 息 科 学 与 技 术 学 院 , 福建 厦门 3 6 1 0 0 5 )

基于Kinect深度图像信息的手势分割和指尖检测算法

基于Kinect深度图像信息的手势分割和指尖检测算法
第2 9卷
第1 期
西Hale Waihona Puke 南科技大



V0 1 . 2 9 No .1 Ma r . 2 01 4
2 0 1 4年 3月
J o u ma l o f S o u t h w e s t Un i v e r s i t y o f S c i e n c e a n d T e c h n o l o g  ̄
Mi a n y a n g 6 2 1 0 0 0 , S i c h u a n ,C h i n a )
Abs t r ac t: To o v e r c o me t h e t r a d i t i o n a l t wo—d i me n s i o n a l c o l o r i ma g e p r o c e s s i n g a l g o it r h m wh i c h i s s u s c e p —
t i b l e t o t h e s u r r o u n d i n g e n v i r o n me n t ,i l l u mi n a t i o n a n d b a c k g r o u n d,a f a s t a n d r o b u s t h a n d g e s t u r e s e g -
me n t a t i o n a n d in f g e r t i p d e t e c t i o n a l g o r i t h m ba s e d o n Ki n e c t d e p t h i ma g e i n f o r ma t i o n wa s p r e s e n t e d.F i r s t , t h e d e p t h i n f o m a r t i o n o f Ki n e c t wa s u s e d t o il f t e r t h e n o n— — hu ma n p a r t o f t h e i ma g e a n d k e e p t he h u ma n b o d y p a t r wh i c h c o n t a i n s h a n d s ;s e c o n d,t h e h i s t o g r a m o f t h e h u ma n bo d y pa r t wh i c h c o n t a i n s ha n d s wa s a n a l y z e d t o c a l c u l a t e t h e t h r e s h o l d v a l u e wh i c h i s a b l e t o d i s t i n g u i s h t h e t o r s o a n d h a n d,t he n g e t t h e h a n d r e g i o n by s e g me n t i ng t he i ma g e wi t h t h e t h r e s h o l d v a l u e ;f in a l l y,t he i ma g e o f h a nd r e g i o n wa s pr o c e s s e d mo r p h o l o g i c a l l y t o c a l c u l a t e t h e pa l m p o s i t i o n a nd e x t r a c t t h e c o n t o u r s o f t h e h a n d.T he in f g e ti r p s wa s d e 。 t e c t e d e f f e c t i v e l y by t h e ke y g e o me t ic r f e a t ur e s o f t h e c o n t o u r s . Te s t s v e if r ie d t h e s p e e d a n d a c c u r a c y o f t h i s me t h o d.

《2024年基于Kinect的手势识别与机器人控制技术研究》范文

《2024年基于Kinect的手势识别与机器人控制技术研究》范文

《基于Kinect的手势识别与机器人控制技术研究》篇一一、引言随着人工智能技术的不断发展,人机交互技术已成为研究热点之一。

其中,基于Kinect的手势识别技术因其高精度、实时性和自然性成为了重要的人机交互方式。

同时,机器人控制技术也在不断进步,如何将手势识别技术应用于机器人控制,提高机器人的智能化水平,已成为研究的重要方向。

本文旨在研究基于Kinect的手势识别与机器人控制技术,探索其应用前景和实现方法。

二、Kinect手势识别技术Kinect是一种常用的深度传感器,能够通过捕捉人体运动信息来实现手势识别。

基于Kinect的手势识别技术主要包括以下几个步骤:1. 数据采集:通过Kinect传感器捕捉人体运动信息,包括骨骼数据、颜色信息和深度信息等。

2. 数据预处理:对采集到的数据进行预处理,如去除噪声、平滑处理等,以提高数据的准确性和可靠性。

3. 特征提取:从预处理后的数据中提取出与手势相关的特征,如手势的形状、速度、加速度等。

4. 模式识别:采用模式识别算法对提取出的特征进行分类和识别,实现手势的分类和识别。

三、机器人控制技术机器人控制技术是实现机器人运动和行为的关键技术。

基于Kinect的手势识别技术可以应用于机器人控制,实现机器人的智能化控制。

机器人控制技术主要包括以下几个方面的内容:1. 运动规划:根据机器人的任务需求,制定合理的运动轨迹和姿态。

2. 控制算法:采用控制算法对机器人的运动进行控制和调节,保证机器人的稳定性和精度。

3. 传感器融合:将多种传感器信息进行融合,提高机器人的感知能力和反应速度。

四、基于Kinect的手势识别与机器人控制技术的研究基于Kinect的手势识别与机器人控制技术的结合,可以实现人机自然交互,提高机器人的智能化水平。

具体实现方法包括:1. 构建系统框架:搭建基于Kinect的手势识别系统,将手势识别结果传输给机器人控制系统。

2. 训练模型:采用机器学习算法对手势识别模型进行训练和优化,提高识别的准确性和实时性。

基于Kinect的指尖检测与手势识别方法

基于Kinect的指尖检测与手势识别方法

Fi ng e r t i p d e t e c t i o n a n d g e s t ur e r e c o g ni t i o n me t ho d ba s e d o n Ki ne c t
T AN J i a p u ,XU We n s h e n g
o n t h e i s s ue , a h nd a g e s t u r e r e c o g ni t i o n me t h o d ba s e d o n de p t h i ma g e , s k e l e t o n i ma g e n d a c o l o r i ma g e i n f o r ma t i o n Wa s
t h e d i s t nc a e s b e t we e n t h e g e s t u r e c o n t o u r p o i n t s nd a t h e p l m a p o i n t w e r e c a l c u l a t e d t o g e n e r a t e t h e d i s t a n c e c u r v e , a nd t h e r a t i o o f c u r v e p e a k s t o t r o u g h s wa s s e t u p t o o b t a i n i f n g e r p o i n t .F i n ll a y ,c o mmo n l y u s e d 1 2 g e s t u es r we r e i d e n t i i f e d b y c o mb i n i n g en b d i n g i f n g e r p o i n t f e a t u r e s a n d t h e ma x i mu m a mo u n t o f c o n t o u r a r e a .S i x e x p e ime r n t e r s we r e i n v i t e d t o v li a d a t e t h e p r o p o s e d me t h o d i n e x p e i r me n t l a r e s u l t s v e i r i f c a t i o n p h a s e .Ev e r y g e s t u r e W s a e x p e i r me n t e d 1 2 0 t i me s u n d e r t h e c o n d i t i o n o f r e l a t i v e l y s t a b l e l i g h t e n v i r o n me n t a n d t h e r e c o ni g t i o n r a t e o f 1 2 g e s t u r e s w a s 9 7 . 9 2 % o n a v e r a g e .T h e e x p e i r me n t a l r e s u l t s s h o w t h a t t h e p op r os e d me t h o d C n a q u i c k l y l o c a t i o n g e s t u r e s nd a a c c u r a t e l y r e c o ni g z e t h e c o mmo n l y u s e d 1 2 k i n d s o f h a n d

基于Kinect的指尖检测与手势识别方法

基于Kinect的指尖检测与手势识别方法

基于Kinect的指尖检测与手势识别方法作者:谈家谱徐文胜来源:《计算机应用》2015年第06期摘要:针对基于视频的弯曲指尖点识别难、识别率不高的问题,提出一种基于深度信息、骨骼信息和彩色信息的手势识别方法。

该方法首先利用Kinect相机的深度信息和骨骼信息初步快速判定手势在彩色图像中所在的区域,在该区域运用YCrCb肤色模型分割出手势区域;然后计算手势轮廓点到掌心点的距离并生成距离曲线,设定曲线波峰与波谷的比值参数来判定指尖点;最后结合弯曲指尖点特征和最大内轮廓面积特征识别出常用的12个手势。

实验结果验证阶段邀请了6位实验者在相对稳定的光照环境条件下来验证提出的方法,每个手势被实验120次,12种手势的平均识别率达到了97.92%。

实验结果表明,该方法能快速定位手势并准确地识别出常用的12种手势,且识别率较高。

关键词:Kinect;肤色模型;开源计算机视觉库;指尖检测;手势识别中图分类号: TP391.41 文献标志码:A英文摘要Abstract:The recognition of bending finger points based on video is difficult and recognition rate is not high. Focusing on the issue, a hand gesture recognition method based on depth image,skeleton image and color image information was proposed. Firstly, the gesture in color image area was initially determined rapidly by using depth information and skeleton information of Kinect, and the hand posture region was extracted from the gesture area by using the YCrCb color model. Then the distances between the gesture contour points and the palm point were calculated to generate the distance curve, and the ratio of curve peaks to troughs was set up to obtain finger point. Finally,commonly used 12 gestures were identified by combining bending finger point features and the maximum amount of contour area. Six experimenters were invited to validate the proposed method in experimental results verification phase. Every gesture was experimented 120 times under the condition of relatively stable light environment and the recognition rate of 12 gestures was 97.92% on average. The experimental results show that the proposed method can quickly location gestures and accurately recognize the commonly used 12 kinds of hand gestures, and the recognition rate is high.英文关键词Key words:Kinect; skin color model; Open Source Computer Vision Library (OPENCV); finger detection; gesture recognition0 引言随着计算机视觉的发展,基于视觉的手势识别方法已成为人机交互领域的研究热点[1]。

基于Kinect深度图像信息的手势轨迹识别及应用

基于Kinect深度图像信息的手势轨迹识别及应用

基于Kinect深度图像信息的手势轨迹识别及应用作者:石曼银来源:《赤峰学院学报·自然科学版》 2013年第18期石曼银(宁德师范学院计算机系,福建宁德 352100)摘要:本文提出了一种新型的利用Kinect获取深度图像并进行手势轨迹识别的应用方法,该方法称为HMM(隐马尔可夫)手势轨迹识别方法,具体操作步骤为:首先利用Kinect 传感器获取深度图像,然后通过OpenNI的手势生成器的手势分析模块获取完整的手势信息,对手部进行形态学处理,识别并跟踪手势,提取手势轨迹,最后运用HMM手势轨迹识别方法进行识别.实践证明,该方法可快速有效地实现手势轨迹的识别.关键词:Kinect;手势轨迹识别;OpenNI;HMM;应用中图分类号:TP311.52 文献标识码:A 文章编号:1673-260X(2013)09-0027-02手势不失为直观而自然的人机交互模式,近年来,手势识别在智能手机、虚拟键盘、智能互联网电视、体感游戏、机器人控制系统等领域得到了广泛地运用,这也是人机交互中面向社会大众面最广的一种识别方法.例如三星UA55F8000AJXXZ智能电视采用智能互动技术,让消费者的操作方式变得更加直观和简便.该智能电视可以识别更自然的手势动作,用户还可以用两手操作来实现图片的放大和缩小,以及旋转图片,也可以轻松挥手在不同的智能应用中心界面之间随意切换[1];再如业界近年来研究出的肤色信息手势识别法,也就是该技术可利用人体的肤色信息进行手部图像的获取,并对采集的手势信息进行识别处理,但该方法由于易受与肤色较近的其他颜色信号的干扰;再如HOG(梯度直方图手势识别法)解决了手势旋转与光照条件对于手势信息提取时的影响,但由于该方法计算量繁复,而且只能对数据库中事先存有的手势进行识别[2].本文作者结合自身工作经验并查阅相关资料的基础上,采用微软公司的Kinect感应处理器采集深度图像数据,并对图像进行识别与分割处理,规避了背景、光照等外界环境对图像采集的影响,大大提高了手势识别轨迹的稳定性与系统的健壮性.作者基于Kinect获取了深度图像信息后,再使用OpenNI的手部分析系统获取手心部位,对手心点进行去抖动处理以获得开始点及结束点,追踪手势轨迹,并采用HMM系统对所追踪到的手势轨迹进行训练与识别,本文通过五个不同的手势的旋转检验了人机交互的运用效果.1 基于Kinect手势图像信息的获取该方式的作用机制是将手部图像与背景图像进行分离,而OpenNI为其提供的API接口可连接硬件,可与此连接的硬件包括Audio Device、3D Sensor、IR Camera、RGB Camera四种,另外,OpenNI的中间层空间主要用于追踪和识别手势,其中间层对于以下几种中间件进行了定义:(1)手部分析:只要为追踪手部位置;(2)全身分析:Kinect获取到深度图像信息后,会对周身部位的信息做出显示,如位置、角度等细节问题;(3)背景分析:对场景内的信息进行分析,包括前景分离、图像背景、坐标轴、场景内的所有物体等[3],手心位置的检测主要是通过Open CV与Open NI相结合的方法,手势的检测为事先议定好的手势,如摆手,实验时让手部位于身体的前方,五指打开,指尖朝上并正对Kinect感应器,距离维持于25-100cm之间,手部摆动的速度与幅度要维持于匀速适中的状态,直至检测到手部清晰的图像,程序接收到布尔讯号并追踪手部的位置,对手心点进行去抖动处理,对前帧检测的手心圆圈的数据进行保存,再将当前帧的数据与前帧进行对比,本次测验的阈值设定为2.4mm,若两组间数据的差异在此范围内则可继续显示前帧的手心圆圈,反之,若差异超过阈值范围以外则需重新绘制手心圆圈的位置,这样可避免手心的细微抖动[4].在对图像绘制轨迹时可能会出现无效帧或无实际意义的帧序列,这中情况多发生于手势输入时或手势输入结束时,中间帧基本有效,无效帧对于手势特征的采集而言无实际意义,且会增加运算量,降低系统的分辨力,本文对手势的开始点与结束点提出了新的判断,通过实验证明,当对手势进行输入时,系统检测到手心后即开始追踪手心点,当检测时检测到连续波动5帧的情况且范围较小时,则提示我们当前手心点处于静止点,可作为有效的手势轨迹输入的起始点,第二次则为输入结束.2 基于隐马尔可夫模型(HMM)的手势轨迹识别2.1 HMM隐马尔可夫模型的概述隐马尔可夫模型(HMM)是一种用于统计分析的模型,对于信号的处理具有重要的意义.现已成功地用于语音辨识,行为识别,文字辨识以及故障排查等领域.HMM模型包括3个概率矩阵以及2个状态集合,HMM模型的表达方法为:2.1.1 隐含状态S:例如S1、S2、S3等等,这些状态符合隐马尔可夫的性质,是隐马尔可夫模型中实际中所隐含的状态,一般情况下,这些状态无法通过直接观测而得到.2.1.2. 可观测状态O:例如O1、O2、O3,在HMM模型中与上述的隐含状态有关联,不同的是其可通过直接观测而得到,其可观测状态的数目不一定和隐含状态的数目一致.2.1.3 初始状态概率矩阵π:例如t=1时,P(S1)=p1、P(S2)=P2、P(S3)=p3,则初始状态概率矩阵π=[p1,p2,p3],表示隐含状态在初始时刻t=1的概率矩阵.2.1.4 隐含状态转移概率矩阵A:描述了HMM模型中各个状态之间的转移概率,其中Aij=P(Sj|Si),1≤i,j≤N.表示在t时刻、状态为Si的条件下,在t+1时刻状态是Sj的概率.2.1.5 观测状态转移概率矩阵B:也叫Confusion Matrix,令N代表隐含状态数目,M代表可观测状态数目,则Bij=P(Oi|Sj),1≤i≤M,1≤j≤N,表示在t时刻、隐含状态是Sj条件下,观察状态为Oi的概率.一般情况下用λ=(A,B,π)三元组来表示隐马尔可夫模型,隐马尔可夫模型实际上是标准马尔可夫的拓展[5],其较标准马尔可夫增加了可观测状态集合及可观测状态集合与隐含状态间的概率关系.3 动态手势特征的选择与采集动态手势不同于静态手势仅仅是在空间形态及位置上的变化,动态手势涉及到空间与时间上的变化,手势轨迹采集的基本特征是速度、角度与位置,即使是同一个手势,若速度不同也会造成极大的差异[6],手势识别的显著特点为手势轨迹曲线上的坐标位置的变化,考虑到即使是相同的手势,其坐标点也会有变化,在实际运用中建议采用手势轨迹的不同时刻的切线角度的变化为手势轨迹的特征[7].4 实验结果分析4.1 前文提及过本文通过五个不同的手势的旋转检验了人机交互的运用效果,分别为手部向左旋转、向右旋转、向上运动、向下运动及画圈五个手势.HMM手势识别实验采用由左至右的有序序列,连续多帧停留在一起,如下图所示,在建模初期每条轨迹应对应一个HMM,模型状态数的选择应尽量增加,因为状态数越多,HMM模型越能真实地反应手势轨迹,但是这也在一定程度上加大了计算量[8].如图,由左至右无跳转HMM模型4.2 本文分别采集了10个手势轨迹,每人将每种手势重复两次,选取其中50个手势轨迹作为检测样本,下表是5种手势的识别率,可以看出HMM具有较高的识别率.4.3 系统健壮性检测未检验本系统在不同光照下的系统健壮性,实验分别于不同光照环境下的指令分别做了50次试验,下表为在光照环境下及黑暗条件下各做50次的试验后的各自被正确识别的次数及准确率,实验结果表明,本文研究的HMM手势轨迹识别系统在应对光照变化及外界环境复杂,干扰较强的条件下的系统健壮性较高.5 结论本文通过深度图像信息通过视频流分割手势并检测到手心点,有效地避开了光照及复杂外界条件的干扰,准确地提取到了手势轨迹的特征[9],适时引入HMM系统对手势轨迹进行识辨与判断,实验结果表明,利用Kinect获取深度图像的并进行手势轨迹识别的应用方法,即HMM (隐马尔可夫)手势轨迹识别方法具有较高的识别率,系统较为完善,但是仍存有许多有待改进的地方,如今后的实验可继续添加新的手势的变化,完善手势输入起始点的确定法,旨在进一步提高系统的健壮性,提高该系统的使用与推广价值.参考文献:〔1〕曹雏清,李瑞峰,赵立军.基于深度图像技术的手势识别方法[J].计算机工程,2012(08).〔2〕SILANON K,SUVONVORN N. Hand motion analysis for Thai alphabetrecognition using HMM[J].International Journal of Information and Electronics Engineering,2011,1(1):65-71.〔3〕张青苗,李鹏,赵勇,何宝富,孙彧.一种基于OpenCV实现的运动目标检测算法的研究[J].舰船电子工程,2010(07).〔4〕孔晓明,陈一民,陈养彬,殷烨.基于视觉的动态手势识别[J].计算机工程与设计,2005(11).〔5〕张毅,张烁,罗元,徐晓东.基于Kinect深度图像信息的手势轨迹识别及应用[J].计算机应用研究,2012(09).〔6〕王万良,马庆,王鑫,汪晓妍.基于Kinect的高维人体动画实时合成研究[J].计算机应用与软件,2011(11).〔7〕KAO M C, LITHS. Design and implementation of interaction system between humanoid robot and human hand gesture[C]/ /Proc of SICE Annual Conference.[S.l]: IEEE Press,2010:1616-1621.〔8〕杨诚.基于视觉的动态手势识别研究[D].西北大学,2012.〔9〕IKEMURA S,FUJIYOSHI H. Real-time human detection using relational depth similarity features[C]/ /Proc of the 10th Asian Conference on Computer Vision,2011: 25-38.。

基于Kinect视觉功能对体感手势目标识别

基于Kinect视觉功能对体感手势目标识别

基于Kinect视觉功能对体感手势目标识别李国城(广州新华学院,广东广州510520)随着计算机视觉技术的发展,基于视觉的人机交互智能化不断提高,利用人的手势动作、语音等,与计算机环境建立一种类似人与人的人机交互模式[1],相比通过传统的鼠标、键盘等设备交流,可以减少硬件对人机交互的束缚和局限性,提高信息交流的简便性、自然性。

近年来,众多科研研究机构对基于视觉的非接触式手势感知技术进行了深入研究,在体感娱乐游戏等领域有了新型的操控模式[2]。

目前新型的手势识别人机交互技术有基于计算机视觉和基于数据手套两种方式。

手套内嵌微处理器及加速度传感器、弯曲传感器设计基于数据手套的识别系统,通过提取手掌轮廓区域的特征、手的倾斜度、手掌的运动轨迹等进行分析识别,识别精度较高,但需要佩戴特殊手套,使用有一定的局限性[3]。

基于计算机视觉的方法是使用摄像头获取识别对象的RGB彩色图像和深度图像,对深度图像数据进行手势分割、定位、特征提取处理,达到对动态手势的正确识别[4]。

本文选用微软公司的Kinect 传感器作为摄像头获取动态手势的彩色图像和深度图像数据,再利用基于OpenCV视觉库的手势识别算法,并融入滤波算法,对手势进行提取和定义,达到最优解,降低了背景、光照等因素的干扰,有效提高了对动态手势识别的鲁棒性、实时性。

1Kinect简介Kinect是微软公司推出的一款XBOX体感输入设备,通过特定的摄像头与传感器实现了人机自然交互。

如图1所示,Kinect硬件主要由一组多阵列麦克风组成,能进行语音输入,增强人机交互效果。

中间彩色输入摄像头,能够以每秒30帧的速率捕获分辨率为640×480的彩色图像。

两端的深度传感器为红外投影机和红外摄像头,对环境有较高的鲁棒性,用来获取用户位置和手势动作信息,经过内部芯片处理之后得到320×240像素的深度图像。

同时微软公司与OpenNI推出的Kinect for Windows SDK开发工具包,使得Kinect通过插值处理,向上层软件实时提供相差无几像素的彩色数据流和深度数据流[5]。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Transactions on Computer Science and TechnologyMarch 2014, Volume 3, Issue 1, PP.9-14 Fingertip Detection and Gesture Recognition Based on KinectDepth DataBinjue Zheng#, Liaoyin Zhao, Yixuan WangInstitute of Computer Application Technology, Hangzhou Dianzi University, Hangzhou Zhejiang 310018, China#Email:zheng0211@AbstractVision-based gesture recognition is a key technique to achieve a new generation of human-computer interaction. This paper proposes a research program for fingertip detection and gesture recognition using depth information. The depth information of an image is captured using Microsoft access sensors, and threshold segmentation combined with the k-means clustering algorithm is used to obtain the hand image. The shape of the hand external convex hull detection combined with hand external contour detection is used to determine the fingertip. Vectors between each of the fingertips and the palm as well as the relative position of the relationship between the fingers are used for finger recognition. The finger gesture recognition of digital signal of 1~5 is conducted through the classification. The experimental results show that the research scheme can accurately detect finger, and hand gestures recognition rate is more than 95%.Keywords: Hand Gesture Recognition; Fingertip Detection; Human-computer Interaction; Depth Data基于Kinect深度信息的手指检测与手势识别*郑斌珏,赵辽英,王毅轩杭州电子科技大学计算机应用研究所,浙江杭州310018摘要:基于视觉的手势识别是实现新一代人机交互的关键技术。

本文提出了一种使用深度信息进行手指检测和手势识别的研究方案。

利用微软Kinect传感器获取图像深度信息,通过阈值分割和K-均值聚类算法获取手部图像。

手型外部凸包检测结合手部外部轮廓检测实现指尖的确定,根据每个指尖到掌心的矢量和手指间的相对位置关系实现手指识别,通过手指的分类实现对数字手势1~5的手势识别。

实验结果表明,该研究方案能准确检测手指,手势识别率超过95%。

关键词:手势识别;指尖检测;人机交互;深度信息引言随着计算机技术的发展,人们对人机交互有了更高层次的要求。

相比较鼠标,键盘等接触式的操作方式,自然而直观的手势更符合人的自然行为,是新一代人机交互的主要方法,在虚拟现实、远程控制和交通等领域逐渐得到应用[1]。

自动手势识别成为近年来的一个研究热点[2-4]。

手势识别的初期研究主要集中在机器设备上,例如数据手套,即一个类似手套的传感器。

计算机通过它可以获取手部各关节数据。

该方法虽能精确的识别手势,但是设备昂贵且掩盖了手势自然的表达方式[5]。

为此,学者们提出了基于视觉的手势识别方法。

目前研究的手势识别系统主要分为基于RGB图像和基于深度图像。

其中前者研究时间比较长,方法众多,但依然没有一个很好的方法解决问题。

与RGB图像相比,深度图像具有物体三维特征信息,即深度信息。

由于深度图像不受光源照射方向及物体表面的发射特性的影响,而且不存在阴影,不受颜色相近信号影响,所以可以更准确地识别手势。

*国家基金资助(61171152), 浙江省自然科学基金项目资助(LY13F020044)2010年微软推出了用于Xbox360的体感外设3D摄像机Kinect[6],而且还提供了支持硬件的软件开发包和应用程序开发接口。

Kinect功能强大且相对廉价,研究者广泛采用它获取深度信息。

目前基于Kinect深度信息的手势识别方法主要有两类。

一类是基于骨架识别获取手势位置[7]进而识别手势。

这类方法使用Kinect SDK 时必须要在摄像头全身可见的条件下才能进行较为准确的识别。

另一类是深度信息转换为2D信息[8],通过支持向量机训练后识别。

这类方法需要构造训练样本,并且不能识别手指。

郭康德等人[9]提出一种基于视觉技术的手指识别,这种方法能跟踪指尖但没有涉及手势识别。

利用深度图像不受肤色的影响的特点,本文提出了一种基于Kinect深度信息检测手指,不需要特征提取和训练,快速实现手势识别的方法。

1手势提取1.1计算实际深度Kinect获得的深度数据以像素为单位记录。

在进行手势识别时需要根据实际距离的大小进行距离判定,Kinect返回的深度值不是实际距离,而是一个相对数据。

故首先要把以像素为单位的数据转换成以实际距离为单位的数据。

设Kinect返回的的某一点深度值为d raw,根据Kinect的校准过程,可求得相应的实际距离深度值为(1)其中:K = 0.1236 m,O = 0.037 m。

根据实际距离深度值,可求得像素位置为( i,j,d)的实际位置( x,y,z) ,其转换式(2)其中:s = 0.0021。

1.2 基于阈值分割获取手部图像获得实际深度数据后,遍历深度矩阵的每个值,获取距离最小值。

根据一般做手势的时候,手部在整个身体最前面且与身体有一定距离。

所以在最小值的基础上加上一个固定的值作为阈值。

这种方法的好处是,距离范围不固定,当手的距离变化时,获取数据的范围也会动态变化。

图1给出了基于阈值分割获取的手部图像。

图1基于阈值分割获取的手部图像1.3 基于聚类算法区分左右手基于阈值的分割技术只能把手势从背景中分割出来,不能区分两只手。

k均值算法根据像素在2D空间的位置,把所有像素划分为两个聚类中心,初始化k为2。

每个聚类区域代表一只手。

然后计算各个样本到聚类中的距离,把样本归到离它最近的那个聚类中心所在的类。

计算新形成的每一个聚类的数据对象的平均值来得到新的聚类中心,如果相邻两次的聚类中心没有任何变化,说明样本调整结束,聚类准则函数已经收敛。

在每个手部的像素点划分好后,如果在两只手的中心距离小于提前定义的一个值,两个聚类将合并成一个。

图2给出了经过K均值聚类算法判断的左右手,两只手用不同的颜色表示。

图2经过K均值聚类算法判断左右手结果2手指检测2.1凸包算法在做手势的时候,手指经常远离手掌中心,而且指尖离的最远。

根据这个情况建立数学模型。

因为凸包包含指尖的点,基于Graham's Scan 算法[10]找到手型外部的凸包。

具体过程如下:首先选取基点。

在手部图像中选取y坐标最小的一点H,当作基点。

如果存在多个点的y坐标都为最小值,则选取x坐标最小的一点。

排除坐标相同的点。

如图3中,y坐标最小点H为基点。

图3凸包算法中基点示意图然后按照其它各点和基点构成的向量与x轴的夹角进行排序。

当加入一点时,必须考虑到前面的线段是否会出现在凸包上。

从基点开始,凸包上每条相邻的线段的旋转方向应该一致,并与扫描的方向相反。

如果发现新加的点使得新线段与上线段的旋转方向发生变化,则可判定上一点必然不在凸包上。

按照上述步骤进行扫描,直到点集中所有的点都遍历完成,即得到凸包。

如图4所示,与相邻的和旋转方向不一致,被判定不在凸包上,与相邻的线段旋转方向都一样,因此在凸包上。

图4凸包算法中线段示意图2.2 手部轮廓检测手部轮廓检测采用Moore neighborhood算法[11]实现。

定义N(a)为像素a的八个领域像素。

p表示为当前轮廓像素。

C表示检测到的轮廓点集合,初始化为空集合。

轮廓检测算法描述如下:1)从上面到下面,并从左到右,在荧幕上扫描所有像素,直到发现手部的像素s就判定为起始点。

2)设置当前轮廓像素p为s,设置初始像素的领域。

3)把p插入C中,然后计算N(p)的领域。

4)从p开始顺时针方向的遍历N(p)的领域知道另外一只手的像素r被找到。

5)把q设置为p,p从新的轮廓像素r开始,然后重复步骤3直到遍历到起始点s,或者检测像素超过最大值。

检测到手部的轮廓后,计算轮廓内接圆的中心坐标得到掌心。

手掌中心被用来计算手指的位置。

2.3 识别手指手指识别首先要确定指尖,通过计算那些既在凸包上又在轮廓上的点来找到指尖。

算法描述如下:1)初始化C序列为既是凸包上的点又是轮廓上的点的集合。

2)遍历C序列上每个点p0,取其左右q1和q2点,分别计算它们到p0的矢量值为和。

3)计算和的夹角为。

如果,,则确定为指尖,否则返回2)重新检查下一个候选点。

指尖检测示意图如图5所示,其中白线连接区域表示凸包,黄线连接区域表示手部轮廓,红色点表示检测得到的指尖。

图5经过手指检测得到指尖的位置和手掌的中心找到指尖点之后,可以与掌心做差值,得到从掌心到指尖的矢量。

根据矢量长度和手指间的相对位置识别手指。

两个手指之间距离相差最大的是大拇指和食指,小拇指离大拇指最远,中指离食指最近,剩下的是无名指。

图6所示的是手指识别结果,各个手指都被准确地识别出。

(a) 大拇指(b)中指(c)食指(d)小拇指图6 手指识别结果这种凸包结合轮廓的算法,比起k-curvature算法[12],一开始可以排除了两个手指之间间隙这种情况。

算法鲁棒性和效率更高。

3手势识别经过上面一系列的算法,现在我们获得了关于手指和手势的信息有手掌中心位置,手指个数,指尖的坐标和手指的向量。

相关文档
最新文档