「ボリュームレンダリング」を編集中

ナビゲーションに移動 検索に移動

警告: ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。ログインまたはアカウントを作成すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。

この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。

最新版 編集中の文章
1行目: 1行目:
'''ボリュームレンダリング'''([[英語]]:volume rendering)とは、3次元の[[ピクセル]]の集まり([[ボクセル]]という)から強引に3次元映像を作り出す力技のことである。
+
'''ボリュームレンダリング'''(英語:volume rendering)とは、3次元の[[ピクセル]]の集まり([[ボクセル]]という)から強引に3次元映像を作り出す力技のことである。
  
==概要==
+
== 概要 ==
 
ボリュームレンダリングは主に[[放射線]]の吸収量を[[コンピューターグラフィックス]]として表現する[[医用画像]]や[[非破壊検査]]などの領域で使用されている手法である。ボリュームレンダリングでは[[モデル]]の表面だけの[[ポリゴン]]と異なり、[[モデル]]の中身まで描き出すことができる。大雑把に言えば[[マインクラフト]]で「何か」を作り上げたような感じである。
 
ボリュームレンダリングは主に[[放射線]]の吸収量を[[コンピューターグラフィックス]]として表現する[[医用画像]]や[[非破壊検査]]などの領域で使用されている手法である。ボリュームレンダリングでは[[モデル]]の表面だけの[[ポリゴン]]と異なり、[[モデル]]の中身まで描き出すことができる。大雑把に言えば[[マインクラフト]]で「何か」を作り上げたような感じである。
  
 
[[コンピューター]]および[[グラフィックボード]]の高性能化により、[[ゲーム]]などの[[ポリゴン]]主体の[[3D]]においても、雲の表現などの古くから[[ビルボード]]という手抜き手法が使われていた部分を高画質化する手法として採用され始めている。
 
[[コンピューター]]および[[グラフィックボード]]の高性能化により、[[ゲーム]]などの[[ポリゴン]]主体の[[3D]]においても、雲の表現などの古くから[[ビルボード]]という手抜き手法が使われていた部分を高画質化する手法として採用され始めている。
  
==アルゴリズム==
+
ボリュームレンダリングにおいて最終的に出力する1つの[[ピクセル]]の値を求めるためのベースとなる[[データ]]([[配列]])を得ることを[[レイキャスティング]]という。ボリュームレンダリングでは[[レイキャスティング]]で得られた[[データ]]([[配列]])を[[最大値]]や[[最小値]]、[[平均値]]、[[中央値]]、単純に[[加算]]などの様々な方法により加工することで最終的な映像(1つの[[ピクセル]])を取得する。ただし、レイキャスティングで得た値を即座に[[ピクセル]]に変換する手法が一般的であるため、ボリュームレンダリングとレイキャスティングを同一として語られることも多い。
ボリュームレンダリングといっても様々な手法があるが、現在ではほぼ[[レイキャスティング]]を用いたもの一色となっており、「ボリュームレンダリング≒ボリュームレイキャスティング」という状況である。
 
  
* [[バイナリ空間分割]]
+
ボリュームレンダリングではピクセル単位でレイキャスティングを行い、その他の要素から影響を受けにくいため、[[GPU]]に搭載される[[ピクセルシェーダー]][[宗教上の理由]]により[[OpenGL]]の世界では[[フラグメントシェーダー]]と呼ばれる)と非常に相性がよく、近年の壮大な[[GPU]]ではそこそこ高速に処理できるようになりつつある。
* [[マーチングキューブ法]]
 
* [[ボリュームレイキャスティング]]
 
  
==関連項目==
+
ただしボリュームレンダリングでは3次元の点の集まりである[[ボクセル]]を扱う関係上、非常に多くの[[メモリ]]を必要とする。
 +
: メモリ消費量
 +
:* 512 * 512 * 512 * 2バイト = 256MB
 +
:* 1024 * 1024 * 1024 * 2バイト = 2GB
 +
上記は単純に[[ボクセル]]を保持するために必要な最低限のメモリ容量であり、実際にはここから計算した値を確保しておくための[[メモリ]]なども必要になる。このような巨大な[[データ]]は[[メインメモリ]]から[[VRAM]]への転送なども大きな負担となる。[[ゲーム]]などに最適化された[[グラフィックボード]]は[[VRAM]]上に一度[[データ]]を転送したらシーンが変わるまで使い回す前提となっていることが多いため、[[メインメモリ]]と[[VRAM]]の間で大量の転送を行うような用途では[[シェーダー]]が遊んでしまうのである。このためボリュームレンダリングでは[[シェーダー]]の性能よりも[[メモリ]]の容量や速度が[[ボトルネック]]となることが多く、安物の[[オンボードGPU]]では厳しかったりする。なお、[[オンボードGPU]]でも[[PlayStation 4]]のように[[GDDR5]]と[[hUMA]]のような技術を組み合わせればボリュームレンダリングも大きく前進する可能性がある。
 +
 
 +
== 関連項目 ==
 
* [[ポリゴン]]
 
* [[ポリゴン]]
 
* [[医用画像]]
 
* [[医用画像]]
 
* [[非破壊検査]]
 
* [[非破壊検査]]
  
[[カテゴリ:画像処理]]
+
== 参考文献 ==
[[category: 3DCG]]
+
{{reflist}}
 +
 
 +
{{stub}}

MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細はMonoBook:著作権を参照)。 著作権保護されている作品は、許諾なしに投稿しないでください!

このページを編集するには、下記の確認用の質問に回答してください (詳細):

取り消し 編集の仕方 (新しいウィンドウで開きます)