基于变分/优化的图像与视频处理(中文 Markdown 讲义)

关键词:变分建模、凸/非凸优化、近端算子、算子分裂、稀疏/低秩/非负分解、字典学习、Bregman、半正定规划(SDP)、视频时空模型
文件组织:index.md + chapter1.md + chapter2.md + ... + appendixA.md ...


阅读路线建议

  • 快速上手(做出可跑的优化型去噪/去模糊):第1章 → 第2章 → 第3章 → 第4章 → 第6–9章
  • 稀疏与字典学习主线:第10章 → 第11章(卷积稀疏)→ 第16章(PnP/展开)
  • 低秩分解与鲁棒背景建模(Robust PCA):第12章 → 第15章
  • 非负分解(NMF)与光谱/医学/材料成像:第13章
  • 高级凸优化与组合问题凸松弛(SDP):第14章
  • 视频专题(光流 + 时空正则 + 低秩-稀疏):第15章
  • 工程与复现实验:第17章 + 附录

目录(Chapters & Sections)

第1章 导论:从成像模型到优化问题

  • 1.1 图像/视频逆问题全景图
  • 1.1.1 去噪、去模糊、超分、修复/补全、压缩感知
  • 1.1.2 视频:去噪、去模糊、插帧、去抖、背景建模
  • 1.2 观测与退化:y = A(x) + n 的统一表达
  • 1.2.1 线性算子与非线性算子(相机响应、饱和、Poisson)
  • 1.2.2 噪声模型:Gaussian / Poisson / 混合噪声 / 脉冲噪声
  • 1.3 变分建模模板:数据项 + 正则项 + 约束
  • 1.3.1 MAP 视角与正则化的统计含义
  • 1.3.2 约束型 vs 惩罚型:min R(x) s.t. D(Ax,y)≤ε
  • 1.4 先验/结构:稀疏、低秩、分段光滑、非局部、自相似
  • 1.5 优化算法谱系(你将在后续章节反复见到的“家族树”)
  • 1.5.1 一阶/二阶,确定性/随机
  • 1.5.2 近端、对偶、分裂、Bregman、原始-对偶
  • 1.6 实验指标与复现习惯
  • 1.6.1 PSNR/SSIM/LPIPS(与优化目标的关系与偏差)
  • 1.6.2 收敛诊断:残差、对偶间隙、停止准则

第2章 数学与算子预备:线性代数、离散化与成像算子

  • 2.1 向量化、矩阵化与“把图像当向量”的代价
  • 2.2 卷积、Toeplitz/循环矩阵与 FFT 加速
  • 2.2.1 周期/镜像/零填充边界条件的影响
  • 2.3 常用离散微分算子:梯度/散度/Laplacian
  • 2.3.1 各向同性/各向异性 TV 的离散形式
  • 2.4 范数、半范数与常见几何:ℓ0/ℓ1/ℓ2/ℓ∞、核范数
  • 2.5 SVD 与谱:低秩近似、奇异值阈值化的直觉
  • 2.6 张量与 Kronecker:把视频/多光谱纳入统一表示
  • 2.7 常见成像算子库(“A” 的具体长相)
  • 2.7.1 去模糊(PSF)、降采样、掩膜/缺失
  • 2.7.2 频域测量(MRI/CT 的抽象算子视角:傅里叶/Radon)

第3章 凸分析与对偶:从次梯度到近端算子

  • 3.1 凸集、凸函数与次梯度(为什么不可导也能优化)
  • 3.2 Fenchel 共轭与对偶问题(“把难题换个变量做”)
  • 3.3 KKT 条件与拉格朗日乘子:约束优化的通用语言
  • 3.4 近端算子(Prox)与 Moreau 分解
  • 3.4.1 典型 Prox:ℓ1、TV(分裂后)、核范数、指示函数
  • 3.5 光滑/非光滑分解:复合优化 f(x)+g(x)
  • 3.6 Lipschitz、强凸与收敛率速查
  • 3.7 实用技巧:尺度归一化、算子范数估计、步长选择

