Um histograma de uma imagem digital em tons de cinza é uma função discreta \( h(r_k) = n_k \), onde \(r_k\) é o nível de cinza e \(n_k\) é o número de ocorrências na imagem deste tom. Em meus histogramas, tomarei ele normalizado, isto é, os valores estarão no intervalo \([0,1]\). Então, podemos tomar a frequência como uma probabilidade aproximada de ocorrência. A partir dessa informação, algumas conclusões podem ser tiradas, como, por exemplo: a imagem é mais clara ou mais escura, a imagem tem contraste alto ou baixo, etc. O histograma também permite a visualização da divisão de uma imagem em determinadas partes. Em meus histogramas, mostrarei a média ponderada desse histograma, a fim de ter uma noção de como é o comportamento médio das cores da minha imagem.
Observe que na primeira imagem, a coloração de tons mais escuros é predominante, o que faz com que os componentes do histograma estejam mais concentrados à esquerda. Como o contraste também é baixo, os tons tendem a se concentrar (desvio padrão baixo). Enquanto na segunda, os tons são mais distríbuidos. Desta forma, a média aproxima-se do valor médio de uma distribuição uniforme. O contraste também é maior nessa imagem, devido a essa distribuição.
Considere essas imagens de duas células B, obtidas pelo método de Transmission Eletronic Microscopic (TEM). A primeira imagem apresenta uma configuração mais distribuída entre os tons de cinza, enquanto a segunda apresenta uma concentração de brancos, como visto no histograma, e uma parte totalmente preta, provavelmente devido a algum problema de obtenção da imagem. Nesse sentido, fica claro o interesse de fazer uma equalização de histograma , para posteriores análises de dados. A ideia de uma equalização é espalhar os tons por um espectro maior, aumentando contraste e a diferença de percepção.
Seja \(r\) o nível de cinza de um determinado pixel. Por enquanto, utilizemos o fato de que \(0\leq r \leq 1\), para fins explicativos. Assim, focamos nossa atenção em transformações do tipo \(s = T(r)\), que satisfazem a condição de ser monótona crescente no intervalo (injetividade!) especificado acima e \(0 \leq T(r) \leq 1\). Também é interessante que exista inversa para essa transformação. Note que a monotocidade irá garantir que as cores mais escuras continuem dessa maneira, não abrindo precedentes para inversões de cores não desejadas na análise, isto é, tons mais escuros não se tornarão mais claros após uma determinada transformação. Porém, outros objetivos podem existir nesse sentido. Note que estamos tratando essa transformação como contínua, não discreta. Desta maneira, vejamos o nível de cinza de um pixel como uma variável aleatória no intervalo \([0,1]\). Seja \(p_r(r)\) a função densidade de probabilidade de \(r\). Como \(s = T(r)\), uma propriedade da probabilidade diz que \(p_s(s) = p_r(r)\cdot |\frac{dr}{ds}|\).
Uma transformação com bastante importância particular no processamento de imagens tem a forma \(s = T(r) = \int_0^r p_r(w) dw \). Nesse caso, a distribuição de \(s\) será uma uniforme no intervalo. Agora, para o problema em questão, como estamos tratando de valores discretos, tomaremos \(s_k = T(r_k) = \sum_{j=0}^k p_r(r_j) \), onde \(p_r(r_j) = \frac{n_j}{n} \) e \(k = 0,1,2,...255\).
Então, a imagem processada é obtida através do mapeamento de cada pixel com seu pixel correspondente. A transformação é chamada de equalização de histograma. Essa equalização espalha para o espectro completo da escala de cinza, como desejado anteriormente.