楼主: jonathan.liu33
228 0

[其他] 【计算机视觉(2)】图像几何变换基础篇:从平移旋转到投影变换 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

学前班

40%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0.0120
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
20 点
帖子
1
精华
0
在线时间
0 小时
注册时间
2018-11-15
最后登录
2018-11-15

楼主
jonathan.liu33 发表于 2025-12-9 07:00:38 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

本文内容概览(快速掌握核心)

本章旨在帮助图像处理与计算机视觉初学者理解图像变换的基本原理及其分类。通过系统性讲解,逐步构建从基础操作到高级变换的完整认知框架。

适合读者:

适用于刚接触计算机视觉或图像处理的学习者。

预计阅读时长:

40–50分钟

学习目标:

  • 理解图像变换的两种基本类型
  • 掌握常见的2D几何变换:平移、旋转、缩放
  • 了解线性变换的矩阵表示方法
  • 掌握齐次坐标在统一变换表达中的作用
  • 理清仿射变换与投影变换之间的层次关系

核心要点速览

  • 图像变换的两类形式:图像滤波修改像素值,图像变形调整像素位置
  • 基本几何操作:平移、旋转、缩放是空间变换的基础
  • 线性变换表达:可通过2×2矩阵实现缩放、旋转、剪切等操作
  • 齐次坐标的引入:增加维度后可将平移也纳入矩阵运算体系
  • 变换层级结构:由线性 → 仿射 → 投影,逐层扩展功能与适用范围

一、图像变换的本质(Image Transformation):区分两大类别

本部分内容为后续学习奠定理论基础,重点在于明确“图像变换”这一术语所涵盖的不同含义,并准确识别其两种主要类型。

核心问题思考:

当我们对一幅图像进行“变换”时,究竟是在改变什么?是像素的内容,还是它们的空间分布?不同的操作对应着不同的数学模型。

关键总结: 图像变换主要分为两类——图像滤波用于调整像素的数值(如亮度、颜色),属于值域变换;图像变形则重定位像素的空间坐标,属于定义域变换。其中,几何变换属于后者,关注的是像素位置的变化。

1.1 图像变换的两种基本形式:滤波 vs 变形

从数学本质来看,图像变换可分为以下两类:

图像滤波(Image Filtering)

  • 作用对象:图像的值域(range)
  • 功能描述:修改每个像素的强度或颜色值
  • 数学表达式:g(x) = h(f(x))
  • 典型应用:亮度调节、对比度增强、高斯模糊、边缘检测等

图像变形(Image Warping)

  • 作用对象:图像的定义域(domain)
  • 功能描述:重新映射像素的空间位置
  • 数学表达式:g(x) = f(h(x))
  • 典型应用:图像旋转、缩放、平移、透视校正等

直观图解说明

图像滤波影响的是“这个点是什么颜色”,而图像变形决定的是“这个点应该出现在哪里”。

类比理解方式

  • 图像滤波:类似于为照片添加美颜滤镜,画面中物体的位置不变,但整体色调、明暗发生变化。
  • 图像变形:好比将一张纸质照片进行物理旋转或拉伸,图像内容的位置发生移动,但颜色信息保持原样。

实际示例展示

图像滤波示例:
- 亮度调整:让整张照片变亮或变暗
- 模糊处理:让照片变得柔和
- 锐化处理:让照片边缘更清晰

图像变形示例:
- 旋转:把照片顺时针旋转90度
- 缩放:把照片放大2倍
- 平移:把照片向右移动100像素

二、基础几何变换(2D Geometric Transformations):位置与形态的操控

几何变换是图像变形中最常见的一类操作,主要包括平移、旋转和缩放。这些操作通过对像素坐标进行数学变换来实现图像的整体形变。

2.1 几何变换的概念(Parametric / Global Warping)

几何变换是一种参数化的全局变形方式,即整个图像按照统一的数学规则进行坐标映射。这类变换通常被称为“坐标变换机器”,因为它们基于一个明确的函数关系将输入坐标转换为输出坐标。

2.2 平移(Translation)

  • 定义:将图像中所有像素沿指定方向移动固定距离
  • 特点:不改变图像的形状、大小和方向,仅改变其在画布上的位置
  • 变换公式:x' = x + t_x, y' = y + t_y

2.3 旋转(Rotation)

  • 定义:围绕某一中心点(通常是图像中心或原点)将图像按一定角度转动
  • 特点:保持图像尺寸和形状不变,仅改变朝向
  • 注意:旋转操作需指定旋转中心和角度(顺时针或逆时针)

