跳转至

第2章 图像变换

一、数学运算(Mathematical Operations)

1.1 逐像素运算(Elementwise / Pixel-wise Operator)

图像的基本数学运算是对两幅图像逐像素进行的——不仅涉及矩阵运算,还包含空间信息。

加法

\[\begin{bmatrix} f_{11} & f_{12} \\ f_{21} & f_{22} \end{bmatrix} + \begin{bmatrix} g_{11} & g_{12} \\ g_{21} & g_{22} \end{bmatrix} = \begin{bmatrix} f_{11}+g_{11} & f_{12}+g_{12} \\ f_{21}+g_{21} & f_{22}+g_{22} \end{bmatrix}\]
  • 注意区分矩阵乘法(Matrix Production)逐像素乘法(Pixel-wise Production),两者完全不同

1.2 线性算子(Linear Operator)

\(H\) 是线性算子,则满足可加性(Additivity)齐次性(Homogeneity)

\[H[f_1(x,y) + f_2(x,y)] = H[f_1(x,y)] + H[f_2(x,y)]\]
\[H[a \cdot f(x,y)] = a \cdot H[f(x,y)]\]

常见考点

判断某算子是否为线性算子。例如:平移算子是线性的,绝对值算子不是线性的,傅里叶算子是线性的。

1.3 算术运算(Arithmetic Operations)

所有算术运算均为逐像素(Pixel-wise)进行。

(1)加法(Addition)

\[g(x,y) = f_1(x,y) + f_2(x,y)\]
  • 用途去除/降低噪声(Reduce Noise)——多幅图像叠加平均后,随机噪声被平滑,信噪比提高
  • 叠加图像数量越多,去噪效果越好(10 → 50 → 100 → 500 → 1000 幅)

(2)减法(Subtraction)

\[d(x,y) = f_1(x,y) - f_2(x,y)\]
  • 用途检测差异(Find Differences)
  • 典型应用:数字减影血管造影(DSA, Digital Subtraction Angiography)
    • 注射造影剂前拍一张(mask),注射后拍一张
    • 两者相减 → 仅剩血管影像(背景被减掉)
    • 差值图像再增强 → 清晰血管结构

(3)乘法和除法(Multiplication & Division)

\[g(x,y) = f_1(x,y) \cdot f_2(x,y) \quad \text{(掩膜区域提取/Mask Region)}\]
\[g(x,y) = f_1(x,y) \div f_2(x,y) \quad \text{(归一化/Normalize)}\]

1.4 集合与逻辑运算(Set and Logical Operations)

用于二值图像(Binary Image)的操作:

B1 B2 not B1 B1 and B2 B1 or B2 B1 xor B2
1 1 0 1 1 0
1 0 0 0 1 1
0 1 1 0 1 1
0 0 1 0 0 0

二、空间变换(Spatial Transformation)

2.1 为什么需要空间变换?

  • 图像配准(Registration):将不同个体/不同模态的图像对齐到同一空间
    • 个体大脑 → MNI 标准空间(跨个体比较)
    • CT 与 MRI 配准融合(放疗计划)
    • 同一患者不同时间点对比

2.2 仿射变换(Affine Transformation)

仿射变换的齐次坐标矩阵形式(3×3):

\[\begin{bmatrix} x' \\ y' \\ 1 \end{bmatrix} = \begin{bmatrix} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} x \\ y \\ 1 \end{bmatrix}\]

矩阵参数与四种基本操作的对应关系:

仿射矩阵 \(M = \begin{bmatrix} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ 0 & 0 & 1 \end{bmatrix}\) 中,各参数分别控制以下变换:

变换类型 对应参数 说明
平移(Translation) \(a_{13},\; a_{23}\) 右列:\(t_x = a_{13},\; t_y = a_{23}\)
旋转(Rotation) \(a_{11}, a_{12}, a_{21}, a_{22}\) \(2\times2\) 子矩阵整体:\(\begin{bmatrix}\cos\theta & -\sin\theta \\ \sin\theta & \cos\theta\end{bmatrix}\)
缩放(Scaling) \(a_{11},\; a_{22}\) 对角线元素:\(s_x = a_{11},\; s_y = a_{22}\)
错切(Shearing) \(a_{12},\; a_{21}\) 非对角线元素:水平错切 \(a_{12}\),垂直错切 \(a_{21}\)

