图像对象及其属性
CData形象
请注意
的图像
和显示亮度图像
命令创建图像对象。图像轴对象的对象是儿童,线,补丁,表面和文本对象。像所有图形对象,对象有很多属性可以设置调整其出现在屏幕上。最重要的属性对象对外观形象CData
,CDataMapping
,XData
,YData
。这些属性在这个和下面的章节讨论。关于这些的详细信息和图像对象的所有属性,看看图像
。
的CData
图像的属性对象包含数据数组。在接下来的命令,h
是图像的处理对象创建的吗图像
,矩阵X
和Y
都是一样的:
h (X) =图像;colormap (map) Y = (h, CData的);
的维数CData
阵列控制图像是否显示使用colormap颜色或作为一个RGB图像。如果CData
二维数组时,图像索引图像或一个强度图像;在这两种情况下,使用colormap颜色显示的图像。另一方面,如果CData
数组米——- - - - - -n3,它显示真彩图像,忽略了colormap颜色。
图像CDataMapping
的CDataMapping
属性控制图像是否索引
或强度
。显示索引图像设置CDataMapping
财产“直接”
,这样的值CData
数组直接用作指数图的colormap。当图像
命令使用一个输入参数,它设置的值CDataMapping
来“直接”
:
h (X) =图像;colormap(地图)get (h, CDataMapping) ans =直接
通过设置显示强度图像CDataMapping
财产“缩放”
。在这种情况下,CData
值是线性扩展形成colormap指数。坐标轴这一
属性控制规模的因素。的显示亮度图像
函数创建一个对象的形象CDataMapping
属性设置为“缩放”
,并调整这一
属性的父轴。例如:
h =显示亮度图像(I, [0 1]);colormap(地图)get (h, CDataMapping) ans =缩放得到(gca,“爬”)ans = [0 1]
XData和YData
的XData
和YData
属性控制图像的坐标系统。对于一个米——- - - - - -n图片,默认XData
是n [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)
指定坐标系统
显示一个图像和指定坐标系统。使用的颜色colorcube
地图。
C = [1 2 3 4;5 6 7 8;9 10 11 12);x = [1 - 2];4 y = [2];数字图像(x, y, C) colormap (colorcube)
将文本添加到图像数据
这个例子展示了如何使用数组索引栅格化文字到现有图像。
画出文本在一个轴使用文本
函数。然后,从屏幕捕获文本使用getframe
并关闭图。
无花果=图;文本(t = 0。, 1。“山魈脸”,“字形大小”,20岁,“FontWeight”,“大胆”);F = getframe (gca, [10 200 200]);关闭(图)
选择任意平面的结果返回的RGB图像getframe
。找到的像素黑(黑色是0)和转换他们的下标索引使用sub2ind
。使用这些下标“油漆”到图像中包含的文本山魈
MAT-file。使用图像的大小,加上文本的行和列的位置来确定位置的新形象。指数的新形象,取代像素。
c = F.cdata (:: 1);(i, j) =找到(c = = 0);负载山魈印第安纳州= sub2ind(大小(X), i, j);X(印第安纳州)= uint8 (255);
使用骨colormap展示新形象。
显示亮度图像(X) colormap骨
额外的快速图像更新的技术
增加的速率CData
一个图像对象的属性更新,优化CData
并设置一些相关图和轴属性:
尽可能使用最小的数据类型。使用一个
uint8
你的图像数据类型将比使用快双
数据类型。设置图像的过程的一部分
CData
财产包括复制图像的矩阵的使用。矩阵的总体规模取决于它的单个元素的大小。使用更小的单个元素(即。,a smaller data type) decreases matrix size, and reduces the amount of time needed to copy the matrix.使用最小可接受的矩阵。
如果图像显示的速度是你的优先级最高,您可能需要图像的大小和质量上妥协。再一次,减少所需的大小减少了时间复制矩阵。
设置限制模式属性(
XLimMode
和YLimMode
)你的轴手册
。如果他们将
汽车
,然后每次一个对象(如图像、线条、补丁等)改变其数据的某些方面,轴必须重新计算其相关属性。例如,如果您指定图像(firstimage);集(gca、“xlimmode”,“手动”,…“ylimmode”、“手动”,……“zlimmode”、“手动”,……“climmode”、“手动”,……“alimmode”、“手动”);
轴不计算任何限制的值之前重新绘制图像。
考虑使用
电影
对象如果你的任务的主要观点就是一系列的图像在屏幕上显示。MATLAB®
电影
直接对象利用底层系统图形资源,而不是执行MATLAB对象代码。这是速度比反复设置一个图像CData
属性,如前所述。