Làm thế nào để có được các đám mây điểm dày đặc từ máy ảnh âm thanh nổi?


12

Tôi đang cố gắng sử dụng máy ảnh âm thanh nổi để tái tạo cảnh, nhưng tôi thường chỉ có thể thu được các đám mây điểm thưa thớt (tức là hơn một nửa hình ảnh không có bất kỳ thông tin độ sâu phù hợp nào).

Tôi nhận ra rằng các thuật toán xử lý âm thanh nổi dựa vào sự hiện diện của kết cấu trong hình ảnh và có một vài tham số có thể được điều chỉnh để thu được kết quả tốt hơn, chẳng hạn như phạm vi chênh lệch hoặc kích thước cửa sổ tương quan. Mặc dù tôi điều chỉnh các tham số này, tuy nhiên, tôi không bao giờ có thể nhận được kết quả thậm chí gần với những gì có thể thu được bằng cách sử dụng cảm biến hoạt động như Kinect.

Lý do tại sao tôi muốn điều đó là bởi vì rất thường xuyên các đám mây điểm tương ứng với các vùng lân cận không có đủ sự chồng chéo để tôi có được một trận đấu, do đó việc tái cấu trúc bị suy giảm nghiêm trọng.

Câu hỏi của tôi cho các chuyên gia về Tầm nhìn Máy tính ngoài kia là: tôi có thể làm gì để có được các đám mây điểm dày đặc hơn (mà không tự ý sửa đổi môi trường văn phòng của mình)?


Đây là một câu hỏi hay, nhưng tôi nghĩ nhiều chi tiết là cần thiết. Những thuật toán bạn đã cố gắng để tính toán khớp? Bạn có thể làm rõ những gì bạn có nghĩa là "khu vực liền kề" và "chồng chéo?".
Josh Vander Hook

Khi tôi nói "các vùng liền kề", tôi có nghĩa là các phần của không gian vật lý không tương đương nhưng có một giao điểm không trống, mà tôi gọi là "chồng chéo". Đó là, loại vùng sẽ tạo ra các đám mây điểm có thể được khớp và ghép trong thuật toán ICP.
georgebrindeiro

Về thuật toán, tôi vẫn đang sử dụng giải pháp đơn giản nhất có thể tìm thấy: nút ROS stereo_image_proc , áp dụng thuật toán khớp khối toàn cầu có sẵn trong OpenCV. Tôi sẽ rất thích thú khi nghe về các cài đặt tham số mà tôi có thể không truy cập trực tiếp thông qua nút ROS hoặc các thuật toán khác được biết là mang lại kết quả tốt hơn.
georgebrindeiro

Câu trả lời:


4

Bạn có thể cố gắng bỏ qua việc phát hiện điểm nổi bật và chỉ lấy mẫu dày đặc trên hình ảnh (dưới dạng lưới hoặc hơn) và tính toán mô tả tính năng tại mỗi điểm mẫu. Bạn thậm chí có thể đi xa như tính toán một mô tả cho mỗi pixel.

Bạn có thể mất tính bất biến tỷ lệ, nhưng tôi nghĩ rằng điều này sẽ không ảnh hưởng quá nhiều đến tầm nhìn âm thanh nổi vì các vật thể sẽ có cùng tỷ lệ trong cả hai hình ảnh.

Một cách tiếp cận khác có thể là kết hợp nhiều thuật toán phát hiện điểm nổi bật: góc, cạnh, đốm màu, v.v. Sau đó, bạn phải sử dụng cùng một thuật toán mô tả tính năng cho tất cả các điểm được phát hiện, tuy nhiên phần sau này có thể hơi khó thực hiện.


2

Vì vậy, các thuật toán xử lý hình ảnh âm thanh nổi mà tôi đã sử dụng trong quá khứ đã được triển khai từng pixel. Chúng tôi chỉ sử dụng mô hình máy ảnh pinhole và thực hiện một số phép đo lỗi thời với băng đo cho đến khi ước tính độ sâu của chúng tôi khớp với thực tế.

