?数组显示图像 - MATLAB image MathWorks 中国 (2024)

从数组显示图像

全页折叠

语法

image(C)

image(x,y,C)

image('CData',C)

image('XData',x,'YData',y,'CData',C)

image(___,Name,Value)

image(ax,___)

im = image(___)

说明

示例

image(C) 会将数组 C 中的数据显示为图像。C 的每个元素指定图像的 1 个像素的颜色。生成的图像是一个 m×n 像素网格,其中 mn 分别是 C 中的行数和列数。这些元素的行索引和列索引确定了对应像素的中心。

示例

image(x,y,C) 指定图像位置。使用 xy 可指定与 C(1,1)C(m,n) 对应的边角的位置。要同时指定两个边角,请将 xy 设置为二元素向量。要指定第一个边角并让 image 确定另一个,请将 xy 设为标量值。图像将根据需要进行拉伸和定向。

image('CData',C) 将图像添加到当前坐标区中而不替换现有绘图。此语法是 image(C) 的低级版本。有关详细信息,请参阅图像的高级与低级版本

image('XData',x,'YData',y,'CData',C) 指定图像位置。此语法是 image(x,y,C) 的低级版本。

示例

image(___,Name,Value) 使用一个或多个名称-值对组参量指定图像属性。您可以使用上述语法中的任意输入参量组合指定图像属性。

image(ax,___) 将在由 ax 指定的坐标区中而不是当前坐标区 (gca) 中创建图像。选项 ax 可以位于上述语法中的任何输入参量组合之前。

示例

im = image(___) 返回创建的 Image 对象。使用 im 在创建图像后设置图像的属性。您可以使用上述语法中的任意输入参量组合指定此输出。如需图像属性和说明的列表,请参阅 Image 属性

示例

全部折叠

显示矩阵数据的图像

打开实时脚本

创建矩阵 C。显示 C 中数据的图像。向图形添加颜色栏以显示当前颜色图。

C = [0 2 4 6; 8 10 12 14; 16 18 20 22];image(C)colorbar

Ž数组显示图像 - MATLAB image MathWorks 中国 (1)

默认情况下,图像的 CDataMapping 属性设置为 'direct',因此 image 会将 C 中的值解释为颜色图的索引。例如,与 C 中最后一个元素 (22) 对应的右下方像素使用颜色图的第 22 个颜色。

通过在创建图像时将 CDataMapping 属性设置为 'scaled',将值的范围缩放到当前颜色图的完整范围。

image(C,'CDataMapping','scaled')colorbar

Ž数组显示图像 - MATLAB image MathWorks 中国 (2)

您也可以使用 imagesc 函数缩放这些值,而不是使用 image(C,'CDataMapping','scaled')。例如,使用 imagesc(C)

控制图像位置

打开实时脚本

放置图像,使其位于 x 轴上的 5 和 8 之间及 y 轴上的 3 和 6 之间。

Ž数组显示图像 - MATLAB image MathWorks 中国 (3)

请注意,对应于 C(1,1) 的像素居中显示在点 (5,3) 上。对应于 C(3,4) 的像素在点 (8,6) 上居中显示。image 在这两个点之间定位和定向该图像的其余部分。

显示三维真彩色数组的图像

打开实时脚本

创建 C 作为真彩色三维数组。将该数组的最后两页设为零,以便仅使用红色。

C = zeros(3,3,3);C(:,:,1) = [.1 .2 .3; .4 .5 .6; .7 .8 .9]
C = C(:,:,1) = 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.9000C(:,:,2) = 0 0 0 0 0 0 0 0 0C(:,:,3) = 0 0 0 0 0 0 0 0 0

显示 C 中数据的图像。

image(C)

Ž数组显示图像 - MATLAB image MathWorks 中国 (4)

创建后修改图像

打开实时脚本

绘制一个线条,然后在该线条上方创建一个图像。返回图像对象。

plot(1:3)hold onC = [1 2 3; 4 5 6; 7 8 9];im = image(C);

