2025-05-09 20:10:04 +08:00
|
|
|
package cn.smartjavaai.face.config;
|
2025-04-13 20:33:15 +08:00
|
|
|
|
2025-07-28 12:04:02 +08:00
|
|
|
import cn.smartjavaai.common.config.ModelConfig;
|
2025-04-13 20:33:15 +08:00
|
|
|
import cn.smartjavaai.common.enums.DeviceEnum;
|
2025-05-09 20:10:04 +08:00
|
|
|
import cn.smartjavaai.face.constant.FaceDetectConstant;
|
2025-07-07 08:45:08 +08:00
|
|
|
import cn.smartjavaai.face.enums.FaceRecModelEnum;
|
|
|
|
|
import cn.smartjavaai.face.model.facedect.FaceDetModel;
|
|
|
|
|
import cn.smartjavaai.face.model.facerec.FaceRecModel;
|
2025-06-09 12:12:10 +08:00
|
|
|
import cn.smartjavaai.face.vector.config.VectorDBConfig;
|
2025-04-13 20:33:15 +08:00
|
|
|
import lombok.Data;
|
|
|
|
|
|
2025-07-07 08:45:08 +08:00
|
|
|
import java.util.HashMap;
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
2025-04-13 20:33:15 +08:00
|
|
|
/**
|
2025-05-09 20:10:04 +08:00
|
|
|
* 人脸检测识别模型配置
|
2025-04-13 20:33:15 +08:00
|
|
|
* @author dwj
|
|
|
|
|
*/
|
|
|
|
|
@Data
|
2025-07-28 12:04:02 +08:00
|
|
|
public class FaceRecConfig extends ModelConfig {
|
2025-04-13 20:33:15 +08:00
|
|
|
|
|
|
|
|
/**
|
2025-05-26 16:24:24 +08:00
|
|
|
* 人脸模型枚举
|
2025-04-13 20:33:15 +08:00
|
|
|
*/
|
2025-07-07 08:45:08 +08:00
|
|
|
private FaceRecModelEnum modelEnum;
|
2025-04-13 20:33:15 +08:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 模型路径
|
|
|
|
|
*/
|
|
|
|
|
private String modelPath;
|
|
|
|
|
|
2025-07-07 08:45:08 +08:00
|
|
|
|
2025-04-19 19:48:12 +08:00
|
|
|
/**
|
2025-07-07 08:45:08 +08:00
|
|
|
* 向量数据库配置
|
2025-04-19 19:48:12 +08:00
|
|
|
*/
|
2025-07-07 08:45:08 +08:00
|
|
|
private VectorDBConfig vectorDBConfig;
|
2025-04-19 19:48:12 +08:00
|
|
|
|
2025-05-17 11:19:46 +08:00
|
|
|
/**
|
2025-07-07 08:45:08 +08:00
|
|
|
* 是否自动加载人脸到内存
|
2025-05-17 11:19:46 +08:00
|
|
|
*/
|
2025-07-07 08:45:08 +08:00
|
|
|
private boolean isAutoLoadFace = true;
|
2025-05-17 11:19:46 +08:00
|
|
|
|
2025-06-09 12:12:10 +08:00
|
|
|
|
|
|
|
|
/**
|
2025-07-07 08:45:08 +08:00
|
|
|
* 是否裁剪人脸
|
2025-06-09 12:12:10 +08:00
|
|
|
*/
|
2025-07-07 08:45:08 +08:00
|
|
|
private boolean cropFace = true;
|
2025-06-09 12:12:10 +08:00
|
|
|
|
|
|
|
|
/**
|
2025-07-07 08:45:08 +08:00
|
|
|
* 是否对齐人脸
|
2025-06-09 12:12:10 +08:00
|
|
|
*/
|
2025-07-07 08:45:08 +08:00
|
|
|
private boolean align = false;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 人脸检测模型
|
|
|
|
|
*/
|
|
|
|
|
private FaceDetModel detectModel;
|
|
|
|
|
|
2025-06-09 12:12:10 +08:00
|
|
|
|
2025-07-07 08:45:08 +08:00
|
|
|
public FaceRecConfig() {
|
2025-04-28 16:13:34 +08:00
|
|
|
}
|
2025-04-13 20:33:15 +08:00
|
|
|
|
2025-07-07 08:45:08 +08:00
|
|
|
public FaceRecConfig(FaceRecModelEnum modelEnum) {
|
2025-04-28 16:13:34 +08:00
|
|
|
this.modelEnum = modelEnum;
|
|
|
|
|
}
|
2025-04-13 20:33:15 +08:00
|
|
|
|
2025-07-07 08:45:08 +08:00
|
|
|
public FaceRecConfig(FaceRecModelEnum modelEnum, String modelPath) {
|
2025-04-28 16:13:34 +08:00
|
|
|
this.modelEnum = modelEnum;
|
|
|
|
|
this.modelPath = modelPath;
|
|
|
|
|
}
|
2025-07-07 08:45:08 +08:00
|
|
|
|
|
|
|
|
|
2025-04-13 20:33:15 +08:00
|
|
|
}
|