Paper Review/Video Super-Resolution

[논문리뷰] Upscale-A-Video

honey-vision 2025. 6. 20. 18:33

Abstract

Text-based diffusion models은 generation 및 editing분야에서 좋은 성과를 보여주도 있지만 vsr 분야에서는 dm의 무작위성 때문에 output fidelity와 temporal consistency을 동시에 만족시키기 어렵다.

 

📍output fidelity: 단일 이미지가 아닌 하나의 영상이기 때문에 프레임이 제 각각 생성이 되면 안됨.

📍temporal consistency: 하나의 영상이 자연스럽게 이어져야 함.

 

이러한 문제를 해결하고자 본 연구에서는 Upscale-A-Video라는 프레임워크를 제안한다. text-guided latent diffusion 프레임워크로서, 두 가지 메커니즘을 통해 시간적 temporal consistency를 보장한다.

 

1. Local level

   - U-Net과 VAE-Decoder에 temporal layers 통합하여 짧은 시퀀스 내 consistency를 유지할 수 있다.

2. Global level

   - 학습 없이, flow-guided recurrent latent propagation module을 도입하여 전체 시퀀스 stability를 향상시킬 수 있다.

 

또한, 텍스트 프롬프트를 통해 질감 생성을 유도하거나, 노이즈 수준을 조절하여 복원과 생성 간의 균형을 조절하는 기능을 제공한다.

이로써 fidelity와 quality 사이의 트레이드오프가 가능해진다.


1. Introduction

Video Super-Resolution을 수행하기 위한 기존 방법: synthetic degradations 또는 camera-related degradations에 초점을 맞추어 진행되었지만 real-world에서 한계가 존재한다.

 

📍synthetic degradations: 원래 고품질의 비디오에 인위적으로 노이즈, blur, downsampling 등을 추가한 저화질 데이터

📍camera-related degradations: 비디오가 실제 카메라 시스템에 의해 캡처될 때 발생하는 다양한 품질 저하

 

그 후 CNN 기반 방법 CNN 기반 네트워크들은 다양한 열화 요소들을 어느 정도 개선하는 데 성공하였지만, generative capability으로 인해 texture와 detail를 생성하는 데에는 여전히 부족하며, 그 결과로 over-smoothing 현상이 자주 발생한다. 

 

아래 자료는 RealBasicVSR의 over-smoothing의 예시다.

 

그 이후 diffusion 기반 방법: CNN 기반 모델에서 발생하는 over-smoothing 문제를 효과적으로 완화시켰지만, diffusion의 randomness 때문에 temporal discontinuitie와 flickering을 유발한다.

 

temporal discontinuitie와 flickering를 해결하기 위한 전략 제안

전략1. 3D Convolution 및 temporal attention과 같은 temporal layers를 추가하고 fine-tuning하는 방식

전략2. 사전학습된 모델에 cross-frame attention 또는 flow-guided attetntion을 zero-shot으로 적용하는 방식(학습x)

 

그러나 여전히 두 가지 문제점이 존재한다.

1) 현재 방법들은 U-Net 또는 latent space에서 작동하기 때문에, low-level consistency 을 유지하는 데 한계가 있으며, texture flickering 문제가 여전히 발생한다.

1) 기존의 temporal layers 및 attention mechanisms은 global temporal consistency을 보장하는 데 한계가 있다.

 

📍low-level consistency: 픽셀 단위 또는 색상, 밝기, 텍스처와 같은 consistency 

📍비디오의 모든 프레임의 내용, 스타일, 움직임, 색상, 질감 등이 일관성 있게 유지되는 것

 

texture flickering를 해결하고 global temporal consistency를 보장하기 위한 제안 방법:
Video reconstruction 과정에서 local-global 방법 채택

 

1. Local level

- pre-trained x4 image upscaling model에 temporal layers 추가 후 video 데이터로 fine-tuning. 즉, U-Net과 VAE-Decoder에 temporal layers 통합함으로써 temporal layers가 추가된 U-Net은 temporal consistency를, VAE는 flickering을 줄인다.

2. Global level

- 학습 없이, flow-guided recurrent latent propagation module를 도입하여 짧은 비디오 세그먼트를 따라 양방향으로 프레임 간 전파와 latent fusion을 수행함으로써 전체 시퀀스의 stability를 향상시킨다.

 

