分類影像 - Rekognition

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

分類影像

本教學課程說明如何為模型建立專案和資料集,以分類影像中的物體、場景和概念。模型會對整個影像進行分類。例如,透過跟隨此教學課程,您可以培訓模型以辨識家居位置,例如客廳或廚房。本教學課程還會向您展示如何使用模型來分析影像。

在開始本教學課程之前,建議您先閱讀 了解 Amazon Rekognition 自訂標籤

在本教學課程中,您會從本機電腦上傳的影像來建立培訓和測試資料集。稍後,您可以為培訓和測試資料集中的影像指派影像層級標籤。

您建立的模型將影像分類為屬於您指派給培訓資料集影像的影像層級標籤合集。例如,培訓資料集中的影像層級標籤集為 kitchenliving_roompatiobackyard,則模型可能會在單一影像中找到所有這些影像層級標籤。

注意

您可以為不同目的建立模型,例如尋找影像上物體的位置。如需詳細資訊,請參閱決定模型類型

步驟 1:收集您的影像

您需要兩組影像。一組可新增至培訓資料集。另一組則添加至您的測試資料集。影像應代表您希望模型分類的物體、場景和概念。影像必須為PNG或JPEG格式。如需詳細資訊,請參閱準備影像

您應該至少有 10 個用於培訓資料集的影像和 10 個用於測試資料集的影像。

如果您還沒有影像,請使用 Rooms 範例分類專案中的影像。建立專案後,培訓和測試影像會位於以下 Amazon S3 儲存貯體的位置:

  • 培訓圖片 — s3://custom-labels-console-region-numbers/assets/rooms_version number_test_dataset/

  • 測試圖片 — s3://custom-labels-console-region-numbers/assets/rooms_version number_test_dataset/

region是您使用 Amazon Rekognition 自訂標籤主控台所在的 AWS 區域。 numbers是控制台分配給存儲桶名稱的值。 Version number是範例專案的版本號碼,從 1 開始。

以下步驟將 Rooms 專案中的影像儲存到電腦上名為 trainingtest 的本機資料夾。

下載 Rooms 範例專案影像文件
  1. 建立 Rooms 專案。如需詳細資訊,請參閱步驟 1:選擇範例專案

  2. 開啟命令提示字元並輸入以下命令來下載培訓影像。

    aws s3 cp s3://custom-labels-console-region-numbers/assets/rooms_version number_training_dataset/ training --recursive
  3. 在命令提示字元處,輸入以下命令以下載測試影像。

    aws s3 cp s3://custom-labels-console-region-numbers/assets/rooms_version number_test_dataset/ test --recursive
  4. 將培訓資料夾中的兩個影像移至您選擇的單獨資料夾。您將使用這些影像來嘗試在 步驟 9:使用模型分析影像 中培訓的模型。

步驟 2:決定課程

列出您希望模型尋找的課堂清單。例如,您正在培訓模型來識別房屋中的房間,則可以將以下影像分類為 living_room

舒適的客廳,壁爐,豪華沙發,扶手椅,俯瞰戶外。

每個類別對應到一個影像層級標籤。稍後,您可以為培訓和測試資料集中的影像指派影像層級標籤。

如果您使用 Rooms 範例專案中的影像,則影像層級標籤將會是 後院浴室睡房衣櫃入口通道樓層平面圖前院廚房生活空間露臺

步驟 3:建立專案

要管理您的資料集和模型,您需要建立一個專案。每個專案都應該解決一個使用案例,例如識別房屋中的房間。

建立專案 (主控台)
  1. 如果您尚未這麼做,請設定 Amazon Rekognition 自訂標籤主控台。如需詳細資訊,請參閱設定 Amazon Rekognition 自訂標籤

  2. 登入 AWS Management Console 並開啟亞馬遜重新認知主控台,位於。https://console.aws.amazon.com/rekognition/

  3. 在左側視窗中,選擇 使用自訂標籤。畫面將會顯示 Amazon Rekognition 自訂標籤的登入頁面。

  4. 在 Amazon Rekognition 自訂標籤登入頁面,選擇 開始使用

  5. 在左側導覽視窗中,選擇 專案

  6. 在專案頁面上,選擇 建立專案

  7. 專案名稱 中,輸入您的專案名稱。

  8. 選擇 建立專案 以建立您的專案。

    用戶界面形式創建一個名為「我的項目」與字段輸入項目名稱和取消或創建項目按鈕的新項目。

步驟 4:建立培訓和測試資料集

在此步驟中,您透過從本機電腦上傳影像來建立培訓資料集和測試資料集。您一次最多可以上傳 30 張圖片。如果您有大量影像需要上傳,請考慮透過從 Amazon S3 儲存貯體匯入影像來建立資料集。如需更多詳細資訊,請參閱 從 Amazon S3 存儲桶導入圖像

如需更多有關資料集的詳細資訊,請參閱 管理資料集

