Image Super-Resolution for Anime-Style Art
fork from : https://github.com/nagadomi/waifu2x.git

nagadomi ffd52fdb2b super typo fix 10 years ago
appendix 43614f46af add cron script; fix run-web.sh 10 years ago
assets 5727877ee4 add slide link 10 years ago
cache 1273b3609e first commit 10 years ago
data 243e9044cd add slide and appendix 10 years ago
images 243e9044cd add slide and appendix 10 years ago
lib ffd52fdb2b super typo fix 10 years ago
models 83548d7494 update noise1_model 10 years ago
.gitignore 2231423056 update training script 10 years ago
LICENSE f2f5c882eb add LICENSE and NOTICE 10 years ago
NOTICE f2f5c882eb add LICENSE and NOTICE 10 years ago
README.md 20d0f70d2a add README 10 years ago
cleanup_model.lua 1273b3609e first commit 10 years ago
convert_data.lua 2231423056 update training script 10 years ago
train.lua ffd52fdb2b super typo fix 10 years ago
train.sh 2231423056 update training script 10 years ago
waifu2x.lua ffd52fdb2b super typo fix 10 years ago
web.lua ffd52fdb2b super typo fix 10 years ago

README.md

waifu2x

Image Super-Resolution for anime/fan-art using Deep Convolutional Neural Networks.

Demo-Application can be found at http://waifu2x.udp.jp/ .

Summary

Click to see the slide show.

slide

References

waifu2x is inspired by SRCNN [1]. 2D character picture (HatsuneMiku) is licensed under CC BY-NC by piapro [2].

Dependencies

Platform

Packages (luarocks)

NOTE: Turbo 1.1.3 has bug in file uploading. Please install from the master branch on github.

Running The Web Application

Please edit the first line in web.lua.

local ROOT = '/path/to/waifu2x/dir'

Run.

th web.lua

View at: http://localhost:8812/

Command line tools

Noise Reduction

th waifu2x.lua -m noise -noise_level 1 -i input_image.png -o output_image.png
th waifu2x.lua -m noise -noise_level 2 -i input_image.png -o output_image.png

2x Upscaling

th waifu2x.lua -m scale -i input_image.png -o output_image.png

Noise Reduction + 2x Upscaling

th waifu2x.lua -m noise_scale -noise_level 1 -i input_image.png -o output_image.png
th waifu2x.lua -m noise_scale -noise_level 2 -i input_image.png -o output_image.png

See also images/gen.sh.

Training Your Own Model

Data Preparation

Genrating a file list.

find /path/to/image/dir -name "*.png" > data/image_list.txt

(You should use PNG! In my case, waifu2x is trained by 3000 PNG images.)

Converting training data.

th convert_data.lua

Training a Noise Reduction(level1) model

th train.lua -method noise -noise_level 1 -test images/miku_noise.png
th cleanup_model.lua -model models/noise1_model.t7 -oformat ascii

You can check the performance of model with models/noise1_best.png.

Training a Noise Reduction(level2) model

th train.lua -method noise -noise_level 2 -test images/miku_noise.png
th cleanup_model.lua -model models/noise2_model.t7 -oformat ascii

You can check the performance of model with models/noise2_best.png.

Training a 2x Upsclaing model

th train.lua -method scale -scale 2 -test images/miku_small.png
th cleanup_model.lua -model models/scale2.0x_model.t7 -oformat ascii

You can check the performance of model with models/scale2.0x_best.png.