使用 OCI 願景自動化庫存管理
手動庫存管理可以是耗時且需要大量人力的流程。製造商往往難以持有庫存的更新庫存,以及追蹤位置,從而損失營收和未充分使用的資本。對大型遠端工廠或倉儲設施的現場庫存盤點處理,包括需要大量時間和資源的步驟、限制,而且容易發生錯誤。
OCI Vision 可藉由使用無人機 (或其他機器人) 能夠可靠且快速地觀察、盤點及報告資訊,來提供手動的庫存管理工作。
OCI Vision 是 Oracle Cloud Infrastructure 上數個 AI 服務的其中一種。OCI Vision 提供您運用機器學習和人工智慧所需的資料科學專業能力。OCI Vision 包含立即可用的預先建置模型,可內建映像檔識別和文字辨識功能,無須事先具備機器學習 (ML) 專業知識。這些模型也可用來偵測製造中的視覺異常、從文件擷取文字,以自動化業務工作流程。
此參考架構說明 Oracle Industry Lab 最近開發的概念驗證,其中目標是使用可程式化的無人機與經過訓練的自訂 OCI Vision 模型,作為自動化庫存盤點案例範例。
架構
下圖說明此參照架構的邏輯流程。

oci-vision-inventory-flow.png 圖解說明
開發處理作業的第一個步驟是使用 OCI 資料標註服務標記堆疊管道的資料集圖片。完成標籤之後,已建立 OCI Vision 專案和 OCI Vision 自訂模型。OCI Vision 自訂模型是使用堆疊管道映像檔的標記資料集來訓練。
- 透過 Skydio Cloud API 下載無人機圖片
- 將映像檔上傳至 OCI 物件儲存
- 計算管路
- 使用 Oracle Fusion Cloud Inventory Management API 更新 Oracle Cloud Enterprise Resource Planning 系統中的管路計數
建立的 OCI Vision 模型原生可提供每個已辨識物件的描述資料 (在此參照架構中:管道)。每個物件的描述資料都包含圍起物件的邊界方塊座標,以及信賴度值。原生回應中沒有總計,因此需要將其納入程式碼中。
OCI 事件用於自動化庫存管理處理。將映像檔上傳至物件儲存時,關聯的事件會觸發 OCI 函數。此函數會直接呼叫 Oracle Fusion Cloud Inventory Management API 來更新料號數目。
下圖顯示可對應至上方邏輯流程圖的範例參考架構。

