ArcSoft Product AGE ESTIMATION DEVELOPER'S GUIDE

ARCSOFT_AGE_ESTIMATION_DEVELOPER'S_GUIDE

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 10

DownloadArcSoft Product  AGE ESTIMATION DEVELOPER'S GUIDE
Open PDF In BrowserView PDF
ArcSoft, Inc.

ArcSoft Age Estimation
开发指导文档

©2017 ArcSoft, Inc. All rights reserved.

ArcSoft, Inc.

目录
ARCSOFT AGE ESTIMATION ................................................................................................................ 1
概述 ................................................................................................................................................................ 3
1.1. 运行环境 ............................................................................................................................................. 3
1.2. 系统要求 ............................................................................................................................................. 3
1.3. 支持颜色空间格式 ............................................................................................................................. 3
类描述 ............................................................................................................................................................ 4
2.1. CLASS ASAE_FSDKFACE ................................................................................................................... 4
2.1.1. 功能描述 ...................................................................................................................................... 4
2.1.2. 构造函数 ...................................................................................................................................... 4
2.1.3. 成员函数 ...................................................................................................................................... 4
2.2. CLASS ASAE_FSDKERROR ................................................................................................................ 5
2.2.1. 功能描述 ...................................................................................................................................... 5
2.2.2. 构造函数 ...................................................................................................................................... 5
2.2.3. 成员函数 ...................................................................................................................................... 5
2.2.4. 类常量 .......................................................................................................................................... 5
2.3. CLASS ASAE_FSDKVERSION ............................................................................................................. 6
2.3.1. 功能描述 ...................................................................................................................................... 6
2.3.2. 构造函数 ...................................................................................................................................... 6
2.3.3. 成员函数 ...................................................................................................................................... 6
2.4. CLASS ASAE_FSDKAGE .................................................................................................................... 6
2.4.1. 构造函数 ...................................................................................................................................... 6
2.4.2. 成员函数 ...................................................................................................................................... 7
2.4.3. 类常量 .......................................................................................................................................... 7
2.5. CLASS ASAE_FSDKENGINE ............................................................................................................... 7
2.5.1. 功能描述 ...................................................................................................................................... 7
2.5.2. 构造函数 ...................................................................................................................................... 7
2.5.3. 成员函数 ...................................................................................................................................... 7
2.5.4. 类常量 .......................................................................................................................................... 9
示例代码 .......................................................................................................................................................10

©2017 ArcSoft, Inc. All rights reserved.

2

ArcSoft, Inc.

概述
虹软年龄检测引擎工作流程图.

Previous
Modules

Coordinates of
face rectangle

ArcSoft Age
Estimation Engine

Age of the
input face

Later
Modules

1.1. 运行环境


Android ARM 32

1.2. 系统要求


Android 5.x 或以上

1.3. 支持颜色空间格式
支持图像的颜色格式: NV21

©2017 ArcSoft, Inc. All rights reserved.

3

ArcSoft, Inc.

类描述
2.1. Class ASAE_FSDKFace
2.1.1. 功能描述
用来保存传入引擎检测的人脸信息

2.1.2. 构造函数
2.1.2.1. ASAE_FSDKFace(ASAE_FSDKFace self)
参数:
ASAE_FSDKFace self

类对象,创建的对象和传入的对象数据一致

2.1.2.2. ASAE_FSDKFace()
2.1.2.3. ASAE_FSDKFace(Rect rect, int degree)
参数:
Rect rect

人脸框

int degree

人脸角度

2.1.3. 成员函数
2.1.3.1. Rect getRect()
返回值:
保存的人脸框(Rect(left, top, right, bottom))

2.1.3.2. int getDegree()
返回值:
保存的人脸角度(ASAE_FOC_0, ASAE_FOC_90 等)

2.1.3.3. String toString()
返回值:
格式化人脸信息的字符串(String(”Rect(left, top – right, bottom), Degree”))

2.1.3.4. ASAE_FSDKFace clone()
返回值:
本对象的拷贝

2.1.3.5. void setRect(Rect rect)
参数:

©2017 ArcSoft, Inc. All rights reserved.

4

ArcSoft, Inc.

Rect rect

人脸框

2.1.3.6. void setDegree(int degree)
参数:

int degree

人脸角度

2.2. Class ASAE_FSDKError
2.2.1. 功能描述
这个类用来保存函数执行的错误信息。

2.2.2. 构造函数
2.2.2.1. ASAE_FSDKError()

