128 lines
3.3 KiB
Markdown
128 lines
3.3 KiB
Markdown
# 性别估计器
|
||
|
||
## **1. 接口简介** <br>
|
||
|
||
性别估计器要求输入原始图像数据和人脸特征点(或者裁剪好的人脸数据),对输入的人脸进行性别估计。<br>
|
||
|
||
## **2. 类型说明**<br>
|
||
|
||
### **2.1 struct SeetaImageData**<br>
|
||
|
||
|名称 | 类型 | 说明|
|
||
|---|---|---|
|
||
|data|unit8_t* |图像数据|
|
||
|width | int32_t | 图像的宽度|
|
||
|height | int32_t | 图像的高度|
|
||
|channels | int32_t | 图像的通道数|
|
||
说明:存储彩色(三通道)或灰度(单通道)图像,像素连续存储,行优先,采用 BGR888 格式存放彩色图像,单字节灰度值存放灰度图像。
|
||
|
||
### **2.2 struct SeetaPointF**<br>
|
||
|
||
|名称 | 类型 | 说明|
|
||
|---|---|---|
|
||
|x|double|人脸特征点横坐标|
|
||
|y|double|人脸特征点纵坐标|
|
||
|
||
## 3 class GenderPredictor
|
||
性别估计器。
|
||
|
||
### 3.1 Enum SeetaDevice
|
||
|
||
模型运行的计算设备。
|
||
|
||
|名称 |说明|
|
||
|---|---|
|
||
|SEETA_DEVICE_AUTO|自动检测,会优先使用 GPU|
|
||
|SEETA_DEVICE_CPU|使用CPU计算|
|
||
|SEETA_DEVICE_GPU|使用GPU计算|
|
||
|
||
### 3.2 struct SeetaModelSetting
|
||
|
||
性别估计器需要传入的结构体参数。
|
||
|
||
|参数 | 类型 |缺省值|说明|
|
||
|---|---|---|---|
|
||
|model|const char**| |模型文件|
|
||
|id|int| |GPU id|
|
||
|device|SeetaDevice|AUTO |计算设备(CPU 或者 GPU)|
|
||
|
||
### 3.3 构造函数
|
||
#### GenderPredictor
|
||
|
||
|参数 | 类型 |缺省值|说明|
|
||
|---|---|---|---|
|
||
|setting|const SeetaModelSetting&| |结构参数|
|
||
|
||
### 3.4 成员函数
|
||
|
||
#### GetCropFaceWidth
|
||
获取裁剪人脸的宽度。
|
||
|
||
|参数 | 类型 |缺省值|说明|
|
||
|---|---|---|---|
|
||
|返回值|int| |返回的人脸宽度|
|
||
|
||
#### GetCropFaceHeight
|
||
获取裁剪的人脸高度。
|
||
|
||
|参数 | 类型 |缺省值|说明|
|
||
|---|---|---|---|
|
||
|返回值|int| |返回的人脸高度|
|
||
|
||
#### GetCropFaceChannels
|
||
获取裁剪的人脸数据通道数。
|
||
|
||
|参数 | 类型 |缺省值|说明|
|
||
|---|---|---|---|
|
||
|返回值|int| |返回的人脸数据通道数|
|
||
|
||
#### CropFace
|
||
裁剪人脸。
|
||
|
||
|参数 | 类型 |缺省值|说明|
|
||
|---|---|---|---|
|
||
|image|const SeetaImageData&| |原始图像数据|
|
||
|points|const SeetaPointF*| |人脸特征点数组|
|
||
|face|SeetaImageData&| |返回的裁剪人脸|
|
||
|返回值|bool| |true表示人脸裁剪成功|
|
||
|
||
#### PredictGender
|
||
输入裁剪好的人脸,返回估计的性别。
|
||
|
||
|参数 | 类型 |缺省值|说明|
|
||
|---|---|---|---|
|
||
|face|const SeetaImageData&| |裁剪好的人脸数据|
|
||
|gender|GENDER&| |估计的性别|
|
||
|返回值|bool| |true表示估计成功|
|
||
说明:GENDER可取值MALE(男性)和FEMALE(女性)。
|
||
|
||
#### PredictGenderWithCrop
|
||
输入原始图像数据和人脸特征点,返回估计的性别。
|
||
|
||
|参数 | 类型 |缺省值|说明|
|
||
|---|---|---|---|
|
||
|image|const SeetaImageData&| |原始人脸数据|
|
||
|points|const SeetaPointF*| |人脸特征点|
|
||
|gender|GENDER&| |估计的性别|
|
||
|返回值|bool| |true表示估计成功|
|
||
说明:GENDER可取值MALE(男性)和FEMALE(女性)。
|
||
|
||
#### set
|
||
设置相关属性值。其中<br>
|
||
|
||
**PROPERTY_NUMBER_THREADS**:
|
||
表示计算线程数,默认为 4.
|
||
|
||
|参数 | 类型 |缺省值|说明|
|
||
|---|---|---|---|
|
||
|property|Property||属性类别|
|
||
|value|double||设置的属性值|
|
||
|返回值|void| | | |
|
||
|
||
#### get
|
||
获取相关属性值。
|
||
|
||
|参数 | 类型 |缺省值|说明|
|
||
|---|---|---|---|
|
||
|property|Property||属性类别|
|
||
|返回值|double||对应的属性值| |