일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- EDSR
- DFS
- AStar
- 지도학습
- leetcode
- pixelshuffle
- NeuralNetwork
- SRCNN
- 딥러닝
- convolution
- BFS
- 8puzzle
- PYTHON
- deeplearning
- RESNET
- 비지도학습
- 합성곱
- 준지도학습
- 동적계획법
- sr
- 증가하는부분수열
- 신경망
- Increasing Triplet Subsequence
- superresolution
- MDSR
- CNN
- residualnetwork
- residuallearning
- a*
- Today
- Total
이것저것 코딩하는 블로그
[Computer Vision] EDSR review 본문
본 포스팅은 Lim, B., Son, S., Kim, H., Nah, S., & Mu Lee, K. 의 Enhanced deep residual networks for single image super-resolution 을 리뷰한 논문이다. 모든 그림과 설명은 논문을 참고했다.
0. What problem?
1) SR의 성능을 평가하는 척도인 PSNR (Peak Signal-to Noise Ratio)은 model의 작은 변화에 예민하게 변한다. 따라서 정교한 모델 구조와 최적화가 요구된다.
2) 대부분의 SR model은 다른 scale로 upsampling 하는 것을 독립적으로 취급하기 때문에, 다른 scale의 HR간의 관계를 이용할 수 없다.
3) 위의 두 문제를 해결한 모델이 존재하나, 이는 bicubic interpolated image를 사용하기 때문에 많은 연산량을 요구한다.
4) SRResNet은 residual learning을 통해 3)의 문제를 해결한 모델이나, ResNet은 high-level image problem을 해결하기 위해 고안된 모델이다 (image classification 등). Low-level image problem인 SR에 이를 단순히 적용시키는 것은 최적의 해답은 아니다.
EDSR (enhanced deep super-resolution network) 은 위의 네 가지 문제를 해결하기 위해 고안된 simplified multi-scale model이며, SRResNet의 구조를 차용하되 더 단순화했다
1. Modified residual block
EDSR은 기존의 SRResNet의 block structure에서 batch normalization을 제거한 block structure을 제안하였다.
xi 는 i번째 feature map, xi+1 은 i+1번째 feature map, Conv는 convolution, BN은 batch normalization을 의미한다. [그림 1] 과 같이, 기존의 SRResNet은 convolution, activation, convolution의 과정을 거치고 각각의 과정 사이에 batch normalization을 포함한다. EDSR에서는 batch normalization을 제거하였다. Batch normalization은 feature map을 정규화하므로 feature의 flexibility를 저하시킨다. 따라서 이를 제거하여 feature map의 값이 최대한 보존되도록 하였다.
2. EDSR
EDSR은 위와 같은 block을 총 32개, feature channel의 개수는 256으로 하여 이어 붙였다. 그리고 마지막 pixel shuffle을 통해 upsampling을 진행했다. Pixel shuffle이란, LR의 feature map들의 pixel들을 이용하여 HR의 pixel을 construct 하는 기법이다. 그림을 보면 다음과 같다.
EDSR의 전체적인 구조를 그림으로 살펴보면 다음과 같다.
여기서 1-2)를 해결한 EDSR의 특징이 나타나는데, 3배와 4배로 upscale 할 때 2배로 upscale시킬 때 사용한 pre-trained model의 parameter로 model의 parameter을 초기화한다.
3. MDSR
MDSR은 multi-scaled EDSR으로, 하나의 LR에 여러 가지 scale의 HR을 얻을 수 있다. EDSR과 같은 32개의 블록을 거치기 전에, 두 개의 residual block을 두어 scale 차이에서 오는 variance를 줄일 수 있도록 했다. 그 후 32개의 residual block을 거치고, scale specific pixel shuffle layer을 두어 scale마다 다르게 upsample될 수 있도록 했다. 중간 residual block의 parameter을 공유하므로 적은 parameter을 사용하며, scale이 다른 upscaling이 dependent하므로 다른 scale의 HR 간의 관계를 이용한 가중치 조정이 이루어질 수 있다.
4. Self-ensemble method
Model을 통해 얻어진 HR을 회전과 반전을 하면 총 8개의 다른 이미지를 얻을 수 있다. 최종 HR의 값을 이 8개의 평균으로 하는 것이 self-ensemble method이다. 이를 통해 성능 향상을 얻었음을 [표 1]에서 볼 수 있다. 또한 다른 모델 구조에 비해 뛰어난 PSNR과 SSIM (Structure similarity, 구조적 유사도) 을 보임을 알 수 있다.
'Computer Vision' 카테고리의 다른 글
[Computer Vision] ResNet Review (0) | 2020.12.09 |
---|---|
[Computer Vision] SRCNN - Super-Resolution CNN (0) | 2020.12.09 |
[Computer Vision] CNN - Convolution Neural Network (0) | 2020.12.09 |