2.2.3. 成员函数
2.2.3.1. int getCode()
返回值:
错误码值(MOK, MERR_INVALID_PARAM 等)

2.2.4. 类常量
2.2.4.1. 错误码
引擎返回的错误值定义
MOK

0

成功

MERR_BASIC_BASE

0x0001

基础错误起始值

MERR_UNKNOWN

0x0001

未知错误

MERR_INVALID_PARAM

0x0002

参数错误

MERR_UNSUPPORTED

0x0003

输入了引擎不支持的参数或
者数据

MERR_NO_MEMORY

0x0004

内存不足

MERR_BAD_STATE

0x0005

状态错误(未初始化就调用
了接口)

MERR_BUFFER_OVERFLOW

0x0009

内存上溢

MERR_BUFFER_UNDERFLOW

0x000a

内存下溢

MERR_FSDK_BASE

0x7000

校验错误起始值

©2017 ArcSoft, Inc. All rights reserved.

5

ArcSoft, Inc.

MERR_FSDK_INVALID_APP_ID

0x7001

非法 APPID

MERR_FSDK_INVALID_SDK_ID

0x7002

非法 SDKID

MERR_FSDK_INVALID_ID_PAIR

0x7003

SDKKEY 不是于当前
APPID 名下的

MERR_FSDK_MISMATCH_ID_AND_SDK

0x7004

SDKKEY 不是当前 SDK 所
支持的

MERR_FSDK_SYSTEM_VERSION_UNSUPPORTED

0x7005

不支持的系统版本

MERR_FSDK_LICENCE_EXPIRED

0x7006

SDK 过期

2.3. Class ASAE_FSDKVersion
2.3.1. 功能描述
这个类用来保存版本信息

2.3.2. 构造函数
2.3.2.1. ASAE_FSDKVersion()

2.3.3. 成员函数
2.3.3.1. String toString()
返回值:
包含所有版本信息的字符串

2.4. Class ASAE_FSDKAge
这个类用来保存年龄信息

2.4.1. 构造函数
2.4.1.1. ASAE_FSDKAge()
2.4.1.2. ASAE_FSDKAge(ASAE_FSDKAge obj)
参数:
ASAE_FSDKAge obj

©2017 ArcSoft, Inc. All rights reserved.

复制本身对象

6

ArcSoft, Inc.

2.4.2. 成员函数
2.4.2.1. int getAge()
返回值:
0 为无法识别,大于 0 为正常年龄

2.4.2.2. ASAE_FSDKAge clone()
返回值:
本身对象的拷贝

2.4.3. 类常量
2.4.3.1. 未知年龄
引擎返回的检测年龄结果
UNKNOWN_AGE

0

未知年龄

2.5. Class ASAE_FSDKEngine
2.5.1. 功能描述
这个类具体实现了年龄检测的功能

2.5.2. 构造函数
2.5.2.1. ASAE_FSDKEngine()

2.5.3. 成员函数
2.5.3.1. ASAE_FSDKError ASAE_FSDK_InitAgeEngine(String appid, String
sdkkey)
这个函数功能为初始化引擎。创建对象后,必须先于其他成员函数调用,否则其他成员函数会返回
MERR_BAD_STATE。
参数:
String appid

用户申请 SDK 时获取的 App Id

String sdkkey

用户申请 SDK 时获取的 SDK Key

返回值:
返回 ASAE_FSDKError 对象,具体错误信息参考 Class ASAE_FSDKError

©2017 ArcSoft, Inc. All rights reserved.

7

ArcSoft, Inc.

2.5.3.2. ASAE_FSDKError ASAE_FSDK_AgeEstimation_Video(byte[] data,
int width, int height, int format, List faces,
List ages)
这个函数功能为检测输入的视频帧中对应人脸的年龄,输出结果和人脸框以及角度参数有较大关
系。
参数:
byte[] data

输入的图像数据

int width

图像宽度

int height

图像高度

int format

图像格式

List
faces

输入的人脸信息需要放到到该列表里。

List
ages

输出对应 faces 列表顺序的年龄信息,注意 ASAE_FSDKAge 对象
引擎内部重复使用,如需保存,请 clone 一份 ASAE_FSDKAge 对象
或另外保存

返回值:
返回 ASAE_FSDKError 对象,具体错误信息参考 Class ASAE_FSDKError