2.4 缩放(Scaling)

  • 均匀缩放(Uniform Scaling):在x轴和y轴上使用相同的缩放因子,保持图像比例不变
  • 非均匀缩放(Non-uniform Scaling):在不同轴上采用不同缩放系数,可能导致图像拉伸或压缩
  • 应用场景:放大细节、缩小图像以适应显示区域

2.5 相似变换(Similarity Transformation)

  • 组成:结合了平移、旋转和均匀缩放三种操作
  • 特性:保持图形的角度和形状不变,仅改变位置、方向和整体大小
  • 用途广泛于图像配准、模板匹配等任务

三、线性变换(Linear Transformations):用矩阵统一描述

许多几何变换可以被归类为线性变换,并通过2×2矩阵进行简洁表达。

3.1 线性变换的矩阵形式(All 2D Linear Transformations)

  • 可用2×2矩阵表示的操作包括:
    • 缩放
    • 旋转
    • 剪切(Shearing)
    • 镜像(Reflection)
  • 通式:[x'; y'] = M * [x; y],其中M为2×2变换矩阵

3.2 平移为何不属于线性变换

  • 原因分析:线性变换必须满足两个条件——加法性和齐次性,而平移破坏了原点不变性(即T(0) ≠ 0)
  • 结论:无法仅用2×2矩阵表示平移操作,因此它不是严格意义上的线性变换

四、齐次坐标(Homogeneous Coordinates):统一变换表达的关键工具

为了将平移也纳入矩阵运算体系,需要引入更高维度的坐标表示方法——齐次坐标。

4.1 齐次坐标的基本概念

  • 做法:在二维坐标(x, y)基础上增加一个额外维度,表示为(x, y, 1)
  • 优势:使得平移、旋转、缩放均可通过单一矩阵乘法完成
  • 意义:实现了所有仿射变换的统一数学表达

4.2 使用齐次坐标表示平移

  • 解决方案:利用3×3变换矩阵,将平移量嵌入第三列
  • 例如:平移(t_x, t_y)对应的矩阵为:
          [1  0  t_x]
          [0  1  t_y]
          [0  0   1 ]
        
  • 由此,平移也可作为矩阵乘法的一部分执行

4.3 旋转与缩放在齐次坐标下的表达

  • 旋转和缩放同样可以扩展为3×3矩阵形式,与平移矩阵兼容
  • 这使得多种变换能够串联成复合变换(通过矩阵连乘实现)

五、变换的层级结构(Affine 与 Projective Transformations)

图像变换并非孤立存在,而是构成一个从简单到复杂的嵌套体系。

5.1 仿射变换(Affine Transformation)

  • 定义:线性变换与平移的组合
  • 数学形式:g(x) = Ax + b,其中A为2×2矩阵,b为平移向量
  • 性质保留:平行线仍保持平行,可用于倾斜矫正、图像对齐等
  • 常见类型:平移、旋转、缩放、剪切及其组合

5.2 投影变换(Projective Transformation)

  • 别名:单应性(Homography)、平面透视映射(Planar Perspective Map)
  • 能力:模拟相机视角变化,能处理透视畸变
  • 自由度:8个参数,由3×3矩阵定义(可归一化)
  • 应用场景:鸟瞰图生成、文档扫描透视校正、AR虚拟贴图

5.3 变换类型的包含关系

  • 这些变换形成一个嵌套集合
    • 线性变换 仿射变换 投影变换
  • 每一级都比前一级更具通用性,支持更复杂的图像形变
  • 选择哪种变换取决于具体任务的需求与约束条件

本章总结

本章系统梳理了图像变换的核心概念,明确了图像滤波与图像变形的根本区别。重点讲解了几何变换中的平移、旋转、缩放等基础操作,并指出线性变换虽便于矩阵表达,但无法涵盖平移。为此引入齐次坐标体系,成功实现了各类变换的统一表示。最终揭示了从线性到仿射再到投影变换的递进层次结构,为后续深入学习图像配准、三维重建等内容打下坚实基础。

二、基本几何变换(2D Geometric Transformations):平移、旋转、缩放的核心操作

在图像处理中,几何变换是一种通过调整像素位置来改变图像形态的技术。其中最基础的三种操作是平移、旋转和缩放。这些变换各自具有明确的功能,并且可以组合使用以实现更复杂的视觉效果。

