AI News HubLIVE
站内改写4 分鐘閱讀

使用Amazon Nova 2 Lite進行目標檢測

本文介紹瞭如何通過Amazon Nova 2 Lite實現目標檢測,無需訓練模型或管理基礎設施。利用Amazon Bedrock、Lambda和API Gateway構建應用,通過自然語言提示即可檢測物體並獲取邊界框座標。涵蓋製造業、農業和物流等實際應用場景。

來源AWS Machine Learning Blog作者: Robert Stolz

傳統的計算機視覺解決方案通常需要大量的前期投入,包括數據管道、模型訓練基礎設施、計算資源以及專門的數據科學團隊,這對於小型公司或團隊來説往往難以承受。通過Amazon Bedrock提供的Amazon Nova 2 Lite提供了一個有吸引力的替代方案。這個多模態基礎模型可以通過自然語言提示檢測物體,無需任何訓練。只需指定“車輛”、“人”或“凹痕”,Nova就會以結構化JSON格式返回精確的邊界框座標。

在本篇文章中,我們將逐步介紹如何使用Amazon Nova 2 Lite實現目標檢測。您將學習如何利用Amazon Bedrock、AWS Lambda和Amazon API Gateway部署一個目標檢測應用。您還將學習如何設計有效的提示、處理結構化JSON輸出以及可視化結果。我們將探討在製造業、農業和物流領域的實際應用。

解決方案概述

在開始之前,請確保您具備以下條件:

  • AWS賬户及權限:有效AWS賬户並啓用Amazon Bedrock訪問權限,具備bedrock:InvokeModel的IAM權限,以及所在區域對Amazon Nova 2 Lite模型的訪問權。
  • AWS CLI已配置(用於部署)。
  • 開發環境(用於本地測試):Python 3.8或更高版本,AWS SDK for Python (Boto3) 1.28.0+,Python Imaging Library (PIL/Pillow)。
  • 安裝命令:pip install boto3 pillow

預估成本

  • Amazon Bedrock:每千個輸入令牌0.0003美元,每千個輸出令牌0.0025美元。
  • 典型圖像:約230個輸入令牌(約0.000069美元/圖像)和約200個輸出令牌(約0.0005美元/圖像)。
  • 示例:10,000張圖像約5.69美元。
  • AWS Lambda、Amazon API Gateway:按使用量付費(測試時成本極低)。
  • 時間預估:30-45分鐘。

目標檢測解決方案通過四個主要步驟識別和定位圖像中的物體:

  1. 提示工程:結構化提示以指定物體和期望的JSON輸出格式。
  2. Amazon Bedrock:調用Amazon Bedrock訪問Amazon Nova 2 Lite,無需管理基礎設施,並從響應中提取邊界框信息。
  3. 座標處理:將Nova的歸一化座標(0-1000範圍)轉換為像素位置。
  4. 可視化:在圖像上渲染邊界框以供驗證。

您通過Amazon Bedrock的Converse API發送圖像和待檢測物體列表。Amazon Nova 2 Lite分析圖像並返回包含每個檢測物體邊界框座標的JSON響應。然後根據圖像尺寸將歸一化座標(0-1000範圍)轉換為像素位置。最後,通過在原始圖像上繪製邊界框來可視化結果。

提示設計

提示工程在實現準確檢測中扮演重要角色。提示模板包含精心設計的指令集,指定了關鍵要求。模板中的兩個變量elements和schema根據檢測物體類型動態構建,使提示模板能夠處理任意物體類別而無需修改。

提示示例包括:目標、指令、輸出要求和示例JSON結構。完整的提示內容請參閲GitHub倉庫。

示例:街景檢測

我們使用Nova 2 Lite測試了一張街景圖像。無需任何訓練或微調,我們要求Nova檢測“車輛”和“停車標誌”兩種物體。如圖1所示,Nova不僅準確檢測出明顯物體,還能檢測出小型、遙遠或部分遮擋的物體。邊界框緊密貼合物體邊界,間隙極小。Nova僅使用基本的物體名稱如“車輛”和“停車標誌”就實現了這樣的精度。

雲端部署

Amazon Bedrock提供了對Amazon Nova 2 Lite的API訪問,這意味着您可以從任何AWS計算服務中調用它。選擇最適合您工作負載的服務。對於事件驅動的工作負載和API端點,AWS Lambda提供自動擴展和按調用付費模式,消除了空閒成本。如果您需要更多控制運行時環境或具有長時間運行的進程,Amazon EC2提供了完全靈活性。對於基於容器的部署,可使用Amazon ECS或Amazon EKS。

