运动捕捉舞谱技术方案

发布时间:2016-12-06 14:35

  本文关键词:基于运动捕捉数据的拉班舞谱生成,由笔耕文化传播整理发布。


当前位置:首页 >> 机械/仪表 >> 运动捕捉舞谱技术方案


基于运动捕捉数据的拉班舞谱生成科研分析

学 工 教

院 号 师

音乐系

完成日期

2016.3.8





前言 .............................................

............................................................... 4 一、行业发展现状 ..................................................................................... 4 二、运动捕捉系统 ..................................................................................... 4 三、BVH 文件 ............................................................................................. 8 四、基于 BVH 文件的拉班舞谱自动生成算法 ......................................... 9 五、运动数据转换为舞谱 ......................................................................... 9 六、系统功能实现 ................................................................................... 12

前言

项目主要目的是通过使用运动捕捉数据 BVH (Biovision Hierarchical Data)文件作为原始数据,通过解析 BVH 文件的骨架层次结构,量化运动方向与时间, 自动地生成与其相对应的拉班舞谱。 项目流程图:

采购运动捕捉系统 (国外设备或国内设备

舞蹈老师运动 捕捉

BVH 文件骨 架数据分析

欧角拉数据 转化

生成拉丁舞 谱

一、行业发展现状
随着创意产业的发展,人体运动捕捉技术成为了研究的热点。它为动画和游戏的制作提供了新的途径。 同时,这种技术也产生了更广泛的应用,不仅仅可以捕捉人体的运动,还可以捕捉动物设置机器设备的运 动情况。 目前业界没有舞谱自动生成系统,只有学术性的研究,没有实质的科研。运动捕捉系统

二、运动捕捉系统 1、全身动作捕捉系统
随着计算机软硬件技术的飞速发展和动画制作要求的提高,在发达国家,运动捕捉已经进入了实用化 阶段,有多家厂商相继推出了多种商品化的运动捕捉设备,如 MotionAnalysis 、 Polhemus 、 Sega Interactive 、 MAC 、 X-Ist 、 FilmBox 等,成功地用于虚拟现实、游戏、人体工程学研究、模拟训练、生 物力学研究等许多方面。 从技术的角度来说,运动捕捉的实质就是要测量、跟踪、记录物体在三维空间中的运动轨迹。典型的 运动捕捉设备一般由以下几个部分组成: · 传感器。所谓传感器是固定在运动物体特定部位的跟踪装置,它将向 Motion capture 系统提供运动物体 运动的位置信息,一般会随着捕捉的细致程度确定跟踪器的数目。 · 信号捕捉设备。这种设备会因 Motion capture 系统的类型不同而有所区别,它们负责位置信号的捕捉。 对于机械系统来说是一块捕捉电信号的线路板,对于光学 Motion capture 系统则是高分辨率红外摄像机。 · 数据传输设备。 Motion capture 系统,特别是需要实时效果的 Motion capture 系统需要将大量的运动 数据从信号捕捉设备快速准确地传输到计算机系统进行处理,而数据传输设备就是用来完成此项工作的。 · 数据处理设备。经过 Motion capture 系统捕捉到的数据需要修正、处理后还要有三维模型向结合才能完 成计算机动画制作的工作,这就需要我们应用数据处理软件或硬件来完成此项工作。软件也好硬件也罢它 们都是借助计算机对数据高速的运算能力来完成数据的处理,使三维模型真正、自然地运动起来。

全身动作捕捉系列是实用光学式运动捕捉产品。

系统采用多台近红外线高感度摄像机及相关设备,实现高精度实时三维运动数据的采集,支持实时在 线或者离线的运动捕捉及分析。在国际上拥有同类产品最高性价比,可广泛的应用于虚拟现实、军事模拟、 工程测量、医学研究中的运动机能评价和康复医疗、体育运动分析和体育训练指导、影视、动画和游戏制 作等诸多领域。

取相摄像头 1、数据采集 精度更高 全身动捕系列光学被动式摄像机,对于细微动作都可实现精细捕捉。 相机前端特有的处理芯片具有 FPGA 编成功能,实现海量数据的高速处理。 相机采用圆形拟合算法的标识点(Marker)中心演算功能实现独立的标识点高精度识别。 相机采用 144 个 LED 照明,在保证亮度前提下效率更高。 2、系统更加稳定可靠 系统采用标准 TCP/IP 协议网络数据传输方式,构成简单,无需专用采集设备,一台计算机控制所有相 机。

集成为一根的摄像机专用综合电缆具有采样同步控制信号传输;LED 照明同步控制信号传输;摄像机 和 LED 照明供电传输多种功能的同时,极大地简化了系统布线结构同时,使系统数据传输更稳定,克服了 USB 等方式的连接距离短、级联台数受限等问题。 3、系统功能更强大 高性能自动识别功能,根据人体模板自动进行标识点匹配,免除繁杂的操作。 强大的后期数据自动插值、滤波和手动修改等编辑功能以及 CSM、BVH、FBX、BIP、DRS、TRC、C3D 等通用数据格式转换功能,完全满足动漫、体育、医疗等不同领域的应用需求。 全面支持第三方软件相结合使用接口(如 MotionBuilder、3DMax、Maya、Delt3D 或测力平台、肌电仪 以及客户自主开发平台软件等,进行数据的实时、定时传送及各种同步触发控制接口)。 4、系统操作更简洁便利 系统根据中国用户设计,在保证完美实现功能的前提下极大的简化了系统操作中繁琐的人机交互模块, 使整个系统操作流程更加方便快捷。 系统架设灵活,可以根据环境和使用者意愿来搭建捕捉系统,捕捉范围可根据房间大小和用途随时调 整。 相机独立的 LED 编号显示,使架设和调整操作更方便。 同等捕捉空间标识点更精小(3mm、5mm、10mm、15mm、20mm、25mm 规格),被测者运动更自如。 5、光学被动式运动捕捉系统,拥有业界高性价比 系统独特的软硬件系统构成,在实现同等运动捕捉性能时,在价格上具有更大优势,整体系统具有更 高性价比。

应用 虚拟现实领域: 可应用于高端装备的虚拟装配;高等教育的虚拟教学及科学研究;国防军队的军事训练; 医疗领域: 1、对患者进行步态分析、动作分析、运动失调程度评价等; 2、动物药理反应实验。 体育领域: 体育训练、体育教学、步态分析、田径项目的运动分析、冬季体育项目的运动分析、球技动作分析、 舞蹈动作分析、帆板动作分析、自行车竞技分析、打斗技巧分析等。 影视动画: 现代影视特技制作、三维电影、三维动画和游戏制作。 其它领域: 系统可广泛应用于:人体工学研究、机器人研究、感性工学研究、高精度振动计测、福祉工学领域、 灵活性能评价、碰撞试验、飞行测试、心理分析、刚性测试、实用性能评价。

测试软件 Fig. Test software 除了运动捕捉系统还需要结合用交互追踪系统:

2、G-Motion 交互追踪系统
这是是一套高精度光学位置追踪产品,能实时准确的捕捉目标物体 6 自由度姿态(位置和 方向)信息。可作为虚拟现实人机交互外设,也可应用于人体动作捕捉、结合半实物仿真设备 进行姿态捕捉和运动实物的空间位置信息实时获取等方向。

? 红外光学追踪,无电、磁和声音干扰 ? 可支持 2-12 个红外摄像头,用户可根据追踪范围需求选择摄像头的个数 ? 支持眼镜和手持式交互设备追踪,有 6 个按钮可以进行交互功能设计开发 ? 高度准确的 6 自由度姿态(位置、方向)追踪 ? 位置追踪精度 0.2mm,角度追踪精度 0.2° ? 60/120 Hz 刷新率可调 ? 支持 12 路同步处理,并可级联扩展,同步延迟可调 ? 支持简捷快速自定义跟踪目标 ? 灵活方便的场地校准和相机校准 ? 支持追踪数据记录与回放 ? 直观的 2D/3D 数据显示 ? 集成 VRPN 接口,可以结合系统选用的 CAE 后处理软件和虚拟设计辅助软件 ? 用户追踪界面与系统算法处理器可分离,利于部署 1)可以作为交互外设与虚拟现实类软件 DVS3D、Unity 等结合,实现虚拟展示、虚拟装配等人机交互; 2)可以应用于半实物仿真训练,如半实物的消防演练、军事虚拟射击等; 3)可应用于运动物体的空间位置高精度姿态定位,比如机器人路径规划中运动信息的实时捕获; 4)应用于人体动作捕捉,进行步态分析和虚拟人动作模拟。

