智能出图
面向电商卖家的一站式 AI 图片智能处理服务。将元素识别、智能抠图、智能消除、图片翻译 Pro、智能裁剪、高清放大六项原子能力编排为图片处理工作流,用户只需一次上传图片、通过 Ability 参数勾选所需能力,即可按预设顺序一次性完成多项优化,输出符合铺货平台要求的商品图。异步调用。
适用场景
适用于跨平台铺货场景下的商品图片批量优化,将货源商品图适配为铺货平台需求的主图、SKU 图、详情图,可支持:
-
识别带有文字、水印、Logo、牛皮癣的劣质图片,支持用户过滤需要处理的图片
-
去除原图中的水印、Logo、牛皮癬、中文文案等不合规元素
-
扣除商品主体边缘背景
-
将图片内的文本翻译为其他语言
-
将图片裁剪为指定尺寸
-
将图片像素放大指定倍数
接口
异步接口:通过提交接口拿到 TaskId
,再通过查询接口轮询结果。
提交任务
POST /rest/ai/image/visionflow
查询结果
复用统一异步查询接口,传入提交接口返回的 TaskId 轮询任务状态。详见异步结果查询接口。
POST /rest/ai/task/queryTaskResult
快速开始
import json, time
# 1. 提交任务
submit = make_signed_request("/rest/ai/image/visionflow", json.dumps({
"ImageUrl": "https://example.com/product.jpg",
"Ability": [1, 2, 3],
"NonObjectDetectElements": [1, 2, 3],
"IsFilter": True,
"BackGroundType": "WHITE_BACKGROUND",
"ObjectRemoveElements": [1, 3]
}))
task_id = submit["Data"]["TaskId"]
# 2. 轮询查询
while True:
time.sleep(5)
res = make_signed_request("/rest/ai/task/queryTaskResult", json.dumps({"TaskId": task_id}))
status = res["Data"]["Status"]
if status in ("COMPLETED", "FAILED"):
break
print(res["Data"]["Result"]["Result"]["FinalUrl"])
功能介绍
用户输入商品图片 URL,并通过 Ability 参数勾选需要调用的 AI 能力组合,系统将按预设顺序串联执行。其中智能元素识别的结果会影响后续能力的选择——额外提供 IsFilter 参数支持用户按识别结果过滤图片,决定是否进入后续 AI 处理流程。
每项能力对应的编码和说明如下:
|
编码 |
能力 |
说明 |
|
1 |
智能元素识别 |
检测主体/非主体上的水印、Logo、文字、含字色块;可作为前置过滤,决定后续能力是否继续。 |
|
2 |
智能抠图 |
深度学习精准分离主体与背景,支持发丝/透明物体;输出透明底或白底图。 |
|
3 |
智能消除 |
消除文字、特定名称(品牌/店铺)、透明字块、牛皮癣;支持主体/非主体分别指定,支持 Mask(RLE)精确区域。 |
|
4 |
图片翻译 Pro |
多模态 AI 驱动的图片文本翻译,详见图片翻译Pro版。 |
|
5 |
智能裁剪 |
按 |
|
6 |
高清放大 |
提升图片画质,按 |
效果对比
|
原始图 |
使用的能力项 |
输出图 |
|
|
|
|
|
|
|
|
|
|
|
|
提交接口
请求参数
下表 17 个字段,按所选能力分组。ImageUrl 和 Ability 为基础必填字段;其余字段的「必填」列标明在启用对应能力(Ability 含该能力编码)时是否必填:是=该能力必填,否=可选,二选一=与同组另一字段至少填一个。未启用对应能力时,该组字段无需传入。
|
参数 |
类型 |
必填 |
说明 |
|
基础参数 |
|||
|
|
String |
是 |
图片要求:分辨率 > 256×256;长边 ≤ 1920 像素;短边 ≤ 1080 像素;大小 ≤ 5 MB;支持 png / jpeg / jpg / bmp / webp。 |
|
|
number[] |
是 |
需要调用的 AI 能力数组,可多选。枚举见上表。示例: |
|
智能元素识别(Ability=1) |
|||
|
|
number[] |
二选一 |
检测主体上的元素:1=水印、2=Logo、3=文字、4=含字色块。与 |
|
|
number[] |
二选一 |
检测非主体上的元素,枚举同上。 |
|
|
Boolean |
是 |
选择带有此元素的图片进入后续处理( |
|
智能抠图(Ability=2) |
|||
|
|
String |
是 |
|
|
智能消除(Ability=3) |
|||
|
|
number[] |
二选一 |
去除主体上的元素:1=透明字块、2=特定名称、3=文字、4=牛皮癣。与 |
|
|
number[] |
二选一 |
去除非主体上的元素,枚举同上。 |
|
|
String |
否 |
RLE 格式精确指定消除区域。传入将忽略 |
|
图片翻译 Pro(Ability=4) |
|||
|
|
String |
否 |
源语向代码,详见支持的语言。 |
|
|
String |
否 |
目标语向代码。 |
|
|
Boolean |
否 |
是否翻译主体上文字。 |
|
|
Boolean |
否 |
是否翻译品牌名。默认 |
|
|
String |
否 |
干预词表 ID。详见干预词表。 |
|
智能裁剪(Ability=6) |
|||
|
|
number |
是 |
目标宽度(像素),100–5000。 |
|
|
number |
是 |
目标高度(像素),100–5000。 |
|
高清放大(Ability=7) |
|||
|
|
number |
是 |
放大倍数 2–4,默认 2。 |
请求示例
{
"ImageUrl": "https://example.com/product.jpg",
"Ability": [1, 4, 6],
"ObjectDetectElements": null,
"NonobjectDetectElements": [1, 2, 3],
"IsFilter": true,
"BackGroundType": "WHITE_BACKGROUND",
"ObjectRemoveElements": null,
"NonobjectRemoveElements": [1, 2, 3, 4],
"Mask": null,
"SourceLanguage": "zh",
"TargetLanguage": "en",
"IncludingProductArea": null,
"TranslatingBrandInTheProduct": null,
"Glossary": "glossary_1",
"TargetWidth": 800,
"TargetHeight": 600,
"UpscaleFactor": 2
}
响应参数
|
字段 |
类型 |
说明 |
|
|
String |
状态码。成功为 |
|
|
String |
错误描述。成功为 |
|
|
Boolean |
是否成功。 |
|
|
String |
请求 ID,排查问题时提供。 |
|
|
String |
异步任务 ID,用于查询接口。 |
查询接口
请求参数
|
参数 |
类型 |
必填 |
说明 |
|
|
String |
是 |
提交接口返回的 |
请求示例
{ "TaskId": "75942c08-1d09-942f-bfa9-76703872e668" }
响应参数
|
字段 |
类型 |
说明 |
|
|
-- |
同提交接口。 |
|
|
String |
异步任务 ID。 |
|
|
String |
任务状态: |
|
|
String(JSON) |
|
|
|
String |
原始输入图片 URL。 |
|
|
String |
处理后图片 URL(带过期时间的 OSS 签名 URL)。 |
|
|
Boolean |
元素检测是否通过(仅 Ability=1 时有意义)。 |
|
|
String |
主体上是否存在文字 / 水印 / Logo / 含字色块( |
|
|
String |
非主体上是否存在文字 / 水印 / Logo / 含字色块。 |
响应示例
注意:Data.Result 可能返回 Object 或 JSON 字符串,取决于网关版本。建议始终对 Data.Result 做类型检查后再解析。
返回 Object 形式:
{
"Data": {
"Status": "COMPLETED",
"TaskId": "4a5b8f01-6fa1-95ef-bfd3-89ae8abbb67a",
"Result": {
"Result": {
"ObjLogo": "false",
"NoobjLogo": "true",
"ElementStatus": true,
"NoobjWatermark": "true",
"FinalUrl": "http://dashscope-7c2c.oss-cn-shanghai.aliyuncs.com/.../result.png?...",
"ObjCharacter": "false",
"ObjNpx": "false",
"SrcUrl": "http://dashscope-7c2c.oss-cn-shanghai.aliyuncs.com/.../input.png?...",
"ObjWatermark": "false",
"NoobjCharacter": "true",
"NoobjNpx": "false"
}
}
},
"RequestId": "66256E25-2A3E-1A1A-BFAC-0969CA6B0F58",
"Message": "Success",
"Code": "success",
"Success": true
}
返回 JSON 字符串形式(需二次解析):
{
"Data": {
"Status": "COMPLETED",
"TaskId": "effaf12d-565d-9ae2-8e58-722e977f4ab2",
"Result": "{\"Result\": {\"ObjNpx\": \"false\", \"SrcUrl\": \"...\", \"FinalUrl\": \"...\", ...}}"
},
"RequestId": "3FBCE320-0605-1AF6-8F63-5171A43C1711",
"Message": "Success",
"Code": "success",
"Success": true
}
错误码
智能出图共享统一的命名错误码体系。本能力常触发以下错误码:
-
InvalidParameter--ImageUrl不合规(分辨率、大小、格式);或Ability选了能力但缺少对应必填参数。 -
DownstreamUnavailable-- 图片 URL 无法访问或下游模型暂不可用。 -
InputContentBlocked-- 输入图片触发内容安全审核。 -
FreeQuotaExhausted-- 试用额度耗尽且未购买商品包。
完整错误码列表,请参见错误码。
翻译支持的语言
仅 Ability=4(图片翻译 Pro)时生效。语言代码采用 ISO 639-1 两位字母;区域变体遵循 RFC 5646 格式(如 zh-tw = 繁体中文)。支持桥接翻译,如 zh→en、en→ar 可实现 zh→en→ar 桥接。
|
源语言 |
支持的目标语言 |
|
中文简体 ( |
en(英语)、ja(日语)、ko(韩语) |
|
英语 ( |
ar、az、bn、cs、de、el、es、fi、fr、he、hi、hu、id、it、ja、ko、ms、my、ne、nl、pl、pt、ro、ru、si、sv、th、tl、tr、uk、ur、vi、zh(32 种) |
|
西班牙语 ( |
bg、cs、da、de、el、en、et、fi、fr、hr、hu、it、lt、lv、nl、no、pl、pt、ro、ru、sk、sv(22 种) |
|
土耳其语 ( |
ar、cs、de、el、en、hu、ro(7 种) |
|
ar / az / bn / cs / de / el / fi / fr / he / hi / hu / id / it / ja / ko / ms / my / ne / nl / pl / pt / ro / ru / si / sv / th / tl / uk / ur / vi(30 种) |
en(英语) |
|
繁体中文 ( |
通过桥接:zh-tw→zh、zh-tw→zh→en,可间接覆盖 en 源的所有目标语言 |
使用限制
-
调用模式:异步。查询接口无 QPS 限制,建议轮询间隔 ≥ 5 秒。提交接口的 QPS 上限详见频率限制。
-
输入图片:分辨率 > 256×256;长边 ≤ 1920 像素;短边 ≤ 1080 像素;大小 ≤ 5 MB;支持 png / jpeg / jpg / bmp / webp。
智能裁剪输出尺寸:100–5000 像素。
-
高清放大倍数:2–4 倍。
-
计费:按各原子能力的实际调用量计费。详见素材优化计费。





