DFace SDK  1.8.5
dface::DfaceRecognize类 参考abstract

DFace人脸识别(特征提取)API抽象层(DFaceRecognize) 更多...

#include <dface_recognize.h>

Public 成员函数

virtual int identify () const =0
 
virtual float similarity1V1ByFace (const dface::Mat &face1, const dface::Mat &face2) const =0
 
virtual float diff1V1ByFace (const dface::Mat &face1, const dface::Mat &face2) const =0
 
virtual void extractFaceFeatureByFace (const dface::Mat &face, std::vector< float > &out_features) const =0
 
virtual float similarityByFeature (const std::vector< float > &feature_1, const std::vector< float > &feature_2) const =0
 
virtual void SetNumThreads (int numThreads)=0
 
virtual void SetMinFace (int minSize)=0
 
virtual int GetNumThreads () const =0
 

详细描述

DFace人脸识别(特征提取)API抽象层(DFaceRecognize)

成员函数说明

virtual float dface::DfaceRecognize::diff1V1ByFace ( const dface::Mat face1,
const dface::Mat face2 
) const
pure virtual

比较2个人脸距离(1:1)

参数
face1第1个人脸dface::Mat数据(已被检测和裁剪的人脸,参考DfaceD::cropFace), 以dface::Mat输入(RGB格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
face2第2个人脸dface::Mat数据(已被检测和裁剪的人脸,参考DfaceD::cropFace), 以dface::Mat输入(BGR格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
返回
返回两个人脸的特征差异值
注解
(差异值范围(0.0~1.0), 值越大差异越小)
virtual void dface::DfaceRecognize::extractFaceFeatureByFace ( const dface::Mat face,
std::vector< float > &  out_features 
) const
pure virtual

抽取人脸特征(用于比对识别)

参数
face第1个人脸dface::Mat数据(已被检测和裁剪的人脸,参考DfaceD::cropFace), 以dface::Mat输入(RGB格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
out_features返回人脸特征(512个float浮点数,实时模式则返回128个float浮点数)
返回
参照 res_features
注解
()
virtual int dface::DfaceRecognize::GetNumThreads ( ) const
pure virtual

获得当前通道并行线程数量

返回
返回并行线程数量
virtual void dface::DfaceRecognize::SetMinFace ( int  minSize)
pure virtual

设置人脸识别最小人脸尺寸(minSize * minSize)

参数
minSize最小人脸
virtual void dface::DfaceRecognize::SetNumThreads ( int  numThreads)
pure virtual

调整并行线程数量,可根据目标机器cpu内核数手动调整

参数
numThreads并行线程数量
注解
(默认单线程)
virtual float dface::DfaceRecognize::similarity1V1ByFace ( const dface::Mat face1,
const dface::Mat face2 
) const
pure virtual

比较2个人脸相似度(1:1)

参数
face1第1个人脸dface::Mat数据(已被检测和裁剪的人脸,参考DfaceD::cropFace), 以dface::Mat输入(RGB格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
face2第2个人脸dface::Mat数据(已被检测和裁剪的人脸,参考DfaceD::cropFace), 以dface::Mat输入(BGR格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
返回
返回相似度
注解
(相似度范围(0.0~1.0),值越大越相似,一般大于0.64表示同一个人)
virtual float dface::DfaceRecognize::similarityByFeature ( const std::vector< float > &  feature_1,
const std::vector< float > &  feature_2 
) const
pure virtual

根据两个人脸特征,比对相似度

参数
feature_1第一个特征数组
feature_2第二个特征数组
返回
返回相似度,一般大于0.64表示同一个人
注解
(相似度范围(0.0~1.0),值越大越相似,一般大于0.64表示同一个人)

该类的文档由以下文件生成: