augment

Примените идентичные случайные преобразования к нескольким изображениям

Синтаксис

Описание

пример

augI = augment(augmenter,I) увеличивает изображение I использование случайного преобразования из набора опций предварительной обработки изображений, заданных дополнителем данных изображений, augmenter. Если I состоит из нескольких изображений, затем augment применяет идентичное преобразование ко всем изображениям.

Примеры

свернуть все

Создайте увеличитель изображения, который вращает изображения на случайный угол. Чтобы использовать пользовательскую область значений допустимых углов поворота, можно задать указатель на функцию при создании augmenter. Этот пример задает функцию, вызываемую myrange (заданный в конце примера), который выбирает угол из двух непересекающихся интервалов.

imageAugmenter = imageDataAugmenter('RandRotation',@myrange);

Чтение нескольких изображений в рабочую область и отображение изображений.

img1 = imread('peppers.png');
img2 = imread('corn.tif',2);
inImg = imtile({img1,img2});
imshow(inImg)

Figure contains an axes. The axes contains an object of type image.

Увеличение изображений с одинаковыми увеличениями. Случайным образом выбранный угол поворота возвращается во временной переменной, angle.

outCellArray = augment(imageAugmenter,{img1,img2});
angle = 8.1158

Просмотрите дополненные изображения.

outImg = imtile(outCellArray);
imshow(outImg);

Figure contains an axes. The axes contains an object of type image.

Вспомогательная функция

Этот пример задает myrange функция, которая первый случайным образом выбирает один из двух интервалов (-10, 10) и (170, 190) с равной вероятностью. В пределах выбранного интервала функция возвращает одно случайное число из равномерного распределения.

function angle = myrange()
    if randi([0 1],1)
        a = -10;
        b = 10;
    else
        a = 170;
        b = 190;
    end
    angle = a + (b-a).*rand(1)
end

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

свернуть все

Опции увеличения, заданные как imageDataAugmenter объект.

Изображения для увеличения, заданные как одно из следующего.

  • Числовой массив, представляющий одно полутоновое или цветное изображение.

  • Массив ячеек из числовых и категориальных изображений. Изображения могут быть разных размеров и типов.

Выходные аргументы

свернуть все

Дополненные изображения, возвращенные как числовой массив или массив ячеек из числовых и категориальных изображений, согласующихся с форматом входных изображений I.

Совет

  • Можно использовать augment функция для предварительного просмотра преобразований, примененных к образцам изображений.

  • Чтобы выполнить увеличение изображения во время обучения, создайте augmentedImageDatastore и задайте опции предварительной обработки при помощи 'DataAugmentation' Пара "имя-значение" со imageDataAugmenter. datastore дополненных изображений автоматически применяет случайные преобразования к обучающим данным.

Введенный в R2018b