From b8d594e18dd14fc7072355f557f67c4a31daf77a Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Sun, 12 Sep 2021 00:05:06 -0400 Subject: [PATCH] parametrize face config --- CHANGELOG.md | 2 ++ src/config.ts | 68 +++++++++++++++++++++++++++++---------------------- 2 files changed, 41 insertions(+), 29 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 15ae2a80..d8046679 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,8 @@ ### **HEAD -> main** 2021/09/11 mandic00@live.com +- redefine config and result interfaces +- fix usge of string enums - start using partial definitions - implement event emitters - fix iife loader diff --git a/src/config.ts b/src/config.ts index 249d1905..0f3644c8 100644 --- a/src/config.ts +++ b/src/config.ts @@ -8,6 +8,40 @@ * @typedef Config */ +export interface FaceDetectorConfig { + modelPath: string, + rotation: boolean, + maxDetected: number, + skipFrames: number, + minConfidence: number, + iouThreshold: number, + return: boolean, +} + +export interface FaceMeshConfig { + enabled: boolean, + modelPath: string, +} + +export interface FaceIrisConfig { + enabled: boolean, + modelPath: string, +} + +export interface FaceDescriptionConfig { + enabled: boolean, + modelPath: string, + skipFrames: number, + minConfidence: number, +} + +export interface FaceEmotionConfig { + enabled: boolean, + minConfidence: number, + skipFrames: number, + modelPath: string, +} + /** Controlls and configures all face-specific options: * - face detection, face mesh detection, age, gender, emotion detection and face description * Parameters: @@ -21,35 +55,11 @@ */ export interface FaceConfig { enabled: boolean, - detector: { - modelPath?: string, - rotation?: boolean, - maxDetected?: number, - skipFrames?: number, - minConfidence?: number, - iouThreshold?: number, - return?: boolean, - }, - mesh: { - enabled?: boolean, - modelPath?: string, - }, - iris: { - enabled?: boolean, - modelPath?: string, - }, - description: { - enabled?: boolean, - modelPath?: string, - skipFrames?: number, - minConfidence?: number, - }, - emotion: { - enabled?: boolean, - minConfidence?: number, - skipFrames?: number, - modelPath?: string, - }, + detector: Partial, + mesh: Partial, + iris: Partial, + description: Partial, + emotion: Partial, } /** Controlls and configures all body detection specific options