用image函数处理图像。该函数的语法格式如下所示:
image(C) 会将数组 C 中的数据显示为图像。C 的每个元素指定图像的 1 个像素的颜色。生成的图像是一个 m×n 像素网格,其中 m 和 n 分别是 C 中的列数和行数。这些元素的行索引和列索引确定了对应像素的中心。
image(x,y,C) 指定图像位置。使用 x 和 y 可指定与 C(1,1) 和 C(m,n) 对应的边角的位置。要同时指定两个边角,请将 x 和 y 设置为二元素矢量。要指定第一个边角并让 image 确定另一个,请将 x 和 y 设为标量值。图像将根据需要进行拉伸和定向。
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对象的属性如表1-6所示。
表1-6 Image对象的属性
| 分类 | 属 性 | 说 明 |
|---|---|---|
| 数据 | CData | 颜色数据。64×64 的数组(默认)| 向量或矩阵 | 由 RGB 三元数组成的三维数组。 |
| 数据 | CDataMapping | 颜色数据的映射方法。'direct'(默认)| 'scaled'。 |
| 位置 | XData | X轴方向的起点坐标和宽度,[1 size(CData,2)](默认)|二元素向量|标量 |
| 位置 | YData | Y轴方向的起点坐标和宽度,[1 size(CData,1)](默认)|二元素向量|标量 |
| 透明度 | AlphaData | 透明度数据。1(默认)| 标量 | 大小与 CData 相同的数组。 |
| 透明度 | AlphaDataMapping | 透明度数据的映射。'none'(默认) | 'scaled' | 'direct'。 |
| 可见性 | Visible | 显示或隐藏。'on'(默认)| 'off'。 |
| 可见性 | Clipping | 按照坐标区范围裁剪对象。'on'(默认)| 'off'。 |
放置图像,使其位于 x 轴上的 1 和 4 之间及 y 轴上的 6 和 9 之间。
>> x=[1 4];
>> y=[6 9];
>> C=[1 2 3 4; 5 6 7 8; 9 10 11 12];
>> image(x,y,C)
生成图1-26。
下面读取 JPEG 图像文件。
>> C=imread('d:\pic.jpg');
>> image(C)
生成图1-27。
图1-26 创建图像 图1-27 读取JPEG图像