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

nagadomi 81adc86f3e add hint for firefox. 10 年之前
appendix 43614f46af add cron script; fix run-web.sh 10 年之前
assets 81adc86f3e add hint for firefox. 10 年之前
cache 1273b3609e first commit 10 年之前
data 243e9044cd add slide and appendix 10 年之前
images 243e9044cd add slide and appendix 10 年之前
lib ffd52fdb2b super typo fix 10 年之前
models 83548d7494 update noise1_model 10 年之前
.gitignore 2231423056 update training script 10 年之前
LICENSE f2f5c882eb add LICENSE and NOTICE 10 年之前
NOTICE f2f5c882eb add LICENSE and NOTICE 10 年之前
README.md 72a1adb171 Update README.md 10 年之前
cleanup_model.lua 1273b3609e first commit 10 年之前
convert_data.lua 2231423056 update training script 10 年之前
train.lua ffd52fdb2b super typo fix 10 年之前
train.sh 2231423056 update training script 10 年之前
waifu2x.lua ffd52fdb2b super typo fix 10 年之前
web.lua ffd52fdb2b super typo fix 10 年之前

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].

Public AMI

AMI name: waifu2x server
AMI ID: ami-75f01931
Region: N. California
Instance: g2.2xlarge (require a GPU)
OS: Ubuntu 14.04
User: ubuntu

Dependencies

Platform

Packages (luarocks)

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

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 UPscaling 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.