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.

imnoise

Añadir ruido a la imagen

Descripción

J = imnoise(I,'gaussian') añade ruido blanco Gaussiano de media cero con varianza de 0,01 a imagen en escala de grises.I

Opcionalmente, puede agregar ruido usando una GPU (requiere).Parallel Computing Toolbox™ Para obtener más información, consulte.Procesamiento de imágenes en una GPU

J = imnoise(I,'gaussian',m) agrega ruido blanco Gaussiano con media y varianza de 0,01.m

J = imnoise(I,'gaussian',m,var_gauss) agrega ruido blanco Gaussiano con media y varianza.mvar_gauss

J = imnoise(I,'localvar',var_local) agrega un ruido blanco Gaussiano de media cero de varianza local.var_local

J = imnoise(I,'localvar',intensity_map,var_local) añade ruido blanco Gaussiano de media cero. La varianza local del ruido, es una función de los valores de intensidad de la imagen.var_localI El vector especifica la correlación del valor de intensidad de la imagen con la varianza de ruido.intensity_map

J = imnoise(I,'poisson') genera ruido de Poisson a partir de los datos en lugar de añadir ruido artificial a los datos. Consulte para obtener más información.Algoritmos

J = imnoise(I,'salt & pepper') agrega ruido de sal y pimienta, con una densidad de ruido predeterminada de 0,05. Esto afecta aproximadamente al 5% de los píxeles.

ejemplo

J = imnoise(I,'salt & pepper',d) agrega ruido de sal y pimienta, donde está la densidad de ruido.d Esto afecta aproximadamente a los píxeles.d*numel(I)

J = imnoise(I,'speckle') añade ruido multiplicativo utilizando la ecuación, donde se distribuye uniformemente ruido aleatorio con la media 0 y la varianza 0,05.J = I+n*In

J = imnoise(I,'speckle',var_speckle) añade ruido multiplicativo con varianza.var_speckle

Ejemplos

contraer todo

Lea una imagen en escala de grises y mostrarla.

I = imread('eight.tif'); imshow(I)

Añadir el ruido de sal y pimienta, con una densidad de ruido de 0,02, a la imagen. Mostrar el resultado.

J = imnoise(I,'salt & pepper',0.02); imshow(J)

Argumentos de entrada

contraer todo

Imagen en escala de grises, especificada como una matriz numérica. Si tiene más de dos dimensiones, la imagen se tratará como una imagen multidimensional en escala de grises y no como una imagen RGB.I

espera valores de píxel de tipo de datos y estar en el intervalo [0, 1].imnoisedoublesingle Puede utilizar la función para ajustar los valores de píxel al intervalo esperado.rescale Si la imagen es de tipo o con valores fuera del intervalo [0, 1], a continuación, los clips de entrada los valores de píxel en el intervalo [0,1] antes de agregar ruido.doublesingleimnoise

Nota

Para el ruido de Poisson, no se permiten imágenes de tipo de datos.int16

Tipos de datos: single | double | int16 | uint8 | uint16

Media de ruido Gaussiano, especificada como un escalar numérico.

Varianza de ruido Gaussiano, especificada como un escalar numérico.

Varianza local de ruido Gaussiano, especificada como una de las siguientes:

  • Una matriz numérica del mismo tamaño que.I

  • Un vector numérico de la misma longitud de.intensity_map

Valores de intensidad que se asignan a la varianza de ruido Gaussiano, especificado como un vector numérico. Los valores se normalizan en el intervalo [0,1].

Puede trazar la relación funcional entre la varianza de ruido y la intensidad de la imagen mediante el comando.var_localplot(intensity_map,var_local)

Densidad de ruido para el ruido de sal y pimienta, especificado como un escalar numérico. El ruido se aplica a aproximadamente píxeles.d*numel(I)

Varianza del ruido multiplicativo, especificado como un escalar numérico.

Argumentos de salida

contraer todo

Imagen ruidosa, devuelta como una matriz numérica del mismo tipo de datos que la imagen de entrada.I Para imágenes de tipo de datos o, los clips de función emiten valores de píxel al intervalo [0,1] después de agregar ruido.doublesingleimnoise

Algoritmos

  • Los parámetros de media y varianza para, y los tipos de ruido siempre se especifican como si la imagen fuera de clase en el rango [0,1].'gaussian''localvar''speckle'double Si la imagen de entrada es una clase diferente, la función convierte la imagen a, agrega ruido según el tipo y los parámetros especificados, recorta los valores de píxel al intervalo [0,1] y, a continuación, convierte la imagen ruidosa de nuevo en la misma clase que la entrada.imnoisedouble

  • La distribución de Poisson depende del tipo de datos de la imagen de entrada:I

    • Si es de doble precisión, los valores de los píxeles de entrada se interpretan como medios de las distribuciones de Poisson ampliadas.I1e12 Por ejemplo, si un píxel de entrada tiene el valor, el píxel de salida correspondiente se generará a partir de una distribución de Poisson con una media de 5,5 y, a continuación, se reducirá por.5.5e-121e12

    • Si es una precisión única, el factor de escala utilizado es.I1e6

    • Si es o, a continuación, los valores de píxel de entrada se utilizan directamente sin escala.Iuint8uint16 Por ejemplo, si un píxel de una entrada tiene el valor 10, el píxel de salida correspondiente se generará a partir de una distribución de Poisson con la media 10.uint8

  • Para agregar ruido con densidad a una imagen, primero asigna a cada píxel un valor de probabilidad aleatorio de una distribución uniforme estándar en el intervalo abierto (0,1).'salt & pepper'dimnoise

    • Para los píxeles con valor de probabilidad en el rango (0,/2), el valor de píxel se establece en.d0 El número de píxeles que se establecen es aproximadamente.0d*numel(I)/2

    • Para los píxeles con valor de probabilidad en el intervalo [/2,), el valor de píxel se establece en el valor máximo del tipo de datos de imagen.dd El número de píxeles que se establece en el valor máximo es aproximadamente.d*numel(I)/2

    • Para los píxeles con valor de probabilidad en el intervalo [, 1), el valor de píxel no se modifica.d

Capacidades ampliadas

Consulte también

|

Introducido antes de R2006a