imtile

Объедините кадры повторного изображения в одно прямоугольное мозаичное изображение

Синтаксис

out = imtile(filenames)
out = imtile(I)
out = imtile(images)
out = imtile(imds)
out = imtile(X,map)
out = imtile(___,Name,Value)

Описание

out = imtile(filenames) возвращает мозаичное изображение, содержащее изображения, заданные в filenames. filenames является n-by-1 или 1 n массивом строк, вектором символов или массивом ячеек из символьных векторов. Если файлы не находятся в текущей папке или в папке на пути MATLAB®, задают имя полного пути. Смотрите команду imread для получения дополнительной информации.

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

  • Если вы задаете индексируемое изображение, то imtile преобразовывает его в RGB с помощью палитры, существующей в файле.

  • Если существует неверный тип данных между изображениями, то imtile повторно масштабирует все изображения, чтобы быть double с помощью функции im2double.

out = imtile(I) возвращает мозаичное изображение, содержащее все кадры матрицы изображений сверхкадра I. Матрица изображений сверхкадра может быть последовательностью двоичного файла, шкалы полутонов или изображений истинного цвета.

out = imtile(images) возвращает мозаичное изображение, содержащее изображения, заданные в массиве ячеек images. imtile отображает элементы массива пустой ячейки как пустую мозаику.

out = imtile(imds) возвращает мозаичное изображение, содержащее изображения, заданные в объекте ImageDatastore imds. Для получения информации о хранилищах данных изображений смотрите ImageDatastore.

out = imtile(X,map) обработки все полутоновые изображения в X как индексированные изображения и применяют заданную палитру map ко всем кадрам. X может быть массивом полутоновых изображений (m-by-n-by-1-by-k), массив строк имен файлов или массив ячеек из символьных векторов. Если X представляет имена файлов, map заменяет любую внутреннюю палитру, существующую в файлах изображений.

out = imtile(___,Name,Value) возвращает индивидуально настраиваемое мозаичное изображение, в зависимости от значений дополнительных пар "имя-значение" параметра. Можно сократить названия параметра, и случай не имеет значения.

Примеры

свернуть все

Считайте повторные изображения из файлов в рабочую область и создайте мозаичное изображение, содержащее изображения. Отобразите мозаичное изображение.

out = imtile({'peppers.png', 'ngc6543a.jpg'});
imshow(out);

Используя набор данных, содержащий повторные изображения, разместите изображения рядом в сетке.

Загрузите набор данных MRI.

load mri
out = imtile(D, map);
imshow(out);

Создайте мозаичное изображение, содержащее только первые восемь изображений в наборе данных. Используйте параметр 'GridSize', чтобы расположить изображения в 2 4 сетка.

out = imtile(D, map, 'Frames', 1:8, 'GridSize', [2 4]);
figure;
imshow(out);

Считайте изображение RGB в рабочую область.

imRGB = imread('peppers.png');

Создайте мозаичное изображение, содержащее каждую из трех плоскостей изображения RGB. Отобразите мозаичное изображение.

out = imtile(imRGB);
imshow(out)

От datastore изображений создайте и настройте мозаичное изображение.

Создайте datastore изображений, содержащий все файлы с расширением файла 'tif' или 'png' в заданной папке.

fileFolder = fullfile(matlabroot,'toolbox','matlab','imagesci');
imds = imageDatastore(fileFolder,'FileExtensions',{'.tif','.png'});

Создайте мозаичное изображение, содержащее изображения в datastore.

out1 = imtile(imds);
imshow(out1);

Используйте 'BorderSize' и 'параметры BackgroundColor', чтобы добавить синюю границу в мозаичное изображение.

out2 = imtile(imds, 'BorderSize', 10, 'BackgroundColor', 'b');
figure;
imshow(out2);

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

свернуть все

Имена файлов, содержащих изображения, заданные как n-by-1 или 1 n массивом строк, вектором символов или массивом ячеек из символьных векторов.

Изображение сверхкадра, заданное как последовательность двоичного файла, шкалы полутонов или изображений истинного цвета. I может быть m-by-n-by-k или m-by-n-by-1-by-k массив или последовательность двоичного файла, шкалы полутонов или изображений истинного цвета. Последовательностью двухуровневого или полутонового изображения должен быть m-by-n-by-k или m-by-n-by-1-by-k массив. Последовательностью изображений истинного цвета должен быть m-by-n-by-3-by-k массив.

Список изображений, заданных как n-by-1 или 1 n массивом ячеек числовых матриц. Массив ячеек может содержать числовые матрицы размера m-by-n или m-by-n-by-3.

Хранилище данных изображения, заданное как объект ImageDatastore.

Индексируемое изображение и сопоставленная палитра, заданная как 2D числовой массив (изображение) и n-by-3 числовой массив класса double (палитра). n является количеством, раскрашивает палитру.

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

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

Пример: tiled_image = imtile({'peppers.png', 'ngc6543a.jpg'},'BackgroundColor','g');

Цвет фона, заданного как пара, разделенная запятой, состоящая из 'BackgroundColor' и MATLAB ColorSpec (Color Specification). Функция imtile заполняет все пробелы с этим цветом, включая пробел, заданный BorderSize. Если вы задаете цвет фона, функция imtile представляет вывод как изображение RGB.

Пример: 'green'

Пример: 'g'

Пример: [0 1 0]

Дополнение вокруг каждого изображения миниатюр, заданного как пара, разделенная запятой, состоящая из 'BorderSize' и числового скаляра или 1 2 вектора формы [brows bcols]. imtile заполняет границы с цветом фона.

Кадры, чтобы включать, заданный как пара, разделенная запятой, состоящая из 'Frames' и числового массива или логической маски. Функция imtile интерпретирует значения как индексы в матрицу изображений или массив ячеек. Следующие примеры создают мозаичное изображение, содержащее первые три фрейма изображения.

Пример: out = imtile(I,'Frames',1:3);

Пример: out = imtile(I,'Frames',[true true true]);

Количество строк и столбцов миниатюр в мозаичном изображении, заданном как пара, разделенная запятой, состоящая из 'GridSize' и двухэлементный вектор формы [nrows ncols]. nrows задает количество строк в сетке, и ncols задает количество столбцов в сетке. Используйте NaN s, или Inf s, чтобы иметь imtile вычисляют размер в конкретной размерности способом, которая включает все изображения.

  • Если 'GridSize' является [2 NaN], то imtile создает мозаичное изображение с двумя строками и количеством столбцов, необходимых, чтобы включать все изображения.

  • Если оба, элементами является NaN или Inf, то imtile вычисляет размер сетки, чтобы сформировать квадрат. imtile возвращает изображения горизонтально через столбцы.

  • Если существует несоответствие между GridSize и количеством изображений (кадры), imtile создает мозаичное изображение на основе GridSize.

Размер миниатюр, заданных как пара, разделенная запятой, состоящая из 'ThumbnailSize' и двухэлементный вектор формы [trows tcols], в пикселях. Функция imtile сохраняет соотношение сторон оригинального изображения дополнением нуля контур.

  • Если вы задаете NaN или Inf, то функция imtile вычисляет соответствующее значение автоматически, чтобы сохранить соотношение сторон первого изображения.

  • Если вы задаете пустой массив ([]), то функция imtile использует полный размер первого изображения как размер миниатюры.

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

свернуть все

Мозаичное выходное изображение, возвращенное как числовой массив.

Смотрите также

|

Введенный в R2018b

Для просмотра документации необходимо авторизоваться на сайте