提交修改
This commit is contained in:
parent
67656e3466
commit
db5a25228e
@ -0,0 +1,68 @@
|
|||||||
|
package com.heyu.api.controller.face;
|
||||||
|
|
||||||
|
|
||||||
|
import com.aliyun.facebody20191230.models.FaceBeautyResponse;
|
||||||
|
import com.aliyun.facebody20191230.models.FaceBeautyResponseBody;
|
||||||
|
import com.heyu.api.alibaba.handle.facebody.AFaceBeautyHandle;
|
||||||
|
import com.heyu.api.alibaba.request.facebody.AFaceBeautyRequest;
|
||||||
|
import com.heyu.api.controller.BaseController;
|
||||||
|
import com.heyu.api.data.annotation.CacheResult;
|
||||||
|
import com.heyu.api.data.annotation.NotIntercept;
|
||||||
|
import com.heyu.api.data.utils.ApiR;
|
||||||
|
import com.heyu.api.data.utils.R;
|
||||||
|
import com.heyu.api.request.face.FaceBeauty4Req;
|
||||||
|
import com.heyu.api.resp.face.FaceBeauty4Resp;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* https://next.api.aliyun.com/api/facebody/2019-12-30/FaceBeauty?RegionId=cn-shanghai
|
||||||
|
*
|
||||||
|
*人脸美颜
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
FaceBeauty
|
||||||
|
|
||||||
|
功能描述
|
||||||
|
人脸美颜能力可以对图像中的人脸进行美颜。产品支持以下功能:
|
||||||
|
|
||||||
|
人脸美颜:磨皮、美白、锐化(清晰度)、平滑度等。
|
||||||
|
参数调整:可自定义调整参数,提升个人形象
|
||||||
|
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/face")
|
||||||
|
@NotIntercept
|
||||||
|
public class FaceBeauty4Controller extends BaseController {
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private AFaceBeautyHandle aFaceBeautyHandle;
|
||||||
|
|
||||||
|
|
||||||
|
@RequestMapping("/beauty4")
|
||||||
|
@CacheResult
|
||||||
|
public R beauty4(FaceBeauty4Req req) {
|
||||||
|
FaceBeauty4Resp resp = new FaceBeauty4Resp();
|
||||||
|
|
||||||
|
AFaceBeautyRequest aFaceBeautyRequest = new AFaceBeautyRequest();
|
||||||
|
aFaceBeautyRequest.setSmooth(req.getSmooth());
|
||||||
|
aFaceBeautyRequest.setWhite(req.getWhite());
|
||||||
|
aFaceBeautyRequest.setImageUrl(req.getImageUrl());
|
||||||
|
aFaceBeautyRequest.setImageBase64(req.getImageBase64());
|
||||||
|
aFaceBeautyRequest.setSharp(req.getSharp());
|
||||||
|
ApiR<FaceBeautyResponse> aR = aFaceBeautyHandle.handle(aFaceBeautyRequest);
|
||||||
|
if (aR.isSuccess() && isSuccessStatusCode(aR.getData().getStatusCode())) {
|
||||||
|
FaceBeautyResponseBody.FaceBeautyResponseBodyData responseBodyData = aR.getData().getBody().getData();
|
||||||
|
resp.setImageURL(responseBodyData.getImageURL());
|
||||||
|
return R.ok().setData(resp);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
return R.error(aR.getErrorMsg());
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,56 @@
|
|||||||
|
package com.heyu.api.controller.face;
|
||||||
|
|
||||||
|
|
||||||
|
import com.aliyun.facebody20191230.models.RecognizeHandGestureResponse;
|
||||||
|
import com.aliyun.facebody20191230.models.RecognizeHandGestureResponseBody;
|
||||||
|
import com.heyu.api.alibaba.handle.facebody.ARecognizeHandGestureHandle;
|
||||||
|
import com.heyu.api.alibaba.request.facebody.ARecognizeHandGestureRequest;
|
||||||
|
import com.heyu.api.controller.BaseController;
|
||||||
|
import com.heyu.api.data.annotation.NotIntercept;
|
||||||
|
import com.heyu.api.data.utils.ApiR;
|
||||||
|
import com.heyu.api.data.utils.R;
|
||||||
|
import com.heyu.api.request.face.RecognizeHandGestureReq;
|
||||||
|
import com.heyu.api.resp.face.RecognizeHandGestureResp;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* https://next.api.aliyun.com/api/facebody/2019-12-30/RecognizeHandGesture?RegionId=cn-shanghai
|
||||||
|
*
|
||||||
|
*静态手势识别
|
||||||
|
*
|
||||||
|
* RecognizeHandGesture
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/hand/gesture")
|
||||||
|
@NotIntercept
|
||||||
|
public class RecognizeHandGestureController extends BaseController {
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ARecognizeHandGestureHandle arRecognizeHandGestureHandle;
|
||||||
|
|
||||||
|
@RequestMapping("/recognize")
|
||||||
|
public R recognize(RecognizeHandGestureReq req) {
|
||||||
|
RecognizeHandGestureResp resp = new RecognizeHandGestureResp();
|
||||||
|
|
||||||
|
ARecognizeHandGestureRequest arRecognizeHandGestureRequest = new ARecognizeHandGestureRequest();
|
||||||
|
arRecognizeHandGestureRequest.setImageBase64(req.getImageBase64());
|
||||||
|
arRecognizeHandGestureRequest.setImageUrl(req.getImageUrl());
|
||||||
|
ApiR<RecognizeHandGestureResponse> aR = arRecognizeHandGestureHandle.handle(arRecognizeHandGestureRequest);
|
||||||
|
if (aR.isSuccess() && isSuccessStatusCode(aR.getData().getStatusCode())) {
|
||||||
|
RecognizeHandGestureResponseBody.RecognizeHandGestureResponseBodyData responseBodyData = aR.getData().getBody().getData();
|
||||||
|
|
||||||
|
resp.setType(responseBodyData.getType());
|
||||||
|
resp.setScore(responseBodyData.getScore());
|
||||||
|
return R.ok().setData(resp);
|
||||||
|
|
||||||
|
}
|
||||||
|
return R.error();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -0,0 +1,38 @@
|
|||||||
|
package com.heyu.api.request.face;
|
||||||
|
|
||||||
|
|
||||||
|
import com.heyu.api.request.CommonReq;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class FaceBeauty4Req extends CommonReq {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 锐化(清晰度)程度,取值范围 0~1。越接近 1 锐化程度越高。
|
||||||
|
* <p>
|
||||||
|
* 示例值:
|
||||||
|
* 1
|
||||||
|
*/
|
||||||
|
public Float sharp = 1f;
|
||||||
|
/**
|
||||||
|
* 平滑程度,取值范围 0~1。越接近 1 平滑程度越高。
|
||||||
|
* <p>
|
||||||
|
* 示例值:
|
||||||
|
* 0.1
|
||||||
|
*/
|
||||||
|
public Float smooth = 1f;
|
||||||
|
/**
|
||||||
|
* 美白程度,取值范围 0~1。越接近 1 美白程度越高。
|
||||||
|
* <p>
|
||||||
|
* 示例值:
|
||||||
|
* 0.3
|
||||||
|
*/
|
||||||
|
public Float white = 1f;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package com.heyu.api.request.face;
|
||||||
|
|
||||||
|
import com.heyu.api.request.CommonReq;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/***
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RecognizeHandGestureReq extends CommonReq {
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,9 @@
|
|||||||
|
package com.heyu.api.resp.face;
|
||||||
|
|
||||||
|
|
||||||
|
import com.heyu.api.resp.CommonImageUrlResp;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class FaceBeauty4Resp extends CommonImageUrlResp {
|
||||||
|
}
|
||||||
@ -0,0 +1,37 @@
|
|||||||
|
package com.heyu.api.resp.face;
|
||||||
|
|
||||||
|
|
||||||
|
import com.heyu.api.data.dto.BaseResp;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class RecognizeHandGestureResp extends BaseResp {
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 手势类型。
|
||||||
|
*
|
||||||
|
* bg:无法识别的手势
|
||||||
|
* ok:确认
|
||||||
|
* palm:手掌
|
||||||
|
* left:握拳且大拇指向左
|
||||||
|
* right:握拳且大拇指向右
|
||||||
|
* good:点赞(即握拳且大拇指向上)
|
||||||
|
* mute:噤声(将食指放在嘴上即被识别为噤声)
|
||||||
|
* down:握拳且大拇指向下
|
||||||
|
* 示例值:
|
||||||
|
* right
|
||||||
|
*/
|
||||||
|
private String type;
|
||||||
|
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 识别置信度,范围 0~1。
|
||||||
|
*
|
||||||
|
* 示例值:
|
||||||
|
* 0.921875
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private Float score;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user