LabVIEW 圖像處理與機器視覺
聲明
本文清晰列舉了 LabVIEW 視覺模塊所包含函數過多且未漢化,層次結構過於複雜,各函數功能和接線端定義難以記憶和區分,視覺與運動模塊主要函數和 vi 的清晰層次關係,並為各子模塊、函數或 vi 添加了中文的功能說明和接線端標籤名稱,部分複雜接線端還額外添加了注釋說明,方便於快速查找和定位,並有助於快速理解和記憶他們的功能和位置,同時,對於部分常用的主要函數或 vi,還在每節末尾提供了典型應用實例作為參考,方便加深理解其功能和使用方法,快速提高編程效率和熟練度。
本文僅以輔助參考為目的,沒有過多講解 LabVIEW 機器視覺的基本知識和編程方法,默認使用者對 LabVIEW 和機器視覺具備基礎的認識和了解,若無此基礎,建議先進行一定的入門學習。對於圖像和視覺部分。
本手冊內容基於 NI LabVIEE 2016 版本整理,所列函數模塊 Vision And Motion 須先安裝 NI VISION Development Module VDM 模塊方可顯示。
NI Vision And Motion 結構簡介
視覺與運動;
IMAQ 圖像採集系統:用於從模擬相機、並行數字相機、Camera Link 或 NI 智能相機採集圖像
IMQAdx圖像採集系統 :IMAQdx主要用於從GigE、IEEE1394、 D i re c t Sh o w (U SB)以及 IP(Et h e r n e t)相機獲得圖像
視覺公用程序: 用於在 NI Vision 中創建和操作圖像
圖像處理:用於在 NI Vision 中分析,過濾和處理圖像
機器視覺: 使用機器視覺函數執行常見的機器視覺檢查任務,包括圖像中存在或不存在部件, 並測量部件的尺寸以查看它們是否符合規格
RIO 架構視覺:用於創建控 制 RIO 設備上的 I/O 的應用程式
快速視覺: 用於快速開發常見 的圖像採集和處理應用程式
視覺圖 像處理的一般流程 ;見下圖
一 各模塊主要函數簡介
IMAQ:IMAQ 圖像採集系統:主要支持從模擬相機、並行數字相機、Camera Link或 NI 智能相機採集圖像 (見下圖)
IMAQ Init.vi 初始化 :用於 打開 採集設備 採集設備 採集設備 並對 其初始化 其初始化
IMAQ Close.vi 關閉:用於關閉採集設備
3. IMAQ Snap.vi
離散 :用於單幀 用於單幀 採集 ,每採集一幀都需要打開 -關閉採集設備。適用於 關閉採集設備。適用於 速度 要求不高或只需逐幀分析的圖像分析的圖像 。
4. IMAQ Grab Setup.vi
連續抓取 連續抓取 :用於連續 用於連續 採集 一幀 圖像 ,一直 採集 直到 停
止時才關閉採集設備。 通常只分配 一幀 緩衝區,會覆蓋前幀速度較快 ,
參數同上 參數同上
6. MAQ Sequence .vi 序列:每次連續採集多幀圖像,為每幀圖像分配緩衝區,需分配足夠內存
7. Low-Level Acquisition 底層採集函數:使用底層採集函數可以更直接地控制圖像採集硬體
7.1 IMAQ Configure List.vi配置列表:配置要在採集中使用的緩衝區列表
7.2 、IMAQ Configure Buffer.vi配置緩衝區:配置緩衝區列表中的各個緩衝區
7.3 、IMAQ Start .vi開始:啟動異步圖像採集
7.4 、IMAQ Fit ROI .vi適配ROI:計算指定的感興趣區域(ROI),並返回有效的左、上、高和寬度值
7.5 、IMAQ Get Buffer.vi
獲取緩衝區:返回從一次採集中獲取的一個或所有圖像。IMAQ get buffer 在返回圖像之前等待,直到獲得請求的緩衝區。
7.6 、IMAQ Extract Buffer .vi
提取緩衝區:從連續採集中提取緩衝區。IMAQ 提取緩衝區允許在採集期間檢查緩衝區。從採集中提取緩衝區,並在再次調用IMAQ 提取緩衝區之前防止被覆蓋。當調用IMAQ Extract Buffer 時,當前提取的任何緩衝區都將重新插入到緩衝區列表中。
7.7 、IMAQ Copy Acquired Buffer .vi
複製獲取緩衝區:將圖像從板載內存複製到系統內存,或從驅動程序分配的系統內存複製到用戶分配的系統內存。
7.8 、IMAQ Stop .vi
停止採集:停止當前在 IMAQ 會話指定的圖像採集設備上執行的採集
7.9 、IMAQ Status .vi
狀態:返回有關採集的狀態信息,例如採集的狀態和上次獲取的有效緩衝區
7.10 、IMAQ Set User LUT .vi
設置用戶自定義查找表:將自定義查找表(LUT)下載到圖像採集設備。這個 vi 可以為模擬或數字設備下載8 位或16 位 LUT。如果圖像採集設備有多個 LUT,您可以將所有LUT 輸入到該VI 中。在開始採集之前調用該VI
8、 Signal I/O
I/O 信號:使用I/O 信號函數控制觸發線、生成脈衝並等待硬體事件
8.1 、Configure Trigger3 .vi
配置觸發器 3:配置採集的觸發條件。在任何採集函數之前使用此vi 設置觸發的圖像採集
8.2 、IMAQ Trigger Drive2 .vi
配置觸驅動 2:用指定的信號驅動觸發
8.3 、IMAQ Trigger Read2 .vi
觸發器讀取 2:讀取觸發器行的當前值
8.4 、IIMAQ Trigger Route2 .vi
觸發器路徑 2:用源觸發事件上的信號驅動目標觸發事件
8.5 、IMAQ Generate Pulse3.vi
生成脈衝3:在觸發上產生脈衝。可以立即或在狀態或觸發信號的脈衝沿邊緣生成脈衝。每個觸發脈衝都使用一個脈衝 ID,每次調用這個vi 時,它都會自動生成。
8.6 、IMAQ Occurrence Config2 .vi
發生配置2:創建由圖像採集信號(如狀態觸發或觸發信號)設置的事件
8.7、IMAQ Wait Signal2 .vi
等待信號2:等待狀態或觸發信號被觸發
8.8 、IMAQ Trigger Read2 .vi
重置編碼器位置:將絕對編碼器位置計數器重置為0
9、Camera Control
相機控制:使用相機控制函數獲取和設置相機特定屬性並控制相機模式
9.1 、IMAQ Get Camera Attribute .vi
獲取相機屬性:獲取相機屬性的值
9.2 、IMAQ Get Camera Attribute .vi
設置相機屬性:設置相機屬性的值 參數同上
9.3 、IMAQ Serial Read .vi
串行讀取:從支持串行通信的圖像採集設備的串行埠讀取數據
9.4 、IMAQ Serial Read Bytes .vi
串行讀取字節:從支持串行通信的圖像採集設備的串行端讀取預期數量的字節
9.5 、IMAQ Serial Write .vi
串行寫入:將數據寫入串行埠
二 IMAQdx
IMAQdx 主要用於從 GigE、IEEE1394、DirectShow(USB)以及 IP(Ethernet)相機獲得圖像
1、IMAQdx Snap2.vi
單幀採集:用於配置、啟動、獲取單幀圖像
2、IMAQdx Configure Grab.vi
連續採集配置:用於配置並啟動抓取採集 參數同上
3、IMAQdx Grab2.vi
連續採集:用於獲取最新幀到圖像輸出,只有在調用 IMAQdx Configure Grab.vi 之後才調用此vi
4、IMAQdx Sequence2.vi
序列:用於配置、啟動、獲取、停止和取消配置序列獲取。使用此 vi 捕獲多個圖像。如果在調用IMAQdx Open Camer.vi 之前調用此vi,則IMAQdx Sequence2.vi 默認使用cam0。
5、IMAQdx Open Camera.vi
打開相機設備:查詢相機的功能,加載相機配置文件並創建對相機的唯一引用
6、IMAQdx Close Camera.vi
關閉相機設備:停止正在進行的採集,釋放與採集相關的資源,並關閉指定的相機會話。
7、IMAQdx Enumerate Cameras.vi
枚舉相機設備:返回主機上所有相機的列表
8、IMAQdx Enumerate Attributes.vi
枚舉屬性:獲取相機支持的屬性
9、IMAQdx Enumerate Video Modes.vi
枚舉視頻模式:返回相機支持的視頻模式列表
10、IMAQdx Discover Ethernet Cameras.vi
查找網絡相機:用於啟動一輪網絡相機的查找,在指定超時時間後斷開並返回。在調用IMAQdx Enumerate Cameras.vi 或IMAQdx Open Camer.vi 之前調用此VI。
11、IMAQdx Reset Ethernet Camera Address.vi
重置網絡相機地址:用於重置網絡相機地址
12、NI-IMAQdx Low-Level.vi
低層採集函數:使用底層採集函數可以更直接地控制圖像採集硬體
NI-IMAQdx Low-Level.vis 低層採集函數簡介
13、NI-IMAQdx FPGA
可編程邏輯門陣列設備:使用FPGA 函數配置和傳輸使用NI-IMAQdx 採集的圖像到 FPGA目標
三、 Vision Utilities
視覺公用程序:用於在 NI Vision 中創建和操作圖像
1、Image Management
圖像管理:用於在內存中創建和銷毀圖像,設置和讀取圖像屬性,以及將一個圖像複製到另一個圖像
Image Management 關鍵函數簡介
1.1 、IMAQ Create.vi
清除:為圖像創建臨時內存位置
1.2 、IMAQ Dispose.vi
創建:銷毀圖像並釋放它在內存中所佔的空間
1.7 、IMAQ Copy.vi
複製:將一個圖像的規格和像素複製到同一類型的另一個圖像中。
使用此功能保留圖像的原始副本(例如,在處理圖像之前)。源圖像的完整定義以及像素數據被複製到目標圖像。目標圖像的邊框大小也被修改為與源圖像的邊框大小相等。如果源圖像包含其他信息,例如校準信息、疊加信息或模式匹配信息,則此信息也會複製到目標圖像 。
1.11、IMAQ Cast Image.vi
圖像映射:將當前圖像類型轉換為圖像類型指定的圖像類型
如果指定查找表,IMAQ Cast Image.vi 將使用查找錶轉換圖像。如果從 16 位圖像轉換為 8位圖像,則 vi 通過將 16 位像素值向右移動指定的移位操作數來執行此轉換,然後截斷以獲得 8 位值。
2、Files
文件:使用文件函數讀取、寫入和檢索圖像文件信息
Files 關鍵函數簡介
2.1、IMAQ ReadFile.vi
讀取圖像文件
2.2、IMAQ Write File 2.vi
寫入圖像文件:將圖像以所選格式寫入文件
2.3、IMAQ Read Image And Vision Info.vi
讀取圖像和視覺信息:讀取圖像文件,包括與圖像一起保存的任何額外視覺信息 這包括覆蓋信息、模式匹配模板信息、校準信息和自定義數據,由 IMAQ Write File 2。vi 的實例寫入。(參數同上)
2.4、IMAQ Write String.vi
寫入字符串:返回一個字符串,該字符串包含編碼為圖像文件的圖像的全部內容 字符串可以保存到文件中,或者,例如,使用 ftp 傳輸到遠程計算機。
(參數同上)
2.5、IMAQ GetFileInfo.vi
獲取文件信息:獲取有關文件內容的信息
2.6、IMAQ Load Image Dialog.vi
加載圖像對話框:顯示一個對話框使用該對話框指定一個或多個圖像路徑。
此對話框類似於 Labview 原始文件對話框,但它提供所選圖像文件的預覽,默認為僅顯示支持的圖像類型。
3、External Display
外部顯示:使用外部顯示函數在外部顯示窗口中執行以下操作:顯示圖像、獲取和設置ROI、操作浮動ROI 工具窗口、配置ROI 構造器窗口以及設置和使用圖像瀏覽器。
4、Region of Interest
感興趣區域(ROI):使用感興趣的區域對圖像的一部分進行聚焦處理和分析。ROI 轉換子選板包含轉換機器視覺點、直線、矩形和環形數據類型和ROI 描述符數據類型。
Region of Interest 函數簡介
4.1、IMAQ ROIToMask 2.vi
ROI 轉換至遮罩:將 ROI 轉換為遮罩
4.2、IMAQ MaskToROI.vi
遮罩轉換至 ROI:將圖像遮罩轉換為ROI 描述符
4.3、IMAQ Group ROIs.vi
合併ROI:從 ROI 描述符數組構建單個ROI 描述符
4.4、IMAQ Ungroup ROIs.vi
分離 ROI:將描述多個輪廓的 ROI 描述符分隔成一組 ROI 描述符。返回的每個 ROI描述符都包含一個輪廓。
4.5、IMAQ TransformROI.vi
旋轉並轉換 ROI:旋轉並轉換圖像中的 ROI,以將 ROI 從一個坐標系(基準參考)轉換為另一個坐標系(新參考)
4.6、IMAQ LabelToROI.vi
標籤轉換至 ROI:將標籤圖像轉換為 ROI。如果每個標籤存在多個粒子,則將多個輪廓添加到ROI 中。
4.7、Region of Interest Conversion.vi
ROI 轉換:使用 Region of Interest Conversion.vi 將機器視覺點、直線、矩形和環形數據類型轉換為ROI 描述符或從中轉換。「ROI 轉換」選項板是「ROI」選項板的子選項板。
4.7.1、IMAQ Convert Point to ROI.vi
點轉換至 ROI:把點元素轉換成 ROI 描述符
4.7.2、IMAQ Convert Line to ROI.vi
線轉換至 ROI:將線條轉換為 ROI 描述符
4.7.3、IMAQ Convert Rectangle to ROI.vi
矩形轉換至 ROI:將矩形或旋轉矩形轉換為 ROI 描述符。返回的 ROI 描述符的輪廓始終是旋轉矩形類型。
4.7.4、IMAQ Convert Rectangle to ROI (Polygon).vi
矩形多邊形轉換至 ROI:將矩形或旋轉矩形轉換為 ROI 描述符。返回的 ROI 描述符的輪廓始終是旋轉矩形多邊形類型。
4.7.5、IMAQ Convert Annulus to ROI.vi
環形轉換為 ROI:將環形轉換為 ROI 描述符
4.7.6、IMAQ Convert ROI to Point.vi
ROI 轉換為點:將 ROI 描述符轉換為點元素
4.7.7、IMAQ Convert ROI to Line.vi
ROI 轉換為線:將 ROI 描述符轉換為線條
4.7.8、IMAQ Convert ROI to Rectangle.vi
ROI 轉換為矩形:將 ROI 描述符轉換為矩形或旋轉矩形。ROI 描述符的輪廓始終是旋轉矩形類型
4.7.9、IMAQ Convert ROI to Annulus.vi
ROI 轉換為環形:將 ROI 描述符轉換為環形
5、Image Manipulation
圖像操作:使用圖像操作函數修改圖像。使用這些函數對圖像重新取樣;提取部分圖像;旋轉、移動和展開圖像
Image Manipulation 函數簡介
5.1、IMAQ Resample.vi
重新採樣: 將圖像重新採樣到用戶定義的大小。您可以使用此vi 顯示縮小或放大的圖像
5.2、IMAQ Expand.vi
擴展: 通過調整水平和垂直解析度展開(複製)圖像或圖像的一部分。
5.3、IMAQ Extract 2.vi
提取: 通過調整水平和垂直解析度來提取(減少)圖像或圖像的一部分。
5.4、IMAQ Extract Tetragon.vi
提取四邊形: 從源圖像中提取四邊形。四邊形可以連接到ROI 或陣列點。數組必須包含四個點,從將提取到目標左上角的點開始,然後順時針進行。
5.5、IMAQ Symmetry.vi
對稱: 通過對稱變換圖像。
5.6、IMAQ Rotate.vi
旋轉: 旋轉圖像 5.7、IMAQ Shift.vi
移位: 基於水平和垂直偏移轉換圖像。
5.8、IMAQ Unwrap.vi
展開: 將圖像中的圓形條帶展開為矩形條帶
5.9、IMAQ ClipboardToImage.vi
剪貼板至圖像: 將剪貼板數據複製到圖像中
5.10、IMAQ ImageToClipboard.vi
圖像到剪貼板: 將圖像複製到作業系統剪貼板
5.11、IMAQ Interlace.vi
隔行掃描: 從交錯圖像中提取奇數和偶數欄位,或使用兩個欄位圖像構建圖像 5.12、IMAQ 3DView.vi
3D 視圖: 使用等軸測視圖顯示圖像。來自圖像源的每個像素在三維視圖中表示為一列像素。像素值對應高度
5.13、Browser.vi
瀏覽器: 使用瀏覽器 VIS 創建、配置和使用圖像瀏覽器
5.13.1、IMAQ Browser Setup.vi
瀏覽器設置:配置瀏覽器。這個 vi 設置了所有必需的參數,這些參數決定了瀏覽器上的方面和縮略圖組織。
5.13.2、IMAQ Browser Insert.vi
瀏覽器插入:在瀏覽器中添加或插入圖像。圖像重新取樣以適合縮略圖圖像的大小。應用於圖像的重採樣值在兩個軸上相同,以保持圖像方面。根據所選模式,在最後一個位置或第一個空白位置添加縮略圖。如果所有位置都被佔用,則會向瀏覽器添加一行縮略圖圖像
5.13.3、IMAQ Browser Replace.vi
瀏覽器替換:替換瀏覽器中的圖像。重新採樣率的計算應儘可能小,並且在兩個軸上相同。僅設置以下控制項之一:索引、矩陣索引或像素位置。
5.13.4、IMAQ Browser Delete.vi
瀏覽器刪除:從瀏覽器中刪除圖像。僅設置以下控制項之一:索引、矩陣索引或像素位置。刪除圖像後,瀏覽器會通過填充可用空間或保留空白來重新組織剩餘的圖像。
5.13.5、IMAQ Browser Focus Setup.vi
瀏覽器焦點設置:配置在瀏覽器上選定的縮略圖的外觀。所選圖像使用焦點顏色進行邊框。
5.13.6、IMAQ Browser Focus.vi
瀏覽器焦點:獲取或設置瀏覽器上圖像的狀態。您可以選擇任一可能的狀態值:已選擇或未選擇。所選圖像使用焦距顏色進行邊框
6、ManipulationPixel
像素操作:使用 ManipulationPixel 函數修改圖像的特定區域。使用這些函數讀取和設置圖像中的像素值,沿圖像中的行或列讀取和設置值,並用特定值填充圖像中的像素。
ManipulationPixel 函數簡介
6.1、IMAQ GetPixelValue.vi
獲取像素值: 從圖像中讀取像素值
6.2、IMAQ GetRowCol.vi
獲取行列: 從圖像中提取一系列像素值(行或列)
6.3、IMAQ GetPixelLine.vi
獲取像素線: 提取像素行的強度值
6.4、IMAQ ImageToArray.vi
圖像到數組: 將圖像或圖像的一部分中的像素提取(複製)到LabVIEW 二維數組中。該數組以8 位、16 位或浮點編碼,具體取決於輸入圖像的類型
6.5、IMAQ SetPixelValue.vi
設置像素值: 更改圖像中的像素值
6.6、IMAQ SetRowCol.vi
設置行列: 更改圖像像素行或列中的強度值
6.7、IMAQ SetPixelLine.vi
設置像素線: 更改圖像像素行中的強度值
6.8、IMAQ ArrayToImage.vi
數組到圖像: 從二維數組創建圖像
6.9、IMAQ FillImage.vi
填充圖像: 用指定值填充圖像及其邊框
6.10、IMAQ Draw.vi
繪製:在圖像中繪製幾何對象
6.11、IMAQ Draw Text.vi
繪製文字 :
6.12、IMAQ ImageToEDVR.vi
圖像到外部數據值引用: 為源圖像的請求區域返回具有指定數據類型和維數的外部數據值引用(EDVR)數組
7、Overlay
無損圖層:使用 Overlay 將圖形、文本和位圖覆蓋到圖像上,而不破壞圖像數據。使用這些函數將應用檢查的結果覆蓋到檢查的圖像上
8、Calibration
校準:使用Calibration 在空間上校準圖像。空間校準將像素坐標轉換為真實坐標,同時補償成像系統中潛在的透視誤差或非線性失真
Calibration 函數簡介
8.1IMAQ Calibration Target to Points - Circular Dots 2.vi
目標對點校準: 檢測二值化圖像中的圓點,並返回像素和真實世界點進行校準。使用提供的灰度圖像優化圓點的位置。
8.2、IMAQ Set Simple Calibration2.vi
設置簡單校準: 使用X 和Y 方向的像素比設置簡單的校準。
8.3、IMAQ Learn Micro Plane.vi
微平面學習: 學習用於校正非平面工作平面中圖像的微平面校準信息。
8.4、IMAQ Learn Perspective Calibration.vi
透視校準學習: 學習透視校準信息,以糾正不垂直於被檢查對象平面的攝像機引入的透視畸變。
8.5、IMAQ Learn Distortion Model.vi
失真模型學習: 學習相機和鏡頭設置的變形模型。如果您的相機不垂直於被檢查的對象,您可以結合變形建模和透視校準。
8.6、IMAQ Learn Camera Model.vi
相機模型學習: 學習詳細的相機特性,包括焦距、光學中心和畸變模型。由於相機模型包括畸變模型,因此不需要計算單獨的畸變模型。
8.7、IMAQ Set Calibration Axis Info 2.vi
設置校準軸信息: 將坐標系信息指定給校準模板圖像。
8.8、IMAQ Correction Learn Setup.vi
校正學習設置: 設置用於更正圖像中校準的參數。
8.9、IMAQ Set Calibration Info.vi
設置校準信息: 將校準模板中的校準信息應用於其他圖像。兩個圖像的大小必須相同。
8.10、IMAQ Get Calibration Info 3.vi
獲取校準信息: 返回與圖像關聯的校準信息。
8.11、IMAQ Get Camera Parameters.vi
獲取相機參數: 返回已學習相機模型的內部和外部參數。
8.12、IMAQ Get Calibration Thumbnail Image.vi
獲取校準縮略圖: 返回在校準的學習階段存儲的縮略圖。
8.13、IMAQ Compact Calibration Info.vi
緊湊校準信息: 刪除用於學習校準的信息和縮略圖,使校準文件的大小變小。壓縮後無法重新學習和檢索縮略圖。
8.14、IMAQ Convert Real World to Pixel.vi
將現實世界轉換為像素: 根據從 IMAQ Learn Calibration Template.vi、IMAQ Set Simple Salibration.vi 或使用 IMAQ Set Salibration Info.vi 從校準圖像複製的校準信息,將真實世界坐標轉換為像素坐標。
8.15、IMAQ Convert Pixel to Real World.vi
將像素轉換為現實世界: 根據圖像中包含的校準信息,將像素坐標轉換為實際坐標。通過 IMAQ Learn Calibration Template.vi 、IMAQ Set Simple Calibration.vi 或 IMAQ Set Calibration Info.vi 將校準信息附加到此圖像。
8.16、IMAQ Correct Calibrated Image.vi
校正圖像: 通過應用校準以創建空間正確的圖像來更正校準的圖像。
8.17、IMAQ Read Image And Vision Info.vi
讀取圖像和視覺信息: 讀取圖像文件,包括與圖像一起保存的任何額外視覺信息。這包括覆蓋信息、模式匹配模板信息、校準信息和自定義數據,由 IMAQ Write Image And Vision Info File 2.vi、 IMAQ Write File 2.vi 的實例寫入。
8.18、IMAQ Write Image And Vision Info File 2.vi
寫入圖像和視覺信息文件: 將圖像以及與圖像關聯的額外視覺信息寫入 PNG 文件。這些額外的視覺信息包括疊加信息、模式匹配模板信息、校準信息和自定義數據。
9、Color Utilities
顏色工具:使用 Color Utilities 來操作圖像的顏色和顏色平面。使用這些函數從圖像中提取不同的顏色平面,用新數據替換顏色圖像的平面,將顏色圖像轉換為二維數組並返回,讀取和設置顏色圖像中的像素值,並將像素值從一個顏色空間轉換為另一個顏色空間。
Color Utilities 函數簡介
9.1、IMAQ ExtractColorPlanes.vi
提取顏色平面: 從圖像中提取三個平面(RGB、HSL、HSV 或HSI)。
9.2、IMAQ ExtractSingleColorPlane.vi
提取單個顏色平面: 從彩色圖像中提取單個平面。
9.3、IMAQ ReplaceColorPlane.vi
替換顏色平面: 從彩色圖像(RGB、HSL、HSV 或 HSI)替換一個或多個圖像平面。僅替換輸入處連接的平面。
9.4、IMAQ GetColorPixelValue.vi
獲取顏色像素值: 從彩色圖像中讀取像素值。
9.5、IMAQ SetColorPixelValue.vi
設置顏色像素值: 更改彩色圖像中的像素值。
9.6、IMAQ GetColorPixelLine.vi
獲取顏色像素線: 從彩色圖像中提取一行像素。
9.7、IMAQ SetColorPixelLine 2.vi
設置顏色像素線: 更改彩色圖像的像素線。
9.8、IMAQ ColorImageToArray.vi
色彩圖像到數組: 將彩色圖像或部分彩色圖像中的像素提取到二維數組中。
9.9、IMAQ ArrayToColorImage.vi
數組到色彩圖像: 從二維數組創建彩色圖像。
9.10、IMAQ Bayer To RGB.vi
拜耳到RGB: 解碼 Bayer 編碼的圖像以生成圖像的 RGB 表示。
9.11、IMAQ RGBToColor 2.vi
RGB 到顏色: 將RGB 顏色值轉換為其他格式(HSL, HSV, HSI, CIE L*a*b*, 或 CIE XYZ)。
9.12、IMAQ ColorToRGB.vi
顏色到RGB: 將 HSL、HSV 或HSI 顏色值轉換為 RGB 顏色值。
9.13、IMAQ ColorValueToInteger.vi
顏色值到整型: 將模式(R、G、B)、(H、S、L)、(H、S、V)或(H、S、I)中由三種顏色組成的簇轉換為以無符號 32 位整數形式編碼的顏色。
9.14、IMAQ IntegerToColorValue.vi
整型到顏色值: 將無符號32 位整數形式的顏色轉換為由模式(R、G、B)、(H、S、L)、(H、S、V)或(H、S、I)中的三種顏色組成的簇。
10、Vision RT
實時顯示控制:使用 Vision RT 配置和控制實時系統的顯示設置
11、FPGA Utilities
FPGA 工具:使用 FPGA 工具進行主機端計算,以支持 FPGA 中的處理。
四、Image Processing
圖像處理:用於在 NI Vision 中分析,過濾和處理圖像
1、Processing
處理:使用處理函數處理灰度和二值化圖像。使用這些函數可以使用預定義或自定義查找錶轉換圖像,更改圖像中的對比度信息,反轉圖像中的灰度值以及分割圖像。
Processing 函數簡介
1.1、IMAQ UserLookup 2.vi
用戶查找: 通過重新映射圖像中的像素值來執行用戶指定的查閱表格轉換。
1.2、IMAQ MathLookup.vi
數學查找: 通過用定義的查閱表格中的值替換圖像的像素值來轉換圖像的像素值。該 vi根據所選曲線類型修改圖像的任何部分或完整圖像的動態範圍。
1.3、IMAQ Equalize.vi
均衡: 生成圖像的直方圖均衡。這個 vi 重新分配圖像的像素值,使累積的直方圖線性化。vi 的精度取決於柱狀圖精度,而柱狀圖精度又取決於柱狀圖中使用的類的數量。
1.4、IMAQ BCGLookup.vi
BCG 查找: 對圖像應用亮度、對比度和伽瑪校正。通過計算和應用查找表來執行更正。亮度、對比度和 gamma 控制對由查閱表格表示的傳遞函數所做的更改。
1.5、IMAQ Threshold.vi
閾值: 對圖像應用閾值。
1.6、IMAQ MultiThreshold.vi
多閾值: 對圖像執行多個強度範圍的閾值。
1.7、IMAQ Label.vi
標籤: 在二值化圖像中標記粒子。
1.8、IMAQ Watershed Transform.vi
流域轉換: 計算圖像上的流域變換。
1.9、IMAQ Inverse.vi
反轉: 反轉圖像的像素強度以計算圖像的負值。
1.10、IMAQ AutoBThreshold 2.vi
自動B 閾值: 計算圖像或 ROI 區域的最佳閾值並應用計算出的閾值。
1.11、IMAQ AutoMThreshold 2.vi
自動M 閾值: 計算最佳值以將圖像閾值化為給定數量的類。
1.12、IMAQ Local Threshold.vi
本地閾值: 根據指定的局部自適應閾值方法將圖像閾值化為二值化圖像。
1.13、IMAQ Flat Field Correction.vi
平場校正: 使用平場和暗場圖像校正圖像強度,並返回校正後的圖像。每當圖像設置更改時,重新創建平面場圖像。使用IMAQ Compute Average Image.vi 或 IMAQ Compute Median Image. vi 為平面場圖像輸入創建圖像。
1.14、IMAQ Estimate Flat Field Model.vi
估計平場模型: 通過在提供的圖像上擬合數學模型,返回平面場圖像。
1.15、IMAQ Compute Average Image.vi
計算平均圖像: 計算所提供圖像的平均圖像。將生成的圖像傳遞給 IMAQ Flat Field Correction .vi 的平場圖像輸入。
1.16、IMAQ Compute Median Image.vi
計算中值圖像: 計算所提供圖像的中值圖像。將生成的圖像傳遞給 IMAQ Flat Field Correction .vi 的平場圖像輸入。
1.17、IMAQ MagicWand.vi
魔棒: 通過提取參考像素周圍的區域(稱為原點)並使用基於此參考像素的強度變化公差來創建圖像遮罩。
2、Filters
濾波:使用濾波函數過濾圖像以增強圖像中的信息(鄰域增強)。使用這些函數可以平滑圖像,消除噪點並在圖像中找到邊緣。您可以使用預定義的濾波內核或創建自定義濾波內核。
Filters 函數簡介
2.1、IMAQ GetKernel.vi
獲取卷積核:讀取預定義的卷積內核
2.2、IMAQ BuildKernel.vi
構建卷積核:通過轉換字符串構造卷積矩陣。此字符串可以表示整數或浮點值。
2.3、IMAQ Convolute.vi
卷積:使用線性過濾器過濾圖像。根據圖像類型和內核內容,使用整數或浮點進行計算。
2.4、IMAQ Correlate.vi
互相關:計算源圖像和模板圖像之間的歸一化互相關。
2.5、IMAQ LowPass.vi
低通:計算正在處理的像素與周圍像素之間的像素間變化。如果正在處理的像
素的變化大於指定的百分比,則將其設置為從相鄰像素計算出的平均像素值。
2.6、IMAQ NthOrder.vi
n 階(低通):對正在處理的像素周圍的像素值進行排序或分類。將數據放入一個數組,並將正在處理的像素設置為第 n 個像素值,第 n 個像素為順序號。
2.7、IMAQ EdgeDetection.vi
邊緣檢測(高通):提取灰度值中的輪廓(檢測邊緣)。
2.8、IMAQ CannyEdgeDetection.vi
Canny 邊緣檢測(高通):採用專門的邊緣檢測方法,即使在信噪比較差的情況下,也能準確估計邊緣的位置。
3、Morphology
形態學:使用形態學函數對圖像執行形態學操作。這些 VI 中的一些在灰度和二值圖像上執行基本的形態學操作,例如擴張和侵蝕。其他函數通過填充粒子中的孔,去除接觸圖像邊界的粒子,去除噪聲粒子,以及根據粒子的不同特徵去除不需要的粒子來提高二值圖像的質量。
Morphology 函數簡介
3.1、IMAQ Distance.vi
距離:將粒子的像素值編碼為該像素相對於粒子邊界距離的位置函數。源圖像的邊框大小必須至少為 1 個像素,並且必須是8 位二值化圖像。所有大於255 的距離都四捨五入為 255。
3.2、IMAQ FillHole.vi
填孔:填充在粒子中找到的孔。這些孔被像素值1 填充。源映像必須是8 位二值化映像。與圖像邊界接觸的孔永遠不會被填滿,因為無法確定這些孔是否是粒子的一部分。
3.3、IMAQ RejectBorder.vi
拒絕邊框:消除接觸圖像邊界的粒子。源映像必須是 8 位二值化映像。
3.4、IMAQ RemoveParticle.vi
去除微粒:消除或保持顆粒抵抗規定數量的 3 x 3 侵蝕。
3.5、IMAQ Morphology.vi
形態學:執行主要形態轉換。
3.6、IMAQ GrayMorphology.vi
灰度形態學:執行灰度形態轉換。
3.7、IMAQ Segmentation.vi
分割:從標記圖像開始,計算粒子之間的影響區域。
3.8、IMAQ Danielsson.vi
丹尼爾松算法:返回基於 Danielsson 算法的距離圖。
3.9、IMAQ Find Circles.vi
查找圓:分離重疊的圓形粒子,並根據它們的半徑、表面積和周長對它們進行分類。
3.10、IMAQ Convex Hull.vi
凸面船體:為圖像中的每個粒子繪製凸面外殼。
3.11、IMAQ Skeleton.vi
骨架:從二值圖像開始,計算圖像中粒子的骨架或描繪對象影響區域的線(反轉圖像的骨架)。源圖像的邊框必須大於或等於 1。
3.12、IMAQ Separation.vi
分離:分離接觸的顆粒,特別是顆粒間的小峽部。
3.13、IMAQ Particle Filter 3.vi
顆粒過濾器:根據測量值過濾(保留或移除)圖像中的每個粒子。
3.14、IMAQ BinaryMorphology Reconstruction.vi
二元形態學重建:對二值化圖像執行形態重建。形態重建基於圖像標記或點陣列重建圖像,並在不改變圖像中對象形狀的情況下突出顯示或刪除小特徵。
3.15、IMAQ GrayMorphology Reconstruction.vi
灰度形態學重建:對灰度圖像執行形態重建。形態重建基於圖像標記或點陣列重建圖像,並在不改變圖像中對象形狀的情況下突出顯示或刪除小特徵。
4、Analysis
分析:使用分析函數返回有關灰度和二值化圖像內容以及圖像中的粒子的信息。使用這些函數計算圖像的直方圖信息和灰度統計,檢索圖像中任何一維輪廓的像素信息和統計數據,並檢測和測量二值化圖像中的粒子。
Analysis 函數簡介
4.1、IMAQ Histograph.vi
直方圖:根據圖像計算直方圖。這個 vi 返回與Labview 圖兼容的數據類型(簇)。
4.2、IMAQ Histogram.vi
柱狀圖:計算圖像的直方圖。
4.3、IMAQ Quantify 2.vi
量化:量化圖像的內容或圖像中的區域。區域定義是用帶標籤的圖像遮罩執行的。遮罩的每個區域都有一個唯一的值。
4.4、IMAQ Centroid.vi
質心:計算圖像或部分圖像的質量中心。
4.5、IMAQ LineProfile.vi
線條輪廓:計算一行像素的輪廓。這個 vi 返回與Labview 圖兼容的數據類型(簇)。相關像素信息取自指定的矢量(線)。
4.6、IMAQ ROIProfile.vi
ROI 剖面圖:計算沿 ROI 描述符邊界的像素輪廓。這個 vi 返回與 Labview 圖兼容的數據類型(簇)。該 vi 還返回其他信息,如像素統計信息和沿ROI 邊界的像素坐標。
4.7、IMAQ LinearAverages.vi
線性平均數:計算整個或部分圖像的平均像素強度(平均線條輪廓)。
4.8、IMAQ Extract Curves.vi
提取曲線:查找圖像中的曲線。
4.9、IMAQ Block Statistics.vi
塊統計信息:計算圖像中不重疊塊的像素值統計信息。
4.10、IMAQ SSIM.vi
SSIM 評估:通過將測試圖像與參考圖像進行比較來確定測試圖像的質量。SSIM 評估人眼可感知的特徵。
4.11、IMAQ Extract HOG Feature Vector.vi
提取 HOG 特徵向量:使用定向梯度直方圖(HOG)算法從圖像中提取特徵。
4.12、IMAQ Extract LBP Feature Vector.vi
提取 LBP 特徵向量:使用局部二值化模式(LBP)算法從圖像中提取特徵。
4.13、IMAQ Particle Analysis Report.vi
顆粒分析報告:返回在二值化圖像中檢測到的粒子數,以及包含最常用的粒子測量值的報告數組。
4.14、IMAQ Particle Analysis.vi
顆粒分析:返回在二值化圖像中檢測到的粒子數和有關該粒子的請求測量的二維數組。
5、Color Processing
色彩處理:使用色彩處理函數對彩色圖像執行基本處理。使用這些函數計算彩色圖像的直方圖; 將查找表應用於彩色圖像; 改變與彩色圖像相關的亮度,對比度和伽瑪信息; 和閾值一個彩色圖像 。
Color Processing 函數簡介
5.1、IMAQ ColorHistogram.vi
顏色直方圖:計算從圖像的三個平面提取的柱狀圖。此vi 可以在六種顏色模型(RGB, HSL, HSV, HSI, CIE L*a*b*, 或 CIE XYZ)對應的六種模式中的一種模式下工作。IMAQ ColorHistograph.vi 是 IMAQ ColorHistogram.vi 的變體,其優點是其輸出數據與 LabVIEW圖直接兼容。
5.2、IMAQ ColorHistograph.vi
色彩直方圖:計算從圖像的三個平面提取的柱狀圖。此vi 可以在四種模式中的一種模式下工作,這些模式對應於顏色模型 RGB、HSL、HSV 和 HSI。這個 vi 的輸出與Labview 圖形直接兼容。
5.3、IMAQ ColorUserLookup.vi
顏色用戶查找:將查找表(LUT)應用於每個顏色平面。
5.4、IMAQ ColorBCGLookup.vi
顏色 BCG 查找:分別對每個顏色平面應用亮度、對比度和Gamma 校正。
5.5、IMAQ ColorEqualize.vi
顏色均等:均衡彩色圖像。該 vi 使亮度平面(默認)或所有三個平面相等。
5.6、IMAQ ColorThreshold.vi
顏色閾值:對RGB 或 HSL 圖像的三個平面應用閾值,並將結果放入 8 位圖像。
5.7、IMAQ Color Segmentation Supervised.vi
顏色分割監控:使用經過訓練的樣本分割彩色圖像。
5.8、IMAQ Get Color Segmentation Distance.vi
獲取顏色分割距離:獲取顏色圖像分割中允許分組類的最大距離。
5.9、IMAQ ColorLearn.vi
顏色學習:提取圖像的顏色特徵,可用於顏色匹配或其他與顏色信息相關的應用,如顏色識別和顏色圖像分割。
5.10、IMAQ ColorMatch.vi
顏色匹配:查找圖像中多個區域的顏色內容與輸入色譜定義的顏色內容之間的匹配。
5.11、Classification.vi
分類:使用該vi 通過將重要特性與概念上表示已知對象類的一組特性進行比較來識別未知對象。
6、Operators
運算符:使用運算函數在NI Vision 中執行算術和按位操作。使用其中一些函數可以將圖像與其他圖像或常量相加,相減,相乘和相除。使用此調色板中的其他函數應用邏輯運算,並在圖像與其他圖像或常量之間進行像素比較。
Operators 函數簡介
6.1、IMAQ Add.vi
加:添加兩個圖像或一個圖像和一個常量。
6.2、IMAQ Subtract.vi
減:從另一個圖像中減去一個圖像或從圖像中減去一個常量。
6.3、IMAQ Absolute Difference.vi
絕對差:從另一幅圖像中減去一幅圖像,或從圖像中減去一個常量,然後返回差值的絕對值。
6.4、IMAQ And.vi
與:對兩個圖像或一個圖像和一個常量執行「與」或「與非」操作。
6.5、IMAQ Or.vi
或:對兩個圖像或一個圖像和一個常量執行「或」或「或非」操作。
6.6、IMAQ Multiply.vi
乘:將兩個圖像或一個圖像與一個常量相乘。
6.7、IMAQ Divide.vi
除:將一個圖像除以另一個圖像或一個圖像除以常量。
6.8、IMAQ LogDiff.vi
補集:保留在源圖像 A 中找到的源圖像 B 中不存在的位。
6.9、IMAQ Xor.vi
異或:對兩個圖像或一個圖像和一個常量執行「異或」或「異或非」操作。
6.10、IMAQ MulDiv.vi
計算兩圖比率:計算兩個圖像之間的比率。源圖像A 中的每個像素乘以輸入常量中指定的整數值,然後除以源圖像 B 中找到的等效像素。為了避免丟失信息,將使用具有更高定義的臨時變量來執行該操作。如果背景比圖像輕,此函數可以更正背景。在背景校正圖像中,源圖像 A 是獲得的圖像,源圖像 B 是淺色背景。
6.11、IMAQ Modulo.vi
模:執行一個圖像被另一個圖像或一個圖像被常量除運算的模(餘數)。
6.12、IMAQ Mask.vi
遮罩:將源圖像重新複製到目標圖像中。如果圖像遮罩中的像素值為 0,則目標圖像中相應的像素設置為0。
6.13、IMAQ Compare.vi
比較:在兩個圖像或圖像和常量之間執行比較操作。當源圖像 B 未連接時,圖像和常量之間會發生該操作。
7、Frequency Domain
頻域:使用頻域函數對圖像執行頻率處理和其他任務。使用這些函數使用二維快速傅立葉變換(FFT)將圖像從空間域轉換到頻域,並使用逆 FFT 將圖像從頻域轉換到空間域。這些函數還提取復圖像的幅度,相位,實數和虛數平面。
Frequency Domain 函數簡介
7.1、IMAQ FFT.vi
快速傅立葉變換:計算圖像的快速傅立葉變換。快速傅立葉變換創建了一個復圖像,其中高頻率集中在中心,而低頻率集中在邊緣。
7.2、IMAQ InverseFFT.vi
反快速傅立葉變換:計算復圖像的反快速傅立葉變換。
7.3、IMAQ ArrayToComplexImage.vi
數組到復圖像:從複數的二維數組創建複數圖像。
7.4、IMAQ ArrayToComplexPlane.vi
數組到複平面:從浮點值的二維數組開始,替換復圖像的實部或虛部。
7.5、IMAQ ImageToComplexPlane.vi
圖像到複平面:將 8 位、16 位、32 位浮點或復圖像中的像素提取到復圖像的實部或虛部。
7.6、IMAQ ComplexImageToArray.vi
復圖像到數組:將復圖像中的像素提取到復的二維數組中。
7.7、IMAQ ComplexPlaneToArray.vi
複平面到數組:將復圖像的實部、虛部、幅度或相位中的像素提取為浮點數的二維數組。
7.8、IMAQ ComplexPlaneToImage.vi
複平面到圖像:將復圖像的實部、虛部、幅度或相位中的像素提取為 8 位、16 位或32 位浮點圖像。
7.9、IMAQ ComplexConjugate.vi
共軛複數:計算復圖像的共軛。此vi 將復圖像的復像素數據z=a+ib 轉換為z=a&150;ib。
7.10、IMAQ ComplexAttenuate.vi
復衰減:衰減復圖像的頻率。
7.11、IMAQ ComplexAdd.vi
複數加法:添加兩個圖像,其中第一個是復圖像,或添加復圖像和複數。
7.12、IMAQ ComplexSubtract.vi
複數減法:減去兩個圖像,其中第一個是復圖像,或從復圖像中減去一個複數。
7.13、IMAQ ComplexFlipFrequency.vi
復翻轉頻率:變換復圖像的頻率分量。將復圖像的高頻和低頻分量進行倒轉,生成空間頻率的中心對稱表示。
7.14、IMAQ ComplexTruncate.vi
複數截斷:截斷復圖像的頻率。
7.15、IMAQ ComplexMultiply.vi
複數乘法:將兩個圖像相乘,其中第一個是復圖像,或者將復圖像和複數相乘。
7.16、IMAQ ComplexDivide.vi
複數除法:將一個圖像除以另一個圖像,其中第一個圖像是復圖像,或將復圖像除以一個複數。
8、Texture
紋理:使用紋理函數來檢測紋理圖像中的缺陷並從圖像中提取紋理特徵。
Texture 函數簡介
8.1、IMAQ Detect Texture Defect.vi
檢測紋理缺陷:檢測紋理圖像中的缺陷。
8.2、IMAQ Extract Wavelet Bands.vi
提取小波帶:從圖像中提取小波帶。
8.3、IMAQ Cooccurrence Matrix.vi
共生矩陣:計算圖像的共生矩陣和哈拉利克特徵。
8.4、IMAQ Extract Texture Feature.vi
提取紋理特徵:從圖像中提取紋理特徵。通過計算圖像中的小波帶,然後計算提取帶的共現哈拉利克特徵,提取特徵。這些特徵將在指定的窗口中提取,並將窗口從左上角移動到右下角。
8.5、Classification.vi
分類:使用 Classification.vi 通過將重要特性與概念上表示已知對象類的一組特性進行比較來識別未知對象。
9、Motion Estimation
運動估計:使用運動估計函數來估計在一系列圖像中觀察到的運動。
Texture 函數簡介
9.1、IMAQ Optical Flow (HS).vi
HS 光流法:使用 Horn 和 Schunck 算法計算兩幅連續圖像中的光流(速度流)信息。
9.2、IMAQ Optical Flow (LKP).vi
LKP 光流法:使用基於金字塔的 Lucas 和 Kanade 算法計算兩個連續圖像幀之間一組特徵點的位置變化。
9.3、IMAQ Optical Flow (LK).vi
LKP 光流法:使用 Lucas 和 Kanade 算法計算兩幅連續圖像之間的光流(速度流)信息。
9.4、IMAQ Overlay Motion Vectors.vi
運動矢量疊加:在圖像上疊加速度信息。
五、Machine Vision
機器視覺:使用機器視覺函數執行常見的機器視覺檢查任務,包括圖像中存在或不存在部件,並測量部件的尺寸以查看它們是否符合規格
1、Select Region of Interest
選擇ROI:使用選擇 ROI 函數從外部顯示窗口中選擇圖像的特定區域。
Select Region of Interest 函數簡介
1.1、IMAQ Select Point.vi
選擇點:允許用戶指定點在圖像中的位置。IMAQ Select Point.vi 在指定窗口中顯示圖像並提供點工具。
1.2、IMAQ Select Line.vi
選擇線:允許用戶指定圖像中線條的位置。IMAQ Select Line.vi 在指定窗口中顯示圖像,並提供線條工具。
1.3、IMAQ Select Rectangle.vi
選擇矩形:允許用戶指定圖像中的矩形區域。IMAQ Select Rectangle.vi 在指定窗口中顯示圖像,並提供矩形和旋轉矩形工具。
1.4、IMAQ Select Annulus.vi
選擇環形:允許用戶在圖像中指定環形區域。IMAQ Select Annulus.vi 在指定窗口中顯示圖像,提供環形工具,並返回用戶單擊窗口中的「確定」時所選環形區域的坐標。
2、Coordinate System
坐標系:使用坐標系函數在圖像中查找各種類型的坐標系。使用這些函數可以使用邊緣檢測或模式匹配來找到坐標系
Coordinate System 函數簡介
2.1、IMAQ Find CoordSys (Rect) 2.vi
查找坐標(矩形區域):基於圖像搜索區域中對象的位置計算坐標系。
2.2、IMAQ Find CoordSys (2 Rects) 2.vi
查找坐標(2 矩形區域):基於圖像的兩個搜索區域中對象的位置計算坐標系。
2.3、IMAQ Find CoordSys (Pattern) 3.vi
查找坐標(模板):在輸入圖像的矩形搜索區域中搜索模板圖像。
3、Count and Measure Objects
計數和測量對象:使用計數和測量對象來計算和測量對象。
Count and Measure Objects 函數簡介
3.1、IMAQ Count Objects 2.vi
對象數量:在矩形搜索區域中定位、計數和測量對象。這個 vi 使用像素強度上的閾值從其背景分割對象。
4、Measure Intensities
測量強度:使用測量強度函數測量點上像素的強度或沿直線或圖像矩形區域的像素強度統計。
Measure Intensities 函數簡介
4.1、IMAQ Light Meter (Point).vi
光強計(點):測量以圖像點為中心的3 x 3 像素鄰域中的像素強度。
4.2、IMAQ Light Meter (Line).vi
光強計(線):測量圖像線條上的像素強度。
4.3、IMAQ Light Meter (Rectangle).vi
光強計(矩形):測量圖像矩形中的像素強度。
5、Measure Distances
測量距離:使用測量距離函數測量圖像中的距離,例如兩個垂直方向邊緣之間的最小和最大水平間隔,或兩個水平方向邊緣之間的最小或最大垂直間隔。
Measure Distances 函數簡介
5.1、IMAQ Clamp Horizontal Max.vi
夾鉗水平最大值:測量從搜索區域垂直側到搜索區域中心的水平方向距離。
5.2、IMAQ Clamp Horizontal Min.vi
夾鉗水平最小值:測量從搜索區域中心到搜索區域垂直邊的水平方向距離。
5.3、IMAQ Clamp Vertical Max.vi
夾鉗垂直最大值:測量從搜索區域的水平邊到搜索區域中心的垂直方向距離。
5.4、IMAQ Clamp Vertical Min.vi
夾鉗垂直最小值:測量從搜索區域中心到搜索區域水平邊的垂直方向距離。
5.5、IMAQ Clamp Max.vi
夾鉗最大值:沿 ROI 區域查找邊(僅旋轉矩形),並測量找到的邊上最遠的相對點之間的距離。邊緣通過從 ROI 中提取輪廓並分析其順序和幾何結構來確定。當存在有效的校準信息時,距離以像素和實際單位測量。
6、Locate Edges
邊緣定位:使用定位邊緣查找圖像的垂直、水平和圓形邊 與 9、Caliper 相比,本類函數直接合併了查找邊緣和曲線擬合兩步,可直接顯示結果
Locate Edges 函數簡介
6.1、IMAQ Find Edge.vi
查找邊緣:查找圖像中某個四邊形ROI 區域內的直邊(直線)。
6.2、IMAQ Find Circular Edge 3.vi
查找圓形邊緣:在搜索區域中定位圓形邊緣。這個 vi 定位一組搜索線和對象邊緣之間的交叉點。
6.3、IMAQ Find Concentric Edge 2.vi
查找徑向邊緣:在圖像的環形搜索區域中查找徑向邊緣。這個 vi 定位一組環形搜索線和對象邊緣之間的交叉點。
7、Find Patterns
查找模板:使用查找模板函數在圖像中查找模板。
Find Patterns 函數簡介
7.1、IMAQ Find Pattern 4.vi
查找模板4:在圖像的矩形搜索區域中搜索模板圖像。
8、Searching and Matching
搜索與匹配:使用搜索和匹配函數定位圖像中的模板和子圖像。這些函數允許您執行顏色和灰度模式匹配以及形狀匹配。
Searching and Matching 函數簡介
8.1、IMAQ Learn Pattern 4.vi
學習模式 4:創建圖案匹配階段你想要搜索的模板圖像的描述。此描述數據被用於輸入模板圖像。在匹配階段,從模板圖像中提取模板描述符,並用於檢測圖像中的模板。
8.2、IMAQ Match Pattern 4.vi
匹配模式 4:在檢測圖像中搜索模板或模板圖像。在此之前運行 IMAQ Learn Pattern 4.vi 以配置匹配階段的模板圖像。
8.3、IMAQ Get Template Information.vi
獲取模板信息:檢索用於學習模板圖像的信息。
8.4、IMAQ Setup Learn Geometric Pattern 2.vi
設置學習幾何模板 2:設置學習過程中使用的參數。在運行 IMAQ Learn Geometric Pattern 2.vi 之前運行此vi。
8.5、IMAQ Learn Geometric Pattern 2.vi
學習幾何模板2:創建一個在匹配階段要搜索的模板圖像的描述。
8.6、IMAQ Setup Match Geometric Pattern 2.vi
設置匹配幾何模板 2:設置匹配過程中使用的參數。在運行 IMAQ Match Geometric Pattern 2.vi 之前運行此vi。
8.7、IMAQ Match Geometric Pattern 2.vi
匹配幾何模板2:在檢查圖像中搜索模板,或模板圖像。
8.8、IMAQ Setup Learn Color Pattern.vi
設置學習顏色模板:設置在彩色學習階段使用的參數。運行IMAQ Learn Color Pattern.vi之前運行此 vi。
8.9、IMAQ Learn Color Pattern.vi
學習顏色模板:創建一個在彩色模式匹配階段將要尋找的顏色模板圖像的描述。
8.10、IMAQ Setup Match Color Pattern.vi
設置匹配顏色模板:設置在彩色匹配過程中使用的參數。運行 IMAQ Match Color Pattern.vi 之前運行此vi。
8.11、IMAQ Match Color Pattern.vi
匹配顏色模板:搜索輸入圖像中的顏色模板或顏色模板圖像。
8.12、IMAQ Read Image And Vision Info.vi
讀取圖像和視覺信息:讀取圖像文件,包括任何用圖像存儲的額外視覺信息。這包括概況信息、匹配模板信息、校準信息和定製數據,如由 IMAQ Write Image And Vision Info File 2 的實例。
8.13、IMAQ Write Image And Vision Info File 2.vi
寫入圖像和視覺信息文件 2:寫入一個圖像和與圖像相關的額外視覺信息到一個PNG文件。這一額外視覺信息包括概況信息、模式匹配模板信息、校準信息和定製數據。
8.14、IMAQ Detect Shapes.vi
檢測形狀:搜索圖像中的矩形、線條、橢圓或圓圈。
8.15、IMAQ Shape Match Tool.vi
形狀匹配工具:在一個圖像中找到對象,該圖像的形狀與對象的形狀匹配。
8.16、Geometric Matching Advanced (Edge Based)
幾何匹配高級(基於邊緣):利用高級的幾何匹配(基於邊緣)優化和精細調諧參數,用於基於邊緣的幾何模式匹配的學習和匹配。這些功能是為高級用戶設計的。不合適的使用可能導致不預期的結果。
8.16.1、IMAQ Advanced Setup Learn Geometric Pattern 2.vi
高級設置學習幾何模板2:優化和微調基於邊緣的幾何模式匹配學習階段使用的高級參數
8.16.2、IMAQ Advanced Setup Match Geometric Pattern 2.vi
高級設置匹配幾何模板 2:優化和微調匹配階段中使用的高級參數基於邊緣的幾何圖案匹配。
8.17、Geometric Pattern Matching (Feature Based)
幾何模板匹配(基於特徵):使用幾何匹配(基於特徵)在一個灰度圖像中定位區域,該圖像匹配了一個參考模式的模板。
8.17.1、IMAQ Setup Learn Geometric Pattern.vi
設置學習幾何模板:設置基於特徵的幾何模式匹配學習過程中使用的參數。在使用IMAQ Learn Geometric Pattern.vi 之前運行這個vi。
8.17.2、IMAQ Learn Geometric Pattern.vi
學習幾何模板:創建要在基於特徵的幾何圖案匹配的匹配階段搜索的模板圖像的描述。
8.17.3、IMAQ Match Geometric Pattern.vi
匹配幾何模板:在檢查圖像中搜索模板或模板圖像。
8.17.4、IMAQ Setup Match Geometric Pattern.vi
設置匹配幾何模板:設置基於特徵的幾何圖案匹配過程中使用的參數。在使用 IMAQ Match Geometric Pattern.vi 之前運行此vi。
8.17.5、IMAQ Read Multiple Geometric Template.vi
讀取多個幾何模板:從文件路徑指定的文件創建新的多個幾何模板。
8.17.6、IMAQ Learn Multiple Geometric Patterns.vi
學習多個幾何模板:將要在匹配階段搜索的模板的描述組合到多個幾何模板中。使用多個幾何模板在目標圖像中搜索這些模板圖像。
8.17.7、IMAQ Match Multiple Geometric Patterns.vi
匹配多個幾何模板:將多模板控制項中指定的模板與目標圖像匹配。
8.17.8、IMAQ Dispose Multiple Geometric Template.vi
釋放多個幾何模板:銷毀多個幾何模板並釋放它在內存中佔用的空間。
8.17.9、IMAQ Write Multiple Geometric Template.vi
寫入多個幾何模板:將多個幾何模板寫入由文件路徑指定的文件。此vi 保存多個幾何模板的嚴格狀態。
8.17.10、Geometric Matching Advanced (Feature Based)
幾何匹配高級(基於特徵):使用Geometric Matching Advanced (Feature Based)優化和微調基於特徵的幾何模式匹配學習和匹配階段使用的高級參數。這些功能適用於高級用戶。使用不當可能導致意外結果。8.17.10.1、IMAQ Advanced Setup Learn Geometric Pattern.vi
高級設置學習幾何模板:優化和微調基於特徵的幾何模式匹配學習階段使用的高級參數。
8.17.10.2、IMAQ Advanced Setup Match Geometric Pattern.vi
高級設置匹配幾何模板:優化和微調基於特徵的幾何圖形匹配階段使用的高級參數。
8.17.10.3、IMAQ Get Geometric Template Features.vi
獲取幾何模板功能:返回描述幾何模板的特徵。
8.17.10.4、IMAQ Advanced Match Geometric Pattern.vi
高級匹配幾何模板:在檢查圖像中搜索模板或模板圖像。
9、Caliper
卡尺:使用卡尺函數沿指定的 ROI 區域檢測圖像中的特定邊緣、峰值、旋轉移位和其他特徵。
顯示邊緣點可使用自定義子 vi:Sub-OverlayPointswithSpecified Size.vi
9.1、IMAQ Simple Edge.vi
簡單邊緣:沿像素坐標數組查找臺階邊。這個 vi 可以返回第一個、第一個和最後一個,或者找到的所有邊。
9.2、IMAQ Edge Tool 3.vi
邊緣工具3:沿圖像中定義的路徑查找邊。
9.3、IMAQ Peak-Valley Detector.vi
峰谷檢測器:查找輸入數組中峰或谷的位置、振幅和二階導數。
9.4、IMAQ Caliper Tool.vi
卡尺工具:沿圖像中的指定路徑查找邊緣對。
9.5、IMAQ Line Gauge.vi
線規:以高精度亞像素精度測量所選邊緣之間的距離。
9.6、IMAQ Rake 3.vi
耙3(矩形耙):沿矩形區域內定義的一組平行線查找邊。
9.7、IMAQ Concentric Rake 3.vi
同心耙3:在圖像中沿同心圓或角路徑查找邊。
9.8、IMAQ Spoke 4.vi
輪輻 4:沿環形區域內指定的徑向線查找邊。
9.9、IMAQ Interpolate 1D.vi
插入 1 維:使用多個插值函數從圖像中重新採樣像素數組。使用此 vi 對圖像中的像素輪廓執行亞像素分析。
9.10、IMAQ Rotation Detect.vi
旋轉檢測:檢測兩個圖像之間的旋轉位移,通常是在參考圖像之間,零件在已知方向上被檢查,而另一個圖像的零件在未知位置。
9.11、IMAQ Find Straight Edges 3.vi
直邊查找3:查找圖像中某個指定四邊形區域內的直邊(直線)。
10、Contour Analysis
輪廓分析:使用輪廓分析函數從圖像中提取輪廓,用公式擬合輪廓,學習和計算輪廓數據,並對輪廓數據進行分類。將輪廓點封裝為 ROI Descriptor 可使用自定義子 vi:MVi-FreeContour2ROI.vi
10.1、IMAQ Extract Contour.vi
提取輪廓:從圖像中提取單個最佳輪廓。如果輸入圖像經過校準,則輪廓將通過校準進行學習。
10.2、IMAQ Fit Contour.vi
擬合輪廓:用公式擬合輪廓。如果輪廓被校準,擬合將發生在校正的空間中。
10.3、IMAQ Overlay Contour.vi
疊加輪廓:覆蓋圖像上的輪廓。
10.4、IMAQ Get Contour Info.vi
獲取輪廓信息:返回描述輪廓的所有信息。
10.5、IMAQ Compute Curvature.vi
計算曲率:計算沿輪廓的曲率輪廓。
10.6、IMAQ Classify Curvature.vi
分類曲率:對給定圖像中的輪廓進行分類。
10.7、IMAQ Compute Contour Distances.vi
計算輪廓距離:將目標輪廓與模板輪廓進行比較,並計算輪廓之間的距離。
10.8、IMAQ Classify Contour Distances.vi
分類輪廓距離:對包含輪廓的圖像和包含輪廓的模板圖像之間的距離進行分類。
10.9、IMAQ Setup Learn Contour Pattern.vi
設置學習輪廓模板:優化和微調學習階段使用的高級參數。在 IMAQ Learn Contour Pattern.vi 之前運行這個 vi。10.10、IMAQ Learn Contour Pattern.vi
學習輪廓模板:創建要在輪廓匹配階段搜索的模板圖像的描述。
10.11、IMAQ Setup Match Contour Pattern.vi
設置匹配輪廓模板:設置匹配過程中使用的參數。
10.12、IMAQ Advanced Setup Match Contour Pattern.vi
高級設置匹配輪廓模板:優化和微調輪廓匹配階段使用的高級參數。
11、Inspection
檢查:使用檢查函數將圖像與黃金模板參考圖像進行比較。用於比較差異
Inspection 函數簡介
11.1、IMAQ Learn Golden Template.vi
學習黃金模板:準備圖像以便在 IMAQ Compare Golden Template.vi 中使用。
11. 2、IMAQ Compare Golden Template.vi
比較黃金模板:將給定對齊方式下的圖像與模板圖像進行比較。
12、Classification
分類:使用分類函數通過將重要特性與概念上表示已知對象類的一組特性進行比較來識別。
未知對象(同上四-5)。
13、OCR
光學字符識別:使用 OCR 函數開發光學字符識別(OCR)應用程式。OCR 是機器視覺軟體讀取圖像中文本或字符的過程。
13. 1、IMAQ OCR Create Session.vi
創建會話:創建OCR 會話並返回與該會話關聯的引用句柄。
13. 2、IMAQ OCR Dispose Session.vi
釋放會話:釋放OCR 會話並釋放與此會話關聯的資源。
13. 3、IMAQ OCR Property.vi
屬性:獲取和設置由屬性指定的屬性的值。可以使用此多態 vi 設置 i32 屬性、字符串屬性或布爾屬性的值。連接到屬性值輸入的數據類型確定要使用的多態實例。
13. 4、IMAQ OCR Threshold Data 2.vi
閾值數據2:獲取和設置OCR 閾值數據。
13. 5、IMAQ OCR Train.vi
訓練:將字符值指定給 NI Vision 在圖像中標識的對象。新訓練的字符將附加到現有的訓練字符集。圖像包含的對象不能超過255 個。
13. 6、IMAQ OCR Character Info.vi
字符信息:在指定索引處檢索有關經過訓練的字符的信息。
13. 7、IMAQ OCR Rename Character.vi
重命名字符:在字符索引指定的索引處重命名經過訓練的字符。
13. 8、IMAQ OCR Delete Character.vi
刪除字符:從字符索引指定的索引處的已訓練字符集中刪除一個字符。
13. 9、IMAQ OCR Read Text 4.vi
閱讀文本4:根據設置的屬性識別圖像中的所有對象,然後將每個對象與字符集文件中的每個字符進行比較。
13. 10、IMAQ OCR Set Valid Characters.vi
設置有效字符:指定對圖像中每個字符位置有效的字符。
13. 11、IMAQ OCR Read Character Set File.vi
讀取字符集文件:從文件路徑指定的字符集文件讀取字符集和會話屬性。
13. 12、IMAQ OCR Write Character Set File.vi
寫入字符集文件:將訓練後的字符集和會話屬性存儲在由文件路徑指定的文件中。
13. 13、IMAQ OCR Verify Text.vi
驗證文本:驗證圖像中文本的準確性。
13. 14、IMAQ OCR Set Reference Character.vi
集參考字符:將字符設置為字符類的引用字符。如果字符類已經有引用字符,則新字符將替換舊字符作為引用字符。
14、Instrument Readers
儀器閱讀器:使用儀器閱讀器函數開發需要從七段顯示器、儀表或量具或一維條形碼中讀取的應用程式。
14. 1、IMAQ Get LCD ROI.vi
獲取 LCD ROI:使用此vi 在ROI 區域內定位七段顯示。顯示器可以包含多個數字。要查找每個數字的區域,必須激活七段指示器的所有段。
14. 2、IMAQ Read LCD.vi
讀取 LCD:使用 IMAQ Get LCD ROI.vi 計算的ROI 描述符讀取輸入圖像中的LCD 顯示。IMAQ Read LCD.vi 以雙精度和字符串的形式返回數字。段狀態輸出指示數字是正確識別還是未完全識別。此輸出返回顯示中每個數字的狀態。該 VI 讀取 LCD 或LED 指示燈,並允許光漂移。
14. 3、IMAQ Read Single Digit.vi
讀取單個數字:從圍繞該數字繪製的感興趣的矩形區域中讀取單個七段數字。此 vi讀取 LCD 和 LED 指示燈。它以字符串形式返回一個值,並返回一個包含每個段(開或關)狀態的簇。
14. 4、Get Meter.vi
獲取儀表:使用針的初始和滿刻度位置校準儀表或量表。它計算針底部的位置和針尖跟蹤的弧。
14. 5、IMAQ Read Meter.vi
讀取儀表:使用針的底部和針尖跟蹤的弧點陣列讀取針的位置。這個儀器在淺色背景上用深色指針讀數,或者在深色背景上用淺色指針讀數。它返回針尖的位置,以米的整個範圍的百分比表示。
14. 6、IMAQ Get Meter 2.vi
獲取儀表2:使用儀表上的三個點校準儀表或量表:針的底部、針在初始位置的尖端以及針在滿刻度位置的尖端。它計算針尖所覆蓋的圓弧上的點的位置。
14. 7、IMAQ Read QR Code.vi
讀取二維碼:定位並讀取二維碼中編碼的值。
14. 8、IMAQ Read Barcode 2.vi讀取條形碼 2:讀取常見的 1D 條碼類型,包括Codabar、39 條碼、93 條碼、128 條碼、EAN 8、EAN 13、交錯2/5 碼、MSI、UPCA、Pharmacode 和RSS Limited(GS1 Databar Limited)。
14. 9、IMAQ Read Data Matrix Barcode 3.vi
讀取數據矩陣條碼 3:定位並讀取數據矩陣條碼中編碼的值。
14. 10、IMAQ Grade DataMatrix Barcode.vi
分級數據矩陣條碼:對數據矩陣條形碼進行分級。您必須首先準備此數據矩陣條碼圖像,以便使用 IMAQ Read Data Matrix Barcode 3.vi 讀取後進行分級。
14. 11、IMAQ Read PDF417 Barcode.vi
讀取 PDF417 條碼:讀取編碼為 PDF417 條碼的值。您可以將解碼後的數據與引用字符串進行比較,或者檢查數據是否包含特定模式。
15、Analytic Geometry
解析幾何:使用解析幾何函數從圖像分析和機器視覺算法返回的點坐標中得出結果。使用這些函數將直線、圓和橢圓擬合到圖像中的一組點上;計算由一組點表示的多邊形的面積;測量點之間的距離;並找到由點表示的線之間的角度。
15. 1、IMAQ Point Distances.vi
點距離:計算連續點對之間的距離。
15. 2、IMAQ Get Angles.vi
獲取角度:計算由圖像中的四個點集或兩個點集與公共頂點之間的角度。
15. 3、IMAQ Fit Line.vi
直線擬合:找到最能代表一組點的質量線。結果線只考慮計算輸入點的子集。
15. 4、IMAQ Lines Intersection.vi
線條交點:計算兩條直線之間的交點和角度。每一條線由該線上的任意兩點指定。
15. 5、IMAQ Perpendicular Line.vi
垂線:計算穿過點並垂直於參考線的垂直線。它還返回從點到線的距離。
15. 6、IMAQ Bisecting Line.vi
角平分線:計算將由第1 條線和第2 條線指定的兩條直線平分的直線。
15. 7、IMAQ Mid Line .vi
中線:計算點和參照線之間的中線。中線是平行於基準線的線,位於點和基準線的中間。
15. 8、IMAQ Polygon Area.vi
多邊形區域:計算由頂點坐標描述的多邊形的面積。
15. 9、IMAQ Fit Circle 2.vi
擬合圓2:查找最能代表一組點的圓,並返回圓的半徑、周長和面積。
15. 10、IMAQ Fit Ellipse 2.vi擬合橢圓2:查找最能代表一組點的橢圓,並返回橢圓的中心、長軸和短軸、周長和面積。根據拒絕異常值,此 vi 至少需要 5 或 6 點。生成的橢圓可能只考慮提供的點的一個子集。
15. 11、IMAQ GetPointsOnLine.vi
獲取線上點:給定直線的端點,返回包含直線的所有點的數組。
15. 12、IMAQ GetPointsOnContour.vi
獲取輪廓點:查找圖像中的邊緣分段數,並返回每個分段中像素的坐標。任何大於零的像素都被視為邊緣位置。
15. 13、IMAQ Build CoordSys (Points).vi
構建坐標系(點):建立與圖像平面有關的任意坐標系的參考。
16、Stereo
雙目立體視覺:利用立體視覺系統開發雙目立體視覺應用。雙目立體視覺系統使用兩個攝像頭,它們之間相隔很短距離,並且幾乎彼此平行安裝。
16. 1、IMAQ Create Binocular Stereo Session.vi
創建雙目立體會話:創建雙目立體視覺會話。
16. 2、IMAQ Dispose Binocular Stereo Session.vi
釋放雙目立體會話:破壞雙目會話並釋放它在內存中所佔的空間。當應用程式不再需要會話時,必須調用此 vi。創建的每一個雙目立體會話都需要此 vi。
16. 3、IMAQ Read Binocular Stereo File.vi
讀取雙目立體文件:從文件路徑指定的文件讀取雙目立體會話。
16. 4、IMAQ Write Binocular Stereo File.vi
擬合寫入雙目立體文件 2:將雙目立體會話寫入文件路徑中指定的文件。此 vi 保存雙目立體會話的確切狀態。
16. 5、IMAQ Learn Binocular Stereo Calibration.vi
學習雙目立體校準:學習雙目立體信息。該vi 以左右攝像機的標定模板圖像為輸入,計算雙目立體視覺所需的標定信息。標定過程計算兩臺攝像機之間的旋轉矩陣和平移矢量。它還計算了基本矩陣和基本矩陣。在學習過程中,這個 vi 還將計算校正左右圖像所需的查找表,並識別左右圖像中重疊的區域。
此vi 假設兩個校準模板都是從同一組網格圖像(或點)中學習的。這個 VI 將使用存儲在兩個校準模板中的參考點來學習雙目立體校準信息。它將使用第一組(第一個網格圖像或點)中的點來選擇真實世界坐標系的原點。
16. 6、IMAQ Get Binocular Stereo Calibration Info.vi
獲取雙目立體校準信息:返回與圖像相關聯的雙目立體校準信息。
16. 7、IMAQ Stereo Correspondence (Block Matching).vi
立體通訊(塊匹配):使用塊匹配方法計算一對立體圖像的視差圖。這個虛擬儀器將
在內部執行整個三維重建過程,直到獲得差異信息為止。也就是說,VI 將對左右圖像進行內部校正,然後使用校正後的圖像計算出視差信息。
16. 8、IMAQ Stereo Correspondence (SG Block Matching).vi
立體通訊(SG 塊匹配):利用半全局塊匹配方法計算一對立體圖像的視差圖。這個虛擬儀器將在內部執行整個三維重建過程,直到獲得差異信息為止。也就是說,VI 將對左右圖像進行內部校正,然後使用校正後的圖像計算出視差信息。
16. 9、IMAQ Get Rectified Image From Stereo.vi
從立體中獲取校正圖像:返回校正後的圖像。返回的圖像可以來自左側或右側攝像頭。
16. 10、IMAQ Get Depth Image From Stereo.vi從立體中獲取深度圖像:返回與計算的最新視差圖像關聯的深度圖像。運行 IMAQ Stereo Correspondence (Block Matching).vi 或 IMAQ Stereo Correspondence (SG Block Matching).vi 之後運行此 vi16. 11、IMAQ Get Depth Planes From Stereo.vi
從立體中獲取深度平面:返回輸入視差圖像中所有點的 X、Y 和 Z 值(三維點坐標)。X、Y 和 Z 坐標值作為單獨的圖像返回。
16. 12、IMAQ Convert Pixel To 3D Coordinates.vi
將像素轉換為三維坐標:根據輸入像素坐標處的視差值和雙目立體會話中存在的立體校準信息,將像素坐標轉換為真實的三維坐標。
16. 13、IMAQ Get Maximum Disparity 2.vi獲取最大差異 2:返回雙目立體系統中某一深度點的最大視差值。使用此 vi 計算 IMAQ立體對應(塊匹配)vi 或 IMAQ 立體對應(SG 塊匹配)vi 應根據您期望被檢查對象來自立體系統的最小深度搜索的視差數。16. 14、IMAQ Interpolate Disparity Image 2.vi視差圖像插補2:使用多項式插值在視差圖像中插入視差值。在 IMAQ 立體對應(塊匹配)vi 或 IMAQ 立體對應(SG 塊匹配)vi 無法確定視差值的情況下,插值將像素設置為近似值,從而使圖像更平滑。17、Tracking
跟蹤:使用跟蹤函數跟蹤從圖像幀到圖像幀的對象。
17. 1、IMAQ Create Object Tracking Session.vi
創建對象跟蹤會話:創建新的對象跟蹤會話。
17. 2、IMAQ Dispose Object Tracking Session.vi
釋放對象跟蹤會話:銷毀對象跟蹤會話並釋放它在內存中佔用的空間。當應用程式不再需要會話時,必須調用此 vi。創建的每個對象跟蹤會話都需要此 vi。
17. 3、IMAQ Get Object Tracking Session Info.vi
獲取對象跟蹤會話信息:返回有關對象跟蹤會話的信息。您還可以使用此 vi 更改跟蹤信息並將更改傳遞給 IMAQ Track Objects.vi。
17. 4、IMAQ Read Object Tracking Session.vi
讀取對象跟蹤會話:讀取由 IMAQ Write Object Tracking Session.vi 編寫的會話信息。
17. 5、IMAQ Write Object Tracking Session.vi
寫入對象跟蹤會話:將對象跟蹤會話寫入用戶定義的位置。
17. 6、IMAQ Add Tracking Object.vi
添加跟蹤對象:從存儲在對象跟蹤會話中的實例列表中添加對象實例。
17. 7、IMAQ Delete Tracking Object.vi
刪除跟蹤對象:從存儲在對象跟蹤會話中的實例列表中刪除對象實例。
17. 8、IMAQ Get Tracking Object Info.vi
獲取跟蹤對象信息:返回有關被跟蹤對象的信息。您還可以使用此 vi 更改跟蹤信息並將更改傳遞給 IMAQ Track Objects.vi。
17. 9、IMAQ Rename Tracking Object.vi
重命名跟蹤對象:在對象跟蹤會話中重命名對象。
17. 10、IMAQ Set Initial Object Tracking Position.vi
設置初始目標跟蹤位置:指定要跟蹤的對象的起始位置。
17. 11、IMAQ Object Tracking Options.vi
對象跟蹤選項:指定用於跟蹤對象的選項。
17. 12、IMAQ Track Objects.vi
跟蹤對象:跟蹤從圖像到圖像的用戶定義對象。
18、Feature Correspondence特徵對應關係:使用特徵對應函數查找圖像中的角和特徵。Feature Correspondence 函數簡介
18. 1、IMAQ Corner Detector.vi
角探測器:使用 Harris 或Shi-Tomasi 角檢測算法檢測圖像中的角點。
18. 2、IMAQ FAST Feature Point Detector.vi快速特徵點檢測器:使用加速段測試(Fast)算法中的特徵檢測圖像中的角點。快速識別圖像中所有有趣的特徵,並選擇特徵,以便在各種變換(如模糊、旋轉和縮放)中一致地檢測到它們。
18. 3、IMAQ Feature Point Descriptor.vi
特徵點描述符:為每個特徵點計算特徵描述符向量。支持的特徵描述符是快速視網膜關鍵點(freak)和二值化魯棒不變可伸縮關鍵點(brick)。
18. 4、IMAQ Match Feature Points.vi
匹配特徵點:計算特徵點之間的對應關係。
可重配置 I/O 架構(RIO 架構)視覺:用於創建控制 RIO 設備上的 I/O 的應用程式1、Vision RIO Open FPGA Reference.vi
打開 FPGA 引用:打開對指定 FPGA 設備的引用。您必須先打開對 FPGA 設備的引用,然後才能使用任何需要 FPGA 引用的 Vision ROI vi 。
2、Vision RIO Close FPGA Reference.vi
關閉FPGA 引用:關閉對FPGA 設備的引用,並可以選擇重置設備上執行的 FPGA。
3、Vision RIO Enumerate Devices.vi
枚舉設備:列舉系統中可用的 VISION RIO 設備。
4、Vision RIO Get Device Capabilities.vi
獲取設備功能:提供有關可用輸入和輸出端以及設備上可用功能的信息。
5、Vision RIO Cast FPGA Reference.vi
映射FPGA 引用:將通用的 FPGA 引用強制轉換為特定的硬體引用。
6、Vision RIO Read Encoder.vi
讀取編碼器:讀取當前編碼器計數。825x 設備使用 ISO In 6 作為編碼器的A 相,ISO 作In 7 為編碼器的 B 相。8237 設備使用 Diff In 0 作為編碼器的 A 相,使用Diff In 1 作為編碼器的B 相。
7、Vision RIO Read Timestamp.vi
讀取時間戳:讀取當前時間戳。
8、Vision RIO Timestamp Conversion.vi
時間戳轉換:在刻度計數和時間戳之間轉換。
9、Vision RIO Read Write Line.vi
讀寫行:讀取/寫入行狀態。
10、Vision RIO Get Set Line Direction.vi
獲取設定線方向:獲取/設置雙向線路的線路方向或 825x 設備上 TTL 輸出線路的啟用狀態。825x 設備允許啟用或禁用 TTL 輸出線路。當線路被禁用時,它進入三態模式,不能從FPGA 更新。
11、Vision RIO Get Set Input Line Filter Time.vi
獲取設定輸入端過濾時間:獲取/設置輸入端篩選時間。使用此 vi 過濾輸入端的噪聲,並避免虛假邊緣導致線狀態發生不必要的變化。當輸入端保持新狀態的時間長於篩選時間時,輸入端的狀態被視為已更改。
12、Vision RIO Configure Pulse.vi
配置脈衝:在輸出端產生脈衝。可以立即生成脈衝,也可以等待觸發信號的斷言邊緣。每個配置的邊緣計數器都使用一個脈衝 ID,每次運行此 vi 時都會自動生成該 ID。運行Vision RIO Unconfigure Pulse.vi 以停止脈衝並釋放資源。
13、Vision RIO Send Pulse Software Trigger.vi
發送脈衝軟體觸發:發送一個軟體觸發器,該觸發器可由已配置的脈衝使用。使用 Vision RIO Configure Pulse.vi 並將觸發線類型指定為脈衝 sw Pulse SW Trigger 以使用此軟體觸發器。Vision RIO Configure Pulse .vi 中的 Line Number 參數對應於該 vi 使用的軟體觸發器陣列中的索引。可以從同一軟體觸發器觸發多個配置的脈衝。
14、Vision RIO Unconfigure Pulse.vi
取消脈衝配置:停止脈衝並釋放由脈衝 ID 標識的脈衝項目。
15、Vision RIO Configure Edge Counter.vi
配置邊緣計數器:配置邊緣計數器以監視輸入端並計數上升、下降或發生的任何邊緣。使用Vision RIO Get Set Input Line Filter Time.vi 避免計算假邊。每個配置的邊緣計數器都使用一個邊緣計數器 ID,每次運行此 vi 時都會自動生成該 ID。運行 Vision RIO Unconfigure Edge Counter .vi 以清除邊緣計數器並釋放資源。
16、Vision RIO Read Edge Counter.vi
讀取邊緣計數器:返回邊緣計數器的當前值,以及自上次讀取計數以來已計數的邊緣。使用Vision RIO Configure Edge Counter .vi 指定要監視邊緣的輸入端。
17、Vision RIO Reset Edge Counter.vi
重置邊緣計數器:重置邊緣計數器項的當前計數。邊緣計數器保持配置為相同的設置,但現在重置。
18、Vision RIO Unconfigure Edge Counter.vi
取消配置邊緣計數器:停止邊緣計數器項並釋放由邊緣計數器 ID 標識的計數器項。
19、Vision RIO Configure Edge Latch Queue.vi
配置邊緣鎖存器隊列:配置隊列並監視上升或下降邊緣的輸入或輸出端。當指定的邊緣出現時,FPGA 將所有輸入端的當前編碼器計數、時間戳或值入隊列。使用 Vision RIO Dequeue Edge Latch Value .vi 從隊列中讀取值。每個配置的邊緣鎖存器隊列都使用一個邊緣鎖存器隊列 ID,每次運行此 vi 時都會自動生成該 ID。運行 Vision RIO Unconfigure Edge Latch Queue .vi 以清除隊列並釋放資源。
20、Vision RIO Dequeue Edge Latch Value.vi
邊緣鎖存器值出隊列:從先前配置的邊緣鎖存隊列中取出值。邊緣鎖存隊列可以保存編碼器計數、時間戳或所有輸入端的值。
21、Vision RIO Flush Edge Latch Queue.vi
刷新邊緣鎖存器隊列:刪除存儲在邊緣鎖存器隊列中的值。隊列保持配置為相同的設置,但現在為空。
22、Vision RIO Unconfigure Edge Latch Queue.vi
取消配置邊緣鎖存器隊列:從隊列中刪除所有存儲的值,並釋放由邊緣鎖存器隊列 ID標識的邊緣鎖存器隊列。
23、Vision RIO Configure Output Queue.vi
配置輸出隊列:配置輸出隊列。輸出隊列用於驅動行以響應諸如行更改、時間戳或編碼器計數等觸發器。每個配置的輸出隊列都使用一個輸出隊列 ID,每次運行此 vi 時都會自動生成該ID。運行 Vision RIO Unconfigure Output Queue.vi 以清除隊列並釋放資源。有關 VISION RIO 輸出隊列的一般信息,請參閱詳細 VISION RIO VI 參考幫助文件中的VISION RIO 概念文檔。
24、Vision RIO Add to Output Queue.vi
添加到輸出隊列:將脈衝項或行狀態項添加到配置的輸出隊列。有關 VISION RIO 輸出隊列的一般信息,請參閱詳細 VISION RIO VI 參考幫助文件中的 VISION RIO 概念文檔。
25、Vision RIO Flush Output Queue.vi
刷新輸出隊列:刪除輸出隊列中所有排隊的項目。隊列保持配置為相同的設置,但現在為空。有關VISION RIO 輸出隊列的一般信息,請參閱詳細 VISION RIO VI 參考幫助文件中的VISION RIO 概念書。
26、Vision RIO Unconfigure Output Queue.vi
取消配置輸出隊列:從隊列中刪除所有存儲值,並釋放由輸出隊列ID 標識的輸出隊列。
27、Vision RIO Get Output Queue Info.vi
獲取輸出隊列信息:返回由輸出隊列 ID 標識的輸出隊列的信息。有關 VISION RIO 輸出隊列的一般信息,請參閱詳細 VISION RIO VI 參考幫助文件中的 VISION RIO 概念書。
28、Vision RIO Configure Watchdog.vi
配置看門狗:使用超時和過期操作配置看門狗,這些操作用於確保應用程式正在運行。如果應用程式未能在超時前重置看門狗,看門狗可以驅動輸出端、停止所有FPGA 操作或設置指示器。
29、Vision RIO Read Watchdog.vi
讀取看門狗:讀取看門狗的過期狀態和剩餘時間。使用 Vision RIO Configure Watchdog .vi配置看門狗設置。
30、Vision RIO Reset Watchdog.vi
重置看門狗:重置看門狗的計時器。當看門狗啟用時,必須定期調用此 vi 以防止其過期。
31、Vision RIO Unconfigure Watchdog.vi
取消看門狗配置:禁用看門狗,因此不再需要重置它。
32、Vision RIO Read Shutdown States.vi
讀取關機狀態:讀取為 FPGA 上的輸出端配置的關機狀態。當關閉狀態被啟用時,如果關閉輸入端被確認為低電瓶或看門狗過期操作被設置為系統關閉且看門狗過期,則輸出端被驅動到指定的值。
33、Vision RIO Write Shutdown States.vi
寫入關機狀態:將關閉狀態寫入 FPGA 上的輸出端。當關閉狀態被啟用時,如果輸入端為低電平或看門狗在過期操作設置為系統關閉時過期,則輸出端被驅動到指定的值。
34、Vision RIO Configure Ethernet Action Command.vi
配置乙太網操作命令:配置虛擬 I/O 線路,以便在發出信號時發送乙太網視覺操作命令。這可以用來觸發相機或其他乙太網視覺設備或觸發其他操作。一旦配置了單獨的線路,FPGA 就可以將虛擬線路用於寫入線路的任何 I/O 操作,例如驅動線路狀態或排隊脈衝。
35、Vision RIO Configure PPS.vi
配置每秒產生一個脈衝(PPS):在輸出端每秒產生一個脈衝(pps)。PPS 的啟動可以通過「啟動時間延遲」參數延遲,PPS 的上升沿可以通過「偏移調整」參數從第二個邊界偏移。每個配置的PPS 都使用一個 PPS ID,每次運行此 vi 時都會自動生成該 ID。運行Vision RIO Unconfigure PPS.vi 以停止脈衝並釋放資源。此vi 僅在 IC-317X 上受支持。如果在實時 IC-317X 上安裝 ni-timesync 15.5 或更高版本,則 FPGA 時間可以與外部 IEEE 1588 主機同步,生成的PPS 也將與主機時間同步。
36、Vision RIO Unconfigure PPS.vi
取消配置每秒產生一個脈衝(PPS):停止PPS 並釋放由 PPS ID 標識的 PPS 項。
七、Vision ExpressVision Express 函數簡介
1、Vision Assistant Express VI.vi
視覺快速採集:使用 LabVIEW 環境中的 NI VISION 助手執行常見的圖像處理任務。
2、Vision Acquisition Express VI.vi
快速視覺助手:使用 NI-IMAQ 或 NI-IMAQdx 從相機獲取圖像。有關更多信息,請參閱NI Vision Acquisition Express VI 幫助。
八、SoftMotion
SoftMotion 函數簡介
1、Axis constant
軸常量引用:指定對LabView 項目中的軸的引用。軸是與步進電機、伺服電機或其他類似運動或控制設備相關聯的單元。
2、Coordinate constant
坐標系常量引用:指定對LabView 項目中坐標的引用。坐標系是一組邏輯的、多維的軸。
3、Table constant
軟運動表常量引用:指定對 SoftMotion 表的引用。表格包含用於輪廓和凸輪操作的數據。使用「配置表」對話框從文件加載值,或使用「創建表」以編程方式創建值(僅限輪廓移動)。
4、Create Reference.vi
創建引用:創建對特定 SoftMotion 接口對象的引用。當您將這個vi 放到框圖上時,多態vi 選擇器是可見的。使用此選擇器選擇要使用的多態實例。
5、Property Node.vi
屬性節點:獲取(讀取)和/或設置(寫入)引用的屬性。使用屬性節點獲取或設置本地或遠程應用程式實例、VIS、對象和 SoftMotion 資源的屬性和方法。還可以使用屬性節點訪問LabView 類的私有數據。節點的操作方式與標準屬性節點相同。
6、Invoke Node.vi
調用節點:對引用調用方法或操作。調用節點(SoftMotion)預配置為訪問 SoftMotion軸方法。節點的操作方式與標準調用節點相同。
7、Destroy Reference.vi
銷毀引用:銷毀 SoftMotion 接口引用。當頂級 vi 完成運行時,labview 會自動銷毀現有的運動引用。但是,National Instruments 建議您明確地銷毀運動引用,特別是在長時間運行的應用程式中,以節省內存資源。
8、Wait Until Done.vi
等待完成:確保同步操作成功完成。
9、Express VIs
快速函數:使用 SoftMotion Express VIS 構建確定性運動控制應用程式。
9.1、Line.vi
直線運動:在軸或坐標資源上執行直線移動。直線移動連接一個或多個軸上的兩個點。直線移動可以基於位置或速度。移動的行為將根據線移動模式進行更改。軸必須處於就位位置或自動模式才能執行位置移動。
9.2、Arc.vi
圓弧運動:在坐標上執行圓弧、球面或螺旋弧移動。圓弧移動使用半徑和指定的其他參數在圓形中生成運動。根據圓弧移動模式執行更改的圓弧類型。軸必須處於就位位置或自動模式才能執行位置移動。
9.3、Contour.vi
輪廓運動:在軸或坐標資源上執行輪廓移動。輪廓移動表示為軟運動用來外推平滑曲線的一系列位置。這些位置可以存儲在表中,也可以提供在點[]輸入中(僅限同步操作)。移動中的每個點都被解釋為絕對位置,使用移動的起始點作為臨時「零」位置。輪廓移動的類型將根據輪廓模式進行更改。軸必須處於就位位置或自動模式才能執行位置移動。
9.4、Reference.vi
運動參考:在軸資源上執行參考移動,例如定位原點或限制位置。參考移動用於初始化運動系統並建立可重複的參考位置。移動的行為將根據引用移動模式進行更改。軸必須處於就位位置或自動模式才能執行位置移動。
9.5、Capture.vi
捕獲 :根據外部輸入(如傳感器狀態)記錄編碼器位置。您可以使用捕獲位置執行相對於捕獲位置的移動,或者在捕獲事件發生時簡單地記錄編碼器位置。
9.6、Compare.vi
比較:將外部活動與指定的編碼器位置同步。當到達指定位置時,執行用戶可配置的脈衝。位置比較操作的行為根據<比較模式而變化。
9.7、Gearing.vi
傳動裝置:為齒輪操作配置軸。傳動裝置使從軸的運動與主設備的運動同步,主設備可以是編碼器或另一軸的軌跡。根據傳動模式進行改變的傳動操作類型。
9.8、Camming.vi
凸輪:為凸輪操作配置軸。凸輪用於從軸跟隨主設備的非線性輪廓的應用。凸輪操作的類型根據凸輪模式而變化。
9.9、Read.vi
讀取:從軸、坐標、反饋和其他資源中讀取狀態和數據信息。使用可用的讀取方法從不同的資源獲取信息。
9.10、Write.vi
寫入:將狀態和數據信息寫入軸、坐標或反饋資源。使用可用的寫入方法將信息寫入不同的資源。
9.11、Reset Position.vi
位置復位:重置指定軸或坐標上的位置。
9.12、Stop.vi
停止:停止軸或坐標上的命令移動。移動的行為將根據停止模式進行更改。
9.13、Power.vi
啟用/禁用:啟用和禁用指定軸或坐標資源上的軸和/或驅動器。禁用軸也會禁用驅動器,禁用移動軸會導致運動立即停止,就像調用了禁用驅動器停止模式一樣。如果單獨禁用作為坐標一部分的軸,則坐標空間中的其他軸將禁用「驅動停止」,但軸仍處於活動狀態。
9.14、Clear Faults.vi
故障清除:清除SoftMotion 錯誤、警告和故障。
10、SoftMotion Advanced Functions
高級功能:使用 SoftMotion 高級 VIS 和功能創建自定義運動控制應用程式,包括或不包括NI 掃描引擎。
10.1、Function Blocks
功能塊:使用NI SoftMotion 功能塊構建使用功能塊編程範式的確定性運動控制應用程式。功能簡介參考 9、Express VIs
10.2、Synchronization Functions
同步功能:當使用 LabVIEW 實時模塊和LabVIEW FPGA 模塊創建運動應用程式時,使用 NI軟運動同步功能可實現主機和目標迴路的精確、無抖動同步。
10.2.1、NI SoftMotion Scan - Initialize Timer.vi
初始化計時器:初始化用於同步 RT 主機循環和 FPGA 目標循環的循環計時器。此信息隨後與 NI SoftMotion Scan - Loop Timer.vi 一起使用。
10.2.2、NI SoftMotion Scan - Begin Sync Transaction.vi
開始同步處理:啟動 RT 主機循環和 FPGA 目標循環之間的同步。
10.2.3、NI SoftMotion Scan - End Sync Transaction.vi
結束同步處理:停止 RT 主機循環和 FPGA 目標循環之間的同步。
10.2.4、NI SoftMotion Scan - Update Scan Control.vi
更新掃描控制項:更新 NI SoftMotion Scan - Generate Sync Scan.vi。
10.3.、nismSDIFramework.SetFrameworkMode.vi 插件模式設置:設定插件模式
1、Sub-OverlayPointswithSpecified Size.vi 以指定的點在無損圖層中標記,用於顯示找到的邊
緣點等
2、MVi-FreeContour2ROI.vi 將目標輪廓點封裝為ROI Descriptor,用於輪廓提取和分割
【自動化電氣系統】
專注於人工智慧與自動化系統領域知識內容分享。感謝你的關注與分享!!!
如需入群交流請擇需進群:Q Q 群:60886850
微信群 ID:zidonghuadianqi123 加博主微信拉您進群
您的讚賞是對我們的鼓勵,We』ll be more solid with your donations.