

En visualización científica y gráficos por computadora , la renderización de volumen es un conjunto de técnicas utilizadas para mostrar una proyección 2D de un conjunto de datos 3D muestreados discretamente , típicamente un campo escalar 3D . [ 1 ]
Un conjunto de datos 3D típico es un grupo de imágenes de cortes 2D adquiridas mediante un escáner CT , MRI o MicroCT . [ 2 ] Por lo general, estas se adquieren siguiendo un patrón regular (por ejemplo, un corte por cada milímetro de profundidad) y suelen tener un número regular de píxeles de imagen en un patrón regular. Este es un ejemplo de una cuadrícula volumétrica regular, donde cada elemento de volumen, o vóxel, está representado por un único valor que se obtiene muestreando el área inmediata que rodea al vóxel.
Para generar una proyección 2D del conjunto de datos 3D, primero es necesario definir una cámara en el espacio con respecto al volumen. Además, se debe definir la opacidad y el color de cada vóxel. Esto generalmente se define mediante una función de transferencia RGBA (rojo, verde, azul, alfa) que define el valor RGBA para cada valor posible de vóxel.
Por ejemplo, un volumen puede visualizarse extrayendo isosuperficies (superficies de valores iguales) y representándolas como mallas poligonales , o bien representando el volumen directamente como un bloque de datos. El algoritmo de cubos marchantes es una técnica común para extraer una isosuperficie de datos volumétricos. La representación directa de volúmenes es una tarea computacionalmente intensiva que puede realizarse de diversas maneras.
Otro método de renderizado de volumen es el trazado de rayos , una categoría de técnicas de renderizado de gráficos por computadora en 3D en la que los rayos se trazan paso a paso, subdividiendo cada rayo en segmentos más pequeños y muestreando una función en cada intervalo.
Alcance

La renderización volumétrica se distingue de las presentaciones de tomografía de cortes finos y, en general, también de las proyecciones de modelos 3D, incluida la proyección de máxima intensidad . [ 3 ] Sin embargo, técnicamente, todas las renderizaciones volumétricas se convierten en proyecciones cuando se visualizan en una pantalla bidimensional , lo que hace que la distinción entre proyecciones y renderizaciones volumétricas sea algo ambigua. No obstante, los ejemplos más representativos de modelos de renderización volumétrica presentan una combinación de, por ejemplo, coloración [ 4 ] y sombreado [ 5 ] para crear representaciones realistas y/o observables.
Renderizado directo de volumen
Un renderizador de volumen directo [ 6 ] [ 7 ] [ 8 ] requiere que cada valor de muestra se asigne a la opacidad y a un color. Esto se realiza mediante una " función de transferencia ", que puede ser una rampa simple, una función lineal por partes o una tabla arbitraria. Una vez convertido a un valor del modelo de color RGBA (para rojo, verde, azul y alfa), el resultado RGBA resultante se proyecta sobre el píxel correspondiente del búfer de fotogramas. La forma de realizar esto depende de la técnica de renderizado.
Es posible combinar estas técnicas. Por ejemplo, una implementación de deformación por cizallamiento podría usar hardware de texturizado para dibujar las secciones alineadas en el búfer fuera de pantalla .
Lanzamiento de rayos volumétricos

