【图像处理基础】2.图像几何变换

目录

  • 1.几何变换的形式
    • 1.1旋转变换
  • 2.变换中心
    • 2.1坐标系变换
  • 3.映射与插值


1.几何变换的形式

几何变换的一般形式如下:
在这里插入图片描述
式中的T即为变换矩阵,(v,w)是原坐标,(x,y)是变换后的坐标,不同的变换对应不同的矩阵,,一些常见的变换矩阵及作用如下:
【图像处理基础】2.图像几何变换_第1张图片
所以,需要不同的变换的话选择不同的变换矩阵即可。

1.1旋转变换

上图中其他变换形式较好理解,这里推导一下旋转变换的过程。上图的旋转矩阵是绕原点
【图像处理基础】2.图像几何变换_第2张图片
如图所示点v 绕 原点旋转θ 角,得到点v’,假设 v点的坐标是(x, y) ,那么可以推导得到 v’点的坐标
(x’, y’)(设原点到v的距离是r,原点到v点的向量与x轴的夹角是ϕ )
x=rcosϕ
y=rsinϕ
x′=rcos(θ+ϕ)
y′=rsin(θ+ϕ)
通过三角函数展开得到
x′=rcosθcosϕ−rsinθsinϕ
y′=rsinθcosϕ+rcosθsinϕ
带入x和y表达式得到
x′=xcosθ−ysinθ
y′=xsinθ+ycosθ
写成矩阵的形式是就如上图所示了。

2.变换中心

对于缩放,平移可以以图像坐标为原点(即图像左上角原点)进行变换。而对于旋转和偏移,一般是以图像中心为原点进行变换的,所以需要先进行坐标系变换,由左上角为原点变换成图像中心为原点的坐标系。所以对于旋转和偏移,需要进行3步:

  1. 将输入原图图像坐标转换为笛卡尔坐标系
  2. 利用旋转矩阵进行旋转计算
  3. 将旋转后的图像的笛卡尔坐标系转回图像坐标

2.1坐标系变换

为了得到图像坐标系与笛卡尔坐标系转换关系,先看下图
【图像处理基础】2.图像几何变换_第3张图片
图像坐标系中原点为A,笛卡尔直角坐标系原点为D。将图像表示为M×N的矩阵,对于点A来说,在两坐标系坐标分别是(0,0)和(-N/2,M/2),则图像某像素点(x’,y’)转换为笛卡尔坐标(x,y)转换关系为,x为列,y为行:
在这里插入图片描述
逆变换为:
在这里插入图片描述
于是,三个步骤组合一起,旋转(顺时针)的变换形式就为:
在这里插入图片描述

3.映射与插值

上一篇博客讨论了前向映射和反向映射,前向映射就是根据原图用变换公式直接算出输出图像相应像素的空间位置,那么这会导致一个问题:可能会有多个像素坐标映射到输出图像的同一位置,也可能输出图像的某些位置完全没有相应的输入图像像素与它匹配,也就是没有被映射到,造成有规律的空洞(黑色的蜂窝状)。更好的一种方式是采用 反向映射(Inverse Mapping):扫描输出图像的位置(x,y),计算输入图像对应的位置 (v,w),通过插值方法决定输出图像该位置的灰度值。我们一般用反向映射双线性插值法进行几何变换。

你可能感兴趣的:(图像处理)