智能元素识别

更新时间:
复制 MD 格式

专为电商图像设计的元素识别能力,识别图片主体与背景上是否含有文字、Logo、水印、 含字色块(牛皮癣) 四类元素。返回是 / 否判断结果,可选附带 OCR 原文、主体面积占比、文字面积占比等量化指标,作为智能消除 / 智能抠图 / 批量素材筛选的前置判断,提升筛选效率与准确性。同步调用。

适用场景

  • 智能图像筛选与优化:自动识别含水印 / Logo 等特定元素的图片,再调用智能消除批量优化处理,提升图像质量、缩短产品发布周期。

  • 自动化图像处理与效率提升:实现图像处理流程自动化,自动识别并标记需要优化的元素,减少人工干预。

功能介绍

元素定义

关于图片主体、图片背景以及四类元素的定义和示例图,可参见智能消除文档的"功能介绍"和"效果对比"段。本接口的元素枚举值与之保持一致。

  • 图片主体:图片中的核心产品区域。

  • 图片背景:除产品主体之外的其余部分。

  • 文字:横排 / 竖排 / 斜排的中英文。

  • 水印:单色透明的文字、徽标、图像、网址、店铺名等。

  • 含字色块:非主体外的含有文字的色块(牛皮癣)。

主要功能

  • 元素识别:识别图片主体和背景是否存在文字、Logo、水印、含字色块等元素。

  • 流程协同:与智能消除结合使用——先识别需要移除的元素,再有效移除,确保图像处理的准确性和效率。

技术优势

  • 同步批处理:作为同步接口,能在保持快速响应的同时处理大量图像,适应不同规模的业务需求。

  • 灵活性:可按需选择识别的元素类型与作用范围(主体或非主体),支持个性化的识别需求。

效果对比

原始图片

识别结果

image.png

【主体】

  • 水印:false

  • 文字:false

  • 含字色块:false

【非主体】

  • 水印:false

  • 文字:true

  • 含字色块:false

image.png

【主体】

  • 水印:false

  • 文字:false

  • 含字色块:false

【非主体】

  • 水印:true

  • 文字:true

  • 含字色块:true

支持识别的元素

枚举值

含义

定义

1

水印

单色透明的文字、徽标、图像、网址、店铺名等。

2

Logo

徽标或商标。

3

文字

横排 / 竖排 / 斜排的中英文。

4

含字色块

含有文字的色块,即牛皮癣(主体或非主体均可能出现,常见于促销贴纸、产地标签)。

智能消除一致,图片主体指核心产品区域,图片非主体指背景。两组检测参数可独立指定。

接口

POST /rest/ai/image/recognition

请求参数

参数

类型

必填

说明

ImageUrl

String

图片 URL。要求:JPG / JPEG / PNG / BMP / WEBP 格式;分辨率 256×256 至 3000×3000;文件 ≤ 10 MB。

ObjectDetectElements

Number[]

二选一

检测主体上的元素枚举值数组,取值 1-4。与 NonObjectDetectElements 不可同时为空。

NonObjectDetectElements

Number[]

二选一

检测非主体上的元素枚举值数组,取值 1-4。

ReturnCharacter

Number

是否返回识别区域的 OCR 文字结果:1 返回、0 不返回(默认)。

ReturnBorderPixel

Number

是否返回主体到画面边缘的距离:1 返回、0 不返回(默认)。返回值见 Data.BorderPixel

ReturnProductProp

Number

是否返回主体面积占比:1 / 0(默认)。

ReturnProductNum

Number

是否返回主体数量:1 / 0(默认)。

ReturnCharacterProp

Number

是否返回文字面积占比:1 / 0(默认)。生效前提ReturnCharacter=1ObjectDetectElementsNonObjectDetectElements 至少有一组包含 3(文字)。

响应字段

所有布尔字段命名遵循 主体 = Obj 前缀 / 非主体 = Noobj 前缀 + 元素名的规则。未在请求中指定的元素,返回值无意义(一般为 false)。

字段

类型

说明

Code

String

业务状态码。成功为 Success

Message

String

报错信息。成功时为 "ok"

Success

Boolean

本次调用是否成功。

RequestId

String

请求唯一标识。

Data

Object

返回的识别结果结构体信息。

Data.ObjWatermark

Boolean

主体上是否含水印。

Data.ObjLogo

Boolean

主体上是否含 Logo。

Data.ObjCharacter

Boolean

主体上是否含文字。

Data.ObjNpx

Boolean

主体上是否含字色块(语义见 1-4 枚举的"含字色块")。

