DFace SDK  1.8.5
dface::DfaceDetect类 参考abstract

DFace人脸检测API抽象层(DFaceDetect) 更多...

#include <dface_detect.h>

Public 成员函数

virtual int identify () const =0
 
virtual void detection (const dface::Mat &img, std::vector< dface::Bbox > &out_bboxs, bool square=true) const =0
 
virtual void detectionMaxFace (const dface::Mat &img, std::vector< dface::Bbox > &out_bboxs, bool square=true) const =0
 
virtual void detectionLimited (const dface::Mat &img, std::vector< dface::Bbox > &out_bboxs)=0
 
virtual void alignFace (const dface::Mat &face, dface::Mat &out_face) const =0
 
virtual void detectionMaxFaceAndCrop (const dface::Mat &img, dface::Mat &out_face, std::vector< dface::Bbox > &out_bboxs) const =0
 
virtual void detectionAndCrop (const dface::Mat &img, std::vector< dface::Mat > &out_faces, std::vector< dface::Bbox > &out_bboxs) const =0
 
virtual void cropFace (const dface::Mat &img, const dface::Rect &rect, dface::Mat &out_face) const =0
 
virtual void cropFace (const dface::Mat &img, const dface::Bbox &bbox, dface::Mat &out_face) const =0
 
virtual void predictBlur (const dface::Mat &img, const std::vector< dface::Bbox > &in_bboxs, std::vector< double > &out_blur)=0
 
virtual void predictLight (const dface::Mat &img, const std::vector< dface::Bbox > &in_bboxs, std::vector< int > &out_light)=0
 
virtual void SetNumThreads (int numThreads)=0
 
virtual void SetTimeCount (int timeCount)=0
 
virtual void SetMinFace (int minSize)=0
 
virtual int GetNumThreads () const =0
 

详细描述

DFace人脸检测API抽象层(DFaceDetect)

成员函数说明

virtual void dface::DfaceDetect::alignFace ( const dface::Mat face,
dface::Mat out_face 
) const
pure virtual

裁剪对齐人脸

参数
face被裁剪的人脸数据
out_face裁剪对齐输出的人脸(112*112)
返回
参照out_face
注解
(返回人脸 Size(112x112), 一般用于人脸识别通道特征提取和比对输入)
virtual void dface::DfaceDetect::cropFace ( const dface::Mat img,
const dface::Rect &  rect,
dface::Mat out_face 
) const
pure virtual

裁剪人脸矩形框,从原图中把人脸图片数据抠出来

