Xây dựng tập dữ liệu ảnh-chiều sâu và cảm biến cho thiết bị bay FPV

Building a depth-image and sensory dataset for FPV drone

Việc tránh chướng ngại vật là một trong những thách thức lớn đối với các hệ thống điều khiển UAV. Đặc biệt, trong các môi trường phức tạp, việc nhận biết và tránh các vật thể động như người, động vật hoặc các drone khác là rất khó khăn. Các phương pháp truyền thống dựa trên cảm biến siêu âm, LiDAR, hoặc radar thường có những hạn chế về kích thước, trọng lượng, và chi phí, gây khó khăn cho việc tích hợp trên các drone nhỏ. Sự kết hợp giữa công nghệ thị giác máy tính (computer vision) và học tăng cường sâu (deep reinforcement learning) đã mở ra những khả năng mới trong việc giải quyết vấn đề này.

TÁC GIẢ

TRƯỜNG ĐÌNH KHA, NGUYỄN HỮU THIỆN

GIẢNG VIÊN HƯỚNG DẪN

NGÀNH

Năm:

Tổng quan đồ án

Với sự phát triển không ngừng của công nghệ, các thiết bị bay không người lái (Unmanned Aerial Vehicle – UAV) như drone đã trở nên phổ biến và có nhiều ứng dụng trong cuộc sống hàng ngày. Tuy nhiên, việc đảm bảo an toàn cho drone và môi trường xung quanh trong quá trình hoạt động là một vấn đề quan trọng.

Việc tránh chướng ngại vật là một trong những thách thức lớn đối với các hệ thống điều khiển UAV. Đặc biệt, trong các môi trường phức tạp, việc nhận biết và tránh các vật thể động như người, động vật hoặc các drone khác là rất khó khăn.

Các phương pháp truyền thống dựa trên cảm biến siêu âm, LiDAR, hoặc radar thường có những hạn chế về kích thước, trọng lượng, và chi phí, gây khó khăn cho việc tích hợp trên các drone nhỏ.

Sự kết hợp giữa công nghệ thị giác máy tính (computer vision) và học tăng cường sâu (deep reinforcement learning) đã mở ra những khả năng mới trong việc giải quyết vấn đề này.

Các mô hình học sâu có thể được huấn luyện để nhận biết và phân tích dữ liệu hình ảnh từ camera của drone, từ đó đưa ra quyết định điều khiển để tránh chướng ngại vật một cách hiệu quả.

Trong đó, depth-image (ảnh chiều sâu) là một loại dữ liệu hình ảnh quan trọng, cung cấp thông tin về khoảng cách từ camera đến các vật thể trong môi trường. Việc sử dụng depth-image làm đầu vào cho các mô hình học sâu có thể cải thiện đáng kể khả năng nhận biết và né tránh chướng ngại vật của drone.

Mục đích đề tài

  • Xây dựng một tập dữ liệu depth-image chất lượng cao và đa dạng, bao gồm các tình huống khác nhau trong môi trường trong nhà và ngoài trời.
  • Nghiên cứu và phát triển mô hình học sâu hiệu quả để nhận biết và né tránh chướng ngại vật trên drone, sử dụng depth-image làm dữ liệu đầu vào.
  • Đánh giá hiệu suất của mô hình trên các tình huống thực tế và so sánh với các phương pháp truyền thống.

Đối tượng nghiên cứu

  • Đối tượng nghiên cứu của đề tài là các thiết bị bay không người lái (UAV), cụ thể là dòng thiết bị bay FPV được trang bị camera tích hợp. Đề tài sẽ tập trung vào việc sử dụng các công nghệ thị giác máy tính và học sâu để phát triển hệ thống nhận diện và tránh va chạm cho UAV.
  • Các công nghệ chuyển đổi hình ảnh, video sang định dạng ảnh chiều sâu, từ đó ứng dụng vào các mô hình nhận biết, tránh né vật cản.

Phạm vi nghiên cứu

Nghiên cứu lý thuyết
o Khảo sát và nghiên cứu các công nghệ liên quan đến thị giác máy tính, học sâu, và ứng dụng của depth maps trong điều khiển UAV.
o Nghiên cứu các phương pháp và thuật toán hiện có trong việc xử lý và phân tích dữ liệu độ sâu.

