ProtoTech Solutions can help you design, develop, and/or implement a medical data visualization tool. We have deep expertise in engineering interoperable healthcare software.
We at ProtoTech can tackle challenges that Healthcare Organizations face in the process of visualizing data.
This blog covers What exactly medical visualization is and How ProtoTech Solutions can help you design, develop, and implement a Healthcare data visualization tool.
Arcreative Media is a medical animation company that delivers medically accurate, inspiring graphics, animations and interactive 3d medical animation videos. Ranked among the top medical animation studios, Arcreative Media crafts superb 3d video presentation maker that help explain surgical techniques, implants and medical products.
Medical Animation - ARCREATIVE media makes even the most challenging concepts, intricate devices or complex explanations easier to understand through the use of product animations. Give end users and sales reps the jargon-free, easily-graspable details they need to make an informed decision.
Yelp is a fun and easy way to find, recommend and talk about what's great - and not so great - in San Francisco and beyond. Members share their favorite recommendations - everything from the latest restaurants and shops, to the best hair salons…
Medical Animation - ARCREATIVE media makes even the most challenging concepts, intricate devices or complex explanations easier to understand through the use of product animations. Give end users and sales reps the jargon-free, easily-graspable details they need to make an informed decision.
Medical Animation - ARCREATIVE media makes even the most challenging concepts, intricate devices or complex explanations easier to understand through the use of product animations. Give end users and sales reps the jargon-free, easily-graspable details they need to make an informed decision.
Arcreative Media is a medical animation company that delivers medically accurate, inspiring graphics, animations and interactive 3d medical animation videos. Ranked among the top medical animation studios, Arcreative Media crafts superb 3d video presentation maker that help explain surgical techniques, implants and medical products.
Asignar/mapear valores provenientes de una imagen 3D sobre una iso-surface con ParaView
Existen diversas técnicas para visualizar el contenido de una imagen 3D (el volumen conformado luego de la compilación de imágenes 2D e.g. imágenes diágnosticas médicas de tomografía o resonancia magnética). Generalmente se utilizan técnicas de renderizado volumétrico que permiten ver el interior de la estructura con alguna tabla de colores o con algunos métodos alternativos de umbralización; ejemplos de estos dos Volume Rendering (VR) y Maximum Intesity Projections (MIP). Sin embargo, algunos análisis requieren una visualización clara de los valores obtenidos a lo largo de una superficie definida o extraida previamente. La situación siguiente describe una necesidad recurrente que es la razón principal de este post:
- Se tiene una imágen 3D donde el valor de cada voxel entra en un rango que puede ser representado por una escala de grises (normalmente una imagen de tomografía, resonancia, ultrasonido, etc.). También se tiene una máscara de segmentación (imagen binaria que asigna un valor diferente de cero a una región de la imagen que se quiere estudiar; cero al resto de la imagen) del mismo tamaño de la imagen original. Para el análisis de la zona definida por la máscara de segmentación se quieren visualizar los valores en la imagen original sobre la superficie de la segmentación. En otras palabras, "mapear" los valores originales en la superficie segmentada.
Como ya está mencionado en el título, Paraview me sorprende una vez más permitiendo hacer todo esto de una manera muy sencilla y rápida. De aquí en adelante mi guía para resolver este problema utilizando Paraview:
- Datos de entrada: Imagen original en formato MHD/MetaImage (en mi caso el tipo de dato es unsigned short, pero puede ser cualquiera) . Imagen binaria de la segmentación en formato MHD.
Pasos a seguir
- Abrir la imagen original y la imagen segmentada en Paraview (i.e. abrir el archivo MHD). Ya estando abiertas Paraview visualizar el resultado con técnicas clásicas como VR, o extraer una iso-surface. Ver por ejemplo la siguiente imagen.
Izquierda: Volume rendering de una imagen de tomografía (aneurisma en arteria cerebral). Derecha: Iso-surface de la segmentación del aneurisma (naranja) y de la arteria (azul)
- Dar click sobre la imagen original en el Pipeline Browser. Luego, agregar un Programmable Filter (Filters / Data Analysis / Programmable Filter).
- En las propiedades del filtro verificar que: Output Data Set Type, Same as Input. Agregar el siguiente Script de VTK en Python:
Este script permite cambiar el nombre del arreglo de datos de la imagen. Este es asignado por defecto y para las imágenes MHD siempre se inicializa con el mismo nombre: MetaImage. Esto se puede verificar en la vista Information / Data Arrays.
- En el Pipeline Browser seleccionar el Programmable Filter Y la máscara de segmentación (se pueden seleccionar dos objetos a la vez usando la tecla Ctrl). Luego, utilizar el filtro Append Attributes (Filters / Alphabetical / Append Attributes). En el ultimo objeto del Pipeline Browser que fue generado por el Append Attributes, se puede verificar que ahora tenemos un mismo objeto con el arreglo de datos de la segmentación y el arreglo de datos de la imagen original (verificar en la vista Information / Data Arrays).
- Teniendo seleccionado este ultimo resultado, añadir el filtro Contour (Filters / Alphabetical / Contour equivalente a la extracción de una Iso-surface). En las propiedades de este filtro, seleccionar en Contour By el arreglo de datos de la segmentación, es decir MetaImage.
- Finalmente en la vista Display podemos asignar una tabla de colores definida por el rango de valores de la imagen original. Para esto asignar en Color By: OriginalValues. La tabla de colores puede ser modificada en cualquier momento al hacer click en Edit Color Map...
Superficie de la segmentación de la arteria con los valores de la imagen original sobre la superficie. En la parte superior se ve la zona en rojo donde está ubicado el aneurisma. Se puede hacer un análisis de la validez de la segmentación (sobre-segmentado o sub-segmentado) a lo largo de la arteria.
It's done!! Podemos visualizar los valores de la imagen original sobre una superficie previamente generada. Solución muy práctica y sencilla con ParaView. Enjoy it ! :-)