La técnica de trazado de rayos volumétricos se puede derivar directamente de la ecuación de renderizado . [ 9 ] Proporciona resultados de muy alta calidad, generalmente considerados como los que ofrecen la mejor calidad de imagen. El trazado de rayos volumétricos se clasifica como una técnica de renderizado volumétrico basada en imágenes, ya que el cálculo emana de la imagen de salida, no de los datos volumétricos de entrada como ocurre con las técnicas basadas en objetos. En esta técnica, se genera un rayo para cada píxel de imagen deseado. Utilizando un modelo de cámara simple, el rayo comienza en el centro de proyección de la cámara (generalmente el punto de vista) y pasa a través del píxel de la imagen en el plano de imagen imaginario que flota entre la cámara y el volumen a renderizar. El rayo se recorta por los límites del volumen para ahorrar tiempo. Luego, el rayo se muestrea a intervalos regulares o adaptativos a lo largo del volumen. Los datos se interpolan en cada punto de muestreo, se aplica la función de transferencia para formar una muestra RGBA, la muestra se compone sobre el RGBA acumulado del rayo y el proceso se repite hasta que el rayo sale del volumen. El color RGBA se convierte a color RGB y se deposita en el píxel correspondiente de la imagen. El proceso se repite para cada píxel de la pantalla hasta formar la imagen completa.
Salpicaduras
Esta es una técnica que sacrifica calidad por velocidad. Aquí, cada elemento de volumen se proyecta , como dijo Lee Westover, como una bola de nieve sobre la superficie de visualización en orden de atrás hacia adelante. Estas proyecciones se representan como discos cuyas propiedades (color y transparencia) varían diametralmente de manera normal ( gaussiana ). También se utilizan discos planos y otros con diferentes tipos de distribución de propiedades, según la aplicación. [ 10 ] [ 11 ]
urdimbre de corte

El método de deformación por cizallamiento para la renderización de volumen fue desarrollado por Cameron y Undrill, y popularizado por Philippe Lacroute y Marc Levoy . [ 12 ] En esta técnica, la transformación de visualización se modifica de manera que la cara más cercana del volumen se alinee con un búfer de datos de imagen fuera de pantalla con una escala fija de vóxeles a píxeles. El volumen se renderiza en este búfer utilizando la alineación de memoria, mucho más favorable, y factores de escala y fusión fijos. Una vez renderizadas todas las secciones del volumen, el búfer se deforma a la orientación deseada y se escala en la imagen mostrada.
Esta técnica es relativamente rápida en software, pero a costa de un muestreo menos preciso y una calidad de imagen potencialmente peor en comparación con el trazado de rayos. Existe un consumo adicional de memoria al almacenar múltiples copias del volumen, para poder tener volúmenes casi alineados con los ejes. Este consumo adicional se puede mitigar mediante la codificación de longitud de ejecución .
Renderizado volumétrico basado en texturas

Muchos sistemas de gráficos 3D utilizan el mapeo de texturas para aplicar imágenes o texturas a objetos geométricos. Las tarjetas gráficas de PC convencionales son rápidas en el texturizado y pueden renderizar eficientemente secciones de un volumen 3D, con capacidades de interacción en tiempo real. Las GPU de estaciones de trabajo son aún más rápidas y constituyen la base de gran parte de la visualización de volumen de producción utilizada en imágenes médicas , petróleo y gas, y otros mercados (2007). En años anteriores, se utilizaban sistemas dedicados de mapeo de texturas 3D en sistemas gráficos como Silicon Graphics InfiniteReality , el acelerador gráfico HP Visualize FX y otros. Esta técnica fue descrita por primera vez por Bill Hibbard y Dave Santek. [ 13 ]
Estas secciones pueden alinearse con el volumen y renderizarse en ángulo con respecto al observador, o bien alinearse con el plano de visualización y muestrearse a partir de secciones no alineadas a través del volumen. Para la segunda técnica, se requiere compatibilidad del hardware gráfico con texturas 3D.
La texturización alineada por volumen produce imágenes de calidad razonable. La calidad de la imagen se degrada con un número reducido de cortes, aunque suele haber una transición perceptible cuando se rota el volumen. [ 14 ]
Renderizado de volumen acelerado por hardware
Debido a la naturaleza extremadamente paralela de la renderización directa de volumen, el hardware de renderización de volumen de propósito especial fue un tema de investigación importante antes de que la renderización de volumen por GPU alcanzara la velocidad suficiente. La tecnología más citada fue el sistema de trazado de rayos en tiempo real VolumePro, desarrollado por Hanspeter Pfister y científicos de los Laboratorios de Investigación de Mitsubishi Electric , [ 15 ] que utilizaba un alto ancho de banda de memoria y fuerza bruta para renderizar mediante el algoritmo de trazado de rayos. La tecnología se transfirió a TeraRecon, Inc. y se produjeron y comercializaron dos generaciones de ASIC. El VP1000 [ 16 ] se lanzó en 2002 y el VP2000 en 2007. [ 17 ]
Los sombreadores de píxeles pueden leer y escribir aleatoriamente en la memoria de vídeo y realizar cálculos matemáticos y lógicos básicos. Estos procesadores SIMD se utilizaban para realizar cálculos generales como la renderización de polígonos y el procesamiento de señales. En las últimas generaciones de GPU , los sombreadores de píxeles ahora pueden funcionar como procesadores MIMD (ahora capaces de ramificarse de forma independiente) utilizando hasta 1 GB de memoria de textura con formatos de punto flotante. Con tal potencia, prácticamente cualquier algoritmo con pasos que se puedan ejecutar en paralelo, como el trazado de rayos volumétrico o la reconstrucción tomográfica , se puede ejecutar con una aceleración tremenda. Los sombreadores de píxeles programables se pueden utilizar para simular variaciones en las características de iluminación, sombra, reflexión , color emisivo, etc. Dichas simulaciones se pueden escribir utilizando lenguajes de sombreado de alto nivel .
Técnicas de optimización
El objetivo principal de la optimización es omitir la mayor cantidad de datos posible. Un conjunto de datos médicos típico puede tener un tamaño de 1 GB. Para renderizarlo a 30 fotogramas por segundo se requiere un bus de memoria extremadamente rápido. Omitir vóxeles significa que se necesita procesar menos información.
salto de espacio vacío
A menudo, un sistema de renderizado volumétrico incluye un sistema para identificar las regiones del volumen que no contienen material visible. Esta información puede utilizarse para evitar renderizar estas regiones transparentes. [ 18 ]
Terminación temprana del rayo
Esta técnica se utiliza cuando el volumen se renderiza de adelante hacia atrás. Para un rayo que atraviesa un píxel, una vez que se ha encontrado suficiente material denso, las muestras adicionales no contribuirán significativamente al píxel y, por lo tanto, pueden ignorarse.
Subdivisión espacial Octree y BSP
El uso de estructuras jerárquicas como el octree y el árbol BSP podría ser muy útil tanto para la compresión de datos volumétricos como para la optimización de la velocidad del proceso de trazado de rayos volumétricos.
Segmentación de volumen



