Pin針匹配
運算元功能
本運算元用於使用配方對比Pin針的X、Y座標和高度資訊,並輸出Pin針的X、Y座標、高度和間隔資訊,以及與配方的比對結果。 注:使用的标准件点云需要为预处理过后的图像
引數介紹
輸入引數

| 引數 | 範圍 | 預設值 | 說明 | 圖示 |
|---|---|---|---|---|
| 輸入影像 | 0-8 | 0 | 影像輸入的IM編號 | ![]() |
| 3D基準 | 可以通過繫結選擇基准 | ![]() | ||
| X | 3D基準引數X座標值,可以通過繫結設定X | |||
| Y | 3D基準引數Y座標值,可以通過繫結設定Y | |||
| Z | 3D基準引數Z座標值,可以通過繫結設定Z | |||
| X軸角度 | -10000000000.000-10000000000.000 | 3D基準引數X軸角度值,可以通過繫結設定X轴角度 | ||
| Y軸角度 | -10000000000.000-10000000000.000 | 3D基準引數Y軸角度值,可以通過繫結設定Y轴角度 | ||
| Z軸角度 | -10000000000.000-10000000000.000 | 3D基準引數Z軸角度值,可以通過繫結設定Z轴角度 |
計算引數

| 引數 | 範圍 | 預設值 | 說明 | 圖示 |
|---|---|---|---|---|
| 使用區域引數 | true/false | false | 啟用則以区域作為輸入,不啟用則以输入图像作為輸入 | |
| 區域 | 2D視窗/2D圓形視窗/2D多邊形視窗/盒子/圓柱盒子/旋轉盒子/點集(僅繫結) | 盒子 | 手動框選合適的ROI區域可以通过绑定选择已存在的ROI区域 | |
| Pin針最小間隔 | 0.5 | 兩個Pin針之間的最小距離間隔 | ||
| Pin針最小點數 | 50 | Pin針的最小點數 | ||
| 排序方式 | +X/-X/+Y/-Y | +X | +X:Pin針按從左到右,從上到下排序 -X:Pin針按從右到左,從下到上排序+Y:Pin針按從右到左,從下到上排序 -Y:Pin針按從右到左,從下到上排序 | ![]() |
| Pin針高度 | true/false | false | 若啟用,輸出Pin針的高度資訊 | |
| 異常點濾除 | 百分位數濾波/無 | 僅Pin針高度測量啟用時開啟,選擇濾波方式 | ||
| 低去除百分比 | 0.000-50.000 | 10.000 | 根據此比例去除z方向上低點的噪點。例如,當比例設定為10%時,則去除最低的10%的點 | |
| 高去除百分比 | 0.000-50.000 | 10.000 | 根據此比例去除z方向上高點的噪點。例如,當比例設定為10%時,則去除最高的10%的點 | |
| 高度模式 | 最小值、最大值、均值、中值、标准差、百分位数 | 中值 | 提供6種計算高度的方法 | |
| 百分比 | 10 | 當模式為百分位数時啟用,輸入百分位數,例如輸入50,則取中間50%的點進行高度值的計算 | ||
| Pin針間隔 | true/false | false | 若啟用,則輸出Pin針的間隔資訊 | |
| 配方比對 | true/false | false | 若啟用,則輸出與Pin針的配方比對資訊 | |
| 配方路径 | true/false | false | 开启配方比对时启用,输入Pin针配方的路径(仅支持.json且陣列名為"recipe"的配方檔案) | |
| 測量結果 | true/false | false | 開啟配方比對時可啟用,啟用時,則輸出與Pin針配方的比對結果,結果顯示在介面上且儲存在全域性變數中 | |
| Pin針偏移 | 1.000 | 設定Pin針排序時X或Y方向的偏移量,若在其偏移量範圍內,則視為在同一行/列 | ![]() |
結果顯示

| 引數 | 範圍 | 預設值 | 說明 | 圖示 |
|---|---|---|---|---|
| 序號 | true/false | false | Pin針序號,若啟用,則在影像中顯示 | |
| X座標 | true/false | false | Pin針X座標,若啟用,則在影像中顯示 | |
| Y座標 | true/false | false | Pin針Y座標,若啟用,則在影像中顯示 | |
| 高度 | true/false | false | Pin針高度,若啟用,則在影像中顯示 | |
| X偏移值 | true/false | false | Pin針X偏移值,若啟用,則在影像中顯示 | |
| Y偏移值 | true/false | false | Pin針Y偏移值,若啟用,則在影像中顯示 | |
| 高度偏移值 | true/false | false | Pin針高度偏移值,若啟用,則在影像中顯示 | |
| 匹配結果 | true/false | false | Pin針匹配結果,若啟用,則在影像中顯示Pin針序號和OK或NG | |
| ROI點集 | true/false | false | 僅在使用区域参数選中時生效,ROI框選的區域點集,若啟用,則在影像中顯示 |
輸出引數

