提交修改
This commit is contained in:
parent
e299a68fad
commit
cf2221642f
@ -0,0 +1,64 @@
|
||||
package com.heyu.api.controller.imageenhan;
|
||||
|
||||
|
||||
import com.aliyun.imageenhan20190930.models.EnhanceImageColorResponse;
|
||||
import com.aliyun.imageenhan20190930.models.EnhanceImageColorResponseBody;
|
||||
import com.heyu.api.alibaba.handle.imageenhan.AEnhanceImageColorHandle;
|
||||
import com.heyu.api.alibaba.request.imageenhan.AEnhanceImageColorRequest;
|
||||
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.imageenhan.ColorizeImageReq;
|
||||
import com.heyu.api.resp.imageenhan.ColorizeImageResp;
|
||||
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/imageenhan/2019-09-30/EnhanceImageColor?tab=DOC
|
||||
*
|
||||
* 图像色彩增强
|
||||
*
|
||||
* EnhancelmageColor
|
||||
*
|
||||
*
|
||||
*功能描述
|
||||
* 图像色彩增强能力可以对输入图像进行智能内容分析,根据图像内容自动调整参数,对图像饱和度、亮度、对比度等多个维度进行优化,输出增强后的图像。 关于该接口功能的示例图如下:
|
||||
*
|
||||
*应用场景
|
||||
* 设计素材美化:对设计图像进行智能分析提升,用于创意设计。
|
||||
* 照片美化:对拍摄的照片进行智能美化,用于分享和传播。
|
||||
*
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("/image")
|
||||
@NotIntercept
|
||||
public class EnhanceImageColorController extends BaseController {
|
||||
|
||||
|
||||
@Autowired
|
||||
private AEnhanceImageColorHandle aEnhanceImageColorHandle;
|
||||
|
||||
|
||||
@RequestMapping("/colorEnhance")
|
||||
@CacheResult
|
||||
public R exposure(ColorizeImageReq req) {
|
||||
ColorizeImageResp resp = new ColorizeImageResp();
|
||||
AEnhanceImageColorRequest request = new AEnhanceImageColorRequest();
|
||||
request.setImageBase64(req.getImageBase64());
|
||||
request.setImageUrl(req.getImageUrl());
|
||||
request.setMode(req.getMode());
|
||||
|
||||
ApiR<EnhanceImageColorResponse> aR = aEnhanceImageColorHandle.handle(request);
|
||||
if (aR.isSuccess() && isSuccessStatusCode(aR.getData().getStatusCode())) {
|
||||
EnhanceImageColorResponseBody.EnhanceImageColorResponseBodyData responseBodyData = aR.getData().getBody().getData();
|
||||
resp.setImageURL(responseBodyData.getImageURL());
|
||||
return R.ok().setData(resp);
|
||||
}
|
||||
return R.error(aR.getErrorMsg());
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,70 @@
|
||||
package com.heyu.api.controller.imageenhan;
|
||||
|
||||
|
||||
import com.aliyun.imageenhan20190930.models.ErasePersonResponse;
|
||||
import com.aliyun.imageenhan20190930.models.ErasePersonResponseBody;
|
||||
import com.heyu.api.alibaba.handle.imageenhan.AErasePersonHandle;
|
||||
import com.heyu.api.alibaba.request.imageenhan.AErasePersonRequest;
|
||||
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.imageenhan.ErasePersonReq;
|
||||
import com.heyu.api.resp.imageenhan.ErasePersonResp;
|
||||
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/imageenhan/2019-09-30/ErasePerson?tab=DOC&lang=JAVA&RegionId=cn-shanghai
|
||||
* 擦除
|
||||
* <p>
|
||||
* 图像人体擦除
|
||||
* <p>
|
||||
* ErasePerson
|
||||
*
|
||||
* 应用场景
|
||||
* 旅行照片修复:图像人体擦除可以帮您去除背景中的路人,还您美美的旅行照片。
|
||||
* 穿帮镜头后期修复:在影视拍摄过程中,如果在前期拍摄镜头中出现了本不应该出现的人物,可以通过图像人体擦除帮您批量处理修复这些穿帮镜头。
|
||||
* 特点优势
|
||||
* 尽量保留原照片内容:通过指定区域 Mask,缩小自动填充背景范围,擦除背景人物,降低处理后照片的违和感。人像区域 mask,建议使用阿里云视觉智能开放平台提供的人体分割算法来获得,可以得到更好的效果。
|
||||
* 自动生成填充被人体遮挡的背景:基于深度学习算法,图像人体擦除可以推理还原出被人体遮挡的背景内容,真实而没有违和感。
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("/image")
|
||||
@NotIntercept
|
||||
public class ErasePersonController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private AErasePersonHandle aErasePersonHandle;
|
||||
|
||||
|
||||
@RequestMapping("/erasePerson")
|
||||
@CacheResult
|
||||
public R erasePerson(ErasePersonReq req) {
|
||||
ErasePersonResp resp = new ErasePersonResp();
|
||||
|
||||
AErasePersonRequest aErasePersonRequest = new AErasePersonRequest();
|
||||
aErasePersonRequest.setMaskUrl(req.getMaskUrl());
|
||||
aErasePersonRequest.setImageUrl(req.getImageUrl());
|
||||
aErasePersonRequest.setMaskBase64(req.getMaskBase64());
|
||||
aErasePersonRequest.setImageBase64(req.getImageBase64());
|
||||
|
||||
|
||||
ApiR<ErasePersonResponse> aR = aErasePersonHandle.handle(aErasePersonRequest);
|
||||
if (aR.isSuccess() && isSuccessStatusCode(aR.getData().getStatusCode())) {
|
||||
ErasePersonResponseBody.ErasePersonResponseBodyData responseBodyData = aR.getData().getBody().getData();
|
||||
|
||||
resp.setImageURL(responseBodyData.getImageUrl());
|
||||
return R.ok().setData(resp);
|
||||
}
|
||||
|
||||
return R.error(aR.getErrorMsg());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@ -5,4 +5,18 @@ import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ColorizeImageReq extends CommonReq {
|
||||
|
||||
/**
|
||||
* 调色模式。包括 LogC、Rec709 和 ln17_256。
|
||||
*
|
||||
* LogC:适用于灰片(低对比度 raw 图)输入,大幅度调整图像色彩观感,使其恢复 SDR 域的色彩质感。
|
||||
* Rec709:适用于一般条件拍摄的图像,适当提升图像亮度、饱和度等,调整幅度较为保守。
|
||||
* ln17_256:适用于一般条件拍摄的图像,大幅度调整图像亮度、饱和度、对比度,提升色彩质感。
|
||||
* 示例值:
|
||||
* LogC
|
||||
*/
|
||||
private String mode = "LogC";
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,12 @@
|
||||
package com.heyu.api.request.imageenhan;
|
||||
|
||||
|
||||
import com.heyu.api.request.CommonReq;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class EnhanceImageColorReq extends CommonReq {
|
||||
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,28 @@
|
||||
package com.heyu.api.request.imageenhan;
|
||||
|
||||
import com.heyu.api.request.CommonReq;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ErasePersonReq extends CommonReq {
|
||||
|
||||
/**
|
||||
*
|
||||
* 图像对于 Mask 的 URL 地址。推荐使用上海地域的 OSS 链接,对于文件在本地或者非上海地域 OSS 链接的情况,请参见文件 URL 处理(使用 viapiutils 显式的方案生成 URL)。展开详情
|
||||
*
|
||||
* 示例值:
|
||||
* http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/ErasePerson/ErasePerson6.jpg
|
||||
*
|
||||
*/
|
||||
private String maskUrl;
|
||||
|
||||
|
||||
/**
|
||||
* 64位编码
|
||||
*/
|
||||
private String maskBase64;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
package com.heyu.api.resp.imageenhan;
|
||||
|
||||
|
||||
import com.heyu.api.resp.CommonImageUrlResp;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class EnhanceImageColorResp extends CommonImageUrlResp {
|
||||
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,14 @@
|
||||
package com.heyu.api.resp.imageenhan;
|
||||
|
||||
|
||||
import com.heyu.api.resp.CommonImageUrlResp;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ErasePersonResp extends CommonImageUrlResp {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user