논문/Image&Video Super-Resolution

[논문 리뷰] BasicVSR : The Search for Essential Components in Video Super-Resolution and Beyond

바보1 2022. 11. 11. 15:42


해당 논문 리뷰에서는 IconVSR에 대한 설명을 하지 않습니다.

또한 다른 모델에 대한 설명도 하지 않습니다.

추후 시간이 된다면 부족한 설명을 덧붙이도록 하겠습니다.


0. Abstract

 

 

  • VSR은 시간적 차원을 추가로 이용하기 때문에 image SR에 비하여 좀 더 많은 구성요소를 가지는 경향이 있다.
  • 복잡한 디자인은 흔하지 않다.
  • 본 연구에서는 이러한 매듭을 풀고, VSR에서 4개의 기본적인 기능으로 안내되는 가장 중요한 구성요소를 재고려하려고 한다.
  • Propagation, Alignment, Aggregation, Upsampling
  • 이미 존재하는 몇몇의 구성요소에 약간의 디자인을 더함으로써, 많은 SOTA와 비교해도 speed와 restolration quality 측면에서 향상한 간결한 pipeline인 Basic VSR을 소개하고자 한다. 
  • 논문에서는 함정에 대해 토론하고, 어떻게 그러한 결과를 얻었는지에 대한 체계적인 분석을 설명하려 한다.
  • 또한 우리는 추가적으로 BaicVSR에 information refill mechanism과 coupled propagation 체계를 추가함으로써 정보의 종합이 가능하게 하였다.
  • BasicVSR의 확장 버전인 IconVSR은 미래의 VSR 접근을 위해 더욱 강한 baseline을 제공할 것이다.

1. Introduction

 

 

  • SISR(Single Image Super Resolution)와 비교해서 VSR은 비디오 프레임에서의 여러 개의 높게 연관되어 있지만, 잘못 정렬된 프레임에서의 정보를 종합하는 것이 새로운 도전을 부과한다.
  • SISR과는 다르게 VSR에서의 잠재적으로 복잡하고, 비슷하지 않은 디자인은 구현과 이미 존재하는 접근법, 재현 가능성과 공정한 비교를 어렵게 만든다.
  • 따라서 한 발자국 뒤로 물러서서 좀 더 일반적이고, 효율적이며 구현하기 쉬운 baseline의 연구에 초점을 맞추어, VSR 모델의 다양한 디자인을 재고려해야 한다.
  • 일반적인 VSR 접근 방식을 기능을 기반으로 하는 하위 모듈로 분해하여 연구를 시작하려 한다.
  • 아래의 그림에서 알 수 있듯이, 대부분 존재하는 방법은 상호 연관된 네 개의 구성요소를 수반한다.
  • propagation, alignment, aggregation, upsampling이다.

  • 이러한 분해는 각각의 구성요소의 아래에 있는 다양한 옵션을 체계적으로 연구하게 하고, 그것들의 장점과 단점을 이해할 수 있게 한다.
  • 해당 논문에서는 BasicVSR이라는 한 가지 가능성을 밝힌다.
  • 연구자들은 propagation, alignment 요소의 선택이 성능과 효율성 측면에서 상당한 변화를 이끌 수 있다는 것을 관찰했다.
  • 해당 연구는 bidirectional propagation scheme으로 information gathering을 최대화하고, optical flow-based method으로 두 개의 이웃한 프레임 사이의 feature alignment의 연관성을 측정한다.
  • 또한 aggregation, upsampling에는 각각 feature concatenation과 pixel-shuffle을 사용한다.
  • 아래는 IconVSR에 대한 설명인데, BasicVSR에서 Information-refill과 coupled propagation 체계를 확장하여 IconVSR을 만들었다고 한다. (이하 생략)

2. Related Work

 

 

생략