Xây dựng tập dữ liệu.
o Xây dựng và thu thập tập dữ liệu ảnh-chiều sâu từ các môi trường khác nhau, bao gồm cả trong nhà và ngoài trời.
o Đảm bảo tập dữ liệu đa dạng về điều kiện ánh sáng, thời tiết, và môi trường để mô hình có thể học và hoạt động hiệu quả trong nhiều tình huống khác nhau.

Phát triển mô hình.
o Phát triển mô hình học sâu (Deep Learnng), sau này sẽ dùng để huấn luyện UAV sử dụng tập dữ liệu này nhằm nâng cao khả năng nhận diện và tránh va chạm.
o Kết hợp giữa mô hình học tăng cường và bản đồ độ sâu để tối ưu hóa hiệu suất và độ chính xác của UAV.

Nội dung đồ án

Máy bay không người lái (Unmanned Aerial Vehicle – UAV), hay còn gọi là drone, là một loại phương tiện bay không có người lái trên khoang. Chúng có khả năng hoạt động tự động hoặc được điều khiển từ xa thông qua các hệ thống điều khiển mặt đất. UAV có nhiều hình dạng, kích thước và chức năng khác nhau, từ những chiếc drone nhỏ gọn dùng cho mục đích giải trí đến những chiếc drone lớn hơn được sử dụng trong các hoạt động quân sự và công nghiệp.

Các loại UAV

  • Drone cánh cố định (Fixed-wing drone): Loại drone này có thiết kế giống máy bay truyền thống, có khả năng bay đường dài và mang tải trọng lớn.
  • Drone cánh quạt (Rotary-wing drone): Loại drone này sử dụng nhiều cánh quạt để tạo lực nâng và có khả năng cất cánh và hạ cánh thẳng đứng (vertical takeoff and landing – VTOL).
  • Drone lai (Hybrid drone): Loại drone này kết hợp giữa thiết kế cánh cố định và cánh quạt, mang lại khả năng bay đường dài và khả năng VTOL.

Các thành phần chính của UAV

  • Khung máy bay: Cấu trúc chính của UAV, thường được làm từ vật liệu nhẹ như sợi carbon hoặc nhựa.
  • Hệ thống động cơ: Cung cấp lực đẩy cho UAV, có thể là động cơ điện hoặc động cơ đốt trong.
  • Hệ thống điều khiển bay: Bao gồm các cảm biến, bộ xử lý và phần mềm điều khiển để ổn định và điều hướng UAV.
  • Hệ thống truyền thông: Cho phép UAV giao tiếp với trạm điều khiển mặt đất hoặc các thiết bị khác.
  • Tải trọng (Payload): Các thiết bị được gắn trên UAV để thực hiện các nhiệm vụ cụ thể, như camera, cảm biến, hoặc thiết bị chuyên dụng khác

Ứng dụng của UAV

Quân sự: UAV được sử dụng trong các hoạt động tình báo, giám sát, trinh sát và tấn công.

Nông nghiệp: UAV được sử dụng để khảo sát và phun thuốc trừ sâu trên các cánh đồng rộng lớn.

Giám sát môi trường: UAV được sử dụng để theo dõi các hiện tượng tự nhiên như cháy rừng, lũ lụt và biến đổi khí hậu.

Cứu hộ: UAV được sử dụng để tìm kiếm và cứu hộ những người bị nạn trong các tình huống khẩn cấp.

Giao hàng: UAV được sử dụng để vận chuyển hàng hóa đến các khu vực khó tiếp cận hoặc vùng sâu vùng xa.

Giải trí: UAV được sử dụng để quay phim, chụp ảnh, và thực hiện các hoạt động giải trí khác.

Thách thức: Một trong những thách thức lớn nhất khi triển khai UAV là khả năng tránh va chạm với các chướng ngại vật trong môi trường phức tạp. Việc tránh va chạm không chỉ quan trọng để bảo vệ UAV khỏi hư hỏng mà còn để đảm bảo an toàn cho con người và các vật thể xung quanh. Các hệ thống tránh va chạm hiện nay chủ yếu dựa vào các cảm biến như lidar, radar, và camera để phát hiện và định vị vật cản.

Nghiên cứu lý thuyết

