在上一篇文章中,我们可以通过imfinfo()函数获取图像的详细信息。在知道图像文件的信息后,我们需要将图像读入MATLAB工作空间,以便对图像数据进行操作。
接下来简单介绍一下MATLAB图像处理工具箱中的读写操作和图像显示操作,即imread()、imwrite()和imshow()函数。
00-1010i=imread (filename,fmt):以filename和fmt格式读入图像文件;
[X,map]=imread(filename,fmt):读取图像文件,以索引图像的形式表示为X矩阵和map矩阵;
I=imread(URL):读入网络图片,输入的网址必须以“http://”开头。
00-1010 imwrite (a,filename):将表示图像的矩阵A写入磁盘,并命名为filename,其中可以包含保存路径;
Im (x,map,filename):将表示索引图像的矩阵x和map写入磁盘并命名为filename;
Imwrite(A,filename,fmt):确定图像文件的存储格式,如' png ',' BMP '等。
imread()函数的调用格式:
imshow(I (I):显示矩阵I表示的图像;Imshow(filename):通过路径和图像名称直接显示图像文件;
Im (I,RI):显示矩阵I表示的图像,调整图像比例。RI可以作为结构,然后定义X、Y方向的比例,达到拉伸或挤压图像的效果;
Im (X,map):显示由X和map矩阵表示的索引图像;
Im (I,[低高]):显示图像并指定图像像素值的范围,低以下的像素值变为低,高以上的像素值变为高;imshow支持的数据(即像素值)包括两种类型:double和unit8。double的值介于0和1之间,unit8的值介于0和255之间。
00-1010代码:
图;imshow(I1);
I1=im read(' c :/IR _ 5 . png ');
[X map]=im read(' c :/IR _ 5 . png ');
I2=im read(' https://ss0 . BD static.com/70 cfvhsh _ q1ynxgkpowk1hf 6 hy/it/u=3762055337,1151660603fm=11gp=0 . jpg ';
imwrite(I1,' pic _ 1 . png ');
图(1);imshow(I1);
图(2);im show(' pic _ 1 . png ');
图(3);im show(I2);
i3=RGB 2 gray(I2);
图(6);imshow(I3,[0 234]);
图(7);imshow(I3,[]);
图(8);imshow(I3,[40 100]);
图像显示效果:
图1,可以显示矩阵I1表示的图像。
图2,保存的图像可以通过文件名显示。
图3,可以显示网络图片。
图6,灰度图像显示,其自身颜色范围为[0.255],这里将其范围限定为[0.234],图像变化不明显。
图7,其范围定义为[],即[0 255],是一个正常的灰色图像。
图8,这里把它的范围定义为[],也就是[40 ^ 100],因为范围大大缩小,图像变化明显。
最后,感谢大家耐心阅读!