* 공부용으로 정리한 것으로 내용에 오류가 있을 수 있습니다.
SRCNN, Image Super-Resolution Using Deep Convolutional Networks
이 논문은 2015년에 발표되었으며 Super Resolution에 최초로 딥러닝을 적용한 논문이다.
꽤 간단한 구조를 가졌는데, 각 단계는 3단계로 이루어진다.
L1. Patch extraction and representation
저해상도 이미지에서 Patch를 추출한다. Patch는 특징을 의미한다. (Y는 입력이미지, W는 가중치, B는 bais)
$$F_{1}(Y) = max(0, W_1*Y+B_1)$$
L2. Non-linear mapping
다차원 저해상도 Patch 백터를 다른 다차원 고해상도 Patch 백터로 맵핑한다. (Y는 저해상도 Patch)
$$F_{2}(Y) = max(0, W_2*F_1(Y)+B_2)$$
L3. Reconstruction
다차원 고해상도 Patch 백터로 고해상도 이미지로 생성
$$F(Y) = W_3*F_2(Y)+B_3$$
F함수의 학습에는 MSE를 loss function으로 사용한다. 즉, 아래와 같다.
$$L(\theta)=\frac{1}{n}\sum_{i=1}^{n}(F(Y_i;\theta)-X_i)^2$$
Experiements
위 그래프에서 SCRNN이 기존의 딥러닝을 사용하지 않은 방식들(bicubic, SC)보다 상당히 좋다는 것을 알 수 있다.
결과 사진을 봐도 번짐이 가장 적다.
이 논문을 기점으로 이후 더 다양한 Super Resolution 기법이 등장하게 된다.
'프로그래밍 > 머신러닝' 카테고리의 다른 글
[컨볼루션] Group convolution (0) | 2020.09.06 |
---|---|
[컨볼루션] Mobilenet (0) | 2020.09.06 |
[컨볼루션] Depthwise separable convolution (0) | 2020.09.05 |
[컨볼루션] Dilated Convolution (0) | 2020.09.03 |
Sigmoid의 문제점 : 왜 Sigmoid는 안될까? (0) | 2019.05.17 |