2. MATLAB 图像处理
在MATLAB中,图像文件的读取、写入及显示等都可通过调用函数来实现。常见的函数有:
1
整理课件
表1(续)图像文件的读写与显示函数
n
整理课件
于显示可以通过imread函数
读取的图形文件的图像。该图像必须在
当前目录或 MATLAB目录下。
subimage和subplot函数结合使用可以在同一窗
口中显多幅图像,即使它们的图像类型不同。
整理课件
subimage()语法格式如下:
subimage(X,map):显示索引图像。
subimage(I):显示灰度图像。
subimage(RGB):显示真彩图像RGB。
例:在同一个窗口中显示两幅图像,其中一幅是索引
图像,文件名为‘’;另一幅是RGB图像,
文件名‘’,并进行标注。
整理课件
[x,map]=imread(‘woman,mat’);
[x,map]=imread(‘’);
整理课件
MATLAB 中的图像类型
图像处理工具箱支持的图像分为四个基本类型:
索引图像、灰度图像、二值图像和RGB图像。
索引图像:索引图像包括一个数据矩阵(I)和一个颜 色影像表矩阵(Map)。Map矩阵是一个3列若干行的数据阵列,其每一行分别表示红色、绿色和蓝色的颜色值,其值由[0,1]之间的浮点值构成。图像中的像素颜色由数据矩阵I作为索引指向矩阵Map进行索引。
整理课件
例如:数据矩阵中的值1指向颜色矩阵Map中的第一行,2指向第二行等。
颜色矩阵表通常和索引图像存储在一起。当用户调用函数imread 时,MATLAB自动将颜色映射表与图像同时加载。颜色映射表可以使用属性CDataMapping来选择,也可以由用户自定义,如不选择即为默认值。
索引图像:
整理课件
显示一幅索引图像的代码:
image(I);
colormap(map)
索引图像:
例:
整理课件
灰度图像是一个数据矩阵I,每个元素代表一个像素,I的数据表示在一定范围内的灰度值。I可以是双精度浮点型,其值域为[,];也可以是unit8类型,其值域为[0,256]。
代码显示一幅灰度图像:
imagesc(I,[0,256]);
colormap(gray);
例:将灰度图像‘’的256灰度级的灰度图像和
64灰度级的灰度图像显示在同一个窗口中。
两条语句实现显示功能
灰度图像:
整理课件
整理课件
图像只包含一个由0和1构成的矩阵,可以保存为双精度double或unit8类型的数组。其显示方式与灰度或索引图像类似。
RGB图像:
RGB图像在MATLAB中存储为一个n*m*3的三维数据数组。数组中的元素定义了每一个像素的红、绿、蓝颜色值。因此像素的颜色由保存在像素位置上的红、绿、蓝的强度值的组合来确定。数组可以是双精度浮点型或unit8类型的数组。n、m分别为图像的行列数。
二值图像:
整理课件
例:RGB=imread(‘’);
image(RGB);
用代码显示一幅RGB图像:
image(RGB)
整理课件
MATLAB有对四种基本类型的转换函数。
在MATLAB中,各种图像类型之间的转换关系如图:
索引图像
灰度图像
真彩色图像
二值图像
数据矩阵
整理课件
例:将索引图像“woman”转换为灰度图像,在一
个窗口中显示两幅图像并进行标注。
索引图像转换为灰度图像的函数ind2gray():
其语法格式为:
I=ind2gray(X,map):
将具有颜色图map的索引图像X转换为灰度图像I,X可以是双精度型或unit8型,I是双精度型。
整理课件
索引图像转换为RGB图像的函数ind2rgb( )
其语法格式为:
RGB=ind2rgb(X,map):
将具有颜色图map的索引图像X转换为彩色图像RGB。
整理课件
RGB图像转换为索引图像的函数rgb2ind( ):
其语法格式有五种:
[X,map]=rgb2ind(RGB):直接将RGB图像转换为具
《matlab实》 来自淘豆网m.daumloan.com转载请标明出处.