進階搜尋


   電子論文尚未授權公開,紙本請查館藏目錄
(※如查詢不到或館藏狀況顯示「閉架不公開」,表示該本論文不在書庫,無法取用。)
系統識別號 U0026-2408201816061500
論文名稱(中文) 應用深度攝影機於碰撞偵測之研究
論文名稱(英文) Collision Detection Using Depth Camera
校院名稱 成功大學
系所名稱(中) 機械工程學系
系所名稱(英) Department of Mechanical Engineering
學年度 106
學期 2
出版年 107
研究生(中文) 翁嘉駿
研究生(英文) Chia-Chun Weng
電子信箱 Carey0829@hotmail.com
學號 N16044593
學位類別 碩士
語文別 中文
論文頁數 107頁
口試委員 指導教授-劉至行
口試委員-李祖聖
口試委員-江佩如
中文關鍵字 機器視覺  深度攝影機  ICP(Iterative Closest Point)  GJK(Gilbert-Johnson–Keerthi)  碰撞偵測 
英文關鍵字 Machine Vision  Depth Camera  ICP(Iterative Closest Point)  GJK(Gilbert-Johnson–Keerthi)  Collision Detection 
學科別分類
中文摘要 隨著工業自動化的興起,為了降低機台撞擊造成傷害而發展出碰撞迴避系統。相反地,為了確定碰觸而發展出碰撞確認系統。鑒於此,碰撞感測的需求與日俱增。我們可以將感測方法分為接觸式及非接觸式。本研究採用非接觸式機器視覺方法,應用深度攝影機進行碰撞偵測。本研究流程首先應用深度攝影機環繞工作空間,抓取工作空間三維點雲(point cloud)圖。再以遞迴最近點(Iterative Closest Point, ICP)演算法進行點雲對正後黏合。基於歐幾里德距離(Euclidean distance)將黏合點雲分成目標物及障礙物點雲。將目標物點雲延著法向量(normal)方向進行膨脹(expand)。最後將各點雲網格化後使用GJK演算法(Gilbert–Johnson–Keerthi distance algorithm)達成碰撞偵測目的。本文以四個案例進行分析,分別是六軸機械手臂碰撞偵測、夾爪夾取偵測、移動機器人碰撞偵測、兵器技擊判分評斷。成功將工作空間分為目標物、靜態建構障礙物及動態偵測障礙物,對彼此進行碰撞偵測。本研究提出以一膨脹方法達到預測碰撞之成果,並達成低成本及廣用性目標。未來研究除了更優化本系統及開源化友善開發者外,亦可朝著防碰撞系統及接觸系統作做為後續研究方向。以提升工業、產業自動化邁向更安全便利的未來。
英文摘要 With the rise of industrial automation, collision avoidance systems have been developed to reduce the damage caused by machine impact. Conversely, collision confirmation systems have been developed to determine whether collide or not. In view of this, demand for collision detection is increasing. The sensing method can be divided into contact and non-contact methods. This study uses a non-contact machine vision method to detect collisions using a depth camera. In this study. First, a depth camera is used to surround the workspace, and captures the 3D point cloud images of the workspace. Then, the Iterative Closest Point (ICP) algorithm is used to align and merge the point clouds into a merged point cloud. The merged point cloud is divided into target object and obstacle point clouds based on Euclidean distance. The target object point cloud is expanded along the direction of normal vector of each point. Finally, each point cloud can be meshed and the GJK algorithm (Gilbert-Johnson–Keerthi distance algorithm) is used to perform collision detection. This study analyzes four cases, which are six-axis robot arm collision detection, gripper grip detection, mobile robot collision detection, and weapon arts judgment. The results show that the proposed method successfully divides the workspace into target objects, statically constructed obstacles, and dynamically detected obstacles for collision detection. This study proposes an expansion method to perform the collisions prediction
論文目次 摘要 i
ABSTRACT ii
誌謝 ix
目錄 x
表目錄 xiii
圖目錄 xiv
符號表 xx
第一章 緒論 1
1.1 研究動機與目的 1
1.2 文獻回顧 5
1.3 論文架構 6
第二章 系統硬體及演算法介紹 7
2.1 系統硬體介紹 7
2.1.1 第一代彩色深度攝影機(Kinect v1) 7
2.1.2 第二代彩色深度攝影機(Kinect v2) 8
2.1.3 個人電腦 12
2.2 演算法 12
2.2.1 遞迴最近點(Iterative Closest Points, ICP) 12
2.2.2 點雲法向量(Point Cloud Normal) 13
2.2.3 點群分割(Point Cloud Segment) 14
2.2.4 建立網格(Mesh) 16
2.2.5 碰撞偵測(Collision Detection) 20
第三章 碰撞偵測流程架構 24
3.1 靜態環境建構 24
3.1.1 Kinect連續攝影建立靜態環境點雲 24
3.1.2 ICP黏合靜態環境點雲 30
3.1.3 從黏合靜態環境點雲中切割空間與目標物 34
3.1.4 膨脹並網格化目標物與網格化靜態建構障礙物 36
3.2 動態偵測 42
3.2.1 對正靜態黏合環境點雲與現在環境點雲並初始化參數 42
3.2.2 Kinect單張拍攝點雲並移動障礙物 45
3.2.3 新增移除障礙物 46
3.2.4 移動目標物並碰撞偵測 48
第四章 案例分析 55
4.1 六軸機械手臂碰撞偵測 55
4.1.1 真實環境架構 55
4.1.2 靜態環境建構 56
4.1.3 動態碰撞偵測 59
4.1.4 本案例小結 67
4.2 夾爪夾取偵測 68
4.2.1 真實環境架構 68
4.2.2 靜態環境建構 68
4.2.3 動態碰撞偵測 72
4.2.4 本案例小結 76
4.3 移動機器人碰撞偵測 77
4.3.1 真實環境架構 77
4.3.2 靜態環境建構 78
4.3.3 動態碰撞偵測 83
4.3.4 本案例小結 88
4.4 兵器技擊判分評斷 89
4.4.1 真實環境架構 89
4.4.2 靜態環境建構 90
4.4.3 動態碰撞偵測 91
4.4.4 本案例小結 100
第五章 結論與建議 101
5.1 結論 101
5.2 建議 102
參考文獻 104
附錄A 切割工作空間與目標物流程圖 107
參考文獻 [1] Oxlade, C., The History of Robots. 2017: Capstone. p. 12.
[2] 編輯部, C.S. CTIMES/SmartAuto - Epson機械手臂力覺感測器 將精密複雜工作製程自動化:機械手臂,力覺感測器,Epson,精工愛普生,製程材料類,機械產品. 2016; Available from: https://www.ctimes.com.tw/DispProduct/tw/%E8%A3%BD%E7%A8%8B%E6%9D%90%E6%96%99%E9%A1%9E/Epson/%E5%8A%9B%E8%A6%BA%E6%84%9F%E6%B8%AC%E5%99%A8/%E6%A9%9F%E6%A2%B0%E7%94%A2%E5%93%81/%E7%B2%BE%E5%B7%A5%E6%84%9B%E6%99%AE%E7%94%9F/1606231529YZ.shtml.
[3] 劉尚昀. 機械手臂外掛套件加持 讓人機協作更順暢. 2017; Available from: https://www.digitimes.com.tw/iot/article.asp?cat=158&cat1=&cat2=&id=0000506670_69f5nzdl8nlw8bl0jqswa.
[4] 鑫意科技有限公司-Famously. 三菱機械手臂. [cited 2018; Available from: http://www.famously.com.tw/cht/products.php?func=p_list&pc_parent=2.
[5] Shaffer, C.A. and G.M. Herb, A real-time robot arm collision avoidance system. IEEE Transactions on Robotics and Automation, 1992. 8(2): p. 149-160.
[6] Figueiredo, M., J. Oliveira, B. Araújo, and J. Pereira. An efficient collision detection algorithm for point cloud models. in 20th International conference on Computer Graphics and Vision. 2010.
[7] Klein, J. and G. Zachmann. Point cloud collision detection. in Computer Graphics Forum. 2004.
[8] Pan, J., I.A. Şucan, S. Chitta, and D. Manocha. Real-time collision detection and distance computation on point cloud sensor data. in Robotics and Automation (ICRA), 2013 IEEE International Conference on. 2013.
[9] Hwang, K.-S., M.-Y. Ju, and Y.-J. Chen, Speed alteration strategy for multijoint robots in co-working environment. IEEE Transactions on Industrial Electronics, 2003. 50(2): p. 385-393.
[10] 郭子正, SCARA 機器手臂運作於 3D 最佳化路徑之研究. 國立中央大學電機工程學系碩士學位論文, 2017.
[11] Flacco, F., T. Kröger, A. De Luca, and O. Khatib. A depth space approach to human-robot collision avoidance. in Robotics and Automation (ICRA), 2012 IEEE International Conference on. 2012.
[12] Lebel. GJK algorithm distance of closest points in 3D - File Exchange - MATLAB Central. 2018; Available from: https://www.mathworks.com/matlabcentral/fileexchange/62429-gjk-algorithm-distance-of-closest-points-in-3d.
[13] Microsoft. Kinect - Windows 應用程式開發. 2018; Available from: https://developer.microsoft.com/zh-tw/windows/kinect.
[14] MathWorks. Register two point clouds using ICP algorithm - MATLAB pcregistericp. 2018; Available from: https://www.mathworks.com/help/vision/ref/pcregistericp.html.
[15] Besl, P.J. and N.D. McKay. Method for registration of 3-D shapes. in Sensor Fusion IV: Control Paradigms and Data Structures. 1992.
[16] MathWorks. Remove noise from 3-D point cloud - MATLAB pcdenoise. 2015; Available from: https://www.mathworks.com/help/vision/ref/pcdenoise.html.
[17] Rusu, R.B., Z.C. Marton, N. Blodow, M. Dolha, and M. Beetz, Towards 3D point cloud based object maps for household environments. Robotics and Autonomous Systems, 2008. 56(11): p. 927-941.
[18] MathWorks. Downsample a 3-D point cloud - MATLAB pcdownsample. 2015; Available from: https://www.mathworks.com/help/vision/ref/pcdownsample.html.
[19] Pomerleau, F., F. Colas, R. Siegwart, and S. Magnenat, Comparing ICP variants on real-world data sets. Autonomous Robots, 2013. 34(3): p. 133-148.
[20] MathWorks. Estimate normals for point cloud - MATLAB pcnormals. 2015; Available from: https://www.mathworks.com/help/vision/ref/pcnormals.html.
[21] Hoppe, H., T. DeRose, T. Duchamp, J. McDonald, and W. Stuetzle, Surface reconstruction from unorganized points. Vol. 26. 1992: ACM.
[22] MathWorks. Segment point cloud into clusters based on Euclidean distance - MATLAB pcsegdist. 2018; Available from: https://www.mathworks.com/help/vision/ref/pcsegdist.html.
[23] Giaccari. Surface Reconstruction from scattered points cloud (open surfaces) - File Exchange - MATLAB Central. 2017; Available from: https://www.mathworks.com/matlabcentral/fileexchange/63731-surface-reconstruction-from-scattered-points-cloud--open-surfaces-.
[24] MathWorks. N-D Delaunay triangulation - MATLAB delaunayn. Before 2006; Available from: https://www.mathworks.com/help/matlab/ref/delaunayn.html.
[25] Delaunay, B., On the empty sphere(Sur la sphere vide). Izv. Akad. Nauk SSSR, Otdelenie Matematicheskii i Estestvennyka Nauk, 1934. 7(793-800): p. 1-2.
[26] Garcia, J. and Z. Zalevsky, Range mapping using speckle decorrelation. 2008, Google Patents.
[27] Freedman, B., A. Shpunt, M. Machline, and Y. Arieli, Depth mapping using projected patterns. 2012, Google Patents.
[28] CuriousInventor. How the Kinect Depth Sensor Works in 2 Minutes. 2013; Available from: https://youtu.be/uq9SEJxZiUg.
[29] Annoymous. Time-of-flight camera. 2018; Available from: https://en.wikipedia.org/wiki/Time-of-flight_camera.
[30] MathWorks. Register two point clouds using ICP algorithm - MATLAB pcregrigid. 2015; Available from: https://www.mathworks.com/help/vision/ref/pcregrigid.html.
[31] Chen, Y. and G. Medioni, Object modelling by registration of multiple range images. Image and vision computing, 1992. 10(3): p. 145-155.
[32] Gvili. Iterative Closest Point. Available from: www.cs.tau.ac.il/~dcor/Graphics/adv-slides/ICP.ppt.
[33] MathWorks. Register two point clouds using NDT algorithm - MATLAB pcregisterndt. 2018; Available from: https://www.mathworks.com/help/vision/ref/pcregisterndt.html.
[34] Euclidean distance - Wikipedia. 2018; Available from: https://en.wikipedia.org/wiki/Euclidean_distance.
[35] MathWorks. Triangular surface plot - MATLAB trisurf. Before 2006; Available from: https://www.mathworks.com/help/matlab/ref/trisurf.html.
[36] MathWorks. Create one or more filled polygons - MATLAB patch. Before 2006; Available from: https://www.mathworks.com/help/matlab/ref/patch.html.
[37] Tang. GeomView matlab - File Exchange - MATLAB Central. 2011; Available from: https://www.mathworks.com/matlabcentral/fileexchange/31699-geomview-matlab.
[38] MathWorks. Polygons and polyhedra from points in 2-D and 3-D - MATLAB. 2014; Available from: https://www.mathworks.com/help/matlab/ref/alphashape.html.
[39] MathWorks. Delaunay triangulation - MATLAB delaunay. Before 2006; Available from: https://www.mathworks.com/help/matlab/ref/delaunay.html.
[40] Gilbert, E.G., D.W. Johnson, and S.S. Keerthi, A fast procedure for computing the distance between complex objects in three-dimensional space. IEEE Journal on Robotics and Automation, 1988. 4(2): p. 193-203.
[41] kroitor. Gilbert-Johnson-Keerthi (GJK) collision detection algorithm in 200 lines of clean plain C. 2018; Available from: https://github.com/kroitor/gjk.c.
[42] Serrano. Visualizing the GJK Collision detection algorithm. 2016; Available from: https://www.haroldserrano.com/blog/visualizing-the-gjk-collision-algorithm.
論文全文使用權限
  • 同意授權校內瀏覽/列印電子全文服務,於2023-12-31起公開。
  • 同意授權校外瀏覽/列印電子全文服務,於2023-12-31起公開。


  • 如您有疑問,請聯絡圖書館
    聯絡電話:(06)2757575#65773
    聯絡E-mail:etds@email.ncku.edu.tw