核心要点总结: 平移、旋转与缩放构成了二维几何变换的基础体系。平移用于调整图像的位置;旋转用于改变其朝向;而缩放则控制图像的大小变化。这三种变换均为全局性操作,适用于整幅图像中的所有点。

2.1 几何变换的本质:坐标映射机制

几何变换可被理解为一种“坐标转换机器”——它接收原始图像中的某一点 p = (x, y),并通过一个确定的函数 T 输出变换后的新坐标 p' = (x', y'),即:
p' = T(p)

这类变换通常属于参数化变形(Parametric Warping),具备以下特征:

  • 全局性:整个图像使用同一个变换函数 T,所有像素遵循相同的规则。
  • 参数少:仅需少量参数即可完整描述整个变换过程。

形象类比:就像用模具压制印章,无论材料位置如何,模具施加的效果一致。
???? 说明:参数化变形对图像中所有点统一应用相同规则,确保整体结构协调变化。

2.2 平移变换(Translation):位置移动不改形

平移是指将图像中所有点沿指定方向移动固定距离的操作。该变换仅影响位置,不会改变图像的形状、尺寸或方向。

平移量可用二维向量 (t_x, t_y) 表示,分别对应水平和垂直方向的位移。

向右平移100像素,向上平移50像素:
- 原位置:(100, 100)
- 新位置:(200, 150)
- 平移向量:(100, 50)

2.3 旋转变换(Rotation):围绕中心点转向

旋转是以某一参考点(通常是坐标原点)为中心,将图像整体转动一定角度的过程。

关键特性包括:

  • 仅改变方向,保持形状和大小不变。
  • 旋转角度用 θ 表示,正方向定义为逆时针。
顺时针旋转90度:
- 原方向:水平向右 →
- 新方向:垂直向下 ↓
- 旋转角度:-90°(或270°)

2.4 缩放变换(Scaling):调整大小的两种方式

缩放是对图像在不同轴向上进行放大或缩小的操作,分为两种类型:

  • 均匀缩放:x 和 y 方向采用相同的缩放因子,保持宽高比不变。
  • 非均匀缩放:x 与 y 方向缩放比例不同,导致图像拉伸或压缩,从而改变外形。

缩放程度由缩放因子 s(或 s_x, s_y)决定。

放大2倍(均匀缩放):
- 原大小:100×100像素
- 新大小:200×200像素
- 缩放因子:s = 2

x方向放大2倍,y方向不变(非均匀缩放):
- 原大小:100×100像素
- 新大小:200×100像素
- 缩放因子:sx = 2, sy = 1

2.5 相似变换(Similarity Transformation):复合型等形变换

相似变换是平移、旋转与均匀缩放三者的组合形式,能够在改变位置、方向和整体大小的同时,保持图形的形状相似性

主要特点:

  • 保持角度不变。
  • 维持图形间的相对比例关系。
  • 广泛应用于图像配准、目标识别等领域。
图像配准:
- 找到两幅图像之间的相似变换
- 可以将一幅图像对齐到另一幅图像
- 用于图像拼接、目标跟踪等

三、线性变换(Linear Transformations):矩阵表达的统一框架

前文介绍了平移、旋转和缩放作为基本几何操作的作用。为进一步提升数学表达的一致性和计算效率,我们需要探讨如何用统一的数学工具——矩阵,来表示这些变换。

核心结论: 缩放、旋转、剪切和镜像属于线性变换,可用 2×2 矩阵表示;但平移不属于线性变换,必须借助齐次坐标才能纳入统一框架。

关键点总结: 所有二维线性变换均可通过 2×2 矩阵进行建模,包括缩放、旋转、剪切和镜像。这类变换具有如下共性:

  • 保持原点不动。
  • 保持直线仍为直线,平行线依然平行。
  • 无法直接表示平移操作。

3.1 线性变换的矩阵形式:2×2 矩阵的应用

线性变换的本质是可以通过矩阵乘法实现的坐标映射:
p' = M · p
其中 M 是一个 2×2 变换矩阵,p = (x, y) 为原始坐标,p' = (x', y') 为变换后的坐标。

常见线性变换及其对应的矩阵形式如下:

  • 均匀缩放
    [[s, 0], [0, s]]
  • 非均匀缩放
    [[s_x, 0], [0, s_y]]
  • 旋转变换(角度 θ,逆时针为正):
    [[cosθ, -sinθ], [sinθ, cosθ]]