第4章 经典变分模型:Tikhonov、TV、小波与非局部先验

  • 4.1 二次正则与 Tikhonov:从 Wiener 到岭回归
  • 4.2 ROF/TV 去噪:min 1/2||x-y||^2 + λ TV(x)
  • 4.2.1 各向同性 vs 各向异性 TV
  • 4.2.2 TV 的阶梯效应与改进方向
  • 4.3 高阶与结构化正则:TGV、Hessian-Schatten、方向性正则
  • 4.4 小波/Frame 正则:分析型 vs 合成型
  • 4.5 非局部正则(NLM 思想的变分化):NLTV/图拉普拉斯
  • 4.6 数据项的鲁棒化:ℓ2ℓ1、Huber、KL(Poisson)
  • 4.7 统一对比:模型偏好、伪影类型、适用场景表

第5章 鲁棒统计与非凸优化:从 M-估计到 IRLS/MM

  • 5.1 鲁棒损失函数族:Huber/Charbonnier/Geman–McClure/Welsch
  • 5.2 非凸稀疏:ℓp (0<p<1)、log-sum、SCAD、MCP
  • 5.3 主要化-最小化(MM)框架:把非凸“变得可做”
  • 5.4 IRLS(迭代重加权最小二乘):推导、稳定性与陷阱
  • 5.5 半二次分裂(Half-Quadratic Splitting)与 continuation
  • 5.6 收敛与实践:局部最优、初始化、参数路径
  • 5.7 何时值得用非凸:收益-风险清单与可解释案例

第6章 一阶优化与近端梯度:ISTA/FISTA 与变体

  • 6.1 梯度下降与加速:步长、回溯线搜索、动量直觉
  • 6.2 近端梯度法(PGD):x_{k+1}=prox_{αg}(x_k-α∇f)
  • 6.3 ISTA/FISTA:稀疏恢复与成像中的标配
  • 6.4 坐标下降与块坐标(适合大规模/结构化变量)
  • 6.5 随机/小批量:当数据项来自海量观测时
  • 6.6 近端牛顿/拟牛顿(面向病态问题的“二阶味道”)
  • 6.7 停止准则与数值陷阱:梯度范数不够用的时候

第7章 算子分裂 I:ADMM、Douglas–Rachford 与变量分裂

  • 7.1 为什么要分裂:把一个难 Prox 拆成多个简单 Prox
  • 7.2 ADMM 标准形式与推导(增广拉格朗日)
  • 7.3 典型成像应用模板
  • 7.3.1 TV 去噪/去模糊的 ADMM
  • 7.3.2 稀疏表示(Lasso)与约束型问题
  • 7.4 Douglas–Rachford 与反射算子直觉
  • 7.5 ρ 参数、预条件与收敛行为(实践指南)
  • 7.6 多块 ADMM、线性化 ADMM 与大规模版本
  • 7.7 与 Split Bregman/原始-对偶方法的关系预告

第8章 算子分裂 II:原始-对偶(PDHG/Chambolle–Pock)

  • 8.1 从对偶化到原始-对偶迭代:为什么更适合 TV/约束
  • 8.2 Chambolle–Pock(CP)算法:形式、步长条件、收敛
  • 8.3 PDHG 与镜像下降的联系
  • 8.4 TV-L1、约束型模型、指标函数的高效处理
  • 8.5 非线性算子与线性化原始-对偶
  • 8.6 实战细节:算子范数估计、过松弛、warm-start
  • 8.7 与 ADMM 的对照表:何时选谁?

