PixRestore:港理工与OPPO联合推出的轻量统一图像修复模型

3 阅读

PixRestore 是什么

PixRestore 是由香港理工大学与 OPPO 研究院联合开发的一个统一图像修复模型。它不依赖传统的潜在空间(latent space)处理方式,而是直接在像素层面进行建模,采用 Diffusion Transformer 架构配合 flow matching 技术,避免了因 VAE 编码压缩导致的高频细节丢失问题。

Loomy

这个模型参数量仅为 53.7M,却能同时处理八类常见的图像退化问题,包括超分辨率、去噪、去模糊、雨线去除、雨滴去除、去雾、去雪以及低光照增强。更关键的是,它支持单步推理,平均耗时约 44 毫秒,在保真度、感知质量和计算效率之间取得了不错的平衡。

支持的修复任务

PixRestore 被设计为一个“多面手”,一套模型覆盖多种退化类型,具体包括:

  • 超分辨率:将低清图像放大并恢复细节,比如把 256×256 的图提升到 1024×1024;
  • 图像去噪:清除高 ISO 拍摄或压缩产生的随机噪点,保留纹理清晰度;
  • 运动去模糊:针对因手抖或物体快速移动造成的模糊,恢复边缘锐度;
  • 雨线去除:消除密集雨丝对背景内容的遮挡;
  • 雨滴去除:处理附着在镜头或车窗上的水滴造成的局部遮挡;
  • 图像去雾:减轻大气散射带来的灰蒙感,还原色彩饱和度和对比度;
  • 去雪处理:移除飘落的雪花颗粒干扰;
  • 低光照增强:在暗光环境下提亮画面,同时抑制噪声放大。

这些任务过去通常需要多个专用模型分别处理,而 PixRestore 用一个统一架构搞定,减少了部署复杂度。

技术亮点解析

像素空间直接建模

传统扩散模型(如 Stable Diffusion)通常先用 VAE 将图像压缩到潜在空间,再在低维空间做扩散。但压缩过程会丢失高频细节,尤其对修复任务不利——你本来就是要补细节,结果第一步就丢了。

PixRestore 完全跳过 VAE,直接在原始像素空间操作。这意味着输入和输出都是真实像素值,没有信息瓶颈。虽然计算量更大,但团队通过架构优化控制住了开销。

DINO 驱动的自适应特征路由

模型引入了 DINO(一种自监督视觉特征提取器)来评估低质量(LQ)图像与理想高质量(HQ)图像之间的特征相似度。基于这种相似度,系统会判断视觉编码器每一层输出的“可靠性”:

  • 对于相似度高的层(即特征接近 HQ),将其作为强条件注入 DiT(Diffusion Transformer);
  • 对于相似度低的层,则施加更强的监督信号,引导模型修正偏差。

这种动态路由机制让模型能根据不同退化类型自动调整修复策略,而不是“一刀切”。

单步高效推理

大多数扩散模型需要几十甚至上百步迭代才能生成结果,延迟高,难以落地移动端。PixRestore 在完整训练后,额外用一个基于 DINO 的对抗目标进行微调,最终压缩成单步生成器

实测显示,在 NVIDIA A100 GPU 上,处理一张 512×512 图像平均只需 44 毫秒,计算量约 658G FLOPs。相比多步扩散方案,速度提升显著,且画质损失可控。

独立训练,无文本先验依赖

很多图像生成模型依赖大规模文本-图像预训练(如 LAION 数据集),容易引入不相关的语义先验。PixRestore 完全从头训练,只使用图像对(LQ-HQ 配对数据),避免了“脑补”内容的风险,更适合需要高保真的修复场景。

如何使用

目前 PixRestore 已开源,使用流程如下:

  1. 克隆代码库:从 GitHub 获取官方仓库(https://github.com/csslc/PixRestore);
  2. 安装依赖:按说明配置 PyTorch 环境及相关库;
  3. 下载模型权重:从 Hugging Face 模型库(https://huggingface.co/VCLab-PolyU/PixRestore)获取预训练 checkpoint;
  4. 准备输入图像:支持常见格式(PNG/JPG),无需额外标注或掩码;
  5. 运行推理脚本:默认启用单步模式,输出修复结果;
  6. 保存结果:可直接用于后续应用或可视化对比。

整个过程对用户透明,不需要指定退化类型——模型自动识别并处理。

性能与竞品对比

与同类工具如 PixelHacker 相比,PixRestore 的定位完全不同。PixelHacker 主要解决图像修补(inpainting),即根据给定掩码填充缺失区域;而 PixRestore 面向的是统一图像修复(Unified Image Restoration, UIR),目标是逆转已知的物理退化过程。

对比维度 PixRestore PixelHacker
核心任务 统一修复 8 类退化 掩码引导的图像修补
架构 像素空间 DiT,无 VAE 潜在扩散模型,依赖 VAE
参数量 53.7M 未公开,估计数亿级
推理速度 单步 44ms 多步采样,延迟高
输入要求 仅需 LQ 图像 需图像 + 掩码
训练方式 从头训练,无文本先验 基于大规模图文预训练

在公开测试集(如 RealSR、RainCityscapes、SOTS 等)上,PixRestore 在 PSNR、SSIM 等保真度指标和 LPIPS 等感知质量指标上均优于现有统一修复模型,如 MPRNet、NAFNet 和 Restormer 的多任务变体。

实际应用场景

手机端实时拍照增强

OPPO 作为合作方,显然瞄准了移动端落地。44ms 的延迟意味着在旗舰手机上可实现拍摄即修复——夜景模式下的噪点、雨天拍摄的雨滴、运动抓拍的模糊,都能在成片前自动优化,无需用户手动选择滤镜或等待处理。

自动驾驶与无人机视觉

恶劣天气是自动驾驶感知系统的噩梦。雨、雾、雪会严重降低摄像头对车道线、交通标志、行人等关键目标的识别率。PixRestore 可作为前端预处理模块,统一清理输入图像,提升下游检测模型的鲁棒性。

监控视频修复

大量老旧监控摄像头分辨率低、码率压缩严重,夜间画面更是充满噪点。用 PixRestore 对视频帧批量处理,可有效恢复人脸、车牌等细节,辅助公安取证或商业分析。

老照片数字化

历史档案馆常面临照片褪色、划痕、霉斑等问题。传统方法需针对每种损伤定制算法。而 PixRestore 能一次性处理多种退化,尤其适合批量扫描后的自动化修复流水线。

医学影像辅助

内窥镜或显微镜图像常受低光照和运动模糊影响。医生需要清晰观察组织纹理或细胞结构。PixRestore 的高保真特性使其有望成为医学影像增强的轻量级插件,不改变诊断内容,只提升可视性。

局限与思考

尽管表现亮眼,PixRestore 仍有边界。例如:

  • 它假设退化是“可逆”的物理过程,对严重缺失(如大面积遮挡)无能为力——这类问题仍需 inpainting 技术;
  • 单步推理虽快,但在极端退化下可能不如多步扩散精细;
  • 当前模型基于合成+真实混合数据训练,面对罕见退化组合时泛化能力待验证。

不过,对于大多数日常退化场景,它提供了一个高效、轻量且高保真的解决方案。更重要的是,它证明了像素空间扩散模型在修复任务上的可行性,为后续研究开辟了新路径。

获取方式

代码库包含训练、推理和评估脚本,文档清晰,适合研究者和工程师快速上手。