Ž数组显示图像 - MATLAB image MathWorks 中国 (5)

使图像半透明,这样线条就会在图像中透明呈现。

im.AlphaData = 0.5;

Ž数组显示图像 - MATLAB image MathWorks 中国 (6)

读取并显示 JPEG 图像文件

打开实时脚本

读取 JPEG 图像文件。

C = imread('ngc6543a.jpg');

imread 返回 650×600×3 数组 C

显示图像。

image(C)

Ž数组显示图像 - MATLAB image MathWorks 中国 (7)

向三维视图中的坐标区添加图像

打开实时脚本

创建一个曲面图。然后,在曲面下添加一个图像。imagexy 平面中显示该图像。

Z = 10 + peaks;surf(Z)hold on image(Z,'CDataMapping','scaled')

Ž数组显示图像 - MATLAB image MathWorks 中国 (8)

输入参数

全部折叠

C图像颜色数据
向量或矩阵 | 由 RGB 三元组组成的三维数组

图像颜色数据,指定为下列形式之一:

  • 向量或矩阵 - 此格式定义索引图像数据。C 的每个元素定义图像的 1 个像素的颜色。例如,C = [1 2 3; 4 5 6; 7 8 9];C 的元素映射到相关联的坐标区的颜色图中的颜色。CDataMapping 属性控制映射方法。

  • 由 RGB 三元组组成的三维数组 - 此格式定义使用 RGB 三元值的真彩色图像数据。每个 RGB 三元组定义图像的 1 个像素的颜色。RGB 三元组是三元素向量,指定颜色的红、绿和蓝分量的强度。三维数组的第一页包含红色分量,第二页包含绿色分量,第三页包含蓝色分量。由于图像使用真彩色代替颜色图的颜色,因此 CDataMapping 没有任何作用。

    • 如果 Cdouble 类型,则 RGB 三元值 [0 0 0][1 1 1] 分别对应于黑色和白色。

    • 如果 C 为整数类型,则该图像使用完整范围的数据确定颜色。例如,如果 C 为类型 uint8,则 [0 0 0][255 255 255] 分别对应于黑色和白色。如果 CData 为类型 int8,则 [-128 -128 -128][127 127 127] 分别对应于黑色和白色。

    • 如果 C 为类型 logical,则 [0 0 0][1 1 1] 分别对应于黑色和白色。

下图演示了两种颜色模型的 C 的相对维度。

Ž数组显示图像 - MATLAB image MathWorks 中国 (9)

NaN 元素的行为未定义。

要改用 image 函数的低级版本,请将 CData 属性设为名称-值对组。例如,image('CData',C)

double 和整数数据类型之间转换

如果您使用向量或二维矩阵调用 image 函数并使用默认的 CDataMapping 值,则在 double 值和整数类型之间转换时,必须将数据值偏移 1。当 CDataMapping 设置为 'scaled' 时,此偏移不是必需的。

例如,如果 U8 包含 uint8 类型的索引图像数据,您可以使用以下语法将其转换为 double 类型:

D = double(U8) + 1;

要将索引图像数据从 double 类型转换为整数类型,请减去 1 并使用 round 确保所有值都为整数。例如,如果 D 包含 double 类型的索引图像数据,则使用以下语法将其转换为 uint8

U8 = uint8(round(D - 1));

在归一化的 double 和真彩色值之间转换

要将真彩色图像数据从整数类型转换为 double 类型,请重新缩放数据。例如,如果 RGB8uint8 类型的真彩色图像数据,则使用以下语法将其转换为 double

RGB = double(RGB8)/255;

要将真彩色图像数据从 double 类型转换为整数类型,请重新缩放数据并使用 round 确保所有值都为整数。例如,如果 RGBdouble 类型的图像数据,则使用以下语法将其转换为 uint8

RGB8 = uint8(round(RGB*255));

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

x沿 x 轴放置
[1 size(C,2)] (默认) | 二元素向量 | 标量