| 名稱 | 型別 | 範圍 | 說明 |
|---|---|---|---|
| Result | bool | true/false | true為成功 false為失敗 |
| Warning | bool | true/false | true表示有警告 false表示沒有 |
| Message | string | 輸出成功或錯誤或警告資訊,如果沒有錯誤或警告為空 | |
| Time | float | 運算元執行時間,單位: ms | |
| pin | int[] | 輸出的Pin針序號 | |
| key | int[] | 輸出的Pin針鍵位 | |
| pin_position_x | float[] | 輸出的Pin針X座標 | |
| pin_position_y | float[] | 輸出的Pin針Y座標 | |
| pin_position_height | float[] | 輸出的Pin針高度值 | |
| pin_position_side_x | float[] | 輸出的Pin針X方向間隔 | |
| pin_position_side_y | float[] | 輸出的Pin針Y方向間隔 | |
| pin_position_side_height | float[] | 輸出的Pin針高度間隔 | |
| pin_result | string[] | 輸出的Pin針匹配結果 |
提示
更多引數型別詳細說明,請參看型別定義
異常排查
| 序號 | 異常資訊 | 對應引數 | 解決方法 |
|---|---|---|---|
| 1 | 輸入的區域型別是{0},無效區域型別 | 區域型別 | 區域輸入型別為2D視窗/2D圓形視窗/2D多邊形視窗/盒子/圓柱盒子/旋轉盒子/點集之一 |
| 2 | 區域為空 | 1. 檢查是否框選為空 2. 檢查點集是否為空 | |
| 3 | 輸入點云為空 | 確認IM是否存在有效點,若無有效點,請載入點雲或切換存在有效點的IM | |
| 4 | 提取Pin針失敗 | 修改Pin針設定引數 | |
| 5 | 輸入的排序方式是{0},無效排序方式 | 排序方式 | 選擇排序方式為+X/-X/+Y/-Y其中之一 |
| 6 | 輸入的高度模式是{0},無效排序方式 | 高度模式 | 選擇模式為最大/最小/中值/均值/去除百分比 |
| 7 | 檔案"{0}"不存在或無法訪問 | 檔案路徑 | 輸入有效的配方路徑 |
| 8 | 檔案"{0}"載入失敗 | 檔案路徑 | 輸入有效路徑且為json檔案 |
| 9 | 檔案不含有“recipe” | 使用帶有recipe鍵的json檔案 | |
| 10 | 配方數量與檢測到的pin針數量不符 | 配方陣列與檢測到的pin針數量一致 | |
| 11 | 第{0}個Pin沒有{1}欄位 | 序號,配方變數名 | 使用第i組帶有配方變數引數的配方檔案 |
| 12 | 輸入的多邊形頂點個數小於3,無法形成多邊形 | 新增2d多邊形視窗頂點數,使得頂點數至少為三個 |
示例介紹
工程設計
選擇
加载点云工具,載入需要處理的3d點雲圖到IM0;選擇
3D区域工具,選擇需要擬合平面的區域;選擇
3D平面工具,以3D区域工具的輸出作為輸入,擬合平面,並變換點雲;選擇
3D方形探针工具,搜尋定位點;選擇
3D位置调整工具,以定位點為新原點,調整點雲位置;選擇
3D裁切工具,裁切出Pin針點雲;選擇
3D变换工具,將Pin針點雲調整至合適的位置;選擇
Pin针配方创建工具,獲取Pin針配方檔案選擇
Pin针匹配工具,檢測Pin針
工具使用
選擇需要進行操作的輸入影像,影像序號要與工程中影像所在IM序號一致
不啟用使用區域引數或啟用區域並選擇區域型別為盒子,將盒子移動到待測位置,包圍住待測點雲
設定引數
在結果顯示欄中勾選想要顯示的內容
點選
测试,檢視影像視窗和引數是否符合預期沒有問題後點擊
保存,在執行列表中執行該運算元,即可在對應的IM檢視執行結果





