• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

matlab——imread()和imshow()

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

imread()函数

使用格式:
A = imread(filename) %从 filename 指定的文件读取图像,并从文件内容推断出其格式。如果 filename 为多图像文件,则 imread 读取该文件中的第一个图像。
A = imread(filename,fmt) %另外还指定具有 fmt 指示的标准文件扩展名的文件的格式。如果 imread 找不到具有 filename 指定的名称的文件,则会查找名为 filename.fmt 的文件。

imshow()函数

imshow(I) %在图窗中显示灰度图像 I。imshow 使用图像数据类型的默认显示范围,并优化图窗、坐标区和图像对象属性以便显示图像。
imshow(I,[low high]) %显示灰度图像 I,以二元素向量 [low high] 形式指定显示范围。
imshow(I,[]) %显示灰度图像 I,根据 I 中的像素值范围对显示进行转换。imshow 使用 [min(I(????) max(I(????)] 作为显示范围。imshow 将 I 中的最小值显示为黑色,将最大值显示为白色。
imshow(RGB) %在图窗中显示真彩色图像 RGB。
imshow(BW) %在图窗中显示二值图像 BW。对于二值图像,imshow 将值为 0(零)的像素显示为黑色,将值为 1 的像素显示为白色。
imshow(X,map) %显示带有颜色图 map 的索引图像 X。颜色图矩阵可以具有任意行数,但它必须恰好包含 3 列。每行被解释为一种颜色,其中第一个元素指定红色的强度,第二个元素指定绿色的强度,第二个元素指定蓝色的强度。颜色强度可以在 [0, 1] 区间中指定。
imshow(filename) %显示存储在由 filename 指定的图形文件中的图像。
imshow(___,Name,Value) %使用名称-值对组控制运算的各个方面来显示图像。

有关显示的问题

imread() 返回的图像类型是uint8类型, 这时用imshow显示图像的时候, imshow会认为输入矩阵的范围在0-255, 如果imshow的参数为double类型的,那么imshow认为输入矩阵的值为0-1.

很多时候需要将图像转换为double类型的, 但是转换以后直接使用imshow显示的是一片白色, 是因为当imshow显示图像的时候, 会认为double类型的图像矩阵的范围在0-1, 超过1的像素值当作1处理, 这样就是几乎所有的像素都是白色。

解决方法:
imshow(I/256); % 将图像矩阵转化到0-1之间(可用于处理彩色图像的显示)
imshow(I,[]); % 自动调整数据的范围以便于显示 (可用于处理灰度图像)



imshow(I/256);


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap