邊緣計算機視覺正迅速成為許多垂直業務領域的關鍵功能,幫助解決關鍵業務問題。它為分析基本數據提供了許多機會,并實時或近乎實時地提供有價值的信息,以便立即采取行動。與傳統的項目部署不同,計算機視覺項目(以及一般的 AI 項目)從概念驗證到生產需要更長的時間。成功的實施帶來了更高的自動化程度、更高的運營效率、更低的成本、更少的浪費和更高的可預測性。計算機視覺用例的復雜性和價值實現正在改變行業。
計算機視覺管道
隨著使用計算機視覺的軟件應用程序數量的增加,必須執行一組一致的步驟。幾乎所有自動化視覺任務都使用卷積神經網絡 (CNN),這是一系列用于處理圖像的深度學習算法。該過程從從相機獲取圖像或視頻流開始。然后對這些進行預處理,以確保將圖像轉換為一種形式,該形式可以縮放為特定像素大小的一致輸入。接下來,使用經過訓練的深度學習模型提取所需的特征并針對特定用例運行推理。應用程序可以使用推理結果來確定它必須執行的操作。上面的描述已被簡化以設置上下文,而不是深入每個步驟的細節。
圖1:計算機視覺管道
相機在計算機視覺中的使用
開發和部署使用計算機視覺的應用程序具有許多基礎設施依賴性。這包括攝像頭、網絡、客戶端設備以及邊緣服務器和/或云實例。
在開發解決方案時,主要關注攝像頭,軟件供應商 (ISV) 密切關注其產品部署和維護期間的挑戰。一些大致分類的挑戰是:
現有基礎設施可能已經安裝了攝像頭。盡管應用程序已使用特定品牌相機進行了預驗證,但這些可能不是客戶端基礎設施中可用的。
攝像頭有各種形狀和大小,最關鍵的是有不同類型的攝像頭,包括 IP 攝像頭、USB 攝像頭和可能需要支持的深度感應攝像頭
沒有以一致的方式配置和提供攝像頭。將需要額外的自定義工作來識別和獲取圖像/視頻流
將沒有單一的界面來管理和控制整個客戶站點的攝像機。在規模上,當需要更新配置時,這很快就會成為一項艱巨的任務。
軟件產品差異化
通常,為特定用例構建的產品解決方案會區分應用程序功能、易用性、部署模型、軟件供應商的聲譽、成本和許可模型。對于 AI 應用程序,這將進一步擴展特定用例的模型準確性,以及運行推理、邊緣訓練和模型訓練所需的硬件 TCO。
計算機視覺管道中突出顯示的活動和上述相機使用注意事項無助于區分產品解決方案。這是部署和維護應用程序所必需的常見要求。
相機管理和推理
EdgeX Foundry 開源社區踏上了解決 AI 應用相機常見部署要求的旅程。目標是開發功能來管理支持 IP 攝像機 (ONVIF)、USB 和深度感應攝像機的攝像機生命周期。重點是在開發軟件應用程序時減少 ISV 的開銷,并使開發人員和部署體驗更加輕松。
ONVIF 支持
該團隊專注于 IP 攝像機,開放行業論壇將 ONVIF 定義為一組標準化接口,攝像機供應商可以遵循這些接口以確保攝像機之間的互操作性。ONVIF 配置文件規范定義了強制性和條件性特征,以便品牌符合 ONVIF 標準。
EdgeX 架構由 4 層服務組成。“北向”中的應用程序服務與基礎設施和應用程序通信,“南向”中的設備服務與設備、傳感器和執行器通信。核心服務和支持服務介于應用程序服務和設備服務之間。
設備服務的工作是與各種物聯網傳感器交互并收集數據。為此,我們創建了一項新的設備服務來支持符合 ONVIF 標準的 IP 攝像機。這使得符合 ONVIF 標準的攝像機能夠以一致的方式進行配置和管理。
ONVIF 攝像頭設備服務
ONVIF 相機設備微服務抽象了特定于設備的相機接口,并為符合 ONVIF 標準的相機提供了一組一致的服務。該服務通過 RESTful API 支持以下內容:
EdgeX 設備發現:攝像頭設備微服務探測網絡并在滿足預定義條件時將攝像頭設備添加到核心元數據
應用程序設備發現:應用程序可以查詢設備和相關配置的核心元數據
應用設備配置:使用用戶名、密碼、IP 地址設置配置,并通過 REST API 啟動 ONVIF 功能。這包括流 URI、Pan-Tilt-Zoom (PTZ)、固件更新)
該服務還被集成到推理引擎中以運行整個計算機視覺管道,所有結果都通過 MQTT 發布。應用程序可以訂閱主題并實時獲取結果。
管道控制:應用程序通過 HTTP Post 請求啟動視頻分析管道
發布推理事件/數據:分析推理被格式化并傳遞到請求中指定的目標消息總線
導出數據:將準備好的(轉換、豐富、過濾等)和整理(格式化、壓縮、加密等)數據發布到外部系統
概括
某些功能不會為 ISV 產品增加巨大的價值。但是,它們是維護和管理平臺所必需的功能。這組功能已作為開源設備服務在 EdgeX 代工廠下實現。采用 ONVIF 設備服務將為與任何支持 ONVIF 的相機品牌合作提供更高的靈活性,這也將確保未來對支持 ONVIF 的相機品牌的更改不需要進一步集成或添加代碼
目前已經完成了符合ONVIF標準的網絡攝像機的代碼。USB 攝像頭的一些工作也已經啟動,但尚未完成。EdgeX 社區邀請 ISV 加入社區,以添加、采用和改進這些設備服務。更多的采用、代碼貢獻和維護將有助于減少所有人的開發時間和成本。