※編集中です。
Deep Imageとは
1ピクセル毎に複数の値を持つことが出来る画像フォーマット。1ピクセルに1つの値しか含むことの出来ない通常の画像形式とは違い、同じピクセル内で複数の透明度を持った者(煙や毛など)同士の合成が正確に行える。
主なDeep Imageファイルフォーマット
DTEX (Renderman's Deep Shadow)
RAT (Houdini's Deep Shadow or Camera Map)
OpenEXR(現時点では非対応)
NukeのDeepReadノードで読み込めるファイルはDTEXのみ。
Nuke6.3内でのDeep Imageの作成方法
各ノードの説明
DeepRead - Deep Image(DTEXファイル)を読み込み
DeepFromFrames - フッテージ(連番素材)をDeep Imageに変換
DeepFromImages - 2DイメージをDeep Imageに変換
DeepMerge - Deep Image同士を合成
DeepToPoints - 3Dシーン内にDeep Imageによるポイントクラウドを作成
DeepToImage - Deep Imageを2Dに変換
DeepTransform - Deep Imageの位置を変更
2Dイメージから作成
DeepFromImagesノード
①2DイメージをDeepFromImagesノードに接続
・premult input - プリマルチプライの使用
・specify z - depthチャンネルを使用しない場合チェックを入れる
・z - specify zがオンの場合、zデプスの量を調節
※2DイメージのdepthチャンネルからDeep Imageが生成される
動画フッテージから作成
①2DイメージをDeepFromImagesノードに接続
・premult input - プリマルチプライの使用
・specify z - depthチャンネルを使用しない場合チェックを入れる
・z - specify zがオンの場合、zデプスの量を調節
※2DイメージのdepthチャンネルからDeep Imageが生成される
動画フッテージから作成
DeepFromFramesノード
①フッテージを読み込みDeepFromFramesノードに接続
・samples - ピクセル毎のサンプル数
・frame range - deep imageに使用するフレームレンジ。
※例えばsamplesが5でframe rangeが1-9の場合、
1,3,5,7,9の計5フレームがサンプルとして格納される。
・premult - プリマルチプライの使用
・split alpha mode - アルファのモード選択
・zmin - 一番手前に来るサンプルのデプス値
①フッテージを読み込みDeepFromFramesノードに接続
・samples - ピクセル毎のサンプル数
・frame range - deep imageに使用するフレームレンジ。
※例えばsamplesが5でframe rangeが1-9の場合、
1,3,5,7,9の計5フレームがサンプルとして格納される。
・premult - プリマルチプライの使用
・split alpha mode - アルファのモード選択
・zmin - 一番手前に来るサンプルのデプス値
・zmax - 一番奥に来るサンプルのデプスの値
3Dオブジェクトから作成
3Dオブジェクトから作成
この場合もDeepFromImagesノードを使用する。
①Nuke内に3Dシーンを作り、ScanlineRenderノードを使いレンダリングする。(Z-bufferがオンの場合、デプス値が自動的に格納される)
②そのアウトプットをDeepFromImagesノードに接続する。
DeepToPointsノードを使用する事によって3D空間内でDeep Imageの各ピクセルのサンプルを可視化することが出来る。(fig.1)
ディープイメージのコンポジット方法
2つのDeep ImageをDeepMergeノードへ接続する。
DeepTransformノード等を使用しZ座標の位置を調節。
サンプル1.
DeepFromImagesノードを使用しDeep Imageを2つ作成し、それをDeepMergeノードでコンポジットする。
サンプル2.
②そのアウトプットをDeepFromImagesノードに接続する。
DeepToPointsノードを使用する事によって3D空間内でDeep Imageの各ピクセルのサンプルを可視化することが出来る。(fig.1)
![]() |
(fig.1)DeepToPoint node produces point cloud in 3D space. |
ディープイメージのコンポジット方法
2つのDeep ImageをDeepMergeノードへ接続する。
DeepTransformノード等を使用しZ座標の位置を調節。
サンプル1.
1ピクセル毎に1つのデプス値を持ったDeep Imageを使用しコンポジットする
DeepFromImagesノードを使用しDeep Imageを2つ作成し、それをDeepMergeノードでコンポジットする。
サンプル2.
1ピクセル毎に複数のデプス値(又は透明度)を持ったDeep Imageを使用し、コンポジットする
このケースでは、1から10フレームまで値をアニメーションさせたNoiseノードをDeepFromFramesノードでDeep Imageに変換し、1ピクセルあたり10サンプルのデプス・透明度の値を持つ擬似的なボリュメトリックノイズを生成した。
球体は3Dプリミティブからピクセル毎単一のデプス値を持つDeep Imageを作成した。
現在分かっている範囲内のノードのパラメーターの仕様
このケースでは、1から10フレームまで値をアニメーションさせたNoiseノードをDeepFromFramesノードでDeep Imageに変換し、1ピクセルあたり10サンプルのデプス・透明度の値を持つ擬似的なボリュメトリックノイズを生成した。
球体は3Dプリミティブからピクセル毎単一のデプス値を持つDeep Imageを作成した。
現在分かっている範囲内のノードのパラメーターの仕様
DeepSample[ノード]
- pos サンプルポジション
- accumulate 各ピクセル値を合算した値を表示
-deep.front Z軸上の最前面
-deep.back Z軸上の最背面
deepimageは各サンプルごとにZ軸の奥行きがあり、frontが始点backが終点となっている。(backの位置 = 次のサンプルのfrontまでの位置)
DeepFromFrames[ノード]
- frame range サンプルを取得する範囲を設定。ドキュメントでは"samplesが(5) 、frame rangが(1- 9)の場合、1, 3, 5, 7, 9のフレームがサンプルされる"となっているが、最終フレームはsamplesの値+1を入れないとうまくサンプルされない。
- premult プリマルチプライを適用する
- split alpha mode アルファチャンネルの分割方法
- additive サンプル数によってストレート分割(straight division)を行う。deep sampleが後に結合される場合、元のアルファ値にはならない。
- multiplicative サンプルはそれぞれ1-pow(1-alpha,1/numSamples)になるように分割される。後にDeepToImageノードなどによって結合される場合、アルファ値はオリジナルと一致する。
Deep Graph
タイムラインの上にあるスラッシュ[/]をクリックすると出現する。
ビュー上でマウスカーソルを合わせた位置のdeep情報を表示。

不明なこと、要調査の事柄
・Nuke内でのDeepファイルのアルファの扱い(プリマルチプライなどの処理)
- pos サンプルポジション
- accumulate 各ピクセル値を合算した値を表示
-deep.front Z軸上の最前面
-deep.back Z軸上の最背面
deepimageは各サンプルごとにZ軸の奥行きがあり、frontが始点backが終点となっている。(backの位置 = 次のサンプルのfrontまでの位置)
DeepFromFrames[ノード]
- frame range サンプルを取得する範囲を設定。ドキュメントでは"samplesが(5) 、frame rangが(1- 9)の場合、1, 3, 5, 7, 9のフレームがサンプルされる"となっているが、最終フレームはsamplesの値+1を入れないとうまくサンプルされない。
- premult プリマルチプライを適用する
- split alpha mode アルファチャンネルの分割方法
- additive サンプル数によってストレート分割(straight division)を行う。deep sampleが後に結合される場合、元のアルファ値にはならない。
- multiplicative サンプルはそれぞれ1-pow(1-alpha,1/numSamples)になるように分割される。後にDeepToImageノードなどによって結合される場合、アルファ値はオリジナルと一致する。
Deep Graph
タイムラインの上にあるスラッシュ[/]をクリックすると出現する。
ビュー上でマウスカーソルを合わせた位置のdeep情報を表示。

不明なこと、要調査の事柄
・Nuke内でのDeepファイルのアルファの扱い(プリマルチプライなどの処理)
0 件のコメント:
コメントを投稿