📍프레임 간 warping과 latent fusion: optical flow에 기반하여 이전/미래 프레임의 z를 현재 프레임의 공간적 위치로 warping하여 가져와서 적절한 비율로 섞는다.

📍적절한 비율로 섞는다는 것: fusion 가중치인 가 이 비율을 조절한다. 가 크면 warping 정보를 더 많이 반영하고, 가 작으면 현재 프레임의 정보를 더 많이 반영한다.

 

또한, text prompt를 optional condition으로 활용하여 realistic하고 high-quality details을 생성할 수 있으며, 입력에 노이즈를 주입함으로써 모델의 robustness를 높이고, 노이즈의 강도를 조절하여 restoring과 generating 사이의 균형을 제어할 수 있다.


2. Related Work

Video Super-Resolution.

서론에서 언급된 것과 같이 기존의 대부분 방법들은 pre-defined degradation process을 가정하며, real-world 환경에서는 일반화 성능의 한계로 인해 성능이 크게 저하되는 문제점이 있어 입력 비디오가 unknown degradations를 갖는다는 가정 하에 접근 방식을 시도하고 있다.

 

📍unknown degradations: real-world에서 카메라로 비디오를 촬영하거나, 저장하거나, 전송하는 과정에서 발생하는 모든 복합적이고 비선형적이며 예측하기 어려운 품질 저하 요소

 

하지만, 현실 세계의 HR-LR 페어 데이터가 부족하다는 점이 여전히 존재하기 때문에 이러한 점을 해결하고자 아이폰(iPhone) 카메라를 이용해 HR-LR 데이터를 수집하는 방식이 제안되기도 하였지만 른 기기에 대한 일반화 가능성이 제한적이라는 문제점이 있었다.

 

HR-LR pair 데이터가 부족한 문제를 위한 해결 방법:

최근 연구들은 학습 시 다양한 degradation을 data augmentation으로 적용하는 방향으로 전환하였다. 그럼에도 불구하고, 기존 CNN 기반 접근 방식들은 generative prior가 부족하여 photo-realistic textures을 생성하는 데 여전히 어려움이 있다.

 

generative prior가 부족한 문제를 해결하고자 제안한 방법:

이에 본 연구는, pretrained image diffusion model인 Stable Diffusion(SD) ×4 upscaler에 내재된 강력하고 일반화된 generate prior를 활용하는 데 초점을 맞춘다.

 

📍generate prior: 전통적인 CNN 기반의 이미지 복원(예: SR) 모델들은 주로 원본 이미지와의 픽셀 단위 차이(L1, L2 손실)를 최소화하도록 학습하는 Regression 방식이기 때문에 평균화된 값을 사용하게 되고 디테일한 텍스처 생성은 어렵다.

 

Diffusion Models for Video Tasks.

Video diffusion models 연구에서는 효율성을 위해 off-the-shelf image diffusion models을 활용하여 zero-shot 방식으로 비디오 생성을 시도한다. temporal consistency을 유지하기 위해 인접 프레임 간의 cross attention이나 optical flow을 활용한 warping이 사용된다. 그러나 generalizability이 제한적이라는 단점이 있다.

 

 

📍off-the-shelf: 이미 대용량의 데이터셋으로 학습해서 바로 사용할 수 있는 상태의 모델

 

generalizability이 제한적인 문제점을 해결하기 위한 방법:

가장 최근에는 Blattmann et al.이 pretrained image diffusion model을 비디오 도메인으로 확장하는 방법을 제안하였고, temporal dimension을 추가하고 temporal layers를 fine-tuning함으로써 학습 효율성을 높였다. 본 연구는 이러한 흐름에서 영감을 받아, pre-trained 모델의 generative prior로 활용하고, local-global temporal strategy을 제안한다.

 

Diffusion Models for Restoration Tasks.

diffusion 기반 이미지 복원의 가장 직관적인 방식은 LR 이미지를 조건으로 하여 처음부터 diffusion 모델을 학습하는 것이다. 그러나 이 방법은 연산 자원이 요구된다는 단점이 있다.

 

