2012-11-15 37 views
7

Câu hỏi trước đây là "Cách chọn hình ảnh có độ tương phản tốt nhất trong OpenCV" nhưng theo gợi ý của @ Rook, tôi đang thay đổi nó.Cách đo tương phản trong OpenCV + Visual C++

Tôi sẽ sử dụng OpenCV + Visual Studio 2010 trên dự án của mình. Tôi chỉ muốn biết OpenCV có thể giúp tôi dễ dàng hơn thế nào. Tôi đã trích xuất khoảng một nghìn khung hình từ video và tôi cần tìm hiểu xem video nào có độ tương phản tốt nhất. Tốt nhất, tôi nghĩ chất lượng giữa độ tương phản cao nhất và thấp nhất.

Tôi đã tìm kiếm trên web các mã tham chiếu nhưng cho đến nay, tôi chưa tìm thấy mã.

CẬP NHẬT: Về cơ bản, tôi cần đo độ tương phản và so sánh các giá trị giữa các hình ảnh. Nhân tiện, đây là một đoạn video về một quan sát sao Hỏa qua kính viễn vọng và tôi sẽ sử dụng các khung hình được tách ra từ nó.

+2

Cho đến khi bạn có thể xác định số lượng những gì "tương phản tốt nhất" thực sự có nghĩa là, không có cách nào để bạn có thể làm cho lựa chọn này. _ "chất lượng giữa độ tương phản cao nhất và thấp nhất." _ không có ý nghĩa với tôi. – Rook

+0

Tôi nghĩ từ đó sẽ là 'midpoint (?)' Giữa giá trị cao nhất và thấp nhất. Cảm ơn – Masochist

+1

Vì vậy, câu hỏi của bạn thực sự là "làm thế nào tôi có thể tính toán độ tương phản của hình ảnh?" – Rook

Trả lời

4

Entropy của hình ảnh được sử dụng làm thước đo độ tương phản. Xem này code.

Entropy là giá trị vô hướng, phép đo thống kê ngẫu nhiên có thể được sử dụng để mô tả kết cấu của hình ảnh đầu vào. Entropy được định nghĩa là

-sum(p.*log2(p)) 

trong đó p chứa số lượng biểu đồ.

- Matlab documentation

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