腾讯创意本月推荐

一、     创意点的产品功能/使用场景介绍(what/where

用创意相机的动态表情功能拍照后,可以自动抠出人脸,结合有趣的身体,生成动态表情。主要使用场景,可以在微信、QQ聊天过程中,活跃与朋友的聊天氛围、搞怪朋友及自己的头像,让你的表达更生动,充满趣味。  

 

二、     创新点的创新之处的具体描述(innovation

可以根据当前的人脸,实时生成搞怪表情。动态表情上线前,创意是来源StickerMe的非动态表情。当前表情截图:

三、     创意如何产生的

图片类产品在国内已经是红海一片,从工具型产品图片基础编辑处理、有声图片以及移动图片社交产品,各种产品层出不穷,但盈利模式尚不清晰。如何在挖掘图片价值情况下找到商业模式,让图片更有创意使用体验更佳?在对整个图片产品细分市场进行分析后,结合我们现有资源以及QQ秀产品成功经验,通过用户调研发现用户对于结合微信、手Q聊天的表情是强需求的,但是目前的表情只是局限于简单的图片表达,并不能与用户自身有完美的结合,而动态表情正好可以解决这一需求,同时在国内目前还是空白。好玩、有趣、搞怪、整蛊更深入的挖掘图片趣味性价值,这就是我们的动态表情!从单人动态表情到双人动态表情,丰富用户聊天场景的内容性创造,提高用户参与度,使用度。

 

四、     怎么实现的(how

 

1、动态表情数据结构格式


一套表情包有一个蒙板图片,用来表示人脸在动态表情的区域,拍照或者调整时将脸部移动到用户认为最恰当的位置。

素材描述文件中还包含对表情包的数据描述,包括表情数量,以及蒙板图片中人脸位置。人脸位置为两个眼睛的中间值以及嘴巴的位置在蒙板的位置,程序用来对图片进行自动校准时作为参考值。

 

同时一套表情中,可以生成多个表情,因此每个表情包中,都有多个表情素材包。一个素材包代表一个表情,素材包有表情文件中三个图层的素材或者描述:

图层A:代表某一帧人脸前景图

图层C:代表某一帧人脸背景图

图层B:为人脸图层,表情描述文件中有改帧人脸的位置以及旋转等各种信息。

 

最后生成的表情文件格式如下:

2、动态制作流程如图


 

具体实现流程描述如下:

1、  启动表情制作时,获取当前表情的蒙板图片,以及蒙板人脸位置信息。

2、  选择图片源时有两个来源

1)  使用照相机拍照,拍照时,界面上显示蒙板,指示用户将脸部对准蒙板的人脸区域,拍照后使用拍照生成的图片。

2)  从相册内选择照片

3、  获取图片后,计算图片中的人脸位置以及蒙板中的人脸位置,自动进行校准,包括对图片进行缩放、旋转操作,尽量使得人脸位置和蒙板位置一致。

4、  用户可以调整图片,将图片调整到用户认为的最佳位置。

5、  完成图片调整后,根据蒙板扣出人脸区域

6、  对人脸图片进行美化处理。

7、  加载素材文件并初始化配置文件。

8、  将素材文件以及人脸区域进行合成。

9、  表情制作完成,界面上进行显示并保存为动态表情文件。

 

3、动态表情合成算法流程

具体实现步骤如下:

  1. 1.       遍历输入真彩色图片,对于每一个像素点p(R, G, B),插入到八叉树的一个最深层叶子节点上,每层经过的节点索引计算公式为idx = ((1 & (R<<level)) << 2) + ((1 & (G<<level)) << 1) + ((1 & (B<<level)) << 0),同时在叶子节点记录对应颜色的频度信息。(八叉树最多有8层,每一层有8个节点,那么一个满八叉树的叶子节点就有8^82^24个节点,这些恰好是真彩色的颜色总数。)

  特别说明:为加速调色板查找速度,我们的算法在插入节点建树的同时,一并将p在图片中的偏移位置信息写入叶子节点中的一个链表中,并动态地维护这个链表pdlist

  1. 2.       合并全彩色的八叉树,使得叶子节点数目为目标量化颜色数目。合并的原则是:深度相同频度最小先归约。
  2. 3.       遍历合并后的八叉树,生成256色的量化调色板,同时得到每个像素点量化时对应的调色板颜色索引。

  特别说明:由于建树时已经将各像素点的偏移信息写入了各自对应的八叉树颜色节点中的pdlist,并且在合并叶子节点时动态的维护了pdlist的变更,所以此处每得到一种颜色表颜色的同时,即同步得到了相应图像像素点的量化索引。这样,以空间换时间的策略最大化的加速了颜色表的查找速度。

 

五、     产品的意义对未来的展望for future

  创意相机的动态表情功能目前广受好评,与手Q和微信也在寻求进一步合作,让表情内置,让更多的用户可以通过动态表情表达自己的心情。产品也会通过持续创新来继续丰富表情功能,如整蛊别人表情、互动表情。