沿着 x 轴放置,以下列形式之一指定:

  • 二元素向量 - 将第一个元素用作 C(1,1) 的中心位置,将第二个元素用作 C(m,n) 的中心位置,其中 [m,n] = size(C)。如果 C 为三维数组,则 mn 为前两个维度。C 的其余元素的中心均匀分布在这两点之间。

    每个像素的宽度由以下表达式确定:

    (x(2)-x(1))/(size(C,2)-1)

    如果 x(1) > x(2),则图像左右翻转。

  • 标量 - 会以此位置作为 C(1,1) 的中心,并使后面的每个元素相隔一个单位。

注意

  • 如果 x 有两个以上的元素,image 将使用第一个和最后一个元素,而忽略其他元素。

  • 要改用低级版本的 image 函数,请使用名称-值参量设置 XData 属性。例如,image('XData',x,'YData',y,'CData',C)

  • 您无法在以交互方式将图像平移或缩放到图像的 x 轴或 y 轴范围以外,除非设置的坐标轴范围界限已超出图像边界。如果这些轴范围超出边界,则无此类限制。如果其他对象(例如,线条)占用坐标区,并延伸到图像边界以外,您可以平移或缩放到其他对象的边界,但不能越过边界。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | datetime (自 R2023b 起) | duration (自 R2023b 起) | categorical (自 R2023b 起)

y沿 y 轴放置
[1 size(C,1)] (默认) | 二元素向量 | 标量

沿着 y 轴放置,以下列形式之一指定:

  • 二元素向量 - 将第一个元素用作 C(1,1) 的中心位置,将第二个元素用作 C(m,n) 的中心位置,其中 [m,n] = size(C)。如果 C 为三维数组,则 mn 为前两个维度。C 的其余元素的中心均匀分布在这两点之间。

    每个像素的高度由以下表达式确定:

    (y(2)-y(1))/(size(C,1)-1)

    如果 y(1) > y(2),则图像上下翻转。

  • 标量 - 会以此位置作为 C(1,1) 的中心,并使后面的每个元素相隔一个单位。

注意

  • 如果 y 有两个以上的元素,image 将使用第一个和最后一个元素,而忽略其他元素。

  • 要改用低级版本的 image 函数,请使用名称-值参量设置 YData 属性。例如,image('XData',x,'YData',y,'CData',C)

  • 您无法在以交互方式将图像平移或缩放到图像的 x 轴或 y 轴范围以外,除非设置的坐标轴范围界限已超出图像边界。如果这些轴范围超出边界,则无此类限制。如果其他对象(例如,线条)占用坐标区,并延伸到图像边界以外,您可以平移或缩放到其他对象的边界,但不能越过边界。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | datetime (自 R2023b 起) | duration (自 R2023b 起) | categorical (自 R2023b 起)

axAxes 对象
Axes 对象

Axes 对象。如果您不指定 Axes 对象,则 image 使用当前坐标区。

名称-值参数

将可选的参量对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但参量对组的顺序无关紧要。

在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。

示例: image([1 2 3],'AlphaData',0.5) 会显示半透明图像。

此处所列的属性只是一部分图像属性。有关完整列表,请参阅 Image 属性

输出参量

全部折叠

imImage 对象
Image 对象

Image 对象,以标量形式返回。使用 im 在创建图像后设置图像的属性。有关列表,请参阅 Image 属性

详细信息

全部折叠

图像的高级与低级版本

image 函数有两个版本:高级版本和低级版本。如果您使用的 image'CData' 作为输入参量,则您使用的是低级版本。否则,您使用的是高级版本。

image 的高级版本在绘图前调用 newplot 并设置以下坐标区属性:

  • Layer'top'。该图像显示在任何刻度线或网格线前面。

  • YDir'reverse'。沿 y 轴的值从上到下递增。要使值从上到下递减,请将 YDir 设置为 'normal'。此设置会反转 y 轴和图像。

  • View[0 90]