Nội dung 1: Xác định khu vực bay, thu dữ liệu

  • Ở đề tài này, tập trung vào 2 môi trường chính, đó là môi trường trong nhà và môi trường ngoài trời. Với điều kiện bình thường, không có mưa.
  • So sánh 2 môi trường:
image 152

Nội dung 2: Tìm kiếm, triển khai công cụ chuyển hình ảnh, video sang dạng depthimage (ảnh/video theo chiều sâu):

Sau thời gian tìm kiếm nhóm đã đề xuất được vài công cụ sau:

  • Dynamic-video-depth: Là công cụ dùng để chuyển dữ liệu video. Công cụ này trong một khuôn khổ đào tạo thời gian thử nghiệm mới, trong đó CNN dự đoán độ sâu được đào tạo song song với MLP dự đoán luồng cảnh phụ trợ trên toàn bộ video đầu vào. Bằng cách mở rộng đệ quy MLP dự đoán luồng cảnh qua các bước thời gian khác nhau, chúng tôi tính toán cả luồng cảnh tầm ngắn để áp đặt các tiên nghiệm chuyển động mượt mà cục bộ trực tiếp trong 3D và luồng cảnh tầm xa để áp đặt các ràng buộc nhất quán nhiều chế độ xem với các đường cơ sở rộng.
  • GeoWizard: Là công cụ dùng để chuyển dữ liệu dạng ảnh. Cụ thể, công cụ mở rộng mô hình khuếch tán ổn định ban đầu để dự đoán chung độ sâu và pháp tuyến, cho phép trao đổi thông tin lẫn nhau và tính nhất quán cao giữa hai biểu diễn. Quan trọng hơn, tái giả đề xuất một chiến lược đơn giản nhưng hiệu quả để phân tách phân phối dữ liệu phức tạp của nhiều cảnh khác nhau thành các phân phối phụ riêng biệt. Chiến lược đó cho phép mô hình nhận dạng các bố cục cảnh khác nhau, nắm bắt hình học 3D với độ trung thực đáng chú ý. GeoWizard thiết lập chuẩn mực mới cho độ sâu không điểm dừng và dự đoán bình thường, cải thiện đáng kể nhiều ứng dụng hạ nguồn như tái tạo 3D, tạo nội dung 2D và tổng hợp góc nhìn mới.
  • ChronoDepth: Là công cụ chuyển dữ liệu dạng video. Cụ thể, công cụ sử dụng cách thuần hóa Độ khuếch tán video ổn định (SVD) công khai để dự đoán độ sâu đáng tin cậy từ video đầu vào bằng cách sử dụng hỗn hợp các tập dữ liệu độ sâu hình ảnh và độ sâu video. Tác giả xác nhận theo kinh nghiệm rằng một chiến lược đào tạo theo thủ tục — đầu tiên là tối ưu hóa các lớp không gian của SVD và sau đó tối ưu hóa các lớp thời gian trong khi vẫn giữ nguyên các lớp không gian — mang lại kết quả tốt nhất về cả độ chính xác không gian và tính nhất quán về thời gian. Tác giả đã kiểm tra chiến lược cửa sổ trượt để suy luận trên các video dài tùy ý.
  • monodepth: Là công cụ chuyển dữ liệu dạng ảnh. Công cụ đề xuất một mục tiêu đào tạo mới cho phép mạng nơ-ron tích chập học cách thực hiện ước tính độ sâu của một hình ảnh, bất chấp việc không có dữ liệu độ sâu thực tế. Bằng cách khai thác các ràng buộc hình học epipolar. Phương pháp này tạo ra các kết quả tiên tiến để ước tính độ sâu đơn sắc trên tập dữ liệu điều khiển KITTI, thậm chí vượt trội hơn các phương pháp có giám sát đã được đào tạo với độ sâu thực tế. Hiện tại công cụ này đã có phiên bản thứ 2
  • Pix2Depth: Là công cụ chuyển dữ liệu dạng ảnh. Pix2Depth sử dụng một số chiến lược để trích xuất độ sâu từ hình ảnh RGB. Trong tất cả các chiến lược được sử dụng, Pix2Depth được đào tạo trên Bộ dữ liệu độ sâu của NYU. Pix2Depth cũng được đào tạo để dự đoán hình ảnh RGB từ bản đồ độ sâu.

Ở đề tài lần này, được triển khai hai công cụ:
o Công dụng dùng để chuyển dữ liệu dạng ảnh.
o Công dụng dùng để chuyển dữ liệu dạng video.

