实验2-1 图像变换
姓名: 刘欣楠
学号: 2233310237
班级: 数学强基 2301
电子版密码: lxn-cvpr2-1
实验目的
-
- 掌握图像的参数化几何变换原理;
-
- 掌握图像的前向变换与逆向变换;
-
- 掌握图像的下抽样原理以及图像的内插方法原理;
-
- 掌握图像的高斯金字塔与拉普拉斯金字塔表示原理.
实验原理
图像的参数化几何变换原理
\begin{tabular}{|l|c|c|c|c|}
**变换** & **变换矩阵 $T$** & **逆变换 $T^{-1}$** & **自由度数** & **保持** \\
平移变换 &
$\begin{bmatrix} 1 & 0 & t_x \\ 0 & 1 & t_y \\ 0 & 0 & 1 \end{bmatrix}$ &
$\begin{bmatrix} 1 & 0 & -t_x \\ 0 & 1 & -t_y \\ 0 & 0 & 1 \end{bmatrix}$ &
2 & 方向 \\
尺度变换 &
$\begin{bmatrix} c_x & 0 & 0 \\ 0 & c_y & 0 \\ 0 & 0 & 1 \end{bmatrix}$ &
$\begin{bmatrix} 1/c_x & 0 & 0 \\ 0 & 1/c_y & 0 \\ 0 & 0 & 1 \end{bmatrix}$ &
2 & 平行性 \\
旋转变换 &
$\begin{bmatrix} \cos\theta & -\sin\theta & 0 \\ \sin\theta & \cos\theta & 0 \\ 0 & 0 & 1 \end{bmatrix}$ &
$\begin{bmatrix} \cos\theta & \sin\theta & 0 \\ -\sin\theta & \cos\theta & 0 \\ 0 & 0 & 1 \end{bmatrix}$ &
1 & 长度 \\
欧氏变换 &
$\begin{bmatrix} \cos\theta & -\sin\theta & t_x \\ \sin\theta & \cos\theta & t_y \\ 0 & 0 & 1 \end{bmatrix}$ &
--- & % 逆变换未填写, 留空或可计算
3 & 长度 \\
相似变换 &
$\begin{bmatrix} s\cdot\cos\theta & -\sin\theta & t_x \\ \sin\theta & s\cdot\cos\theta & t_y \\ 0 & 0 & 1 \end{bmatrix}$ &
--- & % 逆变换未填写, 留空或可计算
4 & 夹角 \\
仿射变换 &
$\begin{bmatrix} a & b & c \\ d & e & f \\ 0 & 0 & 1 \end{bmatrix}$ &
--- & % 逆变换未填写, 留空或可计算
6 & 平行性 \\
\end{tabular}
前向变换与逆向变换
- 前向变换: $g(T(x,y))=f(x,y)$; 存在问题 $T(x,y)$ 不一定是整数.
- 逆向变换: $g(x,y)=f(T^{-1}(x,y))$; 存在问题 $T(x,y)$ 不一定可逆. 且逆变换也不一定是整数.
解决方案: 通过邻域像素点插值得到空洞位置.
图像的内插方法
- 近邻插值, 即寻找逆向变换最近的原图像上的整数点, 再进行前向变换得到变换后的图像.
- 双线性插值, 根据逆变换到最近四个格点的面积占比计算各个格点的权重.
图像的下抽样原理
依据奈奎斯特定理, 为了不失真地恢复模拟信号, 采样频率应该大于等于模拟信号频谱中最高频率的 2 倍, 即 $f \geqslant 2f_{\max}$.
推广到图像的下抽样:
假设图像大小为 $N \times N$, 总长度为单位 1, 则原图像的采样间隔为 $\frac{1}{N}$, 频率为 $N$;
设原图像(或高斯滤波后图像)的最高频率为 $k_{\max}$, 如果每隔 $P$ 个点对图像进行下采样后, 则图像的频率变为 $\frac{N}{P}$, 为了避免频谱混叠, 需满足 $k_{\max} < -k_{\max} + \frac{N}{P}$, 则有
$$
\frac{N}{P} > 2k_{\max}.
$$
高斯金字塔与拉普拉斯金字塔
高斯金字塔: 将图像经过高斯滤波平滑处理后进行下采样. 一般取滤波核大小为 $5\times 5$ 兼顾计算成本和滤波效果. $$K(5,5)=\frac 1{256}\begin{bmatrix} 1 & 4 & 6 & 4 & 1\\ 4 & 16 & 24 & 16 & 4\\ 6 & 24 & 36 & 24 & 6\\ 4 & 16 & 24 & 16 & 4\\ 1 & 4 & 6 & 4 & 1 \end{bmatrix}$$
拉普拉斯金字塔: 用来从金字塔低层图像重建上层未采样图像, 在数字图像处理中也即是预测残差, 可以对图像进行最大程度的还原, 配合高斯金字塔一起使用.
图像金字塔构造步骤 [label=\textcircled{\arabic*}] - 令 $L_3 = G_3$, 对 $L_3$ 上采样, 在插入的偶数行和列中置 0, 使图像的尺寸大小等于 $G_2$. - 用相同的高斯滤波核函数滤波插值. - 灰度尺度矫正, 得到图像 $\text{Upsample}_2$:
$$
g(x,y) = C \sum_{x'} \sum_{y'} e^{-\frac{(x-x')^2 + (y-y')^2}{2\sigma^2}} f(x', y')
$$
注:与图像金字塔采用一样的滤波核. - $L_2 = G_2 - \text{Upsample}_2$ - 重复上述步骤, 完成 $L_1$、$L_0$ 的重构.

