《Kinect应用开发实战:用最自然的方式与机器对话》一3.6 创建你的Avatar

简介: 本节书摘来自华章出版社《Kinect应用开发实战:用最自然的方式与机器对话》一书中的第3章,第3.6节,作者 余涛,更多章节内容可以访问云栖社区“华章计算机”公众号查看

3.6 创建你的Avatar

Kinect可以识别追踪你的声音和肢体语言,但是面部表情呢?在CES 2011上,微软CEO鲍尔默曾以卡通形象出场,并且介绍Kinect Avatar服务,如图3-49所示。

image

Avatar卡通人物与真人相比特征鲜明,其可对你的面部表情进行识别并展示。Avatar Kinect为用户提供了一个虚拟平台,免费提供给所有Xbox Live会员,你可以与好友进行面对面的聊天交流。它能识别你的表情、眼神、口形、皱眉,这样可使用户更加“真实”地进行聊天,仿佛聚会时围坐一圈畅谈人生。
你站在那里,Kinect Avatar就出现了,举手投足,动作一致;一颦一笑,栩栩如生。这些在技术上如何实现的呢?

3.6.1 “有骨有肉”

前面我们花了很多篇幅来分析Kinect如何从深度图像中识别出人体骨骼,事实上Avatar是在人体骨骼基础上的进一步丰满的肢体。Avatar构建的整个过程好比人体素描,先勾勒出人体骨骼,再画出肌肉。

3.6.2 泊松方程噪声滤除

首先,我们来看如何创建与用户体型一致的Avatar身体。事实上,由于Kinect受成本所限,硬件能力并不强,因此,深度图像分辨率也不高。人体经过Kinect扫描得到的深度图,仿佛月球表面一样凹凸不平。如何将粗糙的表面还原为平滑的表面呢?传统图像处理中,中值滤波这种非线性平滑技术常用来保护边缘信息,是一种经典的平滑噪声的方法。
Kinect采用了泊松方程等算法进行噪声滤除,通过这种方法可判断人体表面特征点是噪声还是真实的存在。从技术算法层面上来看,先抓取特征点周边表面的角度和朝向,进而判断该点可能存在于空间的位置。同时根据朝向判断,在特征点周围形成一个虚拟的距离场。
泊松方程用于帮助建立这个距离场。根据采样特征点的位置,尽可能平均估计它对周围的影响,估计周围表面距离场情况。如果真实物体表面有一个洞的话,那么它的影响可以很好地扩散到周围,进而获得非常平滑的形状。每个特征点的最终状态和特征并不仅仅取决于它本身,还取决于周围很多点。如果在采样面中有一个凸起的点,这个点周围的点在朝向特性上都没有表现出这里有凸起的趋势,那么这个点就被判定为噪声并被去除,反之则保留。由于Kinect采样精度的限制,细小的表面特征信息也可能被误判为噪声。

3.6.3 粗糙变平滑、缺陷自动补齐

鲜活的Avatar表情是如何创建的呢?对很多需要实时绘制的娱乐类游戏来说,3000个顶点的人脸3D模型已经十分真实,目前Kinect的红外摄像头可以提供320×240的分辨率,可采集的特征点已经远远超过10000,除了脸上的皱纹之外,生成的多边形顶点人脸可表现绝大部分的表情特征。前面已经谈到,人脸表面的深度图像会出现缝隙和不连续的区域,修补这些缺陷主要借助上面所提到的泊松方程和平滑算法,判断漏洞附近的表面朝向,进而实现自动修补,从而粗糙变平滑、缺陷自动补齐。因此,你看到的Kinect Avatar一颦一笑,栩栩如生。
这其中涉及广泛的计算机视觉和图形学的知识,它们在深入理解问题并创建有效视觉交流方面的作用,已得到公认。

相关文章
|
4月前
|
C# 图形学
【Unity 3D】元宇宙案例之虚拟地球信息射线实战(附源码、演示视频和步骤 超详细)
【Unity 3D】元宇宙案例之虚拟地球信息射线实战(附源码、演示视频和步骤 超详细)
48 0
|
9月前
|
SQL XML 自然语言处理
从零开始构建一个电影知识图谱,实现KBQA智能问答[上篇]:本体建模、RDF、D2RQ、SPARQL endpoint与两种交互方式详细教学
从零开始构建一个电影知识图谱,实现KBQA智能问答[上篇]:本体建模、RDF、D2RQ、SPARQL endpoint与两种交互方式详细教学
从零开始构建一个电影知识图谱,实现KBQA智能问答[上篇]:本体建模、RDF、D2RQ、SPARQL endpoint与两种交互方式详细教学
|
机器学习/深度学习 人工智能 文字识别
从地图到手机通讯到ChatGPT,你想要的免费 API 都给你整理好了
在今天的科技世界中,API(Application Programming Interface)已经成为现代应用程序不可或缺的一部分。它们提供了许多强大的功能,让开发人员可以轻松地集成其他应用程序的功能,从而快速构建出色的应用程序。
217 0
从地图到手机通讯到ChatGPT,你想要的免费 API 都给你整理好了
|
JSON 机器人 API
API制作婴儿级教程,有手就会
API制作婴儿级教程,有手就会
121 0
API制作婴儿级教程,有手就会
|
传感器 API 人机交互
《Kinect应用开发实战:用最自然的方式与机器对话》一导读
Kinect正是在这样的背景中诞生的,人机交互从二维世界扩展到三维空间,而且是非接触的交互体验(Touch-Free)。Kinect也许会成为第三次人机交互革命的原点。
2139 0
|
算法
《Kinect应用开发实战:用最自然的方式与机器对话》一3.7 本章小结
本节书摘来自华章出版社《Kinect应用开发实战:用最自然的方式与机器对话》一书中的第3章,第3.7节,作者 余涛,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1191 0
《Kinect应用开发实战:用最自然的方式与机器对话》一2.4 本章小结
本节书摘来自华章出版社《Kinect应用开发实战:用最自然的方式与机器对话》一书中的第2章,第2.4节,作者 余涛,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1305 0
|
算法
《Kinect应用开发实战:用最自然的方式与机器对话》一第3章 Kinect工作原理大揭秘 3.0
本节书摘来自华章出版社《Kinect应用开发实战:用最自然的方式与机器对话》一书中的第3章,第3.0节,作者 余涛,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1444 0
|
人机交互
《Kinect应用开发实战:用最自然的方式与机器对话》一1.2 “你就是控制器”—Kinect宣言
本节书摘来自华章出版社《Kinect应用开发实战:用最自然的方式与机器对话》一书中的第1章,第1.2节,作者 余涛,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1087 0
|
算法 语音技术 开发工具
《Kinect应用开发实战:用最自然的方式与机器对话》一3.2 基于“管道”的系统架构
本节书摘来自华章出版社《Kinect应用开发实战:用最自然的方式与机器对话》一书中的第3章,第3.2节,作者 余涛,更多章节内容可以访问云栖社区“华章计算机”公众号查看
2213 0