数字图像处理 实验三 图像的几何变换实验

发布时间:2024-03-16 11:01

实验环境:windows 11      matlab2018a

注意,实验有参考成分!!!

一。实验目的:

1.熟悉MATLABOpenCV的操作和基本功能;

2.理解和掌握图像的平移、垂直镜像变换、水平镜像变换、缩放和旋转的原理和应用;

二、实验原理:

1、图像的平移:

图像平移与点的平移相类似,可以将图像的平移类比于图像的像素点的平移。

初始坐标为(x,y)的点经过平移(x0,y0),坐标变为(x',y')。

像:x1=x+x0,y1=y+y0一样,

以矩阵形式表示为∶

平移可以使用matlab的translate函数,注意参数的选择。

2.图像的镜像变换是以图像的垂直中轴线或者水平中轴线进行变换。有垂直变换和水平变换的区别。下面是矩阵表示。

在这里,可以使用matlab的flipdim函数进行操作,这里需要注意函数的参数的选择。

数字图像处理 实验三 图像的几何变换实验_第1张图片

3.图像的缩小和放大的矩阵为:

Sx≤1,Sy≤1时,图像缩小;Sx≥1,Sy≥1时,图像放大。

这里的缩小和放大也可以类比于像素点的缩小与方法的问题。

这里的缩小和放大可以使用matlab的imresize函数,这里需要注意函数的操作。

4.图像的旋转操作:

我们一般认为图像应该绕着中心点旋转,但是图像的原点在左上角,在计算的时候首先需要将左上角的原点移到图像中心,并且Y轴需要翻转。

其变换矩阵为∶

该变换矩阵是绕坐标轴原点进行的,如果是绕一个指定点(a,b)旋转,则现要将坐标系平移到该点,进行旋转,然后再平移回到新的坐标原点。

图像的旋转可以使用matlab的imrotate函数进行,这里需要注意函数的参数。

三、实验内容步骤:

要求使用MATLABOpenCV来完成以下实验。

1.对图像进行平移变换;2.对图像进行垂直镜像变换;3.对图像进行水平镜像变换;

4.对图像进行缩放和旋转操作。

实验开始:

1.图像的平移变换:(这里的平移变换是任意坐标的变换)

代码使用到translate函数、imdilate函数,其中translate函数用于图像移动,imdilate函数用于图像的膨胀。

数字图像处理 实验三 图像的几何变换实验_第2张图片

数字图像处理 实验三 图像的几何变换实验_第3张图片

这里的两个set语句可以不用写,这里为了方便就加上了。

2.图像垂直镜像变换:这里使用了flipdim函数进行操作

这里注意,当flipdim函数第二个参数是1的时候,图像实现上下翻转,当第二个参数是2的时候,图像实现垂直轴的左右翻转。这个函数的使用需要在matlab高版本的条件下。

 数字图像处理 实验三 图像的几何变换实验_第4张图片

数字图像处理 实验三 图像的几何变换实验_第5张图片

3.对图像进行水平镜像变换:

这里也像第二题一样使用flipdim函数都可以。

数字图像处理 实验三 图像的几何变换实验_第6张图片

数字图像处理 实验三 图像的几何变换实验_第7张图片

4.对图像进行缩放和旋转操作:

图像的缩放操作可以使用imresize函数,图像的旋转操作可以使用imrotate函数。

这里使用的imresize函数之中的参数’nearest’是改变图像尺寸时采用最近邻插值方法。

数字图像处理 实验三 图像的几何变换实验_第8张图片

数字图像处理 实验三 图像的几何变换实验_第9张图片

数字图像处理 实验三 图像的几何变换实验_第10张图片

数字图像处理 实验三 图像的几何变换实验_第11张图片

数字图像处理 实验三 图像的几何变换实验_第12张图片

下面是旋转操作:

数字图像处理 实验三 图像的几何变换实验_第13张图片

数字图像处理 实验三 图像的几何变换实验_第14张图片

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号