학습 비용을 줄이기 위한 방법: pre-trained diffusion model의 reverse diffusion 과정에 제약 조건을 추가한다. 이 방식은 효율적이긴 하지만, 제약 조건이 사전 정의된 degradation 과정이나 기존 SR 모델에 의존하기 때문에 일반화 성능이 떨어지며 결과 품질도 제한적이다.

 

그 후 최근 연구들:

frozen pretrained diffusion model에 소수의 학습 가능한 레이어만 추가하여 fine tuning하는 방식을 사용한다. 최근 연구들에 영감을 받아, 본 연구는 real-world VSR에 대해 효과적인 diffusion prior를 활용하는 데 중점을 둔다.


3. Methodology

다시 정리하자면 목적은 real world의 VSR에 적합한 text-guided diffusion framework를 개발하는 것이며 diffusion model의 denoising process는 본질적으로 stochastic nature을 가지고 있어 비디오 태스크에 적용할 때  temporal instability나  flickering artifact의 발생과 같은 어려움이 있다. 특히, 시퀀스가 길수록 더욱 두드러진다.

 

Upscale-A-Video 모델의 특징
✔️각 확산 시간 단계 𝑡=1,2,…,𝑇 에서 비디오는 여러 segment으로 나뉘며 각 구간은 시간 레이어가 포함된 U-Net을 통해 처리되어 해당 구간 내의 local consistency을 보장한다.
✔️만약 현재 시간 단계가 사용자가 지정한 global refinement 단계 𝑇에 해당된다면, latent recurrent latent propagation module이 도입되어 구간 간 압축된 z를 프레임 간에 반복적으로 전달하고 융합하면서 global consistency를 향상시킨다. 필요하다고 판단되는 단계에서만 활성화되기 때문에 효율성을 높인다.

✔️finetuned VAE-Decoder를 사용하여 남아 있는 flickering 아티팩트를 줄인다.
✔️text prompts를 입력하면 video realism하고 details한 결과를 생성할 수 있다.
✔️사용자가 지정하는 노이즈 레벨을 통해 복원 quality와 fidelity 사이의 트레이드오프를 조절할 수 있다.

3.1. Preliminary: Diffusion Models

Pretrained Stable Diffusion Image ×4 Upscaler.

Upscale-A-Video는 pre-trained text-guided Stable Diffusion ×4 업스케일러(SD ×4 Upscaler)를 기반으로 구축되었으며 autoencoder 구조를 통해 이미지를 latent space로 변환하는 LDM(Latent Diffusion Model) 프레임워크를 사용한다.

 

⬇️ LDM 논문 아카이브 링크 ⬇️

https://arxiv.org/abs/2112.10752

 

인코더 𝐸: 입력 이미지를 4배 다운샘플하여 𝑧로 변환
디코더 𝐷: 해당 z를 다시 고해상도 이미지로 복원

저해상도 이미지 𝑥를 조건으로 삼아 latent space 내에서 반복적인 denoising을 통해 고품질 이미지를 생성하는 법을 학습한다.
실제 데이터에서 추출한 latent samples에 대해, 각 확산 단계 𝑡에서 가우시안 노이즈를 추가하여 노이즈가 섞인 𝑧_𝑡를 생성한다:

 

모델의 생성 능력을 향상시키기 위해 입력 이미지에도 노이즈를 주입하는 방식 도 함께 사용된다: 

 

v-prediction 파라미터화를 채택하며, U-Net 기반 노이즈 제거 네트워크 𝑓𝜃 는 다음을 예측하도록 학습된다:

 

📍v-prediction parameterization: denoiser인 U-Net이 학습해야 할 target을 정의하는 방식 중 하나다. U-Net이 무엇을 예측하도록 훈련되는지를 규정하는 방법

📍U-Net이 예측하는 것은 노이즈, 원본 데이터, 속도/방향 3가지로 나눌 수 있다.


LDM의 학습 목적 함수는 다음과 같다:

 

c는 text prompts 또는 입력 이미지의 노이즈 수준과 같은 condition을 포함할 수 있다.
추론 시에는 모델이 다양한 텍스트 프롬프트와 노이즈 레벨을 활용할 수 있으며 최종적으로 샘플링된 𝑥0를 디코딩하여 4배 업스케일된 이미지를 생성한다.

 

