Gimp-Pythonで法線推定/法線マッピング(環境マッピング)

Blenderなどの3DCGソフトには、法線マッピングとか環境マッピングという機能があります。これをGimpでマネしたプラグインを(Pythonで)作ってみました
ついでに、静止画の画素の明るさから法線(面の向き)を推定するプラグインも作ってみました

実行例

プラグイン ダウンロード

http://boxheadroom.com/upload/norm_map20151028.zip

中身(norm_map.py normvec.py)をGimpプラグインフォルダ( GIMPPortable\App\gimp\lib\gimp\2.0\plug-ins など)内にコピーして使用します。
GimpPythonプラグインが動く環境なら機種に関係無く動く、、、んじゃないかと思います
Win32 Gimp Portable 2.8 にて動作確認

NumPyが必要です 今回は OpenCVは使ってません

gimp用の画像ファイル サンプル
http://boxheadroom.com/upload/norm_map_sample.7z

使いかた

できあがり時のGimpのレイヤー

法線推定

lenaさんのレイヤーをコピーして適用します。(上書きされます
右クリックからフィルター → マップ → normvec
ダイアログが表示されたら パラメータは amount(強度)を 2 radious(向きをぼかす半径)を 6にします

法線マッピング


描画用に新規レイヤーを作成してください。(上書きされます
右クリックからフィルター → マップ → norm_map
ダイアログで 
normal layer に法線画像のレイヤー
texture layer に 物体表面に貼り付ける画像のレイヤー
amount には 0.2を指定します (弱め)
を指定します

うまくいけば、記事の最初の 金ぴか lenaさんが完成です