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.

denoisingImageDatastore

El almacén de datos de imagen denozante

Descripción

Utilice un objeto para generar lotes de parches de imagen ruidosos y correspondientes parches de ruido a partir de imágenes en un.denoisingImageDatastoreImageDatastore Los parches se utilizan para entrenar una red neuronal profunda que denota ruido.

Este objeto requiere que usted tenga.Deep Learning Toolbox™

Nota

Cuando se utiliza un almacén de datos de imágenes que denotan como fuente de la información de entrenamiento, el almacén agrega ruido aleatorio a los parches de imagen para cada época, de modo que cada época utilice un conjunto de datos ligeramente diferente. El número real de imágenes de entrenamiento en cada época se incrementa en un factor de PatchesPerImage. Los parches de imagen ruidosos y los parches de ruido correspondientes no se almacenan en la memoria.

Creación

Descripción

dnimds = denoisingImageDatastore(imds) crea un almacén de datos de imagen denozante, utilizando imágenes del almacén de datos de imagen.dnimdsimds Para generar parches de imagen ruidosos, el almacén de datos de imagen denozante recorta aleatoriamente imágenes prístinas a partir de entonces agrega ruido blanco Gaussiano de media cero con una desviación estándar de los parches de imagen.imds0.1

ejemplo

dnimds = denoisingImageDatastore(imds,Name,Value) utiliza pares nombre-valor para especificar el tamaño de parche de imagen bidimensional o para establecer el PatchesPerImage, GaussianNoiseLevel, ChannelFormatY DispatchInBackground Propiedades. Puede especificar varios pares nombre-valor. Incluya cada argumento o nombre de propiedad entre comillas.

Por ejemplo, crea un almacén de datos de imágenes que denotan y genera aleatoriamente 40 parches ruidosos de cada imagen en el almacén de datos de imágenes.denoisingImageDatastore(imds,'PatchesPerImage',40)imds

Argumentos de entrada

expandir todo

Imágenes, especificadas como un objeto con etiquetas.ImageDatastorecategorical Solo puede almacenar datos en problemas de clasificación.ImageDatastore

permite la lectura por lotes de archivos de imagen JPG o PNG mediante la captura previa.ImageDatastore Si utiliza una función personalizada para leer las imágenes, la captura previa no ocurre.

Argumentos de par nombre-valor

Especifique pares de argumentos separados por comas opcionales. es el nombre del argumento y es el valor correspondiente. deben aparecer dentro de las cotizaciones.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como.Name1,Value1,...,NameN,ValueN

Ejemplo: crea un almacén de datos de imagen que denota que tiene un tamaño de parche cuadrado de 48 píxeles.denoisingImageDatastore(imds,'patchSize',48)

Tamaño de parche, especificado como el par separado por comas que consta de un vector escalar o de 2 elementos con valores enteros positivos.'patchSize' Este argumento establece los dos primeros elementos de la propiedad.PatchSize

  • Si es un escalar, los parches son cuadrados.'patchSize'

  • Si es un vector de 2 elementos del formulario [], el primer elemento especifica el número de filas de la revisión y el segundo elemento especifica el número de columnas.'patchSize'rc

Tipos de datos: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Propiedades

expandir todo

Formato de canal, especificado como o.'grayscale''rgb'

Tipos de datos: char

Enviar observaciones en segundo plano durante el entrenamiento, la predicción y la clasificación, especificadas como o.falsetrue Para usar el envío de fondo, debe tener.Parallel Computing Toolbox™ Si es y tiene, a continuación, Lee asincrónicamente parches, agrega ruido y pone en cola los pares de parches.DispatchInBackgroundtrueParallel Computing ToolboxdenoisingImageDatastore

Desviación estándar de ruido Gaussiano como una fracción de la clase de imagen como máximo, especificada como un vector escalar o de 2 elementos con valores en el intervalo [0,1].

  • Si se trata de un escalar, la desviación estándar del ruido blanco Gaussiano de medio cero añadido es idéntica para todos los parches de imagen.GaussianNoiseLevel

  • Si es un vector de 2 elementos, entonces especifica un rango de desviaciones estándar [].GaussianNoiseLevelstdminstdmax La desviación estándar del ruido blanco Gaussiano de medio cero añadido es única para cada parche de imagen y se muestrea aleatoriamente a partir de una distribución uniforme con el intervalo [].stdminstdmax

