论文部分内容阅读
随着近年来信息技术的广泛扩张以及虚拟现实的发展,人工智能越来越得到学者的关注,而人工智能正时以人机交互技术为代表的。目前人机交互的研究成为了全球范围内的热门,在人机交互中主要以语音识别、手势识别、人体定位、动作识别以及表情识别等为代表。考虑到单一识别对于交互的局限性,本文整合了人体定位和手势识别两方面,设计了一个以投影为载体的室内人机交互系统。在众多研究人机交互的方法中,基于Kinect的人机交互技术在许多场景中都成为了首要之选。这是因为Kinect单个成本较低,Kinect的深度和彩色图像的适用性较强,以及利用Kinect开发的方法很多等特点。本文的重点工作是开发一个人机交互系统,此系统的技术支持为人体定位跟踪和静态与动态手势识别方法。本文的方法研究主要由两个部分构成,分别是研究人体定位以及研究手势识别。本文的具体工作如下:(1)人体定位跟踪方法。本文利用Kinect传感器对房间采集到的深度图像进行人体的检测、定位和跟踪。这一系列功能的实现首要要求就是要从Kinect的深度图像中得到清晰的人体深度区域。为了达成这一目标,本文运用了支持向量机、中值滤波、形态学去噪、最近邻法分割深度区域以及经典凸包算法等一系列技术。首先,本文通过使用训练过的SVM进行人体检测,判定人体定位是否开始(即判定房间内是否有人),,.目的是确定检测的人体存在于房间内并与Kinect的距离最近,将人体检测作为人体定位的开始。然后首先对图像进行去噪,之后对确定的检测人的深度图像区域进行分割,这一步是得到人体的深度区域。接着本文通过改进的凸包算法确定识别人的轮廓,通过得到上半部分的凸包点进而得到头部的大致区域。最后是通过分析人体头部区域确立人体在深度图中横轴方向上的中心点,将中心点在深度图像上的二维位置转化为人体在房间内实际的二维位置,并在接下来的时间里持续进行人体定位以实现人体跟踪功能。(2)静态与动态手势识别方法。本文利用Kinect传感器获取手部的彩色图像、深度图像以及骨骼点来进行静态手势识别。首先,本文基于人体的位置判定手势何时开始以及手势何时结束。然后,将原始深度图像去噪后再通过最近邻法分割出人的手部深度区域。然后,结合手部五指的位置和角度,得到手部特征。最后,通过手指位置进行静态手势识别。动态手势识别则通过Kinect获得人体骨骼点,然后通过计算手臂指向直线与投影交点来实现手势模拟鼠标的功能。(3)人机交互系统的实现。本文设计并实现了一个人机交互系统,系统的两大技术特点就是人体定位跟踪技术和手势识别技术。系统首先通过人体进入房间激发自身运行,然后对人体进行定位和追踪,通过判断人体位置开启手势识别,用静态手势和动态手势替代了鼠标和键盘的部分功能,进而对投影的内容进行互动操作。该系统以人体定位跟踪为基础,用静态和动态手势识别作为操作方法,经过实验验证,不仅人体定位和手势识别较为精准,同时人体定位和手势识别的切换也较为流畅,具有可行性。