第9章 Split Bregman 迭代:Bregman 距离与“罚项不够硬”的修复

  • 9.1 Bregman 距离:定义、直觉与几何意义
  • 9.2 Bregman 迭代:从约束问题到一串易解子问题
  • 9.3 Split Bregman 推导(以 TV/ℓ1 为主线)
  • 9.4 与 ADMM 的等价/近似等价关系(变量对应与差异)
  • 9.5 Continuation 策略与收敛加速经验
  • 9.6 典型案例:TV 去噪、TV 去模糊、压缩感知 MRI
  • 9.7 常见误区:参数、边界、停止准则与数值稳定性

第10章 稀疏表示与字典学习:从 Lasso 到 K-SVD

  • 10.1 稀疏表示两种视角:合成(synthesis)vs 分析(analysis)
  • 10.2 Sparse Coding:Lasso / Basis Pursuit / OMP
  • 10.3 字典学习基本问题:min_{D,α} ||X-Dα|| + λ||α||_1
  • 10.4 K-SVD:交替最小化与 SVD 更新
  • 10.5 Online Dictionary Learning:大样本与流式数据
  • 10.6 约束与先验:非负、正交、结构化字典
  • 10.7 成像应用
  • 10.7.1 字典学习去噪(patch-based)
  • 10.7.2 稀疏先验超分/修复/压缩重建

第11章 卷积稀疏编码与卷积字典学习(CSC/CDL)

  • 11.1 为什么从 patch 转向 convolution:一致性与平移不变
  • 11.2 CSC 模型:min_x 1/2||∑ d_k * z_k - y||^2 + λ∑||z_k||_1
  • 11.3 频域求解与大规模优化技巧(FFT、对角化)
  • 11.4 ADMM 求解 CSC:子问题可解性与实现细节
  • 11.5 卷积字典学习(CDL):交替更新与约束(单位范数等)
  • 11.6 多尺度/多通道(彩色、视频、特征图)扩展
  • 11.7 与深度网络的结构对应:从字典到卷积层的桥梁

第12章 低秩模型与 Robust PCA:核范数、矩阵补全与 L+S 分解

  • 12.1 低秩的物理含义:冗余、子空间与动态背景
  • 12.2 核范数松弛:从 rank 到 ||·||_*
  • 12.3 矩阵补全(Matrix Completion):观测缺失下的恢复
  • 12.4 Robust PCA(RPCA):Principal Component Pursuit(PCP)
  • 12.4.1 模型:min ||L||_* + λ||S||_1 s.t. X=L+S
  • 12.4.2 可辨识性直觉:低秩 + 稀疏何时可分?
  • 12.5 求解器:SVT / IALM / ADMM / 近端梯度
  • 12.6 变体:噪声版 RPCA、加权核范数、结构化稀疏(group/TV)
  • 12.7 成像与视频应用
  • 12.7.1 背景-前景分离(background subtraction)
  • 12.7.2 光照变化与遮挡下的鲁棒建模

第13章 NMF 与非负约束分解:可解释表示与分解优化

  • 13.1 NMF 基本形式:X ≈ WH, W≥0, H≥0
  • 13.2 目标函数家族:Frobenius / KL / β-divergence
  • 13.3 经典算法:乘法更新(MU)、投影梯度(PG)、ALS
  • 13.4 稀疏 NMF、平滑 NMF、图正则 NMF
  • 13.5 可辨识性与尺度/置换不唯一:怎么解释分解结果
  • 13.6 应用
  • 13.6.1 高光谱解混(unmixing)
  • 13.6.2 医学/材料成像中的组分分离
  • 13.7 与 RPCA/字典学习的对照:约束不同带来的“语义差异”

第14章 半正定规划(SDP)与凸松弛:从组合问题到可解优化

  • 14.1 为什么 SDP 在视觉里重要:全局松弛、可证明边界
  • 14.2 SDP 标准形式与对偶(以及 KKT 的几何意义)
  • 14.3 经典凸松弛范式
  • 14.3.1 Max-Cut/图割的 SDP 松弛(图分割直觉)
  • 14.3.2 多标签/匹配/聚类的 SDP/谱松弛
  • 14.4 视觉应用案例
  • 14.4.1 分割与聚类:normalized cut、相关松弛
  • 14.4.2 形状匹配/点集配准:正定约束的作用
  • 14.4.3 PhaseLift(相位恢复)的 SDP 思路(选读)
  • 14.5 求解方法:内点法 vs 一阶/低秩因子化(规模权衡)
  • 14.6 工程实践:数值稳定、约束构造与可扩展性建议