Inflated 2D Convolution.

✔️pretrained 2D diffusion 모델을 비디오 작업에 적용할 때 temporal layer를 통합하기 위해 기존의 2D convolution을 3D convolution으로 inflate시키는 것이 일반적인 방법이다.

✔️pretrained Stable Diffusion ×4 업스케일러 사용

 

두 가지 단계 수행 

1) 기존 네트워크를 2D 컨볼루션에서 3D 컨볼루션으로 inflate한다.

2) 이 업스케일러를 기반으로 모델을 초기화하고 비디오 도메인으로 transfer 학습을 한다.

 

📍Inflate: 2D (H,W), 3D (H,W,T)

3.2. Local Consistency within Video Segments

pretrained text-to-image SD 모델을 비디오 관련 태스크에 적용하기 위해 기존의 VDM은 3D 컨볼루션, temporal attention, cross-frame attention의 기법을 활용했다.

 

Finetuning Temporal U-Net.

기존 연구들을 따라, pretrained image model에 temporal layers를 추가하고, 비디오 세그먼트 내의 local consistency 제약을 학습한다. Temporal U-Net에서는 3D 컨볼루션 기반의 3D residual blocks과 temporal attention을 시간적 레이어로 채택하여 기존의 사전 학습된 spatial layers 내에 삽입한다.

✔️temporal attention은 temporal dimension에 따라 self-attention을 수행하며 모든 local frame 간의 관계에 집중한다.

✔️temporal layers에는 RoPE(Rotary Position Embedding)을 적용하여 시간 정보를 반영한 position embedding을 제공한다.

 

⬇️ RoPE 논문 아카이브 링크 ⬇️

https://arxiv.org/abs/2104.09864

 

이러한 시간 레이어들은 기존 이미지 모델과 동일한 노이즈 스케줄을 사용하여 학습되며 pretrained spatial layers는 고정시키고 삽입된 temporal layers만을 LDM의 학습 목적 함수를 이용해 최적화한다.

 

이 방법의 이점:

1) 대규모 고화질 이미지 데이터셋으로부터 학습된 spatial 정보를 그대로 활용할 수 있다.

2) 학습하는 레이어가 줄기 때문에 학습 자원을 효율적으로 사용할 수 있다.

 

Finetuning Temporal VAE-Decoder.

U-Net을 비디오 데이터에 대해 finetune한 이후에도 이미지 전용으로 학습된 LDM 프레임워크 내의 VAE-Decoder는 latent sequence를 복원할 때 flickering 아티팩트를 여전히 생성하는 문제점이 있고 U-Net의 diffusion denoising process는 종종 color shift를 유발하는데 다른 diffusion 기반 복원 네트워크들에서도 나타나는 공통적인 문제이다.

 

flickering 아티팩트 문제를 해결하기 위한 방법:

VAE-Decoder에 temporal 3D residual blocks을 추가하여 low-level consistency을 강화한다.

color shift 문제를 해결하기 위한 방법:

입력 비디오에 SFT(Spatial Feature Transform) 레이어를 적용하여 입력 정보를 VAE-Decoder의 첫 번째 레이어의 feature을 변형하도록 한다.

 

⬇️ SFT 논문 아카이브 링크 ⬇️

https://arxiv.org/abs/1804.02815

 

📍Color shift 문제: 원본 이미지의 색상이나 밝기 톤을 정확하게 유지하지 못하고 변화시키는 문제

📍SFT(Spatial Feature Transform): 원본 저해상도의 전체적인 색상 톤, 밝기 분포와 같은 low-frequency information을 추출하여 condition으로 사용한다.

 

Temporal layers 학습에 사용되는 하이브리드 loss function:

1) L1 loss

2) LPIPS perceptual loss

3) Temporal PatchGAN discriminator를 활용한 Adversarial loss

 

⬇️ LPIPS perceptual loss 논문 아카이브 링크 ⬇️

https://arxiv.org/abs/1801.03924

⬇️ Temporal PatchGAN 논문 아카이브 링크 ⬇️

https://arxiv.org/abs/2309.03897

3.3. Global Consistency cross Video Segments

