您的位置:首页 > 编程语言 > MATLAB

matlab图像处理的基本操作

2018-02-03 17:49 417 查看
1.imread函数

功能:读取一幅图像

格式:A=imread(filename,fmt)

imread函数用于读取字符串“filename”指定的灰度图像或彩色图像,“fmt”文件的格式。如果该图像文件不再当前目录或是MATLAB函数路径的目录下,就需要指定图像文件在系统中的完整文件路径。如果imread函数在指定的路径下不能找到filename指定的文件,则会试图需找图像文件“filename.fmt”。

imread函数返回数组A表示的是图像数据,如果读取的是灰度图像,则A为一个m*n的二维数组。类似的,如果读取的是彩色图像,则A为一个m*n*3的三维数据。数组的数据类型由图像文件的数据类型决定。对大多数文件格式,彩色图像数据使用RGB颜色空间类型。另外,也可以返回CIELab,ICCLab或CMYK等颜色空间的数据类型。

[X,map]=imread(...):用于读取索引图像,其中用于存索引色图数据,即相关颜色映射表的序号值,map用于存储与该索引色图像相关的颜色映射表。

[...]=imread(filename):表示根据待读取的图像数据是真实像素值或索引色图像的相应颜色映射表的序号而分别采用以上两种调用格式。

[...]=imread(URL,...):用于读取引自Internet URL的图像,URL(Uniform Resource Locator统一资源定位符)要求必须包含协议类型,如http://

[...]=imread(...,Param1,Vall,Param2,Val2,...):针对某些特殊类型的图像读取语句采用其他属性参数。

通常情况下,imread函数读取的大多数数8位的,当把这些图像加载到内存中时,MATLAB就将其存储为uint8类型。

此外,MATLAB还支持16位的PNG和TIFF图像。当用户读取这类图像时,MATLAB就 将其存储为uint16类型。而对于索引图像来说,图像矩阵的本身为uint8或uint16.imread函数仍将颜色映射表读取并存储在一个双精度浮点类型的矩阵中。

2.imwrite函数

功能:实现图像文件的写入

调用格式:imwrite(A,filename,fmt)

imwrite函数把图像数据A写入到由filename指定的输出文件中,存储格式由fmt指定。使用与imread类似。

对于灰度图像来说,A是一个m*n的数组,对于彩色图像来说A是一个m*n*3的三维数组。如果把fmt指定为TIFF,则imwrite函数可以接受m*n*4的三维数组。

imwrite(X,map,filename,fmt):用于写入索引色图像。X表示索引色图像数据数组,map表示其关联的颜色映射表,filename为fmt格式de 输出文件。如果X为uint8或uint16类型的数组,imwrite函数采用uint8(X-1)表示数组中的值并写入到相应的输出文件中。参数map必须是有效的MATLAB颜色用舌表。

imwrite(...,filename):在写入图像到文件时,从filename的扩展名推断图像的文件格式,该扩展名要求必须是MATLAB所支持的类型值。

imwrite(...,Param1,Vall,Param2,Val2,...):用户指定HDF、JPEG、PBM、PGM、PNG、PPM和TIFF等类型输出文件的不同参数。如写入一个HDF文件时,可以指定输出图像的质量、压缩性和写入模式,而写入JPEG文件时,则可以指定像素位数、注释、模式和质量等。

另外,当使用imwrite保存图像时,MATLAB默认的保存方式是将其简化为uint8的数据类型。与读取图像文件类型类似,MATLAB在文件保存时还支持16位的PNG图像和TIFF图像。当用户保存这类文件时,MATLAB就将其存储为uint16类型。

3.imshow函数

功能:实现图像的显示

调用格式:

1)imshow(I):用于显示灰度级图像I

2)imshow(I,[low,high]):表示把图像I作为一幅灰度图像来表示,[low,high]指定了图像I的数据范围。图像中所有灰度级不超过low的像素显示为黑色,灰度级不低于high的像素显示为白色,灰度级处于限定范围内的像素按照其原来的的灰度级显示。如果限定范围为空,inshow函数默认的获取low和high的值分别为min(I(:))和max(I(:)),显示原则同上。

imshow(RGB);显示真彩色(RGB)图像。

imshow(BW):用于显示BW的图像

imshow(X,map):用于显示索引色图像X,map是与其相关颜色映射表

imshow(filename):用于显示存储的文件格式filename

himage=imshow(...):himage表示被显示图像的句柄。

imshow(...,param1,vall,param2,vall,...):用于显示指定其参数名及参数值的图像。

在MATLAB中除了imshow函数可以用于图像显示外,image函数也可以用于彩色图像的显示。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  MATLAB