地堆面积推理

更新时间:
复制 MD 格式

地堆面积预测是基于多模态大模型(MLLM)构建的线下陈列面积计算能力,面向商超巡检、堆头核查、品牌陈列审计等场景。根据地堆整体图、已检测商品的 SKU 及边界框,结合知识库中的商品真实尺寸和标准参考图,自动分析商品摆放方式并输出地堆两条边的实际长度及占地面积,可直接用于陈列展示、规则判断和品牌执行核查。同步调用,单次请求即返回结果。

能力试用请访问控制台:https://ecoa.console.aliyun.com/inspect/capabilities

1、产品简介

地堆面积预测是基于多模态视觉理解能力构建的线下陈列面积计算产品,面向商超巡检、堆头核查、品牌陈列审计等需要估算商品地堆实际占地面积的场景。

产品接收调用方提供的一张地堆整体图,以及图中已检测商品的 SkuId 和归一化边界框。同时,调用方需传入目标 SKU 所在知识库的 RagId。服务端据此定位对应 SKU 知识库,自动获得商品名称、真实长宽高和标准参考图,再结合目标图中的商品摆放方式,最终输出地堆两条边的实际长度和占地面积。

调用方无需在每次请求中重复传入 SKU 名称、真实尺寸和参考图,但请求中的 SkuId 必须已经在对应 RagId 知识库中完成建设。目标图中未通过 Products[].Boxes 明确传入的其他商品,不参与本次地堆面积计算。

接口可直接对接线下巡检系统、门店陈列管理平台、品牌执行核查系统和地堆面积统计系统,支持客户根据返回的两条边长度和最终面积完成结果展示、规则判断及后续业务处理。

2、适用场景

  1. 线下地堆占地面积计算:根据门店巡检图中的商品检测框和 SKU 真实尺寸,计算地堆占地外接矩形的长、宽及面积。

  2. 品牌陈列执行核查:将模型输出面积与品牌陈列协议、门店执行标准或活动要求进行比对。

  3. 多 SKU 混合地堆计算:支持一个地堆中出现多个不同 SKU,并结合各自知识库中的真实长、宽、高计算最终面积。

  4. 同 SKU 多实例计算:同一 SKU 在目标图中出现多个独立实例时,可在同一个 Products[].Boxes 中传入多个 Box,由模型综合计算最终面积。

  5. 批量巡检图片处理:同一巡检任务包含多张目标图时,每张目标图分别调用一次接口,SKU 知识库资产可以复用。

  6. 多知识库查询:通过 RagId 指定查询范围,从对应 SKU 知识库拉取资产。

3、功能介绍

  1. 按知识库定位 SKU 资产:调用方传入 RagId 和 SkuId。服务端在指定知识库中查询 SKU 名称、真实长度、宽度、高度和标准参考图。SKU 名称及尺寸以建库结果为准,不在调用时临时生成或推断。

  2. 多模态输入自动拼装:服务端将地堆整体图、SKU 标准参考图、SKU 元数据和商品 Boxes 按算法约定顺序拼装为领域模型输入。

  3. 结构化面积结果输出:领域结果仅返回 Stage 4 面积计算结果,包括两条边的米制长度及最终 area_m2。

  4. 请求追踪与面积结果返回:对外响应透出 ReqId 与领域面积结果 Result,便于调用方关联请求并获取 Stage 4 面积。

  5. 支持的输入格式:当前支持服务端可访问的 HTTPS 图片 URL。每次请求传入一张地堆目标图,以及一组已经由上游检测得到的 SKU 和 Boxes。

4、开发指南

4.1 请求参数

外层业务字段统一使用首字母大写的驼峰命名(PascalCase)。

4.1.1 顶层参数

参数名

类型

必填

说明

ReqId

String

否

调用方自定义请求 ID,用于链路追踪。建议每张目标图使用唯一 ID。

TargetImageUrl

String

是

待计算面积的地堆整体图 HTTPS URL。每次请求传入一张目标图。

RagId

String

是

目标 SKU 所在知识库的知识库 ID。服务端将在该知识库中按 SkuId 查询资产。

Products

Array

是

目标图中已检测到的商品列表,至少包含一个 SKU。

说明:

  • RagId 不能为空。

  • 同一请求中的全部 SkuId,都应能在该 RagId 对应知识库中查询到完整资产。

  • 更换知识库时,请同步修改 RagId,不要沿用错误的库 ID。

4.1.2 Products 内部结构

字段路径

类型

必填

说明

Products[].SkuId

String

是

SKU 唯一 ID,用于在 RagId 指定的知识库中查询 SKU 资产。

Products[].Boxes

Array

是

该 SKU 在目标图中的商品实例框,至少包含一个 Box。

关键约束:

  • 同一请求中不得重复提交相同的 SkuId。

  • 同一 SKU 的多个实例应合并在同一个 Products[] 元素的 Boxes 中。

  • SkuId 必须已经在对应 RagId 知识库中完成建设。

  • 调用方不需要传 SkuName、尺寸或参考图。

4.1.3 Boxes 内部结构

字段路径

类型

必填

说明

Products[].Boxes[].Left

Number

是

边界框左边界,取值范围 [0,1000]。

Products[].Boxes[].Top

Number

是

边界框上边界,取值范围 [0,1000]。

Products[].Boxes[].Right

