모아둔 자료

Part C — 모듈 심화 §8

Deblurring점이 번진 흔적(PSF)을 알아내고 되돌리는 일 — 정보가 사라진 주파수를 어떻게 메우나

흐림은 잃어버린 정보의 문제다. 카메라 흔들림·초점 이탈·피사체 운동은 한 점의 빛을 이웃으로 번지게 한다(convolution). 그 번짐 커널(PSF)을 안다 해도 되돌리기는 쉽지 않다 — 번짐은 어떤 주파수를 완전히 0으로 지워버리고, 0으로 나눌 수는 없기 때문이다. 디블러링은 “PSF가 무엇인가”와 “사라진 주파수를 무엇으로 메우나”라는 두 질문의 기술이다.

Instrument 01

PSF & 주파수 응답

왜 deconvolution이 불안정한가
PSF k(x) — 점이 어떻게 번지는가
|OTF| (log) — 검은 영점에서 정보 소실

위 오른쪽이 PSF의 **주파수 응답(OTF)**이다. 모션 블러를 켜면 OTF에 **검은 줄(영점, zeros)**이 보인다 — 그 주파수의 신호는 관측에서 사라졌다. 디컨볼루션이 불안정한 근본 이유가 이것이다. 디포커스(디스크)는 동심원 영점, 가우시안은 영점 없이 고주파만 약화 — 그래서 가우시안 블러가 되돌리기 가장 순하다.

8.1 흐림 모델 — convolution 역문제

번짐은 곱셈이 된다 (주파수에서)

공간 불변(shift-invariant) 흐림은 깨끗한 영상 x\boldsymbol{x}와 점퍼짐함수(PSF) k\boldsymbol{k}convolution에 잡음 n\boldsymbol{n}이 더해진 것이다.

y(x)  =  (kx)(x)  +  n(x)\boldsymbol{y(\mathbf{x}) \;=\; (k * x)(\mathbf{x}) \;+\; n(\mathbf{x})}

푸리에 영역에서 convolution은 곱셈이 된다. OTF H=F{k}\boldsymbol{H=\mathcal{F}\{k\}}에 대해

Y=HX+N,X^naive=YH\boldsymbol{Y = H\,X + N,\qquad \hat{X}_{\text{naive}} = \frac{Y}{H}}

이 소박한 역필터는 H0\boldsymbol{H\approx0}인 주파수에서 Y/H\boldsymbol{Y/H}가 폭발한다 — 잡음 N\boldsymbol{N}이 무한히 증폭되고 **링잉(ringing)**이 생긴다. Wiener 필터는 이 나눗셈을 신호대잡음비 SNR\boldsymbol{\mathrm{SNR}}로 정규화해 길들인다:

X^=HH2+1/SNRY\boldsymbol{\hat{X} = \frac{\overline{H}}{\,|H|^2 + 1/\mathrm{SNR}\,}\,Y}

1/SNR\boldsymbol{1/\mathrm{SNR}} 항(아래 실험의 정규화 K\boldsymbol{K})이 영점 근처에서 분모가 0이 되는 것을 막는다. 작게 잡으면 선명하지만 링잉·잡음이 터지고, 크게 잡으면 안전하지만 흐릿하다 — 디블러링은 늘 이 선명함 vs 안정성의 줄타기다. (평가 지표는 §7과 같다 — PSNR은 과평활을 선호하므로 LPIPS 등 지각 지표를 함께 본다.)

Instrument 02

모션 블러 → Wiener 디컨볼루션

비블라인드 · y = k ∗ x + n
원본 (정답)
관측 (모션 블러 + 노이즈)
Wiener 복원
PSNR (블러)— dB
PSNR (복원)— dB

정확 모드에서 K\boldsymbol{K}를 0 쪽으로 내려 보라 — 어느 지점부터 링잉과 잡음이 폭발한다. 불일치 모드는 일부러 틀린 각도·길이의 커널로 복원한다(blind deblurring에서 커널 추정이 틀렸을 때). 결과가 망가지는 것을 보면, 왜 PSF 추정 자체가 문제의 핵심인지 알 수 있다.

8.2 고전·디컨볼루션 — Bible

PSF를 알 때, 그리고 모를 때

흐림 제거는 두 갈래다. non-blind(PSF를 안다)는 안정적 역필터의 문제이고, blind(PSF도 추정한다)는 영상과 커널을 동시에 푸는 훨씬 어려운 ill-posed 문제다. 이 고전들은 지금도 baseline·해석·초기화로 살아있다.

