ENES
Volver a Proyectos

Visor médico DICOM

Un prototipo de investigación desarrollado en Unity para cargar, procesar y explorar de manera interactiva datos volumétricos de ultrasonido mediante una pantalla holográfica Looking Glass.

Visualización de un volumen médico DICOM ejecutándose en una pantalla holográfica Looking Glass
Cliente
MITACS | University of Alberta
Rol
Desarrollador de software de investigación
Ubicación del proyecto
Edmonton, Alberta, Canadá
Plazo
2025 · 15 semanas

Tecnologías Utilizadas

  • Unity
  • C#
  • DICOM
  • Fellow Oak DICOM
  • Looking Glass
En esta página

Contexto

Durante mi estancia de investigación MITACS en la University of Alberta, trabajé en técnicas de visualización de realidad extendida para imágenes médicas.

El objetivo era construir desde cero un sistema de investigación capaz de cargar, procesar y renderizar datos volumétricos de ultrasonido mediante una pantalla holográfica Looking Glass utilizando Unity Engine.

El trabajo combinó procesamiento de datos DICOM, renderizado volumétrico en tiempo real, diseño de interacción y manejo de metadatos específicos de cada fabricante. La colaboración con GE proporcionó acceso a datos de ultrasonido y contexto técnico que permitieron desarrollar y probar el flujo de renderizado con datasets de GE.

El reto

Los datos volumétricos de ultrasonido no se almacenan de la misma manera entre fabricantes. Aunque DICOM define un estándar común, los datasets de Philips y GE pueden depender de distintas combinaciones de atributos estándar, etiquetas privadas y convenciones para organizar los datos.

Por esta razón, un parser construido alrededor de una única estructura fija no sería confiable al procesar archivos provenientes de distintas fuentes.

El proyecto heredado de Unity también contenía lógica XR antigua diseñada para un dispositivo diferente. Trasladar el prototipo a la pantalla Looking Glass requirió eliminar esas suposiciones, reorganizar el flujo de renderizado y diseñar un modelo de interacción adecuado para una pantalla holográfica de escritorio.

Al mismo tiempo, el sistema debía procesar grandes datasets volumétricos dentro de las restricciones de memoria y rendimiento propias del renderizado en tiempo real con Unity.

La solución

Reconstruí la arquitectura de visualización alrededor del SDK de Looking Glass y eliminé la lógica específica de dispositivos que ya no era relevante para el nuevo hardware.

Para el procesamiento DICOM, utilicé Fellow Oak DICOM e implementé un flujo de parsing que primero inspecciona los metadatos estándar y después evalúa atributos específicos del fabricante cuando la información necesaria del volumen no se encuentra en las etiquetas esperadas.

La arquitectura separa la inspección de archivos, la detección del fabricante, la extracción del volumen, el procesamiento y el renderizado. Esto facilita investigar y adaptar el pipeline cuando los datasets utilizan convenciones de metadatos diferentes.

Además de cargar y renderizar el volumen, incorporé controles que permiten recortar, aplicar clipping, resaltar y aislar regiones de los datos holográficos de ultrasonido en tiempo real.

Enfoque técnico

Inspección DICOM y detección del fabricante

Inspeccioné los metadatos de datasets de ultrasonido de Philips y GE para identificar cómo representaba cada fabricante las dimensiones del volumen, los datos de vóxeles, la organización de frames y la información relacionada con la adquisición.

En lugar de asumir que todos los archivos utilizaban la misma estructura de etiquetas, el loader examina los metadatos disponibles y selecciona el flujo de procesamiento correspondiente al dataset.

El flujo de GE pudo probarse mediante datasets volumétricos renderizados que estuvieron disponibles gracias a la colaboración de investigación. Los metadatos de Philips también fueron analizados para documentar su estructura y definir una dirección de parsing compatible, aunque una validación equivalente mediante renderizado no fue posible con los datasets disponibles para este prototipo.

Procesamiento del volumen

Desarrollé el pipeline que transforma los datos sin procesar del ultrasonido en una textura tridimensional que puede renderizarse dentro de Unity.

Debido a que los datasets médicos volumétricos pueden requerir una cantidad considerable de memoria y tiempo de procesamiento, la implementación se enfocó en controlar la asignación de memoria, mantener un comportamiento de carga predecible y evitar transformaciones innecesarias o datos duplicados.

