[논문리뷰] ESRGAN

정강훈·2022년 3월 24일
1

논문: https://arxiv.org/abs/1809.00219

오늘은 SRGAN을 성능향상 시킨 ESRGAN 논문을 리뷰해볼려고 한다.
ESRGAN은 Enhanced Super-Resolution Generative Adversarial Networks로 SRGAN에 Enhanced가 더해진 의미이다.

서론

SRGAN은 고해상도의 이미지를 만들 때, 현실적인 질감으로 만들어 내기도 하지만, 인공적인 디테일도 만들어 내기도 한다는 단점이 있다. 이 저자는 SRGAN의 시각적인 디테일을 더 향상시키기 위해 SRGAN 네트워크 구조, 2가지의 loss 총 3가지 기본요소를 연구 후 새로운 ESRGAN 모델을 제안한다.
기존 SRGAN의 Batch Normalization을 없애고 Residual in Residual Dense Block(RRDB)을 도입, Relativistic GAN의 아이디어로 판별자가 절대값 대신 상대값을 예측하도록 하였다.
활성화 부분전에 feature들을 사용해 perceptural loss를 개선하여 밝기의 일관성, 질감 복원에 강력한 supervision을 제공한다.
PIRM2018-SR Challenge에서 1등을 수상한 모델이다.

SRGAN과의 차이

SRGAN의 성능향상을 위해 논문에서는 크게 세가지를 바꾼다.
1. Network Architecture
2. Relativistic Discriminator
3. Perceptual Loss

1. Network Architecture

SRGAN에서는 Batch Normalization(BN)을 사용하지만, train 데이터셋과 test 데이터셋의 통계치가 달라 BN을 사용하면 artifact 현상이 생기게 되며, 일반화 성능이 저하된다.
따라서 저자들은 안정적인 학습과 일관된 성능을 위해 BN을 제거하였다.
BN을 제거함으로 계산 복잡도, 메모리 사용량에서 이점이 생긴다.

기존의 SRGAN의 구조는 그대로 사용하며 Block만 교체한 모습이다.
RRDB는 기존 SRGAN의 Residual Block 보다 더 깊고 복잡한 구조로, 주 경로에서 dense block을 사용하는데, 이로 인해 네트워크 용량은 커진다.

이것들 외에
Residual scaling
불안정성을 방지하기 위해 주 경로에 추가하기 전에 0과 1 사이의 상수를 곱해 residuals 스케일을 축소한다.

Smaller initialization
residual 구조는 초기 매개변수 분산이 작을 수록 더욱 쉽게 학습시킬 수 있다.

등의 기술도 이용하였다.

2. Relativistic Discriminator

기존의 SRGAN의 판별자는 하나의 input 이미지(x)가 진짜이고 자연스러운 것일 확률을 추정했다.

relativistic discriminator는 실제 이미지(Xr)가 가짜 이미지(Xf) 보다 상대적으로 더 현실적일 확률을 예측한다.

3. Perceptual Loss

기존에는 activation 이후에 feature map을 사용했지만,
activation 전에 feature map을 사용함으로써 SRGAN보다 더 효과적인 perceptual loss(Lpercep)를 개발하였고, 이를 통해 기존에 있던 2가지의 문제점을 해결하였다.

  1. 매우 깊은 네트워크 activation 이후에 활성화된 features들은 매우 sparse함으로, 낮은 성능으로 이어진다.


2. 활성화 후 feature들을 사용하는 것은 ground-truth 이미지와 비교했을 때 일관성이 없는 복원된 밝기를 유발한다.
(왼쪽 그래프 빨간색 gt, 파란색 after activation, 초록색 before activation)


활성화 후 대부분의 feature들은 소극적(inactive)으로 된 반면, 활성화 전 feature들은 더 많은 정보들을 가지고 있다.

Total Loss
최종적으로 loss는 perceptual loss, RaGan loss, L1 loss가 사용된다.

Network Interpolation

PSNR-oriented network(Gpsnr)을 학습한 후, 미세 조정을 통해 GAN-based network(Ggan)를 얻었다.
이것으로 기존 GAN 방식의 학습이 진행되면서 perceptual quality가 좋아져도 artifact가 생기는 문제를 어느정도 해결한다.
또 모델을 재학습시킬 필요없이 지속적으로 지각 품질과 정확도의 균형을 유지할 수 있게 해준다.

결과 비교

DIV2K 벤치마크

0개의 댓글