Trong EKF-SLAM, tại sao chúng ta thậm chí cần đo hình khi có cảm biến đáng tin cậy hơn? Ngoài ra, tất cả các thuật toán SLAM đều dựa trên tính năng?


8

Trong cuốn sách SLAM dành cho người giả, tại sao chúng ta thậm chí cần đo hình khi robot sẽ sử dụng dữ liệu được lấy từ máy quét laser chính xác hơn so với đo hình học? Tại sao không chỉ đơn giản là trên máy quét laser và tránh xa hình học? Có sự đóng góp nào của phép đo hình học mà máy quét laser không có? Ngoài ra, tất cả các thuật toán SLAM dựa trên tính năng?


Một câu hỏi tại một thời điểm, xin vui lòng. Nhưng tôi đã cố gắng trả lời cả hai. Bây giờ xin vui lòng không chỉnh sửa câu hỏi để hỏi thêm. Thay vào đó, hãy hỏi trong các câu hỏi riêng biệt. Cảm ơn!
Josh Vander Hook

Câu trả lời:


10

Bạn đang đọc nó quá hẹp.

  • Bạn không "cần" odometery. SLAM chỉ đơn giản là một cách để hợp nhất bất kỳ ước tính cảm biến nào thành một ước tính nhất quán về trạng thái của robot.

  • "Dựa trên tính năng" không nhất thiết có nghĩa là bạn cần phải có các tính năng nhận dạng ở mọi nơi trong môi trường.

  • Hiệu trưởng đầu tiên của phản ứng tổng hợp cảm biến: Hai ước tính tốt hơn một!

Thí dụ

Tôi đã không đọc cuốn sách "cho người giả" nhưng nếu họ không làm ví dụ số sau, tôi sẽ đốt cuốn sách và lấy một cuốn tốt hơn. Và nếu họ làm có ví dụ này, sau đó tôi tự hỏi tại sao bạn không đề cập đến nó!

(bạn có thể theo dõi trong toán học ở đây )

x=0x

  • x=10
  • σl2=.1
  • σo2=.5

Đây là cách robot xử lý SLAM trong môi trường đơn giản này. (lưu ý đây thực sự là nội địa hóa vì chúng tôi không cập nhật vị trí của bức tường).

  • Robot cố gắng di chuyển một đơn vị sang phải.
  • x=.9
  • 8.8

Câu hỏi : Bạn đang ở đâu?

  • x=1.2

  • .9

  • Có lẽ bạn có thể trung bình hai? Chà, điều đó tốt hơn, nhưng nó dễ bị ngoại lệ.

  • Các nguyên tắc sáng bóng của phản ứng tổng hợp cảm biến cho bạn biết cách trả lời câu hỏi như sau:

Ước tính bình phương trung bình tối thiểu của bạn về vị trí robot được đưa ra bởi:

xmmse=σl2σo2+σl2(.9)+σo2σo2+σl2(1.2)
xmmse=.1.6(.9)+.5.6(1.2)
xmmse=1.15

... Trừ khi tôi làm hỏng đại số ở đâu đó. Mọi người bản địa hóa máy bay bằng toán học không phức tạp hơn thế nhiều.


6

Nếu bạn đọc về các nguyên tắc của phản ứng tổng hợp cảm biến, bạn sẽ luôn có được ước tính tốt hơn khi bạn kết hợp dữ liệu theo đúng cách. Ví dụ: nếu bạn đang đo nhiệt độ trong phòng có 3 cảm biến nhiệt độ khác nhau, không lý tưởng khi chỉ sử dụng cảm biến tốt nhất. Trường hợp lý tưởng sẽ là tạo ra sự kết hợp có trọng số của từng cảm biến, trong đó trọng lượng của cảm biến tỷ lệ với một so với phương sai của cảm biến đó. Chưa kể, dữ liệu đo hình là RẤT tốt. Đó là việc khai thác các mốc gây ồn ào và rất có thể sẽ có phương sai cao hơn.

Nếu bạn nghĩ về nó từ một quan điểm cấp cao, bạn cũng cần phải có một bản cập nhật chuyển động dựa trên hình học. Nếu bạn chỉ sử dụng các mốc, thì bạn sẽ có những trường hợp mơ hồ. Lấy ví dụ, trường hợp bạn chỉ xác định một mốc. Bạn sẽ có một khoảng cách z từ robot của bạn đến mốc, nhưng điều này sẽ ánh xạ tới vô số điểm trong một vòng tròn quanh mốc. Nếu bạn xác định các mốc không, thì bạn không thể làm gì được! Bằng cách bao gồm đo hình, chúng ta không còn mơ hồ. Giả sử chúng ta đang định vị trong mặt phẳng 2D (x, y), thì bạn sẽ phải đảm bảo rằng bạn đã đọc được ít nhất 3 cột mốc để định vị vị trí của bạn mà không cần đo hình và bạn không thể đảm bảo điều đó trong môi trường bình thường.

Cuối cùng, một bộ mã hóa có thể được lấy mẫu theo thứ tự 50Hz, trong khi LIDAR chỉ có thể được lấy mẫu ở khoảng 6-7Hz (đừng trích dẫn tôi về các tần số đó). Điều này có nghĩa là bạn có thể cập nhật vị trí hiện tại của mình thường xuyên hơn thông qua đo hình so với bạn có thể đọc từ cảm biến. Điều này thậm chí không tính đến việc bạn mất bao lâu để xử lý việc đọc cảm biến để xác định các mốc!


3

Chỉ cần thêm vào điều này, sử dụng đo hình để ước tính vị trí robot nhanh hơn nhiều so với sử dụng dữ liệu từ máy quét laser. Trong hầu hết các tình huống, dữ liệu từ một máy quét phạm vi được xử lý dưới dạng 2D PointCloud. Điều này có nghĩa là để ước tính vị trí tương đối giữa các vị trí A, B, bạn cần căn chỉnh các PointCloud tương ứng của chúng và tìm tư thế có thể xảy ra nhất của hoạt động căn chỉnh đó. Để làm điều đó, bạn sẽ sử dụng ICP hoặc một thuật toán tương tự, do tính chất lặp của nó là tính toán chuyên sâu.

Mặt khác, bằng cách sử dụng thông tin hình học (ví dụ từ bộ mã hóa bánh xe), bạn chỉ cần thêm vào ước tính hiện tại của tư thế, đó chỉ là tổng của hai hàm mật độ Xác suất (ước tính hiện tại + đọc số đo tăng dần)


-1

Các nguyên tắc EKF đã được giải thích tốt trong các câu trả lời khác.

Tôi muốn thêm rằng bạn có thể thực hiện SLAM mà không cần sử dụng Odometry, tức là chỉ sử dụng LIDAR chẳng hạn.

"Ngoài ra, tất cả các thuật toán SLAM đều dựa trên tính năng?"

Không, không phải tất cả

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.