分享方式:


貨架產品辨識 (預覽):使用預先訓練的模型分析貨架影像

開始使用產品辨識最快的方式是使用內建預先定型的 AI 模型。 透過產品辨識 API,您可以上傳貨架影像,並取得產品和間距的位置。

零售貨架的照片,其中產品和間隙透過矩形醒目顯示。

注意

影像中顯示的品牌不會與 Microsoft 建立關聯,也不會指出品牌擁有者簽署 Microsoft 或 Microsoft 產品的任何形式,或由 Microsoft 簽署品牌擁有者或其產品。

必要條件

  • Azure 訂用帳戶 - 建立免費帳戶
  • 擁有 Azure 訂用帳戶之後,在 Azure 入口網站中建立視覺資源。 其必須部署在支援的 Azure 區域中 (請參閱區域可用性)。 在其部署後,選取 [前往資源]
    • 您將需要來自所建立資源的金鑰和端點,以便將應用程式連線至 Azure AI 視覺服務。 您稍後會在此指南中將金鑰和端點貼到下列程式碼中。
  • 具有 Blob 儲存體容器的 Azure 儲存體資源。 建立一個
  • 已安裝 cURL。 或者,您可以使用不同的 REST 平台,例如 Swagger 或 VS Code 的 REST 用戶端擴充功能。
  • 架子影像。 您可以下載我們的範例映像或自備映像。 每個映像的檔案大小上限為 20 MB。

分析架子影像

若要分析架子影像,請執行下列步驟:

  1. 上傳您想要分析至 Blob 儲存體容器的影像,並取得絕對 URL。

  2. 將下列 curl 命令複製到文字編輯器。

    curl -X PUT -H "Ocp-Apim-Subscription-Key: <subscriptionKey>" -H "Content-Type: application/json" "<endpoint>/computervision/productrecognition/ms-pretrained-product-detection/runs/<your_run_name>?api-version=2023-04-01-preview" -d "{
        'url':'<your_url_string>'
    }"
    
  3. 視需要在命令中進行下列變更:

    1. 以您的視覺資源金鑰取代 <subscriptionKey>
    2. 以您的視覺資源端點取代 <endpoint>。 例如: https://YourResourceName.cognitiveservices.azure.com
    3. <your_run_name> 取代為工作佇列的唯一測試回合名稱。 這是非同步 API 工作佇列名稱,可供您稍後用來擷取 API 回應。 例如,.../runs/test1?api-version...
    4. <your_url_string> 內容取代為影像的 Blob URL
  4. 開啟 [命令提示字元] 視窗。

  5. 從文字編輯器將經過編輯的 curl 命令貼上到命令提示字元視窗中,然後執行該命令。

檢查回應

成功的回應會以 JSON 的形式傳回。 產品辨識 API 結果會在 ProductRecognitionResultApiModel JSON 欄位中傳回:

"ProductRecognitionResultApiModel": {
  "description": "Results from the product understanding operation.",
  "required": [
    "gaps",
    "imageMetadata",
    "products"
  ],
  "type": "object",
  "properties": {
    "imageMetadata": {
      "$ref": "#/definitions/ImageMetadataApiModel"
    },
    "products": {
      "description": "Products detected in the image.",
      "type": "array",
      "items": {
        "$ref": "#/definitions/DetectedObject"
      }
    },
    "gaps": {
      "description": "Gaps detected in the image.",
      "type": "array",
      "items": {
        "$ref": "#/definitions/DetectedObject"
      }
    }
  }
}

如需每個 JSON 欄位的定義,請參閱下列各節。

產品辨識結果 API 模型

產品辨識作業的結果。

名稱 類型​​ 描述 必要
imageMetadata ImageMetadataApiModel 影像中繼資料資訊,例如高度、寬度和格式。 Yes
products DetectedObject 影像中偵測到的產品。 Yes
gaps DetectedObject 在影像中偵測到間距。 Yes

影像中繼資料 API 模型

影像中繼資料資訊,例如高度、寬度和格式。

名稱 類型​​ 描述 必要
width 整數 影像的寬度,以像素為單位。 Yes
height 整數 影像的高度,以像素為單位。 Yes

偵測到的物件 API 模型

描述影像中偵測到的物件。

名稱 類型​​ 描述 必要
id string 偵測到物件的識別碼。 No
boundingBox BoundingBox 影像內區域的周框方塊。 Yes
tags TagsApiModel 偵測到物件的分類信賴度。 Yes

周框方塊 API 模型

影像內區域的周框方塊。

名稱 類型​​ 描述 必要
x 整數 區域左上方點的左座標,以像素為單位。 Yes
y 整數 區域左上方點的頂端座標,以像素為單位。 Yes
w 整數 從區域左上方點測量的寬度,以像素為單位。 Yes
h 整數 以像素為單位,從區域左上方點測量的高度。 Yes

影像標籤 API 模型

描述標籤的影像分類信賴度。

名稱 類型​​ 描述 必要
confidence float 分類預測的信賴度。 Yes
name string 分類預測的標籤。 Yes

下一步

在本指南中,您已了解如何使用預先訓練的產品辨識 REST API 進行基本分析呼叫。 接下來,了解如何使用自訂產品辨識模型,以更符合您的業務需求。