Professional Documents
Culture Documents
Histograma: Definicin
y El histograma de una imagen f es una grfica que representa los
niveles de intensidad del color de f con respecto al nmero de
pxeles presentes en f con cada intensidad de color
Definicin formal
y Una imagen de dimensin N x M se define como
f: N x M Q x Q
donde Q = {0, , q-1} para una imagen con q niveles de
cuantizacin
y Un histograma hf de una imagen f se define como:
hf: Q NxM
Histograma Normalizado
y Para evitar que los valores de un histograma sean muy dispares, se
puede normalizar dicho histograma
Histogramas en Matlab
y Para visualizar el histograma de una imagen, se usa:
I = imread('imagen1.bmp');
[nk, rk] = imhist(I);
bar(rk, nk, 1);
Histogramas en Matlab
y Para visualizar el histograma normalizado, se usa:
I = imread('imagen1.bmp');
[nk, rk] = imhist(I);
size = sum(nk(:,1));
nk1 = nk / size;
bar(rk, nk1, 1);
Histogramas en Matlab
y Operaciones comunes con imgenes:
y Nmero de pxeles que tiene el nivel de imagen x: nk(x,1),
donde nk es el vector de frecuencias que reporta imhist
y Numero total de pxeles en la imagen: sum(nk(:,1)), donde
nk es la frecuencia de cada valor de pxel en la imagen
Ecualizacin de un Histograma
y Mtodo que se utiliza para lograr una distribucin ms uniforme
entre el nmero de pxeles asociado a cada nivel de intensidad
y Para ecualizar un histograma, se utiliza la siguiente frmula:
1 k
mk =
nj
size j =1
k toma valores en el intervalo [0 q-1]
y Basados en la ecuacin anterior, el nivel de intensidad rk se sustituye
por:
y Sk = mk * q (q es el nmero de intensidades asociado a la imgen)
Ecualizacin de un Histograma
Ecualizacin de un Histograma
I = imread('imagen1.bmp');
nk1 = imhist(I);
rk1 = nk1./numel(I);
suma = cumsum(rk1);
rk2 = suma.*256;
bar(rk2, nk1, 1);