La segmentación de imágenes es un procedimiento manual o automático que permite seccionar grandes porciones del volumen que se consideran irrelevantes antes de la renderización, reduciendo significativamente la cantidad de cálculos necesarios para el trazado de rayos o la mezcla de texturas. Esta reducción puede llegar a ser de O(n) a O(log n) para n vóxeles indexados secuencialmente. La segmentación de volumen también ofrece importantes ventajas de rendimiento para otros algoritmos de trazado de rayos . Posteriormente, puede utilizarse para resaltar o exponer estructuras de interés. [ 19 ]
Representación de resolución múltiple y adaptativa
Al representar las regiones menos interesantes del volumen con una resolución menor, se reduce la sobrecarga de entrada de datos. Tras una observación más detallada, los datos de estas regiones se pueden cargar mediante lectura desde la memoria o el disco, o mediante interpolación . El volumen de menor resolución se remuestrea a un tamaño menor, del mismo modo que se crea una imagen mipmap 2D a partir de la original. Estos volúmenes más pequeños también se utilizan de forma independiente al rotar el volumen a una nueva orientación.
Renderizado de volumen preintegrado
La renderización volumétrica preintegrada [ 20 ] es un método que puede reducir los artefactos de muestreo mediante el preprocesamiento de gran parte de los datos necesarios. Es especialmente útil en aplicaciones aceleradas por hardware [ 21 ] [ 22 ] porque mejora la calidad sin un gran impacto en el rendimiento. A diferencia de la mayoría de las demás optimizaciones, esta no omite vóxeles. En cambio, reduce la cantidad de muestras necesarias para mostrar con precisión una región de vóxeles. La idea es renderizar los intervalos entre las muestras en lugar de las muestras mismas. Esta técnica captura materiales que cambian rápidamente, por ejemplo, la transición de músculo a hueso, con mucha menos computación.
Mallado basado en imágenes
El mallado basado en imágenes es el proceso automatizado de creación de modelos informáticos a partir de datos de imágenes 3D (como resonancia magnética , tomografía computarizada , tomografía computarizada industrial o microtomografía ) para análisis y diseño computacional, por ejemplo, CAD, CFD y FEA. [ 23 ]
Reutilización temporal de vóxeles
Para una visualización completa, basta con mostrar un vóxel por píxel (el frontal), aunque se pueden usar más para suavizar la imagen. Si se requiere animación, los vóxeles frontales que se mostrarán se pueden almacenar en caché y su posición relativa a la cámara se puede recalcular a medida que se mueve. Si los vóxeles de visualización se separan demasiado para cubrir todos los píxeles, se pueden encontrar nuevos vóxeles frontales mediante trazado de rayos o similar, y si dos vóxeles están en un mismo píxel, se puede conservar el frontal.
Lista de software relacionado
- Código abierto
- 3D Slicer : un paquete de software para visualización científica y análisis de imágenes.
- ClearVolume : una biblioteca de visualización 3D en tiempo real basada en el trazado de rayos mediante GPU, diseñada para microscopios volumétricos de lámina de luz de alta gama.
- ParaView es una aplicación multiplataforma para el análisis y la visualización de grandes volúmenes de datos. Los usuarios de ParaView pueden crear rápidamente visualizaciones para analizar sus datos mediante técnicas cualitativas y cuantitativas. ParaView está basado en VTK (ver más abajo).
- Studierfenster (StudierFenster) : un marco de trabajo en línea gratuito, no comercial y basado en cliente/servidor de ciencia abierta para el procesamiento de imágenes médicas (MIP).
- Vaa3D es una plataforma de renderizado volumétrico y análisis de imágenes 3D, 4D y 5D para imágenes de gran tamaño (basada en OpenGL), especialmente en el campo de la microscopía. Es multiplataforma, con versiones para Mac, Windows y Linux. Incluye una interfaz de plugins completa y 100 plugins para el análisis de imágenes. También permite renderizar diversos tipos de objetos de superficie.
- VisIt : una herramienta interactiva multiplataforma de visualización paralela y análisis gráfico para la visualización de datos científicos.
- Cartografía volumétrica : un software de código abierto utilizado para recuperar el Rollo En-Gedi .
- Voreen es un marco de desarrollo rápido de aplicaciones multiplataforma para la visualización y el análisis interactivos de conjuntos de datos volumétricos multimodales. Proporciona técnicas de renderizado de volumen y análisis de datos basadas en GPU.
- VTK es un conjunto de herramientas C++ de propósito general para el procesamiento de datos, visualización, interacción 3D y geometría computacional, con enlaces para Python y Java. Además, VTK.js proporciona una implementación en JavaScript.
- Comercial
- Amira : un software de visualización y análisis 3D para científicos e investigadores (en ciencias de la vida y biomedicina).
- Imaris : un módulo de software científico que ofrece todas las funcionalidades necesarias para la gestión, visualización, análisis, segmentación e interpretación de conjuntos de datos de microscopía 3D y 4D.
- MeVisLab : software multiplataforma para el procesamiento y la visualización de imágenes médicas (basado en OpenGL y Open Inventor).
- Open Inventor : una API 3D de alto nivel para el desarrollo de software de gráficos 3D (C++, .NET, Java).
- ScanIP es una plataforma de procesamiento de imágenes y de generación de mallas basada en imágenes que puede representar datos de escaneo (resonancia magnética, tomografía computarizada, micro-TC...) en 3D directamente después de su importación.