Wiener (1949) Richardson–Lucy (1972/74) TV / Tikhonov Fergus blind (2006) Levin 분석 (2009)
Wiener Deconvolution · Richardson–Lucy
Wiener 1949 · Richardson 1972 / Lucy 1974 · Scholar
Wiener
잡음·신호 스펙트럼을 알 때 MSE 최적의 선형 역필터. 영점 근처를 1/SNR로 정규화. 위 실험이 이것.
Richardson–Lucy
Poisson 잡음 가정의 반복적·비음수 보존 디컨볼루션. 천문·현미경의 표준. 반복할수록 선명하지만 잡음·링잉도 증폭(early stopping 필요).
Total Variation · Tikhonov 정규화 디컨볼루션
Rudin–Osher–Fatemi 1992 · Scholar
아이디어
역문제에 prior를 정규화 항으로 추가. TV(그래디언트 L₁)는 엣지를 보존하며 평탄화, Tikhonov(L₂)는 매끄럽게. 비블라인드 복원의 변분(variational) 표준틀.
맥락
”데이터 충실도 + prior” 최적화 구도가 이후 모든 학습형 복원의 뼈대가 된다.
Removing Camera Shake from a Single Photograph
Fergus, Singh, Hertzmann, Roweis, Freeman · SIGGRAPH 2006 · Scholar
아이디어
단일 영상에서 카메라 흔들림 커널을 추정하는 variational Bayes blind deconvolution. 자연 영상 그래디언트의 heavy-tailed prior를 활용해 흐린 해(평탄)보다 선명한 해를 선호.
왜 ★
단일 영상 blind deblurring을 대중화한 기념비적 연구. 이후 10년 고전 deblurring의 출발점.
Understanding and Evaluating Blind Deconvolution Algorithms
Levin, Weiss, Durand, Freeman · CVPR 2009 · Scholar
핵심
단순한 MAP 동시추정(영상·커널)이 왜 자명한 흐린 해(no-blur)로 붕괴하는지 분석하고, 커널만 주변화(MAP_k)하는 편이 옳음을 보임. 공정 비교용 벤치마크도 제공.
왜 ★
blind deblurring의 이론적 토대. “왜 어려운가”를 정확히 규정해 이후 방법론을 정렬.
Fast Motion Deblurring · Two-Phase Kernel Estimation
Cho & Lee SIGGRAPH Asia 2009 · Xu & Jia ECCV 2010 · Scholar
기여
Cho & Lee: 예측-기반 빠른 커널 추정으로 실용 속도 달성. Xu & Jia: 유의미한 엣지만 골라 커널을 추정하는 2단계로 강건성↑. 고전 blind deblurring의 실전 정점.
8.3 딥러닝

커널을 버리고, 끝에서 끝으로

딥러닝은 PSF 추정을 우회했다. 흐림→선명을 (흐림, 선명) 쌍으로 직접 회귀하면, 공간 가변·비선형 운동 흐림처럼 단일 커널로 표현 안 되는 경우까지 한 번에 푼다. GoPro 데이터셋이 이 전환의 기폭제였다.

DeepDeblur (2017) SRN (2018) DeblurGAN (2018) DMPHN (2019) MIMO-UNet (2021) MPRNet (2021)
Deep Multi-scale CNN for Dynamic Scene Deblurring (DeepDeblur)
Nah, Kim, Lee · CVPR 2017 · arXiv:1612.02177
핵심
커널 추정 없이 다중 스케일 CNN으로 흐림→선명을 end-to-end 회귀(coarse-to-fine). 고속 카메라 프레임 평균으로 사실적 동적 흐림을 합성한 GoPro 데이터셋을 공개.
왜 ★
커널-프리 딥 디블러링과 표준 벤치마크를 동시에 연 출발점.
Scale-recurrent Network (SRN-DeblurNet)
Tao, Gao, Shen, Wang, Jia · CVPR 2018 · arXiv:1802.01770
기여
스케일 간 가중치를 공유하는 재귀 구조로 다중 스케일 디블러링을 파라미터 효율적으로. DeepDeblur 대비 경량·고성능.
DeblurGAN · DeblurGAN-v2
Kupyn et al. · CVPR 2018 / ICCV 2019 · arXiv:1711.07064
기여
적대적 손실 + perceptual loss로 지각적으로 선명한 복원. v2는 feature pyramid 백본으로 품질·속도 균형. PSNR보다 시각 품질을 노린 계열.
DMPHN · MIMO-UNet — 멀티패치 / 멀티스케일
Zhang et al. CVPR 2019 · Cho et al. ICCV 2021 · arXiv:2108.05054
기여
DMPHN: 영상을 패치 계층으로 쪼개 공간정보를 단계적으로 합침. MIMO-UNet: 단일 U-Net이 다중 스케일 입출력을 한 번에 처리해 coarse-to-fine을 재해석, 정확도·효율 동시 개선.
Multi-Stage Progressive Image Restoration (MPRNet)
Zamir, Arora, Khan, Hayat, Khan, Yang, Shao · CVPR 2021 · arXiv:2102.02808
핵심
여러 단계로 점진 복원하되 단계 간 feature를 주고받는 설계. deblur·denoise·derain 다수 SOTA. 복원 백본 흐름의 핵심 길목.
맥락
이후 Restormer·NAFNet 같은 범용 복원 백본으로 수렴 — 자세한 비교는 복원 백본 노트에서.
8.4 최신 SOTA · 2023–2026

주파수 트랜스포머 · 확산 · 실세계 흐림

