数字图像处理灰度变换与空间域matlab

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学号: 0000000000 姓名:0000000

实验一灰度变换与空间域滤波

一.实验目的及要求

1.了解MATLAB的操作环境和图像处理工具箱Image Processing Toolbox的功能;2.加深理解图像灰度变换与空间域滤波概念和算法原理;

3.掌握MATLAB中图像灰度变换与空间域滤的实现方法。

二、实验内容

(一)研究以下程序,分析程序功能;输入执行各命令行,认真观察命令执行的结果。利用MATLAB帮助文档熟悉程序中所使用函数的调用方法,改变有关参数,观察试验结果。(可将每段程序保存为一个.m文件)

1.图像及视频文件的基本操作

(1)RGB彩色图像数据的读写操作

clear all; %清除工作空间的所有变量,函数,和MEX文件

close all; %关闭所有的Figure窗口

%查看一幅RGB彩色图像文件的信息

fileinfo = imfinfo('Fig0701_fruits.jpg')

%暂停,阅读命令窗口中的结果,按空格键继续

pause;

%读取该图像

I=imread('Fig0701_fruits.jpg');

%显示图像

imshow(I); title('Original RGB true color image');

%查看图像像素信息,在图像上移动鼠标,注意左下角的信息

impixelinfo;

%暂停,按空格键继续

pause;

% 读取图像的颜色分量,并保存到二维矩阵变量中

IR = I(:,:,1);

IG = I(:,:,2);

IB = I(:,:,3);

%以灰度图像的方式显示各颜色分量

figure, imshow(IR); title('R分量');

figure, imshow(IG); title('G分量');

figure, imshow(IB); title('B分量');

%在图像左上角画一条5像素宽、100像素长的水平稍暗红线

I(31:35,61:160,1)=200;

I(31:35,61:160,2)=0;

I(31:35,61:160,3)=0;%

%显示处理结果

figure, imshow(I); title('在图像背景中画红线');

%将结果保存为tif格式图像文件

imwrite(I,'fruits_bar.tif');

%--------------------------------------------------------------------------------

(2)索引图像与 RGB彩色图像之间的转换

close all;

clear all;

%读入一幅RGB彩色图像

IRGB=imread('Fig0701_fruits.jpg');

%显示读入的RGB彩色图像

figure, imshow(IRGB); title(' Original RGB image');

%把RGB彩色图像转换为索引图像,为了比较差异,选择颜色表中的颜色数量为64 [Xind, map] = rgb2ind(IRGB,64);

%显示转换后的索引图像

figure, imshow(Xind, map); title('Converted to Indexd image');

%将结果保存为tif格式图像文件

imwrite(Xind,map,'fruits_indexed.tif');

%读入一幅彩色索引图像并显示

[Ind, map2]=imread('trees.tif');

figure, imshow(Ind, map2); title(' Original Indexd image');

%查看图像像素信息,在图像上移动鼠标,注意左下角的信息

impixelinfo;

%暂停,按空格键继续

pause;

%把索引图像转换为RGB彩色图像

Irgb = ind2rgb(Ind, map2);

%显示得到的彩色图像

figure, imshow(Irgb); title('Converted to RGB image');

%将结果保存为jpg格式图像文件

imwrite(Irgb,'trees_rgb.jpg');

%--------------------------------------------------------------------------

(3)彩色图像转换为灰度图像和无彩色图像

close all;

clear all;

%读取一幅RGB彩色图像

Irgb=imread('Fig0701_fruits.jpg');

%将其转换为灰度图像

Igray1 = rgb2gray(Irgb);

%显示转换结果

figure, imshow(Irgb); title('Original RGB image');

figure, imshow(Igray1); title('Converted gray image');

%将上述RGB彩色图像转换为无彩(灰色)彩色图像,

%即转换后的图像数据仍为RGB彩色图像格式

%创建一个与真彩色图像转维数相同的uint8型矩阵

Iachro=uint8(zeros(size(Irgb)));%

Iachro (:,:,1)=Igray1;

Iachro (:,:,2)=Igray1;

Iachro (:,:,3)=Igray1;

%显示转换的无彩色图片

figure, imshow(Iachro); title('Converted achromatic color image'); %--------------------------------------------------------------------------------

相关文档
最新文档