本發(fā)明涉及相機(jī)標(biāo)定領(lǐng)域,尤其涉及一種三維立體相機(jī)與機(jī)床變位機(jī)系統(tǒng)的標(biāo)定裝置和方法。
背景技術(shù):
1、在精密加工、機(jī)器人控制、視覺導(dǎo)引系統(tǒng)等領(lǐng)域,三維立體相機(jī)和機(jī)床變位機(jī)常常需要進(jìn)行配合工作。三維相機(jī)用于獲取物體或工件的三維空間信息,而機(jī)床變位機(jī)則通過調(diào)整工件的位姿(位置與姿態(tài)),使其處于加工、檢測、或測量的理想位置。為了確保這兩者協(xié)同工作,必須對其進(jìn)行精確標(biāo)定。
2、傳統(tǒng)的標(biāo)定過程通常需要通過多次手動操作或多次拍攝不同角度的數(shù)據(jù)來完成。整個標(biāo)定流程可能需要大量的時間和人工干預(yù),尤其在需要多次調(diào)整設(shè)備、物體或標(biāo)定物位置時。對于要求快速部署或高效運(yùn)行的應(yīng)用場景,這種繁瑣復(fù)雜的過程是一個顯著的缺陷。而且現(xiàn)有的標(biāo)定技術(shù)通常是在設(shè)備靜止的情況下進(jìn)行的,一旦設(shè)備開始運(yùn)動,標(biāo)定結(jié)果可能會出現(xiàn)偏差;并且在實(shí)際應(yīng)用中,標(biāo)定物本身可能會受到磨損、損壞或不精確制造,這將會影響標(biāo)定結(jié)果的穩(wěn)定性和準(zhǔn)確性。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明提供了一種三維立體相機(jī)與機(jī)床變位機(jī)系統(tǒng)的標(biāo)定裝置和方法,用于解決現(xiàn)有的問題。
2、本發(fā)明的目的可以通過以下技術(shù)方案實(shí)現(xiàn):
3、本發(fā)明第一方面是提供一種三維立體相機(jī)與機(jī)床變位機(jī)系統(tǒng)的標(biāo)定方法,包括:
4、布置標(biāo)定塊、相機(jī)、變位機(jī)以及機(jī)床的位置以及機(jī)床坐標(biāo)系;
5、通過相機(jī)獲取機(jī)床在機(jī)床坐標(biāo)系、和三個方向移動下標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,獲取變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集;
6、根據(jù)機(jī)床在、和三個方向移動下標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,獲得對應(yīng)的三條擬合直線和擬合直線對應(yīng)的直線度;通過三條擬合直線和擬合直線對應(yīng)的直線度來構(gòu)建姿態(tài)矩陣,并完成機(jī)床與相機(jī)的姿態(tài)標(biāo)定;
7、根據(jù)變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集中,點(diǎn)與點(diǎn)之間的位移關(guān)系、姿態(tài)矩陣、變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,獲得圓弧輪廓點(diǎn)云數(shù)據(jù)集;通過圓弧輪廓點(diǎn)云數(shù)據(jù)集和姿態(tài)矩陣來構(gòu)建相機(jī)坐標(biāo)系下變位機(jī)的虛擬位姿矩陣;
8、用激光刻出若干個點(diǎn),記為激光點(diǎn);獲取激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)和相機(jī)坐標(biāo)系下的坐標(biāo),根據(jù)激光點(diǎn)在相機(jī)坐標(biāo)系下的通過虛擬位姿矩陣坐標(biāo)進(jìn)行變換獲得激光點(diǎn)在變位機(jī)虛擬坐標(biāo)系下對應(yīng)的坐標(biāo);根據(jù)激光點(diǎn)在變位機(jī)虛擬坐標(biāo)系下對應(yīng)的坐標(biāo)與激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)之間的平移量,構(gòu)建第二平移矩陣;
9、將激光在相機(jī)坐標(biāo)系下的坐標(biāo),通過變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集的變化情況、第二平移矩陣以及虛擬位姿矩陣,進(jìn)行變換,獲得激光點(diǎn)變換后在機(jī)床坐標(biāo)系下的坐標(biāo),通過若干個激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)與變換后在機(jī)床坐標(biāo)系下的坐標(biāo)之間的差異來進(jìn)行最終相機(jī)與變位機(jī)的位姿標(biāo)定。
10、進(jìn)一步地,所述通過相機(jī)獲取機(jī)床在機(jī)床坐標(biāo)系、和三個方向移動下標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,獲取變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,包括:
11、在機(jī)床坐標(biāo)系下,分別沿著x、y、z方向運(yùn)動至設(shè)定的距離,在此過程中以預(yù)設(shè)間隔為采樣時間間隔,采集機(jī)床坐標(biāo)系下三個方向上的點(diǎn)云數(shù)據(jù)集,即在每個時刻下都可以采集到標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集;
12、旋轉(zhuǎn)變位機(jī)采集每旋轉(zhuǎn)一個采樣角度下的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集;其中,對于高精度的變位機(jī),采樣角度為第一預(yù)設(shè)角度;對于低精度的變位機(jī),采樣角度為第二預(yù)設(shè)角度;其中,對變位機(jī)精度的判斷可以通過幾何精度檢測來確定;將變位機(jī)精度小于或者等于預(yù)設(shè)精度閾值的變位機(jī),記為高精度變位機(jī),將變位機(jī)精度大于預(yù)設(shè)精度閾值的變位機(jī),記為低精度變位機(jī)。
13、進(jìn)一步地,所述根據(jù)機(jī)床在、和三個方向移動下標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,獲得對應(yīng)的三條擬合直線和擬合直線對應(yīng)的直線度,包括:
14、根據(jù)三個方向上標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,使用最小二乘法對每個方向進(jìn)行直線擬合,得到三條擬合直線;
15、通過每個方向的所有點(diǎn)與對應(yīng)擬合直線之間的距離,獲得每個擬合直線對應(yīng)的直線度。
16、進(jìn)一步地,所述通過三條擬合直線和擬合直線對應(yīng)的直線度來構(gòu)建姿態(tài)矩陣,并完成機(jī)床與相機(jī)的姿態(tài)標(biāo)定,包括:
17、按照點(diǎn)云數(shù)據(jù)獲取的順序確定出每個擬合直線的初始方向;獲取點(diǎn)云數(shù)據(jù)集中的第一個點(diǎn)云數(shù)據(jù)和最后一個點(diǎn)云數(shù)據(jù),將所述兩個點(diǎn)進(jìn)行連接,獲得每個擬合直線對應(yīng)的連接線,將每個擬合直線的初始方向與對應(yīng)的連接線兩端方向相近且小于90度的方向,記為每個擬合直線重定向后的新方向;
18、根據(jù)機(jī)床坐標(biāo)系的每個方向上標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集、所述點(diǎn)云數(shù)據(jù)集對應(yīng)擬合直線重定向后的新方向,來獲取機(jī)床坐標(biāo)系的每個方向上的單位向量;其中,單位向量的方向?yàn)閷?yīng)擬合直線的新方向;
19、通過三條有序的單位向量來構(gòu)建姿態(tài)矩陣,具體構(gòu)建姿態(tài)矩陣的過程為:
20、選取三條擬合直線中直線度最好的一條擬合直線,將其記為,將直線度次之的擬合直線記為;將重定向后的單位向量記為;以直線度最好的擬合直線對應(yīng)的為基礎(chǔ)叉乘計算出和,具體為,第一次叉乘,歸一化,第二次叉乘;其中,將表示為,表示為,表示為;
21、通過、和來構(gòu)建姿態(tài)矩陣,姿態(tài)矩陣表示為:
22、
23、將三條有序的單位向量代入的姿態(tài)矩陣中,完成機(jī)床與相機(jī)的姿態(tài)標(biāo)定。
24、進(jìn)一步地,所述根據(jù)變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集中,點(diǎn)與點(diǎn)之間的位移關(guān)系、姿態(tài)矩陣、變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,獲得圓弧輪廓點(diǎn)云數(shù)據(jù)集;通過圓弧輪廓點(diǎn)云數(shù)據(jù)集和姿態(tài)矩陣來構(gòu)建相機(jī)坐標(biāo)系下變位機(jī)的虛擬位姿矩陣,包括:
25、將變位機(jī)旋轉(zhuǎn)時相機(jī)采集的任意一個數(shù)據(jù)點(diǎn)記為基準(zhǔn)點(diǎn);當(dāng)相機(jī)跟隨變位機(jī)旋轉(zhuǎn)采集數(shù)據(jù)時,獲取其他點(diǎn)與基準(zhǔn)點(diǎn)構(gòu)成的平移矢量t;當(dāng)相機(jī)不跟隨變位機(jī)旋轉(zhuǎn),采集點(diǎn)即為基準(zhǔn)點(diǎn),此時產(chǎn)生的平移矢量t均為0;
26、將變位機(jī)在旋轉(zhuǎn)下采集的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集中的所有點(diǎn)云數(shù)據(jù)代入和平移矢量t進(jìn)行變換后,得到圓弧輪廓點(diǎn)云數(shù)據(jù)集;
27、根據(jù)圓弧輪廓點(diǎn)云數(shù)據(jù)集通過最小二乘法進(jìn)行圓弧擬合,獲得擬合圓弧曲線,獲取擬合圓弧曲線的圓心坐標(biāo);
28、通過姿態(tài)矩陣和圓心坐標(biāo),獲得機(jī)床移動到基準(zhǔn)點(diǎn)時,相機(jī)坐標(biāo)系下變位機(jī)的虛擬位姿;
29、相機(jī)坐標(biāo)系下變位機(jī)的虛擬位姿矩陣表示為:
30、
31、其中,表示為。
32、進(jìn)一步地,所述根據(jù)激光點(diǎn)在相機(jī)坐標(biāo)系下的通過虛擬位姿矩陣坐標(biāo)進(jìn)行變換獲得激光點(diǎn)在變位機(jī)虛擬坐標(biāo)系下對應(yīng)的坐標(biāo);根據(jù)激光點(diǎn)在變位機(jī)虛擬坐標(biāo)系下對應(yīng)的坐標(biāo)與激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)之間的平移量,構(gòu)建第二平移矩陣,包括:
33、通過相機(jī)坐標(biāo)系到變位機(jī)虛擬坐標(biāo)系變換公式獲取激光點(diǎn)在相機(jī)坐標(biāo)系下的坐標(biāo)變換在變位機(jī)虛擬坐標(biāo)系下對應(yīng)的坐標(biāo);計算激光點(diǎn)在變位機(jī)虛擬坐標(biāo)系下對應(yīng)的坐標(biāo)與激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)之間的平移量,通過若干個激光點(diǎn)多次操作計算平均平移量,來構(gòu)建第二平移矩陣;
34、其中,第二平移矩陣具體表示為:
35、
36、其中,相機(jī)坐標(biāo)系到變位機(jī)虛擬坐標(biāo)系變換公式具體表示為:
37、
38、式中,表示相機(jī)坐標(biāo)系下任意一個點(diǎn)的坐標(biāo),表示變位機(jī)虛擬坐標(biāo)系下對應(yīng)點(diǎn)的齊次坐標(biāo);和是公知的變位機(jī)旋轉(zhuǎn)矩陣和第一平移矩陣;
39、其中,變位機(jī)虛擬坐標(biāo)系下對應(yīng)點(diǎn)的齊次坐標(biāo)通過齊次變換方法獲取變換后變位機(jī)虛擬坐標(biāo)系下的坐標(biāo)。
40、進(jìn)一步地,所述將激光在相機(jī)坐標(biāo)系下的坐標(biāo),通過變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集的變化情況、第二平移矩陣以及虛擬位姿矩陣,進(jìn)行變換,獲得激光點(diǎn)變換后在機(jī)床坐標(biāo)系下的坐標(biāo),通過若干個激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)與變換后在機(jī)床坐標(biāo)系下的坐標(biāo)之間的差異來進(jìn)行最終相機(jī)與變位機(jī)的位姿標(biāo)定,包括:
41、將激光在相機(jī)坐標(biāo)系下的坐標(biāo),通過相機(jī)坐標(biāo)系到機(jī)床坐標(biāo)系變換公式進(jìn)行變換,獲得激光點(diǎn)變換后在機(jī)床坐標(biāo)系下的坐標(biāo);
42、其中,相機(jī)坐標(biāo)系到機(jī)床坐標(biāo)系變換公式具體表示為:
43、
44、式中,表示機(jī)床坐標(biāo)系下對應(yīng)點(diǎn)的齊次坐標(biāo);表示相機(jī)坐標(biāo)系下任意一個激光點(diǎn)的坐標(biāo);
45、其中,機(jī)床坐標(biāo)系下對應(yīng)點(diǎn)的齊次坐標(biāo)通過齊次變換方法獲取變換后機(jī)床坐標(biāo)系下的坐標(biāo),將所述變換后機(jī)床坐標(biāo)系下的坐標(biāo)點(diǎn),記為;
46、通過若干個激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)點(diǎn)與變換后在機(jī)床坐標(biāo)系下的坐標(biāo)點(diǎn)之間的差異來進(jìn)行最終相機(jī)與變位機(jī)的位姿標(biāo)定;
47、具體為:計算所有激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)點(diǎn)與變換后在機(jī)床坐標(biāo)系下的坐標(biāo)點(diǎn)之間的平均距離差異,當(dāng)標(biāo)定計算出的平均距離差異小于預(yù)設(shè)距離差異閾值時,則判定位姿標(biāo)定的精度達(dá)標(biāo),即完成變位機(jī)與相機(jī)的位姿標(biāo)定工作。
48、本發(fā)明第二方面是提供一種三維立體相機(jī)與機(jī)床變位機(jī)系統(tǒng)的標(biāo)定裝置,包括:
49、設(shè)備布置模塊,用于布置標(biāo)定塊、相機(jī)、變位機(jī)以及機(jī)床的位置以及機(jī)床坐標(biāo)系;
50、點(diǎn)云數(shù)據(jù)采集模塊,用于通過相機(jī)獲取機(jī)床在機(jī)床坐標(biāo)系、和三個方向移動下標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,獲取變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集;
51、機(jī)床與相機(jī)標(biāo)定模塊,用于根據(jù)機(jī)床在、和三個方向移動下標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,獲得對應(yīng)的三條擬合直線和擬合直線對應(yīng)的直線度;通過三條擬合直線和擬合直線對應(yīng)的直線度來構(gòu)建姿態(tài)矩陣,并完成機(jī)床與相機(jī)的姿態(tài)標(biāo)定;
52、變位機(jī)與相機(jī)標(biāo)定模塊,用于根據(jù)變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集中,點(diǎn)與點(diǎn)之間的位移關(guān)系、姿態(tài)矩陣、變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,獲得圓弧輪廓點(diǎn)云數(shù)據(jù)集;通過圓弧輪廓點(diǎn)云數(shù)據(jù)集和姿態(tài)矩陣來構(gòu)建相機(jī)坐標(biāo)系下變位機(jī)的虛擬位姿矩陣;用激光刻出若干個點(diǎn),記為激光點(diǎn);獲取激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)和相機(jī)坐標(biāo)系下的坐標(biāo),根據(jù)激光點(diǎn)在相機(jī)坐標(biāo)系下的通過虛擬位姿矩陣坐標(biāo)進(jìn)行變換獲得激光點(diǎn)在變位機(jī)虛擬坐標(biāo)系下對應(yīng)的坐標(biāo);根據(jù)激光點(diǎn)在變位機(jī)虛擬坐標(biāo)系下對應(yīng)的坐標(biāo)與激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)之間的平移量,構(gòu)建第二平移矩陣;將激光在相機(jī)坐標(biāo)系下的坐標(biāo),通過變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集的變化情況、第二平移矩陣以及虛擬位姿矩陣,進(jìn)行變換,獲得激光點(diǎn)變換后在機(jī)床坐標(biāo)系下的坐標(biāo),通過若干個激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)與變換后在機(jī)床坐標(biāo)系下的坐標(biāo)之間的差異來進(jìn)行最終相機(jī)與變位機(jī)的位姿標(biāo)定。
53、本發(fā)明第三方面是提供一種電子設(shè)備,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運(yùn)行的計算機(jī)程序,所述處理器執(zhí)行所述計算機(jī)程序時實(shí)現(xiàn)所述一種三維立體相機(jī)與機(jī)床變位機(jī)系統(tǒng)的標(biāo)定方法。
54、本發(fā)明第四方面是提供一種計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀存儲介質(zhì)存儲有計算機(jī)程序,所述計算機(jī)程序被處理器執(zhí)行時實(shí)現(xiàn)所述一種三維立體相機(jī)與機(jī)床變位機(jī)系統(tǒng)的標(biāo)定方法。
55、與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:根據(jù)機(jī)床在、和三個方向移動下標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,獲得對應(yīng)的三條擬合直線和擬合直線對應(yīng)的直線度;通過三條擬合直線和擬合直線對應(yīng)的直線度來構(gòu)建姿態(tài)矩陣,并完成機(jī)床與相機(jī)的姿態(tài)標(biāo)定;提高了對機(jī)床與相機(jī)的姿態(tài)標(biāo)定的準(zhǔn)確性;根據(jù)變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集中,點(diǎn)與點(diǎn)之間的位移關(guān)系、姿態(tài)矩陣、變位機(jī)在旋轉(zhuǎn)下得到的標(biāo)定塊輪廓的點(diǎn)云數(shù)據(jù)集,獲得圓弧輪廓點(diǎn)云數(shù)據(jù)集;通過圓弧輪廓點(diǎn)云數(shù)據(jù)集和姿態(tài)矩陣來構(gòu)建相機(jī)坐標(biāo)系下變位機(jī)的虛擬位姿矩陣;通過虛擬位姿矩陣來分析相機(jī)坐標(biāo)系到變位機(jī)虛擬坐標(biāo)系之間的變換關(guān)系,提高了兩個坐標(biāo)系之間分析的準(zhǔn)確性;用激光刻出若干個點(diǎn),記為激光點(diǎn);獲取激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)和相機(jī)坐標(biāo)系下的坐標(biāo),根據(jù)激光點(diǎn)在相機(jī)坐標(biāo)系下的通過虛擬位姿矩陣坐標(biāo)進(jìn)行變換獲得激光點(diǎn)在變位機(jī)虛擬坐標(biāo)系下對應(yīng)的坐標(biāo);根據(jù)激光點(diǎn)在變位機(jī)虛擬坐標(biāo)系下對應(yīng)的坐標(biāo)與激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)之間的平移量,構(gòu)建第二平移矩陣;將激光在相機(jī)坐標(biāo)系下的坐標(biāo),通過第二平移矩陣以及虛擬位姿矩陣,進(jìn)行變換,獲得激光點(diǎn)變換后在機(jī)床坐標(biāo)系下的坐標(biāo),通過若干個激光點(diǎn)在機(jī)床坐標(biāo)系下的坐標(biāo)與變換后在機(jī)床坐標(biāo)系下的坐標(biāo)之間的差異來進(jìn)行最終相機(jī)與變位機(jī)的位姿標(biāo)定,提高標(biāo)定結(jié)果的穩(wěn)定性和準(zhǔn)確性。