001package net.gdface.mtfsdk; 002 003/** 004 * MTFSDK android/arm平台参数配置接口<br> 005 * SDK初始化时以SPI(Service Provider Interface)机制加载应用层提供的 006 * {@link MtfAndroidConfigProvider}实例,并通过接口实例获取的参数初始化SDK<br> 007 * 参见 {@link MtfAndroidArmBridge}的{@code config}字段.<br> 008 * NOTE:一般情况下无需修改SDK初始化参数. 009 * @author guyadong 010 * 011 */ 012public interface MtfAndroidConfigProvider { 013 /** 014 * 人脸检测数据的(double)数组长度 015 */ 016 public static final int FDDATA_LEN = 21; 017 /** 018 * 人脸检测数据的(byte)数组长度 019 */ 020 public static final int FDDATA_BYTES=FDDATA_LEN*(Double.SIZE/8); 021 /** 022 * 最大检测人脸数目 023 */ 024 public static final int MAX_FACE_COUNT = 3; 025 /** 026 * 人脸特征数据数组(double[])长度 027 */ 028 public static final int FEATURE_LEN = 128; 029 /** 030 * 人脸特征数据数组(byte[])长度 031 */ 032 public static final int FEATURE_BYTES=FEATURE_LEN*(Float.SIZE/8); 033 034 /** 035 * 默认的人脸检测并发线程数 036 */ 037 public static final int DEFAULT_DETECT_THREAD_NUMBER=1; 038 /** 039 * 默认最小人脸检测(宽/高)尺寸(像素) 040 */ 041 public static final int DEFAULT_DETECT_MIN_FACE_SIZE=60; 042 043 /** 044 * 指定检测模块并发线程数,返回0使用默认值 045 * @return 046 */ 047 int getDetectThreadNumber(); 048 /** 049 * 指定最小人脸检测(宽/高)尺寸(像素),返回0使用默认值 050 * @return 051 */ 052 int getMinFaceSize(); 053 /** 054 * 指定最大调用并发线程数,返回0使用默认值(CPU核数) 055 * @return 056 */ 057 int getConcurrency(); 058 /** 059 * 指定是否需要活体检测功能,<br> 060 * 返回{@code false}则关闭活体检测功能,SDK不会初始化活体检测模块,活体检测模块将不可用. 061 * 活体检测模块需要占用较多内存资源,在不需要使用该功能的情况,关闭该功能可以减少内存资源占用.<br> 062 * 默认提供的参数为{@code true},参见{@link DefaultMtfAndroidConfig#needLive()} 063 * @return 064 */ 065 boolean needLive(); 066 067}