Nghiên cứu phương pháp tính toán tọa độ của một điểm thuộc bề mặt vật thể sử dụng Kinect sensor.Đưa ra phương pháp xác định khoảng cách từ kinect đến trục bàn xoay bằng phần mềm để phục vụ chuyển đổi hệ tọa độ.Sử dụng thư viện mã nguồn mở PCL để xử lý, hiệu chỉnh hình thành ponit cloud vật mẫu hoàn chỉnh từ quá trình quét riêng rẽ để thành nên mô hình vật thể.Thực nghiệm kiểm chứng kết quả.
ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA CỘNG HÒA XÃ HỘI CHÚ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Phạm Đức Hiển MSHV: 1570348 Ngày, tháng, năm sinh: 20/09/1989 Nơi sinh: Thanh Hóa Chuyên ngành: Kỹ thuật điện tử Mã số : 60520114 I TÊN ĐÈ TÀI: THIẾT KẾ MÁY QUÉT 3D SỬ DỤNG KINECT SENSOR (AN APPROACH OF MICROSOFT KINECT FOR 3D SCANNER) II NHIỆM VỤ VÀ NỘI DUNG: - Nghiên cứu phương pháp tính tốn tọa độ điểm thuộc bề mặt vật thể sử dụng Kinect sensor - Đưa phương pháp xác định khoảng cách từ kinect đến trục bàn xoay phần mềm để phục vụ chuyển đổi hệ tọa độ - Sử dụng thư viện mã nguồn mở PCL để xử lý, hiệu chỉnh hình thành ponit cloud vật mẫu hồn chỉnh từ trình quét riêng rẽ để thành nên mơ hình vật thể -Thực nghiệm kiểm chứng kết NGÀY GIAO NHIỆM VỤ: (Ghi theo QĐ giao đề tài) III NGÀY HOÀN THÀNH NHIỆM VỤ: (Ghi theo ừong QĐ giao đề tài) IV CÁN BỘ HƯỚNG DẪN (Ghi rõ học hàm, học vị, họ, tên):TS LÊ THANH HẢI Tp HCM, ngày tháng năm CÁN BỘ HƯỚNG DẪN CHỦ NHIỆM BỘ MÔN ĐÀO TẠO (Họ tên chữ ký) (Họ tên chữ ký) TRƯỞNG KHOA (Họ tên chữ ký) Lời cảm ơn LỜI CẢM ƠN Đầu tiên, em xin chân thành cảm ơn thầy TS Lê Thanh Hải, người tận tình hướng dẫn, bảo tạo điều kiện ừong trình thực đề tài Em xin cảm ơn quý thầy cô môn Cơ điện tử - Khoa Cơ khí - trường Đại học Bách Khoa Tp Hồ Chí Minh cung cấp, truyền thụ kiến thức kinh nghiệm suốt thời gian học tập Xin cảm ơn bạn bè, đồng nghiệp, gia đình ln đồng hành tạo điều kiện để tơi hồn thành đề tài bên cạnh cơng việc Học viên Phạm Đức Hiển Tóm tắt luận văn TĨM TẮT LUẬN VĂN Cơng nghệ 3D xuất từ sớm, công nghệ phát triển mạnh mẽ cách mạng công nghiệp làm thay đổi khái niệm thiết ke chế tạo Cùng với phát triển kỹ thuật thiết ke ngược phát ttiển công nghệ quét 3D Luận vãn trình bày phương án thiết kế máy quét 3D sử dụng Kinect sensor Các nội dung nghiên cứu luận văn bao gồm: Tìm hiểu nguyên lý, phương pháp tính tọa độ sử dụng Kinect, đưa phương án tìm xác khoảng cách từ tâm camera hồng ngoại Kinect tới tâm bàn xoay nhằm phục vụ trình chuyển đổi hệ tọa độ để từ xây dựng lại hệ tọa độ tồn bề mặt vật thể, tìm hiểu ứng dụng giải pháp phần mềm để tối ưu hóa việc lập trình xử lý cho máy qt sử dụng Kinect sensor Cuối luận vãn chế tạo mơ hình thực nghiệm để kiểm chứng kết nghiên cứu tạo tảng trình nghiên cứu phát triển ứng dụng vào thực tiễn Mục lục MỤC LỤC ni 4.1 Mục lục 4.2 4.3 Error! Bookmark not defined PHỤ LỤC Danh sách hình ảnh 4.4 DANH SÁCH HÌNH ẢNH 4.5 4.6 4.7 CHƯƠNG 1: TỔNG QUAN 4.8 Trong chương này, tổng quan ứng dụng, nguyên lý hoạt động loại máy quét 3D trình bày Trên sở tiến hành phân tích sơ để lựa chọn phương án cho mơ hình máy qt 1.1 Đặt vấn đề 4.9 Cùng với phát triển kỹ thuật thiết ke ngược phát triển công nghệ quét 3D Máy quét 3D thiết bị phân tích đối tượng thực môi trường để thu thập liệu hình dạng, kích thước bề ngồi vật thể Các liệu lưu trữ dạng số sử dụng để xây dựng mơ hình ba chiều kỹ thuật số Khái niệm máy quét 3D có từ kỷ 20 Đốn năm 1980s, vói phát triển mạnh công nghệ so (digital technology) khả xử lý ngày nhanh máy tính, cơng nghệ xử lý ảnh ngày phát triển có nghiên cứu ứng dụng số hóa (digitization) tái xây dựng (reconstruction) vật thể máy tính tạo tiền đề thúc đẩy phát triển mạnh mẽ công nghệ quét 3D 4.10 Nhiều công nghệ khác sử dụng để xây dựng thiết bị qt 3D, cơng nghệ kèm vói lợi thế, hạn chế riêng chi phí 4.11 Dữ liệu 3D thu thập hữu dụng cho loạt ứng dụng Các thiết bị sử dụng rộng rãi ngành công nghiệp giải trí việc sản xuất phim trò chơi, ứng dụng phổ biến khác cơng nghệ bao gồm thiết kế công nghiệp, chế tạo ngược, lấy mẫu, kiểm soát chất lượng kiểm tra 4.12 Trong năm gần quét 3D quan tâm nghiên cứu mạnh mẽ Đi với phát triển có nhiều phương pháp ứng dụng để thiết kế máy quét 3D: Phương pháp tiếp xúc, phương pháp không tiếp xúc Trong phương pháp không tiếp xúc lại chia làm loại: Chủ động bị động Danh sách hình ảnh 4.13 Phương pháp chủ động có ưu điểm đơn giản, tính hiệu cao việc tạo thành vật thể 3D giới thật từ camera Trong loại chủ động có nhiều phương pháp thực: Dùng ánh sáng có cấu trúc từ máy chiếu kết họp camera, dùng camera stereo vision, mơ hình chiếu vạch laser vật mẫu chiếu vạch laser màu, sau điểm ảnh laser, biến dạng đường laser ảnh đưa vào tính tốn để tái cấu trúc lại bề mặt vật thể khơng gian chiều 4.14 Có nhiều phương pháp tiếp cận đề tài: Ánh sáng có cấu trúc, time of flight, phương pháp giao thoa 4.15 4.16 4.17 • Phương pháp sử dụng camera 4.18 • Hình 1.1: Phân loại dạng nguyên lý hoạt động máy quét [1] Nhược điểm: - Yêu cầu calibration cho camera - Q trình tính tốn trải qua nhiều bước phức tạp - Phụ thuộc vào không gian sáng - Phụ thuộc vào vật liệu bề mặt vật thể Time-of-Flight (ToF) 4.19 Ưu điểm: Danh sách hình ảnh - Chỉ cần camera - Mơ hình hình học 3D thu theo thời gian thực - Giảm thiểu phụ thuộc vào không gian sáng - Hầu hết không phụ thuộc vào bề mặt vật thể 4.20 4.21 Trong phương pháp có kỹ thuật + Tính toán thời gian tia sáng 4.22 4.23 4.24 4.25 Hình 1.2: Mơ tả xác định khoảng cách dựa vào thời gian [2] Nhược điểm: - Yêu cầu độ xác thiết bị đo thòi gian cao - Đo xung ánh sáng trở lại khơng xác, tán xạ ánh sáng 4.26 + Phương pháp dựa vào độ lệch pha xung nguồn sáng 4.284.27 Danh sách hình ảnh 4.29 4.30 Hình 1.3: Mô tả xác định khoảng cách dựa vào độ lệch pha Nhược điểm: - Tỉ lệ khung hình bị giới hạn thời gian tích hợp - Thời gian để xử lý thông tin thời gian lâu 1.2 Những ứng dụng máy quét 3D 4.31 Hiện máy quét 3D sử dụng nhiều lĩnh vực khác nhau: - Trong khí chế tạo, đo đạc, kiểm tra sản phẩm chế tạo - Trong điện ảnh để xây dựng mơ hình 3D nhân vật, vật thể - Trong khảo cổ, xây dựng để đo đạc thiết kế cơng trình - Trong cơng nghiệp sản xuất: sản xuất giày dép, khuôn mẫu - Trong lĩnh vực y khoa dùng tái tạo mơ hình phận thể ngưòi 4.32 Tùy vào lĩnh vực, đối tượng áp dụng, máy quét 3D có yêu cầu cụ thể độ xác, phương pháp thu thập liệu 4.33 1.2.1 Máy quét 3D dùng công nghiệp 10 Chương 4: Ket thực nghiệm 4.639 4.640 4.641 4.642 Hình 4.10: Đám mây điểm mặt trước (bên trái) sau (bên phải) gấu Từ nhiều mẫu quét thử nghiệm đề tài, với vật thể có bề mặt không phức tạp cho kết đám mây điểm bề mặt vật thể tương đồng với bề mặt vật thể thực 4.643 Sau thực xong trình quét, bề mặt vật thể lưu dạng đám mây điểm Ta xuất đám mây điểm định dạng file ply để sử dụng cho ứng dụng sau Dữ liệu quét đám mây điểm, muốn tạo file 3D cho việc in 3D, ta phải nối chúng vói tam giác Để thực việc ta sử dụng phần mềm Meshlab để tạo lưói tam giác Meshlab phần mềm mã nguồn mở miễn phí, cung cấp công cụ hỗ trợ cho việc chỉnh sửa, kiểm ưa Bên cạnh cung cấp tính để xử lý liệu thơ từ q trình số hóa vật thể để thực tái tạo vật thể 4.644 4.2 Thông số máy quét thử nghiệm 4.645 Để đánh giá sai số kích thước vật thể quét, đề tài so sánh kích thước thực tế vật thể quét kích thước tương ứng đám mây điểm sau q trình qt hồn thành Sử dụng phần mềm meshlab để mở đám mây điểm vật thể Trong chương trình meshlab có hỗ ttợ công cụ đo khoảng cách điểm point cloud Chương 4: Ket thực nghiệm 4.647 4.646 4.648 Hình 4.11: Cơng cụ “Measuring tool” đo khoảng cách meshlab 4.649 Để sử dụng công cụ “Measuring tool” đưa xác giá ttị khoảng cách Ta phải hiệu chỉnh thông số scale chuẩn mô hình vật thể thực tế đám mây điểm Đồ tài sử dụng mặt phẳng tham chiếu có dán giấy màu vàng kích thước 5x5 (cm) sau dùng Kinect đưa đám mây điểm dựa vào kích thước thực tế kích thước đám mây điểm đo sử dụng “Measuring tool” để đưa thơng so scale chuẩn 4.650 Hình 4.12: Q trình xác định thông số scale 4.651 7 4.652 Đám mây điểm thu Kinect 4.653 4.654 Hình 4.13: Đám mây điểm mặt phẳng dùng tìm thơng số scale 4.655 Sử dụng công công cụ “Measuring tool” đo bề ngang giấy vàng sau tính tỉ lệ scale 4.656 KI0W11M Hình 4.14: Q trình tìm thơng số tỉ lệ 4.657 Tờ giấy màu vàng có kích thước 50 X 50 (mm) Khi sử dụng công cụ “Measuring tool” đo kích thước bề ngang cho thơng số MO = 0.0491134 suy tỉ lệ scale ừong meshlab là: 4.658 4.659 4.660 50 scale »1018 (4 0.049113 — 1) Cập nhật thông số scale cho meshlab mở file đám mây điểm vật thể quét (gấu lớn) Sau dùng cơng cụ “Measuring tool” để kiểm ừa kích thước vật thể đám mây điểm sau so sánh vói kích thước tương ứng thực tế để kiểm ừa sai số 4.661 Hình 4.15: Cập nhật thơng sổ scale 4.662 Kiểm ừa kích thước thực tế vị trí bề ngang lớn vật thể 4.665 4.666 4.663 4.664 Hình 4.16: Kích thước thực tế vật thể quét Thực phép đo lần vói mẫu thực tế sử dụng thước kẹp vói sai số 0.02mm ta kết sau: 4.667 4.668 4.669 4.670 4.671 4.672 4.673 4.674 4.675 4.676 4.677 4.678 4.679 4.683 4.680 4.684 4.681 4.685 4.682 4.686 4.687 4.688 4.689 4.690 4.691 4.692 4.693 4.694 4.695 4.696 4.697 4.698 4.699 Kết kích thước phép đo đám mây điểm vật thể 4.700 4.702 4.701 Hình 4.17: Kích thước đám mây điểm vật thể Theo kết kích thước thực tế kết đám mây điểm vật thể, sai số thu là: 4.703 Á= 125.80-124.34 = 1.46(mm) 4.704 (4 2) Để xác định thơng số đưa vào chương trình điều khiển quét, đề tài thực nghiệm với mẫu thử có bề mặt đơn giản (vật thể ừòn xoay) thực nghiệm nhiều lần với tốc độ quét Để từ thu thơng số tối ưu tham khảo cho ngưòi sử dụng chương trình 4.706 4.705 4.707 Hình 4.18: Vật thể quét thử nghiệm có biên dạng tròn xoay Kết q ttình quét 4.709 4.708 4.710 Hình 4.19: Đám mây điểm thu sau khỉ quét vật thể tròn xoay 4.711 4.712 4.713 4.714 4.715 sau: 4.716 Hình 4.20: Kiểm tra thơng số kích thước thực tế kích thước đám mây điểm Sau chế tạo thử nghiệm, máy qt có thơng số kỹ thuật thực tế 4.717 4.718 4.719 4.720 4.721 4.722 4.723 4.724 4.725 4.726 4.727 4.728 4.729 4.730 4.731 4.732 4.734 4.733 4.735 4.3 Đề xuất phương án tạo lưới bề mặt vật thề (Surface Reconstruction) 4.736 Sau kết thúc trình số hóa bề mặt vật thể thu liệu đám mây điểm bề mặt vật thể Để tái tạo bề mặt vật thể cách nối điểm point cloud Đề tài đề xuất sử dụng phần mềm hỗ trợ Meshlab Meshlab chương trình mã nguồn mở sử dụng để xử lý chỉnh sửa lưới tam giác 3D Nó cung cấp cơng cụ để chỉnhsửa, kiểm ừa chuyển đổi meshes Ngoài meshlab cung cấp tính để xử lý liệu thu từ q ừình số hóa để chuẩn bị cho trình in 3D 4.737 4.738 4.739 * MiihlJh.Hi JIJ.1-PIIHIIJI i tite iflt rtitn Hờirttr 'if* LL 4.740 4.741 £< L-" Jo - MẠC, _ r Ji *y * Hình 4.21: Giao diện chương trình Meshlab □H Chương 5: Kết luận hướng phát triển 4.742 CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 5.1 Kết luận 5.1.1 Kết đạt 4.743 Như mục tiêu đề tài đề cập Đe tài thực thành cơng việc số hóa vật thể sử dụng Kinect Tùy thuộc vào hình dáng vật thể, môi trường quét, khoảng cách từ Kinect tới bàn xoay vật thể không thiết phải cố định từ đầu, khoảng cách thay đổi tùy thuộc vào mục đích sử dụng Đe tài xác định xác khoảng cách từ Kinect tói tâm bàn xoay phục vụ cho việc chuyển đổi hệ tọa độ cách sử dụng Kinect để từ xây dựng lại bề mặt vật thể quét 4.744 Thòi gian quét vật thể rút ngắn nhiều so với phương pháp quét khác 4.745 Phần mềm giải thuật có khả mở rộng phát triển thêm tính phù hợp vói nhu cầu nhiều đối tượng sử dụng Việc thực chế tạo dễ dàng vói giá thành thấp 5.1.2 Hạn chế đề tài 4.746 Máy quét thử nghiệm sử dụng với Kinect xbox360, dòng sản xuất vào năm 2011 nên có hạn chế hình ảnh camera hồng ngoại camera màu Từ ảnh hưởng tói thơng số tính tốn ừong q trình quét 4.747 Các chi tiết khí chưa thiết kế tối ưu độ xác chưa cao làm tăng sai số trình quét 4.748 Chưa phát triển khả chỉnh sửa tập hợp điểm sau quét, yêu cầu người sử dụng phải dùng phần mềm riêng biệt để hiệu chỉnh xử lý 5.2 Hướng phát triển 4.749 định vị Đềcách trí tài Kinect thực vật thể việc xoay quét tròn vật thể để Kinect với việc thu cố đượccác chế ữong liệu việc tồn chế tạo bề máy mặt qt vật khoảng Mặc dù cách không cố định bị hạn từ Kinect tới ừong bàn xoay, chương việc ưình xác điều định khiển khoảng cách lại yêu cầu khoảng giảm tính tiện cố lợi định ừong quá trình trình quét quét lấy Điều liệu thô làm bề mặt phát vật triển thể ttong đề tài mơi trường phát làm triển việc giải khác thuật để Hướng quét vật phải thể chế không tạo thêm bàn thiết xoay cố để định đặt vị vật trí thể Kinect điều Thay khiển bàn xoay Kinect, để quét người hết sử bề dụng mặt có vật thể thể cầm Thì ưên tay vói di chuyển thiết để bị thực đòi hỏi thuật q trình tốn phức qt tạp Tuy để nhiên xử lý liệu trình yêu cầu chương trình xử lý hiệu cao Phụ lục 4.750 TÀI LIỆU THAM KHẢO [1] Daniele Ravi, “Classification of Depth Measurement Techniques”, 2010 [2] V Ganapathi, c Plagemann, D Koller, s Thrun, “Real-time motion capture using a single Time-of-flight camera”, IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp 755-762, 2010 [3] A Kolb, E Barth, R Koch, and R Larsen, “Time-of-Flight Sensors in Computer Graphics”, Proc EUROGRAPHICS Conf., pp 119-134, 2009 [4] R Lange, “3D Time-of-Flight Distance Measurement with Custom Solid-State Image Sensors in CMOS/CCD-Technology”, PhD thesis, Univ, of Siegen, 2000 [5] Song Tiangang, Lyu Zhou, Ding Xinyang, and Wan Yi, “3D Surface Reconstruction”, International Journal of Computer Theory and Engineering, 5(3), 2013 [6] Zhiguo, X., Junhai, J., Jiawei, H., & Nianfeng, L, “Application research on 3D reconstruction based on Kinect”, International Symposium on Computers & Informatics ISCI, 2015 [7] CUI, Y„ SCHUON, s„ DEREK, c„ THRUN, s., AND THEOBALT, “3d shape scanning with a time-of-flight camera”, In Proc, of IEEE CVPR 2010 [8] "Kinect for Windows Sensor Components and Specifications," Internet: http://msdn.microsoft.com/en-us/library/jjl31033.aspx, Sept 20, 2016 [9] "Kinect," Internet: http://en.wildpedia.org/wild/Kinect, Sept 20, 2016 [10] Nicolas Burrus, “Kinect, RGB Demo, calibrate and visualize Kinect output”, http://nicolas.burrus.name/, 2011 4.751 Nguyen Hồng Đức, Nguyen Vãn Đức, “Robot tự hành tránh vật cản sử dụng thiết bị Kinect” Luận văn, Đại học Bách Khoa, Tp Hồ Chí Minh, 2012 Phụ lục [11] M Andersen, T Jensen, p Lisouski, A Mortensen, M Hansen, T Gregersen and p Ahrendt, "Kinect depth sensor evaluation for computer vision applications", Department of Engineering - Electtical and Computer Engineering Aarhus University, 2012 [12] Gllan-Feng He, Sun-Kyung Kang, Won-Chang Song and Sung-Tae Jung, “Realtillle gesture recognition using 3D depth camera”, In Software Engineering and Service Science (ICSESS), 2011 IEEE 2nd International Conference on, pages 187-190 2011 [13] H Murase and s K Nayar, “Visual learning and recognition of 3-d objects from appearance”, International Journal of Computer Vision, 14(l):5-24, 1995 [14] J Tong, J Zhou, L Liu, z Pan and H Yan, "Scanning 3D full Human bodies using Kinects" [15] M M V s Paulo Dias, "3D Reconstruction of Real World Scenes Using a Low- Cost 3D Range Scanner", 2006 [16] M Liao, Q Zhang, H Wang, R Yang, and M Gong, “Modeling deformable objects from a single depth camera,” in Proceedings of the International Conference on Computer Vision, 2009 [17] K Khoshelham, “Accuracy analysis ofkinect depth data”, in Proceedings of ISPRS Workshop Laser Scanning, 2011 [18] p J Besl and H D M Kay, “A method for registration of 3-D shapes,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol 14, no 2, pp 239 - 256, 1992 [19] Enrique Ramos Melgar, Ciriaco Castto Diez, Przemek Jaworski “Turntable diagram,” mArduino and Kinect Projects, Science+Business Media New York, pp 311- 312,2012 [20] Zhang c, Zhang z “Calibration between depth and color sensors for commodity depth cameras” the International workshop on hot topics in 3D, IEEE, pp 1-6, 2011 Phụ lục [21] R Macknojia, A Chavez-Aragón, p Payeur and R Laganière, "Calibration of a network of Kinect sensors for robotic inspection over a large workspace," IEEE Workshop on Robot Vision (WORV), Clearwater Beach, FL, pp 184-190, 2013 ... phương pháp tiếp cận để nghiên cứu thiết kế máy quét 3D: Sử dụng camera, camera máy phát laser, ánh sáng mã hóa, time of flight Máy quét 3D sử dụng Kinect sử dụng ánh sáng có cấu trúc đối tượng... quy luật tạo hình) 4.35 Các máy quét 3D ừong công nghiệp sử dụng cho mục đích lấy liệu CAD 3D vật thể Hình 1.4: ứng dụng máy quét 3D 4.36 thiết kể ngược 1.2.2 Máy quét 3D dùng khảo cổ, xây dựng... TÀI: THIẾT KẾ MÁY QUÉT 3D SỬ DỤNG KINECT SENSOR (AN APPROACH OF MICROSOFT KINECT FOR 3D SCANNER) II NHIỆM VỤ VÀ NỘI DUNG: - Nghiên cứu phương pháp tính tốn tọa độ điểm thuộc bề mặt vật thể sử dụng