Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Corrección gamma

mapas a , y a .imadjustlowbottomhightop De forma predeterminada, los valores entre y se asignan linealmente a valores entre y .lowhighbottomtop Por ejemplo, el valor entre y corresponde al valor a medio camino entre y .lowhighbottomtop

puede aceptar un argumento adicional que especifique el factor.imadjustcorrección gamma Dependiendo del valor de gamma, la asignación entre los valores de las imágenes de entrada y salida puede ser no lineal. Por ejemplo, el valor a medio camino entre y podría asignarse a un valor mayor o menor que el valor entre y .lowhighbottomtop

Gamma puede ser cualquier valor entre 0 y infinito. Si gamma es 1 (valor predeterminado), la asignación es lineal. Si gamma es menor que 1, la asignación se pondera hacia valores de salida más altos (más brillantes). Si gamma es mayor que 1, la asignación se pondera hacia valores de salida más bajos (más oscuros).

La figura ilustra esta relación. Las tres curvas de transformación muestran cómo se asignan los valores cuando gamma es menor, igual a y mayor que 1. (En cada gráfico, el eje -representa los valores de intensidad de la imagen de entrada y el eje -representa los valores de intensidad de la imagen de salida.)xy

Gráficas que muestran tres ajustes diferentes de corrección gamma

Especificar gamma al ajustar el contraste

En este ejemplo se muestra cómo especificar gamma al ajustar el contraste con la función imadjust. De forma predeterminada, imadjust utiliza un valor gamma de 1, lo que significa que utiliza una asignación lineal entre los valores de intensidad de la imagen original y la imagen de salida. Un valor gamma menor que 1 pondera la asignación hacia valores de salida más altos (más brillantes). Un valor gamma de más de 1 pondera los valores de salida hacia valores de salida más bajos (más oscuros).

Lea una imagen en el espacio de trabajo. En este ejemplo se lee una imagen indizada y, a continuación, se convierte en una imagen en escala de grises.

[X,map] = imread('forest.tif'); I = ind2gray(X,map);

Ajuste el contraste, especificando un valor gamma inferior a 1 (0,5). Observe que en la llamada a , el ejemplo especifica los intervalos de datos de las imágenes de entrada y salida como matrices vacías.imadjust Cuando se especifica una matriz vacía, se utiliza el intervalo predeterminado de [0,1].imadjust En el ejemplo, ambos rangos se dejan vacíos. Esto significa que la corrección gamma se aplica sin ningún otro ajuste de los datos.

J = imadjust(I,[],[],0.5);

Muestre la imagen original con la imagen ajustada por contraste.

imshowpair(I,J,'montage')