Kinect驱动的人脸实时动画
近期几年。realtime的人脸动画開始风声水起。不少图形图像的研究者開始在这个领域不断的在顶级会议siggraph和期刊tog上面发文章。
随着kinect等便宜的三维数据採集设备的运用。以及其功能强大的人脸识别和动作识别的功能,极大的推动了人脸数据驱动电脑中3D模型
的表情表演和动作表演的可能。
以下是几个大牛的主页,当中有不少关于这方面的研究:
主要发起者:
li hao 在epfl的lgg实验室的研究工作:
http://lgg.epfl.ch/publications.php
眼下其人在usc:
http://www.hao-li.com/Hao_Li/Hao_Li_-_about_me.html
然后他们还做出了比較成熟的软件:
http://www.faceshift.com/
国内的话,大牛 zhou kun也不做了不少相关的工作:
http://www.kunzhou.net/
此外 瑞士的迪斯尼研究中心以及传统的矩阵摄相三维人脸重建和动作捕捉的强者usc的一个实验室也有不少相关工作:
http://gl.ict.usc.edu/Research/HFFH/
http://www.disneyresearch.com/publications/
本人依据之前的几个blog的工作,然后整合试试变形的算法。也对实时人脸动画进行了尝试,详细过程例如以下:
1.通过kinect保存人脸的三维数据为obj文件
2.启动网格显示模型,读取保存的kinect网格模型
3.显示每一个顶点相应的标号
4.打开要驱动的obj模型
5.左键选择与上面顶点相应的坐标而且记录下来。(选中了的点会在模型中有红点标出,而且在命令行窗体输出相应的ID和坐标)
6.建立相应关系。即实时获得的kinect数据与须要驱动的顶点的相应关系
7.连接kinect,而且运用laplace或者poission变形方式。实时驱动模型变形,中间过程截图例如以下:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcGl6aWJpbmc4ODA5MDk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcGl6aWJpbmc4ODA5MDk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcGl6aWJpbmc4ODA5MDk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
至此。kinect驱动三维模型实时变形的demo基本结束,这里还是很初步的结果。兴许能够通过參数化映射等实现自己主动的变形点匹配和变形驱动。当然也能够运用LOD等方式驱动更加丰富的人脸的动画,详细能够參考14年siggraph的paper, http://www.iro.umontreal.ca/~derek/.
另外。也能够依照上面提到的几个大牛的方法,直接运用machine learning 的方式,学习几个主要的表情。然后驱动动画。这将是一件很有趣的事情。
Kinect驱动的人脸实时动画的更多相关文章
- 手 Q 人脸识别动画实现详解
欢迎大家前往腾讯云社区,获取更多腾讯海量技术实践干货哦~ 前言 开门见山,先来看下效果吧. 看到这么酷炫的效果图,不得不赞叹一下我们的设计师.然而,站在程序员的角度上看,除了酷炫之外更多的是复杂.但是 ...
- ROS 安装kinect驱动+测试
有时 ,需要用到kinect 的所有需要驱动才能使用kinect ,turtlebot2上的传感器就是kinect ,所以kinect 的用处还是很多的 , 今天就来讲一下kinect 驱动在unbu ...
- ARM TK1 安装kinect驱动
首先安装usb库 $ git clone https://github.com/libusb/libusb.git 编译libusb需要的工具 $ sudo apt-get install autoc ...
- STC8H开发(十三): I2C驱动DS3231高精度实时时钟芯片
目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) ST ...
- STC8H开发(十四): I2C驱动RX8025T高精度实时时钟芯片
目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) ST ...
- 图像处理(二十一)基于数据驱动的人脸卡通动画生成-Siggraph Asia 2014
http://blog.csdn.net/garfielder007/article/details/50582018 在现实生活中,我们经常会去评价一个人,长得是否漂亮.是不是帅哥美女,然而如何用五 ...
- Ubuntu升级显卡驱动后开机无动画的解决办法
我的联想Ideapad z460,Nvidia GEFORCE 310M的显卡,安装闭源的驱动非常的蛋疼,ubuntu下面有附加驱动管理,在里面直接就能安装,也可以到官网下载.run的安装包,比较的折 ...
- Jetson TX1 安装Kinect驱动
1.添加Universe源 $ sudo apt-add-repository universe $ sudo apt-get update 2.安装编译工具和依赖项 $ sudo apt-get i ...
- c# 利用AForge和百度AI开发实时人脸识别
baiduAIFaceIdentify项目是C#语言,集成百度AI的SDK利用AForge开发的实时人脸识别的小demo,里边包含了人脸检测识别,人脸注册,人脸登录等功能 人脸实时检测识别功能 思路是 ...
随机推荐
- Nexus环境搭建
安装 1.解压nexus-2.11.01-bundle.zip到F:\Java\nexus(可自定义) 2.进入F:\Java\nexus\nexus-2.11.1-01\bin\jsw进入相应的系统 ...
- cf536b——优先队列的运用
题目 题目:cf536 B题 题目大意:一个饭店有n种食物,每种食物有对应的价格和数量,然后有m个顾客,每个顾客需要$d_j$份第$t_j$种食物,如果该种食物数量不够,则选其它尽可能便宜的代替(出现 ...
- DEALLOCATE - 删除一个准备好的查询
SYNOPSIS DEALLOCATE [ PREPARE ] plan_name DESCRIPTION 描述 DEALLOCATE 用于删除前面准备好的查询. 如果你没有明确 DEALLOCATE ...
- CAD参数绘制圆弧(网页版)
在CAD设计时,需要绘制圆弧,用户可以在图面点圆弧起点,圆弧上的一点和圆弧的终点,这样就绘制出圆弧. 主要用到函数说明: _DMxDrawX::DrawArc2 由圆弧上的三点绘制一个圆弧.详细说明如 ...
- 21反射、动态代理、枚举、Filter
2018/10/08 1.反射 Constructor Class类的newInstance()方法是使用该类无参的构造函数创建对象, 如果一个类没有无参的构造函数, 就不能这样创建了,可以调用Cla ...
- Dijkstra+set堆优化局部模板
这是某天2018-10-25写的某题(P1613-luogu)的局部代码,目的是方便自己记忆一些细节,所以这里不过多赘述算法原理或题目 邻接矩阵mapp表示有向图 struct ELE { int i ...
- [Python3网络爬虫开发实战] 3.2.2-高级用法
在前一节中,我们了解了requests的基本用法,如基本的GET.POST请求以及Response对象.本节中,我们再来了解下requests的一些高级用法,如文件上传.cookie设置.代理设置等. ...
- awk输出指定列
awk '{print $0} file' #打印所有列awk '{print $1}' file #打印第一列 awk '{print $1, $3}' file #打印第一和第三列 cat fil ...
- python3 监控代码变化 自动重启 提高开发效率
#!/usr/bin/env python3 # -*- coding: utf-8 -*- __author__ = 'Michael Liao' import os, sys, time, sub ...
- SQL-如何使用 MongoDB和PyMongo。
先决条件 在开始之前,请确保已经安装了 PyMongo 发行版. 在 Python shell 中,下面的代码应该在不引发异常的情况下运行: >>> import pymongo 假 ...