Phát hiện các đường trong một đám mây điểm


7

Các giải pháp tốt nhất để phát hiện dòng trong một đám mây điểm là gì? So sánh được thực hiện với và giữa Hough Transform , Radon Transform , RANSAC (xem wikipedia) và Brute-Force Search (xem wikipedia).
Cái nào mạnh nhất để chống lại sự phân tán các điểm trong đám mây điểm?
Lưu ý:
1- Câu hỏi là về đám mây điểm 3D không phải hình ảnh.
2- Điểm trong đám mây điểm được phân tán ngẫu nhiên (vị trí hoàn toàn thưa thớt).
3- Không có thông tin về đối tượng (dòng) đang được khám phá về mặt định hướng ưa thích, kích thước, v.v ...
4- Cần phải xem xét dung sai xung quanh dòng ứng cử viên.
Cập nhật:
Theo thí nghiệm của tôi: RANSAC có thể dễ dàng bỏ lỡ một số dòng. Nó là tốt để phát hiện nhanh chóng các cạnh tuy nhiên sự phức tạp của phân tán điểm có thể tạo ra đầu ra không mong muốn. Hough và Radon rất giống nhau và tôi đã không có cơ hội thử dùng đám mây điểm 3D tuy nhiên chúng hoạt động tốt trên các trường hợp 2D. Có một khó khăn trong việc trích xuất các phân đoạn của dòng tìm thấy. BFS đơn giản là không thực tế đối với tập dữ liệu lớn.


Radon và Hough sẽ hoạt động trên dữ liệu thể tích, không phải các đám mây điểm, theo như tôi biết. Các ý tưởng có thể được điều chỉnh theo các đám mây điểm, nhưng tôi không chắc liệu chúng có còn cùng tên hay không.
endolith

Tiêu chí của bạn là gì? Lực lượng vũ phu chắc chắn sẽ tìm thấy một dòng nếu nó ở đó, trong khi RANSAC chỉ "có thể" tìm thấy dòng.
endolith

@endolith '... thể tích ...': Một điểm tốt. Tuy nhiên, tôi nghĩ rằng có thể pixelate (ánh xạ) các điểm 3D thành âm lượng 3D (ma trận 3D) với dung sai chấp nhận được liên quan đến độ phân giải của ma trận (nghĩa là số lượng ô). '... Brute-Force ...' hoàn toàn chính xác nhưng không thực tế về mặt tính toán cho tập hợp điểm lớn. "RANSAC" như bạn đã đề cập có thể bỏ lỡ một số ứng cử viên. Ý tưởng là để thảo luận và tìm ra một số gợi ý để giải quyết những vấn đề đó: chi phí tính toán và không chính xác.
Nhà phát triển

Chuyển đổi đám mây điểm thành ma trận thể tích có thể là một bước đi sai hướng. :) Tốt hơn để sử dụng các thuật toán hoạt động trên đám mây điểm và khoảng cách Euclide giữa các điểm.
endolith

@endolith Bạn có thể đúng. Chỉ cần đề cập rằng những trải nghiệm cá nhân của tôi với Hough Transform trong các trường hợp 2D là rất thỏa đáng và nó thực sự nhanh như ngay lập tức! Tôi đang nghĩ đến việc hưởng lợi một phương pháp nhiều giai đoạn để đạt được độ chính xác và tốc độ cùng một lúc. Hy vọng ý kiến ​​và câu trả lời trong bài viết này có thể cung cấp một số hướng.
Nhà phát triển

Câu trả lời:


1

Nó thực sự phụ thuộc, làm thế nào bạn sẽ đo lường chất lượng của các giải pháp? yêu cầu của bạn, thời gian thực, độ chính xác cao là gì? đám mây điểm lớn đến mức nào?

Bạn đã đề cập các phương pháp dựa trên xử lý tín hiệu hợp lệ nhưng lạ mắt để giải quyết vấn đề.

Hãy để tôi thêm ba phương pháp mà bạn chưa đề cập là cổ điển và có tính thống kê cao hơn: bình phương nhỏ nhất, hồi quy sườn và lasso.


1
Đây là tất cả các phương pháp tối ưu hóa, nhưng mẹo là tìm một chức năng tốt để tối ưu hóa. Chức năng bạn đề xuất để tối ưu hóa là gì?
Phonon

0

Nếu bạn thực sự lo lắng về các dòng phát hiện, bạn có thể thực hiện một cách tiếp cận đơn giản hóa.

Chiếu đám mây điểm của bạn - lên ít nhất hai bề mặt. Hãy nói rằng chiếu chúng trên mặt phẳng XY và mặt phẳng YZ. Về cơ bản bắt đầu với một khung vẽ trống và chiếu từng điểm dựa trên một số tiêu chí hình học. Vì vậy, bây giờ bạn sẽ có một khung hình 2D hữu hạn là tất cả các điểm trắng nhưng trắng . Bây giờ bạn có thể áp dụng biến đổi hough trên canvas này.

Dựa vào hough, bạn sẽ nhận được dòng (r,θ)(r,ϕ)cho hai mặt phẳng tương ứng. Bước tiếp theo thực sự là liên kết các dòng này để xác định dòng 3D duy nhất trong số này.

Theo như độ chính xác, khi dữ liệu thưa thớt, điểm số của hough (tức là sức mạnh) có thể ít hơn. Tuy nhiên, nó sẽ hoạt động nếu tổng thể tất cả các dòng đều thưa thớt. Đó là một vấn đề khi bạn đang so sánh một dòng rất dài với một dòng ngắn.

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.