Mi SciELO
Servicios Personalizados
Articulo
Indicadores
- Citado por SciELO
Links relacionados
- Similares en SciELO
Compartir
Revista Cubana de Informática Médica
versión On-line ISSN 1684-1859
RCIM vol.5 no.2 Ciudad de la Habana jul.-dic. 2013
ARTÍCULO ORIGINAL
Sistema de visualización remota para la representación interactiva de volúmenes de datos médicos
Remote visualization system for interactive representation of medical volume dataset
Ing. Osvaldo Pereira Bárzaga,I Ing. Leitniz Pérez Buján,II Ing. Ramón Carrasco VelarIII
IUniversidad de las Ciencias Informáticas, Cuba. Carretera San Antonio de los Baños Km 1 ½, Rpto. Lourdes, Boyeros, La Habana, Cuba. E-mail: opereira@uci.cu
IIUniversidad de las Ciencias Informáticas, Cuba. Carretera San Antonio de los Baños Km 1 ½, Rpto. Lourdes, Boyeros, La Habana, Cuba. E-mail: lbujan@uci.cu
IIIUniversidad de las Ciencias Informáticas, Cuba. Carretera San Antonio de los Baños Km 1 ½, Rpto. Lourdes, Boyeros, La Habana, Cuba. E-mail: rcarrasco@uci.cu
Las aplicaciones de visualización médica han adquirido un elevado auge en la medicina a nivel mundial, ya que les permite a los médicos especialistas realizar diagnósticos preoperatorios no invasivos y de alta precisión desde una perspectiva 3D. La idea principal de la misma es obtener un modelo tridimensional de alta resolución gráfica a partir de imágenes médicas digitales de las modalidades de Tomografía Axial Computarizada y Resonancia Magnética Nuclear. Los usuarios de este tipo de aplicaciones demandan de forma creciente que las aplicaciones permitan el diagnóstico de patologías en un entorno de trabajo colaborativo. En este trabajo presentamos una arquitectura para sistemas de visualización remota basados en la transmisión de imágenes. El esquema de comunicación y transmisión de datos e imágenes entre el servidor y los clientes utiliza RTP como protocolo de comunicación. Los resultados obtenidos demuestran que la variante de algoritmo RLE implementada permite obtener visualizaciones interactivas y en tiempo real con un consumo mínimo del ancho de banda de la red.
Palabras clave: visualización remota, visualización médica, arquitectura cliente-servidor, visualización tridimensional.
ABSTRACT
Three-dimensional medical visualization applications have acquired a high rise in medicine. They allow specialized doctors to make preoperative diagnostics with high accuracy from a 3D perspective. The main idea of medical visualization is to obtain a three-dimensional and high-resolution graphics from digital medical imaging modalities like computed tomography and magnetic resonance imaging. The users of these applications increasingly demand that applications allow diagnosis in a collaborative work environment. Architecture for remote visualization systems based on image is presented. The server and client scheme of communication and transmission of data and images use RTP as communication protocol. Our results show that the implemented variant of RLE algorithm allows interactive and real time representation with a minimum of bandwidth.
Key words: remote rendering system, medical visualization, architecture client-server, visualization 3D.
INTRODUCCIÓN
La información en forma de imágenes ha adquirido en la actualidad una gran importancia en el campo de la medicina. En los últimos años han surgido una gran variedad de equipos y aparatos médicos para obtener imágenes de algún órgano específico del paciente. Gracias a los avances tecnológicos, el médico especialista dispone de imágenes médicas de diversas modalidades, tales como: Tomografía Axial Computarizada (TAC) y Resonancia Magnética Nuclear (RMN).
Como complemento, las herramientas informáticas y los métodos de tratamiento, análisis y visualización de imágenes digitales, han resultado de gran utilidad para el desarrollo de aplicaciones médicas de diversos tipos. Estas aplicaciones se emplean en la medicina para facilitar y permitir un aprovechamiento adecuado de la cuantiosa información disponible que brindan las imágenes radiológicas de los pacientes.
Actualmente, las aplicaciones de tratamiento y análisis de imágenes médicas aparecen frecuentemente integradas con aplicaciones de visualización tridimensional (3D), y con un fuerte apoyo de técnicas de reconstrucción 3D. La necesidad de que las visualizaciones 3D sean cada vez más realistas y que ilustren con elevado nivel de detalle las estructuras anatómicas, de conjunto con la gran cantidad de imágenes que se suele obtener del estudio realizado a un paciente, hace que se requiera de computadoras con elevadas prestaciones de hardware.
Por otro lado, los usuarios de los sistemas para la visualización y análisis de las imágenes médicas demandan de forma creciente que las aplicaciones permitan el diagnóstico de patologías en un entorno de trabajo colaborativo.
En este trabajo se describe una arquitectura de sistema de visualización remota basada en la transmisión de imágenes, que permite la visualización interactiva de grandes volúmenes de imágenes médicas en un entorno de diagnóstico colaborativo.
MARCO TEÓRICO
La visualización remota no es una idea nueva; se han desarrollado varias aplicaciones que hacen uso de la misma.
En la bibliografía consultada se han descrito numerosos sistemas de telemedicina, tele-diagnóstico y tele-radiología con arquitectura cliente servidor.1-4 Sin embargo, se han implementado para la comunicación entre un servidor y estaciones de trabajos (PC o teléfonos móviles) con elevadas capacidades de cómputo (CPU) y de alta capacidad de procesamiento gráfico (GPU); otras se enfocan en el uso de clústeres como servidores centrales de procesamiento y visualización.1
Diferentes autores han propuesto variadas soluciones para el problema de la visualización remota de datos.2,3,5
Las soluciones propuestas por estos autores transmiten imágenes comprimidas desde el servidor a un cliente y requieren de complejas modificaciones durante el proceso de visualización, por lo que las velocidades de refrescamiento que logran son menores de 30 cuadros/s. y no resultan, por lo tanto, las más adecuadas.
Los sistemas de visualización remota pueden clasificarse según el tipo de información que se envía del servidor al cliente:1
- Basado en imágenes: La visualización del volumen de datos se lleva a cabo por el servidor, y el resultado se envía al cliente a través de la red en forma de imagen.
- Replicación de la geometría: El servidor envía parte del volumen de datos al cliente en forma de geometría, la cual se almacena localmente en el receptor para luego realizar una visualización local. La información del volumen de datos puede estar disponible antes de iniciar la aplicación o el cliente puede descargarla justo antes de su uso.
- Modo inmediato de dibujado: Utiliza el dibujo de bajo nivel por los comandos de APIs de dibujo. Estos comandos se emiten por la aplicación servidora a la aplicación cliente que realiza la prestación. La prestación se realiza del lado del cliente por lo que es necesario que el hardware gráfico del lado del cliente tenga la capacidad de interpretar los comandos recibidos por el servidor.
- Representación híbrida: Este enfoque combina la representación basada en imágenes con la basada en geometría. El servidor envía al cliente a través de la red imágenes y geometría, que el cliente debe procesar para visualizar el resultado final al usuario.
Otro aspecto dentro de los sistemas de visualización remota es la transmisión de los datos entre el servidor y los clientes. Los protocolos más utilizados y difundidos son el TCP y el UDP.
El protocolo TCP une la capa de aplicación a la capa de red;6 además, se asegura que los datos tengan el tamaño adecuado, que se coloquen correctamente en paquetes y en el orden adecuado cuando se envían y reciben; de allí que sea un protocolo fiable y orientado a la conexión.
Debido al mecanismo de seguridad de los datos que implementa, este protocolo requiere mayor ancho de banda, es más lento que el protocolo UDP y utiliza paquetes más grandes.
Por otro lado, el protocolo UDP es un protocolo no orientado a la conexión, por lo que es más rápido que TCP, ya que no implementa ningún mecanismo interno de corrección de errores, la transmisión se realiza a mayor velocidad y requiere menos ancho de banda que el protocolo TCP; pues no le incorpora a los paquetes de datos información adicional.6 El chequeo y gestión de errores queda completamente al nivel de aplicación cuando se utiliza este tipo de protocolo para la comunicación.
Por otra parte, gran número de investigadores han enfocado sus esfuerzos a obtener visualizaciones remotas en teléfono móviles,7 donde se destacan dos vertientes fundamentales. La primera, inspirada en la visualización remota basada en la transmisión de imágenes.4,8 Y la segunda, que aprovecha los recursos de gráficos locales de los teléfonos móviles con GPU para llevar a cabo la visualización del volumen de datos usando alguno algoritmo de visualización directa o indirecta de volumen.9 En dependencia del objetivo que se persiga, la compresión de los datos que se transmiten del servidor al cliente será o no tenida en cuenta.
Sin embargo, no se han encontrado reportes de un sistema de visualización remota basado en la transmisión de imágenes, para la visualización de volúmenes de datos médicos en dispositivos con bajas prestaciones de hardware; donde la representación de la imagen final en los clientes sea interactiva y en tiempo real*. Por todo lo anterior, el propósito del presente trabajo es proponer un modelo de visualización remota interactivo basado en la transmisión de imágenes para dispositivos de bajas prestaciones de hardware.
MATERIALES Y MÉTODOS
Elementos de hardware
Se emplearon dos arquitecturas de computadoras. Una configurada como servidor y varias como clientes.
El servidor
Es un nodo dentro de la red de computadoras cuyo objetivo es procesar y visualizar el volumen de datos médicos solicitados por los clientes.
Es en el servidor donde se carga en memoria todo el volumen de datos correspondiente al estudio realizado a un paciente por las modalidades de TAC o RMN.
Una vez cargado en memoria el volumen de datos DICOM se visualiza el volumen de datos aplicando técnicas y algoritmos de representación directa e indirecta de volúmenes10 y se envía la imagen resultante a todos los clientes conectados al sistema.
Para el servidor se utilizó un procesador Intel Core2 Quad Q6600 a 2.40 GHz, memoria 2GB de RAM DDR3 y una unidad de procesamiento grafico NVIDIA GeForce 9800 GT a 512 MB de RAM DDR2.
El cliente
Será cualquier nodo dentro de la red que solo tendrá como requerimientos mínimos de hardware, el poseer periféricos de salida (monitor) con capacidad de visualizar una imagen y periféricos de entrada (teclado, ratón, etc.) que le permitan al usuario interactuar en tiempo real con el modelo visualizado.
Durante el desarrollo de la investigación se realizaron pruebas del sistema con dos configuraciones de clientes. La primera configuración corresponde a una estación de trabajo convencional con las siguientes características de hardware: Procesador Intel Pentium IV y memoria 1GB de RAM DDR2. La segunda en una Laptop TOSHIBA SATELITE L40 con un procesador Intel Pentium M (CPU) y memoria 1GB de RAM DDR2.
Herramientas de Software utilizadas
El sistema está implementado en C++ y utiliza JRTPLib11 como biblioteca de clases para la transmisión de los datos por la red.
Las imágenes son transmitidas por multidifusión a los clientes desde el servidor mediante una configuración de datagramas con un longitud máxima de 60 Kb. Para la visualización se empleó la API gráfica OpenGl.
Comunicación entre el servidor y el cliente
El sistema propuesto utiliza como protocolo de comunicación el protocolo RTP, el cual es una variante de UDP para la transmisión de datos en tiempo real.
Se utiliza fundamentalmente en sistemas para video conferencias y transmisión de videos.6 Un elemento fundamental en todo sistema de visualización de datos médicos es la fiabilidad y la seguridad de la información con que se trabaja, ya que de la información visual que se le brinda a los especialistas médicos, depende la calidad del diagnóstico y en muchas ocasiones hasta la vida de los pacientes. Al RTP estar basado en UDP, tampoco implementa un mecanismo de gestión de errores y no garantiza que los paquetes de datos transmitidos lleguen en el orden correcto. Por esta razón, en el sistema de visualización remota que se propone se implementó un mecanismo de gestión de errores en la comunicación y/o transmisión de los datos al nivel de aplicación.
Compresión y transmisión de los datos
La transmisión de los datos es otro aspecto importante dentro de los sistemas de visualización remota, principalmente cuando se requiere que la representación de la imagen en el cliente sea en tiempo real.
En esta sección se describe el mecanismo de compresión y transmisión de datos implementados que garantiza una representación de una velocidad de refresco de los cuadros del lado del cliente de más de 30 cuadros por segundo.
Está descrito que para calcular el ancho de banda requerido para enviar una imagen por la red se utiliza la ecuación (1):
(1)
donde B es el ancho de banda necesario para trasmitir una imagen sin comprimir, de resolución Iw*Ih con una profundidad de color Cdepth si se requiere que la velocidad de refrescamiento de la pantalla en el cliente sea mayor que el factor de refrescamiento fsp para un número n de clientes conectados.
Sistemas como IBRAC,12 ScanView,13 RemoteVis14 y NetVisMed15 implementan algoritmos de compresión de imágenes16-18 para lograr disminuir el ancho de banda necesario para la transmisión de los datos.
Una de las desventajas de los algoritmos actuales de compresión/descompresión propuestos en la bibliografía consultada es que los órdenes de complejidad son elevados y por lo tanto, los tiempos de ejecución sobrepasan el segundo. Eso determina que la representación del lado del cliente no sea en tiempo real.
RESULTADOS Y DISCUSIÓN
La solución que se propone puede clasificarse dentro del grupo de los sistemas de visualización remota basados en la transmisión de imágenes. La misma consiste en tener un servidor de visualización que genere la imagen correspondiente de las estructuras anatómicas de interés para el especialista médico que se encuentra realizando el telediagnóstico en el lado del cliente. En esta sección se describirán brevemente los componentes y procesos fundamentales, así como la relación entre ellos (Fig. 1).
En ese esquema, el proceso comienza cuando se establece la conexión entre el cliente y el servidor. Posteriormente desde el cliente, el médico especialista interactúa con el modelo en dependencia del tipo de análisis que esté realizando; toda la interacción se envía al servidor en forma de comandos. Luego el servidor procesa los comandos recibidos por los clientes, realiza la visualización y envía la imagen final de la visualización a los clientes.
En la metodología propuesta se implementó una variante del algoritmo RLE,16 la cual consiste en aplicar el algoritmo a cada uno de los píxeles de la imagen y no a sus componentes independientes como propone el algoritmo RLE original (Fig. 2).
La modificación realizada se basa en el hecho de que cuando las imágenes trasmitidas están en formato RGBA es muy difícil que un píxel presente los valores de sus tres componentes color iguales.
Sin embargo, cuando se comparan los pixeles y no sus componentes, en las regiones homogéneas dentro de la imagen, existen gran número de pixeles que se pueden considera iguales si aplicamos alguna de las métricas de comparación de píxeles propuestas por González y Woods.18
La variante algorítmica propuesta implementa la métrica de igualdad entre píxeles según la ecuación (2), en la que
(2)
entonces, P0=P1, donde (x,y) son las coordenadas del pixel dentro de la imagen.
Se conoce que dos píxeles se consideran iguales si, y solo sí los valores de las componentes RGBA del pixelP0 son exactamente iguales a las del pixelP1, cuando se compara componente a componente. De esta forma se conserva el principio de comprimir la imagen sin pérdida de información, con un radio de compresión entre un 50-70 % y una complejidad algorítmica del orden donde es la cantidad de pixeles de la imagen. La arquitectura de visualización remota descrita se aplicó previamente en una red de computadoras con un ancho de banda de sobre las configuraciones de cliente y servidor descritas anteriormente.
Resulta importante recordar que a los efectos de la trasmisión de imágenes visuales, los tiempos de retardo generalmente aceptados están en el orden de 33 ms o menos, para considerar que esta se ha efectuado en tiempo real a la percepción del ojo humano.
Los tiempos de retardo máximos obtenidos para cada uno de los experimentos realizados se relacionan en la tabla 1.
Es importante señalar que las características del experimento computacional no permiten la generación de imágenes en el servidor a velocidades superiores, que permitan reducir por su parte, el tiempo de refrescamiento de la imagen. Esta desventaja es la causa principal de que en dos de los casos, los tiempos de retardo total, hayan excedido la barrera de los 33 ms.
Sin embargo, independientemente de la pequeña diferencia en tiempo, el observador no logra apreciar retardo en la transmisión.
En la tabla 2 se ilustran ejemplos de imágenes generadas y comprimidas por el servidor y las equivalentes recibidas y descomprimidas por los clientes; así como las tasas de compresión correspondientes.
La percepción visual de las imágenes sugiere que no ha ocurrido pérdida de información. No obstante, para comprobar que no se pierde la información al usar como protocolo de comunicación RTP, se realizó una comparación de las imágenes transmitidas y las recibidas. Para garantizar una comprobación exhaustiva, esta se realizó pixel a pixel y componente a componente. Se obtuvo como resultado, que para el 100 % de los casos, ambas imágenes son exactamente iguales. De esos resultados se observa también como la disminución de la tasa de compresión reduce el número de paquetes a enviar.
CONCLUSIONES
Se propone un esquema para la visualización remota de volúmenes de datos médicos basado en la transmisión de imágenes donde los tiempos no sobrepasaron los 37 milisegundos. La variante del algoritmo RLE desarrollado tiene mayor tasa de compresión que el RLE en su versión original sin aumentar el orden de complejidad algorítmica. Se comprobó que utilizando como protocolo de transmisión RTP se pueden transmitir imágenes en tiempo real sin perdidas de información.
REFERENCIAS BIBLIOGRÁFICAS
1. Schoor W, et al. Remote Rendering Strategies for Large Biological Datasets. [Online] 2009. [Citado: 8 feb 13] Disponible en: http://sciviz.cct.lsu.edu/papers/2009/Schoor09.pdf
2. Engel K, Sommer O, Ertl T. A Framework for Interactive Hardware Accelerated Remote 3D-Visualization. En: Data Visualization 2000. Springer Vienna; 2000. p.167-177.
3. Ma K-L, Camp DM. High performance visualization of time-varying volume data over a wide-area network. [Online] 2000. [Citado: 8 feb 13] Disponible en: http://www.cs.ucdavis.edu/ma/papers/sc2000.pdf
4. Jeong SJ, Kaufman AE. Interactive wireless virtual colonoscopy. Vis Comput. 2007; 23(8): 545-557.
5. Bethel A. Visualization dot com. Computer Graphics and Applications. 2000; 20(3): 17-20.
6. Liesenborgs J. Voice over IP in networked virtual environments. [Online] 2000. [Citado: 8 feb 13] Disponible en: http://read.pudn.com/downloads3/doc/9558/thesis-jori-original.pdf
7. Campoalegre L, Brunet P, Navazo I. Interactive visualization of medical volume models in mobile devices. [Online] 2012, Springer. [Citado: 8 feb 13] Disponible en: http://link.springer.com/article/10.1007/s00779-012-0596-0
8. Lamberti F, Sanna A. A solution for displaying medical data models on mobile devices. SEPADS. 2005 [citado el 15 Octubre 2013]; 258-264. Disponible en: http://www.wseas.us/e-library/conferences/2005salzburg/papers/492-354.pdf
9. Moser M, Weiskopf D. Interactive volume rendering on mobile device. En: Vision, Modeling, and Visualization. 2008; 8: 217-226.
10. Preim B, Bartz D. Medical Visualization. Theory, Algorithm and Application. s.l. : Elsevier Inc., 2007.
11. Liesenborgs J. Jori's Page. [Online] [Citado: 8 Febrero 2013] Disponible en: http://www.research.edm.uhasselt.be/jori/jrtplib/jrtplib.html
12. Yoon I, Neumann U. Web-Based Remote Rendering with IBRAC, Image-Based Rendering Acceleration and Compression. Comput. Graph. Forum 2000;19(3):321-330.
13. Koller D, et al. Protected interactive 3d graphics via remote rendering. [Online] 2004. [Citado: 8 feb 13] Disponible en: http://dl.acm.org/citation.cfm?id=1015782
14. Deb S. RemoteVIS: A Remote Rendering System. 2003. [Citado: 8 feb 13] Disponible en: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.123.4868&rep=rep1&type=pdf
15. Deb S, Narayanan PJ. Combining Local and Remote Visualization Techniques for Interactive Volume Rendering in Medical Applications. 2001. [Citado: 8 feb 13] Disponible en: http://www.evl.uic.edu/cavern/rg/20040525_renambot/Visualization-papers/papers/00/00885729.pdf
16. Sandoval M. Algoritmo de Compresión de Imágenes de Alta Resolución Sin Pérdidas. [Online] México, D.F. : 2008.[Citado: 8 feb 13] Disponible en: http://tesis.bnct.ipn.mx/bitstream/handle/123456789/5745/ALGORITMODECOMPR.pdf
17. Acharya T, Ray AK. Image Processing Principles and Applications. New Jersey: John Wiley & Sons; 2005.
18. González RC, Woods RE. Digital Image Processing. New Jersey: Prentice Hall; 2002.
Nota aclaratoria:
*En los sistemas de gráficos por computadoras o de realidad se considera tiempo real cuando se logra una velocidad de refresco de la imagen mayor o igual a 30 cuadros por segundo.
Recibido: 5 de septiembre de 2013.
Aprobado: 10 de octubre de 2013.