Avatar 虚拟形象
  • iOS : Objective-C
  • Android
  • 产品简介
  • 下载
  • 下载体验 App
  • 快速开始
    • 跑通示例源码
    • 集成 SDK
    • 创建虚拟形象
    • ZegoCharacterHelper 使用说明
  • 基本功能
  • 常见错误码
  • 客户端 API
  • 常见问题

表情随动

更新时间:2022-06-08 18:03

功能简介

ZEGO Avatar SDK 提供了表情随动功能,基于领先的人脸关键点精准识别,结合面部、舌头、眼球在内的 52 种基础面部表情维度,实时捕获用户脸部的表情动作,在虚拟形象上进行实时的还原渲染。

可广泛应用于社交互动、语聊直播等场景中。

前提条件

在实现“表情随动”功能之前,请确保:

  • 已联系 ZEGO 商务人员获取到 ZegoAvatar SDK,并在项目中集成了 SDK,详情请参考 集成 SDK
  • 已参考 创建虚拟形象,完成基本的虚拟人物形象搭建。

实现流程

开发者请参考以下步骤,实现 “表情随动” 功能。

1 开始表情检测

  • 开启表情检测前,请确认已开启摄像头权限。
  • 开发者如果使用了 ZegoCharacterHelper,则无需再调用 IZegoCharacter 的任何相关接口。

搭建出基本的虚拟人物形象后,调用 startDetectExpression 接口,设置驱动模式为 ZegoExpressionDetectModeCamera,通过前置摄像头,开始检测表情;然后可以直接通过 ZegoCharacterHelper 的 setExpression 接口设置表情,驱动当前虚拟人物的面部表情变化。

// 开始表情检测
___weak typeof(self) weakSelf = self;
BOOL ret = [[[ZegoAvatarService sharedInstance] getInteractEngine] startDetectExpression:ZegoExpressionDetectModeCamera callback:^(ZegoExpression *expression) {
    // 驱动虚拟人物的脸部变化
    __strong typeof(self) strongSelf = weakSelf;
    [strongSelf.characterHelper setExpression: expression];
}];

2 停止表情检测

将应用切换到后台运行、或退出当前页面时,需要调用 stopDetectExpression 接口,停止表情检测。

// 停止表情检测
[[[ZegoAvatarService sharedInstance] getInteractEngine] stopDetectExpression];