oci-vision-inventory-arch.png 圖解說明
架構具有下列元件:
- OCI 願景
OCI Vision 是一種 AI 服務,可大規模執行深度學習型映像檔分析。有了立即可用的預先建置模型,開發者不需機器學習 (ML) 專業技術,即可輕鬆地將映像檔識別和文字辨識建置到應用系統中。對於特定產業的使用案例,開發者可以自動訓練自訂 Vision 模型與自己的資料。這些模型可用來偵測製造中的視覺異常、從文件擷取文字以自動化業務工作流程,以及標記影像中的項目以計算產品或出貨。
除了取得預先訓練的模型之外,開發者還可以建立客製化模型,而不需要具備資料科學專長,也可以管理客製化模型基礎架構。
- OCI 資料標籤功能
OCI 資料標註服務是 OCI 原生服務,可讓客戶建立及瀏覽資料集、檢視資料記錄 (文字、影像),以及套用標籤以進行 AI/ML 模型。此服務也提供互動式使用者介面,專為加註程序所設計。開發人員可以上傳原始影像、新增標籤以及標示影像區域。藉由將這些標籤新增至影像,就可以使用結果資料集來訓練自訂影像分類和物件偵測模型。
記錄加入標籤後,資料集可以匯出為以行分隔的 JSON,以便在 AI/ML 模型開發中使用。OCI 資料標籤功能也可以直接從其他服務 (例如 OCI Vision 和 OCI 語言) 存取,作為自訂模型訓練工作流程的一部分。偏好建置和訓練自己深度學習或自然語言處理模型的資料科學家可以透過 OCI Data Science 使用標記的資料集。
- 物件儲存
物件儲存可讓您快速存取任意內容類型的大量結構化和非結構化資料,包括資料庫備份、分析資料,以及影像和影片等豐富內容。您可以安全地儲存資料,然後直接從網際網路或雲端平台內擷取資料。順暢調整儲存體,不會發生任何效能或服務可靠性的降低情形。使用標準的「熱門」儲存空間,快速、立即、經常存取。將封存儲存體用於您長期保留的「冷」儲存體,極少或罕見地存取。
- 函數
Oracle Functions 是一個完全受管理、多租用戶、可高度擴展、隨選且 Functions-as-a-Service (FaaS) 平台。由 Fn Project 開放原始碼引擎提供技術支援。函數可讓您部署程式碼,並直接呼叫程式碼或觸發程式碼以回應事件。Oracle Functions 使用 Oracle Cloud Infrastructure Registry 代管的 Docker 容器。
- 事件
Oracle Cloud Infrastructure 服務會發出事件,這些事件是描述資源變更時的結構化訊息。系統會發出事件以建立、讀取、更新或刪除 (CRUD) 作業、資源生命週期狀態變更,以及影響雲端資源的系統事件。
- 網際網路閘道
網際網路閘道可允許 VCN 中公用子網路與公用網際網路之間的流量。
- 網路位址轉譯 (NAT) 閘道
NAT 閘道可讓 VCN 中的專用資源存取網際網路上的主機,而不會將這些資源暴露給內送網際網路連線。
建議
- 虛擬雲端網路 (VCN)
建立 VCN 時,請根據計畫要在 VCN 中連附至子網路的資源數目,決定所需的 CIDR 區塊數目與每個區塊的大小。使用標準專用 IP 位址空間內的 CIDR 區塊。
建立 VCN 時,請根據計畫要在 VCN 中連附至子網路的資源數目,決定所需的 CIDR 區塊數目與每個區塊的大小。使用標準專用 IP 位址空間內的 CIDR 區塊。
選取未與任何其他網路重疊的 CIDR 區塊 (在 Oracle Cloud Infrastructure 中、企業內部部署資料中心或其他雲端提供者),以設定專用連線。
建立 VCN 之後,您可以變更、新增以及移除其 CIDR 區塊。
設計子網路時,請考量您的流量和安全需求。將特定層或角色中的所有資源連附至相同的子網路,作為安全界限。
使用區域子網路。
- 函數
此架構使用函數以特定映像檔呼叫 OCI Vision REST API,然後儲存 OCI Vision 傳回的描述資料。可以使用 Java 或 Python SDK 建立函數。
- 事件
在此架構中,OCI 事件服務會設定為監聽建立物件儲存體的變更。服務會在物件上傳到物件儲存並呼叫函數進行處理之後呼叫。
- 物件儲存
將映像檔上傳至物件儲存時,關聯的事件可以作為項目計數 OCI 函數的觸發程式。此功能接著可直接呼叫 Oracle Fusion Cloud Inventory Management API 來更新料號數目。在此情況下,可以在物件儲存中儲存詳細的結果 (包括含有已新增界限方塊的映像檔) 以進行實行。封存儲存可以在此案例中使用,更符合成本效益的選項。
注意事項
建置此架構時,請考量下列各點。
- 使用者介面
在 Oracle Industry Lab Proof-concept 中,為了示範,我們開發了簡單的 Web 應用程式,可在輸入圖片上顯示框線,當作流程的步驟。如果需要,可以建立和使用這類 Web 應用程式,讓運算子透過查看邊界方塊來手動驗證物件數目。
- 存取
OCI Vision 支援透過 OCI 主控台、Java 和 Python SDK 從屬端及 OCI CLI 存取。測試時,建議您使用 CLI 工具或主控台。