La investigación de rendimiento se mantuvo como una parte independiente del trabajo, de forma que las limitaciones de procesamiento pudieran medirse sin acoplarlas a la lógica de interacción o visualización.

Exploración interactiva

Implementé controles de clipping y recorte en múltiples ejes que permiten a los investigadores inspeccionar regiones internas del volumen renderizado.

Otros controles permiten resaltar, aislar u ocultar secciones específicas, ofreciendo una exploración espacial más precisa que la visualización del volumen completo únicamente desde el exterior.

El modelo de interacción fue diseñado alrededor de tareas de investigación como la inspección, comparación y separación de regiones, en lugar de conservar los gestos XR convencionales del hardware anterior.

Integración con Looking Glass

Integré el plugin de Looking Glass para Unity y adapté el flujo de renderizado a la pantalla holográfica.

Los componentes XR heredados asociados al dispositivo anterior fueron eliminados en lugar de conservarse detrás de capas adicionales de abstracción. Esto redujo dependencias innecesarias y mantuvo el prototipo enfocado en el hardware utilizado durante la investigación.

Decisiones técnicas clave

  • Separar la detección del fabricante de la extracción y el renderizado del volumen.
  • Inspeccionar metadatos reales utilizar valores predeterminados de las etiquetas DICOM.
  • Utilizar primero los atributos DICOM estándar y recurrir a lógica específica del fabricante cuando resulte necesario.
  • Mantener la inspección de archivos, el procesamiento, el renderizado y la interacción como partes independientes del sistema.
  • Eliminar la lógica XR del dispositivo anterior en lugar de trasladarla a la nueva implementación.
  • Diseñar los controles alrededor de actividades de investigación como clipping, aislamiento y comparación.
  • Tratar el uso de memoria y el rendimiento del procesamiento volumétrico como un área independiente de investigación.
  • Distinguir entre la compatibilidad basada en metadatos y los flujos de renderizado que fueron validados con los datasets disponibles.

Resultado

El proyecto produjo un prototipo de investigación funcional que conecta el procesamiento de datos volumétricos DICOM con su visualización interactiva en una pantalla holográfica Looking Glass.

Utilizando datasets de ultrasonido disponibles mediante la colaboración con GE, el sistema cargó y renderizó datos volumétricos, permitiendo recortar, aplicar clipping, resaltar y aislar regiones en tiempo real.

El proyecto también documentó diferencias relevantes entre las estructuras de metadatos de GE y Philips, y estableció una base modular para investigar formatos de otros fabricantes. La validación de renderizado del prototipo se limitó a los datasets disponibles durante la investigación, por lo que la compatibilidad con otros fabricantes requeriría pruebas adicionales con archivos representativos.

Este prototipo fue desarrollado exclusivamente como software de investigación. No ha sido validado clínicamente y no está destinado al diagnóstico, la planificación de tratamientos ni ningún otro uso clínico.

Lo que estableció el trabajo

Desarrollo de investigación

El prototipo fue investigado y desarrollado durante una estancia de investigación MITACS en la University of Alberta.

Investigación DICOM según el fabricante

El proyecto validó el flujo de renderizado con datasets de GE y documentó las estructuras de metadatos de Philips para futuras investigaciones de compatibilidad.

Exploración interactiva del volumen

Los controles de recorte, clipping, resaltado y visibilidad permitieron a los investigadores aislar e inspeccionar regiones de interés.

Más proyectos seleccionados

Ver todos los proyectos
Página de inicio del sitio web corporativo de Topomex mostrada en una pantalla móvil

Sitio web corporativo de Topomex

Arquitectura web

Una plataforma corporativa enfocada en rendimiento que organiza los servicios de infraestructura, sectores y experiencia de Topomex dentro de una presencia digital clara y fácil de mantener.

  • Astro
  • TypeScript
  • Tailwind CSS
Tienda Shopify de Bonnie & Clothing mostrada en una pantalla de escritorio

Bonnie & Clothing

E-commerce y crecimiento

Una tienda Shopify personalizada, diseñada para expresar la identidad de la marca de manera más consistente mientras conserva un flujo práctico para el merchandising y las actualizaciones cotidianas.

  • Shopify
  • Shopify Liquid
  • JavaScript

¿Tienes un proyecto en mente?

Ya sea que estés planeando una tienda Shopify, una plataforma full-stack o una experiencia interactiva, puedo ayudarte a definir el alcance y desarrollar una solución mantenible, desde Hermosillo o de forma remota.

Hablemos de tu proyecto