Phương pháp chọn môi trường để lấy dữ liệu

  • Để giúp cho Drone có thể học một cách tối ưu nhất, thì dữ liệu phải là hình ảnh sắc nét, cần thu trực tiếp từ Drone, các phần không liên quan phải được loại bỏ để không ảnh hưởng tới quá trình học của Drone. Ở đề tài này, chỉ xét tới trường hợp tốt nhất là không có mưa, tuyết hoặc các trường hợp bất lợi cho Drone nên dữ liệu chỉ tập trung quay ở những buổi có ánh sáng tốt, dữ liệu loại bỏ các môi trường gây bất lợi cho sự hoạt động của Drone.
  • Ở môi trường hẹp, cần lấy dữ liệu ở những nơi có ánh sáng tốt, phân bổ đều để khi chuyển sang dạng depth thì hình ảnh có thể chuyển rõ các chi tiết nhỏ, tập trung thu các chi tiết ở gần Drone. Ở môi trường hẹp rất quan trọng đối với Drone vì khác với Flycam, Drone thường xuyên phải hoạt động trong môi trường hẹp có nhiều vật cản, nên cần quay ở nhiều khung cảnh ở môi trường hẹp với nhiều vật thể khác nhau để Drone có thể hoạt tốt ở môi trường này. Trong bộ dữ liệu, môi trường này được quay cả ngoài trời và trong nhà.
  • Ở môi trường rộng, điều khó ở môi trường này là cần phải kiếm một nơi có ảnh sáng cực kì tốt ở gần và đặc biệt là ở xa Drone, để khi chuyển thì ảnh có thể thể hiện được tốt toàn bộ môi trường gần và xa để thể hiện màu tương ứng với khoảng cách. Có thể là ở sân bóng, bãi đất trống, …. Tuy nhiên môi trường này không quá quan trọng so với ở môi trường hẹp vì vậy có thể dữ liệu này sẽ phân bố ít hơn trong bộ dữ liệu nhưng cần phải có để khi học Drone sẽ nhận biết được vật nào ở gần cần được né và vật nào ở xa không cần né. Môi trường được chọn lấy dữ liệu trong bộ dữ liệu

Ở môi trường ngoài trời

Dữ liệu được thu trực tiếp trong khuôn viên của trường Đại học Công nghệ Thông Tin. Được thu ở nhiều không gian khác nhau: Không gian hẹp có nhiều vật cản, không gian rộng ít vật cản để Drone có thể học một cách tối ưu nhất.

Ở môi trường trong nhà

Dữ liệu được tìm kiếm, thu thập từ youtube. Đa số dữ liệu trong nhà đều là trong không gian hẹp, rất khó bay được. Tuy nhiên dữ liệu ở môi trường trong nhà sẽ giúp cho drone học và nhận biết tốt hơn vì môi trường trong nhà là một môi trường vô cùng hẹp có nhiều vật cản và khi chuyển đổi giữa các phòng lượng ánh sáng thu được có thể thay đổi.

image 153

Kết luận

Về dữ liệu dạng ảnh

image 154

Có thể thấy ở môi trường thuận lợi có đầy đủ ánh sáng các chi tiết được tái tạo rất tốt, hiển thị rõ và chi tiết. Các chi tiết không cần thiết đã được xóa tương đối tốt. Tuy nhiên ở môi trường ít ánh sáng thì các chi tiết không được tái tạo quá tốt, nhiều chi tiết bị mất, có thể khi drone lại gần thì các chi tiết sẽ hiển thị rõ hơn, tuy nhiên điều đó khá nguy hiểm nếu như Drone đang bay ở tốc độ cao.

Về dữ liệu dạng video

Video gốc: Tại đây.

Video sau khi đã chuyển: Tại đây.

Có thể nói công cụ ChronoDepth đã chuyển rất tốt khi dữ liệu ở điều kiện tốt, các điều kiện ở ngoài trời, ở điều kiện không quá sáng thì các chi tiết vẫn được thể hiện, tái tạo tốt. Tuy nhiên, giống như công cụ chuyển ảnh GeoWizard, khi hoạt động trong môi trường thiếu ánh sáng thì hình ảnh không được ổn định, gây ra hiện tượng bị nháy khung hình, mất ổn định video.