Medindo o contraste de uma imagem


7

Para um projeto, quero medir o contraste de uma imagem global.

Quero comparar imagens diferentes para obter a imagem com o melhor contraste. Eu sei sobre o contraste de Weber, mas preciso de um valor de contraste normalizado (no intervalo entre 0-1 ou outro).

Existe um método simples para fazer isso no openCV?


2
Você pode esclarecer o que você quer dizer com imagem "global"?
Jsca #

11
A imagem inteira
501 - não foi implementada em

11
mhnm pensei laplace é calcular a nitidez.
501 - não implementado

11
Eu já vi usar Laplace no contexto de "contraste local". Existem muitas definições. Depende muito da sua aplicação. Por exemplo, você pode medir apenas o contraste de cores de cada pixel (distância do cinza) ou medir as diferenças nos pixels vizinhos, fazer algumas medições no histograma ou fazer o contraste como diferença entre o ponto mais escuro e o mais claro da imagem.
Libor

2
O desvio padrão dos valores de pixel é uma boa métrica.
30512 Andrey Rubshtein

Respostas:


6

Uma maneira simples de quantificar o contrato em que consigo pensar é através do uso do histograma de imagem. A seguir, minha sugestão

  1. Calcular o histograma da imagem
  2. Das contagens computar entropia

Se você quiser experimentar, pode usar a função embutida do matlab http://www.mathworks.ch/ch/help/images/ref/entropy.html

Você pode usar o valor da entropia do histograma como uma medida do contrato.


2

Uma maneira simples de calcular o contraste é calcular o desvio padrão das intensidades de pixel da imagem em cinza.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.