Phát hiện các vòng tròn (elip) trong đám mây điểm 2D


14

Cho một tập hợp các điểm (2D) có nghĩa là, điểm toán đám mây (PC), câu hỏi là về một robust, accuratecomputing-friendlyphương pháp để tìm vòng tròn (hoặc hình elip trong phiên bản nâng cao).

Ý tưởng trực quan là sử dụng Brute-Force Search trên tất cả các điểm có thể (làm trung tâm) {infinite!} Và radii (một lần nữa là vô hạn!). Điều này là cực kỳ chậm và không hiệu quả.

Như được chứng minh dưới đây, mỗi vòng tròn được trang bị sẽ được xếp hạng dựa trên số điểm ( nn) được định vị trên chu vi vòng tròn trong khoảng cách ngắn hơn ngưỡng ( t). Vì vậy, có derrmột khoảng cách trung bình.

Trong hình elip tiên tiến được quan tâm để được trang bị.

Bất kỳ ý tưởng, bão não, kinh nghiệm, ý kiến? nhập mô tả hình ảnh ở đây


Câu hỏi hay. Chương trình nào bạn đã sử dụng để tạo sơ đồ đó?
Jason R

@JasonR Như mọi khi, Python + MatPlotLib .
Nhà phát triển

Câu trả lời:


14

Ý tưởng tốt nhất chính xác cố gắng giải quyết vấn đề này là Hough Transform .

Về cơ bản, tín hiệu trong không gian chòi sẽ là r, x, ytọa độ. Ở đây r là viết tắt của bán kính và x,ylà viết tắt của trung tâm. Mỗi điểm có thể thuộc về một hoặc nhiều vòng tròn. Vì vậy, trong mặt phẳng Hough đi qua tất cả các vòng tròn có thể có, điểm này có thể thuộc về và chỉ cần thực hiện +1. Đây không phải là một tìm kiếm, chỉ là bộ sưu tập.

Bây giờ, nếu một vòng tròn thực sự tồn tại, rất nhiều điểm sẽ được thêm vào và điểm của số đó r, x, ysẽ cao hơn nhiều so với tất cả các điểm khác. Chọn một điểm như vậy sẽ cho phép bạn chọn đúng vòng tròn.

Đây là một cách làm giấy cổ điển vào năm 1971 (trước khi tôi được sinh ra!) Đã phát minh ra khái niệm này.

  1. SỬ DỤNG CÁC GIAI ĐOẠN HOUGH ĐỂ PHÁT HIỆN DÒNG VÀ HIỆN TẠI TRONG HÌNH ẢNH Bởi: Richard O. Duda, Peter E. Hart Tech báo cáo Trí tuệ nhân tạo Cente tháng 4 năm 1971.

Đối với Hướng dẫn, tôi sẽ đề nghị tham khảo dưới đây:

  1. HIPR2 -Link
  2. Kho chứa Amos
  3. Tham chiếu IDL

Cụ thể để phát hiện vòng tròn, bạn có thể tham khảo điều này dưới đây:

  1. AI Shack
  2. Báo cáo công nghệ từ Chicago Univ.
  3. Bài giảng của Học viện Rochester

Những phương pháp này rất hiệu quả, và rất thân thiện với máy tính.


1
Tôi có thể bảo đảm cho các bài viết về AI Shack, chúng thực sự giúp tìm hiểu những bài toán khắt khe hơn mà bạn sẽ đọc ở nơi khác.
Ivo Flipse

1
Câu trả lời tốt. Tôi đã quen thuộc với Hough Transform (HT). Một trong những tôi đã sử dụng là để phát hiện các dòng. Có một chút khó khăn để xác định phân đoạn dòng. Chúng tôi khuyên bạn nên sử dụng Biến đổi xác suất (PHT). Tôi đã không có ý tưởng rõ ràng về phần mở rộng. Tôi nghĩ rằng nó có thể rất phức tạp đối với các vòng tròn hoặc xuất hiện những khó khăn khác. Về kinh nghiệm của tôi HT là tốt nhưng không hoàn hảo. Đó cũng là mối quan tâm của tôi làm thế nào để mở rộng HT sang 3D. Tôi sẽ cố gắng xem lại các liên kết được cung cấp của bạn. Câu trả lời của bạn là khá tốt để trở thành ứng cử viên như câu trả lời.
Nhà phát triển

AI Shack và Báo cáo công nghệ từ các liên kết Chicaco đã chết
Mehdi
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.