기존 방법의 문제점: LDM내에서 학습된 temporal layers는 local sequence(U-Net 설정에서는 8프레임)만 처리할 수 있어 global consistency을 보존하는 데 한계가 있다.

 

global consistency을 보존하기 위한 방법: flow-guided long-term propagationtemporal consistency을 향상시키는 데 유리하다는 것을 보여주었지만 short video clips만을 처리할 수 있는 diffusion model에는 적합하지 않다.

 

Training-Free Recurrent Latent Propagation.

latent space 내 training-free한 flow-guided recurrent propagation module을 제안한다. 이 모듈은 긴 비디오 입력에서 global temporal coherence을 보장한다. forward와 backward 두 방향으로 프레임 간 정보를 전파한다.

 

1. Optical flow estimation: RAFT 모델을 사용해서 optical flow를 추정한다(resizing 필요x).

 

2. 추정된 optical이 유효한지 체크하기 위해 forward-backward consistency error를 계산한다.

 

3. 이전 프레임의 latent를 optical flow 정보 기반으로 현재 프레임 위치로 warping 후, latent fusion을 진행한다.

 

4. 모든 diffusion step에 적용할 필요 없이 지정한 T*에서만 적용한다.

 

 

⬇️ RAFT 논문 아카이브 링크 ⬇️

https://arxiv.org/abs/2312.06640https://arxiv.org/pdf/2003.12039

⬇️  forward-backward consistency error 논문 링크 ⬇️

https://ojs.aaai.org/index.php/AAAI/article/view/12276

3.4. Inference with Additional Conditions

Additional condition을 조정하여 diffusion denoising process에 영향을 준다.

✔️Text prompts와 Noise levels 조정의 효과: 텍스처 디테일을 생성할 수 있다.

✔️ Classifier-Free Guidance(CFG) 기법을 추가하여 위의 효과를 증폭시키는 데 도움을 준다.

 

⬇️ CFG 논문 아카이브 링크 ⬇️

https://arxiv.org/abs/2207.12598


4. Experiments

4.1. Datasets and Implementation

Training Datasets.

1) WebVid10M의 서브셋

약 33.5만 개의 비디오-텍스트 쌍으로 구성

해상도는 약 336×596

VDM 학습에 많이 사용되는 데이터셋

2) YouHQ 데이터셋 (자체 수집)

YouTube에서 고화질 영상(1080×1920) 약 3.7만 개 수집

거리, 풍경, 동물, 인물 얼굴, 정적 사물, 수중 장면, 야간 장면 등 다양한 장면 포함

실제 환경에서의 VSR 생성 능력 향상에 기여

 

RealBasicVSR의 degradation 파이프라인을 따라 LQ-HQ 비디오 쌍을 생성해 학습에 사용


⬇️ RealBasicVSR 논문 아카이브 링크 ⬇️

https://arxiv.org/abs/2111.12704

 

Testing Datasets.

총 4개의 합성(synthetic) 테스트 데이터셋 사용

SPMCS

UDM10

REDS30

YouHQ40 (YouHQ에서 테스트용으로 40개 영상 분리)

 

추가로 실제 환경의 성능 평가

VideoLQ (실제 저화질 영상)

AIGC30: 최신 텍스트-투-비디오 생성 모델로 만든 AI 영상 30개 수집

 

Training Details.

GPU: NVIDIA A100 80GB × 32개

배치 사이즈: 384

입력 크기: 80×80, 길이 8프레임

Adam, learning rate =1×10^(-4)

 

U-Net:

WebVid10M + YouHQ 합쳐서 70K iteration

그 후 YouHQ만 사용해 10K iteration 추가 학습

YouHQ에는 텍스트 프롬프트가 없기 때문에 null prompt를 사용

 

VAE-Decoder:

StableSR 방식 따름

WebVid10M과 YouHQ에서 합성 LQ-HQ 비디오 쌍 10만 개 생성

학습된 U-Net으로 LQ 비디오에 대한 latent 코드 생성 → 디코더 finetuning

 

Evaluation Metrics.

 

합성 데이터셋(GT있음)

PSNR

SSIM

LPIPS 

Flow warping error (E*warp) 

 

실제 영상 및 AIGC 영상(GT 없음): 무참조(non-reference) 지표 사용

CLIP-IQA 

