MomoCVCenter 接口文档-iOS

MomoCVCenter模块是用于对MMCV算法模块进行版本控制,资源管理,预处理操作的。所有MMCV 检测器的构造,都需要调用MCCDetectorsCenter来完成。

1. 先获取单例

+ (instancetype)sharedInstance;

2. 设置APPID

AppID 通过官网入口获取

- (void)configAppId:(NSString *)appId;

3. 提前获取配置环境

该方法推荐在程序启动时执行,异步回调是否准备好了,YES时才可准备,获取检测器

typedef void (^MCCConfigEnvironmentBlock)(BOOL result, NSString * __nullable errorMsg);

- (void)prepareManagerEnvironment:(MCCConfigEnvironmentBlock)resultBlock;

4. 提前准备Detectors资源

传参检测器类型枚举,来准备算法检测器。

  • 检测器类型枚举
typedef NS_ENUM(NSUInteger, MCCDetectorType) {
    MCCFaceDetectorTypeNone,
    MCCFaceDetectorTypeFace,          // 人脸检测
    MCCFaceDetectorTypeObject,           // 手势检测
    MCCFaceDetectorTypeMomentImageSegmenter,   // 抠图检测器
    MCCFaceDetectorTypeBareness,         // 光膀子检测器
    MCCFaceDetectorTypeBodyJoint,        // 人体关节点
    MCCFaceDetectorTypeExpress,
    MCCFaceDetectorType87,               // 87 点人脸检测
    MCCFaceDetectorTypeFacerigV2,        // FacerigV2检测器
    MCCFaceDetectorTypeHandGesture,       // 新版手势检测
    MCCFaceDetectorTypeNewFace       // 新版人脸检测
};
  • 准备检测器,首次构造MMCV检测器前,需先调用此方法准备,再次构造同一类型检测器,无需再次调用。
typedef void (^MCCDetectorsPrepareBlock)(NSDictionary <NSNumber *,NSNumber *>* resultDic);

/**
 提前准备Detectors资源
 @param detectorTypes 探测器枚举数组。例:@[@(MCCFaceDetectorTypeFace), @(MCCFaceDetectorTypeObject)]
 @param MCCDetectorsPrepareBlock 异步结果回调。例:@{@(MCCFaceDetectorTypeFace):@(YES), @(MCCFaceDetectorTypeObject):@(YES)}
 */
- (void)prepareDetectors:(NSArray <NSNumber *>*)detectorTypes complete:(MCCDetectorsPrepareBlock)MCCDetectorsPrepareBlock;
  • 判断检测器环境是否已准备好,入参为检测器类型
- (BOOL)isDetectorEnvironmentPrepared:(MCCDetectorType)detectorType;

5. 构造算法检测器

建议构造前先调用prepareDetectors:complete:方法

5.1. 同步构造检测器

调用同步构造某类型检测器前,需先调用 prepareDetectors:complete:,得到Yes回调后,再调用同步方法构造。否则可能构造失败

- ( NSObject * _Nullable )syncMakeFaceDetector:(MCCDetectorType)detectorType;

5.2. 异步构造检测器

异步构造方法内部相当于,先调用prepareDetectors:complete: 后调用 syncMakeFaceDetector:。若在异步构造检测器前,已经调用过prepareDetectors:complete:。可减少异步获取的时间。

- (void)asyncMakeFaceDetector:(MCCDetectorType)detectorType complete:(MCCDetectorMakeBlock)completed;
@Copyright © cosmos 2019 all right reserved,powered by Gitbook修订时间: 2019-05-31 10:17:01

results matching ""

    No results matching ""