三、BVH 文件
项目所使用运动捕捉数据格式为 BVH (Biovision Hierarchical Data)文件,它主要由骨架层级结构部分和欧拉 角运动数据两大部分组成

三维人体骨架模型 2Fig. 3d human skeleton model2

四、基于 BVH 文件的拉班舞谱自动生成算法
本章将对拉班舞谱的生成算法进行详细探讨,这也是本次论文的核心内容。通过对 BVH 文件进行解析 和转换,并利用拉班舞谱的规律和特点,找出运动捕捉数据与拉班舞谱的对应关系,并最终在图形界面显 示下自动生成拉班舞谱,其过程如下: (1)读取 BVH 文件,按照 BVH 文件中所描述的骨骼层级结构读取数据,并将运动数据分组存储。 (2)欧拉角数据的转换。 由于 BVH 文件中所存储的运动数据为欧拉角数据, 因此我们需要将其转换为惯 性坐标系下的位置数据,进而进行接下来的关于水平运动方向和垂直程度的分析。 (3)判断运动方向。首先,将人体分为 5 个主要的身体部位(Body Part ) 即头、左臂、右臂、左腿和右 腿。然后根据这 5 个身体部位的空间位置关系来判断他们的水平运动方向和垂直程度。 (4)生成最初的拉班舞谱数据。将其中过于琐碎和重复的数据进行适当的删 减和合并。(5)生成最终的拉班舞谱数据。 (6)绘制拉班舞谱。

