Chương 1: TỔNG QUAN 1.1 Tổng quan về hướng nghiên cứu Robot tự hành là một lĩnh vực mới, ra đời vào khoảng thế kỷ 20. Lĩnh vực này kết hợp nhiều kỹ thuật và nguyên lý khoa học, từ kiến thức về kỹ thuật cơ khí, điện, điện tử đến khoa học máy tính, nhận thức và xã hội. Trong bài báo “RGB-D Mapping: Using depth cameras for dense 3D modeling of indoor environments” [1] của nhóm tác giả Peter Henry , Michael Krainin , Evan Herbst , Xiaofeng Ren , Dieter Fox đã khẳng định rằng bản đồ 3D có một vai trò vô cùng quan trọng trong việc điều khiển robot. Được ứng dụng trong quá trình điều hướng, thao tác, điều khiển từ xa robot,… Bài báo này còn định nghĩa camera RGB- D là một hệ thống cảm biến hình ảnh sẽ cho ta ảnh RGB kèm theo độ sâu của các pixel.
Bài báo đã thực nghiệm vẽ bản đồ một không gian dài 114m của một phòng thì nghiệm với thuật toán RGBD-ICP nhưng đòi hỏi một hệ thống phần cứng máy tính tốc độ cao để xử lý các thuật toán. Bài báo này không đề cập đến việc tối ưu hóa bản đồ 3D. Trong bài báo “Real-time 3-D feature detection and correspondence refinement for indoor environment-mapping using RGB-D cameras” [2] của nhóm tác giả Liang- Chia Chen, Nguyen Van Thai và Hsien-I Lin đã công bố kết quả vẽ bản đồ 3D cho môi trường trong nhà đáp ứng thời gian thực bằng camera Kinect. Cũng nhóm tác giả này với bài báo “In situ clouds-powered 3-D radiation detection and localization using novel color-depth-radiation (CDR) mapping” [3] đã hoàn thành chương trình điều khiển robot tự hành có gắn camera Kinect và radar để di chuyển và vẽ bản đồ môi trường xung quanh.
Cả hai bài báo này vẫn chưa đề cập đến vấn đề tối ưu hóa bản đồ. Với đề tài “Local and Global Localization for Mobile Robots using Visual Landmarks” nhóm tác giả Stephen Se, David Lowe, Jim Little của trường Đại Học Trang 16 Luan van University of British Columbia ở Canada đã xác định được vị trí cục bộ và toàn cục của robot dựa vào các vật mốc mà robot nhận dạng được [4]. Bài báo này đề cập đến việc xây dựng bản đồ dựa trên bản đồ cơ sở trước đó nhưng chưa nêu nên phương pháp cũng như là các bước thực hiện. Trong bài báo “Calibrated Kinect Sensors for Robot Simultaneous Localization and Mapping” của tác giả Yin-Tien Wang, Chin-An Shen và Jr-Syu Yang của trường đại học Tamkang, Đài Loan đã trình bày thuật toán định vị và vẽ bản đồ đồng thời của robot dùng cảm biến Kinect, cảm biến đo ba màu đỏ-xanh lá-xanh dương và độ sâu (RGB-D).
Độ méo dạng của ảnh RGB và ảnh độ sâu sẽ được chuẩn hoá trước khi dùng cảm biến này để đo vật. Thuật toán SUFT (Speeded up robust features) sẽ nhận dạng ra vật mốc trong ảnh RGB thu được và xây dựng lên bản đồ môi trường [5]. Đề tài này xác định tọa độ robot bằng cách nhận dạng vật mốc và cần phải xây một thư viện vật mốc gồm nhiều vật mốc khác nhau cho robot. Với bài báo “Method to Convert Kinect’s 3D Depth Data to a 2D Map for Indoor SLAM” nhóm tác giả Kamarulzaman Kamarudin, Syed Muhammad Mamduh, Ali Yeon Md Shakaff, Shaharil Mad Saad, Ammar Zakaria, Abu Hassan Abdullah and Latifah Munirah Kamarudin đến từ trường Đại Học Malaysia Perlis đã trình bày về vẽ bản đồ dùng camera Kinect 3D.
Dữ liệu độ sâu của camera này lấy từ cảm biến độ sâu sẽ được truy hồi và chuyển sang bản đồ 2D. Tuy nhiên bài báo này chưa chắc chắn về độ tin cậy của camera Kinect cũng như phương pháp được đề cập khi robot hoạt động trong môi trường khác như robot di chuyển, gặp các vật thể các toà nhà bằng kính hoặc trong trường hợp không phát hiện ra vật mốc nào[6].2 Tính cấp thiết của đề tài, ý nghĩa khoa học và thực tiễn của đề tài Robot tự hành ra đời nhằm mục đích giúp con người thực hiện những nhiệm vụ lặp đi lặp lại nhiều lần với độ chính xác cao, làm những nhiệm vụ trong các môi trường nguy hiểm, có nguy cơ ảnh hưởng đến tính mạng nếu con người ở trong môi trường ấy như môi trường hoá chất, môi trường yếm khí,. Ngoài ra, robot tự hành còn hoạt động ở những nơi mà con người không thể đến được như đáy lòng đại dương, Trang 17 Luan van các vệ tinh ngoài trái đất như mặt trăng, sao hoả,…. Bên cạnh đó robot tự hành còn ứng dụng trong nhiều lĩnh vực của cuộc sống để phục vụ nhu cầu con người đặc biệt là trong y tế.
Robot được mô hình hoá giống như con người vậy. Để robot có thể di chuyển đúng mục đích trong một không gian nhất định thì robot phải biết được mình đang ở đâu trong không gian đó và không gian đó trông như thế nào (to hay nhỏ, có vật cản hay không, đường đi trong không gian như thế nào,…). Tất cả những vấn đề này sẽ được giải quyết nếu như robot được cung cấp một thư viện bản đồ. Thư viện bản đồ này có chức năng giống như bản đồ mà chúng ta thường dùng trong thực tế để tìm đường đi đến nơi đích.
Nên việc phát triển việc vẽ bản đồ là một yêu cầu rất cấp thiết để một con robot có thể hoạt động và phát huy chức năng của mình trong thực tế.3 Mục đích nghiên cứu và đối tượng nghiên cứu của đề tài Với tính cấp thiết của đề tài như trên thì người nghiên cứu đã lựa chọn đề tài “Tối ưu hóa bản đồ 2D với bộ lọc Kalman dùng camera nổi” làm đề tài tốt nghiệp thạc sĩ chuyên ngành Điện-Điện Tử của mình. Với mục đích nghiên cứu là có thể xây dựng một hệ thống bản đồ cho robot tự hành, người nghiên cứu hi vọng đề tài của mình sẽ đóng góp được một phần nhỏ kiến thức cho dự án chế tạo và phát triển robot ở Việt Nam trong tương lai. Bản đồ 3D đươc tạo nên bằng cách sắp xếp nhiều lớp bản đồ 2D chồng lên nhau nên nó không những hội tụ được những ưu điểm của bản đồ 2D riêng rẻ mà còn có cả những ưu điểm của việc kết hợp các bản đồ 2D với nhau. Và trong thực tế bản đồ 3D có ứng dụng hơn bản đồ 2D nên cụ thể hơn đề tài sẽ xây dựng một hệ thống bản đồ 3D cho robot tự hành thay vì bản đồ 2D.
Người nghiên cứu xác định đối tượng nghiên cứu của mình là phương pháp vẽ bản đồ 3D. Trang 18 Luan van 1.4 Nhiệm vụ và giới hạn 1.1 Nhiệm vụ Với mục đích xây dựng một hệ thống bản đồ cho robot tự hành đề tài có các nhiệm vụ sau: - Thu thập dữ liệu là các ảnh RGB và ảnh độ sâu của không gian bằng camera Kinect. Kết hợp hai ảnh này lại với nhau để tạo thành mây 3D của khung cảnh. - Xây dựng thuật toán SIFT để nhận dạng các điểm đặc trưng trong khung cảnh của ảnh RGB.
- Xác định các điểm tương đồng của hai ảnh RGB liên tiếp cũng như là các điểm tương đồng của hai đám mây 3D liên tiếp để tính toán ma trận chuyển đổi giữa hai đám mây và nhiều đám mây. - Xây dựng thuật toán bộ lọc Kalman để tối ưu hóa độ chính xác của ma trận chuyển đổi. - Đo thực nghiệm để kiểm tra chất lượng của thuật toán và đưa ra nhận xét đánh giá kết quả.2 Giới hạn Đề tài chọn camera nổi là camera Kinect của hãng Microsoft làm cảm biến thu thập dữ liệu. Camera này cho ta ảnh RGB với độ phân giải 640x480 pixel, tầm đo từ 0.
Đề tài chỉ dùng camera Kinect để thu thập dữ liệu thực tế là ảnh RGB và ảnh độ sâu của khung cảnh để làm dữ liệu xử lý cho các thuật toán. Các dữ liệu khác như dữ liệu encoder đề tài sẽ sử dụng dữ liệu giả lập để kiểm tra thuật toán. Đề tài chỉ thực hiện vẽ bản đồ cho không gian trong phòng kín có điều kiện ánh sáng tốt để giảm tối đa nhiễu do ánh sáng gây ra và có nhiều chi tiết để nhận dạng như ảnh treo tường, bàn, ghế, …. Không gian này phải ở trạng thái tĩnh trong quá trình đo đạt.
Trang 19 Luan van 1.5 Phương pháp nghiên cứu Trong quá trình nghiên cứu, người nghiên cứu sử dụng các phương pháp sau: - Phương pháp phân tích và tổng hợp lý thuyết: được sử dụng trong quá trình nghiên cứu lý thuyết được trình bày trong phần cơ sở lý thuyết. - Phương pháp phân loại và hệ thống hóa lý thuyết: được dùng trong quá trình tham khảo các bài báo khoa học trong nước và quốc tế. - Phương pháp mô hình hóa: được dùng trong quá trình xây dựng nên sơ đồ khối của hệ thống đề tài. - Phương pháp quan sát khoa học: được dùng nhiều khi đo đạt thực nghiệm.
- Phương pháp thực nghiệm khoa học: được sử dụng trong quá trình đo đạt thực nghiệm đề tài. - Phương pháp phân tích tổng kết kinh nghiệm: được thực hiện trong quá trình kiểm tra và đánh giá dữ liệu thu được từ đo đạt.6 Kế hoạch thực hiện đề tài Bảng 1.1: Kế hoạch thực hiện đề tài Thời gian Nội dung Tháng thứ nhất 9/2015 Nghiên cứu lý thuyết về: - Các phép chuyển đổi trong hệ tọa độ 3D. - Bộ lọc Kalman và ứng dụng bộ lọc Kalman trong điều khiển robot. - Thuật toán nhận dạng SIFT và tìm cặp điểm đặc trưng tương đồng trên ảnh RGB.
Tháng thứ 2 10/2015 Nghiên cứu lý thuyết về: - Phương pháp tính toán ma trận chuyển đổi giữa các đám mây. - Phương pháp dịch chuyển các đám mây lại với nhau. Trang 20 Luan van Tháng thứ 3 11/2015 - Viết chương trình đọc ảnh RGB và ảnh độ sâu tương ứng. - Viết chương trình kết hợp ảnh RGB và ảnh độ sâu thành mây 3D.
- Viết chương trình tìm điểm đặc trưng của ảnh RGB, tìm cặp điểm đặc trưng tương đồng của hai ảnh RGB và mây liên tiếp. - Viết chương trình tìm ma trận chuyển đổi hai mây 3D từ tọa độ các cặp điểm tương đồng. - Viết chương trình ghép 2 đám mây 3D lại với nhau. Tháng thứ 4 12/2015 - Viết chương trình vẽ bản đồ 3D cho robot tự hành khi di chuyển trong không gian trong nhà - Viết chương trình tối ưu hóa bản đồ 3D cho robot tự hành di chuyển trong không gian trong nhà với bộ lọc Kalman.
Tháng thứ 5 1/2016 Thu thập dữ liệu, đo đạt thực nghiệm và nhận xét, đánh giá. Tháng thứ 6 2/2016 Viết luận văn. Trang 21 Luan van Chương 2: CƠ SỞ LÝ THUYẾT 2.1 Khoảng cách Euclid giữa hai điểm trong hệ toạ độ Descartes Trong hệ toạ độ Descartes Oxy cho hai điểm 𝐴(𝑥𝑎 , 𝑦𝑎 ) và 𝐵(𝑥𝑏 , 𝑦𝑏 ) như hình 2.