资源描述:
《MATLAB部分函数使用方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
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命令查看变
2、量的属性 >>whosf 显示图像:用imshow显示图像 imshow(f,G) 其中f是图像矩阵,G是像素的灰度级,G可以省略。比如 >>imshow(f,[100200]) 图像上所有小于等于100的数值都会显示成黑色,所有大于等于200的数值都会显示成白色。pixval命令可以用来查看图像上光标所指位置的像素值。 pixval 例如 >>f=imread('rose_512.tif'); >>whosf >>imshow(f) 如果要同时显示两幅图像,可以用figur
3、e命令,比如 >>figure,imshow(g) 用逗号可以分割一行中的多个命令。imshow的第二个参数用一个空的中括号: >>imshow(h,[]) 可以使动态范围比较窄的图像显示更清楚。 写图像。用imwrite写图像 imwrite(f,'filename') 文件名必须包括指明格式的扩展名。也可以增加第三个参数,显式指明文件的格式。比如 >>imwrite(f,'patient10_run1.tif','tif') 也可以写成 >>imwrite(f,'patien
4、t10_run1.tif') 还可以有其他参数,比如jepg图像还有质量参数: >>imwrite(f,'filename.jpg','quality',q) q是0到100之间的一个整数。对比不同质量的图像效果。用imfinfo命令可以查看一个图像的格式信息,比如 >>imfinfobubbles25.jpg 可以把图像信息保存到变量中 >>K=imfinfo('bubbles25.jpg'); >>image_bytes=K.Width*K.Height*K.BitDepth/8; >>
5、compressed_btyes=K.FileSize; >>compression_ratio=image_bytes/compressed_bytes 数据类型。MATLAB的数据类型包括: double双精度浮点 uint8无符号8位整数 uint16无符号16位整数 uint32无符号32位整数 int8有符号8位整数 int16有符号16位整数 int32有符号32位整数 single单精度 char字符 logical逻辑型(二值) 数据类型转换 B=data_class
6、_name(A) 比如 >>C=[1.41.5] >>D=uint8(C) 图像类型分为: Intensityimage灰度图 Binaryimage二值图 Indexedimage索引图 RGBimage彩色图 在灰度图中每个像素可以是整型、浮点型或者逻辑型。图像类型的像素类型可以转换 functiontofrom im2uint8uint8logical,uint8,uint16,double im2uint16uint16logical,uint8,uint16,double
7、 mat2graydoubledouble im2doubledoublelogical,uint8,uint16,double im2bwlogicaluint8,uint16,double 比如 g=mat2gray(A,[Amin,Amax]); g=mat2gray(A); g=im2double(h); g=im2bw(f,T) 其中A是浮点型的图像,Amin和Amax是浮点数的范围,h和f是任意类型的图像,T是分割的阈值。 数组(向量)索引:创建向量(数组): >>v=[1357
8、91113] 用小括号对向量进行索引(取数组中的某个元素): >>v(2) 转置(将行向量通过转置变成列向量): >>w=v.' 取向量其中的一部分: >>v(1:3)第1个到第3个 >>v(2:4) >>v(3:end)第3个到最后一个 >>v(1:end) >>v(:)全部 >>v(1:2:e