開始在 Azure 上使用物件偵測

已完成

您可使用先進的深度學習技術,建立物件偵測機器學習模型。 不過,這種方法需要大量專業知識和大量定型資料。 Azure 中的 Azure AI 自訂視覺服務,讓您用最少的深度學習專業知識和較少的定型影像,就可建立符合許多電腦視覺情節需求的物件偵測模型。

Azure AI 自訂視覺的 Azure 資源

使用 Azure AI 自訂視覺建立物件偵測解決方案,包含三個主要工作:

  • 上傳並標記影像
  • 將模型定型
  • 發佈定型的模型,讓用戶端應用程式可用來產生預測

針對上述每項工作,您需要 Azure 訂用帳戶中的資源。 您可使用下列類型的資源:

  • 自訂視覺: 適用於 Azure AI 自訂視覺的專用資源。 您可以建立 「定型」 資源、「預測」 資源,或 「定型」「預測」 資源。
  • Azure AI 服務: 包含 Azure AI 自訂視覺和其他許多 Azure AI 服務的一般資源。 您可使用這種類型的資源來進行「定型」、「預測」或兩者。

當想要個別追蹤模型定型的資源使用率,以及使用模型來預測影像類別的用戶端應用程式時,將定型和預測資源分開會很有用。 不過,這可能會讓開發影像分類解決方案變得有點複雜。

最簡單的方法是使用一般 Azure AI 服務資源來進行定型和預測。 當您使用一般資源時,您只需要關注一個「端點」 (裝載服務的 HTTP 位址) 和「金鑰」 (用戶端應用程式自我驗證所使用的祕密值)。

如果您選擇建立自訂視覺資源,您可以選擇「定型」「預測」兩者。 如果您選擇「兩者」,即會建立兩個資源,一個用於定型,另一個用於預測。

您也可以採取混搭方法,使用專用的自訂視覺資源進行定型,但將模型部署至 Azure AI 服務資源來進行預測。 使用此方法,請確保在相同的區域建立定型和預測資源。

影像標記

在可將物件偵測模型定型之前,必須先在一組定型影像中標記類別和周框方塊座標。 此流程可能非常耗時,但「自訂視覺入口網站」提供圖形化介面,讓這件事變得簡單。 介面可以自動偵測影像中的離散物件,並為您建議這些區域。 您可以在這些建議的周框方塊套用類別標籤,或拖曳以調整周框方塊區域。 此外,在使用初始資料集標記並定型之後,Azure AI 電腦視覺服務可使用「智慧標記」,以針對新增至定型資料集的影像來建議類別和周框方塊。

標記物件偵測的定型影像時,請記住一些重要考慮。 請確定您有足夠的問題物件影像,最好從多個角度。 此外,請務必確定周框方塊緊緊圍繞每個物件。

模型定型與評估

若要將模型定型,您可使用「自訂視覺入口網站」,或如果有所需的程式碼撰寫經驗,則可使用其中一個 Azure AI 自訂視覺的程式設計語言專屬軟體開發套件 (SDK)。 將物件偵測模型定型可能需要一些時間,視每個影像中的定型影像、類別及物件數目而定。

模型定型流程是一種反覆進行的流程。 Azure AI 自訂視覺會使用某些資料反覆定型模型,但會保留一些以評估模型。 在定型流程結束時,您可以使用下列評估計量來判斷定型模型的效能:

  • 精確度:模型正確識別類別預測的百分比為何? 例如,如果模型預測 10 張影像為橙色,而其中 8 張真正是橙色,則精確度為 0.8 (80%)。
  • 重新叫用率:模型正確進行類別預測的百分比為何? 例如,如果有 10 張蘋果影像,而模型找到其中 7 張,則重新叫用率為 0.7 (70%)。
  • 平均精度均值 (mAP): 將所有類別其精確度和重新叫用率都列入考量的整體計量。

使用模型進行預測

在定型模型並對其評估的效能感到滿意之後,即可將模型發佈到預測資源。 當發佈模型時,您可為其指派名稱 (預設為 "IterationX",其中 X 是已定型模型的次數)。

若要使用模型,用戶端應用程式開發人員需要下列資訊:

  • 專案識別碼:您為定型模型所建立自訂視覺專案的唯一識別碼。
  • 模型名稱:您在發佈期間指派給模型的名稱。
  • 預測端點:模型發佈對象的「預測」資源端點 HTTP 位址 (而不是定型資源)。
  • 預測金鑰:模型發佈對象的「預測」資源驗證金鑰 (而不是定型資源)。