2012-06-01 34 views
5

Tôi đang cố gắng thực hiện trộn alpha với hai hình ảnh để ghép ảnh. hình ảnh đầu tiên của tôi là thế này -> enter image description herecách tìm vùng chồng chéo giữa các hình ảnh trong opencv?

đây là hình ảnh thứ hai của tôi -> enter image description here

đây là hình ảnh kết quả của tôi -> enter image description here

Như bạn có thể thấy kết quả là không thích hợp. Tôi nghĩ rằng trước tiên tôi phải tìm khu vực chồng chéo giữa sau đó và sau đó thực hiện trộn alpha trên phần chồng chéo.

Trả lời

4

Trước hết, bạn đã thấy mô-đun "khâu" mới được giới thiệu trong OpenCV 2.3 chưa?

Nó cung cấp một tập hợp các khối xây dựng để khâu đường ống bao gồm pha trộn và "tìm một chồng chéo" (ví dụ: đăng ký) các bước. Đây là tài liệu: http://docs.opencv.org/modules/stitching/doc/stitching.html và ví dụ về ứng dụng ghép: stitching_detailed.cpp

Tôi khuyên bạn nên nghiên cứu mã của mẫu này để hiểu rõ hơn về chi tiết.

Về Phát hiện chồng chéo có một số cách tiếp cận phổ biến trong computer vision:

  • luồng quang
  • mẫu phù hợp với
  • tính năng phù hợp với

Đối với trường hợp của bạn tôi khuyên bạn nên là người cuối cùng - nó hoạt động rất tốt trên các bức ảnh. Và cách tiếp cận này đã được triển khai trong OpenCV - khám phá nguồn OpenCv và xem cách hoạt động của cv::detail::BestOf2NearestMatcher.

+0

"Đăng ký hình ảnh" là một thuật ngữ khác từ thế giới máy tính có thể hữu ích; nó đề cập đến quá trình sắp xếp nhiều hình ảnh trùng lặp. –

+0

Tôi thực sự, thực sự tự hỏi làm thế nào bạn sẽ sử dụng dòng quang ở đây ?! Lưu lượng quang được cho là hoạt động trên một chuỗi hình ảnh ... – CTZStef

2

Tôi nghĩ rằng cách tiếp cận phổ biến nhất là SIFT, tìm một vài điểm chính trong cả hai hình ảnh, sau đó làm cong chúng để có được kết quả của bạn. Xem this

Here là giải thích về SIFT và ảnh toàn cảnh.

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