类介绍

DFActionLivenessDetector

DFActionLivenessDetector 用于构造对输入图像数据进行检测的对象。

初始化

/**
 *  初始化方法
 *
 *  @param dDurationPerModel    每个动作模块的超时时间 0代表无超时
 *  @param strBundlePath        资源文件路径
 *  @param strLicensePath       授权文件路径
 *
 *  @return detector instance
 */
- (instancetype)initWithDuration:(double)dDurationPerModel
             resourcesBundlePath:(NSString *)strBundlePath
                     licensePath:(NSString *)strLicensePath;

参数设置

/**
 *  设置参数
 *
 *  @param delegate     回调代理
 *  @param queue        回调队列
 *  @param arrDetection 动作序列, 例: @[@(LIVE_HOLDSTILL), @(LIVE_BLINK), @(LIVE_MOUTH), @(LIVE_NOD), @(LIVE_YAW)], 参考 DFLivenessEnumType.h
 *  @param arrThreshold 阈值, 例: @[@(0.7), @(0.7), @(0.7), @(0.7), @(0.7)]
 */
- (void)setDelegate:(id <DFActionLivenessDetectorDelegate>)delegate
      callBackQueue:(dispatch_queue_t)queue
  detectionSequence:(NSArray *)arrDetection
 detectionThreshold:(NSArray *)arrThreshold;
/**
 设置参数

 @param region 人脸检测区域
 @param faceMaxSizeRatio 待检测人脸大小占相机返回buffer图片的最大比例
 */
- (void)setFaceDetectedRegion:(CGRect)region faceMaxSizeRatio:(float)faceMaxSizeRatio;
/**
 *
 *  @param iOutputType 输出类型, 目前仅支持 LIVE_OUTPUT_MULTI_IMAGE
 */
- (void)setOutputType:(LivefaceOutputType)iOutputType;

检测

/**
 *  持续检测
 *
 *  @param sampleBuffer    相机回调sampleBuffer
 *  @param faceOrientation 人脸方向
 */
- (void)trackAndDetectWithCMSampleBuffer:(CMSampleBufferRef)sampleBuffer
                         faceOrientation:(LivefaceOrientation)faceOrientation;

开始检测

/**
 *  开始检测
 */
- (void)startDetection;

取消检测

/**
 *  取消检测
 */
- (void)cancelDetection;

版本号

/**
 *  获取版本号
 *
 *  @return SDK Version
 */
+ (NSString *)getSDKVersion;

DFActionLivenessDetectorDelegate

检测回调

/**
 *  动作活体检测回调
 */
@protocol DFActionLivenessDetectorDelegate <NSObject>

@optional

/**
 *  每个动作开始检测的回调
 *
 *  @param iDetectionType  当前检测动作类型
 *  @param iDetectionIndex 当前检测动作index.
 */
- (void)livenessDidStartDetectionWithDetectionType:(LivefaceDetectionType)iDetectionType
                                    detectionIndex:(int)iDetectionIndex;

/**
 *  每帧回调, 当设置超时时间后返回当前动作已经检测的时长
 *
 *  @param dPast             Current module detects elapsed time
 *  @param dDurationPerModel Current module detection total time
 */
- (void)livenessTimeDidPast:(double)dPast
           durationPerModel:(double)dDurationPerModel;

/** 帧率 */
- (void)videoFrameRate:(int)rate;

/**
 每帧回调

 @param faceCount 人脸数
 @param faceRectStatus 人脸状态
 @param iDetectionType  当前检测动作类型
 */
- (void)livenessDectectingFaceCount:(int)faceCount faceRectStatus:(LivefaceRectStatus)faceRectStatus detectionType:(LivefaceDetectionType)iDetectionType;

@required

动作活体检测成功
/**
 *  成功回调
 *
 *  @param data       检测成功后的加密数据
 *  @param arrDFImage 图片 参考 DFImage.h
 *  @param dfVideoData 视频data(暂为nil)
 */
- (void)livenessDidSuccessfulGetData:(nullable NSData *)data
                            dfImages:(nullable NSArray *)arrDFImage
                         dfVideoData:(nullable NSData *)dfVideoData;
动作活体检测失败
/**
 *  失败回调
 *
 *  @param iErrorType      失败类型
 *  @param iDetectionType  动作类型
 *  @param iDetectionIndex 动作index
 *  @param data            加密文件(nil)
 *  @param arrDFImage      图片 参考DFImage.h
 *  @param dfVideoData     视频data(暂为nil)
 */
- (void)livenessDidFailWithErrorType:(LivefaceErrorType)iErrorType
                       detectionType:(LivefaceDetectionType)iDetectionType
                      detectionIndex:(int)iDetectionIndex
                                data:(nullable NSData *)data
                            dfImages:(nullable NSArray *)arrDFImage
                         dfVideoData:(nullable NSData *)dfVideoData;
动作活体取消回调
/**
 *  取消回调
 *
 *  @param iDetectionType  动作类型
 *  @param iDetectionIndex 动作index
 */
- (void)livenessDidCancelWithDetectionType:(LivefaceDetectionType)iDetectionType
                            detectionIndex:(int)iDetectionIndex;

LivefaceErrorType

错误类型枚举

类型 说明
LIVENESS_INIT_FAILD 初始化失败
LIVENESS_CAMERA_ERROR 相机权限错误
LIVENESS_FACE_CHANGED 人脸丢失或变更
LIVENESS_TIMEOUT 动作超时
LIVENESS_WILL_RESIGN_ACTIVE 应用进入后台
LIVENESS_INTERNAL_ERROR 内部错误
LIVENESS_BUNDLEID_ERROR 包名错误
LIVENESS_AUTH_EXPIRE 授权文件错误
LIVENESS_SEQUENCE_ERROR 动作序列错误
LIVENESS_FACE_MORE_THAN_ONE_ERROR 多人脸错误

LivefaceDetectionType

检测动作类型枚举

类型 说明
LIVE_BLINK 眨眼
LIVE_MOUTH 张嘴
LIVE_YAW 摇头
LIVE_NOD 点头
LIVE_HOLDSTILL 静默

LivefaceOrientation

人脸方向枚举

类型 说明
LIVE_FACE_UP
LIVE_FACE_LEFT
LIVE_FACE_DOWN
LIVE_FACE_RIGHT

LivefaceOutputType

输出类型枚举

类型 说明
LIVE_OUTPUT_MULTI_IMAGE 多图

LivefaceRectStatus

人脸状态枚举

类型 说明
LivefaceRectStatusNone
LivefaceRectStatusSuccess 成功
LivefaceRectStatusLarge 过大

results matching ""

    No results matching ""