第15章 视频专题:光流、时空正则与低秩-稀疏张量分解

  • 15.1 视频退化模型:时空算子、运动与遮挡
  • 15.2 变分光流(Optical Flow)
  • 15.2.1 亮度恒常 + 平滑:Horn–Schunck 回顾
  • 15.2.2 TV-L1 光流与鲁棒数据项(适合大运动/离群)
  • 15.2.3 原始-对偶/分裂法求解光流能量
  • 15.3 视频去噪/去模糊:时空 TV、非局部时空、运动补偿正则
  • 15.4 低秩 + 稀疏在视频中的自然出现:背景/前景/噪声
  • 15.5 张量扩展:Tensor RPCA、Tucker/CP/t-SVD(选读但常用)
  • 15.6 案例:监控背景建模、动态纹理分离、雨雪/遮挡抑制
  • 15.7 评测与数据:时间一致性指标、闪烁伪影分析

第16章 Plug-and-Play(PnP)/RED 与“算法展开”:优化与深度的结合

  • 16.1 PnP 思想:把先验 Prox 换成“去噪器”
  • 16.2 PnP-ADMM / PnP-PDHG:形式、直觉与注意事项
  • 16.3 RED(Regularization by Denoising):从固定点到能量解释
  • 16.4 可收敛性讨论:非扩张、平均算子、经验稳定技巧
  • 16.5 算法展开(Unrolling/Unfolding):从迭代到网络结构
  • 16.6 与稀疏/字典学习的联系:可解释模块化网络
  • 16.7 实战:如何把传统优化 baseline 变成可训练系统

第17章 工程实现与复现实验:从“公式”到“可跑代码”

  • 17.1 线性算子编程范式:显式矩阵 vs 隐式算子(forward/adjoint)
  • 17.2 复杂度与加速:FFT、并行、GPU、批处理
  • 17.3 数值细节:归一化、预条件、溢出/下溢与精度
  • 17.4 超参数选择:λ/ρ/步长 的经验规律与自动策略
  • 17.5 收敛与停止:原始/对偶残差、目标值曲线、早停
  • 17.6 可复现报告:种子、版本、数据划分与结果记录模板
  • 17.7 常见“跑不对”的排查清单(debug playbook)

附录(Appendices)

附录A 常用近端算子与投影算子速查表

  • A.1 ℓ1/group-ℓ1/TV(分裂后)的 Prox
  • A.2 核范数(SVT)、非负约束、盒约束、单纯形投影
  • A.3 KL/Poisson 数据项的近端与数值实现要点

附录B 重要推导与证明补充

  • B.1 Fenchel 对偶推导模板
  • B.2 ADMM/CP 的收敛条件(常用假设清单)
  • B.3 IRLS/MM 的单调性与反例警告

附录C 实验与代码模板

  • C.1 统一的算子接口(forward/adjoint)
  • C.2 ADMM/PDHG/Split-Bregman 伪代码与可替换模块
  • C.3 Baseline 配置文件(去噪/去模糊/修复/背景分离)

附录D 术语表与阅读路线(经典论文/书籍关键词索引)

  • D.1 术语与符号约定
  • D.2 “按问题找方法 / 按方法找问题”的交叉索引

约定与符号(放在各章开头也可复用)

  • 图像:x ∈ R^{H×W}(实现中常向量化为 R^N
  • 视频:X ∈ R^{H×W×T} 或展平为矩阵/张量
  • 成像算子:A(含 forward)与 A*(伴随/adjoint)
  • 基本变分形式:min_x D(Ax,y) + λ R(x)