- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用计算机视觉3D模型动作记录器
使用计算机视觉3D模型动作记录器
摘要:该文旨在完成一款基于计算机视觉的3D模型动作记录器,即计算机通过摄像头获取人体运动视频并检测跟踪,之后通过处理数据控制3D模型,从而将人体动作进行记录保存。文章主要围绕运动目标检测、运动目标跟踪和3D建模三个方面展开研究。运动目标检测方面使用OpenCV(Open Source Computer Vision Library)提供的背景差分算法对目标进行分析并提取差分元素;运动目标跟踪方面则研究了常用的Camshift跟踪算法,实现对运动目标的连续跟踪以及识别从而保证动作记录器的连贯性;3D建模部分则使用3Dmax进行建立模型以及骨骼动画的制作处理,并使用Ogremax导出模型;而模型的骨骼动画则由OGRE导入测试环境并根据之前的处理结果进行相应的控制,从而实现人体运动的动作记录。
关键词:目标检测和跟踪; 背景差分; CamShift; OpenCV; OGRE
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2013)22-5156-05
1 概述
人类和电脑的交流从打孔机到屏幕,从文字到图形,从鼠标到触摸板,计算机用更符合直觉和人性的方法让人机交互方式更加快捷方便。那么以后的人机交互会怎样?
从另一方面,随着图形学和硬件计算能力的发展,计算机能够实时获取和记录人体动作。计算机将人体动作参数转化为计算机中的物理模型,并且将其在虚拟环境中再现,同时3D人体模型动作目前成为最热门的研究课题之一。现在人体运动主要通过各种传感器进行捕获和测量,并通过传感器将相关的人体信息记录为虚拟动作。这种方法更加精确,但是由于其成本较高,计算量较大且需要特定的实验场合,因此无法广泛应用。
目前基于OpenCV的第六感交互技术和3D图形处理技术正在迅速发展之中,该文讨论如何通过这些技术完成基于计算机视觉的人体运动3D模型动作记录器,尝试将人机交互推向更深的层次。
2 系统分析
3 获取背景
摄像机首先获取静态场景,从而作为运动目标检测判断的依据,因此需要对背景不断进行更新。常用的背景更新方法有包括多帧平均法,选择更新法,随机更新法等。多帧平均法简单而且准确,但是计算量大,并且在运动物体多且运动速度缓慢的情况下也不能达到满意的效果;选择更新法对于光线的变化有较强的适应性,但是环境光线变化强烈时容易检测错误,并且受人为因素较大。
本课题采用将多帧图像分别和背景图像做差,并用帧间差来判断光线的变化。该方法通过多帧的联合判断,能够较准确判断监视场景中是否有运动的物体或者是否应该进行背景更新。该方法融入了背景差分法对于物体的准确分割,又运用了帧差法较强的适应性。
为了不受背景的影响,人物捕捉采用了人物进入捕捉方法。首先实现对人物进入的实时判断监测,在没人的时候进行背景更新,而当有人进入领域时则实现了动作实时监测功能。为了缓冲图像采集速度并配合3D模型输出,每帧间间隔20ms保证系统运行流畅。而运动目标检车跟踪部分和3D模块部分则通过全局的条件变量实现同步和互斥的操作。
4 运动目标检测
运动目标检测是指在序列图像中检测出变化区域并将运动目标从背景图像中提取出来。一般后处理过程仅仅考虑图像中对应于运动目标的像素区域,因此运动目标检测与分割对于后期处理起决定性作用。运动目标检测方法有很多,包括帧差法、光流法、背景差分法等,该文选择背景差分法对静态背景下的目标进行分析。
通过上述原理可知,首先获取背景图像,将背景图像和当前图像转化为灰度图像并进行高斯滤波以平滑图像;之后将当前图像和背景图像相减,差值图像二值化,再进行形态学滤波,消除噪声;最后将二值图像扫描并查看是否有非零值像素点,从而获取目标像素。在此差分图像中,若像素的值大于一个特定的阈值,则认为视频图像中在相同位置的像素属于运动目标区域,若像素的值小于特定的阈值,则认为视频图像中在相同位置的像素属于背景区域。
在本课题中,当人物进入静态场景时,程序处理捕捉到的图像,检测出人物部分的像素差大于设定的阈值从而检测出目标人体。如图2所示,黑色部分是差分之后的背景,白色部分是通过背景检测出的人体。从图中可以看出,背景差分法可以正确的检测出运动目标,但是由于算法只用亮度值做为检测依据,因此当运动目标的亮度与背景亮度相似时,就难以检测出目标。
5 运动目标跟踪
运动目标检测之后,计算机则需要跟踪提取出来的检测目标。运动目标跟踪方法包括meanshift、camshift、kalman滤波等。其中Camshift的全称是 “ContinuouslyApative Meanshift”算法,基本原理是将跟踪目标的色彩信息做为特征,并将这些信息计算处理后投
文档评论(0)