|
@@ -6,8 +6,8 @@ import cn.com.qmth.examcloud.starters.face.verify.common.JsonHelper;
|
|
|
import cn.com.qmth.examcloud.starters.face.verify.model.FaceResult;
|
|
|
import cn.com.qmth.examcloud.starters.face.verify.model.baidu.BaiduApiHelper;
|
|
|
import cn.com.qmth.examcloud.starters.face.verify.model.faceplus.FacePlusApiHelper;
|
|
|
-import cn.com.qmth.examcloud.starters.face.verify.model.param.FaceApiParam;
|
|
|
import cn.com.qmth.examcloud.starters.face.verify.model.param.FaceApiType;
|
|
|
+import cn.com.qmth.examcloud.starters.face.verify.model.param.FaceParam;
|
|
|
import cn.com.qmth.examcloud.starters.face.verify.model.param.ImageParm;
|
|
|
import cn.com.qmth.examcloud.starters.face.verify.model.param.ImageParmType;
|
|
|
import cn.com.qmth.examcloud.starters.face.verify.service.FaceVerifyService;
|
|
@@ -32,22 +32,22 @@ public class FaceVerifyServiceImpl implements FaceVerifyService {
|
|
|
* 人脸真实性检测
|
|
|
*/
|
|
|
@Override
|
|
|
- public FaceResult faceVerify(FaceApiParam apiParam) {
|
|
|
- if (ArrayUtils.getLength(apiParam.getImages()) < 1) {
|
|
|
+ public FaceResult faceVerify(FaceParam faceParam) {
|
|
|
+ if (ArrayUtils.getLength(faceParam.getImages()) < 1) {
|
|
|
throw new IllegalArgumentException("至少传一个图片参数!");
|
|
|
}
|
|
|
|
|
|
- if (FaceApiType.FACE_PLUS == apiParam.getApiType()) {
|
|
|
+ if (FaceApiType.FACE_PLUS == faceParam.getApiType()) {
|
|
|
throw new IllegalArgumentException("FacePlus暂不支持人脸真实性检测!");
|
|
|
}
|
|
|
|
|
|
- Map<String, String> imageData = this.buildImageParmForBaidu(apiParam.getImages()[0]);
|
|
|
+ Map<String, String> imageData = this.buildImageParmForBaidu(faceParam.getImages()[0]);
|
|
|
imageData.put("face_field", "spoofing");
|
|
|
List<Map<String, String>> images = new ArrayList<>();
|
|
|
images.add(imageData);
|
|
|
String params = new JsonHelper().toJson(images);
|
|
|
|
|
|
- if (FaceApiType.BAIDU_API == apiParam.getApiType()) {
|
|
|
+ if (FaceApiType.BAIDU_API == faceParam.getApiType()) {
|
|
|
return BaiduApiHelper.faceVerify(properties, params);
|
|
|
}
|
|
|
// 默认:百度私有化部署API
|
|
@@ -58,24 +58,24 @@ public class FaceVerifyServiceImpl implements FaceVerifyService {
|
|
|
* 人脸识别
|
|
|
*/
|
|
|
@Override
|
|
|
- public FaceResult faceDetect(FaceApiParam apiParam) {
|
|
|
- if (ArrayUtils.getLength(apiParam.getImages()) < 1) {
|
|
|
+ public FaceResult faceDetect(FaceParam faceParam) {
|
|
|
+ if (ArrayUtils.getLength(faceParam.getImages()) < 1) {
|
|
|
throw new IllegalArgumentException("至少传一个图片参数!");
|
|
|
}
|
|
|
|
|
|
- if (FaceApiType.FACE_PLUS == apiParam.getApiType()) {
|
|
|
+ if (FaceApiType.FACE_PLUS == faceParam.getApiType()) {
|
|
|
Map<String, String> params = new HashMap<>();
|
|
|
- this.buildImageParmForFacePlus(params, apiParam.getImages()[0], null);
|
|
|
+ this.buildImageParmForFacePlus(params, faceParam.getImages()[0], null);
|
|
|
|
|
|
return FacePlusApiHelper.faceDetect(properties, params);
|
|
|
}
|
|
|
|
|
|
- Map<String, String> imageData = this.buildImageParmForBaidu(apiParam.getImages()[0]);
|
|
|
+ Map<String, String> imageData = this.buildImageParmForBaidu(faceParam.getImages()[0]);
|
|
|
imageData.put("liveness_control", "NORMAL");
|
|
|
imageData.put("max_face_num", "2");
|
|
|
String params = new JsonHelper().toJson(imageData);
|
|
|
|
|
|
- if (FaceApiType.BAIDU_API == apiParam.getApiType()) {
|
|
|
+ if (FaceApiType.BAIDU_API == faceParam.getApiType()) {
|
|
|
return BaiduApiHelper.faceDetect(properties, params);
|
|
|
}
|
|
|
// 默认:百度私有化部署API
|
|
@@ -86,32 +86,32 @@ public class FaceVerifyServiceImpl implements FaceVerifyService {
|
|
|
* 人脸比对
|
|
|
*/
|
|
|
@Override
|
|
|
- public FaceResult faceCompare(FaceApiParam apiParam) {
|
|
|
- if (ArrayUtils.getLength(apiParam.getImages()) < 2) {
|
|
|
+ public FaceResult faceCompare(FaceParam faceParam) {
|
|
|
+ if (ArrayUtils.getLength(faceParam.getImages()) < 2) {
|
|
|
throw new IllegalArgumentException("至少传两个图片参数!");
|
|
|
}
|
|
|
|
|
|
- if (FaceApiType.FACE_PLUS == apiParam.getApiType()) {
|
|
|
+ if (FaceApiType.FACE_PLUS == faceParam.getApiType()) {
|
|
|
Map<String, String> params = new HashMap<>();
|
|
|
- this.buildImageParmForFacePlus(params, apiParam.getImages()[0], "1");
|
|
|
- this.buildImageParmForFacePlus(params, apiParam.getImages()[1], "2");
|
|
|
+ this.buildImageParmForFacePlus(params, faceParam.getImages()[0], "1");
|
|
|
+ this.buildImageParmForFacePlus(params, faceParam.getImages()[1], "2");
|
|
|
|
|
|
return FacePlusApiHelper.faceCompare(properties, params);
|
|
|
}
|
|
|
|
|
|
List<Map<String, String>> images = new ArrayList<>();
|
|
|
- images.add(this.buildImageParmForBaidu(apiParam.getImages()[0]));
|
|
|
- images.add(this.buildImageParmForBaidu(apiParam.getImages()[1]));
|
|
|
+ images.add(this.buildImageParmForBaidu(faceParam.getImages()[0]));
|
|
|
+ images.add(this.buildImageParmForBaidu(faceParam.getImages()[1]));
|
|
|
String params = new JsonHelper().toJson(images);
|
|
|
|
|
|
Double expectFaceCompareScore;
|
|
|
- if (apiParam.getExpectFaceCompareScore() != null) {
|
|
|
- expectFaceCompareScore = apiParam.getExpectFaceCompareScore();
|
|
|
+ if (faceParam.getExpectFaceCompareScore() != null) {
|
|
|
+ expectFaceCompareScore = faceParam.getExpectFaceCompareScore();
|
|
|
} else {
|
|
|
expectFaceCompareScore = properties.getBaiduExpectFaceCompareScore();
|
|
|
}
|
|
|
|
|
|
- if (FaceApiType.BAIDU_API == apiParam.getApiType()) {
|
|
|
+ if (FaceApiType.BAIDU_API == faceParam.getApiType()) {
|
|
|
return BaiduApiHelper.faceCompare(properties, params, expectFaceCompareScore);
|
|
|
}
|
|
|
// 默认:百度私有化部署API
|