機器視覺小教室,大家一起玩 3D !
您是否對 3D 影像處理、3D視覺、辨識、定位、量測有莫名的恐懼感,明明看著人家做出一些成果,但自己一碰到就不得其門而入,我們這個課程將降低您對 3D 的技術門檻。
01. 點、線、向量、三維座標基礎觀念
開宗明義第一堂課,您要先知道一些 3D 的基礎元素。
02. 3D點雲是什麼? 格式長什麼樣子?
大家都說,玩3D,其實是在計算點雲,你知道原來點雲從哪裡來的嗎? 它是從 3D 相機生出來的,但是它的格式通常都長甚麼樣子呢?
順帶示範一下MechMind相機在Aurora Vision Studio上用圖控方式取像。
影片有提到他款相機的取像外掛有興趣可點此下載
MechMind 外掛下載
因每個人安裝的驅動程式、軟體環境版本差異,本壓縮包內編譯好的外掛dll不一定能直接在你的電腦上執行。
內有 Source Code 請依所安裝版本自行除錯及重新編譯。
Realsense外掛下載
因每個人安裝的驅動程式、軟體環境版本差異,本壓縮包內編譯好的外掛dll不一定能直接在你的電腦上執行。
內有 Source Code 請依所安裝版本自行除錯及重新編譯。
03. 3D量測應用首部曲,什麼是2.5D量測?
我們先從Surface格式的第一個量測演算法著手,先量一下物件的寬度。
然後再告訴你怎麼估計量測重複精度。
順帶示範一下Intel Realsense在Aurora Vision Studio上用圖控方式取像。
04. 2.5D量測應用 - 怎麼找圓?
我們繼續探討2.5D的量測應用手法,上一堂課是教怎麼量寬度,這一堂教你怎麼找圓。
然後再告訴你當定位Fitting遇到問題的時候,怎麼排除、怎麼善用前處理去把多餘的資料刪除。
05. 2.5D量測應用 - 相對座標錨定法
我們就像一條海上的船,漂呀漂的,但是大家的心,要定住 !
這堂課將介紹如果你的工件擺放位置偏差較大,如何使用錨定,也就是建立一個相對座標以後,再進行量測。
課程中除了相對座標的概念,你還會學到怎麼建立副程式 (MacroFilter) 等等軟體設計技能。
05-1. 補充教材 - 關於Surface重取樣
ResamplePoint3DGrid 與 ArrangePoint3DGrid 都會對 Point3DGrid 取樣變成 Surface,但實際運用時有細節上的差異要小心注意。
本影片也教你如何使用桌面切換功能。
06. 2.5D量測 - 平面Fitting與段差量測
在本課程你會學到如何使用平面 Fitting 演算法、計算指定區域內的質心點、以及計算點到平面距離,來進行段差量測。
在這個過程中,你會了解使用點陣式 Region 遮罩當作取樣 ROI 的方法,並且能結合上一堂課教的錨定。
07. Break Time - 一邊拍照一邊處理,背景執行續的用法
這集不講演算法,學習不忘休息,休息不忘學習,天天都在漲知識 !
你會學到如何建立執行續,怎麼在圖控式編程軟體內利用背景執行續功能,設計出一邊拍照一邊處理,這是一個很常見的系統設計技巧,以及如何使用 Queue 來進行不同執行續之間的資料傳遞。
因為一般圖控式開發軟體,針對的是極其簡單的專案,因此往往只能做一個腸子通到底的設計,也就是先取像、再計算、最後上傳結果,必須依序完成。Aurora Vision Studio 具備多執行續、多線程的管理,故能擴展到稍微複雜的應用。
08. 3D 對位基礎觀念
前面的教學都在介紹 2.5D 量測,這集開始慢慢導入純 3D 的演算工具。
首先,3D Matching 與之前影片介紹的 2.5D 錨定目的都是在做對位,想要知道物件的座標,差別在於 2.5D 錨定只能針對簡單的幾何特徵 (直線、圓孔、矩形等等),而 3D Matching 能處理整個形狀輪廓,是比較泛用的方法。
Matching (對位) 又稱為 Alignment (對齊),也有人稱作 Registration (特徵註冊或匹配),在 3D 領域,無論你是用哪個名詞去解讀它,概念都是先拿一個標準樣板,然後讓另一個與樣板相似的點雲,經過計算以後使形狀相同的特徵彼此對齊在一起,例如導角對齊導角、斜面對齊斜面等等。實現 3D Matching 的方法很多,一個最常見的演算法叫做 ICP,全名稱做 iterative closest point。ICP 在 Aurora Vision Studio 的工具函示名稱叫做 AdjustPointGrids3D,用來將輸入的點雲去對準樣板點雲,並且提供給你一個座標轉換矩陣,本集你將學會怎麼使用它。
多啦A夢點雲檔案下載
09. 用3D對位來做點雲比對,檢測出缺陷
之前用 2.5D 的量測方法能做的三維形貌檢測,必須事先定義明確的幾何特徵,例如孔徑、寬度、段差等等。如果這個物體的形貌沒有上述方法能方便定義出的規規矩矩的特徵,例如一隻多啦A夢或一隻滑鼠的外觀,很難針對它設計出檢測方法,所以我們必須要多學一些招式套路。
3D 點雲比對 (Point3DGridDistance) 是用一種標準樣板 (Golden Template) 與待測點雲兩兩對齊以後,將距離差異較大之處視為瑕疵缺陷的一種檢測方法。當你學會使用 3D 對位對齊兩個點雲以後,馬上就能派上用場的第一個簡單應用,就是點雲比對。
所以我們又多學到一招 !
10. 用3D對位做相機姿態校正
應用於點雲拼接
讓相機在不同姿態拍攝物體的不同角度,然後將點雲依照相對位置接在一起,稱作 3D 點雲拼接 (Stitching)。
為什麼會想要拼接,往往是因為視野不夠,或是物體太有立體感、會有死角,需要拍多個方向各取所需;以及想要拿拚完的完整的點雲去做缺陷檢查。
我們這集利用學到的 ICP 點雲對位工具 (AdjustPointGrids3D),用來做相機姿態校正,計算出不同拍攝姿態的校正矩陣,供後續點雲拼接使用。你也會了解到,計算姿態校正,需要設計什麼幾何形狀的校正治具 (Calibration Jig),讓你的拼接應用專案順利完成。
拼接校正點雲練習檔下載
11. 用3D對位錨定特徵樣板
應用於抓取點或噴膠路徑
我們已經知道利用ICP 3D對位(AdjustPointGrids3D) 能夠獲得座標轉換矩陣,本集你將學會怎麼製作Golden抓取點以及Golden噴膠路徑,然後經過對位以後利用座標轉換矩陣,把它貼到實際場景的點雲上。 這集也會介紹好幾個Aurora Vision Studio好用的程式基礎工具,例如陣列排序、點雲座標查找等等功能,你可以在一邊學習3D應用玩法的時候也能一邊熟悉基礎工具的用法,一舉兩得。
多啦A夢點雲檔案下載
12. Break Time -
鑑微科技C2100 x 2D+3D x 取像流程控制
又到了Break Time,學習不忘休息,休息不忘學習的時間。 這一集,我們帶來的鑑微科技的C2100掌上型3D小相機,這是台灣設計的品牌,並且教你怎麼匯入C2100的Aurora Vision Studio取像外掛。 然後,順便來聊一聊,在作系統設計的時候,怎麼用TCP/IP來控制取像流程動作。
BENANO 取像外掛下載
因每個人安裝的驅動程式、軟體環境版本差異,本壓縮包內編譯好的外掛dll不一定能直接在你的電腦上執行。
內有 Source Code 請依所安裝版本自行除錯及重新編譯。
13. 如何活用座標轉換,在 3D 空間進行 2.5D 尺寸量測應用
使用 3D 相機的量測領域中,已經成熟落地的應用大多都集中在 2.5D,也就是針對平平扁扁但帶有一點高度零件的東西 (例如 PCB 板、手機、電池),以及所對應的演算法也都是針對這樣的場景所設計。但假如我們遇到非常有立體感的工件,例如茶杯、水壺、管件、高爾夫球桿、鞋子等等,即使想出了多姿態掃描縫圖等等特殊技巧,圖是掃出來了,但到了後段的量測計算還是一籌莫展,我們這一集就來介紹 Aurora Vision Studio 針對這個問題的解決方案。
14. Eye In Hand手眼校正原理教學
Zebra Aurora Vision Studio 從 5.3 版以後推出 Eye In Hand 手眼校正功能,以擴展到更多元的應用方式,成為更全面的【總鋪師】型開發軟體。由於很多人不懂怎麼做 Eye In Hand 手眼校正,特別作了本篇教學。
另外,這裡面有提到一個名詞【什麼叫做視覺主控機器手臂?】要先了解到,控制架構有主從之分。因此,若將視覺系統安裝在電腦上,由視覺電腦當作主角,遙控機器手臂去做動作;以視覺的流程為主,視覺跑到哪裡,手臂被動接收視覺的指令才去做動作,這就叫做視覺主控。從影片裡可以看到,全自動校正程式,手臂跑來跑去做校正,都是由視覺主控送出的命令。
15. Eye To Hand手眼校正原理教學
本篇介紹利用MechMind結構光3D相機以及MechMind原廠校正板,進行手眼校正的過程。Eye To Hand校正的方法很多種,本篇用的是視覺把座標校正到校正板(地板)上,然後機器手臂另外再對相同的校正板進行User座標系校正,讓兩者座標系統重合的方法,也是最簡單最容易理解的方法之一。
16. 手臂加工路徑生成原理教學
加工路徑英文為Tooling Path,所謂的加工,泛指塗膠、研磨、切銷、焊接等,利用機器手臂進行加工製程或工藝的動作。雖然一些要求精密的工藝也許會針對某些局部特徵有特殊的要求,需要特別去計較及規畫,但是某些工藝,例如大面積的噴膠或研磨,對精度沒有嚴格的要求,反而是常常需要少量多樣化的生產。於是,就有所謂的【利用3D點雲外輪廓立即生成路徑】的需求,需要能掃出點雲,然後根據外輪廓形狀,把點雲內部曲面塗好塗滿。此即為【萬物Tooling Path】的原由,本篇簡介路徑生成的原理教學。
17. 利用QRCode加PnP透視投影求解,賦能2D相機使之辨識模治具的3D位姿
有時候你的待抓取物體並不是任意擺放的,其實都相對於一個固定的模具或治具,僅僅是模治具相對於相機有些許誤差,此時,你會想用較低成本的2D視覺來辨識模治具的位姿,而不使用較昂貴的3D相機。那麼,如何使2D相機也能辨識三維空間呢,可以利用PnP透視投影技術來達成,再加上QRCode即可以簡單的識別不同的模具或治具囉。目前有許多機器手臂廠商,搭配2D相機加上Landmark標籤,即是使用類似的技術。
18. 利用QRCode加PnP透視投影求解+2D匹配,賦能2D相機使之辨識平面任意擺放物的3D位姿
本篇進一步用上一集(第17集)既有的架構,結合2D匹配,辨識料盤中任意擺放的物體,獲得2D座標後,利用上述投影關係投影回3D空間。例如你用AGV台車裝載貼有Landmark的載盤,但是上面有任意擺放的平面物體,就可以透過本原理用2D相機去進行3D定位。
19. 2D相機+Landmark方法+Eye In Hand手眼校正,實現平面亂料抓取
我們根據第17集及第18集學到的方法,利用2D相機辨識四個QRCode當作Landmark參照物,賦予2D視覺辨識工件三維座標的能力。此時,如果你的相機是架設在Eye In Hand架構,也就是架設在手臂的法蘭上,你還會需要用到手眼校正技術。本範例已經把GigEVision相機、越疆DOBOT CR六軸協作機器手臂整合在一起,只要在模具或Tray的四周包圍矩形貼上指定的QR Code,就能實現平面亂料抓取,而且當模具或Tray的位置、傾斜角度有偏差,由QR Code組成的Landmark也能快速修正,讓2D視覺達到辨識3D位姿的效果。只要你用的是任意的GigEVision 2D相機,配合越疆DOBOT CR手臂,都可以快速用本範例來導入手眼校正應用。
本範例整合的工程較多,不容易在線上影片進行一行一行的詳細介紹,若有興趣可聯繫本公司技術服務團隊進一步了解。
20. 雷射線3D掃描基礎介紹、深視智能相機取像示範
介紹了許多結構光取像以及3D基礎算法、進階應用等案例,我們終於有機會來介紹工業3D取像的另外一大解決方案 - 雷射線掃描。這次我們用到的深視智能SSZN的相機,可以依照之前教過的方式,將User Filter取像外掛dll整合到Aurora Vision Studio裡面來。再者,我們用DOBOT MG400抓取物料作等速位移,讓線掃相機進行掃描動作。

回顧: Aurora Vision Studio 入門教學、深度學習
Aurora Vision 有數千種工具,架構細分為 Studio、Library,集2D、3D、深度學習於一身,適合快速開發各種客製化應用,本篇從整套框架的宏觀架構開始,帶您入門認識這套產品以及特色。