资源描述:
《matlab基本使用方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.读取图像:用imread函数读取图像文件,文件格式可以是TIFF、JPEG、GIF、BMP、PNG等。比如>>f=imread('chestxray.jpg');读进来的图像数据被保存在变量f中。尾部的分号用来抑制输出。如果图片是彩色的,可以用rgb2gray转换成灰度图:>>f=rgb2gray(f);然后可以用size函数看图像的大小>>size(f)如果f是灰度图像,则可以用下面的命令把这个图像的大小赋给变量M和N>>[M,N]=size(f);用whos命令查看变量的属性>>whosf2.显示图像:用imshow显示图像imsho
2、w(f,G)其中f是图像矩阵,G是像素的灰度级,G可以省略。比如>>imshow(f,[100200])图像上所有小于等于100的数值都会显示成黑色,所有大于等于200的数值都会显示成白色。pixval命令可以用来查看图像上光标所指位置的像素值。pixval例如>>f=imread('rose_512.tif');>>whosf>>imshow(f)如果要同时显示两幅图像,可以用figure命令,比如>>figure,imshow(g)用逗号可以分割一行中的多个命令。imshow的第二个参数用一个空的中括号:>>imshow(h,[])可以使
3、动态范围比较窄的图像显示更清楚。1.写图像。用imwrite写图像imwrite(f,'filename')文件名必须包括指明格式的扩展名。也可以增加第三个参数,显式指明文件的格式。比如>>imwrite(f,'patient10_run1.tif','tif')也可以写成>>imwrite(f,'patient10_run1.tif')还可以有其他参数,比如jepg图像还有质量参数:>>imwrite(f,'filename.jpg','quality',q)q是0到100之间的一个整数。对比不同质量的图像效果。用imfinfo命令可以查看
4、一个图像的格式信息,比如>>imfinfobubbles25.jpg可以把图像信息保存到变量中>>K=imfinfo('bubbles25.jpg');>>image_bytes=K.Width*K.Height*K.BitDepth/8;>>compressed_btyes=K.FileSize;>>compression_ratio=image_bytes/compressed_bytes1.数据类型。MATLAB的数据类型包括:double双精度浮点uint8无符号8位整数uint16无符号16位整数uint32无符号32位整数int8
5、有符号8位整数int16有符号16位整数int32有符号32位整数single单精度char字符logical逻辑型(二值)数据类型转换B=data_class_name(A)比如>>C=[1.41.5]>>D=uint8(C)图像类型分为:Intensityimage灰度图Binaryimage二值图Indexedimage索引图RGBimage彩色图在灰度图中每个像素可以是整型、浮点型或者逻辑型。图像类型的像素类型可以转换functiontofromim2uint8uint8logical,uint8,uint16,doubleim2ui
6、nt16uint16logical,uint8,uint16,doublemat2graydoubledoubleim2doubledoublelogical,uint8,uint16,doubleim2bwlogicaluint8,uint16,double比如g=mat2gray(A,[Amin,Amax]);g=mat2gray(A);g=im2double(h);g=im2bw(f,T)其中A是浮点型的图像,Amin和Amax是浮点数的范围,h和f是任意类型的图像,T是分割的阈值。1.数组(向量)索引:创建向量(数组):>>v=[13
7、5791113]用小括号对向量进行索引(取数组中的某个元素):>>v(2)转置(将行向量通过转置变成列向量):>>w=v.'取向量其中的一部分:>>v(1:3)第1个到第3个>>v(2:4)>>v(3:end)第3个到最后一个>>v(1:end)>>v(:)全部>>v(1:2:end)第1个到最后一个,每次增加2>>v(end:-2:1)最后一个到第1个,每次减2其中end总是表示最后一个。>>x=linspace(1,5,10)>>v([145])linspace函数产生一个范围内的平均分布。2.矩阵索引:创建矩阵>>A=[123;456;
8、789]取矩阵中的一个元素>>A(2,3)取矩阵中的一行或者一列>>C3=A(:,3)>>R2=A(2,:)取矩阵中某些行某些列>>T2=A(1:2,1:3)对矩阵