五、运动数据转换为舞谱
我们知道,存储在 BVH 文件当中的运动捕捉数据都是以欧拉角的形式存储的 三维旋转数据,为了方便以后对身体各部位的运动方向和运动趋势进行判断,我们需要将欧拉角旋转 数据转换为惯性坐标系下的空间位置数据[[31-32]。因为,如果直接使用欧拉角作为判断依据,所得到的结 果十分不理想。下面首先简要介绍一下几种常用的坐标系[30J0

数据转换 为了计算出子节点在其父竹点惯性坐标空间卜的位置,我们需要将运动数据 中的欧拉角组合成一个旋转矩阵。前面曾经提到,关于欧拉角最为常用的约定为 "heading-pitch-bank",这是从惯性坐标系到物体坐标系的旋转。设 H, P, B 分别 为绕 Y 轴,x 轴和 z 轴旋转的旋转矩阵,我们将其旋转角依次设为 h, p, b,那么 则我们可以得出从惯性坐标系到物体坐标系旋转的公式如下:

但是,,我们需要使用的 BVH 文件的欧拉角旋转顺序为“roll-pitch-yaw",它与"heading-pitch-bank”的旋 转顺序正好相反,因而我们需要通过求惯性到物体旋转矩阵的逆获取由物体坐标系到惯性坐标系的旋转矩 阵。

上图可以看作是一次的旋转矩阵,如果将其乘以当前节点的 OFFSET,就可运动分析

我们将人体分为 5 个主要的身体部位(BODY PART 包括左腿、右腿、左臂、右臂、和头部。针对每一个 身体部位,我们要判断在每一帧数据中其末端所处的方向和高度空问。也就是判断子节点在以父节点为原 点的惯性坐标系下所处少 27 个子空间中的哪一个。 这里的子节点与父节点并不是指的在 BVH 文件树一形结 构中直接意义上的父子节点,而是具有拉班舞谱意义的父子节点。例如,对于右臂来说,右腕关节 Right Wrist 在树形结构中的直接意义上的父节点为右肘关节 Right Elbow,但它在拉班舞谱意义上的父节点实际上 为右肩关节 Right Shoulde:节点。也就是说,拉班舞谱意义上的父子节点并不一定与骨架结构中直接意义上 的父子节点相同。如图 4.5 所示,显示了拉班舞谱意义上的父子节点的示例。

当然,拉班舞谱意义上的父子节点也有可能与直接意义上的父子节点相同。 例如,考虑头部的动作,Head 节点在树形结构中直接意义上的父节点就是 Neck 节点,与拉班舞谱意 义上的父子节点相一致。为了要对每一个身体部位所处的空间和方向做出判断,我们需要求得每一个身体 部位拉班舞谱意义上父子节点的相对位置关系。即在拉班舞谱意义上,子节点在以父节点为原点的惯性坐 标空间下的相对位置。由式 4.10 我们可以很方便的求出子节点在其直接意义上的父节点惯性坐标空间下的 位置数据。为了求得子节点在其拉班舞谱意义上的父节点惯性坐标空间中的坐标,我们还需要进行进一步 的运算。假设拉班舞谱意义上的父节点为 JOINT PARENT,拉班舞谱意义上的子节点为 JOINT CHILD,当它们在 运动数据中相邻接时(即它们同时为直接意义上的父子几点)可以直接通过式 4.10 求得惯性坐标系下的位置 数据。而当 JOINT PARENT 和 JOINT CHILD 在树形结构中并不相邻时,则我们需要先求出 JOINT PAPRENT 的实 际的子节点(设为 JOINT MIDDLE)的旋转矩阵,再通过乘以 JOINT MIDDLE 的 OFFSET 信息获取 JOINT MIDDLE 相对于 JOINT PARENT 的位置偏移 p1,而这个实际的子节点 JOINT MIDDLE 又是 JOINT CHILD 的直接意义上的 父节点,这时,再根据式 4.10 求得 JOINT CHILD 相对于中间节点 JOINT MIDDLE 的位置偏移 p2。同时,p1 和 p2 都是以惯性空间为参考,并且 p2 的原点为中间节点 JOINMIDDLE 的位置,因而 p1+p2 获得的新的位置偏 移 p3 就是拉班意义上的子节点 JOINT CHILD 相对于其父节点 JOINT PARENT 的位置偏移。正如下图 4.6 显示 了不相邻父子节点的情况。 支撑栏动作分析

通过前面对拉班舞谱的介绍,我们知道支撑栏在拉班舞谱的 3 线 11 栏中属于最为重要和特殊的一栏, 它是用来记录人体支撑部位的动作,即人体的哪一个或是哪几个部位起支撑人体重心的作用,那么它或它 们的动作就会被记录在支撑栏里。 一般来讲,人体各个部位都可以起到支撑人体重心的作用,因此它们都可以 看作支撑部位。例如,在现代街舞中,许多头转的动作都是头部作为支撑点,支撑整个人体的重量;还 有许多舞蹈中用手作为支撑做一些倒立的舞蹈动作。但是,绝大多数的舞蹈动作还是以腿部作为主要支撑 的。为了便于分类,我们把能起支撑作用的部位分为 12 类,他们依次是左脚和右脚,左膝和右膝,左手和 右手,左肘和右肘,左肩和右肩,还有躯干和头部。表 4.1 对着 12 个身体部位进行了整理和归类。

根据式 4.10 我们可以求出当前节点在其直接意义上的父节点的惯性坐标空间下的坐标,那么再加上其 父节点的世界坐标,我们可以很方便的求得当前节点的世界坐标 Child..xyz 二 Parent.rotation x Child.of}set+Parent.xyz

六、系统功能实现
在基于以上的讨论和研究的基础之上,该系统平台实现的功能主要有: (1)读取并解析 BVH 文件; (2)播放 BVH 文件(通过调用 BVH player 程序来播放; (3)完成 BVH 文件向拉班舞谱的转化。 这些功能通过构造几个主要的类来实现,下图 5.1 显示了拉班舞谱的生成过程 及主要类的功能。

界面及结果展示

首先,我们:,.iii 要读取一个 r}v}}文件,如下 ICI s.2 所示,通过点击“浏览”按钮

