文档首页 > > 常见问题> 短视频> 人脸识别怎么使用

人脸识别怎么使用

分享
更新时间:2020/09/24 GMT+08:00

短视频SDK人脸识别使用流程如下图。

图1 人脸识别使用流程

代码示例

以Android版本为例,使用人脸识别代码如下。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
    //NvsFaceEffectV1是SDK的人脸特效类。NvFaceData.asset是人脸数据文件包,authpack是授权文件类。
    NvsFaceEffectV1.setup("assets:/NvFaceData.asset", com.arface.authpack.A());  
    //setMaxFaces()是开启人脸检测设置最大可检测人脸数,最多可同时检测8张脸,默认检测1张。
    NvsFaceEffectV1.setMaxFaces(2); 

    //添加名称是Face Effect的脸部特效,默认带着美型。
     m_ARFace = m_streamingContext.appendBuiltinCaptureVideoFx("Face Effect");
     m_ARFace.setStringVal("Beautification Package", "assets:/NvBeautification.asset");
  
    //设置脸部特效的人脸道具
    m_ARFace.setStringVal("Face Ornament", "assets:/"+effectName);//effectName为.asset格式的道具包。

    // 选择设置脸部特效脸型类型,包括默认,女神,网红,自然这四种,使用时任选其一
    m_ARFace.setMenuVal("Face Type", "Default");//默认          
    m_ARFace.setMenuVal("Face Type", "Goddness");//女神         
    m_ARFace.setMenuVal("Face Type", "Internet Celebrity");//网红          
    m_ARFace.setMenuVal("Face Type", "Natural");//自然 

   //设置每种脸部类型的参数,包括基础脸型程度,大眼,瘦脸
   m_ARFace.setFloatVal("Face Shape Level", val);//指定基本脸型程度        
   m_ARFace.setFloatVal("Eye Enlarging", val); //大眼,用于控制眼睛大小        
   m_ARFace.setFloatVal("Cheek Thinning", val);//瘦脸,用于控制脸型大小 

  //销毁人脸特效
  NvsFaceEffectV1.done();

Face Effect的参数说明如表1所示。

表1 Face Effect人脸特效参数说明

参数名称

参数说明

参数类型

默认值

最大值

最小值

Face Type

脸型

menu

Default

Menu value: Default,Goddness,Internet Celebrity,Natural

Face Shape Level

基础脸型程度

Floating Point

0

1

0

Eye Enlarging

大眼,控制眼睛大小

Floating Point

0

1

0

Cheek Thinning

瘦脸,控制脸大小

Floating Point

0

1

0

Beautification Package

美型包

String

N/A

Face Ornament

道具包

String

N/A

FlipX

是否水平翻转

bool

false

FlipY

是否竖直翻转

bool

false

分享:

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问