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,里边包含了人脸检测识别,人脸注册,人脸登录等功能 人脸实时检测识别功能 思路是 ...
随机推荐
- 6-Java-C(移动距离)
题目描述: X星球居民小区的楼房全是一样的,并且按矩阵样式排列.其楼房的编号为1,2,3... 当排满一行时,从下一行相邻的楼往反方向排号. 比如:当小区排号宽度为6时,开始情形如下: 1 2 3 ...
- ubuntu 安装virt-manager
sudo apt-get install qemu-kvm libvirt-bin virt-manager bridge-utils
- 网络测速命令--speedtest
网络测速 speedtest-cli 顾名思义,这个命令为网络测速命令,基于Python编写,测试系统网络的上传下载速度,GitHub托管的项目地址,以下列出常见的用法 安装命令 pip instal ...
- 原生javascript实现call、apply和bind的方法
var context = {id: 12}; function fun (name, age) { console.log(this.id, name, age) } bind bind() 方法会 ...
- 常量指针(pointer to constant)和指针常量(constant pointer)
一个指针可以操作两个实体,一个是指针值(即地址),一个是间访值(即指向的实体).于是指针的常量性也分为两种:常量指针(pointer to constant)和指针常量(constant pointe ...
- Linux系统用户、组和权限管理
一.用户与组 1.用户与组的概念 在linux系统中,根据系统管理需要将用户分为三种类型: 1.超级用户:root是linux系统的超级用户,对系统拥有绝对权限.由于root用户权限太大,只有在进行系 ...
- python链家网高并发异步爬虫and异步存入数据
python链家网二手房异步IO爬虫,使用asyncio.aiohttp和aiomysql 很多小伙伴初学python时都会学习到爬虫,刚入门时会使用requests.urllib这些同步的库进行单线 ...
- MySQL-----多对多
多对多: 示例1: 用户表和相亲记录表 用户表 用户id 用户名 性别 1 George 男 2 Elizabeth 女 3 Bruce 男 4 Catherine ...
- LeetCode 121. Best Time to Buy and Sell Stock (stock problem)
Say you have an array for which the ith element is the price of a given stock on day i. If you were ...
- 将 Oracle VirtualBox 中运行的虚拟机导入 VMware Fusion、Workstation 或 Player
1.从virtualbox种导出电脑为 .ova格式镜像 要导入 Oracle VirtualBox 中运行的虚拟机,必须将该虚拟机从 VirtualBox 导出到开放虚拟化格式存档(.ova 文件) ...