本文介绍图像画面扩展模型的输入输出参数。图像画面扩展(也称“扩图”)支持多种扩展方式,包括按宽高比扩图、按比例扩图、在上下左右四个方向添加像素扩图。这三种方式还可以结合旋转角度进行扩图。
相关指南:图像画面扩展
模型概览
模型名 | 免费额度 | 计费单价 | 限流(含主账号与RAM子账号) | |
任务下发接口QPS限制 | 同时处理中任务数量 | |||
image-out-painting | 免费额度:500张 领取方式:开通阿里云百炼大模型服务后,自动发放 有效期:180天 | 目前仅供免费体验。 免费额度用完后不可调用,敬请关注后续动态。 | 2 | 1 |
前提条件
您需要已获取API Key并配置API Key到环境变量。如果通过SDK调用,还需要安装DashScope SDK。
HTTP调用
为了减少等待时间并且避免请求超时,服务采用异步方式提供。您需要发起两个请求:
步骤1:创建任务获取任务ID:首先发送一个请求创建扩图任务,该请求会返回任务ID。
步骤2:根据任务ID查询结果:使用上一步获得的任务ID,查询模型生成的结果。
步骤1:创建任务获取任务ID
POST https://dashscope.aliyuncs.com/api/v1/services/aigc/image2image/out-painting
请求头(Headers) | 旋转图像
等比例扩图
指定方向扩图
指定宽高比扩图
|
Content-Type 请求内容类型。此参数必须设置为 | |
Authorization 请求身份认证。接口使用阿里云百炼API-Key进行身份认证。示例值:Bearer d1xxx2a。 | |
X-DashScope-Async 异步处理配置参数。HTTP请求只支持异步,必须设置为 | |
请求体(Request Body) | |
model 模型名称。示例值: | |
input 输入图像的基本信息,比如图像URL地址。 | |
parameters 设置输出图像的处理参数,如逆时针旋转角度、宽高比、扩展比例、四个方向像素填充等。 | |
响应 | 成功响应
异常响应
|
output object 任务输出信息。 | |
request_id 请求唯一标识。可用于请求明细溯源和问题排查。 | |
code 请求失败的错误码。请求成功时不会返回此参数,详情请参见错误信息。 | |
message 请求失败的详细信息。请求成功时不会返回此参数,详情请参见错误信息。 |
步骤2:根据任务ID查询结果
GET https://dashscope.aliyuncs.com/api/v1/tasks/{task_id}
请求头(Headers) | 查询任务结果您需要将
|
Authorization 请求身份认证。接口使用阿里云百炼API-Key进行身份认证。示例值:Bearer d1xxx2a。 | |
URL路径参数(Path parameters) | |
task_id 任务ID。 |
响应 | 任务执行成功
任务执行中
任务执行失败
|
output object 输出的任务信息。 | |
usage object 图像统计信息。 | |
request_id 请求唯一标识。可用于请求明细溯源和问题排查。 |
图像处理参数使用说明
在图像处理参数 parameters
中,主要包含两类参数:旋转参数、扩展参数。扩展参数按功能分为三类,它们之间相互独立、互不影响。
参数类型 | 优先级 | 参数 |
旋转参数 | 先旋转,后扩展 |
|
扩展参数 | 扩展优先级1:按宽高比扩展 |
|
扩展优先级2:按比例扩展 |
| |
扩展优先级3:在指定方向添加像素扩展 |
|
参数设置建议
仅按宽高比扩图 :只需设置
output_ratio
,并将其设置为非空的宽高比值(如 "4:3"、"16:9" 等)。仅按比例扩图 :只需设置
x_scale
、y_scale
,且至少一个参数值大于 1.0,两者既可单独使用也可搭配使用。仅在指定方向添加像素扩图 :只需设置
left_offset
、right_offset
、top_offset
、bottom_offset
,且至少有一个参数值大于 0。这四个参数既可单独使用也可搭配使用。仅旋转图像 :只需设置
angle
,并将其设置为 [1, 359] 范围内的值,但不能设置为 90、180、270。先旋转再扩图:需要设置
angle
,并将其设置为 [1, 359] 范围内的任意值。同时必须与以下三组扩展参数中的一组搭配使用。若同时设置多组扩展参数,按参数优先级生效。output_ratio
:不为空。x_scale、y_scale
:至少有一个大于 1.0。top_offset、bottom_offset、left_offset、right_offset
:至少有一个参数值大于 0。
注意 :先旋转后扩图时,模型会先根据指定角度旋转图像,再在旋转后的图像上进行扩图操作。实际扩图效果请以模型输出为准。
参数优先级
当
angle > 0
且同时设置扩展参数时,处理顺序为:先旋转 → 后扩展。当
angle = 0
或图像完成旋转后,扩展参数按以下优先级生效:优先级1:按宽高比扩展(output_ratio)
若 output_ratio 不为空,则按此宽高比生成图像,其他扩展参数均被忽略。
优先级2:按比例扩展(x_scale、y_scale)
若未设置 output_ratio,且 x_scale 和 y_scale 至少有一个参数值大于 1,则按此比例对图像进行扩展。此时,忽略添加像素扩展的相关参数。
优先级3:在指定方向添加像素扩展(left_offset、right_offset、top_offset、bottom_offset)
若未设置 output_ratio、x_scale、y_scale,且left_offset、right_offset、top_offset、bottom_offset至少有一个参数值大于0,则按此方式在指定方向添加像素扩图。
参数组合示例
配置组合 | 实际生效模式 |
| 按宽高比4:3扩图(仅 |
| 按比例扩图(仅 |
| 先逆时针旋转 90°,再将旋转后的图像的宽边扩展到2.0倍( |
| 先逆时针旋转90°,再对旋转后的图像按宽高比4:3扩图(仅 |
错误码
如果模型调用失败并返回报错信息,请参见错误信息进行解决。
此API还有特定状态码,具体如下所示。
HTTP状态码 | 接口错误码(code) | 接口错误信息(message) | 含义说明 |
400 | InvalidParameter.JsonPhrase | input json error | 输入json错误 |
400 | InvalidParameter.FileDownload | oss download error | 输入图像下载失败 |
400 | InvalidParameter.ImageFormat | read image error | 读取图像失败 |
400 | InvalidParameter.ImageContent | The image content does not comply with green network verification | 图像内容不合规 |
400 | InvalidParameter | the parameters must conform to the specification: xxx | 输入参数值超出范围 |
400 | InvalidParameter.DataInspection | The image size is not supported for the data inspection. | 输出图像尺寸超限(大于10M) |
500 | InternalError.Algo | algorithm process error | 算法错误 |
500 | InternalError.FileUpload | oss upload error | 文件上传失败 |
常见问题
Q:创建任务接口响应成功,但没有返回图像URL?
A:在图像模型处理中,HTTP请求需要经过两步才能获取结果:创建任务、根据任务ID查询结果。创建任务接口仅提交任务,不返回图像结果。您需要查询 GET https://dashscope.aliyuncs.com/api/v1/tasks/{task_id}
接口获得模型生成的图像URL。
Q:设置输出比例 output_ratio
后,为什么模型没有根据 x_scale
或 y_scale
自动计算另一个方向的比例?
A:图像画面扩展API目前支持三种扩展方式:按宽高比扩展、按比例扩展、在指定方向添加像素扩展。三者参数相互独立,互不影响。为避免参数冲突,系统设定了明确的优先级:output_ratio > x_scale / y_scale > *offset
。
一旦设置了 output_ratio(非空),系统将仅按该宽高比进行扩展,忽略所有其他扩展参数。因此,若同时设置了 output_ratio 和 x_scale ,只有 output_ratio 生效,x_scale 被自动忽略,也不会基于 x_scale 自动推导或计算 y_scale。