oidn - ノイズ削除ライブラリを試す

ノイズを削除するライブラリを使用してみたので、さらっと紹介します。

Intel® Open Image Denoise

ビルドします。

git clone --recursive https://github.com/OpenImageDenoise/oidn.git
mkdir oidn/build
cd oidn/build
cmake -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang ..
ccmake .. # cを押してgで完了
make

ビルドが完了したらサンプルを実行します。 レイトレーシングによって生成した画像を使用してみます。

f:id:taku-woohar:20190902211610j:plain
ノイズまみれの画像

この画像をpfm形式(リトルエンディアン)に変換します。 変換にはImageMagickを使用します。

convert image.png -endian lsb PFM:image.pfm

この画像に対して処理をかけてみます。

./denoise -ldr image.pfm  -o output.pfm

f:id:taku-woohar:20190902211840j:plain
デノイズ後

目に見えるノイズは消えています。ただし解像度は落ちています。 色再現性もだいぶ良い感じです。

レイトレーシングとの相性がだいぶ良さそうなので、後処理に使えそうです。