imtile

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

Описание

out = imtile(filenames) возвращает мозаичное изображение, содержащее изображения, указанные в filenames. filenames - n -by-1 или 1-by- 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);

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

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

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

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

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

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

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

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

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

imRGB = imread('peppers.png');

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

out = imtile(imRGB);
imshow(out)

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

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

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

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

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

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

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

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

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

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

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

свернуть все

Имена файлов, содержащих изображения, заданные как n -by-1 или 1-by 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 массивом. Последовательность изображений truecolor должна быть m -by- n -by-3-by- k массивом.

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

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

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

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

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

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

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

Пример: 'green'

Пример: 'g'

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

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

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

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

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

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

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

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

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

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

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

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

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

свернуть все

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

См. также

|

Введенный в R2018b