Matlab中imagesc用法
来源:https://ww2.mathworks.cn/help/matlab/ref/imagesc.html?searchHighlight=imagesc&s_tid=doc_srchtitle
imagesc
显示使用经过标度映射的颜色的图像
语法
说明
imagesc(
将数组 C
)C
中的数据显示为一个图像,该图像使用颜色图中的全部颜色。C
的每个元素指定图像的一个像素的颜色。生成的图像是一个 m
×n
像素网格,其中 m
和 n
分别是 C
中的行数和列数。这些元素的行索引和列索引确定了对应像素的中心。
imagesc(___,
使用一个或多个名称-值对组参数指定图像属性。您可以在上述语法中的任何输入参数组合后指定名称-值对组参数。如需图像属性和说明的列表,请参阅 Image 属性。Name,Value
)
imagesc(___,
指定映射到颜色图的第一个和最后一个元素的数据值。将 clims
)clims
指定为 [cmin cmax]
形式的二元素向量,其中小于或等于 cmin
的值映射到颜色图中的第一种颜色,大于或等于 cmax
的值映射到颜色图中的最后一种颜色。在名称-值对组参数后指定 clims
。
imagesc(
将在由 ax
,___)ax
指定的坐标区中而不是当前坐标区 (gca
) 中创建图像。指定坐标区作为第一个输入参数。
示例
显示矩阵数据的图像
创建矩阵 C。显示 C 中数据的图像。向图添加颜色栏以显示当前颜色图。默认情况下,imagesc
色阶颜色范围以便图像使用颜色图中的所有颜色,其中 C
中的最小值映射到颜色图中的第一种颜色,最大值映射到最后一种颜色。
C = [0 2 4 6; 8 10 12 14; 16 18 20 22];
imagesc(C)
colorbar
控制图像位置
放置图像,使其位于 x 轴上的 5 和 8 之间及 y 轴上的 3 和 6 之间。
x = [5 8];
y = [3 6];
C = [0 2 4 6; 8 10 12 14; 16 18 20 22];
imagesc(x,y,C)
请注意,对应于 C(1,1)
的像素在点 (5,3) 上居中显示。对应于 C(3,4)
的像素在点 (8,6) 上居中显示。imagesc
在这两个点之间确定图像其余部分的位置和方向。
控制数据值到颜色图的颜色映射
将 C
创建为数据值的数组。创建 C
的图像并设置颜色范围,使 4 或更小的值映射到颜色图中的第一种颜色,18 或更大的值映射到颜色图中的最后一种颜色。显示颜色栏以说明数据值如何映入颜色图。
C = [0 2 4 6; 8 10 12 14; 16 18 20 22];
clims = [4 18];
imagesc(C,clims)
colorbar
创建后修改图像
创建一个图像并返回图像对象 im
。然后,通过设置图像对象的 AlphaData
属性使图像半透明。
C = [1 2 3; 4 5 6; 7 8 9];
im = imagesc(C);
im.AlphaData = .5;
向三维视图中的坐标区添加图像
创建一个曲面图。然后,将一个图像添加在曲面下。imagesc
在 xy 平面中显示该图像。
Z = 10 + peaks;
surf(Z)
hold on
imagesc(Z)
输入参数
C
- 图像颜色数据
向量或矩阵
图像颜色数据,指定为向量或矩阵。C
的每个元素定义图像一个像素的颜色。C
的元素映射到相关联的坐标区的颜色图中的颜色。C
中的最小值映射到颜色图中的第一种颜色,最大值映射到最后一种颜色。NaN
元素的行为未定义。
注意
如果您将 C
指定为 m
×n
×3 数组,则 imagesc
函数将图像解释为真彩色 (RGB) 图像。imagesc
不重新缩放真彩色图像的像素值。在调用 imagesc
之前,请使用 rescale
函数缩放真彩色像素值。
要改用 imagesc
函数的低级版本,请将 CData
属性设为名称-值对组。例如,imagesc('CData',C)
。
在数据类型间转换
要将灰度图像数据从整数类型转换为 double
类型,请增加 1。例如,如果 X8
为 uint8
类型的灰度图像数据,则使用以下语法将其转换为 double
类型:
X64 = double(X8) + 1;
要将灰度图像数据从 double
类型转换为整数类型,请减去 1 并使用 round
确保所有值都为整数。例如,如果 X64
为 double
类型的灰度图像数据,则使用以下语法将其转换为 uint8
:
X8 = uint8(round(X64 - 1));
数据类型: 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
为三维数组,则m
和n
为前两个维度。C
的其余元素的中心均匀分布在这两点之间。每个像素的宽度由以下表达式确定:
(x(2)-x(1))/(size(C,2)-1)
如果
x(1)
>x(2)
,则图像左右翻转。标量 - 会以此位置作为
C(1,1)
的中心,并使后面的每个元素相隔一个单位。
要改用 imagesc
函数的低级版本,请将 XData
属性设为名称-值对组。例如,imagesc('XData',x,'YData',y,'CData',C)
。
您无法在以交互方式将图像平移或缩放到图像的 x 轴或 y 坐标轴范围以外,除非设置的坐标轴范围界限已超出图像边界。如果这些轴范围超出边界,则无此类限制。如果其他对象(例如,线条)占用坐标区,并延伸到图像边界以外,您可以平移或缩放到其他对象的边界,但不能越过边界。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
y
- 沿着 y 轴放置
[1 size(C,1)]
(默认) | 二元素向量 | 标量
沿着 y 轴放置,以下列形式之一指定:
二元素向量 - 将第一个元素用作
C(1,1)
的中心位置,将第二个元素用作C(m,n)
的中心位置,其中[m,n] = size(C)
。如果C
为三维数组,则m
和n
为前两个维度。C
的其余元素的中心均匀分布在这两点之间。每个像素的高度由以下表达式确定:
(y(2)-y(1))/(size(C,1)-1)
如果
y(1)
>y(2)
,则图像上下翻转。标量 - 会以此位置作为
C(1,1)
的中心,并使后面的每个元素相隔一个单位。
要改用 imagesc
函数的低级版本,请将 YData
属性设为名称-值对组。例如,imagesc('XData',x,'YData',y,'CData',C)
。
您无法在以交互方式将图像平移或缩放到图像的 x 轴或 y 坐标轴范围以外,除非设置的坐标轴范围界限已超出图像边界。如果这些轴范围超出边界,则无此类限制。如果其他对象(例如,线条)占用坐标区,并延伸到图像边界以外,您可以平移或缩放到其他对象的边界,但不能越过边界。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
clims
- 颜色范围
[cmin cmax]
格式的二元素向量
颜色范围,指定为 [cmin cmax]
形式的二元素向量,其中 cmax
大于 cmin
。C
中小于或等于 cmin
的值映射到颜色图中的第一种颜色。大于或等于 cmax
的值将映射到颜色图中的最后一种颜色。介于 cmin
和 cmax
之间的值以线性方式映射到颜色图。
如果您指定颜色范围,则 imagesc
函数将坐标区的 CLim
属性设置为指定的值。如果您不指定颜色范围,则 imagesc
将坐标区的 CLim
属性设置为 C
中的最小值和最大值。
ax
- Axes
对象
Axes
对象
Axes
对象。如果您不指定 Axes
对象,则 imagesc
使用当前坐标区。
名称-值对组参数
指定可选的、以逗号分隔的 Name,Value
对组参数。Name
为参数名称,Value
为对应的值。Name
必须放在引号中。您可采用任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN
所示。
示例: imagesc([1 2 3],'AlphaData',0.5)
会显示半透明图像。
此处所列的属性只是一部分图像属性。有关完整列表,请参阅 Image 属性。
'AlphaData'
- 透明度数据
1
(默认) | 标量 | 大小与 CData
相同的数组
透明度数据,指定为以下格式之一:
标量 - 在整个图像中使用一致的透明度。
大小与
CData
相同的数组 - 对每个图像元素使用不同的透明度值。
AlphaDataMapping
属性控制 MATLAB 如何解释 alpha 数据透明度值。
示例: 0.5
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
'AlphaDataMapping'
- AlphaData
值的解释
'none'
(默认) | 'scaled'
| 'direct'
AlphaData
值的解释,指定为下列值之一:
'none'
- 将值解释为透明度值。值 1 或更大的值表示完全不透明,值 0 或更小的值表示完全透明,介于 0 和 1 之间的值表示半透明。'scaled'
- 将值映射到图窗的 alphamap 中。坐标区的最小和最大 alpha 范围确定分别映射到 alphamap 中第一个和最后一个元素的 alpha 数据值。例如,如果 alpha 范围是[3 5]
,则小于或等于3
的 alpha 数据值映射到 alphamap 中的第一个元素。大于或等于5
的 alpha 数据值映射到颜色图中的最后一个元素。坐标区的ALim
属性包含 alpha 范围。图窗的Alphamap
属性包含 alphamap。'direct'
- 将值解释为图窗的 alphamap 的索引。带小数部分的值向下舍取为最接近的整数:如果值为
double
或single
类型,则小于或等于 1 的值将映射到 alphamap 中的第一个元素。等于或大于 alphamap 的长度的值映射到 alphamap 中的最后一个元素。如果值的类型为整数,则 0 或更小的值映射到 alphamap 中的第一个元素。等于或大于 alphamap 的长度的值映射到 alphamap 中的最后一个元素(或者最大可为该类型的范围限值)。整数类型有
uint8
、uint16
、uint32
、uint64
、int8
、int16
、int32
和int64
。如果值为
logical
类型,则值 0 将映射到 alphamap 中的第一个元素,值 1 将映射到 alphamap 中的第二个元素。
详细信息
高级与低级版本
imagesc
函数有两个版本:高级版本和低级版本。如果您使用的 imagesc
将 'CData'
作为输入参数,则您使用的是低级版本。否则,您使用的是高级版本。
imagesc
的高级版本在绘图前调用 newplot
并设置以下坐标区属性:
imagesc
函数的低级版本不调用 newplot
且不设置这些坐标区属性。
对这两个版本,imagesc
函数进行如下设置:
将
Image
对象的CData
属性设置为C
中的值。将
Image
对象的CDataMapping
属性设置为'scaled'
。将
Axes
对象的CLim
属性设置为C
中的最小值和最大值,除非您指定clims
输入参数。
提示
扩展功能
GPU 数组
通过使用 Parallel Computing Toolbox 在图形处理单元 (GPU) 上运行来加快代码执行。
用法说明和限制:
此函数接受 GPU 数组,但不在 GPU 上运行。
有关详细信息,请参阅Run MATLAB Functions on a GPU (Parallel Computing Toolbox)。
分布式数组
使用 Parallel Computing Toolbox 在群集的组合内存中对大型数组进行分区。
用法说明和限制:
此函数在分布式数组上运行,但在客户端 MATLAB 中执行。
有关详细信息,请参阅Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox)。
另请参阅
函数
属性
主题
Matlab中imagesc用法的更多相关文章
- 向量与矩阵的范数及其在matlab中的用法(norm)
一.常数向量范数 \(L_0\) 范数 \(\Vert x \Vert _0\overset{def}=\)向量中非零元素的个数 其在matlab中的用法: sum( x(:) ~= 0 ) \(L_ ...
- interp1一维数据插值在matlab中的用法
转载:https://ww2.mathworks.cn/help/matlab/ref/interp1.html?s_tid=srchtitle#btwp6lt-2_1 interp1 一维数据插值( ...
- matlab中set用法
来源:https://www.cnblogs.com/sddai/p/5467500.html 1.MATLAB给每种对象的每一个属性规定了一个名字,称为属性名,而属性名的取值成为属性值.例如,Lin ...
- Matlab中ismember用法
>> a = magic(3) a = 8 1 6 3 5 7 4 9 2 >> ismember(a,3) ans = 0 0 0 1 0 0 0 0 0 >> ...
- RBF、GRNN 和 PNN 神经网络在Matlab中的用法
一.RBF神经网络 RBF神经网络概述 径向基函数神经网络 与 BP 神经网络的区别在于训练过程--其参数初始化具有一定方法,并非随机,隐含层的末尾使用了径向基函数,它的输出经过加权和得到 LW2.1 ...
- Matlab中image、imagesc和imshow函数用法解析
来源:https://blog.csdn.net/zhuiyuanzhongjia/article/details/79621813 1.显示RGB图像 相同点:这三个函数都是把m*n*3的矩阵中的数 ...
- matlab中patch函数的用法
http://blog.sina.com.cn/s/blog_707b64550100z1nz.html matlab中patch函数的用法——emily (2011-11-18 17:20:33) ...
- matlab中 hold on 与hold off的用法
matlab中 hold on 与hold off的用法 hold on 是当前轴及图形保持而不被刷新,准备接受此后将绘制 hold off 使当前轴及图形不在具备被刷新的性质 hold on 和ho ...
- matlab中norm与svd函数用法
格式:n=norm(A,p) 功能:norm函数可计算几种不同类型的矩阵范数,根据p的不同可得到不同的范数 以下是Matlab中help norm 的解释: NORM Matrix or vector ...
随机推荐
- guzzle下载图片(laravel+vue)
先再laravel安装guzzle扩展包:composer require guzzlehttp/guzzle 之后再控制器操作: use GuzzleHttp\Client; //远程api数据的获 ...
- 程序员软件开发最好的IDE集成工具eclipse各个版本的详细介绍。详细介绍,送给初学者的朋友
对于刚接触软件开发的初学者,在下载eclipse时,对官网上面提供的各种版本的选择犹豫不决.下面将对常用的几个版本进行介绍. Eclipse版本 Eclipse Standard 该版本是eclips ...
- android开发之java JDK环境变量配置的信息代码 附详细教程。
java环境变量配置: [用户变量]class_path .;%JAVA_HOME%\lib\tools;%JAVA_HOME%\jre PATH ;%JAVA_HOME%\ ...
- Python Embedded
文档 https://docs.python.org/3/extending/index.html https://www.codeproject.com/articles/11805/embeddi ...
- 手机预览本地html
下载nginx,地址http://nginx.org/en/docs/windows.html 解压后替换html中内容即可 在浏览器输入http://localhost/即可预览 或者换成ip ...
- wfuzz 安装
wfuzz 安装 win10 下的wfuzz安装 fuzz下载 https://github.com/xmendez/wfuzz 安装遇到的问题 0x1报错 解决方法: 更新pip python -m ...
- 【API进阶之路】用API打造一条自动化内容生产流水线
摘要:搞定了内容审核之后,我又把抓取工具.内容审核API.文本摘要生成API串联在一起,从抓到审再到编,建立了一条自动化的内容生产流水线,编辑团队只需要做优质内容的推荐就可以了. 上周,运营部将官网上 ...
- ajax之---上传文件
“伪”ajax向后台提交文件 <iframe style="display: none" id="iframe1" name="i ...
- 回归 | js实用代码片段的封装与总结(持续更新中...)
上一次更博还是去年10月28号了,截至今天已经有整整4个月没有更新博客了,没更新博客不是代表不学了,期间我已经用vue做了两个项目,微信小程序做了一个项目,只是毕竟找到工作了,想偷偷懒,你懂的. ...
- 深入了解几种IO模型(阻塞非阻塞,同步异步)
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/zk3326312/article/details/79400805一般来说,Linux下系统IO主要 ...