최근 흐름은 셋이다. (1) 주파수 영역 트랜스포머 — 흐림이 주파수에서 곱셈이라는 §8.1의 사실을 구조에 직접 넣는다(FFTformer). (2) 확산 prior — 사라진 고주파를 합성해 지각 품질을 높인다(충실도와 트레이드오프). (3) 실세계 흐림 — 합성 GoPro와 실제 흔들림의 도메인 갭을 메운다.

⚐ 빠르게 바뀌는 영역 — 갱신 권장

이 블록의 구체 모델·수치는 매년 갱신된다. 표/주장은 출처와 측정 프로토콜(GoPro vs RealBlur, 학습 분할)을 함께 적고, 리더보드 순위를 사실로 굳히지 말 것.

다중스케일 CNN 범용 트랜스포머 백본 주파수 트랜스포머 (FFTformer) 확산 prior 실세계·이벤트 흐림
Efficient Frequency Domain-based Transformers for High-Quality Deblurring (FFTformer)
Kong, Dong, Li, Xue, Jin, Zhang, Pan · CVPR 2023 · arXiv:2211.12250
핵심
self-attention과 FFN을 주파수 영역에서 수행 — 흐림이 주파수에서 곱셈이라는 성질을 직접 활용. GoPro 등에서 강력(≈34 dB대, 프로토콜 의존).
왜 ★
이 단원의 주제(주파수에서의 흐림)를 네트워크 구조로 구현한 대표작.
Deblurring via Stochastic Refinement (확산 기반)
Whang, Delbracio, Talebi, Saharia, Dimakis, Milanfar · CVPR 2022 · arXiv:2112.02475
아이디어
회귀의 평균적(흐릿한) 해 대신 조건부 확산으로 그럴듯한 디테일을 표본화. 지각 품질↑, 단 충실도·환각의 트레이드오프와 추론 비용.
Stripformer · Event-based Deblurring
Tsai et al. ECCV 2022 · Pan et al. (EDI) CVPR 2019 · arXiv:2204.04627
기여
Stripformer: 가로/세로 스트립 어텐션으로 방향성 흐림을 효율적으로. 이벤트 기반: 이벤트 카메라의 고시간해상도 신호로 노출 구간 내 운동을 복원 — 단일 RGB의 한계를 센서로 돌파.
범용 복원 백본 (Restormer · NAFNet · Uformer)
deblur·denoise·SR 공통 — 별도 노트
요지
디블러링 SOTA의 상당수는 디블러 전용이 아닌 범용 복원 백본이다. 구조·수치 비교는 복원 백본 노트에서 §7·§9와 함께 다룬다.
8.5 상업화

제품 속의 디블러

흐림 제거는 디노이즈만큼 흔하진 않지만, 손떨림 보정과 컴퓨테이셔널 파이프라인 곳곳에 들어있다.

스마트폰 — OIS + 다중프레임
광학식 손떨림 보정 + 버스트 정렬
특징
하드웨어 OIS/EIS로 흔들림을 애초에 줄이고, 야간 모드는 짧은 노출 다수를 정렬·병합해 흐림 없이 빛을 모은다 — 디블러를 “복원”이 아니라 “회피”로 푸는 접근(→ §12 burst).
Adobe Lightroom · Topaz Sharpen AI
데스크톱 ML 샤픈/디블러 (⚠️ 벤더 주장)
특징
⚠️ ML 기반 샤픈·모션/디포커스 디블러를 소비자 워크플로에 통합. 제조사 성능 주장은 자체 검증 권장이며 강한 디블러는 환각(없던 디테일 생성) 위험이 있다.
8.6 벤치마크 · 데이터셋

합성 흐림과 실제 흐림

⚠️ 합성 ↔ 실제 도메인 갭

GoPro는 고속 프레임 평균으로 만든 합성 흐림이라, 실제 카메라 흔들림(공간 가변 PSF·롤링셔터·포화)과 통계가 다르다. GoPro에서 좋은 모델이 RealBlur에서 떨어지는 일이 흔하다. 수치를 옮길 땐 어느 셋·어느 분할인지 반드시 함께 적어라.

데이터셋도메인특징GT 방식
GoPro
Nah 2017
합성 동적 흐림디블러링의 사실상 표준 벤치고속 프레임 평균
HIDE
Shen 2019
합성 · 인물 중심사람·움직임 강조고속 프레임 평균
RealBlur
Rim 2020
실제 흐림실촬영 흐림/선명 쌍듀얼카메라 정렬
RSBlur
Rim 2022
실제 + 합성 분석실↔합성 갭의 파이프라인 분석실촬영 쌍
DPDD
Abuolaim 2020
디포커스(dual-pixel)defocus deblurring 표준조리개 조절 쌍

모션 디블러는 GoPro/RealBlur, 디포커스 디블러는 DPDD로 나뉘어 평가된다. 같은 “deblurring”이라도 흐림의 물리가 다르므로 모델·벤치를 섞지 말 것.

이웃 모듈로

이 다음은

디블러링은 디노이징·초해상과 모델·사고를 공유한다. 같은 백본이 세 문제를 함께 풀고(복원 백본 노트), 사라진 고주파를 합성한다는 점에서 초해상과 한 몸이다.

개인 학습 자료 · ISP & Computational Photography · §8 Deblurring