image 函数的低级版本不调用 newplot 且不设置这些坐标区属性。

提示

  • 要将图像数据从不同标准格式(如 TIFF)的图形文件读取到 MATLAB 中,请使用 imread。要将 MATLAB 图像数据写入图形文件,请使用 imwriteimreadimwrite 函数支持各种图形文件格式和压缩方案。

扩展功能

版本历史记录

在 R2006a 之前推出

全部展开

现在,您可以将 xy 参量指定为日期时间、持续时间或分类坐标值。以前,仅支持数值和逻辑坐标值。

另请参阅

函数

  • colormap | imread | imwrite | imshow | imagesc | imfinfo

属性

  • Image 属性

MATLAB 命令

您点击的链接对应于以下 MATLAB 命令:

 

请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。

Ž数组显示图像 - MATLAB image MathWorks 中国 (10)

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .

You can also select a web site from the following list:

Americas

Europe

Asia Pacific

Contact your local office

?数组显示图像 - MATLAB image MathWorks 中国 (2024)
Top Articles
Golden Retriever - Wesen, Verhalten und Haltung des Hundes
Golden Retriever: Charakter, Haltung & Pflege
Jps Occupational Health Clinic
Is Jennifer Coffindaffer Married
Far-right activist Laura Loomer's access to Trump reveals a crisis in his campaign
Orange County's diverse vegan Mexican food movement gains momentum
Gwenson Mallory Crutcher
Dbd Wesker Build
Redbox Locations Walmart
Leccion 4 Lesson Test
Precision Garage Door Long Island
Cookie Clicker The Advanced Method
Apple Store Near Me Make Appointment
Paperless Guide: Workflow
Dr Bizzaro Bubble Tea Menu
Osrs Mahogany Homes Calc
Inspire Brands.csod.com Arby's
Cherry Crush Webtoon Summary
Rosekellyppv
Optum Primary Care - Winter Park Aloma
Hood County Buy Sell And Trade
Wwba Baseball
Redgifs.comn
Sun Commercial Obituaries
Jockey Standings Saratoga 2023
Age Gabriela Moura's Evolution from Childhood Dreams to TikTok Fame - Essential Tribune
Daily Journal Obituary Kankakee
Roomba I3 Sealing Problem With Clean Base
Who We Are | Kappa Delta Sorority
South Park Old Fashioned Gif
Tulare Lake’s ghostly rebirth brings wonder — and hardship. Inside a community's resilience
10-Day Weather Forecast for Bratislava, Bratislava, Slovakia - The Weather Channel | weather.com
9294027542
New R-Link system and now issues creating R-Link store account.
Sveta Håkansson
Ebk Jaaybo Net Worth
The Whale Showtimes Near Cinépolis Vista
My.chemeketa
Lubbock, Texas hotels, motels: rates, availability
Brooklyn Park City Hall
Phrj Incarcerations
O'reillys Parts Store
Apphomie.com Download
Showbiz Waxahachie Bowling Hours
Nc Maxpreps
Cetaphil Samples For Providers
Metroplus Rewards Sign In
Busted Newspaper Zapata Tx
Gwcc Salvage
Craig List El Paso Tx
C-Reactive Protein (CRP) Test Understand the Test & Your Results
Fired Up | Rotten Tomatoes
Latest Posts
Article information

Author: Kelle Weber

Last Updated:

Views: 6011

Rating: 4.2 / 5 (53 voted)

Reviews: 84% of readers found this page helpful

Author information

Name: Kelle Weber

Birthday: 2000-08-05

Address: 6796 Juan Square, Markfort, MN 58988

Phone: +8215934114615

Job: Hospitality Director

Hobby: tabletop games, Foreign language learning, Leather crafting, Horseback riding, Swimming, Knapping, Handball

Introduction: My name is Kelle Weber, I am a magnificent, enchanting, fair, joyous, light, determined, joyous person who loves writing and wants to share my knowledge and understanding with you.