Data.NoobjWatermark

Boolean

非主体上是否含水印。

Data.NoobjLogo

Boolean

非主体上是否含 Logo。

Data.NoobjCharacter

Boolean

非主体上是否含文字。

Data.NoobjNpx

Boolean

非主体上是否含字色块。

Data.RecText

String[]

OCR 识别出的文字数组。ReturnCharacter=1 时返回。

Data.BorderPixel

String

主体到画面四边的距离 + 原图宽高,格式 "top,bottom,left,right,width,height"ReturnBorderPixel=1 时返回。

Data.PdProp

String

主体面积占比,百分比字符串(如 "53.77%")。ReturnProductProp=1 时返回。

Data.PdNum

Number

主体数量。ReturnProductNum=1 时返回。

Data.TextProp

String

文字面积占比,百分比字符串(如 "7.56%")。生效前提见请求参数 ReturnCharacterProp

Data.UsageMap

Object

用量字段。

Data.UsageMap.ProcessedImageCount

Number

已处理图片张数,用于计费核对。

完整示例

请求示例

{
  "ImageUrl": "https://cbu01.alicdn.com/img/ibank/example.jpg",
  "ObjectDetectElements": [1, 2, 3, 4],
  "NonObjectDetectElements": [1, 2, 3, 4],
  "ReturnCharacter": 1,
  "ReturnBorderPixel": 1,
  "ReturnProductProp": 1,
  "ReturnProductNum": 1,
  "ReturnCharacterProp": 1
}

响应示例

{
  "Code": "success",
  "Message": "Success",
  "Success": true,
  "RequestId": "2157065A-D6C8-1F3E-A4D0-B1234567890",
  "Data": {
    "ObjWatermark": false,
    "ObjLogo": false,
    "ObjCharacter": false,
    "ObjNpx": false,
    "NoobjWatermark": true,
    "NoobjLogo": false,
    "NoobjCharacter": false,
    "NoobjNpx": false,
    "RecText": [],
    "BorderPixel": "154,26,36,59,790,895",
    "PdProp": "53.77%",
    "PdNum": 1,
    "TextProp": "0.0%",
    "UsageMap": { "ProcessedImageCount": 1 }
  }
}

使用建议

  • 仅检测非主体:电商主图最常见的是要消除背景水印 / Logo,不希望动到主体本身。直接调 NonObjectDetectElements=[1,2],根据返回 NoobjWatermark / NoobjLogo 再决定是否走智能消除

  • OCR 与文字占比组合:当你只关心"是不是品牌名"而非"任意文字"时,开启 ReturnCharacter=1 拿到 RecText 后再在客户端做关键词匹配。

  • 主体数量与面积PdNum > 1PdProp 异常小(如 < 10%)通常意味着原图复杂度高,后续抠图 / 裁剪结果可能不稳定,建议人工复核。

  • 批量场景:QPS = 5,多张图建议客户端做并发控制(如 4 个 worker),不要把整批同步发出去。

错误码

错误码

触发场景

InvalidParameter

ImageUrl 不可访问 / 图片格式或分辨率不在范围 / ObjectDetectElementsNonObjectDetectElements 同时为空。

InputContentBlocked

输入图片触发内容安全审核。

DownstreamUnavailable

图片下载失败 / 下游视觉模型暂时不可用。建议指数退避后重试。

FreeQuotaExhausted

试用额度已耗尽,需购买商品包或关闭"用完即停"。

InternalError

服务端内部错误。请保留 RequestId 联系技术支持。

完整错误码列表参见错误码

使用限制

  • 调用模式:同步。默认 QPS = 5,单次请求超时上限 30 秒。

  • 输入图片:JPG / JPEG / PNG / BMP / WEBP;分辨率 256×256 至 3000×3000;文件 ≤ 10 MB。

  • 计费¥0.02/张,按 ProcessedImageCount 计件。详见素材优化计费。

常见问题

智能元素识别 API 应该如何使用?

通常与智能消除配合使用——先自动筛选出含有目标元素的图片,再进行批量消除。本接口同时具备 OCR 能力,可帮助过滤出带文字的图片并识别图片中的文字内容。

如何理解"含字色块"?

一般指代牛皮癣,或者类似文字标签色块。

后续步骤

  • 智能消除 -- "先识别后消除"链路的第二步。

  • 智能出图 -- 把识别 + 消除 + 抠图 + 翻译等串联为异步任务。

  • 智能抠图 -- 配合 BorderPixel / PdProp 评估抠图可行性。