無論選擇哪種計算服務,它們都調用相同的Amazon Bedrock Converse API與Nova模型交互。這種一致性使目標檢測能夠輕鬆集成到現有基礎設施中,或在計算平台之間遷移。

構建目標檢測應用

我們構建了一個示例無服務器Web應用,展示瞭如何使用Amazon Nova 2 Lite進行目標檢測。該概念驗證包括Web界面、安全基礎設施和自動擴展。您可以在幾分鐘內部署到自己的AWS賬户。

該應用採用無服務器優先架構,多個AWS服務協同工作。Amazon CloudFront通過Origin Access Control從私有Amazon S3存儲桶提供單頁應用,提供全球分發和HTTPS強制。用户上傳圖像並指定待檢測物體後,前端發送請求到Amazon API Gateway,再由其路由到AWS Lambda函數。

Lambda函數作為編排層,調用Amazon Bedrock的Converse API將圖像和檢測提示發送給Amazon Nova 2 Lite。Nova返回每個檢測物體的歸一化邊界框座標,Lambda函數將其轉換為像素位置並在圖像上繪製標註框。標註後的結果通過相同路徑返回:Lambda到API Gateway再到前端。用户即可看到帶有檢測物體高亮的圖像。

圖2展示了無服務器目標檢測示例應用的架構。

自行嘗試

完整源代碼(包括所有AWS CDK基礎設施定義和Lambda函數)可在GitHub倉庫中找到。安裝AWS CLI和AWS CDK並在Amazon Bedrock控制台中啓用Amazon Nova 2 Lite訪問後,部署非常簡單直接。

這個無服務器模式展示了使用Nova模型構建AI應用的速度。由於所有內容均為基礎設施即代碼,您可以對完整應用棧進行版本控制,並在多個環境或AWS賬户中一致部署。

清理資源

為避免持續產生費用,請刪除本教程中創建的資源。

  • 如果部署了示例應用:運行cdk destroy刪除CloudFormation堆棧,並驗證資源已移除。
  • 手動清理(如需):刪除S3存儲桶及其內容,移除Lambda函數,刪除API Gateway端點,移除CloudFront分發。
  • 成本影響:Amazon Bedrock API調用按使用付費,無持續基礎設施成本。刪除部署資源後,僅在調用API時產生費用。

實際應用

以下示例展示了Amazon Nova 2 Lite在跨行業實際用例中的應用。

製造業質量控制

一家金屬加工廠每月處理10,000個零件。每個有缺陷的零件發運後會產生50-200美元的退貨和返工成本。訓練傳統計算機視覺模型所需的大量前期投資通常難以承受。藉助Amazon Nova 2 Lite,該工廠實現了質量檢測自動化。他們指定缺陷如“劃痕”、“凹痕”或“鏽斑”,系統自動識別。每個零件分析5張圖像,每月成本約8美元。

精準農業

一個5,000英畝的農場在20周生長季內每週拍攝無人機圖像,以儘早發現作物問題。早期檢測可防止化學品過度施用和作物損害。農場指定:“病葉”、“蟲害”、“真菌”。每季處理120萬張高分辨率圖像的成本約200美元。同樣的方法使GPS引導設備能夠檢測障礙物(如“車輛”、“設備”、“碎片”),可能實現自主田間作業。

物流與配送

配送中心通過指定“破損箱子”、“壓扁包裹”、“水漬”來檢測損壞包裹。系統自動標記需要檢查的物品並將其路由到質量控制區域,確保整個運營過程中標準一致。這種方法還可擴展到庫存監控(如“空貨架”、“放錯物品”)和安全合規(如“安全帽”、“安全背心”、“安全眼鏡”),使計算機視覺適用於各種規模的運營。

結論

在本文中,我們展示了Amazon Nova 2 Lite如何使目標檢測變得易於使用。通過自然語言提示指定物體名稱,您可以在數小時內而不是數月內部署計算機視覺應用,無需管理任何基礎設施。它通過單個API提供目標檢測性能,採用按需付費的成本結構,且無需機器學習專業知識。

準備好嘗試了嗎?從我們的GitHub倉庫部署示例應用,或在Amazon Bedrock控制台中探索Amazon Nova模型。