首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【阅读笔记】基于残差信息的上采样Fast Image/Video Upsampling

【阅读笔记】基于残差信息的上采样Fast Image/Video Upsampling

作者头像
AomanHao
发布2026-08-12 09:19:26
发布2026-08-12 09:19:26
1220
举报

一、论文简述

经典论文《Fast Image/Video Upsampling》,论文提出了一种简单且高效的上采样方法,可自动提升图像/视频的分辨率,同时保留其关键结构信息。本方法的主要优势在于采用了一种反馈控制框架:该框架能够从输入数据中精准还原高分辨率图像信息,而无需引入基于其他示例学习的额外局部结构约束。

二、算法成像模型

真实图像退化过程(HR → LR)物理模型:

I_{LR} = (I_{HR} * k) \downarrow_s + n

其中,I_{HR}:高分辨率图像;*K:卷积相机点扩散函数 PSF(模糊核);\downarrow_s:表示s 倍下采样;n:噪声。

上采样,已知低分辨率LR 图,反推高分辨率HR 图。

本文创新:反馈控制迭代机制约束逆过程,保证重建的 HR 再次退化后和原始 LR 保持一致。

三、整体算法架构:反馈闭环迭代框架

Feedback-Control Upsampling

整体流程包含两个步骤:一是图像反卷积步骤(以浅绿色标示),用于消除线性滤波的影响;二是反馈控制过程(以浅灰色且带红色边框标示),用于约束图像的上采样过程。本系统输入为低分辨率图像或视频帧L,首先通过快速双三次插值法(以粉色标示)将其上采样至目标分辨率;随后,初始上采样后的图像H̃(0)将在反馈控制循环中进行迭代优化,从而逐步降低图像模糊度并恢复自然结构。

全部卷积运算转到频域 FFT 加速,计算成本极低。

步骤 1:初始上采样

使用bicubic插值,把I_{LR}插值到初始高清估计图 L_0,作为迭代起点。

步骤 2:退化高分辨率图求残差信息

  1. L_0与模糊核 K卷积得到中间模糊图;
  2. 中间模糊图下采样回到原始 LR 尺寸;得到退化后的图像\tilde{I}_{LR}

计算残差:e = I_{LR} - \tilde{I}_{LR} 残差含义:当前重建的 HR 和真实高清之间的偏差。

备注:高斯核大小固定为13×13。较大的核会导致高频信息丢失,而过小的核则无法充分抑制混叠问题。

步骤 3:残差上采样反馈修正

  1. 将残差 e 上采样放大至 HR 分辨率;
  2. 用残差反向修正上一轮 HR 结果:
I_{t+1}=I_t+\lambda \cdot \text{Upsample}(e)

\lambda 为增益系数,控制细节程度,0.3~0.5 通用;画面抖动 / 过冲调小至 0.2

步骤 4:迭代终止

重复步骤 2-3, 直到残差小于阈值(一般仅迭代3-6轮即可收敛)。

卷积全部在频域通过 FFT/IFFT 实现,频域卷积复杂度 (O(N\log N)),远低于空域卷积,因此速度极快。

四、论文仿真

论文仿真结果如下:

五、后续分析

论文用FFT到频域处理,本质是做滤波处理掉噪声,得到平滑图,那在空域做滤波处理也是可以的,频域处理的优点在于大模糊核处理速度较慢。

  1. 模糊核很小(高斯核 σ=1.2,核尺寸 7×7) (m=7),空域计算量很低,空域速度 ≈ FFT,甚至更快,此时推荐空域。
  2. 大模糊核(老旧照片大模糊 σ>2.5,核 15×15 及以上) 空域复杂度随核平方暴涨,FFT 优势极大,必须用频域加速。

空域滤波还有其他优点:

> FFT 版本 FFT 默认循环边界(周期延拓),图像左右、上下首尾相连做卷积,容易产生振铃效应、边缘环状虚影,尤其画面明暗反差大时非常明显。 > 之前代码用 circshift + 'symmetric' 只能小幅缓解,无法彻底消除循环卷积带来的振铃。

> 空域 imfilter ('symmetric') 采用镜像对称延拓边界,符合真实图像边界分布,几乎不会产生振铃伪影,画质观感更好。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2026-08-11,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 一、论文简述
  • 二、算法成像模型
  • 三、整体算法架构:反馈闭环迭代框架
    • 步骤 1:初始上采样
    • 步骤 2:退化高分辨率图求残差信息
    • 步骤 3:残差上采样反馈修正
    • 步骤 4:迭代终止
  • 四、论文仿真
  • 五、后续分析
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档