[发明专利]面部表情捕获数据的转存与发送方法有效
申请号: | 201510331828.X | 申请日: | 2015-06-16 |
公开(公告)号: | CN104951304B | 公开(公告)日: | 2017-12-26 |
发明(设计)人: | 韩成;张超;权巍;薛耀红;李华;蒋振刚;杨华民;石乐民;杨帆 | 申请(专利权)人: | 长春理工大学 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 吉林长春新纪元专利代理有限责任公司22100 | 代理人: | 王薇 |
地址: | 130022 吉林省长春市*** | 国省代码: | 吉林;22 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 面部 表情 捕获 数据 转存 发送 方法 | ||
技术领域
本发明涉及面部表情捕获数据的转存与发送方法,属于运动捕捉技术领域。
背景技术
随着科学技术的发展,运动捕捉技术已经在动画、电影、运动教学等领域得到了广泛的应用。运动捕捉技术是一种用于准确测量运动物体在三维空间运动状况的技术,它通过运动捕捉设备把运动物体的运动状况以数字的形式记录下来,然后使用计算机对运动数据进行处理,得到不同时间计量单位上物体的空间坐标。当前的运动捕捉技术主要包括以下几种方式:机械式运动捕捉、电磁式运动捕捉、声学式运动捕捉、光学式运动捕捉等。光学式运动捕捉具有可表演动作幅度大、无线缆和机械装置的束缚,采样速率高、精度高、系统扩充成本低等优点。因此,在动画、影视制作过程中,大多选用光学式动作捕捉系统。动作捕捉系统还可以进一步分为身体运动捕捉系统和面部表情捕捉系统,如NaturalPoint公司的OptiTrack动作捕捉系统,其中OptiTrack面部表情系统有7个运动捕捉相机,ARENA Expression软件可以实现真实角色面部表情的实时捕捉和发送,但面部表情系统与身体运动捕捉系统无法同时进行工作,增加了动画、影片的制作难度和周期,为此,本发明提出了一种面部表情捕获数据的转存与发送的方法,该方法只需对ARENA Expression软件中pt2格式的文件进行一次转存操作,在发送捕捉数据时,不必打开ARENA Expression软件对数据进行发送,只需对xml文件内的数据进行发送即可。
发明内容
本发明的目的在于提出了一种将面部表情数据转存及发送的方法,其可以快速地将面部表情数据不通过面部捕捉软件进行发送,从而使与面部捕捉软件发送的数据达到一致性。
本发明的技术方案是这样实现的:一种将面部表情数据转存与发送的方法,其特征在于:所需的数据结构:提供一种存储面部表情数据的数据结构,PointDada结构体包括X,Y,Z三个数据成员,FaceData结构体中包括一个PointData类型的pdata数组、一个变量Length,pdata数组中包括27个元素,FaceData定义一个指针变量,用fData表示;所需的文件:利用OptiTrack面部表情捕捉系统的7台FLEX:V100R2摄像机和ARENA Expression软件,对某人的面部表情进行实时捕获,将捕获到的数据保存在文件face.pt2中;在计算机中,使用OptiTrack公司的提供的NatNet SDK开发包实现face.pt2文件中的面部表情数据的转存及发送,以下使用的NatNetML命名空间均来自NatNet SDK开发包,按以下步骤实现:
步骤1、在计算机中,启动ARENA Expression软件,打开文件face.pt2,选择Stream功能,点击“StartStreamingFrame”按钮后,ARENA Expression软件将文件face.pt2中的数据发送出去;
步骤2、定义NatNetML命名空间中的NatNetClientML类的一个对象,用m_MatNet表示,定义NatNetML命名空间中的MarkerSet类的一个对象,用ms表示,定义NatNetML命名空间中的DataDescriptor类的一个列表对象,用descs表示;
步骤3、定义NatNetML命名空间中的FrameOfMocapData类的一个对象,用m_FrameOfData表示,定义NatNetML命名空间中的FrameOfMocapData类的一个队列对象,用m_FrameQueue表示;
步骤4、m_FrameQueue对象调用Dequeue函数,并将调用Dequeue函数得到的返回值赋给m_FrameOfData。如果m_FrameOfData不为空,执行步骤5,否则执行步骤4;
步骤5、m_MatNet调用GetDataDescriptions函数,其中descs列表对象为GetDataDescriptions函数的参数,如果调用GetDataDescriptions函数得到的返回值为真,则继续执行步骤6,否则执行步骤5;
步骤6、定义NatNetML命名空间中的DataDescriptor类的一个对象,用md表示,在descs列表中循环获取数据赋值给md,将md对象的类型转换成NatNetML命名空间中的MarkerSet类,并赋值给ms对象;
步骤7、构造一个向量,用temp_name表示,temp_name(i)表示向量中的第i个元素,i=1,2,…,27;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于长春理工大学,未经长春理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510331828.X/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置