Como medir a qualidade (ou diferença de qualidade) de diferentes imagens?

8

Gostaria de medir a qualidade de uma imagem colorida, possivelmente como uma diferença para outra imagem, mas, se possível, por conta própria também.

Essa pergunta vem do fato de termos uma aplicação de visão e melhoramos as condições de iluminação, calbirações e condições similares do ambiente. Queremos medir a melhoria da qualidade da imagem, como:

  • Quantidade de detalhes
  • Contraste
  • Outras coisas que descrevem a qualidade de uma imagem ou a quantidade de informações em uma imagem

Você tem idéias para isso? Talvez comparações de histograma ou uma medida de distância avançada no histograma? Eu adoraria ouvir algumas boas idéias!

EDITAR:

Obviamente, os resultados da aplicação da visão são uma medida da qualidade das imagens. Mas:

  • não pretende ser uma medida da qualidade, é uma medida de outra coisa
  • existem mais parâmetros que influenciam os resultados da aplicação (por exemplo, a própria imagem); portanto, é apenas uma medida aproximada da qualidade da imagem

Eu poderia usar a avaliação humana, mas realmente quero uma medida objetiva, principalmente porque os olhos humanos não são objetivos (nossa mente faz truques, o monitor em que assistimos influencia a imagem etc.).

EDIÇÃO FINAL:

Após uma discussão sobre qual é a qualidade de uma imagem, deixarei essa pergunta como está. Minhas próprias idéias (e dos meus colegas de trabalho) são as seguintes:

  • O alcance dos canais RGB (é usando todas as cores possíveis)
  • A média da amplitude de Sobel (a quantidade de detalhes ou uma medida aproximada de foco, também veja esta pergunta sobre detalhes )
  • A quantidade de pixels cortados ou 0 (nenhuma informação nesses pixels)
  • Também a média dos canais RGB e YCbCr (após a conversão), para poder ver se a cor média mudou (pode levar à investigação da luz de outras fontes ou depois de alterar a nossa própria iluminação)

Ao combinar essas estatísticas, podemos ter uma impressão da qualidade de um ponto de vista mais objetivo, em vez de apenas olhar as imagens. Também leva a indicadores de onde as alterações podem vir.

Geerten
fonte
Eu gostaria que você desse mais clareza - teria sido uma boa discussão pela frente.
Dipan Mehta 17/02
Espero que minha edição dê mais clareza.
Geerten

Respostas:

3

Tudo depende do que você quer dizer com "qualidade". Se a qualidade visual é percebida pelas pessoas, a melhor coisa a fazer é pedir que várias pessoas comparem pares de imagens para ver quais elas gostam mais.

Como você mencionou um aplicativo de visão, ele deve ter algumas métricas de desempenho para o que quer que faça, o que seria sua medida de qualidade.

Se por qualidade você quer dizer o quão embaçada ou barulhenta a imagem é, então você pode calcular a transformação de Fourier para ver se a imagem contém componentes de alta frequência para ver quão embaçada ela é ou calcular sua entropia para ver quão barulhenta é.

Dima
fonte
Abordei seus pontos na minha edição na pergunta, examinarei a transformação e entropia de Fourier se elas descreverem a diferença.
Geerten
@Geerten, nesse caso, o que qualidade significa depende do que seu aplicativo está tentando fazer. E até que você nos diga o que está tentando fazer, é difícil ajudá-lo.
Dima
mas não estou procurando medidas específicas, estou procurando medidas genéricas. Apenas uma etapa da avaliação das imagens antes de usá-las no aplicativo de visão.
Geerten
Entendi, você deseja saber o quão bem o seu algoritmo funciona em imagens "boas" em comparação com imagens "ruins", certo? O problema é que, neste caso, "bom" e "ruim" são de fato relativos.
Dima
Isso seria interessante também, mas o que mais desejo é o efeito de alterar as condições (como iluminação, calibração da câmera etc.) na qualidade das imagens. Então, mudo uma condição e quero medir se aumenta a qualidade da imagem.
Geerten
1

Existem métricas muito específicas para a medição da qualidade que são usadas para compactação de imagem / vídeo. No entanto, acho que você não está procurando isso aqui.

A qualidade aqui se refere à capacidade de aplicar algoritmos de visão e, portanto, à capacidade de extrair os principais recursos da maneira correta. Se for esse o caso, tudo depende de quais recursos você está extraindo.

Diga, use algo mais sobre seu aplicativo.

Dipan Mehta
fonte
Veja a minha edição para mais informações, e a diferença é sutil, de modo a extração de chave apresenta obras para ambas as imagens, portanto, não é um bom medida de uso ..
Geerten
Algum motivo pelo qual você excluiu sua resposta anterior? Foi bastante exaustivo e informativo. Eu adoraria vê-lo de volta aqui.
Phonon
Desejo que alguém faça essa pergunta e colarei essa resposta lá. Acabei de compilar todos os aspectos da avaliação da qualidade - mas então percebi que o OP estava perguntando sobre a qualidade específica da Vision, que esta resposta não estava direcionada. Pode ser que você deva fazer perguntas sobre a medição da qualidade de imagem / vídeo. Vou postar esta resposta. (Eu quase passei uma noite inteira compilar minhas referências passadas - mas só percebi isso está fora da tangente!)
Dipan Mehta