matlab 图像的基本操作

本文详细介绍了使用Matlab进行图像处理的基本操作,包括图像的显示、读取、存取、转换及写入等核心功能,并提供了实用的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(1)显示:

image()可以直接显示8位数图像,但8位图像和double型数据在image()中意义是不一样的。

二值图可用uint8或double来储存;

索引图像uint8和double型显示方法没区别。但8位数据矩阵的值和颜色种类之间有一个数值为1的偏差。调用格式 image(x); colormap(map);

对于灰度图像,uint8范围0~255,double范围0~1,二者转换方式: i8 = uint(round(i64*255)); i64 = double(i8)/255 ;

imshow(f,[low,high]) 所有小于low显示黑色,所有大于high显示白色;

imshow(f,G) g表示灰度级数;

imshow(f,[]) 解决uint8范围0~255转换为0~1;

(2)读取:

[r宽度,c高度,d]=imread()根据文件图像种类进行不同处理。灰色图像存入8位矩阵中,把色图矩阵转换为双精度矩阵;rgb图像会存入8位的rgb矩阵中。

matlab读入图像是uint8类型,而在矩阵中使用的是double,所以需要转换。im2double(),im2uint8(),im2uint16();

(3)存取:

matlab默认将图片存储double型;也支持uint8或uint16,优势在于节省空间。

mat2gray()把double型数组转换到0~1之间,将矩阵转换成灰度图像得出double格式。

isgray()函数判断矩阵是否为图像数据矩阵。

(4)转换:

gray2ind() ind2gray() [x,map]=rgb2ind() ind2rgb(x,map) rgb2gray() im2bw(rgb,level)阈值

(5)写入:

imwrite(I,’snight.jpg’) 或imwrite(I,’snight’,’jpg’)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值