Procesamiento de imágenes 3D con MATLAB

Tres cosas que es necesario saber

¿Qué es el procesamiento de imágenes 3D?

El procesamiento de imágenes 3D consiste en la visualización, el procesamiento y el análisis de datos de imágenes 3D a través de transformaciones geométricas, filtrado, segmentación de imágenes y otras operaciones morfológicas.

El procesamiento de imágenes 3D se suele emplear en las imágenes médicas a fin de analizar imágenes DICOM o NIfTI procedentes de fuentes radiográficas como resonancias magnéticas o tomografías computarizadas. También se pueden aplicar técnicas de procesamiento de imágenes 3D en la microscopía a fin de detectar y analizar muestras de tejido o de rastrear neuronas. 

Medviso

Los ingenieros de Medviso utilizan MATLAB a fin de desarrollar software de producción para el análisis cardiovascular destinado a profesionales clínicos de todo el mundo.

Al margen de las imágenes médicas, es posible utilizar técnicas de procesamiento de imágenes 3D para procesar las inspecciones de equipaje mediante escáner o para analizar materiales escaneados a fin de comprender su estructura. Otros ejemplos de áreas de aplicación son el reconocimiento de actividades de vídeo para productos electrónicos o la vigilancia aérea para sistemas de defensa.

Técnicas de procesamiento de imágenes 3D

Existen muchas técnicas que se pueden emplear al procesar datos de imágenes 3D. Estas técnicas varían según las tareas en cuestión; algunas de ellas son: importación, visualización, procesamiento y análisis de datos.

En este diagrama se indican los componentes clave de un flujo de trabajo de procesamiento de imágenes 3D.

En este diagrama se indican los componentes clave de un flujo de trabajo de procesamiento de imágenes 3D.

Importación y visualización de imágenes

Los datos de imágenes 3D pueden proceder de diversos dispositivos y tener distintos formatos de archivo. Para importar y visualizar imágenes 3D de forma efectiva, es importante tener acceso a los datos y metadatos subyacentes a las imágenes.

Es posible visualizar imágenes 3D mediante diferentes métodos en función de los detalles que se desee observar. En algunas aplicaciones, puede que interese visualizar los datos 3D como la representación de un volumen.

Visualización de la representación del volumen de una espiral en 3D.

Visualización de la representación del volumen de una espiral en 3D. 

En otras aplicaciones, es posible que se quieran ver los datos 3D como planos 2D dentro de un sistema de coordenadas tridimensional.

Visualización de un volumen 3D como secciones 2D.

Visualización de un volumen 3D como secciones 2D.

Filtrado y mejora de imágenes

Las imágenes 3D a menudo contienen ruido indeseado que oculta o desenfatiza las características de los volúmenes en los que se está interesado. La aplicación de filtros de imagen, la normalización del contraste de imágenes o la realización de operaciones morfológicas son técnicas habituales para eliminar el ruido de las imágenes 3D.

Registro de imágenes

Cuando se trabaja con conjuntos de datos de imágenes 3D, las imágenes se suelen capturar mediante distintos dispositivos, o mientras el dispositivo está en movimiento, lo cual puede provocar una desalineación por rotación o diferencias de inclinación y escala. Esta desalineación se puede eliminar o reducir mediante técnicas de registro de imágenes y transformaciones geométricas 3D.

Registro automático en imágenes médicas multimodales

Registro de imágenes médicas multimodales.

Segmentación de imágenes

Cuando se analiza un volumen o una imagen 3D, resulta útil aislar ciertas regiones para realizar cálculos únicamente en el área de interés. Por ejemplo, si desea calcular el volumen de una botella dentro de una caja, puede utilizar la segmentación de imágenes para dividir la imagen 3D entre la botella y el resto de estructuras de la caja.

Procesamiento de imágenes 3D con MATLAB

MATLAB proporciona funciones y apps interactivas para acelerar los flujos de trabajo de procesamiento de imágenes 3D. Explore los ejemplos siguientes a fin de obtener más información sobre el uso de MATLAB para sus tareas de procesamiento de imágenes 3D.

Importación de datos de imágenes 3D

Con MATLAB es posible utilizar apps interactivas o funciones integradas para importar los datos de imágenes 3D de diversos formatos de archivo, tales como TIFF, DICOM o NIfTI.

La app DICOM Browser permite explorar colecciones de archivos DICOM y exportar posteriormente los datos a otras apps de MATLAB o al espacio de trabajo.

La app DICOM Browser permite explorar colecciones de archivos DICOM.

Visualización de datos de volúmenes

MATLAB permite visualizar y explorar datos de imágenes 3D etiquetados o sin etiquetar.

La app Volume Viewer permite visualizar datos volumétricos 3D etiquetados o sin etiquetar e interactuar con ellos.

La app Volume Viewer permite visualizar datos volumétricos 3D etiquetados o sin etiquetar e interactuar con ellos.   

Registro de imágenes 3D de diferentes modalidades

MATLAB admite imágenes de diversas modalidades y proporciona flujos de trabajo integrados de registro de imágenes para incorporarlas.

En este ejemplo se muestra cómo se pueden alinear automáticamente dos conjuntos de datos volumétricos mediante el registro basado en la intensidad.

En este ejemplo se muestra cómo se pueden alinear automáticamente dos conjuntos de datos volumétricos mediante el registro basado en la intensidad. 

Operaciones de filtrado y mejora de imágenes

Con MATLAB, es posible reducir el ruido o mejorar las imágenes mediante diversas técnicas de filtrado de imágenes, tales como filtrado gaussiano, filtrado de cajas o morfología de imágenes.

En este ejemplo se muestra cómo suavizar imágenes de resonancia magnética de un cerebro humano mediante el filtrado gaussiano 3D.

En este ejemplo se muestra cómo suavizar imágenes de resonancia magnética de un cerebro humano mediante el filtrado gaussiano 3D.

Segmentación de componentes de datos 3D

MATLAB proporciona apps interactivas y funciones integradas que ayudan a automatizar las rutinas de segmentación de imágenes 3D.

En este ejemplo se muestra cómo realizar una segmentación 3D mediante contornos activos (serpientes o "snakes"). Las secciones 2D del volumen se segmentan de forma interactiva mediante la app Image Segmenter a fin de crear un punto de partida para el algoritmo de contorno activo.

Procesamiento de imágenes 3D mediante deep learning

Un enfoque de deep learning al procesamiento de imágenes 3D puede implicar el uso de redes neuronales convolucionales y segmentación semántica para aprender, detectar y etiquetar automáticamente las características relevantes en las imágenes 3D.

En este ejemplo se muestra cómo usar MATLAB para entrenar una red U-Net 3D y llevar a cabo la segmentación semántica de tumores cerebrales en imágenes 3D.