自転車公園ステーションのブログ

自転車で気軽に公園に向かえるような、気軽に立ち寄れるブログを目指しています。

Dockerでwaifu2x(画像の拡大・高解像度化)を動かす

はじめに

Dockerでwaifu2x(画像の拡大・高解像度化)を行います。 WindowsやWebサービス上でもできますが、Dockerでの方法を記載します。

Dockerのイメージをダウンロードする。

ターミナルを開き、以下のコマンドを入力します。

docker pull redpeacock78/waifu2x

作業用のディレクトリを作成し、移動します。

mkdir ~/waifu2x_work
cd ~/waifu2x_work

変換前の画像を作業用ディレクトリへコピーします。

ここでは 001.png,002.pngとします。

Dockerでコンテナの作成、実行をする。

ターミナルを開き、以下のコマンドを入力します。

1. ファイル1つのみ変換、変換後のファイル名を指定する場合

docker run --rm -it -v  $(pwd):/work redpeacock78/waifu2x -p 0 -m noise-scale --scale-ratio 2 --noise-level 2 -i 001.png -o 001_out.png

001_out.pngファイルが作成されます。

2. ファイル1つのみ変換、変換後のファイル名を指定しない場合

docker run --rm -it -v  $(pwd):/work redpeacock78/waifu2x -p 0 -m noise-scale --scale-ratio 2 --noise-level 2 -i 001.png 

001_[L2][x2.00].pngファイルが作成されます。

3. 複数ファイルを一括して変換する場合

シェルスクリプトを作成します。 このシェルスクリプトの前提として、同じフォルダにある全ての.pngファイルを対象としています。

以下のシェルスクリプトを作成し、~/waifu2x_workフォルダに格納します。

#!/bin/bash

for filename in $(ls *.png)
do
    docker run --rm -it -v $(pwd):/work redpeacock78/waifu2x -p 0 -m noise-scale --scale-ratio 2 --noise-level 2 -i $filename
done

waifu2x_folder.sh の権限を変更(実行可能)にします。

chmod +x waifu2x_folder.sh

シェルスクリプトを実行します。

./waifu2x_folder.sh

001[L2][x2.00].png、002[L2][x2.00].pngが作成されます。

※変換前のファイル名の長さに注意(ファイル名が長いと、変換に失敗します。)

ファイル名が長い場合、一括してファイル名を変更することもできます。 変更したいファイルを全て選択してから。右クリック−「名前の変更]をクリックします。

変更後のファイル名を入れて、右側の「+追加」をクリックし、連番の形式を選ぶことで、ファイルをまとめて連番を付けて変更ができます。