This is a reimplementation of "Deep Video Super-Resolution Network Using Dynamic Upsampling Filters Without Explicit Motion Compensation." It was rewritten based on TensorFlow 2.5, and a simple web application was added. Launch the web application container using the command below.
docker-compose up
์ต๊ทผ 4K์ ์ด์ด 8K ๊ธฐ์ ๊น์ง ๊ณ ํ์ง, ๊ณ ํด์๋์ display๊ธฐ์ ์ด ์ง์ฝ์ ์ผ๋ก ๋ฐ์ ํ๋ฉด์ ๊ทธ์ ๋ง์ถ์ด ๊ณ ํ์ง video์ ์์๊ฐ ํญ๋ฐ์ ์ผ๋ก ์ฆ๊ฐํ๊ณ ์๋ค. ์๋ก์ด ๊ณ ํด์๋ video์ ์๋กญ๊ฒ ์ ์ํ๋ ๊ฒ๋ ์ข์ง๋ง, ๊ณผ๊ฑฐ์ ์ ์๋ ์ ํด์๋์ ์ํ, ๋น๋์ค ๋ฑ์ video ์ปจํ ์ธ ๋ฅผ ๊ณ ํด์๋ device์์ ์ธ๋ฐํ๊ณ ์ด์ดํ pixel๋ก ํํ๋ video๋ก ์์ฒญํ๊ณ ์ ํ๋ ์์๋ ์ฆ๊ฐํ๊ณ ์๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ์ฌ video์ ํด์๋๋ฅผ ์ฌ๋ฆฌ๋ video upscaling๊ธฐ์ ๋ ๋ฐ๋ง์ถ์ด ๋ฐ์ ํ๊ณ ์๋ค. ๊ธฐ์กด์๋ interpolation algorithm์ ์ฌ์ฉํ์ฌ ์ฃผ๋ณ์ ํฝ์ ๊ฐ์ผ๋ก ๋ชจ๋ฅด๋ ๋ฐ์ดํฐ ๊ฐ์ ์ถ์ ํ๋ ๋ฐฉ์์ ์ฌ์ฉํ๋ค. ํ์ง๋ง ์ด๋ ์ด๋ฏธ์ง์ ํฌ๊ธฐ๋ง ์กฐ์ ํด ์ฃผ๋ฉฐ ํ์ง ์์ฒด๋ ๊ฐ์ ์ํค์ง ๋ชปํ๊ธฐ ๋๋ฌธ์ Deep-learning์ ์ฌ์ฉํ upscaling ๋ฐฉ๋ฒ์ด ์ฌ์ฉ๋๊ณ ์๋ค. ๊ทธ๋์ ์ฐ๋ฆฌ๋ ์ด๋ฌํ ์๋์ ์์์ ๋ง์ถ์ด, video upscaling์ ํ๋ก์ ํธ ์ฃผ์ ๋ก ์ ์ ํ์๋ค.
์ด ํ๋ก์ ํธ์ ๋ชฉํ๋ ์ ํ์ง video๋ฅผ ์ ์๋ฐฐ ๊ฐ์ ๋ ํด์๋๋ฅผ ๊ฐ์ง๋ ๊ณ ํ์ง video๋ก upscalingํ๋ ํ๋ก๊ทธ๋จ์ ์ ์ํ๋ ๊ฒ์ด๋ค. ๋จ์ํ interpolation ์๊ณ ๋ฆฌ์ฆ์์๋ถํฐ deep learning๊น์ง upscaling์ ํ๊ธฐ ์ํ ๋ค์ํ ๋ฐฉ๋ฒ์ด ์ ์๋์ด ์๋๋ฐ, ์ด ํ๋ก์ ํธ์์๋ deep learning์ ํ์ฉํ upscaling์ ๊ตฌํํ๋ค. CVPR์ ๋ฐํ๋ ๋ ผ๋ฌธ ์ค ํ๋์ธ โDeep Video Super-Resolution Network Using Dynamic Upsampling Filters Without Explicitโ์ ๋ฐฉ๋ฒ์ ์ฐจ์ฉํ์์ผ๋ฉฐ, ์ผ๋ถ ํ๋ผ๋ฏธํฐ๋ฅผ ์์ ํ์ฌ ํ์ต ์๋์ ๋์์ด ๋๋๋ก ํ์๋ค. ๋ํ, ๋จ์ํ ๋คํธ์ํฌ๋ฅผ ๊ตฌํํ๋ ๊ฒ์์ ๋ ๋์๊ฐ์, ํด๋น ๋คํธ์ํฌ๋ฅผ ์ด์ฉํ ์๋น์ค๋ฅผ ์ฌ๋๋ค์ด ์ง์ ์ฒดํํด๋ณผ ์ ์๋๋ก ์ดํ๋ฆฌ์ผ์ด์ ์ ์ ์ํ๋ ๊ฒ์ ๋ชฉํ๋ก ์ผ์๋ค. ์ต๊ทผ ๊ฐ์ฅ ํํ ์ดํ๋ฆฌ์ผ์ด์ ์ธ ์น ํ์ด์ง์ ํํ๋ก ์ฌ์ฉ์์๊ฒ ์ ๊ณตํ๊ณ ์ ํ์๊ธฐ ๋๋ฌธ์, ๋คํธ์ํฌ์ ๊ตฌํ ๋ฐ ํ์ต์ด ์๋ฃ๋ ์ดํ์ Python์ ์น ํ๋ ์์ํฌ๋ค ์ค ํ๋์ธ Flask๋ฅผ ์ด์ฉํด ๊ฐ๋จํ web application์ ์ ์ํ์ฌ ์ ์ ๋ค์ด ์น์ฌ์ดํธ์ upscaling์ ์ํ๋ ์์์ video๋ฅผ ์ ๋ก๋ ํ๋ฉด upscaling ํ download ๋ฐ์ ์ ์๋๋ก ๊ตฌํํ๋ ๊ฒ์ ๋ชฉํ๋ก ์ผ์๋ค.
Super Resolution์ ๊ทธ๋ํฝ์ค ๋ถ์ผ์ ํ ๊ฐ๋๋ก, ์ ํด์๋์ ๋ฏธ๋์ด๋ฅผ ๊ณ ํด์๋์ ๋ฏธ๋์ด๋ก ๋ณํํ๋ ๊ฒ์ ๋งํ๋ค. ์ด ๋ชฉ์ ์์ฒด๊ฐ ๋์ ์ ์ด๊ธฐ ๋๋ฌธ์ ๋ง์ ์ฌ๋๋ค์ด ๋์ ํ๊ณ ์๋ ๋์์, ๊ณผ๊ฑฐ ํด์๋๊ฐ ๋ฎ๊ฒ ๊ธฐ๋ก๋ ๋ฏธ๋์ด๋ ํ์ง ๋ฉด์์ ์์๋ ๋ฏธ๋์ด๋ฅผ ๋ณต๊ตฌํด๋ผ ์ ์๋ค๋ ์ ์์ ํฅ๋ฏธ๋ก์ด ์ฃผ์ ๋ก ์ฌ๊ฒจ์ง๋ค. ๊ธฐ์กด์๋ Bicubic Interpolation๊ณผ ๊ฐ์ ์ํ์ ์ธ ๋ฐฉ๋ฒ์ ์ด์ฉํ์ฌ ํฝ์ ๋ณด๊ฐ์ ์ฑ์ฐ๋ ๋ฐฉ์์ผ๋ก Super Resolution์ ๋ชฉ์ ์ ๋ฌ์ฑํ์์ผ๋, ์ต๊ทผ์๋ Deep Learning์ด ์ฌ๋ฌ ๋ถ์ผ์ ๋์ ๋จ์ ๋ฐ๋ผ Super Resolution์์๋ deep learning์ ์ด์ฉํ๋ ์ถ์ธ์ด๋ค. Super Resolution์ ์ฃผ๋ก ์ด๋ฏธ์ง๋ ๋น๋์ค์์ ์ฌ์ฉ๋๋ค. ๋น๋์ค๋ ์ฐ์๋ ์ด๋ฏธ์ง์ ๋๋ฏธ๋ก ๊ตฌ์ฑ๋๋ฉฐ, 1์ด์ ์ผ์ ํ ์์ ์ด๋ฏธ์ง๋ฅผ ๋๊ธฐ๋ ๋ฐฉ์์ผ๋ก ๊ตฌํ๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๋น๋์ค์ ๋ํ Super Resoltion์ ์งํํ๋ ๊ฒ์ ์ด๋ฏธ์ง์ ๋นํด ๋ ์ด๋ ต์ง๋ง, ์ต๊ทผ video ๊ธฐ๋ฐ ๋ฏธ๋์ด ์ฐ์ ์ด ์์๊ฐ๊ฐ์ผ๋ก ๋ฐ์ ํจ์ ๋ฐ๋ผ ์ฌ์ฉ์ฒ๊ฐ ๋งค์ฐ ๋์ด๋ฌ๊ธฐ ๋๋ฌธ์ ์ด๋ฏธ์ง ํด์๋๋ฅผ ๋์ด๋ ๊ฒ ๋ณด๋ค ๋ ํ์ฉ์ฑ์ด ๋ฐ์ด๋ ๊ฒ์ผ๋ก ๊ธฐ๋๋๋ค.
Video super resolution์ ๋ชฉํ๋ ์ฃผ์ด์ง low resolution (LR) frame
ํ๋ จ๋ network๋
์ฌ๊ธฐ์,
dynamic upsampling filter๋ง์ ์ ์ฉ์ํจ ๊ฒฐ๊ณผ๋ sharpness์์ lack์ ๊ฐ์ง๋ค. ๊ทธ๊ฑด ๊ทธ์ input pixel์ weighted sum์ด๊ธฐ ๋๋ฌธ์ด๋ค. ์ด๊ฒ์ ํด๊ฒฐํ๊ธฐ ์ํด residual image๋ฅผ estimateํ์ฌ high frequency detail์ ์ฆ๊ฐ์ํจ๋ค. Dynamic Upsampling process์ residual process๋ฅผ ๊ฒฐํฉํจ์ผ๋ก์จ HR frame์์ spatial sharpness์ temporal consistency๋ฅผ ์ฑ์ทจํ ์ ์๋ค.
dynamic upsampling filter๋ง์ ์ ์ฉ์ํจ ๊ฒฐ๊ณผ๋ sharpness์์ lack์ ๊ฐ์ง๋ค. ๊ทธ๊ฑด ๊ทธ์ input pixel์ weighted sum์ด๊ธฐ ๋๋ฌธ์ด๋ค. ์ด๊ฒ์ ํด๊ฒฐํ๊ธฐ ์ํด residual image๋ฅผ estimateํ์ฌ high frequency detail์ ์ฆ๊ฐ์ํจ๋ค. Dynamic Upsampling process์ residual process๋ฅผ ๊ฒฐํฉํจ์ผ๋ก์จ HR frame์์ spatial sharpness์ temporal consistency๋ฅผ ์ฑ์ทจํ ์ ์๋ค.
์ ์๊ถ ๋ฌธ์ ๊ฐ ์๋ video ์์ง์ ์ํด โPixabayโ์์ ๊ตฌํ ์ ์๋ ์์ ์ ์ฉ๋๋ก ์ฌ์ฉ ๊ฐ๋ฅํ ๋์์ ์ถ์ฒ๋ฅผ ๋ฐํ์ง ์์๋ ๋๋ ๋น๋์ค๋ค ์ค ์์ง์์ด dynamicํ video๋ค๋ก ์์งํ์๋ค. Python์ ์ด์ฉํ์ฌ ํด๋น ์นํ์ด์ง์ video๋ค์ crawling ํ์ผ๋ฉฐ, "Walking", "Animal", "Exercise", "Transport" ๋ฑ์ keyword๋ก dynamicํ motion์ด ํฌํจ๋์ด ์๊ณ , ๊ธธ์ด๊ฐ 8~15์ด ์ด๋ด์ธ video ๋ค๋ก๋ง crawling ํ์๋ค.
OpenCV๋ฅผ ์ฌ์ฉํ์ฌ ์ด 670๊ฐ์ video์์ ๋๋ต 320,000 ๊ฐ์ frame image๋ฅผ ์ถ์ถํ์๋ค. Ground truth๋ frame image ์ค ๋ชจ์ ์ด ๊ฐ์ฅ ์ ๋ํ๋๋ค๊ณ ์ถ์ ํ ์ ์๋ ์ค์ ๋ถ๋ถ์ 128x128 ํฌ๋กญ๋ image๋ฅผ ์ฌ์ฉํ์๊ณ , LR input์ 32x32 frame image๋ฅผ ์ฌ์ฉํ์๋ค.
Tensorflow 2.0์ high level framework์ธ keras๋ฅผ ์ด์ฉํด Network๋ฅผ ๊ตฌ์ฑํ๋ค. Network๋ฅผ ์ด๋ฃจ๋ ์ฃผ์ ์์์ธ Convolutional์ Batch Normalization layer๋ keras ์ ๊ณต layer๋ฅผ ์ฌ์ฉํ์์ผ๋ฉฐ local filtering layer๋ ์ฌ์ฉ์ ์ ์ ์ธต์ผ๋ก ๊ตฌํํด ์ฌ์ฉํ์๋ค.
์ ์ํ dataset๊ณผ network๋ฅผ ์ฌ์ฉํ์ฌ training ์ ์งํํ์๋ค. ์ปดํจํฐ๊ณตํ๊ณผ ๊ณต์ฉ ํด๋ฌ์คํฐ ์๋ฒ๋ฅผ ์ด์ฉํ์ฌ, 100 Epoch, Batch size 16, GPU 2๊ฐ๋ก ํ์ตํ์๋ค. 100 epoch ์ด์์์ ์ ์๋ฏธํ ํ์ต์ด ์งํ๋์ง ์์๊ธฐ ๋๋ฌธ์, ํ์ต์ 100 epoch๋ก ์ ํํ ์ํ์์ huber loss์ delta๋ cosine decay์ warmup ํ๋ผ๋ฏธํฐ๋ฅผ ์กฐ๊ธ์ฉ ๋ณ๊ฒฝํ๋ฉฐ validation loss๋ฅผ ์ค์ด๋ ๋ฐฉํฅ์ผ๋ก ํ์ต์ ์งํํ์๋ค.
์ ์๋ network๋ฅผ ์ค์ ์ ์ ๋ค์ด ํ๋ก๋์ ๋ ๋ฒจ์์ ์ฌ์ฉํด๋ณผ ์ ์๋๋ก ์น ์ดํ๋ฆฌ์ผ์ด์ ์ ์ ์ํ์๋ค. ๊ธฐ์กด ์ฝ๋์ ๋งค๋๋ฝ๊ฒ ํตํฉ๋๋ ๋์์ ๊ฐ๋จํ ํ์ด์ง๋ฅผ ์ ์ํ๋ ๊ฒ์ ๋ชฉํ๋ก ์ผ์๊ธฐ ๋๋ฌธ์, Python์ ๊ฐ๋ฒผ์ด ์น ํ๋ ์์ํฌ์ธ Flask๋ฅผ ์ด์ฉํ์ฌ ์ดํ๋ฆฌ์ผ์ด์ ์ ์ ์ํ์๊ณ , docker๋ฅผ ์ด์ฉํ ์ปจํ ์ด๋ํ๋ฅผ ํตํด ๋๊ตฌ๋ ์ฝ๊ฒ ๋ฐฐํฌํ ์ ์๊ฒ ์ค์ ํ์๋ค.
์ ์ ๊ฐ ์น ํ์ด์ง์ ์ ์ํ๋ฉด, ์ฐ์ ํ์ผ์ ์ ๋ก๋ํ ์ ์๋ ์ฐฝ์ ๋ณผ ์ ์๋ค. ์ ์ ๊ฐ ํ์ผ์ ์ ๋ก๋ํ๋ฉด, ์๋ฒ๋ ํด๋น ํ์ผ์ ๊ฐ ์ ์ ์ ์ธ์ ๊ณต๊ฐ์ ์ ์ฅํ๋ค. ์ด๊ฒ์ ์๋ก ๋ค๋ฅธ ์ ์ ๊ฐ ๋ค๋ฅธ ์ ์ ์ ํ์ผ์ ์ด๋ํ ์ ์๊ฒ ํ๊ธฐ ์ํจ์ด๋ค. ํด๋น ์ ์ฅ์ด ์๋ฃ๋ ๊ฒฝ์ฐ, ์ ์ ๋ ์นํ์ด์ง์์ ํ์ผ ๋ชฉ๋ก์ ์์ ์ด ์ ๋ก๋ํ ํ์ผ์ด ์๋ ๊ฒ์ ๋ณผ ์ ์์ผ๋ฉฐ, ํด๋น ํ์ผ ์์ ์์ด์ฝ์ ๋๋ฌ์ ๋ณํ์ ์์ฒญํ ์ ์๋ค.
์ ์ ๊ฐ ๋ณํ์ ์์ฒญํ๋ฉด, ํด๋น ์์ฒญ์ asynchronous ํ๊ฒ ์ฒ๋ฆฌํ๊ธฐ ์ํด ์ฐ์ uWSGI thread๋ฅผ ์ด์ฉํ์ฌ video ์ ์ฒ๋ฆฌ์ upscaling์ background์์ ์งํํ๋ ๋์์, ์ ์ ์๊ฒ๋ ์ฐ์ ์ฒ๋ฆฌ ์ค ์ด๋ผ๋ ์ฌ์ค์ ์๋ ค์ค๋ค. ํํธ, background์์๋ ์ ์ ๊ฐ ์ ๋ก๋ํ video๋ฅผ ์ฐ์ ์ ์ฒ๋ฆฌํ๋ค. ์ด ํ๋ก์ ํธ์์ ๊ตฌํํ network๋ 128x128์ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง๋ ์ด๋ฏธ์ง๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ๊ธฐ ๋๋ฌธ์, ์ ์ ๊ฐ ์ ๋ก๋ํ video๋ฅผ ํ๋ ์ ๋ณ๋ก ๋๋ ์ดํ, ๊ฐ ํ๋ ์์ ๋ค์ 128x128 ํฌ๊ธฐ๋ก ๋๋๋ค. ์ดํ ๊ฐ ๋ถ๋ถ์ network์ ๋ฃ์ด์ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ดํ์ ๊ฐ ๊ฒฐ๊ณผ๋ฅผ mergeํ๊ณ , ๋ ๊ทธ๊ฒ์ ๋ค์ video๋ก mergeํ์ฌ ๊ฒฐ๊ณผ๋ฌผ์ ๋ง๋ ๋ค. ๊ฒฐ๊ณผ๋ฌผ์ด ๋ง๋ค์ด์ง๋ฉด, ์ ์ ๋ ๊ฒฐ๊ณผ๋ฌผ์ด ๋ง๋ค์ด์ก๋ค๋ ์ฌ์ค์ ์น ํ์ด์ง์ ์์ด์ฝ์ ํตํด ์ ์ ์์ผ๋ฉฐ, ํด๋น ์์ด์ฝ์ ๋๋ฌ์ ๋ค์ด๋ก๋ ๋ฐ์ ์ ์๋ค.
Input (256 x 256) | Output(1024 x 1024) |
---|---|
Input | Output |
---|---|
์ฒซ๋ฒ์งธ ํ๋ฅผ ํตํด ํด์๋๊ฐ 256x256์ธ video์ frame์ด 1024x1024 x16 upscaling๋๋ ๊ฒ์ ํ์ธํ ์ ์๋ค. Input video์ output video์ frame ์ผ๋ถ๋ฅผ cropํ์ฌ ๋น๊ตํด ๋ณด๋ฉด output์์ ํ์ง์ด ๊ฐ์ ๋ ๊ฒ์ ๊ฐ์์ ์ผ๋ก ํ์ธํ ์ ์๋ค. ํ์ต์ด ์๋ฃ๋์์ ๋ ์ต์ข validation set์ ๋ํ loss๋ 0.00435 ์ด์์ผ๋ฉฐ, hyperparameter๋ ๋ค์๊ณผ ๊ฐ๋ค.
- Cosine Decay
- Initial Learning Rate: 0.005
- First Decay Steps: 70
- Huber loss
-
$\delta$ : 200.0
-
๋ ผ๋ฌธ์์๋ dataset์ ์ ์ํ ๋, video frame์ ๊ทธ๋๋ก ์ฌ์ฉํ์ง ์๊ณ "motion์ด ์ถฉ๋ถํ ๋ณด์ด๋ area" ๋ฅผ cropํ์ฌ ์ผ๋ถ๋ถ๋ง ์ฌ์ฉํ์๋ค. ๋น์ทํ๊ฒ motion์ด ์ถฉ๋ถํ area๋ฅผ cropํ์ฌ dataset์ ์ ์ํ๊ณ ์ ํ์์ผ๋ 300๊ฐ๊ฐ ๋๋ video๋ฅผ ์ผ์ผ์ด ํ์ธํ์ฌ crop ์์น๋ฅผ ๊ฒฐ์ ํ๋ ๊ฒ์ ๋ฌด๋ฆฌ๊ฐ ์์๋ค. ๊ทธ๋์ ๋์ฒด์ ์ผ๋ก frame์ ๊ฐ์ด๋ฐ ๋ถ๋ถ์์ object์ motion์ด ํ๋ฐํ๊ฒ ๋ณด์ธ๋ค๊ณ ๊ฐ์ ํ๊ณ ์ค์ฌ๋ถ๋ถ์ cropํ์ฌ ์ ์ํ์๋ค. ๊ทธ๋ ๊ฒ ํ๋ค ๋ณด๋ video์ ๋ฐ๋ผ์๋ motion์ด ์ถฉ๋ถํ์ง ์์ training์ ๋์์ด ๋์ง ๋ชปํ๋ data๋ค๋ ์์๋ค. ๋ ผ๋ฌธ์์๋ 300๊ฐ์ video๋ก ์ถฉ๋ถํ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํ์์ง๋ง, ๋ณธ project์์๋ dataset์ด ๋ ํ์ํ๊ฒ ๋์๊ณ ์ถ๊ฐ์ ์ผ๋ก 300๊ฐ์ video๋ฅผ ๋ crawlingํด์ ์ต์ข dataset์ ์ ์ํ์๋ค. ์ด๋ฌํ motion area๋ฅผ identifyํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ํด ์ข ๋ ๊ณ ๋ฏผํด ๋ณธ๋ค๋ฉด ์ ์ dataset์ผ๋ก๋ ๋ ์ข์ ์ฑ๋ฅ์ ๋ผ ์ ์์ ๊ฒ์ด๋ค.
10์ด์ 240p video๋ฅผ 4๋ฐฐ๋ก upscailingํ๋๋ฐ ์ฝ 6๋ถ์ ์๊ฐ์ด ์์๋๋ค. Video๋ฅผ ์์ฒญํ๋ ๋์ค์๋น์๋ค์๊ฒ ์์ด ์ง์ ๋ณธ ์์ ์ ์ํํ๋๋ก ๊ฒ์ ๋งค๋ ฅ์ ์ด์ง ์๋ค. ๋ฐ๋ผ์ ํ์ฌ์ ๊ธฐ์ ๋ก๋ ์ปจํ ์ธ ๊ณต๊ธ์๊ฐ ๋ณธ์ธ์ video๋ฅผ upsaciling ์์ ํ ํ ์ด๋ฅผ ๋์ค์๊ฒ ์ ๊ณตํ๋๋ก ํ๋ ๊ฒ์ด ํฉ๋ฆฌ์ ์ธ buisiness plan์ผ๋ก ๋ณด์ธ๋ค. video super resolution์ ์๋๋ฅผ ๋์ด๊ธฐ ์ํด ๋ค์์ ๋ฐฉ๋ฒ์ ๋ ผ์ํ์๋ค.
๋ณธ ๋ ผ๋ฌธ์์ video super resolution์ ์ํํ๊ธฐ ์ํด "Data augmentation"์ด ํ์ฉ๋๋ค. 7๊ฐ์ frame์ inputํ์ฌ temporal consistency๋ฅผ ์ด์ฉํ๋ ๋ฐฉ๋ฒ์ธ๋ฐ, ์ด ๊ฒฝ์ฐ 100 frame์ ๊ธธ์ด๋ฅผ ๊ฐ์ง video๋ฅผ upscailingํ๊ธฐ ์ํด ์ฝ 700๊ฐ์ frame์ ๋ํ computation์ด ํ์ํ๋ค. ๊ณ์ฐ๋์ด์ผํ ์ด ํ๋ ์ ์๋ฅผ ์ค์ด๊ธฐ ์ํด, 100๊ฐ์ frame ์ค keyframe์ ์ ํ์ฌ ํด๋น ํ๋ ์์ 7๊ฐ์ frame์ data augmentation์ ํ์ฉํ๋ค. ๋๋จธ์ง frame๋ค์ ๋ ์ ์ ์์ frame์ data augmentation์ ํ์ฉํ๋, keyframe๋ค์ interpolation์ผ๋ก๋ถํฐ residual์ ๊ณ์ฐํด ๋ํด์ค์ผ๋ก์จ ๋ถ์กฑํ ์ ์๋ data augmentation์ ๋ณด์ถฉํด์ค๋ค. ์ด๋ฅผ ํตํด ๊ณ์ฐ๋์ ์ค์ด๊ณ ์ด๋ก ์ธํด ๋ฐ์ํ ํ์ง ์ ํ๋ฅผ ์ค์ผ ์ ์๊ธฐ๋ฅผ ๊ธฐ๋ํ๋ค.
์ ๋๋ฉ์ด์ , ์์ฐ ํ๊ฒฝ, ๊ฑด์ถ๋ฌผ ๋ฑ ์ฌ๋ฌ ์ข ๋ฅ์ video๊ฐ ์กด์ฌํ๊ณ ๊ฐ ์ข ๋ฅ๋ณ ๋น๋์ค๊ฐ ๋ํ๋ด๋ ํ ์ค์ณ์ ์์ง์์ ์์ดํ๋ค. Category๋ณ๋ก ๋น๋์ค๋ฅผ ๋ถ๋ฅํ์ฌ dataset์ ์ค๋นํ์ฌ category๋ณ๋ก training์ ํ์์ ๋, ์ฑ๋ฅ์ด ํฅ์ํ๋์ง๋ฅผ ํ์ธํ๊ณ ์ถ๋ค. ๋ง์ฝ ์ ์๋ฏธํ ์ฑ๋ฅํฅ์์ด ์ด๋ฃจ์ด์ง๋ค๋ฉด ์ฌ์ฉ์๊ฐ ํฅ์์ํค๊ณ ์ ํ๋ ๋น๋์ค์ ์ข ๋ฅ์ ๋ง์ถ์ด ๋ ์ข์ ํ์ง์ video super resolution์ ์ ๊ณตํ ์ ์์ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๋ค.
- Jo, Y., Oh, S. W., Kang, J., & Kim, S. J. (2018). Deep video super-resolution network using dynamic upsampling filters without explicit motion compensation. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 3224-3232).
- Jo, Y., Oh, S. W., Kang, J., & Kim, S. J. (2019). VSR-DUF. https://github.com/yhjo09/VSR-DUF
- Some code from the source is included in this project.