本文介绍分割抠图(imageseg)类目下的人体分割SegmentBody的语法及示例。
功能描述
人体分割能力用于识别输入图像中的人体轮廓,与背景进行分离,返回分割后的前景人像图(4通道)。本功能适用于真人图片,不适用于卡通图片。
关于该接口功能的示例图如下:
- 输入原图
- 输出结果图(默认为4通道透明图,和原图分辨率保持一致)
您可以传入ReturnForm参数指定返回结果形式:
- 指定为crop,对边缘空白区域进行裁剪
- 指定为mask,返回二值遮罩图
- 指定为whiteBK,返回纯白背景的白底图
应用场景
- 人像摄影:人体分割通过将摄影主体人物从背景中分割出来,将背景虚化,以达到大光圈浅景深效果,突出人物主体。
- 证件照制作:上传或拍摄一张生活照,可将人物精细地分割出来,再搭配其他背景处理能力,最终制作出标准的证件照。
特色优势
- 发丝级精细分割:在细碎部位提供更高的分割精度,细到发丝都能被精确分割,使结果图像没有违和感,难以被觉察出经过处理。
- 适应复杂背景:即使人物处于复杂背景环境,依然可以将人体准确地从背景中分割出来。
接入指引
1. 注册阿里云账号:打开阿里云官网,在阿里云官网右上角,单击立即注册,按照操作提示完成账号注册。
2. 开通能力:请确保您已开通分割抠图服务,若未开通服务请立即开通。
3. 创建AccessKey:请确保您已创建AccessKey,如果您使用的是子账号AccessKey,您需要给子账号赋予AliyunVIAPIFullAccess权限,具体操作,请参见RAM授权。
4. 在线调试(可选):您可以通过OpenAPI Explorer在线调试能力,查看完整的调用示例代码及SDK依赖信息,也可以下载完整的工程。
5. 开发接入步骤:
- 在SDK总览中选择您要接入使用的SDK语言。
- 在对应语言的SDK文档中找到AI类目为分割抠图(imageseg)的SDK包进行安装。
- 参考文档中提供的示例代码进行适当修改后调用。
6. 示例代码:该能力常用语言的示例代码及常见结果后续处理示例,请参见人体分割示例代码。
7. 客户端直接调用:该能力常用的客户端调用方式包括以下几种。
输入限制
- 图像格式:JPEG、JPG、PNG(不支持8位、16位、64位PNG)、BMP、WEBP。
- 图像大小:不超过3 MB。
- 图像分辨率:小于2000×2000像素。
- URL地址中不能包含中文字符。
计费说明
关于人体分割的计费方式及报价,请参见计费介绍。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | SegmentBody | 系统规定参数。取值:SegmentBody。 |
ImageURL | String | 是 | http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentBody/SegmentBody1.png | 图像URL地址。推荐使用上海地域的OSS链接,对于文件在本地或者非上海地域OSS链接的情况,请参见文件URL处理。 图片格式要求:
|
ReturnForm | String | 否 | mask | 指定返回的图像形式。
|
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | 30EDCEEA-2806-44C6-AF0B-0988849106FE | 请求ID。 |
Data | Object | 返回的结果数据内容。 |
|
ImageURL | String | http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/result_humansegmenter/2021-3-31/invi_humansegmenter_016171823500001081370_Ej0WwO.jpg?Expires=1617184150&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=ZwaWXpAOMzHar%2B1wVO7zeSD83r**** | 结果图像URL地址。 请求参数指定返回的图像形式。
说明 该URL地址为临时地址,有效期为30分钟,过期后将无法访问。若需要长时间或者永久保存文件,请在30分钟内访问URL地址,下载文件转存到自己的OSS或者其他存储空间。 |
SDK参考
阿里云视觉AI分割抠图类目下的人体分割能力推荐使用SDK调用,支持多种编程语言,调用时请选择AI类目为分割抠图(imageseg)的SDK包,文件参数通过SDK调用可支持本地文件及任意URL,具体可参见SDK总览。
示例代码及最佳实践
该能力常用语言的示例代码及常见结果后续处理示例,请参见人体分割示例代码。
示例
请求示例
http(s)://imageseg.cn-shanghai.aliyuncs.com/?Action=SegmentBody //更多关于访问域名(Endpoint)信息,请参见:https://help.aliyun.com/document_detail/143103.html
&ImageURL=http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentBody/SegmentBody1.png
&ReturnForm=mask
&公共请求参数
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<SegmentBodyResponse>
<RequestId>30EDCEEA-2806-44C6-AF0B-0988849106FE</RequestId>
<Data>
<ImageURL>http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/result_humansegmenter/2021-3-31/invi_humansegmenter_016171823500001081370_Ej0WwO.jpg?Expires=1617184150&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=ZwaWXpAOMzHar%2B1wVO7zeSD83r****</ImageURL>
</Data>
</SegmentBodyResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "30EDCEEA-2806-44C6-AF0B-0988849106FE",
"Data" : {
"ImageURL" : "http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/result_humansegmenter/2021-3-31/invi_humansegmenter_016171823500001081370_Ej0WwO.jpg?Expires=1617184150&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=ZwaWXpAOMzHar%2B1wVO7zeSD83r****"
}
}
错误码
关于人体分割的错误码,详情请参见常见错误码。
安全声明
- 请确保上传的图片或文件来源符合相应的法律法规。
- 通过体验调试上传的临时文件有效期为1小时,在24小时后会被系统自动清理删除。