應用程式、指令碼和範本範例 - AWS Panorama

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

應用程式、指令碼和範本範例

本指南的 GitHub 儲存庫提供 AWS Panorama 裝置的範例應用程式、指令碼和範本。使用這些範例來了解最佳實務並自動化開發工作流程。

範例應用程式

範例應用程式示範使用 AWS Panorama 功能和常見的電腦視覺任務。這些範例應用程式包含可自動設定和部署的指令碼和範本。使用最少的組態,您可以從命令列部署和更新應用程式。

  • aws-panorama-sample – 具有分類模型的基本電腦視覺。使用 AWS SDK for Python (Boto) 將指標上傳至 CloudWatch、儀器預先處理和推論方法,以及設定記錄。

  • debug-server – 在裝置上開啟傳入連接埠,並將流量轉送至應用程式碼容器。使用多執行緒同時執行應用程式碼、HTTP 伺服器和 HTTP 用戶端。

  • 自訂模型 – 從程式碼匯出模型,並使用 SageMaker AI Neo 編譯,以測試與 AWS Panorama 設備的相容性。在 Python 開發、Docker 容器或 Amazon EC2 執行個體上於本機建置。匯出和編譯特定 TensorFlow 或 Python 版本的所有 Keras 內建應用程式模型。

如需更多範例應用程式,也請造訪 aws-panorama-samples 儲存庫。

公用程式指令碼

util-scripts 目錄中的指令碼會管理 AWS Panorama 資源或自動化開發工作流程。

如需用量詳細資訊,請參閱 README

AWS CloudFormation 範本

使用 cloudformation-templates目錄中的 AWS CloudFormation 範本為應用程式建立資源 AWS Panorama 。

  • alarm-application.yml – 建立警示,監控應用程式是否有錯誤。如果應用程式執行個體引發錯誤或停止執行 5 分鐘,警示會傳送通知電子郵件。

  • alarm-device.yml – 建立監控裝置連線能力的警示。如果裝置停止傳送指標 5 分鐘,警示會傳送通知電子郵件。

  • application-role.yml – 建立應用程式角色。此角色包含將指標傳送至 CloudWatch 的許可。為您的應用程式使用的其他 API 操作將許可新增至政策陳述式。

  • vpc-appliance.yml – 為 AWS Panorama 設備建立具有私有子網路服務存取權的 VPC。若要將設備連接至 VPC,請使用 AWS Direct Connect 或 AWS Site-to-Site VPN。

  • vpc-endpoint.yml – 建立具有 AWS Panorama 服務私有子網路服務的 VPC。VPC 內的資源可以連線至 AWS Panorama 來監控和管理 AWS Panorama 資源,而無需連線至網際網路。

此目錄中的create-stack.sh指令碼會建立 AWS CloudFormation 堆疊。它需要變數數量的引數。第一個引數是範本的名稱,其餘的引數是範本中參數的覆寫。

例如,以下命令會建立應用程式角色。

$ ./create-stack.sh application-role

更多範例和工具

aws-panorama-samples 儲存庫有更多範例應用程式和有用的工具。

  • 應用程式 – 適用於各種模型架構和使用案例的範例應用程式。

  • 攝影機串流驗證 – 驗證攝影機串流。

  • PanoJupyter – 在 AWS Panorama 設備上執行 JupyterLab。

  • Sideloading – 在不建置或部署應用程式容器的情況下更新應用程式程式碼。

AWS 社群也開發了 的工具和指引 AWS Panorama。在 GitHub 上查看下列開放原始碼專案。

  • Cookiecutter-panorama – AWS Panorama 應用程式的 Cookiecutter 範本。

  • 背包 – 用於存取執行期環境詳細資訊、分析和其他影片輸出選項的 Python 模組。