人脸跟踪器
1. 接口简介
人脸跟踪器会对输入的彩色图像或者灰度图像中的人脸进行跟踪,并返回所有跟踪到的人脸信息。
2. 类型说明
2.1 struct SeetaImageData
| 名称 |
类型 |
说明 |
| data |
unit8_t* |
图像数据 |
| width |
int32_t |
图像的宽度 |
| height |
int32_t |
图像的高度 |
| channels |
int32_t |
图像的通道数 |
| 说明:存储彩色(三通道)或灰度(单通道)图像,像素连续存储,行优先,采用 BGR888 格式存放彩色图像,单字节灰度值存放灰度图像。 |
|
|
2.2 struct SeetaRect
| 名称 |
类型 |
说明 |
| x |
int32_t |
人脸区域左上角横坐标 |
| y |
int32_t |
人脸区域左上角纵坐标 |
| width |
int32_t |
人脸区域宽度 |
| height |
int32_t |
人脸区域高度 |
2.3 struct SeetaTrackingFaceInfo
| 名称 |
类型 |
说明 |
| pos |
SeetaRect |
人脸位置 |
| score |
float |
人脸置信分数 |
| frame_no |
int |
视频帧的索引 |
| PID |
int |
跟踪的人脸标识id |
2.4 struct SeetaTrackingFaceInfoArray
| 名称 |
类型 |
说明 |
| data |
const SeetaTrackingFaceInfo* |
人脸信息数组 |
| size |
int |
人脸信息数组长度 |
3 class FaceTracker
人脸跟踪器。
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 构造函数
FaceTrakcer
| 参数 |
类型 |
缺省值 |
说明 |
| setting |
const SeetaModelSetting& |
|
跟踪器结构参数 |
| video_width |
int |
|
视频的宽度 |
| video_height |
int |
|
视频的高度 |
3.4 成员函数
SetSingleCalculationThreads
设置底层的计算线程数量。
| 参数 |
类型 |
缺省值 |
说明 |
| num |
int |
|
线程数量 |
| 返回值 |
void |
|
|
Track
对视频帧中的人脸进行跟踪。
| 参数 |
类型 |
缺省值 |
说明 |
| image |
const SeetaImageData& |
|
原始图像数据 |
| 返回值 |
SeetaTrackingFaceInfoArray |
|
跟踪到的人脸信息数组 |
Track
对视频帧中的人脸进行跟踪。
| 参数 |
类型 |
缺省值 |
说明 |
| image |
const SeetaImageData& |
|
原始图像数据 |
| frame_no |
int |
|
视频帧索引 |
| 返回值 |
SeetaTrackingFaceInfoArray |
|
跟踪到的人脸信息数组 |
SetMinFaceSize
设置检测器的最小人脸大小。
| 参数 |
类型 |
缺省值 |
说明 |
| size |
int32_t |
|
最小人脸大小 |
| 返回值 |
void |
|
|
| 说明:size 的大小保证大于等于 20,size的值越小,能够检测到的人脸的尺寸越小, |
|
|
|
| 检测速度越慢。 |
|
|
|
GetMinFaceSize
获取最小人脸的大小。
| 参数 |
类型 |
缺省值 |
说明 |
| 返回值 |
int32_t |
|
最小人脸大小 |
SetThreshold
设置检测器的检测阈值。
| 参数 |
类型 |
缺省值 |
说明 |
| thresh |
float |
|
检测阈值 |
| 返回值 |
void |
|
|
GetScoreThreshold
获取检测器检测阈值。
| 参数 |
类型 |
缺省值 |
说明 |
| 返回值 |
float |
|
检测阈值 |
SetVideoStable
设置以稳定模式输出人脸跟踪结果。
| 参数 |
类型 |
缺省值 |
说明 |
| stable |
bool |
|
是否是稳定模式 |
| 返回值 |
void |
|
|
| 说明:只有在视频中连续跟踪时,才使用此方法。 |
|
|
|
GetVideoStable
获取当前是否是稳定工作模式。
| 参数 |
类型 |
缺省值 |
说明 |
| 返回值 |
bool |
|
是否是稳定模式 |