쏴아리의 딥러닝 스터디

“Zero-Shot” Super-Resolution Using Deep Internal Learning(2018) 본문

Image Generation

“Zero-Shot” Super-Resolution Using Deep Internal Learning(2018)

말해보시개 2021. 7. 18. 15:05

“Zero-Shot” Super-Resolution Using Deep Internal Learning(2018)

 

 

 Abstract

지난 몇년동안 Deep Learning은 Super Resolution(SR)에서 훌륭한 성능을 보여주었습니다.

하지만, supervised 기반의 SR 방법론들은 specific training data에 제한적이라는 단점이 있습니다.

  • high-resolution(HR) image로부터 미리 정해진 방법으로(예: bicubic downscaling) low-resolution(LR) image를 획득합니다.
  • Real LR images는 이러한 제한에 따르는 경우가 드물기 때문에, SotA method를 적용하였을 경우 대개 poor SR result를 만들게 됩니다.

본 연구에서는 "Zero-Shot" SR을 소개합니다.

  • Zero-Shot SR은 Deep Learning을 활용하지만, prior training에 의존하지 않습니다.
  • Zero-Shot SR은 single image 안에 있는 internal recurrence of information을 이용하여, test time에 오직 한장의 image로 부터 추출된 예제를 활용해 small image-specific CNN을 학습합니다.
  • 즉, Zero-Shot SR은 각 image 마다 다른 stetting을 채택합니다.

이를통해 real old photos, noisy images, biological data 등 image 취득 과정이 unknown 혹은 non-ideal인 경우에도 SR이 가능합니다.

  • 이러한 images에서 ZSSR은 SotA CNN-based SR methods와 previous unsupervised SR methods를 outperform 하였습니다.
  • ZSSR은 first unsupervised CNN-based SR method라는 점에 의미가 있습니다.

 

 

 1. Introduction

Single image Super-Resolution(SR)는 최근 Deep-Learning based method를 활용하며 많은 성과를 이루어 냈습니다.

  • 주로 exhaustively on external databases로부터 훈련된 very deep and well engineered CNNs통해 이러한 성능향상을 이루어 냈습니다.
  • 하지만 externally supervised methods는 훈련 상황을 만족하는 데이터에서는 아주 잘 작동하지만, 훈련 데이터와 다른 경우에는 잘 작동하지 않는다는 한계점이 있습니다.

예컨대, SR CNNs는 주로 high quality natural images에서 specific downscaling kernel로 인해 생성된 low-resolution(LR) 이미지를 활용해 훈련됩니다.

  • Figure 1에서 real LR images를 다루는 경우, 'non-ideal' cases에서 SotA SR methods가 poor results를 보여줍니다.
  • Figure 2는 훈련 조건이 만족하지 않았을 때를 보여줍니다.
    • downscaling kernel이 non-ideal한 경우
    • aliasing effect를 포함하는 경우
    • sensor noise or compression artifacts를 포함하는 경우



 

본 연구에서는 "Zero-Shot" SR(ZSSR)을 소개합니다.

  • ZSSR은 prior image examples 나 prior training이 없이 Deep Learning의 Power를 이용합니다.
  • internel recurrence of information within a single image를 활용하여, test time에 a small image-specific CNN을 훈련합니다.
    • 즉, 오직 LR input image 자체만을 활용하여 훈련데이터가 추출됩니다(internal self-supervision).
  • 따라서 CNN은 image 별로 다른 setting에 적용될 수 있습니다.
  • 이는 SR이 acquisition process가 unknown and non-ideal한 real images에서 작동 가능하게 합니다(Figure 1, Figure 2).

Single image에서의 recurrence of small pieces of information은 natural images에서 매우 강력한 특성을 가집니다.

  • 이는 unsupervised image enhancement methods(unsupervised SR, Blind-SR, Blind-Deblurring 등)의 기초가 됩니다.
  • 이와 같은 unsupervised methods는 image-specific information을 이용할 수 있지만, 주로 K-nearest-neighbours search를 활용하여 Eucledian similarity of small image patches에 의존합니다.
  • 따라서, LR image안에 존재 하지 않는 patch, non-uniform sized of repeating structures inside the image 등의 문제에서 generalize 하기 어렵습니다.

본 연구에서 제안하는 image-specific CNN은 위에 기술한 patch-based methods에서 제한되지 않고 , cross-scale internal recurrence of image-specific information을 활용합니다.

  • LR image와 그것의 downscaled versions으로 부터 생성된(self-supervision) 복잡한 image-specific HR-LR relations을 추론하기 위해 CNN을 학습합니다.
  • 이렇게 학습된 relations을 활용하여 LR input image을 바탕으로 HR output을 생성합니다.
  • ZSSR은 unsupervised patch-based SR을 크게 능가 하였습니다.

