主要内容

图像对象及其属性

CData形象

请注意

图像显示亮度图像命令创建图像对象。图像对象是轴对象的子对象,就像线、补丁、面和文本对象一样。与所有图形对象一样,图像对象也有许多属性,可以通过设置来微调其在屏幕上的外观。图像对象关于外观的最重要的属性是CDataCDataMappingXData,YData.这些属性将在本节和下面几节中讨论。有关这些和图像对象的所有属性的详细信息,请参见图像

CData属性包含该数据数组。在以下命令中,h图像对象的句柄是由图像,以及矩阵XY都是一样的:

h (X) =图像;colormap(map) Y = get(h,'CData');

它的维度CData数组控制图像是使用彩色映射颜色显示还是作为RGB图像显示。如果CData数组是二维的,图像可以是索引图像或强度图像;在这两种情况下,图像都使用colormap颜色显示。另一方面,如果CData数组——- - - - - -n-by-3时,它显示为真彩色图像,忽略颜色映射的颜色。

图像CDataMapping

CDataMapping属性控制图像是否为索引强度.要显示索引的图像,请将CDataMapping财产“直接”,使之的价值CData数组直接用作图形颜色图的索引。当图像命令与单个输入参数一起使用时,它设置的值CDataMapping“直接”

h (X) =图像;colormap(map) get(h,'CDataMapping') ans = direct

强度图像通过设置显示CDataMapping财产“缩放”.在这种情况下CData值是线性缩放形成彩色地图索引。坐标轴这一属性控制比例因素。的显示亮度图像函数创建的图像对象CDataMapping属性设置为“缩放”,它调整这一父轴的属性。例如:

h = imagesc(I,[0 1]);colormap(map) get(h,'CDataMapping') ans = scaled get(gca,'CLim') ans = [0 1]

XData和YData

XDataYData属性控制图像的坐标系统。对于一个——- - - - - -n图片,默认XDatan [1]和默认的YData(1米).这些设置意味着以下内容:

  • 图像的左列有一个x1的坐标。

  • 图像的右列有一个x协调的n。

  • 图像的第一行有一个y1的坐标。

  • 图像的底部一行有一个y协调的m。

图像坐标系

使用默认坐标系统

使用默认坐标系统显示图像。使用来自colorcube地图。

C = [1 2 3 4;5 6 7 8;9 10 11 12];我=图像(C);colormap (colorcube)

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

指定坐标系统

显示图像并指定坐标系统。使用来自colorcube地图。

C = [1 2 3 4;5 6 7 8;9 10 11 12];X = [-1 2];Y = [2 4];数字图像(x, y, C) colormap (colorcube)

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

添加文本到图像数据

这个示例演示了如何使用数组索引将文本栅格化到现有图像中。

在坐标轴上绘制文本文本函数。然后,从屏幕上捕获文本使用getframe然后闭合图形。

无花果=图;文本(t = 0。,1。“山魈脸”“字形大小”, 20岁,“FontWeight”“大胆”);F = getframe(gca,[10 10 200 200]);关闭(图)

选择返回的结果RGB图像的任何平面getframe.查找黑色像素(黑色为0)并将其下标转换为索引sub2ind.使用这些下标将文本“绘制”到包含在山魈MAT-file。使用该图像的大小加上文本的行和列位置来确定新图像中的位置。索引到新的图像,取代像素。

c = F.cdata (:: 1);(i, j) =找到(c = = 0);负载山魈印第安纳州= sub2ind(大小(X), i, j);X(印第安纳州)= uint8 (255);

使用骨骼颜色图显示新图像。

显示亮度图像(X) colormap

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

快速图像更新的附加技术

增加…的速度CData属性的图像对象更新,优化CData并设置一些相关的图形和轴属性:

  • 尽可能使用最小的数据类型。使用一个uint8数据类型将比使用数据类型。

    设置图像的过程的一部分CData属性包括复制矩阵以供图像使用。矩阵的整体大小取决于其单个元素的大小。使用更小的单个元素(即更小的数据类型)可以减少矩阵的大小,并减少复制矩阵所需的时间。

  • 使用可接受的最小矩阵。

    如果图像显示的速度是您的最高优先级,那么您可能需要在图像的大小和质量上做出妥协。同样,减小尺寸可以减少复制矩阵所需的时间。

  • 设置限制模式属性(XLimModeYLimMode)的坐标轴手册

    如果设置为汽车,那么每当一个对象(如图像、线、补丁等)改变其数据的某些方面时,坐标轴必须重新计算其相关属性。例如,如果指定

    图像(firstimage);集(gca、“xlimmode”,“手动”,…“ylimmode”、“手动”,……“zlimmode”、“手动”,……“climmode”、“手动”,……“alimmode”、“手动”);

    在重新绘制图像之前,坐标轴不会重新计算任何极限值。

  • 考虑使用电影对象,如果您的任务的主要目的只是在屏幕上显示一系列图像。

    MATLAB®电影对象直接利用底层系统图形资源,而不是执行MATLAB对象代码。这比重复设置图像的速度快CData属性,如前所述。