:实际矩阵中 \(2\times2\) 子矩阵是四种变换复合的结果,并非单一变换。上述对应关系是针对纯该变换时的参数位置。

变换 自由度(2D) 说明
平移(Translation) 2 \(x'=x+t_x,\; y'=y+t_y\)
旋转(Rotation) 1 绕原点逆时针旋转 \(\theta\)
刚体(Rigid) 3 平移 + 旋转,保距保角
缩放(Scaling) 2 \(x'=s_x x,\; y'=s_y y\)
错切(Shearing) 2 平行四边形变形
仿射(Affine) 6 以上全部,保平行性

2.3 2-D 刚体变换(Rigid-body Transform)

\[M = \begin{bmatrix} \cos\theta & -\sin\theta & t_x \\ \sin\theta & \cos\theta & t_y \\ 0 & 0 & 1 \end{bmatrix}\]
  • 只有 3 个自由度(\(\theta, t_x, t_y\)
  • 旋转角度 \(\theta\) 的确定:需要 \(\sin\theta\)\(\cos\theta\) 两个参数才能唯一确定角度,否则存在两个解

历年卷考点:旋转矩阵参数

对于旋转矩阵 \(\begin{bmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{bmatrix} = \begin{bmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{bmatrix}\)

  • 仅知道 \(a_{11}\)(即 \(\cos\theta\))→ 无法确定 \(\theta\) 的正负(\(\cos\theta = \cos(-\theta)\)
  • 需要同时知道 \((a_{11}, a_{21})\)\((\cos\theta, \sin\theta)\) → 可唯一确定 \(\theta\)
  • 答案选 C(\(a_{11}, a_{21}\)

2.4 3-D 刚体变换

3-D 刚体变换有 6 个自由度: - 3 个平移:沿 X、Y、Z 轴 - 3 个旋转:绕 X 轴(Pitch \(\phi\))、绕 Y 轴(Roll \(\psi\))、绕 Z 轴(Yaw \(\theta\)

旋转矩阵由三个基本旋转矩阵合成,运算顺序影响结果

\[R = R_z(\theta) \cdot R_x(\phi) \cdot R_y(\psi)\]

绕 X 轴旋转 \(\phi\)\(\(R_x(\phi) = \begin{bmatrix} 1 & 0 & 0 \\ 0 & \cos\phi & \sin\phi \\ 0 & -\sin\phi & \cos\phi \end{bmatrix}\)\)

绕 Y 轴旋转 \(\psi\)\(\(R_y(\psi) = \begin{bmatrix} \cos\psi & 0 & -\sin\psi \\ 0 & 1 & 0 \\ \sin\psi & 0 & \cos\psi \end{bmatrix}\)\)

绕 Z 轴旋转 \(\theta\)\(\(R_z(\theta) = \begin{bmatrix} \cos\theta & \sin\theta & 0 \\ -\sin\theta & \cos\theta & 0 \\ 0 & 0 & 1 \end{bmatrix}\)\)

2.5 3-D 仿射变换

\[x' = A x, \quad A \in \mathbb{R}^{3 \times 3}\]

总映射包含平移、旋转、缩放,共 9 个参数(3个旋转 + 3个平移 + 3个缩放)。

运算顺序影响结果(先旋转后平移 ≠ 先平移后旋转)。

2.6 空间变换中的插值

空间变换后坐标可能为非整数 → 需要插值重采样。 - 最近邻(Nearest-neighbor) - 双线性(Bilinear) - 双三次(Bicubic) - 裁剪或放大(Crop or Enlarge)

2.7 非线性变换(Non-linear Transform)

  • 仿射变换:6 个自由度(2D)
  • 非线性变换:不断增加自由度,可以描述更复杂的局部形变
  • 通过位移场(Deformation Field)来表示每个像素的位移量

三、灰度变换 / 点处理(Intensity Transformations — Point Processing)

3.1 点处理的基本概念

点处理仅依赖于该点的灰度级,邻域大小为 \(1 \times 1\)

\[s = T(r)\]

\(T\) 成为灰度级映射函数(intensity mapping function)。

3.2 基本灰度变换

(1)线性变换

  • 恒等变换(Identity)\(s = r\)
  • 负片变换(Negative)\(s = L - 1 - r\)

负片变换的作用:将暗区域变亮,亮区域变暗,适用于观察暗区细节。

(2)对数变换(Logarithmic Transformation)

\[s = c \cdot \log(1 + r)\]
  • 非线性变换 — 注意!对数变换不是线性变换
  • 作用:压缩高灰度区域、扩展低灰度区域(增强暗区细节)
  • 适用于:傅里叶频谱显示(动态范围很大,需压缩)

(3)幂律变换 / 伽马变换(Power-law / Gamma Transformation)

\[s = c \cdot r^\gamma\]
\(\gamma\) 效果 适用场景
\(\gamma < 1\) 扩展暗区,压缩亮区 图像偏暗时提亮(如欠曝照片)
\(\gamma = 1\) 恒等变换
\(\gamma > 1\) 压缩暗区,扩展亮区 图像偏亮时压暗(如过曝照片)

历年卷考点:伽马变换的性质

  • \(\gamma < 1\) → 提升暗区亮度,整体变亮
  • \(\gamma > 1\) → 降低亮区亮度,整体变暗
  • 伽马变换是非线性变换
  • 伽马校正常用于显示设备的亮度响应补偿

(4)分段线性变换(Piecewise-Linear Transformation)

  • 可以任意复杂的形状
  • 需要更多用户输入
  • 典型应用:对比度拉伸(Contrast Stretching)
    • 将感兴趣灰度范围拉伸到全范围 \([0, L-1]\)
    • 增强特定灰度区间的对比度

(5)灰度级分层(Intensity-level Slicing)

  • 高亮特定灰度范围,去除背景
  • 保留感兴趣灰度区间(如某组织对应的灰度),其余置零
  • 类似于阈值二值化但有更多层次

四、直方图(Histogram)

4.1 直方图的定义

直方图统计每个灰度级的像素个数

\[h(r_k) = n_k, \quad k = 0, 1, \ldots, L-1\]

归一化直方图(概率密度函数 PDF 的估计):

\[p(r_k) = \frac{n_k}{n}, \quad n = \sum_{k=0}^{L-1} n_k\]

直方图的特性

  • 直方图不包含空间位置信息(丢失了像素在哪里)
    • 不同的图像可以有相同的直方图

4.2 直方图的统计量

统计量 公式 反映的图像属性
一阶矩(均值 Mean) \(\mu = \sum r \cdot p(r)\) 亮度(Brightness)
二阶矩(方差 Variance) \(\sigma^2 = \sum (r - \mu)^2 \cdot p(r)\) 对比度(Contrast)
高阶矩(N-th order) \(\mu_n = \sum (r - \mu)^n \cdot p(r)\) 更复杂的分布特征

历年卷考点

  • 直方图均值 \(\mu\) 越大 → 图像整体越
    • 直方图方差 \(\sigma^2\) 越大 → 图像对比度越高(灰度分布越分散)
    • 直方图方差小 → 灰度集中在均值附近,对比度低

4.3 直方图变换的基本条件

正向变换 \(s = T(r)\)\(0 \leq r \leq L-1\)

  1. \(T(r)\)单调不减函数(保证灰度顺序不颠倒)
  2. \(0 \leq T(r) \leq L-1\)(保证输出在有效范围内)

反向变换:\(r = T^{-1}(s)\)


五、直方图均衡化(Histogram Equalization)

5.1 基本思想

目标:设计 \(s = T(r)\),使输出图像的直方图 \(p_s(s)\)均匀分布\(p_s(s) = \frac{1}{L-1}\))。

5.2 连续情况

\[s = T(r) = (L-1) \int_0^r p_r(w) \, dw\]

即用原始图像的累积分布函数(CDF)作为变换函数。

5.3 离散情况

\[s_k = T(r_k) = (L-1) \sum_{j=0}^{k} p_r(r_j) = \frac{L-1}{N} \sum_{j=0}^{k} n_j\]

步骤: 1. 统计各灰度级的像素数 \(n_k\) 2. 计算概率 \(p(r_k) = n_k / n\) 3. 计算累积概率 CDF 4. 乘以 \((L-1)\)四舍五入取整得到映射值 \(s_k\)

关于零值背景处理

当图像背景区域含有大量零值像素时,直方图均衡化通常从灰度级 1 开始计算,忽略零值像素。否则均衡化效果会被背景主导。

5.4 均衡化的效果

  • 均衡化并非完美均匀(离散情况下只能是近似均匀)
  • 均衡化后:灰度级分布更均匀,但原始灰度级数量不增加
  • 均衡化增大对比度(灰度级范围被拉伸)
  • 均衡化后亮度会发生变化(均值可能移动)

六、直方图匹配(Histogram Matching)

6.1 为什么需要直方图匹配?

直方图均衡化 → 均匀直方图(总是固定的目标)

直方图匹配 → 任意指定形状的直方图作为目标

6.2 基本原理

定义三个变换: 1. \(s = T(r) = (L-1) \int_0^r p_r(w) \, dw\) — 将输入均衡化到均匀 2. \(G(z) = (L-1) \int_0^z p_z(w) \, dw\) — 将目标均衡化到均匀 3. \(z = G^{-1}(s) = G^{-1}[T(r)]\) — 将两者联系起来

因此 \(z = G^{-1}[T(r)]\) 即为从原始灰度 \(r\) 到目标灰度 \(z\) 的映射函数。

6.3 离散情况算法

  1. 计算输入图像的均衡化映射 \(s_k = T(r_k) = (L-1) \sum_{j=0}^{k} p_r(r_j)\),四舍五入
  2. 计算目标直方图的均衡化映射 \(v_q = G(z_q) = (L-1) \sum_{j=0}^{q} p_z(z_j)\)
  3. 构建查找表(Lookup Table):对于每个 \(s_k\),找到最接近的 \(v_q\),将 \(r_k\) 映射到 \(z_q\)
  4. 若有平局(tie),选较小的 \(z_q\)

七、本章总结(Summary)

数学运算

  • 逐像素算术运算:加(降噪)→ 减(DSA检测差异)→ 乘(掩膜)→ 除(归一化)
  • 集合与逻辑运算:用于二值图像(AND/OR/XOR/NOT)
  • 线性算子:满足可加性 + 齐次性

空间变换

  • 刚体变换:3 自由度(2D)/ 6 自由度(3D),保距保角
  • 仿射变换:6 自由度(2D)/ 12 自由度(3D),保平行性
  • 非线性变换:位移场,无限自由度
  • 旋转矩阵:\(\begin{bmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{bmatrix}\),需 \(\sin\theta\)\(\cos\theta\) 两个参数定角

强度变换(点处理)

  • \(s = T(r)\),仅取决于单点灰度值
  • 线性:负片 \(s = L-1-r\)
  • 非线性:对数 \(s = c\log(1+r)\)、伽马 \(s = cr^\gamma\)
  • 分段线性:对比度拉伸、灰度分层

直方图

  • 统计各灰度级像素数,不含空间信息
  • 均值 → 亮度,方差 → 对比度
  • 直方图均衡化 → 均匀分布(CDF 做变换函数)
  • 直方图匹配 → 匹配到指定直方图形状

作业解答(BIP Homework 1)

以下为 BIP_hw1 的中文翻译题目及详细解答。


题目 1:2D 空间仿射变换

题目:三角形 A 的顶点为 \(A_1(0,0)\)\(A_2(2,0)\)\(A_3(0,1)\)。三角形 B 的顶点为 \(B_1(2,1)\)\(B_2(2,5)\)\(B_3(3,1)\)

(1) 按 S → R → T 的顺序,设计 \(3 \times 3\) 齐次坐标仿射变换矩阵(缩放 S、旋转 R、平移 T)。

(2) 计算总体变换矩阵 \(M = T \cdot R \cdot S\)

解答

(1) 确定各变换矩阵

先分析三角形 A → B 的变化:

  • \(A_1A_2 = (2,0)\)\(B_1B_2 = (0,4)\):边长从 2 变为 4 → 需要缩放,且在 \(y\) 方向上放大更显著
  • \(A_1A_3 = (0,1)\)\(B_1B_3 = (1,0)\):A 中沿 \(y\) 轴的单位向量对应 B 中沿 \(x\) 轴的单位向量 → 逆时针旋转 \(90°\)

缩放矩阵\(x\) 方向缩放因子=2, \(y\) 方向缩放因子=1):

\[S = \begin{bmatrix} 2 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{bmatrix}\]

实际上从边长看:\(|A_1A_2|=2 \to |B_1B_2|=4\)\(|A_1A_3|=1 \to |B_1B_3|=1\)。但由于旋转的存在,需要整体考虑。题目中原文给出的 S 是:

\[S = \begin{bmatrix} 2 & 0 & 0 \\ 0 & -1 & 0 \\ 0 & 0 & 1 \end{bmatrix}\]

旋转矩阵(逆时针 \(90°\)\(\cos 90° = 0\), \(\sin 90° = 1\)):

\[R = \begin{bmatrix} \cos 90° & -\sin 90° & 0 \\ \sin 90° & \cos 90° & 0 \\ 0 & 0 & 1 \end{bmatrix} = \begin{bmatrix} 0 & -1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 1 \end{bmatrix}\]

平移矩阵\(A_1(0,0) \to B_1(2,1)\)):

\[T = \begin{bmatrix} 1 & 0 & 2 \\ 0 & 1 & 1 \\ 0 & 0 & 1 \end{bmatrix}\]

(2) 总体变换矩阵

\[M = T \cdot R \cdot S = \begin{bmatrix} 1 & 0 & 2 \\ 0 & 1 & 1 \\ 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} 0 & -1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} 2 & 0 & 0 \\ 0 & -1 & 0 \\ 0 & 0 & 1 \end{bmatrix} = \begin{bmatrix} 0 & 1 & 2 \\ 2 & 0 & 1 \\ 0 & 0 & 1 \end{bmatrix}\]

验证:将 A 的三个顶点代入,检查是否得到 B:

\[M \begin{bmatrix} 0 \\ 0 \\ 1 \end{bmatrix} = \begin{bmatrix} 2 \\ 1 \\ 1 \end{bmatrix} = B_1(2,1) \quad \checkmark\]
\[M \begin{bmatrix} 2 \\ 0 \\ 1 \end{bmatrix} = \begin{bmatrix} 2 \\ 5 \\ 1 \end{bmatrix} = B_2(2,5) \quad \checkmark\]
\[M \begin{bmatrix} 0 \\ 1 \\ 1 \end{bmatrix} = \begin{bmatrix} 3 \\ 1 \\ 1 \end{bmatrix} = B_3(3,1) \quad \checkmark\]

题目 2:连续直方图匹配

题目:给定两个随机变量 \(R\)\(Z\) 的 PDF:

\[p_r(r) = 2 - 2r, \quad p_z(z) = 3z^2\]

求将原始灰度 \(r\) 映射到目标灰度 \(z\) 的变换函数 \(z = T(r)\)

解答

第一步:分别求 CDF(累积分布函数)

\[T_r(r) = \int_0^r p_r(w) \, dw = \int_0^r (2-2w) \, dw = 2r - r^2, \quad 0 \leq r \leq 1\]
\[G(z) = \int_0^z p_z(w) \, dw = \int_0^z 3w^2 \, dw = z^3, \quad 0 \leq z \leq 1\]

第二步:由直方图匹配原理 \(T_r(r) = G(z)\)

\[2r - r^2 = z^3\]

第三步:解出 \(z = T(r)\)

\[z = T(r) = \sqrt[3]{2r - r^2}\]

题目 3:离散直方图均衡化与匹配

题目:一幅 100 像素的灰度图像(\(L=8\),灰度级 0~7)。

  • 原始灰度分布 \(n(r_k)\)\([40, 20, 15, 10, 5, 5, 3, 2]\)
  • 目标概率分布 \(p_z(z_k)\)\([0, 0.07, 0.10, 0.26, 0.28, 0.15, 0.11, 0.03]\)

(1) 对原始图像做直方图均衡化,求离散映射值 \(s_k\)

(2) 计算目标直方图的变换函数 \(G(z_k)\)

(3) 做直方图匹配,将原始灰度 \(r_k\) 映射到目标灰度 \(z_k\)(平局时选较小的 \(z\)

解答

(1) 直方图均衡化

公式:\(s_k = (L-1) \sum_{j=0}^{k} p_r(r_j) = 7 \sum_{j=0}^{k} \frac{n_j}{n}\)

总像素数 \(n = 100\)

\(r_k\) \(n_k\) \(p_r(r_k)\) \(\sum p_r\) \(7 \times \sum p_r\) \(s_k\)(四舍五入)
0 40 0.40 0.40 2.80 3
1 20 0.20 0.60 4.20 4
2 15 0.15 0.75 5.25 5
3 10 0.10 0.85 5.95 6
4 5 0.05 0.90 6.30 6
5 5 0.05 0.95 6.65 7
6 3 0.03 0.98 6.86 7
7 2 0.02 1.00 7.00 7

均衡化映射:\(0 \to 3,\; 1 \to 4,\; 2 \to 5,\; 3 \to 6,\; 4 \to 6,\; 5 \to 7,\; 6 \to 7,\; 7 \to 7\)

(2) 目标直方图的 \(G(z_k)\)

公式:\(G(z_k) = (L-1) \sum_{j=0}^{k} p_z(z_j) = 7 \sum_{j=0}^{k} p_z(z_j)\)

\(z_k\) \(p_z(z_k)\) \(\sum p_z\) \(G(z_k)=7 \times \sum p_z\) 四舍五入
0 0.00 0.00 0.00 0
1 0.07 0.07 0.49 0
2 0.10 0.17 1.19 1
3 0.26 0.43 3.01 3
4 0.28 0.71 4.97 5
5 0.15 0.86 6.02 6
6 0.11 0.97 6.79 7
7 0.03 1.00 7.00 7

(3) 直方图匹配 — 构建查找表

对于每个 \(r_k\) 的均衡化值 \(s_k\),在 \(G(z_k)\) 中找最接近的值,映射到对应 \(z_k\)(平局选较小的 \(z\)):

\(r_k\) \(s_k\) 匹配的 \(G(z)\) 对应的 \(z_k\)(匹配结果)
0 3 \(G(3)=3\) 3
1 4 \(G(3)=3\) vs \(G(4)=5\),$ 4-3
2 5 \(G(4)=5\) 4
3 6 \(G(5)=6\) 5
4 6 \(G(5)=6\) 5
5 7 \(G(6)=7\), \(G(7)=7\),平局选小 → 6
6 7 同上 → 6
7 7 同上 → 6

最终匹配映射:

\(r_k\) 0 1 2 3 4 5 6 7
\(z_k\) 3 3 4 5 5 6 6 6

实验原理说明(LAB1)

以下基于 LAB1_3230103696_final.ipynb 的实验报告,解释各实验涉及的图像处理原理(不含代码细节)。

实验 1:灰度渐变图像生成与马赫带效应

实验内容:生成 \(256 \times 256\) 平滑渐变图像和条带渐变图像(条带宽 16 像素,步长 16)

涉及原理

  • 采样与量化:将连续的灰度变化离散化为 \(256 \times 256\) 个像素,每个像素用 8-bit 整数 \([0,255]\) 表示
  • 马赫带效应(Mach Band Effect):人类视觉系统中视网膜神经节细胞的侧抑制(Lateral Inhibition)机制造成的视错觉。在两个亮度不同的相邻均匀条带交界处,人眼感知到暗侧边缘更暗、亮侧边缘更亮——尽管物理上每个条带内部亮度完全均匀。这说明人眼感知的亮度并不完全等于物理亮度
  • 该效应提醒我们:在医学图像分析中,必须考虑人眼视觉特性对图像判断的影响

实验 2:灰度量化与伪轮廓

实验内容:读取灰度图像,将灰度级从 256 级压缩到 \(2^n\) 级(分别取 \(n=8,6,4\)),观察效果

涉及原理

  • 量化(Quantization):将连续/高精度灰度值映射到有限个离散灰度级。量化级数 \(K = 2^n\)\(n\) 为位深度(bit depth)
  • 量化误差与伪轮廓(False Contouring):当灰度级减少到不足以平滑过渡时,原本连续的灰度变化区域出现阶梯状色块(伪轮廓)。\(n=6\)(64级)时人眼几乎无法察觉差异;\(n=4\)(16级)时伪轮廓非常明显
  • 这解释了为什么 CT、MRI 等医学图像通常采用 12-bit 或 16-bit 高动态范围存储——微小的灰度变化可能包含关键的病理信息,低比特深度会导致信息丢失

实验 3:图像降采样/上采样与灰度剖面分析

实验内容:将图像缩小至 \(1/4\) 后再放大 4 倍恢复原尺寸,对比特定列的灰度剖面线(Profile)

涉及原理

  • 双线性插值(Bilinear Interpolation):使用目标点周围 \(2 \times 2\)(4 个像素)进行线性插值来估计未知像素值,缩放操作中 order=1 即使用双线性插值
  • 降采样的不可逆信息丢失:缩小图像时丢弃了高频细节信息(如边缘、纹理的精细变化)。再放大时,插值算法只能平滑地填补像素,无法恢复已丢失的高频信息
  • 灰度剖面线(Profile / Line Plot):沿图像某列取灰度值绘制一维曲线。原图剖面线包含丰富的高频起伏(剧烈变化),而恢复后的剖面线更平滑(高频信息丢失),直观展示了采样定理的约束——低于 Nyquist 频率的采样导致不可逆的信息损失
  • 这强调了医学影像采集阶段保持高空间分辨率的重要性

实验 4:阈值分割与伪彩色叠加

实验内容:设定阈值(\(I > \text{threshold}\))生成掩膜,将掩膜区域在红色通道高亮,生成彩色叠加图像

涉及原理

  • 阈值分割(Thresholding):根据像素灰度值与设定阈值的大小关系,将图像划分为目标区域和背景区域,生成二值掩膜(Mask)。这是最简单的图像分割方法
  • 单通道到多通道的转换:灰度图像 \(N \times M\) → 三通道 RGB 图像 \(N \times M \times 3\),通过 np.stack 复制三个相同的灰度通道
  • 伪彩色叠加(Pseudocolor Overlay):利用掩膜对特定通道赋值,是一种强度分层(Intensity Slicing)的伪彩色技术。将 ROI 区域在红色通道设为 255(亮红),绿色和蓝色通道清零 → 目标区域呈现红色高亮
  • 阈值选择的敏感性:阈值降低 → 掩膜条件宽松 → 更多像素被标记(可能包含伪阳性);阈值升高 → 掩膜条件严苛 → 只有极亮区域被标记(可能遗漏目标)。这体现了医学图像分割中最优阈值选择的重要性——需根据不同组织的灰度分布特征来设定阈值

历年卷解答

一、伽马变换的性质哪个是对的(2020)

知识点定位:点处理(Point Processing)— 伽马变换

伽马变换的核心性质

\[s = c \cdot r^\gamma\]
性质 对/错 说明
伽马变换是线性变换 伽马变换是非线性变换\(s = cr^\gamma\) 不是直线关系)
\(\gamma < 1\) 时整体变亮 暗区被拉伸,亮区被压缩 → 图像整体提亮
\(\gamma > 1\) 时整体变亮 \(\gamma > 1\) 时压缩暗区、拉伸亮区 → 图像整体变暗
\(\gamma = 1\) 时是恒等变换 \(s = cr\),若 \(c=1\) 则为恒等变换

常见正确说法: - 伽马变换是非线性的点处理操作 - \(\gamma < 1\) 增强暗区细节(适合偏暗图像) - \(\gamma > 1\) 增强亮区细节(适合偏亮图像) - 常用于显示设备的亮度响应补偿(伽马校正)


二、对数变换是灰度值的线性变换(2020)

知识点定位:点处理(Point Processing)— 对数变换

答案错误。

对数变换 \(s = c \cdot \log(1+r)\)非线性变换。其特点:

  • 压缩高灰度区域(大 \(r\) 值被"压扁")
  • 扩展低灰度区域(小 \(r\) 值被"拉宽")
  • 适用于动态范围很大的图像(如傅里叶频谱),增强暗区细节的可视性
  • 与伽马变换、指数变换一样,都属于非线性点处理

三、灰度直方图的说法(2021)

知识点定位:直方图(Histogram)的基本概念

常见判断

说法 对/错 解释
直方图保留了像素的空间位置信息 直方图不包含空间信息,只统计各灰度级像素数量
不同图像可以有相同的直方图 像素位置被打乱不会改变直方图
直方图是灰度的概率密度函数估计 归一化后 \(p(r_k)=n_k/n\) 即为 PDF 估计
直方图可以反映图像的亮度 均值 \(\mu\) 反映亮度
直方图可以反映图像的对比度 方差 \(\sigma^2\) 反映对比度(分布越分散对比度越高)

四、直方图均衡化后亮度、对比度是否改变(2021)

知识点定位:直方图均衡化(Histogram Equalization)

答案

对比度 — 增大:直方图均衡化将灰度级拉伸到整个 \([0, L-1]\) 范围,使得像素灰度分布更加均匀,灰度动态范围被充分利用。因此对比度总体上增大

亮度 — 可能改变:均衡化后图像的均值会发生改变。若原图中大量像素集中在低灰度(暗图),均衡化后暗区被拉伸,均值可能向右移动(变亮);反之则可能向左移动。亮度变化方向取决于原图的灰度分布

总结: - 均衡化一定增大对比度(灰度分布被拉宽) - 均衡化亮度不保证不变(均值可能漂移) - 均衡化后直方图并非完美平坦(离散情况下是近似均匀)


五、图像灰度方差较大反映了什么(2022)

知识点定位:直方图统计量

答案对比度高。

解释:

\[\sigma^2 = \sum_{k=0}^{L-1} (r_k - \mu)^2 \cdot p(r_k)\]
  • 方差(二阶中心矩)衡量灰度值偏离均值的程度
  • 方差大 → 像素灰度值分散在各个灰度级 → 黑白分明,对比度高
  • 方差小 → 像素灰度集中在均值附近 → 灰度单一,对比度低
统计量 反映属性
均值 \(\mu\) 亮度(Brightness)
方差 \(\sigma^2\) 对比度(Contrast)

六、选择合适的 Gamma 变换(2022)

知识点定位:点处理 — 伽马变换

选择原则

图像特点 推荐 \(\gamma\) 原因
图像偏暗(欠曝) \(\gamma < 1\)(如 0.4, 0.6) 拉伸暗区,压缩亮区 → 提亮暗部细节
图像偏亮(过曝) \(\gamma > 1\)(如 1.5, 2.0) 压缩暗区,拉伸亮区 → 压暗暗部、增强亮部细节
亮度适中 \(\gamma = 1\) 恒等变换,不做改变

判断方法:看原图直方图分布——主要像素集中在低灰度端 → 偏暗 → 选 \(\gamma < 1\);集中在高灰度端 → 偏亮 → 选 \(\gamma > 1\)