본 연구의 기여점은 다음과 같습니다.

  1. ZSSR은 first unsupervised CNN-based SR method입니다.
  2. non-ideal imaging condition도 다룰수 있고, 다양한 data types의 images에 적용이 가능합니다.
  3. pretraining이 필요 없고, modest amounts of computational resources 환경에서 실행이 가능합니다.
  4. 어떠한 size에서도 SR이 적용 가능합니다.
  5. unknown imaging conditions에도 적용이 가능합니다.
  6. 'non-ideal' conditions하에서 취득된 SotA SR results를 제공하며, 'ideal' conditions에서도 SotA supervised methods와 competitive한 results를 보여줍니다.

 

 

 2. The Power of Internal Image Statistics

  본 연구의 접근 방법의 fundamental은 natural images가 strong internal data repetition을 가진다는 사실에 있습니다.

  • 예를들어 small image patches(예: 55, 77)는 같은 scale 혹은 다른 scale안에 있는 이미지 내에 repeat pattern을 보여주는 경우가 많이 있습니다.

Figure 3는 internal patch recurrence 기반의 simple single-image SR의 예시를 보여줍니다.

  • 이 예제에서 larger balconies를 참고하여 tiny balconies 안에 있는 tiny handrails가 recover하는 것이 가능합니다.
  • 사실 이러한 tiny handrails의 존재에 대한 유일한 증거는 다른 location의 다른 scale로 이미지 안에 존재합니다.
  • SoTA SR methods는 externally trained images에 의존할 때 이러한 image-specific information을 recover하는데 실패합니다.

 

사실, 선행연구에서 external entropy of patches in a general collection of natural images보다 internal entropy of patches inside a single image가 훨씬 더 작나든 것이 실증적으로 보여졌습니다.

  • 이는 internal image statistics가 때때로 general image collection으로 부터 얻어진 external statistics보다 stronger predictive-power를 줄 수 있다는 점을 의미합니다.

 

 

 

 3. Image-Specific CNN

본 연구에서 제안하는 image-specific CNN은 predictive power와 low entropy of internal image-specific information을 Deep-Learning의 generalization capabilities와 결합합니다.

  • 학습시킨 external examples가 없는 상황의 주어진 test image $I$에 대하여, Image-Specific CNN을 활용해 이 specific image를 위한 SR task를 해결합니다.
  • test image 자체에서 추출된 examples을 활용해 CNN을 훈련합니다.
  • 이러한 examples는 LR image $I$를 downscaling해서 얻어지고, 그 자체의 low-resolution version($I \downarrow s$)을 생성하기 위해 활용됩니다.
  • 상대적으로 가벼운 CNN을 활용하여, test image $I$를 low-resolution version ($I \downarrow s$)으로 재구성해 학습합니다(Figure 4. (b)의 윗부분).
  • 그 뒤, 학습된 CNN 결과를 test image $I$에 적용하여($I$를 network의 LR input으로 활용), desired HR output $I \uparrow s$를 얻어냅니다(Figure 4 (b)의 아래부분).
  • 이때, 학습된 CNN은 fully convolutional이므로, 다양한 size의 images에 적용이 가능합니다.

 

 

본 연구에서의 "training set"이 하나의 instance만으로만 구성되었기 때문에, 더 많은 LR-HR example-pairs를 추출하기 위해 data augmentation을 수행하였습니다.

  • augmentation은 test image $I$를 downscaling하면서 많은 smaller version($I= I_0, I_1, I_2, ..., I_n$)을 생성하여 수행됩니다.
  • 이들은 HR supervision의 역할을 하여 "HR fathers"라고 불립니다.
  • 각 HR fathers는 desired SR scale-factor $s$에 의해 downscaled되어 "LR sons"(input training instances)를 얻게 됩니다.
  • 결국 training set은 많은 image-specific LR-HR example pairs로 구성되게 됩니다.

또한, training set을 enrich하게 하기 위하여 각 LR-HR pair를 변형 하여 x8의 더 많은 image-specific training example을 확보하였습니다.

  • 4 rotations(0, 90, 180, 270)
  • mirror reflections in the vertical and horizontal directions

robustness를 위해 large SR scale factor $s$를 아주 작은 small LR images에 대해도 적용하였고, SR이 gradually perform하게 하였습니다.

  • several intermediate scale factors ($s_1, s_2, ..., s_m = s$)이 적용됩니다.
  • 각 intermediate scale $s_i$에서, generated image $HR_i$와 downscaled/rotated versions를 gradually growing training-set(as new HR fathers)이 되게 하였습니다.
  • 그것들(previous smaller 'HR examples')을 next gradual scale factor $s_{i+1}$로 새로운 new LR-HR training example pairs를 생성합니다.
  • 이 과정은 full desired resolution increase $s$까지 반복합니다.

 