使用本機電腦 (主控台) 上的影像建立資料集
  1. 在專案的詳細頁面上,選擇 建立資料集

    在訓練模型工作流程中建立資料集步驟:建立資料集按鈕,用於上傳影像和標籤以訓練模型。
  2. 開始配置 的區段中,選擇 從培訓資料集和測試資料集開始

  3. 培訓資料集詳細資料 的區段中,選擇 從電腦上傳影像

  4. 測試資料集詳細資料 的區段中,選擇 從電腦上傳影像

  5. 選擇 建立資料集

    用於建立訓練和測試資料集的使用者介面。在底部創建數據集和取消按鈕。
  6. 隨即會顯示資料集頁面,其中包含對應資料集的培訓索引標籤和測試索引標籤。

  7. 在資料集頁面上,選擇 培訓 標籤。

  8. 選擇 動作,然後選擇 新增影像至培訓資料集

    資料集檢視表顯示在「動作」功能表下將影像新增至訓練和測試資料集的選項。
  9. 新增影像至培訓資料集 的對話框中,選擇 選擇檔案

    用於上傳用於訓練資料集的影像檔案的按鈕。
  10. 選擇要上傳至資料集的影像。您一次最多可以上傳 30 張圖片。

  11. 選擇 上傳影像。Amazon Rekognition 自訂標籤可能需要幾秒鐘的時間才能將影像新增至資料集。

    網格顯示 11 個影像縮圖,可供上傳至訓練資料集。
  12. 如果您有更多影像要新增至培訓資料集中,請重複步驟 9-12。

  13. 選擇測試標籤。

  14. 重複步驟 8-12,將影像新增至測試資料集。在步驟 8 中,選擇 動作,然後選擇 新增影像至測試資料集

步驟 5:新增標籤至專案

在此步驟中,您將為步驟 步驟 2:決定課程 中識別的每個類別新增一個標籤到專案中。

新增標籤 (主控台)
  1. 在資料集庫頁面上,選擇 開始標籤,進入標籤模式。

    資料集庫介面顯示為影像加上標籤的步驟:檢閱、新增標籤、使用邊界方框標示物件位置,以及訓練模型。開始標籤按鈕突出顯示。
  2. 在資料集庫的 標籤 的區段中,選擇 編輯標籤 以開啟 管理標籤 的對話框。

  3. 在編輯框中,輸入新標籤名稱。

  4. 選擇 新增標籤

  5. 重複步驟 3 和 4,直至建立完所需的所有標籤為止。

  6. 選擇 儲存 以儲存您新增的標籤。

步驟 6:為培訓和測試資料集指派影像層級標籤

在此步驟中,您將為培訓和測試資料集中的每個影像指派單一影像層級。影像層級標籤是每個影像所代表的類別。

將影像層級標籤指派給影像 (主控台)
  1. 資料集 的頁面上,選擇 培訓 標籤。

  2. 選擇 開始標記 以進入標記模式。

  3. 選擇要新增標籤的一張或多張影像。您一次只能選取單一頁面上的影像。若要在頁面上選取連續範圍的影像:

    1. 選取第一個影像。

    2. 按住 Shift 鍵。

    3. 選取第二個影像。同時選取第一個影像和第二個影像之間的影像。

    4. 放開 Shift 鍵。

  4. 選擇 指派影像層級標籤

    界面顯示三個住宅後院圖像,帶有「分配圖像級別標籤」按鈕。
  5. 分配影像層級標籤至選取的影像 對話框中,選取要指派給一或多個影像的標籤。

  6. 選擇 指派,為影像指派標籤。

    顯示如何使用「指派」按鈕將影像層級標籤「後院」指派給選取的影像的對話方塊。
  7. 重複標記,直至每個影像都用所需的標籤進行註釋。

  8. 選擇測試標籤。

  9. 重複步驟,將影像層級標籤指派給測試資料集影像。

步驟 7:培訓您的模型

請使用以下步驟來訓練模型。如需詳細資訊,請參閱培訓 Amazon Rekognition 自訂標籤模型

培訓您的模型(主控台)
  1. 資料集 頁面上,選擇 訓練模型

    訓練模型按鈕,用於在目前專案中的資料集上訓練機器學習模型。
  2. 培訓模型 的頁面上,選擇 培訓模型。您專案的 Amazon 資源名稱 (ARN) 位於選擇專案編輯方塊中。

    列車模型配置頁面顯示項目ARN輸入字段,空標籤部分和訓練模型按鈕。
  3. 您是否要訓練模型?的對話框中,選擇訓練模型

    詢問「您要訓練模型嗎?」的對話方塊 帶有取消和訓練模型按鈕。
  4. 在專案頁面的 模型 區段中,您可以看到培訓正在進行中。您可以透過查看模型版本的 Model Status 欄來檢查目前狀態。培訓模型需要一段時間才能完成。

    顯示「TRAINING_IN_PROGRESS」的模型狀態,表示目前正在訓練模型。
  5. 訓練完成後,請選擇模型名稱。模型狀態為 TRAINING_ 時,訓練已完成COMPLETED。

    房間 19 模型資訊顯示狀態 TRAINING _ COMPLETED 表示模型已準備就緒。
  6. 選擇評估按鈕以查看評估結果。如需評估模型的資訊,請參閱 改善訓練過的 Amazon Rekognition 自訂標籤模型

  7. 選擇檢視測試結果,以查看個別測試影像的結果。如需詳細資訊,請參閱用於評估模型的指標

    模型評估結果顯示 F1 分數、平均精確度以及 10 個影像標籤的整體回收率,以及每個標籤效能指標。
  8. 查看測試結果後,選擇模型名稱以返回模型頁面。

    顯示後院和前院影像資料集上訓練模型的測試結果的介面,並顯示預測的標籤和可信度分數。

