主要内容

imtile

将多个图像帧组合成一个矩形平铺图像

描述

= imtile (文件名返回一个平铺图像,其中包含文件中的图像和文件名文件名

默认情况下,imtile函数排列图像,使它们大致形成一个正方形。您可以使用可选的名称-值参数更改排列。图像可以有不同的大小和数据类型。

  • 如果指定索引图像,则imtile函数使用文件中存在的颜色映射将其转换为RGB。

  • 如果图像之间的数据类型不匹配,则imtile函数将所有图像转换为数据类型使用im2double函数。

= imtile (返回包含多帧图像数组的所有帧的平铺图像.多帧图像数组可以是二进制、灰度或真彩色图像的序列。

= imtile (图片返回包含单元格数组中指定的图像的平铺图像图片imtile将空单元格数组元素显示为空白平铺。

= imtile (洛桑国际管理发展学院返回包含ImageDatastore对象中指定的图像的平铺图像洛桑国际管理发展学院.有关映像数据存储的信息,请参见ImageDatastore

= imtile (___地图返回一个平铺图像,其中灰度、索引和二进制图像使用颜色映射转换为RGB地图.您可以使用前面任何语法的input参数指定输入图像。请注意,如果使用文件名指定图像文件名,并指定颜色映射,则地图覆盖图像文件中存在的任何内部颜色映射。

= imtile (___名称,值根据可选参数名-值对参数的值,返回自定义平铺图像。

例子

全部折叠

将多个图像从文件读入工作区,并创建包含这些图像的平铺图像。显示平铺图像。

Out = imtile({“peppers.png”“ngc6543a.jpg”});imshow(出);

图中包含一个轴对象。axis对象包含一个image类型的对象。

使用包含多个图像的数据集,将图像平铺在网格中。

加载MRI数据集。

负载核磁共振成像out = imtile(D, map);imshow(出);

图中包含一个轴对象。axis对象包含一个image类型的对象。

创建一个只包含数据集中前8个图像的平铺图像。使用“GridSize”参数将图像排列在2 × 4的网格中。

out = imtile(D, map,“帧”1:8,“GridSize”, [2 4]);图;imshow(出);

图中包含一个轴对象。axis对象包含一个image类型的对象。

将RGB图像读入工作区。

imRGB = imread(“peppers.png”);

创建一个包含RGB图像的三个平面的平铺图像。显示平铺图像。

out = imtile(imRGB);imshow(出)

图中包含一个轴对象。axis对象包含一个image类型的对象。

从映像数据存储中创建和定制一个平铺映像。

创建一个映像数据存储,其中包含所有具有文件扩展名的文件气管无名动脉瘘管的' '“png”在指定的文件夹中。

fileFolder = fullfile(matlabroot,“工具箱”matlab的“imagesci”);imds = imageDatastore(fileFolder,“FileExtensions”, {“.tif”“使用”});

创建一个平铺图像,其中包含数据存储中的图像。

Out1 = imtile(imds);imshow(着干活);

图中包含一个轴对象。axis对象包含一个image类型的对象。

使用“BorderSize”和“写成BackgroundColor”参数向平铺图像添加蓝色边框。

Out2 = imtile(imds,“BorderSize”10“写成BackgroundColor”“b”);图;imshow (out2);

图中包含一个轴对象。axis对象包含一个image类型的对象。

输入参数

全部折叠

包含图像的文件名称,指定为f-by-1字符串数组,一个1 by-f字符串数组、字符向量或字符向量的单元格数组。如果文件不在当前文件夹或MATLAB的文件夹中®路径,然后指定完整路径名。有关更多信息,请参见imread

例子:“file1.jpg”

例子:[" file1.jpg”“file2.jpg”)

例子:“. . / dir /数据/ file1.png”

例子:{“C: \ dir \ data \ file1.tif”,“C: \ dir \ data \ file2.tif”}

数据类型:字符|字符串|细胞

多帧图像,指定为数值数组。可以是:

  • 一个——- - - - - -n——- - - - - -k序列的数组k二进制、灰度或索引图像

  • 一个——- - - - - -n-by-1-by -k序列的数组k二进制、灰度或索引图像

  • 一个——- - - - - -n-by-3-by -k序列的数组k真彩图像

图像列表,指定为k-乘1或者1乘-k数值矩阵的单元格数组。单元格数组可以包含大小的数字矩阵——- - - - - -n——- - - - - -n3。

映像数据存储,指定为ImageDatastore对象。

Colormap,指定为c-by-3数值矩阵,值范围为[0,1]。每行地图是一个三元素RGB三元组,指定单一颜色的红色、绿色和蓝色成分。当你指定地图,imtile函数将所有索引、灰度和二值图像转换为使用此色图的真彩色。

数据类型:

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:imtile({‘peppers.png’,‘ngc6543a.jpg},‘写成BackgroundColor’,‘g’);

背景颜色,指定为RGB三元组、颜色名称或短颜色名称。的imtile函数用此颜色填充所有空格,包括指定的空格BorderSize

您可以使用RGB三元组指定任何颜色。RGB三元组是一个3元素的行向量,其元素指定颜色的红、绿和蓝分量的强度。强度必须在[0,1]范围内。

您可以通过字符串标量或字符向量的名称指定一些常见颜色。该表列出了已命名的颜色选项和等效的RGB三元组。

颜色名称 短名称 RGB值 外观
“红色” “r” [10 0 0]

纯红色矩形

“绿色” ‘g’ [0 10 0]

一个纯绿色的矩形

“蓝” “b” [0 0 1]

一个纯蓝色的长方形

“青色” “c” [0 1 1]

纯青色矩形

“红色” “米” [10 0 1]

一个纯洋红色的长方形

“黄色” “y” [11 10 0]

纯黄色矩形

“黑” “k” [0 0 0]

一个黑色的矩形

“白色” ' w ' [1 1 1]

一个白色的矩形

例子:‘写成BackgroundColor’,‘r’

例子:“写成BackgroundColor”、“绿色”

例子:'BackgroundColor',[0 0.4470 0.7410]

每个缩略图图像周围的填充,由逗号分隔的对组成“BorderSize”和这个形式的数值标量或1 × 2数值向量(眉毛bcols).的imtile函数用背景色填充每个图像的边界。

要包含的帧,指定为逗号分隔的对,由“帧”一个数字数组或者逻辑掩码。的imtile函数将值解释为图像数组或单元格数组的索引。下面的示例创建包含前三个图像帧的平铺图像。

例子:out = imtile(I,'Frames',1:3);

例子:out = imtile(I,'Frames',[true true true]);

平铺图像中缩略图的行数和列数,由逗号分隔的对组成“GridSize”和这个形式的两元向量(nrows ncols)nrows指定网格中的行数和ncols指定网格中的列数。使用年代或S to haveimtile以包含所有图像的方式计算特定维度的大小。

  • 如果“GridSize”(2南),然后imtile创建包含所有图像所需的两行和列数的平铺图像。

  • 如果两个元素都是,然后imtile计算网格大小以形成一个正方形。imtile横向跨列返回图像。

  • 如果两者之间不匹配GridSize以及图像(帧)的数量imtile创建基于的平铺图像GridSize

缩略图的大小,指定为逗号分隔的对,由“ThumbnailSize”和这个形式的两元向量(以为tcols],单位为像素。的imtile函数通过对边界进行零填充来保留原始图像的纵横比。

  • 如果您指定,则imtile函数自动计算相应的值以保留第一张图像的纵横比。

  • 如果指定一个空数组([]),然后imtile函数使用第一个图像的完整大小作为缩略图大小。

输出参数

全部折叠

平铺输出图像,作为数字矩阵或数字数组返回。输出的图像是——- - - - - -N-by-3数值数组,满足以下任意一个条件:

  • 输入图像中至少有一个是RGB图像或索引图像

  • 你指定一个颜色映射,地图

  • 你指定一个背景色,写成BackgroundColor,而不管平铺图像是否包含背景像素

扩展功能

版本历史

在R2018b中引入

另请参阅

|