0

我有兩個矩陣,一個包含三維座標,每個CAD模型標稱位置,另一個包含使用CMM的實際測量位置的三維座標。每個標稱點都有相應的測量值,換句話說,這兩個矩陣的長度和寬度相等。我不確定將測量點擬合到名義點的最佳方法是什麼。我需要一種計算平移和旋轉的方法,以適用於所有測量點,這些測量點在每個標稱點/測量點對之間產生最小距離,同時不會超過任何其他點上允許的最大距離公差。這與點雲的配準類似,但不同之處在於,每對標稱/測量點對於允許距離有多遠具有獨特的容差/限制。對於某些配對來說這個限制更高,而對其他配對則更低我正在使用.Net進行編程,並已將Point Cloud Library(PCL),OpenCV,Excel和基本矩陣操作視爲可能的方法。 這是數據計算旋轉/平移矩陣以將測量點與標稱點相匹配

X Nom Y Nom Z Nom X Meas Y Meas Z Meas Upper Tol Lower Tol 
118.81 2.24 -14.14 118.68 2.24 -14.14 1.00 -0.50 
118.72 1.71 -17.19 118.52 1.70 -17.16 1.00 -0.50 
115.36 1.53 -24.19 115.14 1.52 -23.98 0.50 -0.50 
108.73 1.20 -27.75 108.66 1.20 -27.41 0.20 -0.20 

的樣品下面是矩陣的我需要以最適合測量的點與標稱點來計算的類型。我將它乘以測量點矩陣以最適合名義點矩陣。

Transformation 
0.999897324 -0.000587540 0.014317661 
0.000632725 0.999994834 -0.003151567 
-0.014315736 0.003160302 0.999892530 
-0.000990993 0.001672040 0.001672040 
+0

我真的很好奇你要使用哪個應用程序... – Deepfreeze

+0

@Deepfreeze個人使用這個基於視覺的質量控制。首先,我們創建一個轉換以匹配參考/對齊點(本文中描述的問題)。然後,我們執行特徵匹配以確保零件符合規格。 –

回答

0

這確實是一個剛性配准算法的工作。

爲了處理公差的,你有兩個選擇:

  • 簡單的選擇:運行剛性登記,檢查之後,如果結果是內公差
  • 有點難度的選項:在CAD抵消你點,其中您有不平衡的公差 ,其餘與前一選項相同。
  • 最難的選擇:你可能想要做的就是像第二個選項那樣設置偏移量,並根據測量的位置和設置的容差增加一個權重函數。這個權重函數應該以這樣的方式影響能量函數:當你有一個小公差時,單個函數向量更大,當你有更大容忍時,個體函數向量更小。

所以現在有關實施,對於選項1和2你造成很可能是最快的方法:

如果你真的想選擇3,你可以這樣做:

  • 請在PCL庫源的權重函數代碼並編譯它
  • 自己製作完整的ICP算法.net:
    • http://www.math.tau.ac.il/~dcor/Graphics/adv-slides/ICP.ppt
    • 使用數學。NUMERICS稀疏矩陣/矢量代數和求解器來創建自己的優化
    • 實現列夫 - MARQ或高斯 - 牛頓優化程序:
      IMM方法非線性最小二乘問題,K·馬德森,2004年
    • 生成您自己的功能載體和雅可比矩陣(體重功能)
    • 頗有些耐心,得到的是大家一起努力:)
    • 後的結果爲StackOverflow上的其他人都在C#.NET等待ICP