diff --git a/api-mapper/src/main/java/com/heyu/api/data/dto/BaseRequest.java b/api-mapper/src/main/java/com/heyu/api/data/dto/BaseReq.java similarity index 81% rename from api-mapper/src/main/java/com/heyu/api/data/dto/BaseRequest.java rename to api-mapper/src/main/java/com/heyu/api/data/dto/BaseReq.java index eb4b034..aa4e95f 100644 --- a/api-mapper/src/main/java/com/heyu/api/data/dto/BaseRequest.java +++ b/api-mapper/src/main/java/com/heyu/api/data/dto/BaseReq.java @@ -3,7 +3,7 @@ package com.heyu.api.data.dto; import lombok.Data; @Data -public class BaseRequest { +public class BaseReq { /** * token */ diff --git a/api-third/src/main/java/com/heyu/api/alibaba/handle/facebody/ADetectVideoLivingFaceHandle.java b/api-third/src/main/java/com/heyu/api/alibaba/handle/facebody/ADetectVideoLivingFaceHandle.java index 4aad412..30cec52 100644 --- a/api-third/src/main/java/com/heyu/api/alibaba/handle/facebody/ADetectVideoLivingFaceHandle.java +++ b/api-third/src/main/java/com/heyu/api/alibaba/handle/facebody/ADetectVideoLivingFaceHandle.java @@ -18,6 +18,8 @@ import org.springframework.stereotype.Component; /** * https://next.api.aliyun.com/api/facebody/2019-12-30/DetectVideoLivingFace?tab=DOC&lang=JAVA + * + * * 视频活体检测 */ @Component @@ -36,11 +38,15 @@ public class ADetectVideoLivingFaceHandle extends AlibabaBaseHandle resps = new ArrayList<>(); + + ADetectVideoLivingFaceRequest request = new ADetectVideoLivingFaceRequest(); + request.setImageUrl(req.getVideoURL()); + request.setImageBase64(req.getVideoBase64()); + request.setVideoSuffix(req.getVideoSuffix()); + + + ApiR aR = aDetectVideoLivingFaceHandle.handle(request); + if (aR.isSuccess() && isSuccessStatusCode(aR.getData().getStatusCode())) { + List elements = aR.getData().getBody().getData().getElements(); + for (DetectVideoLivingFaceResponseBody.DetectVideoLivingFaceResponseBodyDataElements element : elements) { + + DetectVideoLivingFaceResp detectVideoLivingFaceResp = new DetectVideoLivingFaceResp(); + detectVideoLivingFaceResp.setFaceConfidence(element.getFaceConfidence()); + detectVideoLivingFaceResp.setLiveConfidence(element.getLiveConfidence()); + + resps.add(detectVideoLivingFaceResp); + + } + return R.ok().setData(resps); + } + + return R.error(); + + } + + +} diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/CommonReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/CommonReq.java index 3da8d21..a3cddb5 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/CommonReq.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/CommonReq.java @@ -1,12 +1,12 @@ package com.heyu.api.request; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; @Data -public class CommonReq extends BaseRequest { +public class CommonReq extends BaseReq { /** * 图片的url */ diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/car/RecognizeDriverLicenseReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/car/RecognizeDriverLicenseReq.java index 613b13c..cf1a241 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/car/RecognizeDriverLicenseReq.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/car/RecognizeDriverLicenseReq.java @@ -1,6 +1,6 @@ package com.heyu.api.request.car; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; @@ -16,7 +16,7 @@ import lombok.Data; * */ @Data -public class RecognizeDriverLicenseReq extends BaseRequest { +public class RecognizeDriverLicenseReq extends BaseReq { diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/card/BusinessLicenseRecognizeRequest.java b/api-web/api-interface/src/main/java/com/heyu/api/request/card/BusinessLicenseRecognizeRequest.java index 6bc2928..78d51a4 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/card/BusinessLicenseRecognizeRequest.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/card/BusinessLicenseRecognizeRequest.java @@ -1,11 +1,11 @@ package com.heyu.api.request.card; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; @Data -public class BusinessLicenseRecognizeRequest extends BaseRequest { +public class BusinessLicenseRecognizeRequest extends BaseReq { diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/card/CharacterRecognizeRequest.java b/api-web/api-interface/src/main/java/com/heyu/api/request/card/CharacterRecognizeRequest.java index 10015b8..08a5a51 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/card/CharacterRecognizeRequest.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/card/CharacterRecognizeRequest.java @@ -1,7 +1,7 @@ package com.heyu.api.request.card; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; /*** @@ -12,7 +12,7 @@ import lombok.Data; * */ @Data -public class CharacterRecognizeRequest extends BaseRequest { +public class CharacterRecognizeRequest extends BaseReq { /** diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/certificate/ApiIdentityCardRequest.java b/api-web/api-interface/src/main/java/com/heyu/api/request/certificate/ApiIdentityCardRequest.java index 51894e9..8e8fb70 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/certificate/ApiIdentityCardRequest.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/certificate/ApiIdentityCardRequest.java @@ -1,11 +1,11 @@ package com.heyu.api.request.certificate; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; @Data -public class ApiIdentityCardRequest extends BaseRequest { +public class ApiIdentityCardRequest extends BaseReq { /** * 图片的url diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/certificate/BankCard2MetaRequest.java b/api-web/api-interface/src/main/java/com/heyu/api/request/certificate/BankCard2MetaRequest.java index da1abba..ad25248 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/certificate/BankCard2MetaRequest.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/certificate/BankCard2MetaRequest.java @@ -1,11 +1,11 @@ package com.heyu.api.request.certificate; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; @Data -public class BankCard2MetaRequest extends BaseRequest { +public class BankCard2MetaRequest extends BaseReq { /*** * 银行卡号 diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/face/CompareFaceReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/face/CompareFaceReq.java index 9f9a3b1..5d383ad 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/face/CompareFaceReq.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/face/CompareFaceReq.java @@ -1,6 +1,6 @@ package com.heyu.api.request.face; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; /**** @@ -13,7 +13,7 @@ import lombok.Data; * */ @Data -public class CompareFaceReq extends BaseRequest { +public class CompareFaceReq extends BaseReq { /** * 图片的url diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/face/CompareFaceWithMaskReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/face/CompareFaceWithMaskReq.java index 95dafb2..93cecb0 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/face/CompareFaceWithMaskReq.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/face/CompareFaceWithMaskReq.java @@ -1,7 +1,7 @@ package com.heyu.api.request.face; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; /*** @@ -14,7 +14,7 @@ import lombok.Data; * */ @Data -public class CompareFaceWithMaskReq extends BaseRequest { +public class CompareFaceWithMaskReq extends BaseReq { diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectBodyCountReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectBodyCountReq.java index a3ffdc8..e010a89 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectBodyCountReq.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectBodyCountReq.java @@ -1,7 +1,6 @@ package com.heyu.api.request.face; -import com.heyu.api.data.dto.BaseRequest; import com.heyu.api.request.CommonReq; import lombok.Data; diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectCelebrityReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectCelebrityReq.java index 1864188..595b5d5 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectCelebrityReq.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectCelebrityReq.java @@ -1,7 +1,6 @@ package com.heyu.api.request.face; -import com.heyu.api.data.dto.BaseRequest; import com.heyu.api.request.CommonReq; import lombok.Data; diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectInfraredLivingFaceReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectInfraredLivingFaceReq.java index a1bab73..9127518 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectInfraredLivingFaceReq.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectInfraredLivingFaceReq.java @@ -1,10 +1,10 @@ package com.heyu.api.request.face; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; @Data -public class DetectInfraredLivingFaceReq extends BaseRequest { +public class DetectInfraredLivingFaceReq extends BaseReq { diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectPedestrianIntrusionReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectPedestrianIntrusionReq.java index 6b3bb7b..80f5556 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectPedestrianIntrusionReq.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/face/DetectPedestrianIntrusionReq.java @@ -1,7 +1,6 @@ package com.heyu.api.request.face; -import com.heyu.api.data.dto.BaseRequest; import com.heyu.api.request.CommonReq; import lombok.Data; diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/file/RecognizePdfReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/file/RecognizePdfReq.java index 8691b6f..a13bb4f 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/file/RecognizePdfReq.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/file/RecognizePdfReq.java @@ -1,7 +1,7 @@ package com.heyu.api.request.file; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; @@ -10,7 +10,7 @@ import lombok.Data; * https://next.api.aliyun.com/api/ocr/2019-12-30/RecognizePdf */ @Data -public class RecognizePdfReq extends BaseRequest { +public class RecognizePdfReq extends BaseReq { /*** diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/mobile/Mobile2MetaVerificationRequest.java b/api-web/api-interface/src/main/java/com/heyu/api/request/mobile/Mobile2MetaVerificationRequest.java index 40dc071..afd8d94 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/mobile/Mobile2MetaVerificationRequest.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/mobile/Mobile2MetaVerificationRequest.java @@ -1,7 +1,7 @@ package com.heyu.api.request.mobile; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; /*** @@ -10,7 +10,7 @@ import lombok.Data; * 手机号二要素核验 */ @Data -public class Mobile2MetaVerificationRequest extends BaseRequest { +public class Mobile2MetaVerificationRequest extends BaseReq { /*** diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/mobile/Mobile3MetaVerificationRequest.java b/api-web/api-interface/src/main/java/com/heyu/api/request/mobile/Mobile3MetaVerificationRequest.java index d6b36a5..e9be765 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/mobile/Mobile3MetaVerificationRequest.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/mobile/Mobile3MetaVerificationRequest.java @@ -1,7 +1,7 @@ package com.heyu.api.request.mobile; -import com.heyu.api.data.dto.BaseRequest; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; /*** @@ -10,7 +10,7 @@ import lombok.Data; * 手机号三要素核验 */ @Data -public class Mobile3MetaVerificationRequest extends BaseRequest { +public class Mobile3MetaVerificationRequest extends BaseReq { /** * 请求订单编号 diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/video/DetectVideoLivingFaceReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/video/DetectVideoLivingFaceReq.java new file mode 100644 index 0000000..f2d4f0d --- /dev/null +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/video/DetectVideoLivingFaceReq.java @@ -0,0 +1,52 @@ +package com.heyu.api.request.video; + + +import com.heyu.api.data.dto.BaseReq; +import lombok.Data; + + +/*** + * https://next.api.aliyun.com/api/facebody/2019-12-30/DetectVideoLivingFace?tab=DEMO&lang=JAVA&RegionId=cn-shanghai + * + *视频活体检测 + * + * DetectVideoLivingFace + * + * + * + */ +@Data +public class DetectVideoLivingFaceReq extends BaseReq { + + + + /*** + * 视频 URL 地址。推荐使用上海地域的 OSS 链接,对于文件在本地或者非上海地域 OSS 链接的情况,请参见文件 URL 处理。 + * + * 示例值: + * http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/videoenhan/RecognizeVideoCharacter/xxxx.mp4 + */ + private String videoURL; + + + /** + * 视频的base64 + */ + private String videoBase64; + + + /** + * 如果是传的是base64 ,则需要加视频后端 + *

+ * MP4视频文件(mp4) + * MPEG视频文件(mpeg, mpg) + * OGG视频文件(ogv) + * WebM视频文件(webm) + * AVI视频文件(avi) + */ + private String videoSuffix; + + + + +} diff --git a/api-web/api-interface/src/main/java/com/heyu/api/request/video/RecognizeVideoCharacterReq.java b/api-web/api-interface/src/main/java/com/heyu/api/request/video/RecognizeVideoCharacterReq.java index 11c69e2..23ae290 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/request/video/RecognizeVideoCharacterReq.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/request/video/RecognizeVideoCharacterReq.java @@ -1,12 +1,11 @@ package com.heyu.api.request.video; -import com.heyu.api.data.dto.BaseRequest; -import com.heyu.api.data.dto.BaseResp; +import com.heyu.api.data.dto.BaseReq; import lombok.Data; @Data -public class RecognizeVideoCharacterReq extends BaseRequest { +public class RecognizeVideoCharacterReq extends BaseReq { /*** diff --git a/api-web/api-interface/src/main/java/com/heyu/api/resp/face/CompareFaceResp.java b/api-web/api-interface/src/main/java/com/heyu/api/resp/face/CompareFaceResp.java index e415cb8..16bf151 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/resp/face/CompareFaceResp.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/resp/face/CompareFaceResp.java @@ -1,7 +1,6 @@ package com.heyu.api.resp.face; -import com.heyu.api.data.dto.BaseRequest; import com.heyu.api.data.dto.BaseResp; import lombok.Data; diff --git a/api-web/api-interface/src/main/java/com/heyu/api/resp/tax/RecognizeVINCodeResp.java b/api-web/api-interface/src/main/java/com/heyu/api/resp/tax/RecognizeVINCodeResp.java index 2d3e610..89aadb0 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/resp/tax/RecognizeVINCodeResp.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/resp/tax/RecognizeVINCodeResp.java @@ -1,7 +1,6 @@ package com.heyu.api.resp.tax; -import com.heyu.api.data.dto.BaseRequest; import com.heyu.api.data.dto.BaseResp; import lombok.Data; diff --git a/api-web/api-interface/src/main/java/com/heyu/api/resp/video/DetectVideoLivingFaceResp.java b/api-web/api-interface/src/main/java/com/heyu/api/resp/video/DetectVideoLivingFaceResp.java new file mode 100644 index 0000000..d25a819 --- /dev/null +++ b/api-web/api-interface/src/main/java/com/heyu/api/resp/video/DetectVideoLivingFaceResp.java @@ -0,0 +1,31 @@ +package com.heyu.api.resp.video; + + +import com.heyu.api.data.dto.BaseResp; +import lombok.Data; + +import java.awt.datatransfer.FlavorEvent; + +@Data +public class DetectVideoLivingFaceResp extends BaseResp { + + /*** + * 活体的置信度,取值范围为 0~1。 + * + * 示例值: + * 0.72464925050735474 + */ + private Float liveConfidence; + + + /*** + * 人脸的置信度,取值范围为 0~1。 + * + * 示例值: + * 0.84644949436187744 + */ + private Float faceConfidence; + + + +}