本文介绍分割抠图(imageseg)类目下的人体分割SegmentBody的语法及示例。

功能描述

人体分割能力用于识别输入图像中的人体轮廓,与背景进行分离,返回分割后的前景人像图(4通道)。本功能适用于真人图片,不适用于卡通图片。

关于该接口功能的示例图如下:

  • 输入原图
  • 输出结果图(默认为4通道透明图,和原图分辨率保持一致)

您可以传入ReturnForm参数指定返回结果形式:

  • 指定为crop,对边缘空白区域进行裁剪
  • 指定为mask,返回二值遮罩图
  • 指定为whiteBK,返回纯白背景的白底图
说明
  • 您可以进入在线咨询获取在线人工帮助。
  • 当前能力可在视觉智能开放平台有完整的免费产品体验,您可以单击立即试用对该能力进行更直观试用以及在线购买。
  • 阿里云视觉智能开放平台视觉AI能力API接入、接口使用或问题咨询等,请通过钉钉群(23109592)加入阿里云视觉智能开放平台咨询群联系我们。

应用场景

  • 人像摄影:人体分割通过将摄影主体人物从背景中分割出来,将背景虚化,以达到大光圈浅景深效果,突出人物主体。
  • 证件照制作:上传或拍摄一张生活照,可将人物精细地分割出来,再搭配其他背景处理能力,最终制作出标准的证件照。

特色优势

  • 发丝级精细分割:在细碎部位提供更高的分割精度,细到发丝都能被精确分割,使结果图像没有违和感,难以被觉察出经过处理。
  • 适应复杂背景:即使人物处于复杂背景环境,依然可以将人体准确地从背景中分割出来。

接入指引

1. 注册阿里云账号:打开阿里云官网,在阿里云官网右上角,单击立即注册,按照操作提示完成账号注册。

2. 开通能力:请确保您已开通分割抠图服务,若未开通服务请立即开通

3. 创建AccessKey:请确保您已创建AccessKey,如果您使用的是子账号AccessKey,您需要给子账号赋予AliyunVIAPIFullAccess权限,具体操作,请参见RAM授权

4. 在线调试(可选):您可以通过OpenAPI Explorer在线调试能力,查看完整的调用示例代码及SDK依赖信息,也可以下载完整的工程。

5. 开发接入步骤:

  • SDK总览中选择您要接入使用的SDK语言。
  • 在对应语言的SDK文档中找到AI类目为分割抠图(imageseg)的SDK包进行安装。
  • 参考文档中提供的示例代码进行适当修改后调用。

6. 示例代码及最佳实践:该能力常用语言的示例代码及常见结果后续处理示例,请参见人体分割示例代码

输入限制

  • 图像格式: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处理

图片格式要求:

  • 图像格式:JPEG、JPG、PNG(不支持8位、16位、64位PNG)、BMP、WEBP。
  • 图像大小:不超过3 MB。
  • 图像分辨率:小于2000×2000像素。
  • URL地址中不能包含中文字符。
ReturnForm String mask

指定返回的图像形式。

  • 如果设置为mask,则返回单通道黑白图。
  • 如果设置为crop,则返回裁剪之后的四通道PNG图(裁掉边缘空白区域)。
  • 如果设置为whiteBK,则返回白底图。
  • 如果不设置或者设置为其他值,则返回四通道PNG图。

返回数据

名称 类型 示例值 描述
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地址。

请求参数指定返回的图像形式。

  • 如果设置为mask,则返回单通道黑白图。
  • 如果设置为crop,则返回裁剪之后的四通道PNG图(裁掉边缘空白区域)。
  • 如果设置为whiteBK,则返回白底图。
  • 如果不设置或者设置为其他值,则返回四通道PNG图,无压缩,图像尺寸保持不变,图像体积会变大。
说明 该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&amp;OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&amp;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小时后会被系统自动清理删除。