图解说明:

线性变换的重要性质之一是:
原点始终映射到原点,即 (0, 0) → (0, 0);同时,直线保持为直线,平行关系也得以保留。

在二维空间中,线性变换具有以下特性:

  • 原点保持不变:(0, 0) → (0, 0)
  • 直线映射为直线
  • 平行线依然保持平行
  • 点之间的比例关系不会改变

然而,并非所有几何操作都属于线性变换。例如平移就无法通过2×2的矩阵来表示。

图像滤波示例:
- 亮度调整:让整张照片变亮或变暗
- 模糊处理:让照片变得柔和
- 锐化处理:让照片边缘更清晰

图像变形示例:
- 旋转:把照片顺时针旋转90度
- 缩放:把照片放大2倍
- 平移:把照片向右移动100像素

平移为何不是线性变换?

平移操作的数学表达式如下:

x′ = x + t

y′ = y + t

这种形式无法写成 p′ = M·p 的矩阵乘法形式,因为平移会将原点(0,0)移动到新的位置,破坏了线性变换必须“保持原点不动”的基本性质。

这个问题引出了一个关键需求:如何统一表示包括平移在内的各种空间变换?

解决方案是引入——齐次坐标(Homogeneous Coordinates)。

齐次坐标:实现变换统一表示的数学工具

已知线性变换可用2×2矩阵描述,但平移不能。为了将平移也纳入矩阵运算体系,我们需要扩展坐标系统。

答案在于:通过增加一个额外的维度 w,使用齐次坐标 (x, y, w),我们可以用3×3矩阵来统一表示平移、旋转、缩放等所有常见变换。

向右平移100像素,向上平移50像素:
- 原位置:(100, 100)
- 新位置:(200, 150)
- 平移向量:(100, 50)

齐次坐标的基本概念

齐次坐标是在原有二维坐标 (x, y) 的基础上,引入第三个分量 w,形成三元组 (x, y, w)。

其与普通坐标的转换规则如下:

  • 从普通坐标转为齐次坐标:(x, y) → (x, y, 1)
  • 从齐次坐标还原为普通坐标:(x, y, w) → (x/w, y/w),其中 w ≠ 0

这可以类比于为二维地图添加高度信息,升级为三维表示,从而支持更复杂的操作描述。

本质上,这是一种数学技巧,使得原本无法用线性方式表达的变换也能被整合进矩阵框架中。

顺时针旋转90度:
- 原方向:水平向右 →
- 新方向:垂直向下 ↓
- 旋转角度:-90°(或270°)

使用齐次坐标表示平移

借助齐次坐标,平移操作可表示为如下矩阵乘法:

[ x′
y′
1 ] = [ 1   0   t
0   1   t
0   0   1 ] [ x
y
1 ]

这样,平移就被成功地嵌入到了矩阵运算之中。

优势包括:

  • 所有基本变换(平移、旋转、缩放)均可统一使用3×3矩阵表示
  • 多个变换可以通过连续矩阵相乘进行组合
  • 变换序列的执行顺序可通过矩阵乘积体现

旋转与缩放在齐次坐标下的表示

除了平移,其他变换也可自然扩展至3×3形式:

旋转(绕原点,角度θ)对应的矩阵为:

[ cosθ   -sinθ   0
sinθ    cosθ    0
0       0       1 ]

缩放(沿x和y方向分别缩放sx和sy倍)的矩阵形式为:

[ sx   0   0
0   sy   0
0    0    1 ]

当需要执行多个变换时,只需按执行顺序从右至左依次相乘得到复合变换矩阵:

M组合 = M · M · M

变换的层次结构:从仿射到投影

前面已经说明,齐次坐标能够统一处理平移、旋转和缩放等操作。

但还存在更复杂的变换类型。不同类型的变换之间存在层级关系:

线性变换 → 仿射变换 → 投影变换

随着层级上升,变换能力增强,能处理更复杂的空间映射;但同时所保留的几何性质逐渐减少。

例如:

  • 线性变换保持原点和向量线性关系
  • 仿射变换允许平移,保持平行性和比例
  • 投影变换则可模拟透视效果,连平行线也可能相交
放大2倍(均匀缩放):
- 原大小:100×100像素
- 新大小:200×200像素
- 缩放因子:s = 2

x方向放大2倍,y方向不变(非均匀缩放):
- 原大小:100×100像素
- 新大小:200×100像素
- 缩放因子:sx = 2, sy = 1

