denoisingImageDatastore

Datastore шумоподавления изображений

Описание

Используйте denoisingImageDatastore объект сгенерировать пакеты шумных закрашенных фигур изображений и соответствующего шума исправляет от изображений в ImageDatastore. Закрашенные фигуры используются, чтобы обучить глубокую нейронную сеть шумоподавления.

Этот объект требует, чтобы у вас был Deep Learning Toolbox™.

Примечание

Когда вы используете datastore шумоподавления изображений в качестве источника обучающих данных, datastore добавляет случайный шум в закрашенные фигуры изображений в течение каждой эпохи, так, чтобы каждая эпоха использовала немного отличающийся набор данных. Фактическое число учебных изображений в каждую эпоху увеличено фактором PatchesPerImage. Шумные закрашенные фигуры изображений и соответствующие шумовые закрашенные фигуры не хранятся в памяти.

Создание

Описание

dnimds = denoisingImageDatastore(imds) создает datastore шумоподавления изображений, dnimds использование изображений от datastore изображений imds. Сгенерировать шумные закрашенные фигуры изображений, datastore шумоподавления изображений случайным образом обрезки нетронутые изображения от imds затем добавляет нулевой средний Гауссов белый шум со стандартным отклонением 0.1 к закрашенным фигурам изображений.

пример

dnimds = denoisingImageDatastore(imds,Name,Value) пары "имя-значение" использования, чтобы задать двухмерное изображение исправляют размер или установить PatchesPerImage, GaussianNoiseLevel, ChannelFormat, и DispatchInBackground свойства. Можно задать несколько пар "имя-значение". Заключите каждый аргумент или имя свойства в кавычках.

Например, denoisingImageDatastore(imds,'PatchesPerImage',40) создает datastore шумоподавления изображений и случайным образом генерирует 40 шумных закрашенных фигур от каждого изображения в datastore изображений, imds.

Входные параметры

развернуть все

Изображения, заданные как ImageDatastore объект с categorical метки. Можно хранить данные в ImageDatastore только для проблем классификации.

ImageDatastore позволяет чтение пакета JPG или упреждающую выборку использования файлов изображений PNG. Если вы используете пользовательскую функцию в чтении изображений, упреждающей выборки не происходит.

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: denoisingImageDatastore(imds,'patchSize',48) создает datastore шумоподавления изображений, который имеет квадратный размер закрашенной фигуры 48 пикселей.

Исправьте размер, заданный как разделенная запятой пара, состоящая из 'patchSize' и скалярный или вектор с 2 элементами с положительными целочисленными значениями. Этот аргумент устанавливает первые два элемента PatchSize свойство.

  • Если 'patchSize' скаляр, затем закрашенные фигуры являются квадратными.

  • Если 'patchSize' вектор с 2 элементами формы [r c], затем первый элемент задает количество строк в закрашенной фигуре, и второй элемент задает количество столбцов.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Свойства

развернуть все

Формат канала, заданный как 'grayscale' или 'rgb'.

Типы данных: char

Диспетчеризируйте наблюдения в фоновом режиме во время обучения, прогноза и классификации, заданной как false или true. Чтобы использовать фоновую диспетчеризацию, у вас должен быть Parallel Computing Toolbox™. Если DispatchInBackground true и у вас есть Parallel Computing Toolbox, затем denoisingImageDatastore асинхронно закрашенные фигуры чтений, добавляет шум, и очереди исправляют пары.

Гауссово шумовое стандартное отклонение как часть максимума класса изображений, заданного как скалярный или вектор с 2 элементами со значениями в области значений [0, 1].

  • Если GaussianNoiseLevel скаляр, затем стандартное отклонение добавленного нулевого среднего Гауссова белого шума идентично для всех закрашенных фигур изображений.

  • Если GaussianNoiseLevel вектор с 2 элементами, затем он указывает диапазон стандартных отклонений [stdmin stdmax]. Стандартное отклонение добавленного нулевого среднего Гауссова белого шума уникально для каждой закрашенной фигуры изображений и случайным образом производится от равномерного распределения с областью значений [stdmin stdmax].

Типы данных: single | double

Количество наблюдений, которые возвращены в каждом пакете. Можно изменить значение MiniBatchSize только после того, как вы создаете datastore. Для обучения, прогноза, или классификации, MiniBatchSize свойство установлено в мини-пакетный размер, заданный в trainingOptions.

Это свойство доступно только для чтения.

Общее количество наблюдений в шумоподавлении отображает datastore. Количество наблюдений является продолжительностью одной учебной эпохи.

Количество случайных закрашенных фигур на изображение, заданное как положительное целое число.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Это свойство доступно только для чтения.

Исправьте размер, заданный как вектор с 3 элементами положительных целых чисел. Если вы создаете datastore шумоподавления изображений путем определения 'patchSize' аргумент пары "имя-значение", затем первые два элемента PatchSize свойство установлено согласно значению patchSize аргумент.

ChannelFormat свойство определяет третий элемент PatchSize свойство.

  • Если ChannelFormat 'Grayscale', затем все цветные изображения преобразованы в шкалу полутонов и третий элемент PatchSize 1.

  • Если ChannelFormat 'RGB', затем полутоновые изображения реплицированы, чтобы симулировать изображение RGB и третий элемент PatchSize 3.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Функции объекта

combineОбъедините данные от нескольких datastores
hasdataОпределите, доступны ли данные для чтения
partitionByIndexРаздел denoisingImageDatastore согласно индексам
previewПодмножество данных в datastore
readСчитайте данные из denoisingImageDatastore
readallСчитывайте все данные в datastore
readByIndexСчитайте данные, заданные индексом от denoisingImageDatastore
resetСброс Datastore к начальному состоянию
shuffleПереставьте данные в datastore
transformПреобразуйте datastore

Примеры

свернуть все

Получите datastore изображений. Datastore в этом примере содержит цветные изображения.

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

Создайте denoisingImageDatastore объект, который создает много закрашенных фигур из каждого изображения в datastore изображений и добавляет Гауссов шум в закрашенные фигуры. Установите дополнительный PatchesPerImage, PatchSize, GaussianNoiseLevel, и ChannelFormat свойства denoisingImageDatastore использование пар "имя-значение". Когда вы устанавливаете ChannelFormat свойство к 'grayscale', denoisingImageDatastore преобразует все цветные изображения в шкалу полутонов.

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

Советы

  • Обучение глубокая нейронная сеть для области значений Гауссовых шумовых стандартных отклонений является намного более трудной проблемой, чем обучение сети для одного Гауссова шумового стандартного отклонения. Необходимо создать больше закрашенных фигур по сравнению с одним случаем уровня шума, и учебная сила занимает больше времени.

  • Чтобы визуализировать данные в шумоподавлении отображают datastore, можно использовать preview функция, которая возвращает подмножество данных в таблице. input переменная содержит шумные закрашенные фигуры изображений и response переменная содержит соответствующие шумовые закрашенные фигуры. Визуализируйте все шумные закрашенные фигуры изображений или шумовые закрашенные фигуры в той же фигуре при помощи montage функция. Например, этот код отображает данные в datastore шумоподавления изображений под названием dnimds.

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

  • Каждый раз отображает, читаются из datastore шумоподавления изображений, различная случайная сумма Гауссова шума добавляется к каждому изображению.

Введенный в R2018a