matlab显示 图注,Matlab读和写图像需要注意的问题

(本人注:尤其是最后一行的imwrite,参数缺一不可。)

1.读入图片:imread('filename')

如:f=imread('chest.jpg');

注意:1.括号内为单引号,注意与C区分

2.命令行最后为冒号,否则会吃苦头的哦,呵呵

3.保证图片chest.jpg在当前目录下,否则要给出图片的完全路径

如:f=imread('D:\myimages\chest.jpg');

4.filename后要跟图片格式后缀。

2.显示图片:imshow(f,[ ])

注:上述为推荐使用方式,即使用imshow(f),也可以,二者之间的区别可以从下面两幅图的显示上看出

imshow(f)imshow(f,[ ])

第一幅图片的灰度级较小,而,通过imshow(f,[ ])后它的灰度级范围得到拉伸。

imshow(f,[ ])是imshow(f,[ min  high])的特例,即将f的实际最小对应到min,而其最大灰度级对应到max。

而对于f中小于等于min的灰度级显示为黑色,大于等于max的灰度级显示为白色。

3.写入图片:imwrite(f,'filename')

其中对于JEPG格式的图片有

imwrite(f,'filename.jpg','quality',q)               0<=q<=100

下面看一个简单的小程序:

for q=0:5:100

filename=sprintf('series_%3d.jpg',q);

imwrite(f,filename,'quality',q);

end

此程序写入quality=0,5,10.......共21种quality的图片,下面看下quality分别为0、5、15、25、50以及原图的显示

其中对于TIF格式的图片有:

imwrite(g,'filename.tif','compression','parameter','resolution',[colres   rowres])

注:compression:压缩比率

parameter:none/packbits/ccitt

resolution:分辨率

例如:原始图片为:jpg格式,200dpi,450*450

由450/200=2.25,知 宽*高=2.25*2.25,要使其变为宽*高=1.5*1.5,不损失pixels,知compression为none

resolustion=200*2.25/1.5=300

于是:  imwrite(f,'jinpeng.tif','compression','none','resolution',[300 300])

也可以如下显示:

res=round(200*2.5/1.5);

imwrite(f,'jinpeng.tif','compression','none','resolution',res);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值