3.1 Architecture & Optimization

large and diverse external collection of LR-HR image examples로 부터 학습되는 Supervised CNNs은 large diversity of all possible LR-HR relations로부터 weights를 학습해야 합니다.

  • 이러한 네트워크는 굉장히 deep and very complex한 경향이 있습니다.
  • 반대로, diversity of LR-HR relations of single image는 매우 작기 때문에, 훨씬 작고 간단한 image-specific network에 의해 encoded될 수 있습니다.

본 연구에서는 8개의 hidden layers(each has 64 channels)를 가진 simple, fully convolutional network를 활용합니다.

  • 각 layer에서 ReLU activation을 활용하였습니다.
  • Network input은 output size로 interpolated됩니다.
  • 이전의 CNN-based SR methods와 같이, interpolated LR과 HR parent간 residual을 학습합니다.
  • $L_1$ loss를 ADAM optimizer와 함께 사용합니다.
  • learning rate 0.001로 시작하여, 주기적으로 reconstruction error의 linear fit을 계산하여, standard deviation이 slope of the linear fit보다 특정 factor 이상으로 크다면, learning rate를 10으로 나눠줍니다.
  • learning rate 가 $10^-6$이 도달하면 훈련을 종료합니다.

training stage를 가속화하고 test image $I$의 size에 따른 runtime을 독립적으로 하기 위해, 각 iteration동안 랜덤하게 선택된 father-son example pair로 부터 random crop of fixed size를 취득합니다.

  • crop은 대개 128*128 size입니다.
  • 각 훈련 iteration에서 LR-HR example을 sampling하는 확률은 non -uniform하고 size of the HR-father에 비례합니다.
  • size-ratio(between the HR-father and the test image $I$)가 1에 가까울수록 sampling될 확률이 증가합니다.

마지막으로 geometric self-ensemble과 비슷하게, 8개의 outputs에서 median을 취합니다.

 

 

3.2 Adapting to the Test Image

HR으로부터 LR images의 acquisition parameter가 fixed되어 있다면(예: same downscaling kernel, high-quality imaging conditions), supervised SR 방법은 매우 높은 성능을 보여줄 수 있습니다.

  • 하지만 실무에서는 cameras/sensors가 다르고, 개인마다 image를 취득하는 조건이 다르기 때문에, acquisition process가 image마다 다를 수 있습니다.
  • 이는 다른 downscaling kernels, 다른 noise characteristics의 결과를 내개 됩니다.
  • 따라서 모든 가능한 image acquisition configurations/settings를 고려하여 훈련하는 것은 실무적으로 불가능할지도 모릅니다.
  • 게다가, 하나의 single supervised CNN은 모든 가능한 degradations/settings의 환경에서 잘 작동하기 힘들고, 좋은 성능을 내기 위해서는, 각각 다른 degradations/setting하에서 학습된 specialized SR이 필요합니다.

이러한 환경에서는 image-specific network의 이점이 있을 수 있습니다.

  • network는 test time에서, test image의 specific degradations/settings에 직접 맞춰집니다.
  • 네트워크는 test time에 user로부터 다음과 같은 parameters를 받을 수 있습니다.
    1. The desired downsacling kernel
    2. The desired SR scale-factor $s$
    3. The desired number of gradual scale increases
    4. Whether to enforce Backprojection between the LR ans HR image
    5. Whether to add 'noise' to the LR sons in each LR-HR example pair extracted from the LR test image

 

 

 4. Experiments & Results

ZSSR(Zero-Shot SR)은 주로 realistic(unknown and varying) acquisition setting의 real LR images를 다루는 것이 목적입니다.

  • 이는 보통 HR ground truth가 없기 때문에 visually evaluated 됩니다(Figure 1).
  • ZSSR을 quantitatively evaluate 하기 위하여, 다양한 setting의 controlled experiments를 수행하였습니다.
  • 흥미로운 것은 ZSSR은 SotA supervised method들에 특화되어있는 'ideal' benchmark datasets에서도 competitive results를 보여주었습니다.
  • 'non-ideal' datasets에서 ZSSR은 SotA SR을 크게 능가하는 성능을 보여주었습니다.

4.1 The 'Ideal' Case

Ideal case는 ZSSR의 주요 목적이 아니지만, 본 연구에서는 'ideal' LR image SR benchmark에서도 테스트를 수행하였습니다.

  • LR images는 HR version으로부터 ideally downscaled(bicubic kernel downsampling with antialiasing) 됩니다.
  • Table 1은 image-specific ZSSR이 externally-supervised methods와 비교해서도 competitive results를 달성함을 보여줍니다.
  • 심지어, SRCNN 보다 ZSSR의 성능이 더 좋게 나왔고, some cases에서는 VDSR보다도 좋은 성능을 보여주었습니다.
  • Unsupervised-SR 영역에서는 leading method인 SelfExSR을 크게 능가하였습니다.