3. Methodology

 

 

  • VSR은 원래 공간적 차원과 시간적 차원에서 오는 정보를 종합해야 하기 때문에 길고 복잡한 processing pipeline을 수반한다.
  • 존재하는 연구들은 일반적으로 성능을 향상하기 위한 기능의 한 가지 측면만 집중하고, 다양한 요소의 시너지를 고려하지 않는다.
  • 다양한 구성요소를 거시적으로 재방문하고, 존재하는 기법들의 강점을 상속하는 일반적인 baseline을 들춰내야 한다.
  • 해당 연구에서 광대한 분석을 하고, 디자인에 풍부한 유연성을 주는 근본인 간단하고, 강력하고, 다재다능한 baseline인 BasicVSR을 제공한다.
  • VSR 방법의 분석 및 개발을 용이하게 하기 위한 일반적인 프레임워크를 발견하는 것을 목표로, 저자는 Opticla FlowResidual Block과 같이 일반적으로 채택되는 요소로 연구를 제한한다.

3.1.1 Propagation

 

 

  • propagation은 VSR의 가장 영향력 있는 요소 중 하나이다.
  • 그것은 어떻게 비디오 sequence의 정보가 활용되는지 명시한다.
  • 존재하는 propagation 체계는 세 가지 그룹으로 나눌 수 있는데, local, unidirectional, bidirectional propagation이다.
  • 저자는 앞선 두 개의 약점을 설명하며, bidirectional propagation을 선택한 동기를 말한다.

 

Local Propagation

  • sliding-window 기법은 local window 내에 있는 LR 이미지들을 input으로 사용하여, local information만 복구에 사용한다.
  • 이러한 구조에서 접근 가능한 정보는 local neighborhood로 제한된다.
  • 멀리 있는 프레임의 누락은 필연적으로 sliding-window 기법의 가능성을 제한한다.
  • 주장을 증명하기 위해, 시간적 차원에 global receptive field를 사용하여, 점진적으로 receptive field를 축소한다.
  • 논문에서는 test sequence(아마 하나의 동영상에서 프레임의 집합인 듯?)를 K개의 segment로 나눈 후, 각각의 segment를 BasicVSR을 통하여 독립적으로 복구를 했다.
  • 나의 생각 : sliding-window를 사용한 논문을 읽어보지는 못했지만, 아마도 기존의 window를 시간축을 따라 3차원으로 구성한 듯.. 따라서 segment가 1이라면 모든 시간축에 대한 window가 되는 거고, segment가 2라면 시간축을 2개로 나누어 절반씩 sliding-window로 SR을 하는 느낌인 듯.. 아니라면 댓글 달아주세요.

  • 점선은 K = 1 일 때이다.
  • 해당 그래프는 K = 1 일 때와 K가 다른 숫자일 때의  PSNR 차이이다.
  • 첫 번째로, segment의 숫자가 감소할수록 PSNR 차이가 줄어든다. (이것은 더 좋은 성능을 의미하며, 시간적 수용장이 증가한다.)
  • 이것은 멀리 있는 프레임에 있는 정보가 복구에 이익이 되고, 무시해서는 안 된다는 것을 주장한다.
  • 두 번째로, 값들은 대체적으로 각 segment의 양쪽 끝에서 제일 큰데, 이것은 long-term information이 축적하기 위해서 long sequence를 사용하는 것이 필수적임을 의미한다.

 

Unidirectional Propagation

  • 논문에서는 앞서 언급한 문제를 해결하기 위해 unidrectional propagation을 도입하여, 정보가 순차적으로 첫 번째 프레임부터 마지막 프레임까지 전파되게 하였다.
  • 하지만 이러한 세팅에서 다른 프레임에서 받는 정보는 불균형하다.
  • 분명히 첫 번째 프레임은 비디오의 어떤 정보도 받지 못하는 반면, 마지막 프레임은 모든 순서에서 정보를 받는다.
  • 그러므로 초기의 프레임은 최적이 아닌 결과를 낼 것이라 예상된다.
  • 이를 입증하기 위해서 bidirectional propagation과 비교하였다.

  • 단방향 전파 모델 같은 경우에는 명백히 낮은 PSNR을 보인다.
  • 특히 마지막으로 갈수록 PSNR이 증가한다.
  • 이는 첫 번째 프레임은 아무런 정보를 받지 못하는 반면, 마지막 프레임은 정보를 많이 받는다는 것을 의미한다.
  • 더욱이 일관된 0.5 dB의 성능 하락(아마 10 프레임부터, 90 프레임까지)은 부분적인 정보가 사용되었을 때만 보인다.
  • 이러한 관찰은 unidirectional propagation이 최적이 아닌 결과를 냈다는 것을 의미한다.
  • 순서의 마지막 프레임에서부터 정보를 역으로 보냄으로써 output quality를 증가시킬 수 있다.

 

