您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页数字图像处理——实验二--图像的几何变换

数字图像处理——实验二--图像的几何变换

来源:华佗小知识
 数字图像处理实验二

实验二 图像的几何变换

一.实验目的及要求

掌握图像几何变换的基本原理,熟练掌握数字图像的缩放、旋转、平移、镜像和转置的基本原理及其MATLAB编程实现方法。

二、实验设备

1.计算机; 2.MATLAB6.5;

三、实验内容及结果

(一)研究以下程序,分析程序功能;输入执行各命令行,认真观察命令执行的结果。熟悉程序中所使用函数的调用方法,改变有关参数,观察试验结果。 1. 图像缩放

Original Imagee-- using the nearest neighbormage-- using the bilinear inter

分析:imresize 函数功能:用于对图像做缩放处理

J1 = imresize(I, Scale, 'nearest') 即将图像I,采用最近邻插值算法,放大(缩小)Scale倍。

J2 = imresize(I, Scale, 'bilinear') 即将图像I,采用双线性插值算法,放大(缩小)Scale倍。

通过改变Scale的大小,可以观察到生成的图像大小随之改变,且放大倍数越大,图像变得越模糊。

在放大相同倍数的情况下,可以观察到采用双线性插值算法的图像更为清晰。 2. 图像旋转

数字图像处理实验二

Rotated Image-- using the nearest neighbor interpolation Original Image Rotated Image-- using the bilinear interpolation

分析:imrotate 函数功能:用于对图像做旋转处理

J1 = imrotate(I, Theta, 'nearest') 即将图像I,采用最近邻插值算法,绕图像的中心点旋转Theta度, 正数表示逆时针旋转, 负数表示顺时针旋转,旋转后的图像超出的部分填充0(黑色)。

J2 = imrotate(I, Theta, 'bilinear', 'crop') 功能同上,不同的是采用了双线性插值算法,'crop'表示通过对旋转后的图像进行裁剪,保持旋转后输出图像的尺寸和输入图像的尺寸一样。

通过改变Theta的大小,可以观察到生成的图像旋转角度随之改变,同时,采用双线性插值算法的图像更为清晰。 3.图像水平镜象

-----WORD格式--可编辑--专业资料-----

分析:flipdim(X,dim),其中X表示一个矩阵,dim指定翻转方式,dim为1,表示按行翻转,2表示按列翻转。

I1 = flipdim(I,2) 即得到图像I的水平镜像 I2 = flipdim(I,1) 即得到图像I的垂直镜像

(二)用MATLAB编程实现以下图像几何变换

1.图像平移

原理:图像平移即将一幅图像上所有的点都按照给定的偏移量在水平方向沿x轴,在垂直方向沿y轴移动。 设点

(,)进行平移后到A(x,y),其中x方向的平移量为x,y方向的平移量

为y,那么A(x,y)的坐标为:

x10xx0xx0x 即y01yy0 yy0y10011x010xxxxx对应的逆变换为:y001yy即0

yyy100101

clear all, close all

I = imread('cameraman.tif'); L1=50; L2=50; H=size(I); a=1:H(1)-L1; b=1:H(2)-L2; a1=L1+1:H(1); b1=L2+1:H(2);

I1(a1,b1)=I(a,b);

figure(1),imshow(I),title('Original Image'); figure(2),imshow(I1),title('New Image');

Original ImageNew Image

--完整版学习资料分享----

-----WORD格式--可编辑--专业资料-----

2.图像转置 原理:图像的转置是将给定图像像素的x坐标和y坐标互换的几何变换,设点P0(x0, y0) 转置后的对应点为P(x, y),转置变换可表述为:

x010x0x0010xxy0 或 y100y0,对应的逆变换为:y0100y 或 yx01001110011x0y yx0转置后图像的宽、高发生改变,即输出图像的高度为原始图像的宽度,输出图像的宽度为原始图像的高度。

clear all, close all I = imread('moon.tif'); I1=I';

subplot(3,4,[1 5 9]),imshow(I),title('Original Image'); subplot(3,4,[6 7 8]),imshow(I1),title('New Image');

四.实验总结

本次实验主要对图像的几何变换知识通过matlab进行练习,加深了理解。图像的几何变换包括图像的缩放,旋转,平移,镜像以及剪切等运算,通过几何变换,图像的像素值会发生变化。在做实验之前,一定要先复习一下相关知识,这样做起来效率更高,也更有益于复习巩固。

--完整版学习资料分享----

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务