一時期は(ごく一部の)世間で話題になったwaifu2x、名前以上に便利ですがUbuntu14.04とかの古い情報しかない上に、久々に記事が上がってたため試してみました。
とりあえず、参考にした記事

必要なパッケージ入れてそのまま… cmake 通らない。
1個づつ試してたが、途中からめんどくさくなり環境を一VirtualBoxで作り一旦Ubuntu19.04での確認完了。
とりあえず、まずはここまでを記録にと書き出す←イマココ
面倒なのでまずは結論から
足りなかったのは?
「OpenCV」。コンパイルを通してインストールしました。
あと、「ocl-icd-opencl-dev」。
動くまで
環境
うちの持ち運び用開発環境のDeskMini A300。使っててもうけど DeskMiniのintel版のほうが今の使い方は色々あってると思う。たまにSteam入れてゲームしてます。
関係ありそうなのだけ羅列
本体 | Deskmini A300 |
CPU | Ryzen5 2400G |
OS | ubuntu-mate-19.04-desktop-amd64 |
OpenCV | 3.4.7 |
waifu2x | waifu2x-converter-cpp のgitで落ちてくる最新 |
OSインストールから
とりあえず普通のUbuntuだとうまくいくのか? と試したけどおんなじ結果なのでだめプログラマのわたしはWindows側の母艦から操作したいので軽めのmate入れてます。他意はありません。
GUIからの通常インストール。他は特に設定無しでインストール後下記3つと更新を行うなど。
sudo apt-get update
sudo apt-get install ssh xrdp samba
sudo apt-get upgrade
samba入れてるのはサーバ名でWindowsでアクセスさせたいから。リブートさせたらこっからはほぼ母艦からのSSH操作。xrdpは入れてるけど基本使ってないです。
sudo apt-get install gcc git cmake build-essential
必要そうなのをインストール。
OpenCVをビルド&インストール
最初適当に入れてるの探してて、OpenCV3.3.0でやろうとしたらffmpeg系でエラー。いろいろ試してたときはうまく言ったからアレ? って状態で、遠回りしたけど最新版入れるなら下記でOK!
sudo apt-get install libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev unzip
wget https://github.com/opencv/opencv/archive/3.4.7.zip
unzip 3.4.7.zip
mkdir opencv-3.4.7/build
cd opencv-3.4.7/build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local ..
make -j8
sudo make install
結構時間かかります。 VirtualBoxでやったのでmake -j4のほうが良かったかも?
waifu2xのビルド&インストール
ここまでくれば、あとはほぼ記事通り。「ocl-icd-opencl-dev」ついかすれば問題なくいきました。
sudo apt-get install opencl-headers libopencv-dev
sudo apt-get install ocl-icd-opencl-dev
git clone "https://github.com/DeadSix27/waifu2x-converter-cpp"
cd waifu2x-converter-cpp
mkdir out && cd out
cmake ..
make -j8
sudo make install
sudo ldconfig
「ocl-icd-opencl-dev」指定以外のGPUごとの設定は記事にもありましたが、大本にもあります。
で、次は?
古いUbuntuとDebianで同様にやる確認と気力があればDockerで動かせるようにするかも?
ちなみにコレ書いてて気づいたのですが、RyzenGで OpenCLって駄目だったから「mesa-opencl-icd」と「opencl-headers」入れても駄目で、「ocl-icd-opencl-dev」が必要になった可能性?
あと、ファンをIS-40Xにしたけど、ビルド中は結構な音がしてました。
※やはりNoctuaのに買えるべきなのか…
ついでにUbuntu19.04 MATEの「Brisk Menu」がちょくちょく再起動するのは何だろ。