实验步骤及结果
图像的参数化几何变换
步骤: [label=\arabic*)] - 任选一副图像, 设计图像的几何变换矩阵 $T$; - 求解逆矩阵 $T^{-1}$; - 结合图像的内插算法完成图像的几何变换操作.
要求: [label=\arabic*)] - 对比分析图像的前向变换和逆向变换. - 对比分析近邻插值和双线性插值. - 图像的几何变换至少包括:平移变换、旋转变换、欧氏变换、相似变换和仿射变换.
测试图像
生成一幅 $256\times256$ 的合成图像, 包含矩形、圆形、三角形和网格线, 便于观察几何变化. 如图\ref{fig:original}.

前向与逆向映射对比
对平移、旋转、欧氏、相似和仿射变换分别进行前向映射与逆向映射. 前向映射仅做整数落点, 容易出现黑色空洞, 例如旋转变换就有明显的黑色空洞, 而像简单平移因为位移是整数所以没有空洞; 逆向映射结合插值后图像连贯性更好. 各变换矩阵的运行结果如图\ref{fig:translation}--\ref{fig:affine} 所示, 均展示了前向映射、逆向近邻和逆向双线性三种输出.





插值方式对比
近邻插值会产生阶梯状边缘; 双线性插值过渡平滑, 网格和边缘锯齿明显减少. 图\ref{fig:forward_inverse} 右图即可观察到差异.
图像的高斯金字塔表示与拉普拉斯金字塔表示
步骤:
方法 1:
[label=\arabic*)]
- 任选一副图像, 用 opencv 提供的库函数 cv2.pyrDown() 对图像进行下采样, 完成高斯金字塔的构造;
- 用函数 cv2.pyrUp() 完成高斯金字塔的上采样;
- 通过 $L_n = G_n - \text{pyrUp}\big(\text{pyrDown}(G_n)\big)$, 完成拉普拉斯金字塔的构造.
方法 2: 通过实验原理部分提供的滤波模板 $K(5,5)$(或自主设计的高斯滤波器)以及上采样、下采样过程, 自主编程实现图像的高斯金字塔与拉普拉斯金字塔的表示.
要求: [label=\arabic*)] - 任选一种方法完成图像的高斯金字塔和拉普拉斯金字塔表示过程; - 构造的金字塔层数为 3$\sim$6 层; - 讨论前置滤波器与抽样频率的关系.
根据方法 2, 采用 $5\times5$ 高斯核进行平滑, 再按 2 倍下采样构建 4 层高斯金字塔. 拉普拉斯金字塔通过上采样并相减得到. 部分结果如图\ref{fig:gaussian}、图\ref{fig:laplacian}.