Bidirectional Propagation

  • 앞선 두 개의 문제는 특징을 시간에 따라 독립적으로 앞과 뒤로 전파하는 양방향 전파를 사용함으로써 동시에 해결할 수 있다.
  • \(x_i\) : 주어진 LR 이미지
  • \(x_{i-1}, x_{i+1}\) : 주어진 LR 이미지의 주위 이미지
  • 그리고 주위 이미지에 상응하는 feature는 \(h^f_{i-1}, h^b_{i+1}\)이다.
  • 따라서 수식은 아래와 같다.

  • backward에서는 주어진 LR 이미지와, 다음 프레임의 이미지, 그리고 미래의 프레임에서부터 전파된 특징들이 input으로 들어간다.
  • forward에서는 주어진 LR 이미지와, 이전 프레임의 이미지, 그리고 과거의 프레임에서부터 전파된 특징들이 input으로 들어간다.

3.1.2 Alignment

 

 

  • spatial alignment는 subsequent aggregation을 위해 연관성이 높지만 잘못 정렬된 image/feature를 정렬하는 책임이 있으므로 VSR에서 매우 중요한 역할을 한다.
  • 이것은 총 세 개의 카테고리로 나누어지는데, without alignment, image alignment, feature alignment이다.
  • 이번 단계에서는 각각의 카테고리를 분석하고, 저자들의 선택이 feature alignment 임을 증명하기 위해 실험을 수행했다.

사실 필자(나)는 학부생이라 alignment의 정확한 개념을 잘 모른다.

다만 이것이 image alignment에서는 프레임 사이에 픽셀 단위로 어떤 움직임이 있었는가를 측정하고,

feature alignment에서는 프레임에서의 특징이 다음 프레임에서 어떻게 움직였는지를 측정하는 것으로만 알고 있다.

따라서 내가 아는 지식이 틀릴 수도 있으므로, 이 점에 유의해서 읽어줬으면 한다.

 

Without Alignment

  • 존재하는 recurrent method는 일반적으로 propagation 도중에 alignment를 수행하지 않는다.
  • non-aligned 된 feature/image는 aggregation을 지연시키고, 결과적으로 불충분한 성능으로 이끈다.
  • 이러한 비최적화는 Basic VSR에 spatial alighment를 제거함으로써 우리의 연구에 반영된다.
  • 저자는 non-alignment 된 feature를 복구를 위해 바로 concatenate 시킨다.
  • 적절한 alignment가 없이, propagated feature는 입력 이미지와 공간적으로 alignment 되지 않는다.
  • 결과적으로, convolution 같은 local operation은 해당하는 위치에서 정보를 종합하는데 비효율적이다.
  • 1.19 dB의 PSNR 하락이 보였다고 한다. (하지만 제시된 자료는 없다.)
  • 이러한 결과는 먼 거리의 spatial location 으로부터의 정보를 종합하기 위해 충분히 큰 수용장을 가지는 operation을 채택하는 것이 중추적이라는 것을 의미한다.

 