参数
img_图片数据,以dface::Mat输入(RGB格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
转码参考 dface::Mat::from_pixels()函数
rect需要被裁剪的矩形区域
out_face返回的被裁剪人脸数据 return 参照out_face
注解
(被裁减返回的人脸Size依据输入的rect)
virtual void dface::DfaceDetect::cropFace ( const dface::Mat img,
const dface::Bbox bbox,
dface::Mat out_face 
) const
pure virtual

剪切人脸矩形框,从原图中把人脸图片数据抠出来

参数
img_图片数据,以dface::Mat输入(RGB格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
转码参考 dface::Mat::from_pixels()函数
bbox被检测到的人脸边框信息
out_face返回的被剪切人脸数据 return 参照out_face
注解
(被裁减返回的人脸Size依据输入的rect)
virtual void dface::DfaceDetect::detection ( const dface::Mat img,
std::vector< dface::Bbox > &  out_bboxs,
bool  square = true 
) const
pure virtual

检测图片所有的人脸参数,包括边框,五官定位,可信度

参数
img_图片数据,以dface::Mat输入(RGB格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
转码参考 dface::Mat::from_pixels()函数
out_bboxs返回所有人脸边框信息数组
返回
参考out_bboxs
注解
(当未检测到人脸,out_Bbox为空vector)
virtual void dface::DfaceDetect::detectionAndCrop ( const dface::Mat img,
std::vector< dface::Mat > &  out_faces,
std::vector< dface::Bbox > &  out_bboxs 
) const
pure virtual

检测人脸并裁剪对齐

参数
img_图片数据,以dface::Mat输入(RGB格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
转码参考 dface::Mat::from_pixels()函数
out_faces裁剪输出的人脸
out_bboxs对应返回的人脸边框信息
返回
参照out_face out_bboxs
注解
(返回人脸 Size(112x112), 一般用于人脸识别通道的人脸特征提取和人脸比对输入)
virtual void dface::DfaceDetect::detectionLimited ( const dface::Mat img,
std::vector< dface::Bbox > &  out_bboxs 
)
pure virtual

被检测到的人脸数据,高精度调整人脸信息

参数
img_已经被检测到的人脸图片数据(图片只包含一个人脸,且已经被裁剪对齐)
out_bboxs返回高精度人脸边框信息
返回
参考out_bboxs
注解
(当未检测到人脸,finalBbox为空vector)
virtual void dface::DfaceDetect::detectionMaxFace ( const dface::Mat img,
std::vector< dface::Bbox > &  out_bboxs,
bool  square = true 
) const
pure virtual

检测图片的最大人脸参数,包括边框,五官定位,可信度

参数
img_图片数据,以dface::Mat输入(RGB格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
转码参考 dface::Mat::from_pixels()函数
out_bboxs返回人脸边框信息数组(size=1)
返回
参考out_bboxs
注解
(当未检测到人脸,finalBbox为空vector)
virtual void dface::DfaceDetect::detectionMaxFaceAndCrop ( const dface::Mat img,
dface::Mat out_face,
std::vector< dface::Bbox > &  out_bboxs 
) const
pure virtual

检测最大人脸并裁剪对齐

参数
img_图片数据,以dface::Mat输入(RGB格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
转码参考 dface::Mat::from_pixels()函数
out_face裁剪对齐输出的人脸
out_Bboxs对应返回的人脸边框信息
返回
参照out_face out_bboxs
注解
(返回人脸 Size(112x112), 一般用于人脸识别通道的人脸特征提取和人脸比对输入)
virtual int dface::DfaceDetect::GetNumThreads ( ) const
pure virtual

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

返回
返回并行线程数量
virtual void dface::DfaceDetect::predictBlur ( const dface::Mat img,
const std::vector< dface::Bbox > &  in_bboxs,
std::vector< double > &  out_blur 
)
pure virtual

人脸清晰度判断

参数
img_图片数据,以dface::Mat输入(RGB格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
转码参考 dface::Mat::from_pixels()函数
in_bboxs人脸对应的边框, 如果为空,则自动检测人脸边框
out_blur返回的每个人脸清晰度
返回
参考out_blur note (正常人脸清晰度500以上,较模糊的人脸3清晰度在30~300之间)
virtual void dface::DfaceDetect::predictLight ( const dface::Mat img,
const std::vector< dface::Bbox > &  in_bboxs,
std::vector< int > &  out_light 
)
pure virtual

人脸光照质量判断

参数
img_图片数据,以dface::Mat输入(RGB格式,其他格式需转换,例如RGBA,BGR,YUV,MJPG,H264等需要转换成RGB的Mat)
转码参考 dface::Mat::from_pixels()函数
in_bboxs人脸对应的边框,如果为空,则自动检测人脸边框
out_light返回的每个人脸的光照质量指标(0:人脸光照正常,曝光正常 1:人脸光照太黑,曝光太低 2:人脸光照质量太亮,曝光太高)
返回
参考 out_light out_bbox note ()
virtual void dface::DfaceDetect::SetMinFace ( int  minSize)
pure virtual

调整需要被检测的最小人脸尺寸,该值越大,往往检测速度越快,但会漏检小于该尺寸的人脸

参数
minSize最小人脸尺寸
注解
(默认60,可按输入的图片分辨率适当调整,640*480P建议40-60 1280*960P建议100-160)
virtual void dface::DfaceDetect::SetNumThreads ( int  numThreads)
pure virtual

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

参数
numThreads并行线程数量
注解
(默认单线程)
virtual void dface::DfaceDetect::SetTimeCount ( int  timeCount)
pure virtual

保留


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