Mở đầu Định vị là khả năng thiết yếu của robot khi di chuyển trong môi trường. Thông tin định vị chính xác là yêu cầu đầu tiên để robot chuyển động đúng. Ví dụ trên xe tự lái, dữ liệu vị trí và góc hướng cho phép xe bám theo quỹ đạo mong muốn. Trên máy bay hoặc drone, dữ liệu góc nghiêng và vị trí giúp phương tiện giữ cân bằng trên không.
Trong những công nghệ định vị hiện nay, hệ thống định vị thị giác Visual Odometry – VO) đang được quan tâm nghiên cứu nhờ vào giá thành phải chăng, độ chính xác cao, không lệ thuộc vào cơ cấu cơ khí của phương tiện, hoạt động được ở môi trường trong nhà cũng như ngoài trời. Đơn cử là hệ thống định vị trên xe hơi tự lái của hãng Tesla sử dụng 7 camera kết hợp với cảm biến radar và siêu âm [1]. Hệ thống định vị trên xe hơi tự lái Tesla Hệ định vị tích hợp thị giác quán tính (Visual Inertial Odometry – VIO) sử dụng thông tin quán tính để bổ sung cho thị giác, mang đến nhiều lợi ích. Trên máy bay, khả năng đo góc nghiêng chuẩn và tốc độ cập nhật nhanh của IMU cho phép máy bay giữ ổn định tốt và di chuyển với tốc độ cao.
Quán tính còn đóng vai trò trợ giúp thị giác trong nhiều trường hợp suy giảm như môi trường ít đặc trưng, chuyển động xoay gắt. Ngược lại, thông tin thị giác khi tốt sẽ góp phần ước lượng đúng bias IMU, từ đó 1 LVThS – Hệ thống định vị tích hợp thị giác lập thể, quán tính và GPS – Trần Hoàng Khôi Nguyên nâng chất lượng hệ tích hợp. Điển hình là sản phẩm flycam Mark ứng dụng hệ định vị thị giác quán tính để tự động bám theo vị trí người dùng [2]. Flycam Mark sử dụng hệ thống định vị tích hợp thị giác quán tính Tuy sở hữu nhiều ưu diểm, hệ VIO không tránh khỏi sai số tích lũy theo thời gian vì bản chất là một phương pháp định vị tương đối.
Khi quãng đường di chuyển tăng lên, kết quả định vị VIO sẽ trôi ngày càng xa giá trị đúng. Để khử độ trôi của hệ VIO, giải pháp là tích hợp với một hệ định vị tuyệt đối như hệ thống định vị toàn cầu (Global Positioning System – GPS), giúp cung cấp vị trí toàn cục không trôi của vật thể trên Trái Đất. Ở chiều ngược lại, VIO hỗ trợ giảm nhiễu cục bộ, cũng như trợ giúp GPS trong môi trường có nhiều vật cản như cây cối, nhà cao tầng. Hệ thống định tích hợp VIO/GPS có khả năng cung cấp ngõ ra đầy đủ 6 trục với tốc độ cập nhật nhanh, độ chính xác cao, không trôi theo thời gian và bền vững với điều kiện môi trường.
Đây cũng là mục tiêu mà đề tài hướng đến. Tổng quan tình hình nghiên cứu Các nghiên cứu về hệ VIO có thể chia thành hai nhóm: dựa trên bộ lọc Kalman và dựa trên tối ưu hóa phi tuyến. Nhóm thứ nhất được phát triển đa dạng với bộ lọc Kalman mở rộng – EKF [3], bộ lọc Kalman mở rộng lặp – IEKF [4] và bộ lọc Kalman phi tập trung – UKF [5]. Ưu điểm của bộ lọc Kalman là quy trình tính toán đệ quy gọn nhẹ, có khả năng chạy trên các thiết bị di động [6].
Mặt khác, nhóm dựa trên tối ưu hóa phi tuyến bắt nguồn từ bài toán định vị thị giác, trong đó tọa độ camera được 2 LVThS – Hệ thống định vị tích hợp thị giác lập thể, quán tính và GPS – Trần Hoàng Khôi Nguyên ước lượng từ rất nhiều điểm đặc trưng sao cho cực tiểu hàm tổng bình phương sai số [7]. Khi dùng vào hệ tích hợp, hàm sai số không chỉ được thêm thành phần quán tính, mà còn mở rộng về các trạng thái quá khứ trong một cửa sổ giới hạn [8] [9]. Việc xét các yếu tố trong quá khứ giúp cho kết quả ước lượng phản ánh đối tượng một cách bao quát hơn. Bên cạnh đó, nhờ đặc tính thưa thớt của bài toán, phương pháp tối ưu hóa được chứng minh là có độ chính xác cao hơn cho cùng một khối lượng tính toán khi so sánh với phương pháp lọc [10].
Kết quả của nghiên cứu OKVIS [8]. Thuật toán (aslam) đạt sai số vị trí 2% trên tổng quãng đường di chuyển. Xét về mức độ tích hợp, hệ định vị có thể chia thành tích hợp lỏng (loosely coupled) và tích hợp chặt (tightly coupled). Trong hệ tích hợp lỏng, mỗi cảm biến thực hiện ước lượng riêng rẽ và chỉ kết hợp dữ liệu với nhau ở giai đoạn cuối.
Ưu điểm của phương pháp này là thiết kế đơn giản, dễ dàng kết hợp các module có sẵn mà không phải thay đổi hoạt động bên trong. Ví dụ, nghiên cứu [11] kết hợp dữ liệu định vị thị giác từ thuật toán SVO [12] với giá trị ước lượng IMU thông qua bộ tích hợp lỏng MSF [13]. Nền tảng điều khiển quadrotor PIXHAWK [14] thực hiện tích hợp lỏng thị giác và IMU bằng bộ lọc EKF. Tuy nhiên, việc chưa xét đến mối liên hệ bên trong giữa các cảm biến làm cho hệ tích hợp lỏng không đạt được độ chính xác cao.
Những nghiên cứu gần đây sử dụng phương pháp tích hợp chặt, theo đó dữ liệu được chia sẻ dựa trên ràng buộc giữa các cảm biến nhằm đạt được kết quả ước lượng tối ưu. Với các hệ tích hợp chặt dựa trên bộ lọc như ROVIO [4], MSCKF [15], giá trị 3 LVThS – Hệ thống định vị tích hợp thị giác lập thể, quán tính và GPS – Trần Hoàng Khôi Nguyên đo IMU được dùng để dự báo vector trạng thái, trong khi giá trị đo camera được dùng để cập nhật. Mặt khác, với hệ tích hợp chặt theo phương pháp tối ưu hóa như OKVIS [8], sai số IMU và camera được ước lượng đồng thời theo hàm chi phí tổng hợp. Kết quả so sánh tại [16] cho thấy các hệ tích hợp chặt thị giác – quán tính thể hiện độ chính xác vượt trội so với hệ tích hợp lỏng trong cùng một điều kiện.
Từ các nhận xét trên, học viên chọn xây dựng hệ định vị VIO trong đề tài theo mô hình tích hợp chặt sử dụng phương pháp tối ưu hóa phi tuyến. Để thực hiện hệ định vị tích hợp VIO và GPS, đề tài chọn mô hình tích hợp lỏng, trong đó mỗi hệ thống đầu vào được xem như một module hoạt động độc lập. Do mục tiêu khử trôi trên kết quả VIO có thể đạt được bằng cách chỉ sử dụng ngõ ra không trôi của GPS, việc can thiệp vào giải thuật bên trong của GPS là chưa thực sự cần thiết. Hơn nữa, vì bản thân hệ VIO đã ước lượng bias của IMU bằng tích hợp chặt, ta có thể bỏ qua việc ước lượng thông số nội IMU trong bước này.
Giải thuật ước lượng được chọn là bộ lọc Kalman mở rộng - EKF nhờ hoạt động hiệu quả và dùng ít tài nguyên, cho phép chương trình chạy trong thời gian thực. Việc cập nhật VIO và GPS diễn ra bất đồng bộ theo tần số lấy mẫu riêng của mỗi hệ thống, với giá trị dự đoán VIO được nội suy đến thời điểm cập nhật GPS để giảm thiểu sai số do độ trễ giữa hai hệ định vị. Mục tiêu của đề tài Đề tài có những nhiệm vụ như sau: Xây dựng thuật toán định vị tích hợp chặt thị giác lập thể và quán tính sử dụng phương pháp tối ưu hóa phi tuyến. Xây dựng thuật toán định vị tích hợp hệ thống thị giác-quán tính với GPS dựa trên bộ lọc Kalman mở rộng.
Xây dựng hệ thống phần cứng kết hợp Stereo Camera, IMU, GPS; phần mềm xử lý thuật toán VIO/GPS trong thời gian thực trên nền tảng ROS. Thu thập dữ liệu, thử nghiệm, đánh giá chất lượng hệ định vị trong nhiều điều kiện và môi trường khác nhau. 4 LVThS – Hệ thống định vị tích hợp thị giác lập thể, quán tính và GPS – Trần Hoàng Khôi Nguyên Mục tiêu đầu ra của đề tài: Sai số tương đối của giải thuật VIO trong môi trường tĩnh là 1% cho vị trí và 0. Sai số tuyệt đối của giải thuật tích hợp VIO/GPS trong môi trường tĩnh dưới 1m cho vị trí và dưới 2 cho góc xoay.
Tốc độ cập nhật tối thiểu 100Hz. Môi trường tĩnh đề cập ở đây không nhất thiết phải tĩnh tuyệt đối, tuy nhiên thành phần tĩnh cần lớn hơn 50% diện tích môi trường để thuật toán hoạt động đúng. Bố cục của luận văn Trong chương 2, học viên trình bày cơ sở lý thuyết về phương pháp định vị dùng thị giác lập thể và giải thuật tối ưu hóa phi tuyến. Chương 3 trình bày phương pháp hiệu chuẩn IMU/Camera và triển khai giải thuật tích hợp chặt dùng tối ưu hóa phi tuyến.
Chương 4 trình bày phương pháp căn chỉnh hệ VIO/GPS và triển khai thuật toán tích hợp lỏng dựa trên bộ lọc Kalman mở rộng. Chương 5 mô tả quá trình thực hiện hệ thống và kết quả thử nghiệm trên các tập dữ liệu khác nhau. Cuối cùng, chương 6 đưa ra kết luận và hướng phát triển của đề tài. 5 LVThS – Hệ thống định vị tích hợp thị giác lập thể, quán tính và GPS – Trần Hoàng Khôi Nguyên CHƯƠNG 2.
HỆ THỐNG ĐỊNH VỊ THỊ GIÁC LẬP THỂ 2. Tổng quan hệ thống định vị thị giác lập thể Định vị thị giác (visual odometry - VO) là phương pháp ước lượng chuyển động của robot bằng cách quan sát sự thay đổi của các điểm đặc trưng (keypoint) trong môi trên ảnh chụp từ camera, giả sử rằng môi trường là cố định. Hệ thống định vị thị giác lập thể trong đề tài được thực hiện theo 6 giai đoạn như sau: Stereo Keypoint Keypoint Triangulation Image Detection Matching Robot Outlier Pose Marginalization Optimization Rejection Hình 2. Sơ đồ tổng quan hệ thống định vị dùng thị giác lập thể Keypoint detection and description: phát hiện và mô tả các điểm đặc trưng (keypoint) trong ảnh chụp từ camera.
Đây là một kĩ thuật thiết yếu trong xử lý ảnh để phát hiện những điểm ảnh nổi bật và có khả năng lặp lại dưới các góc chụp khác nhau, ví dụ như các góc, cạnh, đốm,… Mỗi điểm đặc trưng được mô tả theo mối tương quan của các pixel xung quanh nó, nhằm tạo ra một tiêu chuẩn để phân biệt với những điểm đặc trưng khác. Theo đó, đề tài dùng bộ phát hiện góc Harris [17] và thuật toán mô tả đặc trưng BRISK [18] để thực hiện giai đoạn này. BRISK cho phép tính toán nhanh hơn các thuật toán trước đây như SIFT và SURF, cũng như đảm bảo độ chính xác lặp lại cao. Keypoint matching: bắt cặp giữa những điểm đặc trưng có mô tả tương đồng nhau giữa các ảnh.
Quá trình matching đi qua hai bước: matching 3D-2D và matching 2D-2D.