Tipos de datos: single | double

Esta propiedad es de solo lectura.

Número de observaciones que se devuelven en cada lote. Para el entrenamiento, la predicción o la clasificación, la propiedad se establece en el tamaño de mini lote definido en.MiniBatchSizetrainingOptions

Esta propiedad es de solo lectura.

Número total de observaciones en el almacén de datos de imagen denozante. El número de observaciones es la duración de una época de entrenamiento.

Número de parches aleatorios por imagen, especificados como un entero positivo.

Tipos de datos: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Esta propiedad es de solo lectura.

Tamaño de parche, especificado como un vector de 3 elementos de enteros positivos. Si crea un almacén de datos de imagen que denota la eliminación especificando un argumento de par nombre-valor, los dos primeros elementos de la propiedad se establecen según el valor del argumento.'patchSize'PatchSizepatchSize

La propiedad determina el tercer elemento de la propiedad.ChannelFormatPatchSize

  • Si es así, todas las imágenes de color se convierten a escala de grises y el tercer elemento de is.ChannelFormat'Grayscale'PatchSize1

  • Si es así, las imágenes en escala de grises se replican para simular una imagen RGB y el tercer elemento de is.ChannelFormat'RGB'PatchSize3

Tipos de datos: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Funciones del objeto

hasdataDetermine if data is available to read
partitionByIndexPartición según índicesdenoisingImageDatastore
previewSubset of data in datastore
readLeer datos dedenoisingImageDatastore
readallRead all data in datastore
readByIndexLea los datos especificados por el índice desdedenoisingImageDatastore
resetReset datastore to initial state
shuffleMezclar datos endenoisingImageDatastore

Ejemplos

contraer todo

Obtenga un almacén de datos de imágenes. El almacén de datos de este ejemplo contiene imágenes en color.

setDir = fullfile(toolboxdir('images'),'imdata'); imds = imageDatastore(setDir,'FileExtensions',{'.jpg'});

Cree un objeto que crea muchos parches de cada imagen en el almacén de datos de la imagen y agrega ruido Gaussiano a las revisiones.denoisingImageDatastore Establecer el opcional,,, y las propiedades de la utilización de pares nombre-valor.PatchesPerImagePatchSizeGaussianNoiseLevelChannelFormatdenoisingImageDatastore Al establecer la propiedad en ' ', convierte todas las imágenes de color a escala de grises.ChannelFormatgrayscaledenoisingImageDatastore

dnds = denoisingImageDatastore(imds,...     'PatchesPerImage',512,...     'PatchSize',50,...     'GaussianNoiseLevel',[0.01 0.1],...     'ChannelFormat','grayscale')
dnds =    denoisingImageDatastore with properties:           PatchesPerImage: 512                PatchSize: [50 50 1]       GaussianNoiseLevel: [0.0100 0.1000]            ChannelFormat: 'grayscale'            MiniBatchSize: 128          NumObservations: 18944     DispatchInBackground: 0  

Sugerencias

  • Entrenar una red neuronal profunda para una gama de desviaciones estándar de ruido Gaussiano es un problema mucho más difícil que entrenar una red para una única desviación estándar de ruido Gaussiano. Debe crear más parches en comparación con un solo caso de nivel de ruido y el entrenamiento puede tardar más tiempo.

  • Para visualizar los datos en un datastore de imágenes que denotan, puede utilizar la función, que devuelve un subconjunto de datos en una tabla.preview La variable contiene los parches de imagen ruidosos y la variable contiene los parches de ruido correspondientes.inputresponse Visualice todos los parches de imagen ruidosos o parches de ruido en la misma figura utilizando la función.montage Por ejemplo, este código muestra datos en un datastore de imagen ruido llamado.dnimds

    minibatch = preview(dnimds); montage(minibatch.input) figure montage(minibatch.response)

  • Cada vez que se leen imágenes del almacén de datos de imágenes que denotan, se añade una cantidad aleatoria diferente de ruido Gaussiano a cada imagen.

Introducido en R2018a