核心总结: 齐次坐标通过引入额外维度 w,使我们能够用统一的3×3矩阵形式表示各类空间变换。它是计算机图形学与计算机视觉中实现变换建模的基础工具。

关键点总结:几何变换可分为三个层级:线性变换(保持原点)、仿射变换(保持平行线)、投影变换(仅保持直线)。其中,投影变换能力最强,能够表达透视效果。

5.1 仿射变换(Affine Transformation / Basic Affine Transformations)——线性变换与平移的结合

核心概念:
仿射变换由线性变换和平移操作组合而成,通常使用如下形式的3×3矩阵表示:

 a  b  t 
 c  d  t 
 0  0   1 

该矩阵中前两列代表线性部分(如旋转、缩放等),第三列表示平移量。

主要特性:

  • 原点不一定映射到原点
  • 直线仍映射为直线
  • 平行线在变换后依然保持平行(关键属性)
  • 线段之间的比例关系得以保留

基本类型包括:

  • 平移
  • 二维平面内的旋转
  • 剪切(Shear)
  • 缩放

图解说明:

图像校正:
- 校正扫描文档的倾斜
- 校正相机拍摄的角度
- 保持平行线关系

实际应用场景:
广泛用于图像对齐、坐标系转换以及需要保持平行结构的图像校正任务。

5.2 投影变换(Projective Transformation / Homographies / Planar Perspective Maps)——最通用的平面映射方式

核心概念:
投影变换,又称单应性(Homography),是描述两个平面之间最一般映射关系的工具。其数学表达为一个任意的3×3可逆矩阵:

 a  b  c 
 d  e  f 
 g  h  i 

注意:最后一行不再是固定的 [0, 0, 1],因此能表示更复杂的视觉变形,例如远小近大的透视现象。

主要特性:

  • 原点不必然对应原点
  • 直线仍然映射为直线
  • 平行线可能不再平行,甚至相交(体现透视)
  • 长度和比例均无法保证

图解说明:

透视校正:
- 校正透视畸变(如拍摄建筑物时的透视效果)
- 图像拼接
- 虚拟现实中的纹理映射

实际应用场景:
适用于处理相机视角变化带来的畸变,如从不同角度拍摄同一平面物体时的匹配与重建。

5.3 变换的层次结构(Nested Set of Transformation Groups)——逐级扩展的能力体系

核心思想:
各类变换构成一种嵌套关系:每一个上层变换都包含下一层的所有功能,并具备更强的表达能力。

图示说明:

线性变换
  └─ 仿射变换(线性变换 + 平移)
      └─ 投影变换(最一般)

性质对比表:

变换类型 保持原点 保持平行线 保持比例 矩阵形式
线性变换 2×2 或 3×3(末行为 [0,0,1])
仿射变换 3×3(末行为 [0,0,1])
投影变换 3×3(任意形式)

应用选择参考:

选择变换类型的原则:
- 只需要旋转、缩放 → 线性变换
- 需要平移 → 仿射变换
- 需要透视效果 → 投影变换

本章总结

核心回顾:

  • 图像变换的两大类别:图像滤波用于调整像素值;图像变形则改变像素的空间位置。
  • 基础几何操作:平移、旋转、缩放是最基本的变换单元,可通过组合实现复杂效果。
  • 线性变换:可用2×2矩阵表示,涵盖旋转、缩放、剪切及镜像等操作。
  • 齐次坐标的作用:通过增加维度,使得所有变换(包括平移)都能统一用3×3矩阵表示。
  • 变换层级演进:从线性 → 仿射 → 投影,功能逐步增强,但所保留的几何约束逐渐减少。

知识脉络梳理:

  • 若需修改像素值 → 使用图像滤波
  • 若需调整像素位置 → 使用图像变形(几何变换)
  • 仅涉及旋转或缩放 → 可采用线性变换
  • 包含平移操作 → 必须使用仿射变换
  • 需要模拟透视或相机视角 → 应选用投影变换

典型实际应用领域:

  • 图像配准:确定两幅图像间的空间映射关系
  • 图像校正:修正倾斜或透视引起的失真
  • 图像拼接:将多张照片无缝融合为全景图
  • 目标跟踪:追踪运动对象的几何变化过程
  • 虚拟现实:实现纹理映射与三维场景的空间变换
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:计算机视觉 计算机 基础篇 perspective Coordinates

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2025-12-20 14:25