Véase también
- Renderizado cinematográfico , una técnica de visualización alternativa.
- Isosuperficie , una superficie que representa puntos de un valor constante (por ejemplo, presión, temperatura, velocidad, densidad) dentro de un volumen de espacio.
- Visualización de flujo , una técnica para la visualización de campos vectoriales.
- Malla volumétrica , una representación poligonal del volumen interior de un objeto.
Referencias
- ↑ Xu, Chaoqing; Sun, Guodao; Liang, Ronghua (septiembre de 2021). "Un estudio de técnicas de visualización de volumen para la mejora de características" . Visual Informatics . 5 (3): 70–81 . doi : 10.1016/j.visinf.2021.08.001 .
- ↑ Schut, Dirk Elias; Wood, Rachael Maree; Trull, Anna Katharina; Schouten, Rob; van Liere, Robert; van Leeuwen, Tristan; Batenburg, Kees Joost (mayo de 2024). "Flujo de trabajo de registro conjunto de imágenes 2D a 3D para comparar fotografías de múltiples cortes y tomografías computarizadas de manzanas con trastornos internos" . Postharvest Biology and Technology . 211 112814. doi : 10.1016/j.postharvbio.2024.112814 .
- ↑ Fishman, Elliot K. ; Ney, Derek R.; Heath, David G.; Corl, Frank M.; Horton, Karen M.; Johnson, Pamela T. (2006). "Volume Rendering versus Maximum Intensity Projection in CT Angiography: What Works Best, When, and Why" . RadioGraphics . 26 (3): 905– 922. doi : 10.1148/rg.263055186 . PMID 16702462 .
- ↑ Silverstein, Jonathan C.; Parsad, Nigel M.; Tsirline, Victor (2008). "Generación automática de mapas de color perceptuales para visualización de volumen realista" . Journal of Biomedical Informatics . 41 (6): 927– 935. doi : 10.1016/j.jbi.2008.02.008 . ISSN 1532-0464 . PMC 2651027. PMID 18430609 .
- ↑ Página 185 en Leif Kobbelt (2006). Vision, Modeling, and Visualization 2006: Proceedings, November 22-24 . IOS Press. ISBN 978-3-89838-081-2.
- ↑ Levoy, M. (mayo de 1988). "Visualización de superficies a partir de datos volumétricos". IEEE Computer Graphics and Applications . 8 (3): 29– 37. Bibcode : 1988ICGA....8c..29L . doi : 10.1109/38.511 .
- ↑ Drebin, Robert A.; Carpenter, Loren; Hanrahan, Pat (agosto de 1988). "Renderizado de volumen". ACM SIGGRAPH Computer Graphics . 22 (4): 65– 74. doi : 10.1145/378456.378484 .
- ↑ Drebin, Robert A.; Carpenter, Loren; Hanrahan, Pat (1988). «Renderizado volumétrico». Actas de la 15.ª conferencia anual sobre gráficos por computadora y técnicas interactivas . págs. 65–74 . doi : 10.1145/54852.378484 . ISBN 978-0-89791-275-4.
- ↑ Yuan, Youwei; Ye, Wenlong (2009). "Trazado de rayos interactivo para visualización de volumen y renderizado 3D mediante redes neuronales". Congreso Mundial WRI de Sistemas Inteligentes de 2009. págs. 278–281 . doi : 10.1109/gcis.2009.348 . ISBN 978-0-7695-3571-5.
- ↑ Westover, Lee Alan (1991). Splatting: Un algoritmo de renderizado de volumen paralelo y de alimentación directa (PDF) (Tesis).
- ↑ Huang, Jian (Primavera de 2002). "Salpicadura" (PPT) . Recuperado el 5 de agosto de 2011 .
- ↑ Lacroute, Philippe; Levoy, Marc (1994). «Renderizado rápido de volumen mediante una factorización de deformación por cizallamiento de la transformación de visualización». Actas de la 21.ª conferencia anual sobre gráficos por computadora y técnicas interactivas - SIGGRAPH '94 . págs. 451–458 . doi : 10.1145/192161.192283 . ISBN 978-0-89791-667-7.
- ↑ Hibbard, William; Santek, David (1989). «La interactividad es la clave». Actas del taller de Chapel Hill de 1989 sobre visualización de volúmenes . págs. 39–43 . doi : 10.1145/329129.329356 . ISBN 978-1-4503-7322-7.
- ↑ "Realizar renderizado de volumen 3D en Python y C++" . Consultado el 11 de septiembre de 2025 .
- ↑ Pfister, Hanspeter; Hardenbergh, Jan; Knittel, Jim; Lauer, Hugh; Seiler, Larry (1999). "El sistema de trazado de rayos en tiempo real VolumePro". Actas de la 26.ª conferencia anual sobre gráficos por computadora y técnicas interactivas - SIGGRAPH '99 . págs. 251–260 . doi : 10.1145/311535.311563 . ISBN 978-0-201-48560-8.
- ↑ Wu, Yin; Bhatia, Vishal; Lauer, Hugh; Seiler, Larry (2003). "Renderizado volumétrico mediante trazado de rayos con orden de imagen de cizallamiento". Actas del simposio de 2003 sobre gráficos 3D interactivos . págs. 152–162 . doi : 10.1145/641480.641510 . ISBN 978-1-58113-645-6.
- ↑ TeraRecon (7 de diciembre de 2006). "Anuncio de producto" . healthimaging.com . Consultado el 27 de agosto de 2018 .
- ↑ Sherbondy, A.; Houston, M.; Napel, S. (2003). "Segmentación rápida de volumen con visualización simultánea mediante hardware gráfico programable". IEEE Transactions on Ultrasonics, Ferroelectrics and Frequency Control . págs. 171–176 . doi : 10.1109/VISUAL.2003.1250369 . ISBN 978-0-7803-8120-9.
- ↑ Tiede, U.; Schiemann, T.; Hohne, KH (1998). "Renderizado de alta calidad de datos volumétricos con atributos". Actas de Visualization '98 (Cat. No. 98CB36276) . págs. 255–262 . doi : 10.1109/VISUAL.1998.745311 . ISBN 978-0-8186-9176-8.
- ↑ Max, Nelson; Hanrahan, Pat; Crawfis, Roger (1990). «Coherencia de área y volumen para la visualización eficiente de funciones escalares 3D». Actas del taller de 1990 sobre visualización de volumen . págs. 27–33 . doi : 10.1145/99307.99315 . ISBN 978-0-89791-417-8. OSTI 6397749 .
- ↑ Engel, Klaus; Kraus, Martin; Ertl, Thomas (2001). «Renderizado de volumen preintegrado de alta calidad mediante sombreado de píxeles acelerado por hardware». Actas del taller ACM SIGGRAPH/EUROGRAPHICS sobre hardware gráfico . págs. 9–16 . doi : 10.1145/383507.383515 . ISBN 978-1-58113-407-0.
- ↑ Lum, Eric; Wilson, Brett; Ma, Kwan-Liu (19 de mayo de 2004). «Iluminación de alta calidad y preintegración eficiente para la renderización volumétrica» . Actas de la Sexta Conferencia Conjunta Eurographics - IEEE TCVG sobre Visualización . Asociación Eurographics. págs. 25–34 . ISBN 978-3-905673-07-4.
- ↑ Evans, Llion Marc; Sözümert, Emrah; Keenan, Bethany E.; Wood, Charles E.; du Plessis, Anton (abril de 2023). " Una revisión de las aplicaciones de simulación basadas en imágenes en la fabricación de alto valor" . Archives of Computational Methods in Engineering . 30 (3): 1495– 1552. doi : 10.1007/s11831-022-09836-2 . PMC 9847465. PMID 36685137 .
Lecturas adicionales
- M. Ikits, J. Kniss, A. Lefohn y C. Hansen: Técnicas de renderizado volumétrico . En: GPU Gems , Capítulo 39 (versión en línea en la zona de desarrolladores de Nvidia).
- Representación de volumen , tutorial básico de representación de volumen por Ph.D. Ömer Cengiz ÇELEBİ
- Barthold Lichtenbelt, Randy Crane, Shaz Naqvi, Introducción a la representación volumétrica (Libros profesionales de Hewlett-Packard), Hewlett-Packard Company, 1998.
- Peng, Hanchuan; Ruan, Zongcai; Long, Fuhui; Simpson, Julie H; Myers, Eugene W (abril de 2010). " V3D permite la visualización 3D en tiempo real y el análisis cuantitativo de conjuntos de datos de imágenes biológicas a gran escala" . Nature Biotechnology . 28 (4): 348– 353. doi : 10.1038/nbt.1612 . PMC 2857929. PMID 20231818 .
- Weiskopf, Daniel (2006). Técnicas de visualización interactiva basadas en GPU . doi : 10.1007/978-3-540-33263-3 . ISBN 978-3-540-33262-6.
- Renderizado 3D
- Modelado de superficies implícito