imshow,imagesc,image区别与认识

Refer from  http://blog.sciencenet.cn/blog-1003537-715089.html

<1>理论介绍

imagesc属于图像缩放函数

具体说一些例子:
要显示一副灰度图像,可以调用函数 imshow 或 imagesc (即 
imagescale,图像缩放函数)

(1) imshow 函数显示灰度图像
使用 imshow(I) 或 使用明确指定的灰度级书目:imshow(I,32)

由于Matlab自动对灰度图像进行标度以适合调色板的范围,因而可以使用自定义
大小的调色板。其调用格式如下:
imshow(I,[low,high])
其中,low 和 high 分别为数据数组的最小值和最大值。

(2) imagesc 函数显示灰度图像
下面的代码是具有两个输入参数的 imagesc 函数显示一副灰度图像
imagesc(1,[0,1]);
colormap(gray);
imagesc 函数中的第二个参数确定灰度范围。灰度范围中的第一个值(通常是0),
对应于颜色映象表中的第一个值(颜色),第二个值(通常是1)则对应与颜色映象表
中的最后一个值(颜色)。灰度范围中间的值则线型对应与颜色映象表中剩余的值(颜色)。

在调用 imagesc 函数时,若只使用一个参数,可以用任意灰度范围显示图像。在该
调用方式下,数据矩阵中的最小值对应于颜色映象表中的第一个颜色值,数据矩阵中的最大
值对应于颜色映象表中的最后一个颜色值。

5.3 RGB 图像及其显示
(1) image(RGB) 
不管RGB图像的类型是double浮点型,还是 uint8 或 uint16 无符号整数型,Matlab都
能通过 image 函数将其正确显示出来。

RGB8 = uint8(round(RGB64×255)); % 将 double 浮点型转换为 uint8 无符号整型
RGB64 = double(RGB8)/255; % 将 uint8 无符号整型转换为 double 浮点型
RGB16 = uint16(round(RGB64×65535)); % 将 double 浮点型转换为 uint16 无符号整型 
RGB64 = double(RGB16)/65535; % 将 uint16 无符号整型转换为 double 浮点型

(2) imshow(RGB) 参数是一个 m×n×3 的数组

5.4 二进制图像及其显示

(1) imshow(BW)
在 Matlab 7.0 中,二进制图像是一个逻辑类,仅包括 0 和 1 两个数值。像素 0 显示
为黑色,像素 1 显示为白色。
显示时,也可通过NOT(~)命令,对二进制图象进行取反,使数值 0 显示为白色;1 显示
为黑色。 
例如: imshow(~BW)

(2) 此外,还可以使用一个调色板显示一副二进制图像。如果图形是 uint8 数据类型,
则数值 0 显示为调色板的第一个颜色,数值 1 显示为第二个颜色。
例如: imshow(BW,[1 0 0;0 0 1])

<2>实际测试

测试源代码如下:
%image test 三个图像通道
A = imread('testjpg.jpg');
x1 = A(:,:,1);
x2 = A(:,:,2);
x3 = A(:,:,3);
figure(1)
subplot(2,2,1),imshow(A)
subplot(2,2,2),imshow(x1)
subplot(2,2,3),imshow(x2)
subplot(2,2,4),imshow(x3)
figure(2)
subplot(2,2,1),image(A)
subplot(2,2,2),image(x1)
subplot(2,2,3),image(x2)
subplot(2,2,4),image(x3)
figure(3)
subplot(2,2,1),imagesc(A)
subplot(2,2,2),imagesc(x1)
subplot(2,2,3),imagesc(x2)
subplot(2,2,4),imagesc(x3)


用imagesc显示

用image显示

用imshow显示

图1为imagesc的效果,图2为image的效果,图3为imshow的效果


  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MATLAB的image函数用于显示图像数据。可以使用不同的语法形式来调用image函数。其中一种常见的语法是image(C),其中C是一个矩阵,表示图像的像素值。另一种语法是image(x, y, C),其中x和y是表示图像的坐标轴,C是像素值矩阵。还可以使用其他参数来设置图像的属性,如颜色映射和坐标轴范围。可以使用colorbar函数添加一个右侧的条带来显示颜色映射。下面是一个示例: ```matlab N = randi(\[0, 255\], 6, 6); % 生成随机矩阵 image(N); % 显示图像 colorbar; % 添加右侧的条带 ``` 这个示例中,我们生成了一个6x6的随机矩阵N,并使用image函数将其显示为图像。然后使用colorbar函数添加了一个右侧的条带来显示颜色映射。 #### 引用[.reference_title] - *1* *2* [Matlab中image函数用法](https://blog.csdn.net/jk_101/article/details/111950411)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [matlab画图常用函数imageimagescimshow区别](https://blog.csdn.net/qq_45241385/article/details/124900563)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值