2012-03-11 18 views
12

Tôi dự định viết chương trình để phát hiện và phân biệt các đối tượng nhất định từ nền gần như chắc chắn. Nền trước và nền có độ tương phản cao mà tôi sẽ tăng thêm để hỗ trợ trong quá trình nhận dạng đối tượng. Tôi đang có kế hoạch sử dụng kỹ thuật biến đổi Hough và OpenCV.Cách xác định các đối tượng khác nhau trong một hình ảnh?

Sample image

Như đã thấy trong hình trên, tôi muốn xác định riêng rẽ các đối tượng hình tròn và các đối tượng hình vuông (hoặc bất kỳ hình dạng khác ra khỏi một tập hữu hạn các hình dạng). Vì tôi khá mới để xử lý hình ảnh, tôi không có một ý tưởng cho dù tình hình như vậy cần một mạng thần kinh được thực hiện và từng hình dạng để được học trước. Một kỹ thuật như là khớp mẫu có cho phép tôi thực hiện điều này mà không có mạng nơron không?

Trả lời

9

Nếu bạn có ý định phát hiện hình dạng khác với vòng tròn, (và từ hình ảnh tôi giả định bạn làm), tôi khuyên bạn nên Kết hợp Chamfer để bắt đầu nhanh, đặc biệt khi bạn có độ tương phản tốt.

Những tiền đề cơ bản, giải thích trong thuật ngữ đơn giản, là như sau:

  1. Bạn làm một phát hiện cạnh (ví dụ, cvCanny trong opencv)
  2. Bạn tạo một hình ảnh từ xa, trong đó giá trị của mỗi điểm ảnh có nghĩa là khoảng cách fom cạnh gần nhất.
  3. Bạn lấy các hình dạng bạn muốn phát hiện, xác định các điểm mẫu dọc theo các cạnh của hình dạng và cố gắng khớp các điểm này trên hình ảnh khoảng cách. Về cơ bản, bạn chỉ cần thêm các giá trị trên hình ảnh khoảng cách là "dưới" tọa độ của các điểm mẫu của bạn, cho một vị trí cụ thể của các đối tượng của bạn.
  4. Tìm thuật toán giảm thiểu tốt, hiệu quả của việc này phụ thuộc vào ứng dụng của bạn.

Cách tiếp cận cơ bản này là giải pháp chung, thường hoạt động tốt, nhưng không có tiến bộ hơn, nó rất chậm.

Thông thường bạn nên tách riêng các đối tượng quan tâm trước, vì vậy bạn không phải luôn tìm kiếm toàn bộ hình ảnh. Tìm một số threshold tốt để bạn có thể tách các đối tượng. Bạn vẫn không biết đó là đối tượng nào, nhưng bạn chỉ phải thực hiện việc kết hợp chính nó ở gần với đối tượng này.

Một ý tưởng hay khác là, thay vì thực hiện tìm kiếm đầy đủ trên hình ảnh có độ phân giải cao, trước tiên hãy thực hiện trên độ phân giải rất thấp.Kết quả sẽ không chính xác lắm, nhưng bạn có thể biết các khu vực chung có giá trị để thực hiện tìm kiếm ở độ phân giải cao hơn, vì vậy bạn không lãng phí thời gian của mình ở các khu vực không có gì quan tâm.

Có một số kỹ thuật nâng cao hơn, nhưng bạn vẫn nên xem xét kết hợp chamfer cơ bản, vì nó là cơ sở của một số lượng lớn các kỹ thuật.

Các vấn đề liên quan