2020年6月21日日曜日

複数画像のノイズを一括で除去する方法。NvidiaAIDenoiserの使い方

複数画像のノイズを一括で除去する方法を見つけてしまった。
これは素晴らしい。

NvidiaAIDenoiserは、NVidia のAI Denoiserをコマンドラインで使っちゃおうというものらしい。この性能がすばらしい。

まずは、ノイズ除去前後の画像をみてみるとこんな感じ。

ノイズ除去の前後比較


■ノイズ除去前の画像。かなりざらざらしている。

■ノイズ除去後。かなりツルっとした印象。


さらに拡大してみるとこんな感じ。ざらざら感がなくなっている。

■ノイズ除去前(4倍拡大)

■ノイズ除去後(4倍拡大)


横に並べるとこんな感じ。左が処理前、処理後。

別の例。かなり綺麗になっている。


動作確認環境

OS:Windows10 pro
メモリ:8GB
GPU:NVIDIA GeForce GTX960 4.0GB

NvidiaAIDenoiserの使い方

Denoiserの使い方を説明する。
以下のDECLAN RUSSELLさんのサイトで、「Denoiser windows v2.4」をクリックし、Zipファイルをダウンロードし、任意のフォルダでDenoiserを解凍する。


以下のように、Denoizerを解凍したフォルダ、ターゲットとなるパス、デノイズされたファイルを出力するパス、デノイズ後のファイルにつけるプレフィックスを指定するコマンドを用意。※ -o の後、改行しない。

SET FILE_EXTENSION=jpg
SET PATH_TO_DENOISER=E:\home\github\Denoiser_v2.4
SET PATH_TARGET=E:\home\denoise\jpg
SET PATH_DENOISED=E:\home\denoise\denoised
SET OUTPUT_PREFIX=denoised_

for %A in (*.jpg) do (
    %PATH_TO_DENOISER%\Denoiser.exe -i "%PATH_TARGET%\%A" -o "%PATH_DENOISED%\%OUTPUT_PREFIX%%A"
)

コマンドプロンプトで、上記のコマンドを実行。


すごいのは、1枚の1920×1080の画像のデノイズに1秒かかっていない。0.5秒くらいで終ってます。なので、レンダリング時のサンプル数は下げてササッとレンダリングして、Denoiserで仕上げみたいな使い方もありです。

Denoiserコマンドのヘルプはこちら。


注意点

当たり前ですけどNvidiaのGPUがないとダメだと思う。
フォルダに日本語名が含まれいるとエラーになりそう。
画像が大きいのが原因なのか、OptiXのバージョンの問題なのか画像によってはかならずエラーになるやつがある。GPUによってもOptiXへの対応しているかどうかとかも関連しそうなので、研究が必要ですね・・・・

Input image: E:\home\denoise\002\jpeg\20200406_00175.jpg
Loaded successfully
Output image: E:\home\denoise\002\denoize\denoised_20200406_00175.jpg
Denoising...
[OptiX]: Unknown error (Details: Function "_rtCommandListExecute" caught exception: Failed to launch DLDenoiser post-processing stage. DLDenoiser run method failed with error -28.)

まとめ

画像のノイズを一括除去する方法ということで、NvidiaAIDenoiserを紹介しました。
かなり短時間で、効果的なノイズ除去ができるので、JWildfireやBlenderでSampleを低く短時間でレンダリングし、NvidiaAIDenoiserで仕上げするというワークフローもありかもしれないですね。

参考

Github DeclanRussell/NvidiaAIDenoiser

NVIDIA AI DENOISER



2020年6月6日土曜日

Photoshop で花火を切り抜く方法

Photoshop で花火を切り抜く方法をメモしときます。
レイヤースタイルのレイヤー効果、ブレンド条件を使う方法です。
Photoshopの操作はしばらく使わないと忘れてしまうので・・・。
PhotoshopはCC2020で、使った画像はこちら。


1.切り抜く対象のドラッグアンドドロップして、Photoshopで開く。対象の画面が背景レイヤーに表示。


2.レイヤをダブルクリックすると新規レイヤーのダイアログが表示されるのでOK。


3.レイヤをダブルクリックするとレイヤースタイルが表示される。
画像を見ながらブレンド条件の黒のスライダーを右によせて選択範囲を狭める。



4.レイヤを右クリックして、スマートオブジェクトに変換する。

5.レイヤをラスタライズし、不要な窓のあかりなどは削除したら完成。


6.背景を黒にして配置するとなかなか綺麗です。


以上、PhotoshopCC2020でのレイヤースタイルを使った花火の切り抜き方法でした。
なんか、もっと効果的な方法がありそうですが、詳しい人、コメントで教えていただけると幸いでございます。


Photoshopでマスクを使い樹木を切り抜く方法

Photoshopで樹木を切り抜く方法の動画をみたのでメモ。
マスクを使った方法でとても便利。

参考にした動画はこちら。

1.樹木の画像を用意する。この画像から樹木を切り抜いていく。



2.チャンネルを選択し一番コントラストがはっきりとしているチャンネルを選ぶ。今回はブルー。
※この時点でコントラストがはっきりしていない場合、この方法では切り抜けない。

3.ブルーのレイヤを新規レイヤアイコンにドラッグアンドドロップしコピーする。これからの作業は、このブルーのコピーレイヤで実施する。

4.わなげツールをつかってざっくりと対象の樹木を囲う。




5.右クリックで「選択範囲の反転」を選択。



6.描写色が白であることを確認し、Ctrl+Dで選択範囲を削除する。


 7.Ctrl+Iでインバートさせる。

8.焼き込みツールを選択し、範囲のシャドウを選択。


9.葉の周りを覆い焼ツールでドラッグすると葉の部分だけが白くのこる。これは気持ちがいい。
動画もとってみた。
10.木の根元は 覆い焼ツールの光量を上げてぬりつぶす。ただ、このあたりはコントラストが不明瞭なので、別の方法で対応したほうがよさそう。



11.ブラシを使う。



描写色が黒であることを確認し塗りつぶす。


12.樹木の幹など白がまだらになっている部分は、 覆い焼ツールで範囲を選択し、白く塗りつぶす。


13.チャネルタブのRGBレイヤを表示してみると、マスクの境界が適切でない部分があるので、ブラシで塗りつぶす。描写色はxキーで入れ替えできるので便利。覚えておく。


14.塗りつぶしが完了したらブルーのコピーレイヤをCtrl+クリックするとマスクの範囲が選択される。


15.レイヤーに戻りマスクを追加 をクリックすると樹木が切り抜かれる。


16.べた塗のレイヤーを新規で作成する。色はグレー。レイヤーを背景に移動する。



17.マスクを選択し、イメージ→色調補正→レベル補正を選択。スライダーを右にもってくると葉の選択範囲が縮小されるので、プレビューを見ながら調整する。



18.フィルター→その他→明るさの最小値を選択。半径を調整することでマスクの範囲を調整できる。

最終的にできた画像はこちら。

まとめ

チャンネルの濃淡がはっきりしたレイヤーをコピーし、焼き込みツール、覆い焼ツール、ブラシを使いマスクを作成し切り抜く方法を覚えた。
これは使えますね。ありがたい。