Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -628,10 +628,10 @@ SmartJavaAI是专为JAVA 开发者打造的一个功能丰富、开箱即用的
支持功能:
- 支持识别7种表情:neutral(中性)、happy(高兴)、sad(悲伤)、surprise(惊讶)、fear(恐惧)、disgust(厌恶)、anger(愤怒)

| 模型名称 | 引擎 | 模型简介 | 模型开源网站 |
|---------|-----------|--------------------------|----------------------------------------------------------------------|
| DensNet121 | PyTorch| FaceLib的densnet121表情识别模型 | [Github](https://github.com/sajjjadayobi/FaceLib/) |
| FrEmotion| OnnxRuntime | FaceRecognition-LivenessDetection-Javascript | [Github](https://github.com/Faceplugin-ltd/FaceRecognition-LivenessDetection-Javascript) |
| 模型名称 | 引擎 | 模型简介 | 模型开源网站 |
|-------------|-----------|----------------------------------------------|----------------------------------------------------------------------|
| DenseNet121 | PyTorch| FaceLib的densenet121表情识别模型 | [Github](https://github.com/sajjjadayobi/FaceLib/) |
| FrEmotion | OnnxRuntime | FaceRecognition-LivenessDetection-Javascript | [Github](https://github.com/Faceplugin-ltd/FaceRecognition-LivenessDetection-Javascript) |


**人脸属性识别模型(GenderDetection、AgeDetection、EyeClosenessDetection、FacePoseEstimation)**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
package cn.smartjavaai.face.config;

import cn.smartjavaai.common.config.ModelConfig;
import cn.smartjavaai.common.enums.DeviceEnum;
import cn.smartjavaai.face.enums.ExpressionModelEnum;
import cn.smartjavaai.face.model.facedect.FaceDetModel;
import cn.smartjavaai.face.model.facerec.FaceRecModel;
import lombok.Data;

import java.util.HashMap;
import java.util.Map;

/**
* @author dwj
* @date 2025/7/1
Expand All @@ -20,7 +15,7 @@ public class FaceExpressionConfig extends ModelConfig {
/**
* 模型枚举
*/
private ExpressionModelEnum modelEnum = ExpressionModelEnum.DensNet121;
private ExpressionModelEnum modelEnum = ExpressionModelEnum.DenseNet121;

/**
* 模型路径
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
*/
public enum ExpressionModelEnum {

DensNet121("DensNet121"),
DenseNet121("DenseNet121"),

FrEmotion("FrEmotion");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@
import cn.smartjavaai.face.exception.FaceException;
import cn.smartjavaai.face.model.expression.CommonEmotionModel;
import cn.smartjavaai.face.model.expression.ExpressionModel;
import cn.smartjavaai.face.model.liveness.MiniVisionLivenessModel;
import cn.smartjavaai.face.model.liveness.Seetaface6LivenessModel;
import lombok.extern.slf4j.Slf4j;

import java.util.Map;
Expand Down Expand Up @@ -97,7 +95,7 @@ private ExpressionModel createFaceModel(FaceExpressionConfig config) {

// 初始化默认算法
static {
registerModel(ExpressionModelEnum.DensNet121, CommonEmotionModel.class);
registerModel(ExpressionModelEnum.DenseNet121, CommonEmotionModel.class);
registerModel(ExpressionModelEnum.FrEmotion, CommonEmotionModel.class);
log.debug("缓存目录:{}", Config.getCachePath());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,13 @@
import ai.djl.Device;
import ai.djl.modality.Classifications;
import ai.djl.modality.cv.Image;
import ai.djl.modality.cv.output.DetectedObjects;
import ai.djl.repository.zoo.Criteria;
import ai.djl.training.util.ProgressBar;
import cn.smartjavaai.common.enums.DeviceEnum;
import cn.smartjavaai.face.config.FaceExpressionConfig;
import cn.smartjavaai.face.enums.ExpressionModelEnum;
import cn.smartjavaai.face.model.expression.translator.DenseNetEmotionTranslator;
import cn.smartjavaai.face.model.expression.translator.FrEmotionTranslator;
import org.apache.commons.lang3.StringUtils;

import java.nio.file.Paths;
import java.util.Objects;
Expand All @@ -29,7 +27,7 @@ public static Criteria<Image, Classifications> createCriteria(FaceExpressionConf
device = config.getDevice() == DeviceEnum.CPU ? Device.cpu() : Device.gpu(config.getGpuId());
}
Criteria<Image, Classifications> criteria = null;
if(config.getModelEnum() == ExpressionModelEnum.DensNet121){
if(config.getModelEnum() == ExpressionModelEnum.DenseNet121){
//开源项目地址:https://github.com/sajjjadayobi/FaceLib
//初始化 检测Criteria
criteria =
Expand Down