id-scanner-lib
Version:
Browser-based ID card, QR code, and face recognition scanner with liveness detection
57 lines (56 loc) • 1.75 kB
TypeScript
/**
* @file 人脸模块入口
* @description 提供人脸检测、活体检测和人脸比对功能的模块入口
* @module modules/face
*/
import { BaseModule } from '../../core/base-module';
import { FaceDetectionResult, FaceComparisonResult, FaceModuleOptions } from './types';
/**
* 人脸模块
* 提供人脸检测、活体检测和人脸比对功能
*/
export declare class FaceModule extends BaseModule {
/** 模块名称 */
readonly name: string;
/** 模块配置 */
private options;
/** 最后一次检测结果 */
private lastDetectionResult?;
/**
* 构造函数
* @param options 模块配置选项
*/
constructor(options?: FaceModuleOptions);
/**
* 初始化模块
*/
initialize(): Promise<void>;
/**
* 检测图像中的人脸
* @param image 图像源
* @returns 人脸检测结果
*/
detectFace(image: ImageData | HTMLImageElement | HTMLCanvasElement): Promise<FaceDetectionResult | undefined>;
/**
* 进行活体检测
* @param image 图像源
* @returns 活体检测结果
*/
detectLiveness(image: ImageData | HTMLImageElement | HTMLCanvasElement): Promise<boolean>;
/**
* 比对两个人脸
* @param face1 第一个人脸图像
* @param face2 第二个人脸图像
* @returns 人脸比对结果
*/
compareFaces(face1: ImageData | HTMLImageElement | HTMLCanvasElement, face2: ImageData | HTMLImageElement | HTMLCanvasElement): Promise<FaceComparisonResult>;
/**
* 获取最后一次检测结果
*/
getLastDetectionResult(): FaceDetectionResult | undefined;
/**
* 释放模块资源
*/
dispose(): Promise<void>;
}
export * from './types';