步驟 8:啟動模型

在此步驟中,您可以啟動模型。模型啟動後,您即可將其用於分析影像。

您需要根據模型執行時間付費。如果您不需要分析影像,請停止您的模型。您可以在稍後時間重新啟動您的模型。如需詳細資訊,請參閱執行培訓過的 Amazon Rekognition 自訂標籤模型

啟動模型
  1. 選擇模型頁面上的使用模型索引標籤。

  2. 啟動或停止模型區段中,執行以下操作:

    1. 選擇 啟動

      顯示「開始模型」按鈕的使用者介面,以及啟動或停止用於偵測自訂標籤的機器學習模型的選項。選取要增加輸送量的推論單元數目。
    2. 啟動模型的對話框中,選擇啟動

      使用「開始」按鈕啟動模型對話框。
  3. 等待模型執行。當啟動或停止模型的區域中的狀態為執行中時,表示模型正在執行中。

    帶有綠色圓圈的執行狀態指示器,指示模型目前正在執行中,以及停止模型或變更推論單元數目的選項。

步驟 9:使用模型分析影像

您可以透過呼叫 DetectCustomLabelsAPI. 在此步驟中,您可以使用 detect-custom-labels AWS Command Line Interface (AWS CLI) 指令來分析範例影像。您可以從 Amazon Rekognition 自訂標籤主控台取得 AWS CLI 命令。控制台配置 AWS CLI 命令以使用您的模型。您只需要提供儲存在 Amazon S3 儲存貯體中的影像。

注意

主控台還會提供 Python 範例程式碼。

來自 detect-custom-labels 的輸出包括在影像中找到的標籤清單、邊界框 (如果模型尋找物體位置),以及模型對預測準確度的信賴度。

如需詳細資訊,請參閱使用經過培訓的模型分析圖像

分析影像 (主控台)
  1. 如果您還沒有,請設定 AWS CLI. 如需說明,請參閱 步驟 4:設定 AWS CLI 和開 AWS 發套件

  2. 選擇使用模型選項卡,然後選擇API代碼

    顯示模型詳細信息的界面,可選擇顯示 Amazon 資源名稱(ARN)和API代碼以使用模型。
  3. 選擇AWSCLI命令

  4. 在「分析映像」區段中,複製呼叫的 AWS CLI 指令detect-custom-labels

    AWSCLI用於使用自定義模型分析圖像的命令,顯示要替換的項目ARN和存儲桶名稱佔位符。
  5. 將影像上傳至 Amazon S3 儲存貯體。如需指示說明,請參閱 Amazon 簡單儲存服務使用者指南 中的 上傳物體至 Amazon S3。如果您正在使用 Rooms 專案中的影像,請使用您在 步驟 1:收集您的影像 中移至單獨資料夾的影像之一。

  6. 於指令提示下,輸入您在上一個步驟中複製的 AWS CLI 指令。輸出應該如以下範例所示。

    的值--project-version-arn應該是模型的 Amazon 資源名稱 (ARN)。--region 的值應該是您在其中建立模型的 AWS 區域。

    MY_BUCKETPATH_TO_MY_IMAGE 變更為您在上一步驟中所使用的 Amazon S3 儲存貯體和影像。

    如果您使用custom-labels-access設定檔取得認證,請新增--profile custom-labels-access參數。

    aws rekognition detect-custom-labels \ --project-version-arn "model_arn" \ --image '{"S3Object": {"Bucket": "MY_BUCKET","Name": "PATH_TO_MY_IMAGE"}}' \ --region us-east-1 \ --profile custom-labels-access

    AWS CLI 命令的JSON輸出看起來應該類似於以下內容。 Name是模型找到的影像層級標籤名稱。 Confidence(0-100) 是模型對預測準確性的信心。

    { "CustomLabels": [ { "Name": "living_space", "Confidence": 83.41299819946289 } ] }
  7. 繼續使用模型分析其他影像。如果不再使用,請停止模型。

步驟 10:停止模型

在此步驟中,您將停止執行模型。您需要根據模型執行時間付費。如果您已使用完成,請停止模型。

停止模型
  1. 啟動或停止模型區段中,選擇停止

    「停止」(Stop) 按鈕可停止目前執行中的模型並停用推論單元。
  2. 停止模型對話框中,輸入 停止,以確認您要停止模型。

    輸入「stop」的輸入字段,並輸入「停止」按鈕以確認停止模型。
  3. 選擇停止,以停止模型。當 啟動或停止模型 的區段中的狀態顯示為 已停止 時,模型即已停止。

    已停止狀態指示器,其中包含模型未執行且需要使用 [開始] 按鈕或程式碼範例啟動的說明。