問題タブ [volume-rendering]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - VTK - 直線グリッドからのボリューム レンダリング
視覚化のためにVTKを使用する C++ アプリケーションを開発しています。.vtr ファイル (RectilinearGrid) を読み取り、VTK ボリューム レンダリング機能を使用してレンダリングする必要があります。
私はParaviewでそれをやろうとしましたが、それは非常に簡単でした。「IsoVolume」フィルターを適用するだけで、結果はまさに私が必要としていたものです:
問題は...どうすればC ++でそれを行うことができますか? IsoVolume Filter は、ParaView の連中によって作成された VTKの拡張に属しているため、私のライブラリにはなく、リンク エラーなしでこれらのクラスをインポートする方法が見つかりませんでした。
もっと簡単な方法はありますか?直線的なグリッド データで動作する VTK 内の IsoVolume Filter に代わるものはありますか?
image - Matlab でのメッシュ頂点の回転
ボリューム MRI スキャンを使用して作成された Matlab の 3D マトリックスがあります。次に、matlab ツールボックスiso2mesh (vol2surf)
を使用してこのボリュームをサーフェス メッシュに変換し、このメッシュのノード/頂点座標と面を抽出します。
しかし、このメッシュの座標系が間違っていることがわかりました。imrotate
を使用してマトリックスを回転させ、ノードマトリックスを回転させようとしましたrot90
が、x軸とy軸の両方を中心に回転する必要があるのに、y軸を中心にのみ画像を回転させます。
これに使用できる機能について誰かアドバイスがありますか?
ありがとう!
3d - Unity 3D テクスチャ - 2D テクスチャ配列のロード
3D テクスチャの作成と画像での塗りつぶしに問題があります。私がやりたいことは、画像の RGBA 値を使用して Volumetric/3D テクスチャを作成し、それをテクスチャに配置することです。これを行うために、キューブを作成し、次のシェーダーとスクリプトを適用します。
脚本
シェーダー
何かをロードしているようですが、立方体を透明にする方法がわかりませんし、テクスチャが正しく見えません。このようなものを示しています。何か案は?前もって感謝します。 結果
c# - レイキャスティングを使用したボリューム レンダリング - ボリュームを流れる
ボリューム レンダリング アプリケーション (C# + OpenTK) に取り組んでいます。ボリュームはレイキャスティングを使用してレンダリングされています。このサイトで多くのインスピレーションを見つけました: http://graphicsrunner.blogspot.sk/2009/01/volume-rendering-101.html。私のアプリケーションは OpenGL で動作しますが、 3D テクスチャやその他のものを使用する主なアイデアは同じです。アプリケーションは正常に動作しますが、「ボリュームに流れ込む」(バウンディング ボックス内を意味する) 後、すべてが消えてしまうので、これを防ぎたいと思います。それで、これを行う簡単な方法はありますか?--> ボリューム内を流れたり移動したりできるようになります。
フラグメントシェーダーのコードは次のとおりです。
以下のコードはhttps://github.com/toolchainX/Volume_Rendering_Using_GLSLに基づいてい ます
Display() 関数:
問題は (私が思うに) ボリュームに向かって移動しているとき (カメラを動かさず、ボリュームをスケーリングするだけです)、スケール係数が 2.7 を超える場合、ボリューム内にいるということです。最終的な画像がレンダリングされる平面」なので、何も見えません。私が考えることができる解決策 (おそらく) は、次のようなものです: スケール係数 = 2.7 に達した場合:
1.) -> ボリュームをスケーリングしない
2.) -> 何らかの方法でフラグメント シェーダーに EntryPoint を RayDirection の方向に移動するように (おそらくスケール ファクターに基づいて) 指示します。
今、私はこの「方法」を試しましたが、うまくいくようです:
some_value は [0,1[ 間隔 (または [0,1]?) の間にクランプする必要がありますが、そのおかげで問題ないかもしれません:
だから今、おそらく(私の解決策がそれほど悪くない場合)、これに対する私の答えを変更できます:some_valueを計算する方法(フラグメントシェーダーに送信するスケールファクターに基づく)?
(私は英語のネイティブスピーカーではないので、テキストに大きな間違いがあり、何か理解できない場合は、お知らせください。これらのバグを修正します)
ありがとう。
directx-11 - Directx11 ボリューメトリック レンダリングの配置
そこで、レイキャスティングを使用したボリュメトリック レンダリングを調べていて、ここでチュートリアル ブログを見つけましたhttp://graphicsrunner.blogspot.co.uk/2009/01/volume-rendering-101.html
これで画像をレンダリングできるようになりましたが、問題は、ボリューム ボックスを位置 0,0,0 でスケール 1,1,1 でしかレンダリングできないことです。
画面上を移動するパーティクルにこの方法を使用したいので、明らかにこれは問題です
誰かがこれについて何か経験があり、何らかの方法で私を助けることができるでしょうか
ありがとう
c# - vtkOpenGLExtensionManager 拡張機能 GL_VERSION_1_2 をロードできませんでした
C# ボリューム レンダリング プログラムを起動すると、実行時にこのエラーが発生します。私だけではないことがわかりましたが、それでも解決策は見つかりませんでした。NVidia関連のエラーである可能性があることを読みました。しかし、最初は、このプログラムを C++ でコーディングしたところ、同じコンピューター (OS が異なるだけでした) ですべてがうまく機能しました。
これについて誰かが私を助けるために必要な詳細がわからないので、必要に応じて精度を求めてください.
一部の人々にとっては、このエラーによってプログラムの動作が妨げられないことがわかりました。私の場合、レンダリングがすべて間違っているので、本当に修正する必要があります。
Kitware VTK Activiz.NET x86 を使用しています。GC: NVIDIA GeForce GTX 860M
opengl - GLSL を使用したボリューム レンダリングでの TransferFunc の機能は何ですか?
GLSL を使用したボリューム レンダリングに問題があります。ソース コードは、次のリンクhttps://github.com/toolchainX/Volume_Rendering_Using_GLSLにあります。という名前のフラグメントシェーダーではraycasting.frag
、sampler1DTransferFunc
が表示されますが、実際の機能 (使い方や意味) はわかりませんTransferFunc
。以下、raycasting.frag の詳細です。
具体的なコードは次のとおりです。
問題の解決にご協力いただければ幸いです。ありがとうございました!