Image Alignment

  • 다른 연구에서는 복구 전에 이미지에 optical flow와 warping을 함으로써 alignment를 한다.
  • 어떤 연구에서는 spatial alignment를 image level에서 feature level로 옮김으로써 눈에 띈 향상을 보였다.
  • 이번 작업에서는 이러한 주장을 뒷받침하는 실험을 할 것이다.
  • BasicVSR의 변종에서 image warping과 feature warping을 비교할 것이다.
  • optical flow 측정의 부정확한 결과로 인해, warped image는 필연적으로 blur와 incorrectness로 인해 고통을 받았다.
  • 이러한 디테일에서의 손실은 수준이 낮은 결과를 낳는다.
  • 이번 실험을 통해 image alignment를 도입함으로써, 0.17dB의 PSNR 손해를 보았다.
  • 이러한 관찰은 spatial alignment를 feature level로 옮기는 것의 필요성에 대해 확신을 가졌다.

 

Feature Alignment

  • removint/image alignment의 부족한 성능은 저자를 feature alignment에 의지하게 만들었다.
  • flow-based method와 비슷하게, BasicVSR은 spatial alignment를 위해 optical flow를 채택했다.
  • 하지만 이전의 작업에서 image warping을 했던 것 대신에, 저자는 더 나은 성능을 위해 feature에 warping을 했다.
  • aligned feature는 정제를 위해 여러 개의 residual block을 통과한다.
  • 아래는 해당하는 수식이다.

결론적으로 오른쪽의 그림으로 나타나게 된다.

  • s : flow estimation moduel
  • w : spatial warping module
  • r : residual block
  • (논문 내용 아님, forwarding을 기준으로 설명) 자세히 설명하자면, 해당하는 LR 이미지와, 이전 프레임의 이미지를 input으로 받아서 optical flow를 측정한다.
  • 이후, 과거 프레임으로부터 온 feature와, 앞에서 찾은 optical flow를 input으로 받아서 spatial warping을 진행한다.
  • (아마 이러는 이유는 이전에 온 과거를 바탕으로 현재의 이미지에 있는 특징을 warping 하는 듯, 다만 바로 직전의 프레임의 정보가 더 돋보이게 하면서)
  • 최종적으로 이런 정보를 residual block에 넣음으로써 feature를 정제한다.
  • 이런 정보는 또다시 다음 프레임의 이미지를 위해 들어간다. (내 설명 끝)

3.1.3 Aggregation and Upsampling

 

 

  • BasicVSR은 aggregation과 upsampling을 위해 기본적인 구성요소를 채택했다.
  • 분명히, 중간의 특징이 주어지면, upsampling 모듈은 multiple convolution으로 혼합되고, HR Image를 output으로 내기 위해 pixel shuffle이 사용된다.
  • 수식은 아래와 같다.

  • U는 upsampling module이다.


3.1.4 Summary of BasicVSR

 

 

BasicVSR은 

Propagation으로 bidirectional propagation을 사용하여 long-term and global propagtion을 강조한다.

alignment에서는 간단한 flow-based alignment를 feature level에서 사용한다.

aggregation과 upsampling에서는 일반적인 선택인 feature concatenation과 pixel shuffle를 사용한다.

간단하고 간결한 구조임에도 불구하고, BasisVSR은 복구 quality와 효율성 측면에서 상당한 성능을 달성했다.

BasicVSR은 또한 좀 더 많은 도전을 위해 추가적인 구성요소를 쉽게 수용할 수 있으므로, 매우 다재다능하다.


3.2 From BasicVSR to IconVSR

 

 

생략


6. Conclusion

 

 

  • 해당 연구를 VSR 접근법의 확장과 분석을 용이하게 하기 위한 VSR baseline의 효율성과 일반성에 집중을 하였다.
  • 기존에 존재하는 요소를 분해하고, 분석을 통하여, 저자는 BasicVSR을 제시하고, 간단한 구조임에도 불구하고 높은 효율성으로 SOTA를 능가한다.
  • 또한 저자는 성능을 향상하기 위해 BasicVSR에 새로운 두 개의 구성요소를 추가하여 IconVSR을 제시한다.
  • BasicVSR와 IconVSR은 vedeo deblurring, denoising and colorization과 같은 low-level vision task를 위한 확장 가능성을 가지고 있는 architecture를 발굴하기 위한 강력한 baseline을 제공한다.