结论与讨论
本实验围绕图像的参数化几何变换与图像金字塔构建展开. 通过前向映射与逆向映射、不同插值方法的对比, 以及高斯金字塔与拉普拉斯金字塔的构造与观察, 进一步理解了图像几何结构变化和多尺度表示的特性. 现对实验现象与结果进行总结与讨论如下.
几何变换的分析与讨论
1. 前向映射与逆向映射的差异
前向映射(Forward Mapping)直接将原图像的像素按变换矩阵 $T$ 投影到目标图像中, 由于利用整数坐标落点, 当目标像素没有对应填充值时很容易产生“黑洞”或空洞区域. 特别是在旋转、仿射和相似变换中, 这种空洞更为明显. 而平移变换若刚好为整数位移, 则不会出现空洞现象.
相比之下, 逆向映射(Inverse Mapping)通过计算目标图像每个像素在源图像中的位置, 并结合插值获取像素值, 能有效避免空洞, 同时使图像结构保持完整. 实验图\ref{fig:translation}--\ref{fig:affine} 中, 逆向映射明显优于前向映射, 尤其在旋转和仿射变换中更为突显.
2. 近邻插值与双线性插值的差异
近邻插值计算简单, 但其输出的边缘呈现明显的阶梯状和锯齿感, 局部结构不够平滑, 图像质量较差.
双线性插值通过利用四邻域像素计算加权平均, 使图像过渡更平滑, 能够有效减轻网格线的断裂和锯齿问题. 实验中, 逆向双线性插值的输出最为平滑、自然, 视觉效果最好(如图\ref{fig:forward_inverse} 右图).
3. 多种几何变换对图像的影响
实验分别对平移、旋转、欧氏、相似和仿射变换进行了分析, 可得到以下结论: - 平移变换:结构保持最为完整, 整数位移时正向映射无空洞. - 旋转变换:图像会出现较大面积空洞, 逆向映射明显优于前向. - 欧氏变换(旋转+平移):保持距离不变, 但前向映射仍存在明显黑边. - 相似变换(旋转+平移+缩放):图像整体比例变化, 前向映射空洞更明显. - 仿射变换:最具一般性, 会引入倾斜、拉伸等复杂变化, 逆向映射的优势最为突出.
总体而言, 逆向映射 + 双线性插值是图像几何变换的最佳组合, 能有效避免空洞并改善图像质量.
图像金字塔的分析与讨论
1. 高斯金字塔的观察与讨论
高斯金字塔通过预平滑后进行 $2$ 倍下采样, 使图像尺寸逐层缩小且细节逐步减少. 实验中的第 0--3 层图像(图\ref{fig:gaussian})中可以观察到: - 尺寸随层数增加迅速减小; - 边缘模糊度增加, 高频纹理逐渐被滤除; - 保留了整体形状, 因此非常适合用于多尺度分析、特征提取等任务.
2. 拉普拉斯金字塔的意义与特征
拉普拉斯金字塔由高斯金字塔相邻层之间的差值得到, 相当于一种“带通滤波”表示, 保留了图像的高频成分, 如边缘和细节. 图\ref{fig:laplacian} 中可以看到: - 每一层都突出显示了边缘与纹理等细节; - 图像整体亮度偏低, 符合高频信息的特征; - 部分层存在轻微的偏移, 这与上采样过程的对齐方式有关.
3. 滤波器与抽样频率的关系讨论
下采样前必须进行适当的低通滤波(如高斯滤波), 原因是: - 若不滤波, 图像中高频分量会发生混叠(aliasing), 导致下采样后出现明显伪影; - 滤波器的频率响应应覆盖信号高频部分, 以保证抽样满足奈奎斯特采样定理; - 选用 $5 \times 5$ 高斯核能较好地平滑图像, 兼顾抑制噪声与保留结构.
因此, **滤波器越宽、平滑效果越强, 可降低混叠; 但过度平滑会损失细节, 需要在二者之间取得平衡. **
综合总结
通过本次实验, 可以总结如下: - 逆向映射结合插值能有效避免空洞, 是大多数图像变换的首选; - 近邻插值虽简单但质量较差, 双线性插值在视觉效果上更优; - 高斯金字塔提供了图像的多尺度低频结构; - 拉普拉斯金字塔保留了图像的高频细节信息; - 合理设计滤波器对金字塔的构建质量至关重要.