1
0
Fork 0
mirror of synced 2024-05-06 14:02:22 +12:00
Go to file
2015-05-17 17:26:53 +09:00
appendix add cron script; fix run-web.sh 2015-05-17 07:24:24 +00:00
assets add slide link 2015-05-17 07:25:01 +00:00
cache first commit 2015-05-16 14:48:05 +09:00
data add slide and appendix 2015-05-17 03:59:49 +09:00
images add slide and appendix 2015-05-17 03:59:49 +09:00
lib update training script 2015-05-17 14:43:07 +09:00
models update noise1_model 2015-05-17 02:44:08 +09:00
.gitignore update training script 2015-05-17 14:43:07 +09:00
cleanup_model.lua first commit 2015-05-16 14:48:05 +09:00
convert_data.lua update training script 2015-05-17 14:43:07 +09:00
LICENSE add LICENSE and NOTICE 2015-05-17 17:26:53 +09:00
NOTICE add LICENSE and NOTICE 2015-05-17 17:26:53 +09:00
README.md add README 2015-05-17 15:18:33 +09:00
train.lua update training script 2015-05-17 14:43:07 +09:00
train.sh update training script 2015-05-17 14:43:07 +09:00
waifu2x.lua first commit 2015-05-16 14:48:05 +09:00
web.lua change error message 2015-05-17 12:21:02 +09:00

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.