动作捕捉——从模型到动画个人流程记录

目录

  • 了解动捕技术
    • 主要设备和原理:
    • 实际应用与缺陷
    • 价格
  • 以bvh格式为例简述骨骼动画原理
    • 骨骼
    • 运动数据
    • 运用到模型(蒙皮、权重、动捕数据接入)
  • 具体实现流程
    • 模型的准备
    • 数据的采集
    • 数据的处理和适配模型
    • 布料模拟
    • 场景搭建
    • 相机设定
    • 渲染输出
    • 视频处理

了解动捕技术

  目前来说,动捕技术包含三种不同的方式:惯性捕捉、基于标定点的光学捕捉(光学式标定动捕)、基于计算机视觉技术的捕捉(光学式非标定动捕)。

主要设备和原理:

  惯性动捕:传感器。在身体的重要节点佩戴集成加速度计,陀螺仪和磁力计等惯性传感器设备,然后通过算法实现动作的捕捉。该系统由惯性器件和数据处理单元组成,数据处理单元利用惯性器件采集到的运动学信息,通过惯性导航原理即可完成运动目标的姿态角度测量。
动作捕捉——从模型到动画个人流程记录_第1张图片

  光学式标定动捕:摄像机镜头+标定点。在运动物体关键部位(如人体的关节处等)粘贴Marker点,多个动作捕捉相机从不同角度实时探测Marker点,数据实时传输至数据处理工作站,根据三角测量原理精确额计算Marker点的空间坐标,再从生物运动学原理出发解算出骨骼的6自由度运动。此外,该光学动捕系统根据标记点发光技术不同,还可细分为主动式和被动式两种。动作捕捉——从模型到动画个人流程记录_第2张图片
动作捕捉——从模型到动画个人流程记录_第3张图片

  光学式非标定动捕:由多个高速相机从不同角度,对目标特征点的监视和跟踪来进行动作捕捉。(基于二维图像特征或三维形状特征提取的关节信息作为探测目标。)被监测对象不需要穿戴任何设备。最为精细但对环境要求更高。该类动捕系统比较有代表性的产品分别有捕捉身体动作的Kinect,捕捉手势的Leap Motion和识别表情及手势的RealSense实感。
动作捕捉——从模型到动画个人流程记录_第4张图片

实际应用与缺陷

  总体来说,动捕技术目前主要应用于游戏、动画、电影、医疗康复、体育运动分析。
  分别来说,惯性动捕和光学标定式动捕主要用于全身的动作捕捉;光学非标定式则在局部动捕,如手部、面部等细节表现优势明显。
光学标定式动捕采集的信号量大,数据处理复杂,存在标记点会被遮挡的问题,标记点的标定过程也比较复杂。
惯性动捕由于测量噪声和游走误差等因素的影响,无法长时间地对人体姿态进行精确的跟踪。
光学动捕都采用视觉进行人体姿态捕捉,会受到外界环境很大的影响,比如光照条件、背景、遮挡物和摄像机质量等。

价格

  光学标定式>惯性,光学非标定式则视具体情况而定。
  光学标定式动捕需要在一个固定场地内搭设大量高速摄像机,摄像机本身造价就不菲,还要再算上标定点、场地、固定配件、灯光等,专业用途造价在百万、千万级别。
  惯性动捕主要核心就是数十个传感器,传感器属于消耗品,存在折损和寿命,也分为有线和无线,目前国内所产的专业用途造价在万元级别。
  光学非标定式主要基于机器视觉的算法,如果是需要用到多个相机进行整体捕捉的场合,那么造价也很高;但如果是局部动捕甚至是面向非专业用户的,“只用最普通的摄像机即可实现动捕”往往是卖点。

以bvh格式为例简述骨骼动画原理

  bvh是一种动捕数据的格式。下面以此为例简述骨骼动画的原理。
  参考文章:《骨骼动画程序原理介绍》
  骨骼动画的特点是:需要做动画的物体对象本身不记录位移、旋转、缩放、变形信息,而是通过了第三方的“骨骼”物体记录动画信息,然后物体对象本身只记录受到骨骼物体影响的权重。在播放的时候,通过骨骼物体的关键帧和物体对象记录的权重,让动画重现。

骨骼

动作捕捉——从模型到动画个人流程记录_第5张图片

  一堆关节点 + 他们之间的相互关系 = 骨骼
  以下是一个bvh数据的开头部分,实际上就是定义了一套骨骼,其中包含了每一个关节的名字、相对位置关系和父子关系。
  HIERARCHY:层次体系,表示以下部分是骨骼层级信息。ROOT:根节点。JOINT:关节点。Hips、RightUpLeg、RightFoot等:每个关节的名字。整个结构就像树一样,向上长出枝叶,向下长出根系。
动作捕捉——从模型到动画个人流程记录_第6张图片
动作捕捉——从模型到动画个人流程记录_第7张图片

运动数据

  一个bvh文件中除了骨骼信息,剩下的部分全部都是采集到的数据。MOTION :表示以下开始都是动作数据部分。Frames:总共有多少帧。Frame Time:每帧持续多少秒。
  从具体的组织结构来说,以帧为单位可以对这些数据进行分组,有多少帧就有多少组。每一个组内的每一个数据具体表示什么,则跟bvh开头的关节点层级关系的CHANNELS相对应。笼统来说就是记录了每一帧里每一个关节点的位置和旋转角度。