2.5.3.3. ASAE_FSDKError ASAE_FSDK_AgeEstimation_Image(byte[] data,
int width, int height, int format, List faces,
List ages)
这个函数功能为检测输入的图像中对应人脸的年龄,输出结果和人脸框以及角度参数有较大关系。
参数:
byte[] data

输入的图像数据

int width

图像宽度

int height

图像高度

int format

图像格式

List
faces

输入的人脸信息需要放到到该列表里。

List
ages

输出对应 faces 列表顺序的年龄信息,注意 ASAE_FSDKAge 对象
引擎内部重复使用,如需保存,请 clone 一份 ASAE_FSDKAge 对象
或另外保存

返回值:
返回 ASAE_FSDKError 对象,具体错误信息参考 Class ASAE_FSDKError

2.5.3.4. ASAE_FSDKError ASAE_FSDK_UninitAgeEngine()
这个函数功能为销毁引擎,释放占用的内存资源。
返回值:
返回 ASAE_FSDKError 对象,具体错误信息参考 Class ASAE_FSDKError

©2017 ArcSoft, Inc. All rights reserved.

8

ArcSoft, Inc.

2.5.3.5. ASAE_FSDKError ASAE_FSDK_GetVersion(ASAE_FSDKVersion
version)
这个函数功能为获取 SDK 版本信息
参数:
ASAE_FSDKVersion
version

版本信息对象 参考 Class ASAE_FSDKVersion

返回值:
返回 ASAE_FSDKError 对象,具体错误信息参考 Class ASAE_FSDKError

2.5.4. 类常量
2.5.4.1. 颜色格式
引擎支持的颜色格式
CP_PAF_NV21

0x802

8-bit Y 层,之后是 8-bit 的 2x2 采样的 U,V 交织层

2.5.4.2. 人脸角度
检测结果中的人脸角度
ASAE_FOC_0

0x1

0度

ASAE_FOC_90

0x2

90 度

ASAE_FOC_270

0x3

270 度

ASAE_FOC_180

0x4

180 度

ASAE_FOC_30

0x5

30 度

ASAE_FOC_60

0x6

60 度

ASAE_FOC_120

0x7

120 度

ASAE_FOC_150

0x8

150 度

ASAE_FOC_210

0x9

210 度

ASAE_FOC_240

0xa

240 度

ASAE_FOC_300

0xb

300 度

ASAE_FOC_330

0xc

330 度

©2017 ArcSoft, Inc. All rights reserved.

9

ArcSoft, Inc.

示例代码
ASAE_FSDKEngine engine = new ASAE_FSDKEngine();
// 用来存放检测到的人脸信息列表
List result = new ArrayList();
List input = new ArrayList();
//这里人脸框和角度,请根据实际对应图片中的人脸框和角度填写
input.add(new ASAE_FSDKFace(new Rect(210, 178, 478, 446), ASAE_FSDKEngine.ASAE_FOC_0));
//初始化人脸检测引擎,使用时请替换申请的 APPID 和 SDKKEY
ASAE_FSDKError err = engine.ASAE_FSDK_InitAgeEngine("APPID","SDKKEY");
Log.d("com.arcsoft", "ASAE_FSDK_InitAgeEngine = " + err.getCode());
//输入的 data 数据为 NV21 格式(如 Camera 里 NV21 格式的 preview 数据),其中 height 不能为奇
数,人脸检测返回结果保存在 result。
err = engine.ASAE_FSDK_AgeEstimation_Image(data, width, height,
ASAE_FSDKEngine.CP_PAF_NV21, input, result);
Log.d("com.arcsoft", "ASAE_FSDK_AgeEstimation_Image =" + err.getCode());
Log.d("com.arcsoft", "Face=" + result.size());
for (ASAE_FSDKAge age : result) {
Log.d("com.arcsoft", "Age:" + age.getAge());
}
//销毁人脸检测引擎
err = engine.ASAE_FSDK_UninitAgeEngine();
Log.d("com.arcsoft", "ASAE_FSDK_UninitAgeEngine =" + err.getCode());

©2017 ArcSoft, Inc. All rights reserved.

10



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.5
Linearized                      : No
Page Count                      : 10
Language                        : zh-CN
Tagged PDF                      : Yes
Title                           : ArcSoft Product Document
Author                          : Hanqiu
Creator                         : Microsoft® Word 2010
Create Date                     : 2017:09:15 14:14:12+08:00
Modify Date                     : 2017:09:15 14:14:12+08:00
Producer                        : Microsoft® Word 2010
EXIF Metadata provided by EXIF.tools

Navigation menu