게다가, very strong internal repetitive structures에서는 'ideal' supervised setting에서도 ZSSR이 VDSR, 때때로 EDSR+를 능가하기도 하였습니다.

  • Figure 5에 관련 예제가 표현되어있습니다(not a typical natural image 예제).
  • 또한 natural image예제는 Figure 6에 표현되어있습니다.

4.2 The 'Non-ideal' Case

Real LR images는 ideally generated 되지 않은 경향이 있습니다. 본 연구에서는 non-ideal cases를 ㅅ실험하기 위해 다음과 같은 실험을 하였습니다.

  1. non-ideal downscaling kernels(that deviate from the bicubic kernel)
  2. low-quality LR images

Non-ideal cases에서 image-specific ZSSR은 SotA SR method에 비해여 매우 높은 성능을 보여주었습니다.

  • Figure 2에 visual results가 소개되어있습니다.

(A) Non-ideal downscaling kernels

실험의 목적은 더 realistic blur kernels에 대해 테스트 하는 것입니다.

  • 이를 위해, BSD100부터 HR images를 random(but reasonably sized) Gaussian kernels를 적용하여 새롭게 데이터를 만들었습니다.
  • For each image, the covariance matrix $\sum$ of its downscaling kernwl was chosen to have a random angle $\theta$ and random lengths $\lambda_1, \lambda2$ in each axis.
    • $s$: HR-LR downscaling factor
  • 즉, 각 LR image는 different random kernel로 인해 subsample 되었습니다.


Table 2에는 leading externally-supervised SR methods와 비교한 performance가 기술되어있습니다.

  • 본 연구에서는 2가지 Case에 대한 ZSSR도 고려하였습니다.
    1. The more realistic scenario of unknown downscaling kernel
      • For this mode we used [14] to evaluate the kernel directly from the test image and fed it to ZSSR.
      • The unknown SR kernel is estimated in [14] by seeking a non-parametric downscaling kernel which maximizes the similarity of patches across scales in the LR test image.
    2. ZSSR with the true downscaling kernel used to create the LR image
  • Table 2는 ZSSR이 SotA methods를 매우 크게 능가한 성능을 보여줍니다.


(B) Poor-quality LR images

이 실험에서는 다른 종류의 quality degradation에 대해 images를 테스트 하였습니다.

  • unknown damage를 ZSSR이 잘 다루는지 robustness를 테스트 하기 위하여, BSD100의 각 image를 선택하여 random type of degradation out of 3 degradations를 적용하였습니다.
    1. Gaussian noise [$\sigma$=0.05]
    2. Speckle noise [$\sigma$=0.05]
    3. JPEG compression [quality =45]
  • Table 3는 ZSSR이 unknown degradation types에 robust하고, SR supervised method는 bicubic interpolation보다 낮은 성능을 가짐을 보여줍니다.

 

 5. Conclusion

  본 연구에서는 "Zero-Shot" SR의 컨셉을 소개합하였습니다.

  • external examples or prior training에 의존하지 않고 Deep Learning을 이용합니다.
  • test time에서 only LR test image로 부터 취득된 internal examples에 기반하여 훈련된 small image-specific CNN을 통해 얻을 수 있습니다.

이는 non-ideal, unknown process를 통해 얻어진 real-world images의 SR을 수행합니다.

  • real-world 'non-ideal' setting에서, ZSSR은 SotA SR methods를 qualitatively and quantitatively outperform 하였습니다.
  • ZSSR은 최초의 unsupervised CNN-based SR method입니다.

 

 

 

 

같이 보시면 좋아요.

2021.07.17 - [Image Generation] - Real-World Super-Resolution via Kernel Estimation and Noise Injection(2020)

 

Real-World Super-Resolution via Kernel Estimation and Noise Injection(2020)

Real-World Super-Resolution via Kernel Estimation and Noise Injection(2020)  Abstract 최근 SoTA super-resolution 방법들(supervised super-resolution)은 ideal datasets에서 인상적인 성능을 보여주었습..

deepmal.tistory.com

2021.07.11 - [Image Generation] - Noise2Void - Learning Denoising from Single Noisy Images(2019)

 

Noise2Void - Learning Denoising from Single Noisy Images(2019)

Noise2Void - Learning Denoising from Single Noisy Images(2019) 안녕하세요. 쏴아리 입니다. 오늘은 Unsupervised Image Denoising 방법론 중 하나인 Noise2Void에 대해 포스팅 하고자 합니다.  Abstra..

deepmal.tistory.com

 

 

포스팅 내용이 도움이 되었나요? 공감과 댓글은 큰 힘이 됩니다!

 

Comments