Các phương trình cho một cặp camera song song là:

  • d= =
  • f= =
  • Khung tọa độ:
    • x,y,z= =
    • bạnR,vR
    • bạnL,vL
    • Lưu ý: tọa độ camera có nguồn gốc của chúng tại khung tọa độ giữa các camera (tức là các trục u hướng ngược nhau)

bạnL= =f(x-d)zbạnR= =f(x+d)z

zbạnR= =f(x+d)zbạnL= =f(x-d)

z(bạnR-bạnL)= =2df

z= =2dfbạnR-bạnL

y= =vL*z+dff

x= =bạnL*z+dff

Sử dụng các phương trình này, bạn có thể tính toán một đám mây âm thanh nổi dày đặc. Một cho mỗi pixel trên máy ảnh của bạn.


Cảm ơn cho những nỗ lực, nhưng tôi quen thuộc với mô hình âm thanh nổi. Vấn đề thường chính xác là sự tương ứng giữa các tọa độ (u, v) trong các camera trái và phải. muksie đã đưa ra một số ý tưởng về cách đối phó với điều đó và sylvain.joyeux đã chỉ ra một thư viện âm thanh nổi tuyệt vời dẫn đến kết quả được cải thiện, mặc dù ...
georgebrindeiro

1

Khi bạn nói, "hơn một nửa hình ảnh không có bất kỳ thông tin độ sâu phù hợp", đó là một nửa?

Một vấn đề chúng tôi gặp phải là nếu khoảng cách đến vật thể có cùng độ lớn so với đường cơ sở của bạn (thường được kết hợp với máy ảnh góc rất rộng), thì thuật toán âm thanh nổi dày đặc "tiêu chuẩn" sẽ không hoạt động tốt. Chúng tôi đã sử dụng thư viện libelas và các nhà phát triển của nó nói với chúng tôi rằng đây được gọi là "âm thanh nổi cơ sở lớn" và đây là một vấn đề khác.


Khi tôi nói một nửa hình ảnh không có bất kỳ thông tin độ sâu phù hợp nào, tôi có nghĩa là trong số tất cả các pixel, chỉ có một nửa có sự chênh lệch tính toán (không nhất thiết phải tạo thành một vùng liền kề). Tôi không gặp vấn đề giống như bạn đã đề cập với tỷ lệ khoảng cách giữa các đối tượng / đường cơ sở, nhưng thật thú vị khi nghe về thư viện đó và đây có thể là một vấn đề. Cảm ơn!
georgebrindeiro

1
Dù bằng cách nào, tôi sẽ thử libelas kể từ khi tôi tìm thấy một trình bao bọc ROS cho nó!
georgebrindeiro

0

Có một cái nhìn về các nhà lãnh đạo tiêu chuẩn âm thanh nổi KITTI . Điểm chuẩn này phạt các thuật toán vì không tạo ra sự chênh lệch tại bất kỳ điểm nào, do đó, những người thực hiện hàng đầu tạo ra kết quả dày đặc (ngay cả khi họ không có nhiều cơ sở để ước tính ở nhiều điểm). Một số phương pháp có mã công khai có sẵn được liên kết, bạn có thể thử.

Lưu ý rằng chúng không bị phạt vì mất nhiều thời gian, vì vậy nhiều phương pháp sẽ theo thứ tự số phút cho mỗi hình ảnh để chạy và có thể không phù hợp với ứng dụng của bạn. Đã có nhiều phương pháp dựa trên CNN được giới thiệu mặc dù hoạt động rất tốt, trong khi vẫn chạy trong chưa đầy một giây (trên GPU). Ít nhất một trong số này (CRL) có mã công khai.

Nếu bạn vẫn không có được ước tính độ sâu phù hợp với những điều này trên hình ảnh của mình, thì bạn có thể đang nhìn thấy giới hạn của những gì khả thi từ cách tiếp cận có thể nhìn thấy. Về cơ bản cần phải có kết cấu đặc biệt trong khu vực để có thể khớp điểm tốt hoặc bạn cần một cơ sở để đưa ra một số giả định mạnh mẽ (ví dụ, độ mịn) ở các vùng không có họa tiết.

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.