當前位置:首頁 » 操作系統 » vm演算法

vm演算法

發布時間: 2025-05-02 10:29:48

❶ 海康vm演算法平台是否收費

收費的。
海康VM演算法平台V4、0版本推出時,針對二次開發介面,進行了面向對象封裝,提供方案,流程,Group和模塊的4級封裝概念,並提供了各自的參數配置控制項,參數類,結果類,以便二次開發客戶能更簡單的使用視覺能力做業務開發。

❷ 如何將自己的演算法嵌入到海康的VM程序中

有開發實力的視覺集成商和設備商,可以藉助VM現有的流程框架,將自己的獨特演算法和設備配置功能封裝成VM模塊,放置於流程中,以便輕松調用VM中的圖像和各模塊的處理結果,並觸發自身模塊的運行。

盡管提供了VM模塊生成工具,可以方便地創建一個帶有輸入輸出和配置界面的空模塊,但許多人仍不清楚模塊的原理,即使獲得了自動生成的模塊工程,也不知道如何將其改造成具有獨特業務功能的模塊。

第一部分將講解模塊的組成結構原理,以便後續的模塊開發更加順利,便於排查錯誤。

一、VM模塊的基本概念

一個VM模塊由輸入、輸出、配置、顯示和模塊本身構成。輸入和輸出由最基本的5種數據類型組成:int、float、string、image和PointSet,其中前四種最為常用。由基本類型組成更復雜的組合類型,如IMAGE和ROIBOX,分別代表圖像和ROI框。在AAAMo.xml中。

配置是調節模塊運行參數的面板,例如圓查找模塊的半徑。配置由多個基本類型構成,如Integer和Enumeration等,這些基本類型都對應一個可見的配置控制項。通過XML定義配置界面的內容。在AAAMoAlgorithmTab.xml中。顯示是定義模塊運行後需要在渲染窗口上顯示的內容,由一些基本的圖像和圖形組成,如image、circle、point、rect等。在AAAMoDisplay.xml中。

模塊本身是可被調用執行的邏輯塊,以動態庫的形式存在於磁碟上。由底層運行部分和界面運行部分組成。底層運行部分名為AAAMo.dll,界面部分為MoCs.dll,如果界面部分還有較復雜的建模過程,無法僅靠配置XML定義,則還會有一個配置控制項,名為AAAMoControl.dll。

二、模塊運行機制

了解模塊的基本概念後,仍需了解這幾部分是如何協同工作的。接下來以模塊運行為例,將整個過程串聯起來。(以平移旋轉功能為例)模塊運行時,首先從輸入中獲取各Input的值,然後獲取配置參數,根據編寫好的邏輯將輸入與參數一起參與運算,將計算結果賦值到輸出上。顯示配置的圖形與輸出關聯,顯示出具體的圖形。

三、實例:圓查找

圓查找功能定義:在圖像的某個位置查找圓形並輸出,查找圓的參數可調。

輸入:從圓查找的功能定義可知,圓查找的輸入包括圖像和查找框。打開IMVSCircleFindMo.xml,找到Input,可見如下定義:

從XML中可見,輸入圖像為IMAGE組合類型,由image、width、height、format 4個基本類型組成,類型分別為image、int、int、int。

輸入ROI有框(InputROI類型為ROIBOX)和圓弧(InputROIAnnulus類型為ROIANNULUS)兩種。

輸入還包括位置修正信息Position Correction Info類型為FIXTURE。

配置:圓查找需要設置查找圓的半徑大小范圍、設置明暗變化閾值等。查看IMVSCircleFindMoAlgorithmTab.xml,可見

圓查找的參與與XML中的定義一一對應。例如EdgeThresh對應邊緣閾值,默認值為0xf,即界面上顯示的15。如果自定義模塊開發過程中需要某個配置控制項,但不知道具體的控制項類型及用法,可以去查看其他已有模塊,看看是否有相同的控制項。可以把該模塊的配置XML打開,找到需要的控制項,了解其使用邏輯,復制過來,並修改參數的名稱。

配置中還有一個重要的工作,是將需要輸入數據與配置控制項關聯起來,讓人可以在界面上配置輸入數據從哪來。圓查找的輸入數據是圖像和ROI,幾乎所有的模塊都需要這兩個數據,因此把這兩個數據的配置控制項做成了基本界面庫。在配置XML中如下:

運算:在圓查找模塊中,需要獲取圖像,找到ROI區域,並嘗試找出符合參數的半徑和邊緣閾值的圓。具體的獲取輸入數據、參數數據在第二部分文檔中講解。並將搜索到的圓賦值到輸出數據中。

輸出:從圓查找定義可知,至少會輸出一個圓形。查看IMVSCircleFindMo.xml的Output,如下:

有MoStatus模塊運行狀態,類型為int。

有OutputCircle輸出圓形,類型為CIRCLE的復合類型,由Radius半徑、CenterX圓心點X、CenterY圓心點Y等組成,類型都為float。

還有一些其他輸出。

顯示:圓查找至少要顯示搜索到的圓形,還需要顯示底圖。查看IMVSCircleFindMoDisplay.xml可見:

在Display里定義了要顯示的圖像,名稱為InputImage,類型為image。圖像數據、長、寬、格式分別對應(Mapping)到輸入輸出中的InImage、InImageHeight、InImageWidth、InImagePixelFormat。

定義了要顯示的圓形,名稱為Circle Result,類型為circle。圖形的中心點X、Y、內徑、外徑分別對應(Mapping)到輸入輸出中的CenterX、CenterY、Radius、Radius。

熱點內容
lms自適應演算法 發布:2025-06-17 17:56:24 瀏覽:397
寬頻伺服器如何查詢 發布:2025-06-17 17:29:02 瀏覽:632
aeduik腳本中ik是什麼 發布:2025-06-17 17:24:31 瀏覽:718
護密加密 發布:2025-06-17 17:24:30 瀏覽:880
linux保存日誌 發布:2025-06-17 17:23:32 瀏覽:245
如何修改網吧密碼修改 發布:2025-06-17 17:21:53 瀏覽:217
解壓展主題 發布:2025-06-17 17:21:05 瀏覽:72
史上最解壓的古董 發布:2025-06-17 16:50:51 瀏覽:935
lg藍牙密碼是多少 發布:2025-06-17 16:39:44 瀏覽:700
安卓手機微信里文件存在哪裡 發布:2025-06-17 16:38:27 瀏覽:865