Объем рендеринга вопрос - PullRequest
4 голосов
/ 16 марта 2011

Я уже подготовил скелет и кожу.В настоящее время я изучаю OpenGL.Я хочу знать, как я могу извлечь изоповерхность скелета и кожи и сделать скелет видимым под полупрозрачной кожей.

Как я могу установить два порога для скелета и кожи и извлечь изоповерхность при сканировании вокселей сзади-вперед?Когда воксель, который пересекает порог, найден, я могу вычислить вектор нормали по конечной разности.

Наконец, я могу вычислить цвет с помощью диффузного отражения: N * (0, 0, 1), где N - нормальный вектор, * - скалярное произведение, а (0,0,1) - вектор.к камере.Смешайте цвет скелета и кожи, чтобы скелет появился за полупрозрачной кожей.Я знаю эту идею, но не знаю, как реализовать ее в C ++ и OpenGL.

Ответы [ 2 ]

1 голос
/ 16 марта 2011

"Библия" для объемной графики в реальном времени - эта книга .Он очень хорошо охватывает реализацию объемного рендеринга на GPU / шейдерах, хотя, возможно, в наши дни этот подход почти устарел, и вам лучше напрямую реализовать алгоритмы непосредственно в CUDA / OpenCL.этот учебник (IEEE Vis 2008) также может быть полезен для вас.

0 голосов
/ 19 сентября 2012

Существуют и другие хорошие учебники для объемного рендеринга, такие как fficient Эффективная объемная визуализация больших наборов медицинских данных。。 Многие люди также используют OpenGL 、 GLSL.

Кроме того, многие системы визуализации онлайн:

ImageVis3D

Voreen (с открытым исходным кодом)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...