Motion Deblurring
运动去模糊可从因运动而模糊的照片和视频中重建清晰图像,提升细节表现,助力计算机视觉和目标检测。
运动去模糊是指从曝光期间因移动而模糊的照片或视频帧中重建更清晰图像的过程。相机抖动或物体移动会将视觉细节扩散到相邻像素,使边缘变成条纹。去模糊算法会估计这种扩散的形成过程,并恢复底层结构,让图像更适用于计算机视觉任务,包括目标检测和光学字符识别。“运动去模糊”是同一操作的另一种称呼。
运动模糊的形成#
相机会在整个曝光期间持续接收光线。在这段时间内发生的移动,会将场景中的不同位置融合到一张图像中。模糊核又称点扩散函数 (PSF),用于描述单个点如何扩散。匀速直线运动会产生近似线形的模糊核;相机旋转和独立移动的物体则会产生空间变化的模糊。一个常见的数学模型会用卷积将清晰图像与模糊核结合,并叠加噪声,以表示模糊图像。
运动去模糊属于图像复原。锐化会增强局部边缘对比度,而去模糊会估计扩散发生之前的图像。散焦去模糊针对的是对焦错误造成的模糊;超分辨率则会以更高的空间分辨率重建图像。这些任务可能会同时出现在图像复原流水线中。
经典方法与神经网络方法#
非盲去模糊使用给定的模糊核。盲去模糊则会同时估计未知模糊和清晰图像。经典方法使用反卷积来逆转扩散。维纳滤波会在细节恢复与噪声放大之间取得平衡,并使用正则化——一种倾向于产生稳定图像估计的约束。
神经网络可以通过监督学习,从模糊图像和清晰图像对中学习图像复原。2016 年,Ayan Chakrabarti 提出了 A Neural Approach to Blind Motion Deblurring:该方法为重叠图像块预测复原滤波器,合并滤波器的输出,估计全局模糊核,再执行非盲反卷积。这种方法将学习到的图像结构与显式运动模糊模型结合起来。
可运行的反卷积示例#
使用 pip install scikit-image scipy 安装 scikit-image 和 scipy。本示例先对内置图像应用水平运动模糊,再使用已知模糊核进行维纳–亨特反卷积。
import numpy as np
from scipy.signal import convolve2d
from skimage import data, img_as_float, restoration
from skimage.metrics import peak_signal_noise_ratio
image = img_as_float(data.camera())
# Model uniform horizontal movement over 15 pixels.
psf = np.zeros((15, 15))
psf[7, :] = 1 / 15
blurred = convolve2d(image, psf, mode="same", boundary="wrap")
restored = restoration.wiener(blurred, psf, balance=0.005)
before = peak_signal_noise_ratio(image, blurred, data_range=1)
after = peak_signal_noise_ratio(image, restored, data_range=1)
print(f"PSNR: {before:.2f} dB blurred -> {after:.2f} dB restored")输出会比较去模糊前后的重建质量。峰值信噪比 (PSNR) 用于衡量重建图像与原始图像之间的像素一致性;数值越高,表示重建误差越低。
应用与训练数据#
- 文档处理:去模糊可以重建拍摄文本中的字符笔画。Jinshan Pan、Zhe Hu、Zhixun Su 和 Ming-Hsuan Yang 于 2014 年提出了一种文本专用去模糊方法,利用强度和边缘特征来估计模糊并恢复文本边界。
- 动态场景摄影:Seungjun Nah、Tae Hyun Kim 和 Kyoung Mu Lee 于 2017 年推出了 GoPro 去模糊数据集,该数据集将清晰帧与通过对高速视频帧取平均生成的模糊图像配对。这些配对图像为学习相机和物体运动复原提供了训练数据。
运动模糊也会影响 Ultralytics YOLO26 的检测效果:模糊输入可能会导致预测模式漏检物体;单独执行去模糊步骤后,还可以像处理其他图像一样将复原帧传给模型。在 Ultralytics bus.jpg 示例图像中,61 像素的水平运动模糊使 YOLO26n 检测到的人数从 4 人降至 2 人。
重建质量与伪影#
去模糊质量包括边缘还原真实、纹理得以保留,以及视频帧间结果稳定。时间一致性描述的就是这种帧间稳定性。视频方法可以利用相邻帧作为额外的复原依据。
反卷积可能会放大噪声或产生振铃,即边缘附近出现明暗交替的条带。在基于 Fourier 变换的复原中,图像相对两侧边界的不连续会产生人工高频成分,从而形成边界振铃;边缘渐消可以在反卷积前减弱这种不连续。










