数字图像处理第二次实验报告

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

实验报告

课程名称数字图像处理

实验项目MATLAB图像的空间变换及

相邻区域和块的处理

指导教师

学院 _ _

专业电子信息工程

班级/学号

学生姓名

实验日期______ ___ 成绩___________________________

实验2 MATLAB图像的空间变换及相邻区域和块

的处理

一、实验目的

1.掌握MATLAB的基本应用方法。

2.掌握MATLAB空间变换--图像插值、缩放、旋转、剪切。

3.掌握MATLAB相邻区和块的处理-滑动窗和图像块操作。

二、实验的硬件、软件平台

硬件:计算机

软件:操作系统:Windows XP

应用软件:MA TLAB 7.0.1

三、实验内容及步骤(参考MATLAB 图像处理工具箱的

帮助完成相应功能)

1. 掌握MA TLAB功能实现的两种方法:

◆在Command Window中,以命令行单句调用某一函数,例如两幅图

像相加,观察Workspace中图像矩阵属性、值。

◆采用M语言编写由一条或多条语句实现某一或多个功能,例如:图

像算术操作和图像类型转换的MATLAT 文件,文件的扩展名m。将

文件保存在c:\ MATLAB701\work目录下,从MA TLAB的Command

Window 中键入文件名。也可将M文件中的所有语句拷贝到

Command Window下,回车执行。观察Workspace中图像矩阵属性、

值。

2.了解图像插值、Anti-aliasing的方法和应用。

MATLAB帮助位置:Image Processing Toolbox- Spatial Transformations-

Interpolation

3.了解图像相邻区域和块的处理-滑动窗和图像块操作。

MATLAB 帮助位置:Image Processing Toolbox –Neighborhood and Block

Operation

4.放大和缩小一幅图像(imresize)。MATLAB帮助位置:Image Processing

Toolbox-Spatial Transformations-Image Resizing

5.旋转一幅图像(imrotate)。MATLAB 帮助位置:Image Processing Toolbox-

Spatial Transformations-Image Rotation

6.滑动邻域操作(nlfilter)。MATLAB 帮助位置:Image Processing Toolbox

–Neighborhood and Block Operation–Sliding Neighborhood Operations -

Linear and Nonlinear Filtering

7.图像块操作(blkproc) 。

●MATLAB 帮助位置1:Image Processing Toolbox –Neighborhood and

Block Operation–Distinct Block Operations

●MATLAB 帮助位置2:Image Processing Toolbox – Transforms

–Discrete Cosine Transform - The DCT and Image Compression (使

用8-by-8 blocks DCT 变换对图像进行压缩与解压缩,利用函数

dctmtx, blkproc)

四、实验代码

(一)放大和缩小一幅图像(imresize)。

A=imread('C:\Documents and Settings\501\桌面\数字图像\photo1.jpg');

imshow(A);

size1= imresize(A,2);

size2= imresize(A,0.5);

figure

imshow(size1);

figure

imshow(size2);

imwrite(size1,'C:\Documents and Settings\501\桌面\数字图像\size1.jpg');

imwrite(size2,'C:\Documents and Settings\501\桌面\数字图像\size2.jpg');

原图

放大2倍后

缩小一半后

(二)旋转一幅图像(imrotate)。

A=imread('C:\Documents and Settings\501\桌面\数字图像\photo2.jpg');

figure

imshow(A);

rotate=imrotate(A,-30,'bilinear','loose');

figure

imshow(rotate);

imwrite(rotate,'C:\Documents and Settings\501\桌面\数字图像\rotate.jpg');

原图

顺时针旋转30度后

(三)滑动邻域操作(nlfilter)。

A=imread('C:\Documents and Settings\501\桌面\数字图像\photo3.jpg');

A=rgb2gray(A);

figure

imshow(A);

fun=inline('mean(mean(x))');

nA=nlfilter(A,[3 3],fun);

figure

imshow(nA,[]);

imwrite(nA,'C:\Documents and Settings\501\桌面\数字图像\nA.jpg');

原图

滑动邻域操作处理后

相关文档
最新文档