MUSIQ 

DOVER 

 

4.2. Comparisons

최신 VSR(비디오 초해상도) 기법들과 성능을 비교했다.

Real-ESRGAN 

Stable Diffusion ×4 Upscaler

ResShift 

StableSR 

RealVSR 

DBVSR 

RealBasicVSR 

 

Quantitative Evaluation.

Upscale-A-Video는 4개의 합성 test 데이터셋에서 PSNR이 가장 높은 결과를 보여준다.

UDM10과 YouHQ40에서는 LPIPS 점수가 가장 낮게 나타나 생성된 영상의 perceptual quality가 매우 높음을 보여준다.

실제 비디오 VideoLQ와 AI 생성 영상 AIGC30에서도 CLIP-IQA와 DOVER 점수가 가장 높은 것을 볼 수 있다.

 

Qualitative Evaluation.

 

Temporal Consistency. 

local-global temporal strategy를 통해 우수한 temporal consistency 성능을 보여준다.

UDM10 데이터셋에서 optical flow error가 가장 낮은 점수를 기록하였다.

Upscale-A-Video가 기존의 다른 확산 기반 영상 기법들보다 뛰어난 성능을 보일 뿐만 아니라 RealBasicVSR와 DBVSR 같은 강력한 CNN 기반 VSR 모델들 보다도 뛰어남을 의미한다. 또한, temporal profile visualization를 통해 더 부드럽고 매끄러운 전환을 이루는 모습을 확인할 수 있다.

4.3. Ablation Study

Effectiveness of Finetuned VAE-Decoder.

 

VAE-Decoder를 finetuning 하는 것이 얼마나 중요한지를 평가했다. Table 2에서 확인할 수 있듯이 VAE-Decoder를 원래 decoder로 대체할 경우 PSNR, SSIM, 그리고 특히 E*warp 값이 악화되었다. 특히 E*warp가 0.737 → 1.815로 증가하면서 temporal consistency가 크게 저하됨을 보여준다. Fig. 6의 비교 결과도 fine-tuned VAE-Decoder 없이 생성한 영상은 더 많은 flickering가 있음을 시각적으로 보여준다.

 

Effectiveness of Propagation Module.

 

VAE-Decoder 외에도 flow-guided recurrent latent propagation module을 제안하여 긴 영상의 stability를 향상시켰다. Table 2와 같이 이 모듈을 도입하면 E*warp 오류가 추가적으로 감소하여 temporal consistency가 더욱 개선된다. 또한, PSNR 같은 프레임 단위 성능은 그대로 유지된다. Fig. 6의 temporal profile에서도 프레임 간 전환이 더 부드럽고 자연스러워짐을 확인할 수 있다.

 

Text Prompt.

Text prompt가 있는 경우와 없는 경우(null prompt) 모두에 대해 학습했다. Classifier-Free Guidance 기법을 사용하여 샘플링 시 시각 품질을 향상시켰다. Fig. 7를 보면 적절한 text prompt를 사용하는 경우 더 섬세하고 사실적인 디테일이 생성됨을 확인할 수 있다.

 

Noise Level.

입력에 추가하는 noise level 역시 모델 성능에 영향을 준다. noise level이 낮을수록 결과가 흐릿하고 디테일이 부족한 경향이 있는 반면, 너무 큰 노이즈는oversharpening을 유발할 수 있다. 따라서 복원력과 생성력 사이의 균형을 위해 noise level를 조절하는 것이 중요하다.


5. Conclusion

✔️문제점: diffusion models 기반 real world VSR 분야에서는 연구가 부족하다.

✔️제안방법: Upscale-A-Video

✔️Upscale-A-Video: image diffusion prior을 real world VSR에 효과적으로 활용하면서 diffusion 과정의 내재된 randomness로 인한 temporal discontinuity 문제를 피할 수 있도록 설계되었다. 특히, LDM 내에서 local-global temporal strategy을 도입함으로써 temporal coherence를 효과적으로 강화했다.

✔️추가적인 방법: text prompt를 통한 질감 생성, 노이즈 수준 조절을 통한 복원력-품질 간 트레이드오프 조절 기능을 함께 도입하여 실제 환경에서의 실용성과 유연성을 높이는 데 기여했다.