Đối với một số thuật toán xây dựng lại khối lượng mà tôi đang làm việc, tôi cần phát hiện một số mẫu hình tròn tùy ý trong dữ liệu điểm 3d (đến từ thiết bị LIDAR). Các mô hình có thể được định hướng tùy ý trong không gian, và được giả định là nằm (mặc dù không hoàn hảo) trong các mặt phẳng 2d mỏng. Dưới đây là một ví dụ với hai vòng tròn trong cùng một mặt phẳng (mặc dù hãy nhớ rằng đây là không gian 3d):
Tôi đã thử nhiều cách tiếp cận .. cách đơn giản nhất (nhưng cách tốt nhất cho đến nay) là phân cụm dựa trên các tập hợp khác nhau của biểu đồ lân cận gần nhất. Điều này hoạt động hợp lý tốt khi các mô hình cách xa nhau, nhưng ít hơn với các vòng tròn như trong ví dụ, thực sự gần nhau.
Tôi đã thử phương tiện K, nhưng nó không hoạt động tốt: Tôi nghi ngờ cách sắp xếp điểm tròn có thể không phù hợp với nó. Thêm vào đó tôi có thêm một vấn đề là không biết trước giá trị của K.
Tôi đã thử các cách tiếp cận phức tạp hơn, dựa trên việc phát hiện các chu kỳ trong biểu đồ lân cận gần nhất, nhưng những gì tôi nhận được là quá mong manh hoặc tốn kém về mặt tính toán.
Tôi cũng đã đọc về rất nhiều chủ đề liên quan (Hough Transform, v.v.) nhưng dường như không có gì để áp dụng hoàn hảo trong bối cảnh cụ thể này. Bất kỳ ý tưởng hoặc cảm hứng sẽ được đánh giá cao.