动作捕捉——从模型到动画个人流程记录_第8张图片

运用到模型(蒙皮、权重、动捕数据接入)

  蒙皮:按照需求给模型添加一套合适的骨骼。四足、双足、其他异形。
  权重:设定骨骼对模型顶点的影响程度。
  动捕数据接入:动捕数据里的骨骼映射到模型的对应骨骼上,然后就可以动了。

具体实现流程

偷了一张三维动画制作流程图。
动作捕捉——从模型到动画个人流程记录_第9张图片

  下面是笔者本人第一次做动捕动画的流程。(纯外行行为。制作的是简单的跳舞动画。模型来自米哈游。)
动作捕捉——从模型到动画个人流程记录_第10张图片

模型的准备

  下载好模型后,检查格式、大小、材质、是否有道具、骨骼的连接关系、权重、是否有FK/IK等。如果是下图的A字形站姿,则手动调整为T字形会更利于动捕数据的映射。
动作捕捉——从模型到动画个人流程记录_第11张图片

数据的采集

  • 穿戴
      按照说明将各个节点的绑带穿好束紧,安装上传感器,并把传递线连通。
    动作捕捉——从模型到动画个人流程记录_第12张图片

  • 连接
      将汇总输出Hub以有线或无线的方式连接到电脑采集软件。
    动作捕捉——从模型到动画个人流程记录_第13张图片
    动作捕捉——从模型到动画个人流程记录_第14张图片

  • 校准
      根据软件提示校准以下动作。 动作捕捉——从模型到动画个人流程记录_第15张图片

  • 采集
       校准完毕后按下录制键开始采集。
       如果有道具会拿上道具进行表演。如果演员和模型之间存在较大体型差距,有时会给演员身上加上一些辅助道具,比如假肚子假屁股,服饰夸张的也会给演员加上硬的“裙边”。
    动作捕捉——从模型到动画个人流程记录_第16张图片

数据的处理和适配模型

  掏出著名动画软件MotionBuilder。

  • 导入带骨骼权重的模型
  • 将模型设置成MB的标准Character,下称模型角色。(把模型骨骼映射到MB的标准角色骨骼上)
    动作捕捉——从模型到动画个人流程记录_第17张图片
  • 导入BVH
  • 将BVH也设置成MB的标准Character,下称动捕角色。(把动捕数据的骨骼映射到MB的标准角色骨骼上)(感觉MB的标准角色就是一个中介)
  • 将模型角色的动作来源设置成动捕角色,他们就可以一样动起来了。可以在这里裁剪bvh数据,截取想要的帧。
    下图中白色骨骼是模型角色,黄色骨骼是动捕角色。
    动作捕捉——从模型到动画个人流程记录_第18张图片
  • 修改一些整体参数
    修改模型角色的Retargeting、Offset等整体的参数,改变模型的重心、关键节点的旋转偏移和映射的权重等等,使模型和动作整体合适。
    动作捕捉——从模型到动画个人流程记录_第19张图片
  • 初步烘焙动画后给模型角色加上IK(反向动力学)便于精修

动作捕捉——从模型到动画个人流程记录_第20张图片

  • IK:移动子物体,系统反向计算父物体的运动。直接移动肢体末端,比如手腕,然后系统自己反向计算大臂和小臂的运动。提线木偶式
    FK:老老实实每个关节进行移动和旋转。芭比娃娃式
    参考贴吧帖子《谈谈动作绑定与捕捉》
  • 新建动画层,对存在穿模和动作变形的个别帧进行精修
    下图底部Animation Layer就是动画层,底层为动捕源数据,上一层为精修层。上面的层的动作数据关键帧会覆盖下面的。
    时间轴上的红色标记就是当前动画层的关键帧。
    动作捕捉——从模型到动画个人流程记录_第21张图片
  • 全部修改完毕后烘培并导出进行下一步。

布料模拟

   在建模软件中处理模型,将需要进行布料模拟的面片单独拆出,如果是双面的布料则减为单面,进行一定的细分。
   掏出著名的虚拟服装制作和布料计算软件MarvelousDesigner。首先将无布料的、带动作的动画场景以.abc文件的格式导入至MarvelousDesigner。
动作捕捉——从模型到动画个人流程记录_第22张图片
   然后将衣服单独导入,设定为布料。
动作捕捉——从模型到动画个人流程记录_第23张图片
   修改布料的物理属性,包括硬度、厚度、物理材质属性等,并设定好固定针,将不动的部分直接缝在模型身上。
   在动画模式下点击录制,软件根据真实的物理条件自动进行布料的模拟运算。运算完毕后把带运动的布料单独导出,和模型放入同一场景。进行下一步。

场景搭建

  简单搭建舞台场景并布光。

相机设定

  导入背景音乐,根据需要设定机位、运动轨迹和相机切换。
动作捕捉——从模型到动画个人流程记录_第24张图片

渲染输出

  调整好所有材质和渲染设置以后,渲染输出帧序列。

视频处理

  帧序列导入视频处理软件,加入背景音乐,合成最终视频。

你可能感兴趣的:(经验分享)