论文部分内容阅读
通过计算机视觉手段来对人手运动进行分析是一个重要的研究课题,其研究内容包括人手检测、人手运动状态估计和行为识别,涉及图像处理、计算机视觉、计算机图形学、模式识别和人工智能等多个学科领域。人手运动的视觉分析具有广阔的应用前景,其研究成果可以应用于虚拟现实、三维动画、机器人模仿学习、高级人机交互、运动生物力学等多个领域。本文主要研究人手运动状态估计问题,即从视觉观测估计出人手的全局位姿和各局部关节角度的状态。人手运动状态的估计是人手运动分析的核心问题,是对人的行为进行准确识别的基础。本文中的运动状态估计问题针对的是一个视频图像序列,在人手运动具有连贯性的假设下,通过状态转移模型的引入,将针对单帧的运动状态估计问题转化为时间序列上的一个运动跟踪问题。通过计算机视觉来进行多关节人手运动跟踪是十分具有挑战性的,其开发受困于多个复杂因素。高维的状态空间给全局最优的搜索带来了困难,导致了庞大的计算量;人手运动过程中频繁发生的自遮挡,会导致观测的歧义性,造成人手状态概率密度的多峰分布,加大全局最优的搜索难度;人手运动跟踪的状态转移过程和观测过程均是非线性的,这要求跟踪算法必须具有解决非线性问题的能力。一个有效的人手运动跟踪方案必须解决以下关键问题:(1)构建有效的匹配误差函数。匹配误差函数用于描述人手姿态向量与观测特征之间的匹配程度,它的构建是人手运动跟踪的基础,直接决定跟踪过程中全局最优的搜索难度。好的匹配误差函数能够有效平滑全局最优附近的局部极小值,降低全局最优的搜索难度。(2)开发有效的搜索方法。高维的状态空间和多峰的概率分布对搜索方法的寻优能力提出了很高的要求,搜索方法必须有较快的收敛速度,同时又必须具备一定的鲁棒性,能够跳出局部极小值,最终找到全局最优。围绕上述问题,国内外的研究者们进行了大量的研究,然而,目前为止的研究成果还难以同时满足人手运动跟踪实时性、准确性和鲁棒性的要求,离实际应用还有一段距离。本文以深度图像序列作为观测输入,基于改进的粒子滤波算法,对无标记三维人手运动跟踪的相关技术进行了研究。具体来讲,本文完成的主要工作包括以下几个方面:(1)建立了作为三维人手运动跟踪基础的人手模型和观测模型。本文建立了26自由度的人手运动学模型,并根据解剖学因素对其施加了运动学约束。为平衡模型精确度和计算复杂度,本文以基本几何基元建立了人手形状模型。本文采用Kinect深度相机来获取系统观测输入,采用深度特征信息与区域特征信息融合的方法构建了人手姿势假设对应的模型特征图像和观测特征图像之间的匹配误差函数,建立了观测模型。(2)针对粒子滤波在高维空间中进行粒子采样的困难,将群体智能优化方法集成到粒子滤波中,利用其强大的全局优化能力改善粒子滤波样本分布,提出了两种具体的三维人手跟踪算法。第一种算法将差分进化与粒子滤波结合,利用差分进化对当前观测下的匹配误差的优化来驱动粒子向高似然概率区域运动;第二种算法将一种现有的粒子群优化粒子滤波算法应用于高维空间中的人手运动跟踪,并针对人手高维空间中的早熟收敛问题,同时采用模拟退火思想和局部随机化技术对算法进行收敛性改进。实验证明,这两种算法均能够有效鲁棒地跟踪三维人手运动,第二种跟踪算法的跟踪精度略优于第一种算法。(3)通过采用同时为人手和物体建模的方法,研究了人手与物体交互过程的跟踪。在现实世界的许多场景中,人手的活动通常是交互性的。其中,最常见的是人手与物体的交互。物体的存在增加了人手运动分析的复杂性,而另一方面,物体上下文所携带的有用信息会对人手运动的识别和估计起到促进作用。本文采用基于模型的方法来跟踪人手与物体的交互过程,同时为人手与物体建立三维模型和运动模型,并同时跟踪三维空间中人手与物体的运动。本文采用单一深度图像序列作为观测输入建立了观测模型,采用改进的粒子群优化粒子滤波作为跟踪算法,最终形成的跟踪方法能有效跟踪人手与物体的交互过程。(4)根据本文所提出的结合群体智能优化与粒子滤波的跟踪算法的特点,在充分了解图形引擎OpenSceneGraph(OSG)内部渲染流程和多线程模型的基础上,通过采用离屏渲染技术,开发了两种基于OSG的三维人手跟踪原型系统:单虚拟相机系统和多虚拟相机系统。在粒子滤波框架下,单虚拟相机系统只创建一个虚拟相机用于匹配误差计算,OSG每帧运行时通过该虚拟相机只为一个粒子计算匹配误差;而多虚拟相机系统则为粒子集中的每个粒子分别创建一个对应的虚拟相机,OSG每帧运行时为一整代粒子计算其各自对应的匹配误差。