点击“确定”按钮之后,进入舞谱设置界面

通过 bvhplayer,我们就能够以人体节点模型的形式播放我们读取的 BVH 文州 了,显示了 BVH 文件的播放。

对应的舞谱及人像对比:

上图(1)为原始数据的开始阶段,由于在前 100 多帧中各节点并没有发生任何运动,我们对各身体 部位加入了速度判断,不发生运动的部位是不会被记录的,所以在(1)的位置并没有舞谱符号;在(2)中,人体 慢慢向前移动,右脚迈出,带动人体前进,从而产生了右腿在前左腿在后的情况,正如左侧(2)部分所示, 生成的拉班舞谱符号与人体在这段时间内的运动相一致;在(3)中,人体继续运动,该时间段内人体各部位的 动作分别为左腿向前,右腿向后,左手向左,右手向右,头部有一个比较明显向前的动作,与其生成的舞 谱符号相一致:(4)中,人体各部位的动作分别为左腿向后,右腿向前,左手臂向左前,右手臂向右,与 其生成的舞谱符号基本相同。由于在人体运动过程中,人体的朝向在不断发生着变化,而我们目前所使用 的判断身体各部位动作的方法还没有将人体朝向的判断加入其中,因而导致了一些不恰当的舞谱符号的产 生,这也是我们接下来要进行研究的方向。通过上面的结果对比图,我们可以看出,在运动不是很复杂的 情况下,或是在人体朝向相对于初始位置没有发生很大变化的情况下,生成的拉班舞谱结果与运动捕捉数 据中的记录基本一致,还是比较令人满意的。在接下来的研究工作中,我们首先会加入人体朝向的判断, 并将其作为判断身体各部位运动方向的前提,进而提高我们所生成的拉班舞谱的准确率。



  本文关键词:基于运动捕捉数据的拉班舞谱生成,由笔耕文化传播整理发布。



本文编号:206505

资料下载
论文发表

本文链接:https://www.wllwen.com/shoufeilunwen/xixikjs/206505.html


Copyright(c)文论论文网All Rights Reserved | 网站地图

版权申明:资料由用户caabd***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱[email protected]