Number

是

边界框右边界,必须大于 Left。

Products[].Boxes[].Bottom

Number

是

边界框下边界,必须大于 Top。

边界框坐标格式为:

[Left, Top, Right, Bottom]

坐标范围与方向约束:

0 <= Left < Right <= 1000
0 <= Top < Bottom <= 1000

上游检测框为像素坐标时,可按目标图宽高转换为归一化坐标:

Left   = pixelLeft   / imageWidth  × 1000
Top    = pixelTop    / imageHeight × 1000
Right  = pixelRight  / imageWidth  × 1000
Bottom = pixelBottom / imageHeight × 1000

4.2 请求示例

接口内部包含 SKU 查询、多模态 Prompt 拼装和领域模型推理。建议调用方将整体请求超时设置为至少 300 秒,并结合正式服务 SLA 预留网关和网络耗时。

{
  "ReqId": "didui-area-20260728-001",
  "TargetImageUrl": "https://example.com/images/store-001/didui-001.jpg",
  "RagId": "rag_xxxxxxxxxxxxxxxx",
  "Products": [
    {
      "SkuId": "yl_whh_whh_adg220P_24X_1",
      "Boxes": [
        {
          "Left": 85,
          "Top": 330,
          "Right": 268,
          "Bottom": 655
        },
        {
          "Left": 270,
          "Top": 332,
          "Right": 448,
          "Bottom": 656
        }
      ]
    },
    {
      "SkuId": "yl_whh_whh_gylzbbz360P_12X_2",
      "Boxes": [
        {
          "Left": 450,
          "Top": 315,
          "Right": 625,
          "Bottom": 658
        },
        {
          "Left": 626,
          "Top": 317,
          "Right": 806,
          "Bottom": 660
        }
      ]
    }
  ]
}

图片要求

  • 图片地址必须使用 HTTPS,且能够被服务端正常访问。

  • 支持 JPEG、PNG、WebP 等常见图片格式。

  • 图片应完整覆盖需要计算面积的地堆区域。

  • 避免严重模糊、过曝、欠曝和大面积遮挡。

  • 使用签名 URL 时,建议有效期不少于 30 分钟。

  • 同一巡检任务存在多张目标图时,每张目标图分别调用一次接口。

SKU 知识库前置要求

调用前,请确认:

  1. 已准备好目标 SKU 所在知识库的 RagId。

  2. 请求中的每个 SkuId,均已在该知识库中维护以下信息:

字段

类型

说明

SkuName

String

SKU 正式名称

LengthCm

Number

SKU 长度,单位 cm

WidthCm

Number

SKU 宽度,单位 cm

HeightCm

Number

SKU 高度,单位 cm

ReferenceImageUrls

Array

SKU 标准参考图 HTTPS URL,当前约定两张

若 RagId 不正确,或 SkuId 未在对应知识库中建库,请求会在模型推理前被拦截并返回业务错误。

4.3 响应参数

对外仅透出以下两个顶层字段。

4.3.1 顶层字段

字段

类型

含义

说明

ReqId

String / Null

请求 ID

与调用方传入的 ReqId 一致。

Result

Object / Null

地堆面积领域结果

成功解析时仅包含 Stage 4 面积结果;无法解析时为 null。

4.3.2 Result 内部结构

Result 仅包含面积计算结果:

字段路径

类型

含义

Result.stage4_area_label

Object

Stage 4:两条边的米制长度和最终面积

4.3.3 Stage 4:面积结果

字段路径

类型

说明

stage4_area_label.left_edge_m

Number

左边长度,单位 m

stage4_area_label.right_edge_m

Number

右边长度,单位 m

stage4_area_label.area_m2

Number

地堆占地面积,单位 m²

计算规则:

area_m2      = left_edge_m × right_edge_m

面积及边长按算法约定四舍五入到 4 位小数。

4.4 响应示例

1)多个 SKU 的地堆面积结果

{
  "ReqId": "didui-area-20260728-001",
  "Result": {
    "stage4_area_label": {
      "left_edge_m": 1.35,
      "right_edge_m": 0.6,
      "area_m2": 0.81
    }
  }
}

2)SkuId 未完成知识库建设 / 入参校验失败

该情况在调用模型前被拦截,对外响应中 Result 为 null:

{
  "ReqId": "didui-area-20260728-002",
  "Result": null
}

3)同一 SKU 出现多个独立实例

请求时将多个实例放入同一个 Products[].Boxes:

{
  "ReqId": "didui-area-20260728-003",
  "TargetImageUrl": "https://example.com/images/store-001/didui-002.jpg",
  "RagId": "rag_xxxxxxxxxxxxxxxx",
  "Products": [
    {
      "SkuId": "yl_whh_whh_adg220P_24X_1",
      "Boxes": [
        {
          "Left": 100,
          "Top": 300,
          "Right": 280,
          "Bottom": 640
        },
        {
          "Left": 282,
          "Top": 301,
          "Right": 462,
          "Bottom": 642
        },
        {
          "Left": 464,
          "Top": 302,
          "Right": 644,
          "Bottom": 643
        }
      ]
    }
  ]
}

模型会综合目标图、商品实例框和知识库信息计算,并仅返回 Stage 4 面积结果。

4.5 错误码

错误码

5、计费方式

0.15 元/次(暂定)。