ES2337556T3 - Analisis de imagenes asistido por erdenador. - Google Patents

Analisis de imagenes asistido por erdenador. Download PDF

Info

Publication number
ES2337556T3
ES2337556T3 ES02709291T ES02709291T ES2337556T3 ES 2337556 T3 ES2337556 T3 ES 2337556T3 ES 02709291 T ES02709291 T ES 02709291T ES 02709291 T ES02709291 T ES 02709291T ES 2337556 T3 ES2337556 T3 ES 2337556T3
Authority
ES
Spain
Prior art keywords
data
interest
feature
image data
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES02709291T
Other languages
English (en)
Inventor
Garry Carls
Stephen D. Barnhill
Hong Zhang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Health Discovery Corp
Original Assignee
Health Discovery Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Health Discovery Corp filed Critical Health Discovery Corp
Application granted granted Critical
Publication of ES2337556T3 publication Critical patent/ES2337556T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0012Biomedical image inspection
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/254Fusion techniques of classification results, e.g. of results related to same input data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Radiology & Medical Imaging (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Image Processing (AREA)
  • Preparation Of Compounds By Using Micro-Organisms (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)
  • Investigating Or Analysing Biological Materials (AREA)

Abstract

Un procedimiento implementado por ordenador para el análisis de una imagen digitalizada, comprendiendo el procedimiento: (a) ingresar un conjunto de entrenamiento de datos de imágenes y un conjunto de prueba de datos de imágenes a un procesador, para ejecutar una pluralidad de subsistemas de detección, estando cada subsistema de detección adaptado para detectar y clasificar uno entre una pluralidad de distintos rasgos de interés, en donde cada rasgo de interés tiene una pluralidad de posibles características del rasgo, y en donde cada subsistema de detección genera una salida para su correspondiente rasgo de interés, en donde cada subsistema de detección ejecuta las etapas de: (i) preprocesar cada conjunto de datos de imágenes para detectar y extraer la presencia de un rasgo de interés dentro de los datos de imágenes; (ii) entrenar y probar al menos una máquina de vectores de soporte con al menos un núcleo que utiliza los conjuntos preprocesados de datos de imágenes para clasificar el rasgo de interés extraído en al menos una entre una pluralidad de clases de posibles características del rasgo; (iii) comparar los rasgos clasificados a partir del conjunto de prueba de datos de imágenes con resultados conocidos del conjunto de prueba de datos de imágenes, a fin de determinar si se obtiene una solución óptima; (iv) repetir las etapas (ii) y (iii) si no se obtiene la solución óptima; (v) si se obtiene la solución óptima, ingresar un conjunto real de datos de imágenes en el procesador; (vi) preprocesar el conjunto real de datos de imágenes para detectar y extraer la presencia de rasgos de interés dentro de los datos de imágenes; (vii) clasificar al menos dicho rasgo de interés; y (viii) generar una salida que comprende el rasgo, o rasgos, de interés clasificado(s) a partir del conjunto real de datos de imágenes; (b) ingresar las salidas de cada uno de la pluralidad de subsistemas en una máquina global de vectores de soporte con al menos un núcleo; y (c) generar una única salida global que comprende una clasificación de la imagen digitalizada.

Description

Análisis de imágenes asistido por ordenador.
Campo de la invención
La presente invención se refiere, en general, al análisis asistido por ordenador de imágenes y, más específicamente, al análisis de imágenes asistido por ordenador utilizando máquinas de vectores de soporte.
Antecedentes de la invención
La extracción óptima de datos contenidos dentro de una señal electromagnética requiere la capacidad de identificar componentes importantes de la señal, a pesar del ruido y las limitaciones de la fuente de señal y la instrumentación utilizada para detectar la señal. Un área clave en la cual se busca la extracción y reconstrucción optimizadas de datos es el campo del análisis de imágenes, donde fuentes de ruido y otros factores pueden afectar negativamente la capacidad de extraer datos de la imagen, deteriorando así la efectividad del procedimiento de formación de imágenes para su uso concebido. Los ejemplos de áreas en las cuales el análisis de imágenes puede ser problemático incluyen la observación astronómica y la exploración planetaria, donde las fuentes pueden ser tenues y la interferencia atmosférica introduce ruido y distorsión; la vigilancia militar y de seguridad, donde la luz puede ser poca y el movimiento rápido de los objetivos dan como resultado un contraste bajo y una mancha; y la formación de imágenes médicas, que a menudo padece de contraste bajo, manchas y distorsión, debido a limitaciones de la fuente y de los instrumentos. Se añade a la dificultad del análisis de imágenes el gran volumen de datos contenidos dentro de una imagen digitalizada, ya que, con frecuencia, el valor de cualquier punto dado de datos no puede establecerse hasta que se procesa la imagen entera.
El desarrollo de procedimientos para el análisis automatizado de imágenes digitales ha recibido una considerable atención durante las pocas décadas anteriores, siendo una de las áreas claves de interés el campo médico. Las aplicaciones incluyen el análisis de imágenes de patologías generadas utilizando la emisión visual, de ultrasonido, de rayos X y de positrones, la resonancia magnética y otros procedimientos de formación de imágenes. Como ocurre en el caso de las imágenes médicas interpretadas por humanos, un analizador automatizado de imágenes debe ser capaz de reconocer y clasificar características borrosas dentro de las imágenes, lo que a menudo requiere la discriminación de límites indistintos entre áreas que difieren sólo en unos pocos niveles de gris o tonos de color.
En los años recientes, se han explorado ampliamente enfoques de aprendizaje por máquina para el análisis de imágenes, a fin de reconocer patrones que, a su vez, permiten la extracción de rasgos significativos dentro de una imagen en un fondo de detalle irrelevante. Las máquinas aprendices comprenden algoritmos que pueden ser entrenados para generalizar, utilizando datos con resultados conocidos. Los algoritmos de máquinas aprendices entrenadas, que incluyen las redes neurales, los modelos ocultos de Markov, las redes de creencia y las máquinas de vectores de soporte, son idealmente adecuadas para dominios caracterizados por la existencia de grandes cantidades de datos, patrones ruidosos y la ausencia de teorías generales. El foco específico entre tales enfoques ha sido la aplicación de redes neurales artificiales al análisis de imágenes biomédicas, con resultados informados en el uso de redes neurales para analizar imágenes visuales de especímenes citológicos y mamogramas para el diagnóstico del cáncer de pecho, la clasificación de imágenes de retina de diabéticos, el kariotipado (análisis visual de imágenes de cromosomas) para identificar anormalidades genéticas y la detección de tumores en imágenes de ultrasonido, entre otros.
La mayoría de las máquinas aprendices que se han aplicado al análisis de imágenes son redes neurales entrenadas utilizando la retropropagación, un procedimiento basado en gradientes en el cual los errores en la clasificación de los datos de entrenamiento se propagan hacia atrás a través de la red, para ajustar las ponderaciones de sesgo de los elementos de red, hasta que se minimice el error cuadrático medio. Un inconveniente significativo de las redes neurales de retropropagación es que la función de riesgo empírico puede tener muchos mínimos locales, un caso que puede oscurecer fácilmente el descubrimiento de la solución óptima. Los procedimientos estándar de optimización empleados por las redes neurales de retropropagación pueden converger hacia un mínimo, pero el procedimiento de la red neural no puede garantizar que se alcance siquiera un mínimo localizado, y mucho menos el mínimo global deseado. La calidad de la solución obtenida de una red neural depende de muchos factores. En particular, la habilidad del médico que implementa la red neural determina el provecho definitivo, pero incluso factores tan aparentemente benignos como la selección aleatoria de las ponderaciones iniciales puede llevar a resultados pobres. Además, la convergencia del procedimiento basado en el gradiente, utilizado en el aprendizaje de redes neurales, es inherentemente lenta. Un inconveniente adicional es que la función sigmoide tiene un factor de escala, que afecta a la calidad de la aproximación. Posiblemente, el mayor factor de limitación de las redes neurales, en lo que atañe al descubrimiento de conocimiento, es la "maldición de la dimensionalidad" asociada al crecimiento desproporcionado en el tiempo y potencia de cálculo requeridos para cada rasgo o dimensión adicional en los datos de entrenamiento.
El inconveniente de las redes neurales puede ser superado utilizando otro tipo de máquina aprendiz: la máquina de vectores de soporte. En términos generales, una máquina de vectores de soporte asocia vectores de entrada al espacio de rasgos de alta dimensión, a través de una función de asociación no lineal, escogida a priori. En este espacio de rasgos de alta dimensión, se construye un hiperplano separador óptimo. El hiperplano óptimo se utiliza entonces para determinar la realización de operaciones tales como separaciones de clases, ajuste de regresión o estimación de densidad.
Dentro de una máquina de vectores de soporte, la dimensión del espacio de rasgos puede ser muy alta. Por ejemplo, una función de asociación polinómica de cuarto grado causa que un espacio de entrada de dimensión 200 sea asociado a un espacio de rasgos de dimensión 1.600.000.000. El truco del núcleo y la dimensión de Vapnik-Chervonenkis ("VC") permiten que la máquina de vectores de soporte evite la "maldición de la dimensionalidad" que limita habitualmente otros procedimientos, y que derive eficazmente respuestas generalizables a partir de este espacio de rasgos de muy alta dimensión.
Si los vectores de entrenamiento están separados por el hiperplano óptimo (o hiperplano óptimo generalizado), el valor esperado de la probabilidad de cometer un error en un ejemplo de prueba está acotado por los ejemplos en el conjunto de entrenamiento. Esta cota no depende de la dimensión del espacio de rasgos, la norma del vector de coeficientes ni la cota del número de los vectores de entrada. Por lo tanto, si el hiperplano óptimo puede construirse a partir de un pequeño número de vectores de soporte con relación al tamaño del conjunto de entrenamiento, la capacidad de generalización será alta, incluso en el espacio de dimensión infinita.
Así pues, las máquinas de vectores de soporte proporcionan una solución deseable para el problema de analizar una imagen digital a partir de vastas cantidades de datos de entrada. Sin embargo, la capacidad de una máquina de vectores de soporte para analizar una imagen digitalizada a partir de un conjunto de datos está limitada en proporción a la información incluida dentro del conjunto de datos de entrenamiento. En consecuencia, existe una necesidad para un sistema y procedimiento para preprocesar datos a fin de aumentar los datos de entrenamiento para maximizar el análisis por ordenador de una imagen por parte de la máquina de vectores de soporte.
Breve resumen de la invención
El sistema y procedimiento para analizar imágenes digitalizadas utiliza una máquina aprendiz en general, y una máquina de vectores de soporte en particular. Un conjunto de datos de entrenamiento, que consiste en datos de imágenes digitales generados a partir de la formación de imágenes de un asunto biológico o médico con un resultado conocido, es preprocesado para permitir la aplicación más ventajosa de la máquina aprendiz. Para los fines de la presente invención, la imagen puede derivarse ex vivo, p. ej., una muestra de tejido vista a través de un microscopio, o in vivo, p. ej., una imagen de proyección de rayos X. Cada punto de datos de entrenamiento comprende un vector con una o más coordenadas. El preprocesamiento del conjunto de datos de entrenamiento comprende identificar puntos de datos faltantes o erróneos, y emprender las etapas adecuadas para corregir los datos defectuosos o, según corresponda, quitar la observación, o el campo entero, del ámbito del problema. El preprocesamiento del conjunto de datos de entrenamiento también puede comprender añadir dimensión a cada punto de datos de entrenamiento, añadiendo una o más coordenadas nuevas al vector. Las nuevas coordenadas añadidas al vector pueden derivarse aplicando una transformación a una o más de las coordenadas originales. La transformación puede basarse en conocimiento experto, o bien puede derivarse por cálculo. En una situación en que el conjunto de datos de entrenamiento comprende una variable continua, la transformación puede comprender categorizar óptimamente la variable continua del conjunto de datos de entrenamiento.
La máquina de vectores de soporte se entrena utilizando el conjunto de datos de entrenamiento preprocesados. De esta manera, las representaciones adicionales de los datos de entrenamiento proporcionadas por el preprocesamiento mejoran la capacidad de la máquina aprendiz para analizar los datos de las mismas. En el contexto particular de las máquinas de vectores de soporte, cuanto mayor sea la dimensión del conjunto de entrenamiento, mayor será la calidad de las generalizaciones que puedan derivarse del mismo.
La presente invención proporciona un procedimiento implementado en ordenador para el análisis de una imagen digitalizada, comprendiendo el procedimiento:
(a)
ingresar un conjunto de entrenamiento de datos de imágenes y un conjunto de prueba de datos de imágenes a un procesador, para ejecutar una pluralidad de subsistemas de detección, estando cada subsistema de detección adaptado para detectar y clasificar uno entre una pluralidad de distintos rasgos de interés, en donde cada rasgo de interés tiene una pluralidad de posibles características de rasgo, y en donde cada subsistema de detección genera una salida para su correspondiente rasgo de interés, en donde cada subsistema de detección ejecuta las etapas de:
(i)
preprocesar cada conjunto de datos de imágenes para detectar y extraer la presencia de un rasgo de interés dentro de los datos de imágenes;
(ii)
entrenar y probar al menos una máquina de vectores de soporte, con al menos un núcleo, utilizando los conjuntos preprocesados de datos imágenes para clasificar el rasgo de interés extraído en al menos una entre una pluralidad de clases de posibles características de rasgos;
(iii)
comparar los rasgos clasificados a partir del conjunto de prueba de datos de imágenes con los resultados conocidos del conjunto de prueba de datos de imágenes, a fin de determinar si se obtiene una solución óptima;
(iv)
repetir las etapas (ii) y (iii) si no se obtiene la solución óptima;
(v)
si se obtiene la solución óptima, ingresar un conjunto real de datos de imágenes al procesador;
(vi)
preprocesar el conjunto real de datos de imágenes para detectar y extraer la presencia de rasgos de interés dentro de los datos de imágenes;
(vii)
clasificar el rasgo, o rasgos, de interés; y
(viii)
generar una salida que comprende el rasgo, o rasgos, de interés clasificado(s) a partir del conjunto real de datos de imágenes;
(b)
ingresar las salidas de cada uno de la pluralidad de subsistemas en una máquina global de vectores de soporte que tenga al menos un núcleo; y
(c)
generar una única salida global que comprenda una clasificación de la imagen digitalizada.
\vskip1.000000\baselineskip
Un procedimiento para el análisis de imágenes con una pluralidad de subsistemas de detección, adaptados a distintos rasgos de interés, incluyendo los subsistemas máquinas de vectores de soporte, se da a conocer en Bazzani et al.: "Detección automática de microcalcificaciones arracimadas en mamogramas digitales utilizando un clasificador SVM", 8º Simposio Europeo de Redes Neurales Artificiales, ESANN 2000, 26-28 de abril de 2000, Brujas, Bélgica.
Cuando el análisis a realizar a partir de los datos se refiere a una regresión o estimación de densidad, o allí donde la salida de entrenamiento comprende una variable continua, la salida de entrenamiento puede posprocesarse categorizando óptimamente la salida de entrenamiento para derivar categorizaciones a partir de la variable continua.
Un conjunto de datos de prueba se preprocesa de la misma manera en que lo fue el conjunto de datos de entrenamiento. Entonces, la máquina aprendiz entrenada se prueba utilizando el conjunto de datos de prueba preprocesados. Una salida de prueba de la máquina aprendiz entrenada puede posprocesarse para determinar si la salida de prueba es una solución óptima. El posprocesamiento de la salida de prueba puede comprender interpretar la salida de prueba en un formato que pueda compararse con el conjunto de datos de prueba. Etapas alternativas de posprocesamiento pueden mejorar la interpretabilidad humana o la adecuación para el procesamiento adicional de los datos de salida.
En el contexto de una máquina de vectores de soporte, se proporciona un procedimiento para la selección de un núcleo antes de entrenar la máquina de vectores de soporte. La selección de un núcleo puede basarse en un conocimiento previo del problema específico que se está abordando, o sobre el análisis de las propiedades de cualquier dato disponible a utilizar con la máquina aprendiz, y habitualmente depende de la naturaleza del análisis a realizar a partir de los datos. Optativamente, puede aplicarse un proceso iterativo que compara las salidas de entrenamiento posprocesadas, o las salidas de prueba, a fin de tomar una determinación en cuanto a qué configuración proporciona la solución óptima. Si la solución de prueba no es la solución óptima, la selección del núcleo puede ajustarse, y la máquina de vectores de soporte puede ser entrenada y probada de nuevo. Cuando se determina que se ha identificado la solución óptima, puede recolectarse y preprocesarse un conjunto de datos reales, es decir, un conjunto de datos con resultados desconocidos, de la misma manera que el conjunto de datos de entrenamiento. El conjunto de datos reales preprocesados se ingresa a la máquina aprendiz para su procesamiento. La salida real de la máquina aprendiz puede posprocesarse luego, interpretando la salida real en un clasificador alfanumérico derivado por cálculo.
En una realización ejemplar, se proporciona un sistema para el análisis de una imagen digitalizada, a partir de datos digitalizados, utilizando una máquina de vectores de soporte. El sistema ejemplar comprende un dispositivo de almacenamiento para almacenar una base de datos que contiene un conjunto de datos de entrenamiento y un conjunto de datos de prueba, comprendiendo cada conjunto de datos datos de imágenes, y un procesador para ejecutar una o más máquinas de vectores de soporte. El procesador también es operable para recolectar el conjunto de datos de entrenamiento de la base de datos, preprocesar el conjunto de datos de entrenamiento para mejorar cada uno entre una pluralidad de puntos de datos de entrenamiento, entrenar la máquina de vectores de soporte utilizando el conjunto de datos de entrenamiento preprocesados, recolectar el conjunto de datos de prueba de la base de datos, preprocesar el conjunto de datos de prueba de la misma manera en que lo fue el conjunto de datos de entrenamiento, probar la máquina entrenada de vectores de soporte utilizando el conjunto de datos de prueba preprocesados y, en respuesta a la recepción de la salida de prueba de la máquina entrenada de vectores de soporte, posprocesar la salida de prueba a fin de determinar si la salida de prueba es una solución óptima. El sistema ejemplar también puede comprender un dispositivo de comunicaciones para recibir el conjunto de datos de prueba y el conjunto de datos de entrenamiento desde una fuente remota. En tal caso, el procesador puede ser operable para almacenar el conjunto de datos de entrenamiento en el dispositivo de almacenamiento antes del preprocesamiento del conjunto de datos de entrenamiento, y almacenar el conjunto de datos de prueba en el dispositivo de almacenamiento antes del preprocesamiento del conjunto de datos de prueba. El sistema ejemplar también puede comprender un dispositivo de visualización para visualizar los datos de prueba posprocesados. El procesador del sistema ejemplar puede ser adicionalmente operable para llevar a cabo cada función adicional anteriormente descrita. El dispositivo de comunicaciones puede ser adicionalmente operable para enviar un clasificador alfanumérico derivado por cálculo a una fuente remota.
En una secuencia ejemplar de análisis de imágenes utilizando máquinas aprendices basadas en núcleo, en particular, máquinas de vectores de soporte, los datos de imágenes digitalizadas se ingresan al procesador, donde un componente de detección identifica las áreas (objetos) de interés particular en la imagen y, por segmentación, separa esos objetos del fondo. Un componente de extracción de rasgos formula valores numéricos relevantes a la tarea de clasificación a partir de los objetos segmentados. Los resultados de las etapas de análisis precedentes se ingresan a un clasificador de máquina de vectores de soporte, que produce una salida que puede consistir en un índice que discrimina entre dos posibles diagnósticos, o alguna otra salida en el formato de salida deseado. Pueden incluirse máquinas adicionales de vectores de soporte para asistir a los anteriores componentes de segmentación o de extracción de rasgos.
En una realización preferida, se ingresan datos de imágenes digitalizados en una pluralidad de subsistemas, teniendo cada subsistema una o más máquinas aprendices basadas en núcleos. Cada subsistema analiza los datos relevantes a un rasgo o característica distintos hallados dentro de la imagen. Por ejemplo, utilizando el ejemplo del análisis de mamograma, un subsistema puede buscar y clasificar calcificaciones, otro subsistema puede buscar y clasificar masas, mientras que un tercer sistema busca y clasifica distorsiones estructurales. Una vez que cada subsistema completa su análisis y clasificación, la salida para todos los subsistemas se ingresa a un analizador global basado en núcleos, por ejemplo, de una máquina de vectores de soporte, que combina los datos para hacer un diagnóstico, tomar una decisión u otra acción que utilice el conocimiento obtenido a partir de la imagen.
Procedimientos específicos para el preprocesamiento de datos y el entrenamiento de máquinas de vectores de soporte se describen en las Patentes Estadounidenses Nº 6.157.921 y 6.128.608.
Para el procesamiento de datos de imágenes, el preprocesamiento puede incluir el uso de transformaciones conocidas que faciliten la extracción de los datos útiles. Tales transformaciones pueden incluir, pero no se limitan a, transformadas de Fourier, transformadas de ondículas, transformadas de Radon y transformadas de Hough.
Breve descripción de los dibujos
Realizaciones ejemplares de la presente invención se describirán de aquí en más con referencia a los dibujos enumerados a continuación, en los cuales los numerales iguales indican elementos iguales en todas las figuras.
La Fig. 1 es un diagrama de flujo que ilustra un procedimiento general ejemplar para analizar datos utilizando una máquina aprendiz.
La Fig. 2 es un diagrama de flujo que ilustra un procedimiento ejemplar para analizar datos utilizando una máquina de vectores de soporte.
La Fig. 3 es un diagrama de flujo que ilustra un procedimiento ejemplar de categorización óptima que puede utilizarse en una configuración autónoma o conjuntamente con una máquina aprendiz para técnicas de preprocesamiento o de posprocesamiento.
La Fig. 4 ilustra un conjunto ejemplar de datos no expandidos que puede ingresarse a una máquina de vectores de soporte.
Las Figs. 5a y 5b son diagramas de rasgos en escala de grises en una imagen, donde la Fig. 5a ilustra la imagen no procesada y la Fig. 5b ilustra la imagen después del preprocesamiento de segmentación.
La Fig. 6 ilustra un conjunto ejemplar de datos expandidos que puede ingresarse a una máquina de vectores de soporte.
La Fig. 7 ilustra la entrada y salida ejemplares para una aplicación autónoma del procedimiento de categorización óptima de la Fig. 3.
La Fig. 8 es un diagrama funcional en bloques que ilustra un entorno operativo ejemplar para una realización ejemplar de la presente invención.
La Fig. 9 es un diagrama funcional en bloques que ilustra un sistema jerárquico de múltiples máquinas de vectores de soporte.
La Fig. 10 es un diagrama funcional en bloques que ilustra un flujo básico de procesos para el análisis de imágenes, utilizando máquinas de vectores de soporte.
La Fig. 11 es un diagrama funcional en bloques que ilustra un sistema ejemplar de análisis de imágenes con múltiples subsistemas de detección, para su uso en el análisis de mamogramas.
La Fig. 12 es una imagen combinada de curvas y bits que ilustra la asociación de niveles de gris con una curva de niveles de gris.
La Fig. 13 es una imagen de mapa de bits a continuación del procesamiento de extracción de rasgos de imágenes de calcificación contenidas en un mamograma.
La Fig. 14 es un diagrama que ilustra una transformación de preprocesamiento para convertir segmentos de imagen a una forma de dimensión fija.
Descripción detallada de las realizaciones preferidas
La siguiente descripción detallada utiliza un cierto número de acrónimos que son generalmente bien conocidos en la tecnología. Si bien las definiciones se proporcionan habitualmente con la primera instancia de cada acrónimo, para mayor comodidad, la Tabla 1 a continuación proporciona una lista de los acrónimos y abreviaturas utilizados en el presente documento, junto con sus respectivas definiciones.
TABLA 1
1
\vskip1.000000\baselineskip
La presente invención proporciona procedimientos mejorados para analizar imágenes utilizando máquinas aprendices. Según se utiliza aquí, el término "imagen" significa el producto de cualquier procedimiento de formación de imágenes, ya sea que la imagen se obtenga a través de procedimientos visuales convencionales, p. ej., la fotografía, o por cualquier otro procedimiento de detectar una señal electromagnética que incide sobre un medio o dispositivo de grabación, p. ej., radiación infrarroja que incide sobre un detector infrarrojo. De especial interés en los ejemplos descritos son los procedimientos de formación de imágenes médicas, incluyendo, pero sin limitarse a, los rayos X, la PET (tomografía por emisión de positrones), la MRI (formación de imágenes por resonancia magnética), la CT (tomografía computada), la SPECT (tomografía computada por emisión de fotón único), la cámara gamma, la microscopía confocal (también denominada "visual"), la formación de imágenes por impedancia eléctrica y el ultrasonido. Para los fines de la presente invención, la imagen puede derivarse ex vivo, p. ej., una muestra de tejido visualizada a través de un microscopio, o in vivo, p. ej., una imagen por proyección de rayos X. Para procedimientos de formación de imágenes que generan salidas digitales, la salida analógica habrá sido digitalizada, bien por escaneo digital o bien convirtiendo una señal analógica en una señal digital, de forma tal que la imagen de entrada a analizar según la presente invención se suponga en forma digital.
Si bien existen varios ejemplos de máquinas aprendices y se esperan avances en este campo, las realizaciones ejemplares de la presente invención se centran en la máquina de vectores de soporte.
Un primer aspecto de la presente invención facilita el análisis de imágenes preprocesando, optativamente, los datos antes de utilizar los datos para entrenar a una máquina aprendiz y / o posprocesando, optativamente, la salida de una máquina aprendiz. En términos generales, el preprocesamiento de datos comprende reformatear o aumentar los datos a fin de permitir que la máquina aprendiz se aplique de la manera más ventajosa. Por ejemplo, la evaluación de una o más características importantes dentro de una imagen puede implicar el preprocesamiento para crear un mapa de bits a partir de la imagen original en escala de grises, o bien los rasgos de tamaños variables pueden requerir ser convertidos, es decir, normalizados, a una forma dimensional fija antes del procesamiento, a fin de permitir la comparación de calidades tales como contorno, forma o densidad.
De manera similar al preprocesamiento, el posprocesamiento implica interpretar la salida de una máquina aprendiz a fin de descubrir las características significativas de la misma. Las características significativas a comprobar a partir de la salida pueden ser específicas para el problema o para los datos. El posprocesamiento implica la interpretación de la salida en una forma tal que, por ejemplo, pueda ser entendida por, o sea útil de otra manera a, un observador humano, o la conversión de la salida a una forma que pueda ser inmediatamente recibida por otro dispositivo, p. ej., para su archivo o transmisión.
La Fig. 1 es un diagrama de flujo que ilustra un procedimiento general 100 para analizar datos utilizando máquinas aprendices. El procedimiento 100 comienza en el bloque 101 de inicio y avanza hasta la etapa 102, donde se formaliza un problema específico para la aplicación del análisis a través del aprendizaje de una máquina. Es especialmente importante una formulación adecuada de la salida deseada de la máquina aprendiz. Por ejemplo, al predecir las prestaciones futuras de un instrumento de equidad individual, o de un índice de mercado, es probable que una máquina aprendiz logre mejores prestaciones al predecir el cambio futuro esperado en lugar de predecir el nivel futuro de precios. La expectativa futura de precios puede derivarse más tarde en una etapa del posprocesamiento, como se expondrá más adelante en esta especificación.
Después de la formalización del problema, la etapa 103 aborda la recolección de datos de entrenamiento. Los datos de entrenamiento comprenden un conjunto de puntos de datos con características conocidas. Los datos de entrenamiento pueden recolectarse de una o más fuentes locales y/o remotas. La recolección de datos de entrenamiento puede lograrse manualmente, o por medio de un proceso automatizado, tal como los conocidos procedimientos de transferencia electrónica de datos. En consecuencia, una realización ejemplar de la máquina aprendiz, para su uso conjuntamente con la presente invención, puede implementarse en un entorno informático en red. Los entornos operativos ejemplares para implementar diversas realizaciones de la máquina aprendiz se describirán en detalle con respecto a las Figs. 10-11.
En la etapa 104, los datos de entrenamiento recolectados se preprocesan optativamente a fin de permitir que la máquina aprendiz se aplique de la manera más ventajosa a la extracción del conocimiento inherente a los datos de entrenamiento. Durante esta etapa de preprocesamiento, los datos de entrenamiento pueden expandirse optativamente a través de transformaciones, combinaciones o la manipulación de medidas individuales o múltiples dentro de los registros de los datos de entrenamiento. Según se emplea aquí, por "expansión de datos" se entiende la alteración de la dimensión de los datos de entrada, cambiando el número de observaciones disponibles para determinar cada punto de entrada (alternativamente, esto podría describirse como añadir o borrar columnas dentro de una tabla de la base de datos). A modo de ilustración, un punto de datos puede comprender las coordenadas (1, 4, 9). Una versión expandida de este punto de datos puede dar como resultado las coordenadas (1, 1, 4, 2, 9, 3). En este ejemplo, puede verse que las coordenadas añadidas al punto de datos expandidos se basan en una transformación por raíz cuadrada de las coordenadas originales. Añadiendo dimensiones al punto de datos, este punto de datos expandido proporciona una representación variada de los datos de entrada que es potencialmente más significativo para el análisis por parte de una máquina aprendiz. La expansión de datos, en este sentido, brinda oportunidades para que las máquinas aprendices analicen datos no inmediatamente evidentes en los datos de entrenamiento no expandidos.
La expansión de datos puede comprender aplicar cualquier tipo de transformación significativa a los datos, y añadir esas transformaciones a los datos originales. Los criterios para determinar si una transformación es significativa pueden depender de los mismos datos de entrada y/o del tipo de conocimiento que se busca en los datos. Los tipos ilustrativos de transformaciones de datos incluyen: añadido de información experta; etiquetado; conversión binaria, p. ej., un mapa de bits; transformaciones, tales como la de Fourier, de ondículas, de Radon; análisis de componentes principales y análisis de componentes principales del núcleo, así como el agrupamiento; el ajuste; la normalización, el análisis probabilístico y estadístico; las pruebas de significación; las pruebas de fuerza; la búsqueda de regularidades bidimensionales; la Modelización Oculta de Markov; la identificación de relaciones de equivalencia; la aplicación de tablas de contingencia; la aplicación de principios de la teoría de grafos; la creación de mapas vectoriales; la suma, resta, multiplicación, división, aplicación de ecuaciones polinómicas y otras transformaciones algebraicas; la identificación de la proporcionalidad; la determinación de potencia discriminatoria; etc., En el contexto de los datos médicos, las transformaciones potencialmente significativas incluyen: asociación con gamas estándar conocidas de referencia médica; el truncado fisiológico; las combinaciones fisiológicas; las combinaciones bioquímicas; la aplicación de reglas heurísticas; las determinaciones de criterios de diagnóstico; los sistemas de ponderación clínica; las transformaciones diagnósticas; las transformaciones clínicas; la aplicación de conocimiento experto; las técnicas de etiquetado; la aplicación de otros conocimientos de dominio; el conocimiento de red Bayesiana; etc. Específicamente, con respecto a la formación de imágenes médicas, las transformaciones pueden incluir técnicas de segmentación para reconocer regiones homogéneas dentro de una imagen como distintas y pertenecientes a distintos objetos. Las técnicas de segmentación de imágenes incluyen el establecimiento de umbrales de histograma, la segmentación basada en bordes, los enfoques basados en árboles/grafos, el crecimiento regional, la contracción de masa, la agrupación en racimos, los enfoques probabilísticos o Bayesianos, las redes neurales para la segmentación, y otras. Estas y otras transformaciones, así como las combinaciones de las mismas, se les ocurrirán a aquellos medianamente versados en la tecnología.
Aquellos versados en la tecnología también deberían reconocer que las transformaciones de datos pueden llevarse a cabo sin añadir dimensiones a los puntos de datos. Por ejemplo, un punto de datos puede comprender las coordenadas (A, B. C). Una versión transformada de este punto de datos puede dar como resultado las coordenadas (1, 2, 3), donde la coordenada "1" tiene alguna relación conocida con la coordenada "A", la coordenada "2" tiene alguna relación conocida con la coordenada "B" y la coordenada "3" tiene alguna relación conocida con la coordenada "C". Puede requerirse una transformación de letras a números, por ejemplo, si las letras no son comprendidas por una máquina aprendiz. Otros tipos de transformaciones son posibles sin añadir dimensiones a los puntos de datos, incluso con respecto a datos que están originalmente en forma numérica. Además, debería apreciarse que el preprocesamiento de datos para añadir significado a los mismos puede implicar analizar datos incompletos, corrompidos o "sucios" en algún otro sentido. Una máquina aprendiz no puede procesar datos "sucios" de manera significativa. Así, una etapa de preprocesamiento puede implicar limpiar o filtrar un conjunto de datos a fin de quitar, reparar o reemplazar puntos de datos sucios.
Volviendo a la Fig. 1, el procedimiento ejemplar 100 continúa en la etapa 106, donde la máquina aprendiz se entrena utilizando los datos preprocesados. Como es conocido en la técnica, una máquina aprendiz se entrena ajustando sus parámetros operativos hasta que se alcance una salida de entrenamiento deseable. La determinación de si una salida de entrenamiento es deseable puede lograrse manual o automáticamente, comparando la salida de entrenamiento con las características conocidas de los datos de entrenamiento. Una máquina aprendiz se considera entrenada cuando su salida de entrenamiento está dentro de un umbral de error predeterminado con respecto a las características conocidas de los datos de entrenamiento. En ciertas situaciones, puede ser deseable, si no necesario, posprocesar la salida de entrenamiento de la máquina aprendiz en la etapa 107. Como se ha mencionado, el posprocesamiento de la salida de una máquina aprendiz implica interpretar la salida en un formato significativo. En el contexto de un problema de regresión, por ejemplo, puede ser necesario determinar categorizaciones de gama para la salida de una máquina aprendiz, a fin de determinar si los puntos de datos de entrada fueron correctamente categorizados. En el ejemplo de un problema de reconocimiento de patrones, a menudo no es necesario posprocesar la salida de entrenamiento de una máquina aprendiz.
En la etapa 108, los datos de prueba se recolectan optativamente, como preparación para la prueba de la máquina aprendiz entrenada. Los datos de prueba pueden recogerse de una o más fuentes locales y/o remotas. En la práctica, los datos de prueba y los datos de entrenamiento pueden recogerse de la(s) misma(s) fuente(s) a la vez. Así, los conjuntos de datos de prueba y de datos de entrenamiento pueden dividirse a partir de un conjunto común de datos, y almacenarse en un medio de almacenamiento local para su empleo como distintos conjuntos de datos de entrada para una máquina aprendiz. Independientemente de cómo se recolecten los datos de prueba, cualquier dato de prueba utilizado debe preprocesarse en la etapa 110 de la misma manera en que lo fueron los datos de entrenamiento. Como debería ser evidente para aquellos versados en la tecnología, una prueba adecuada del aprendizaje sólo puede lograrse utilizando datos de prueba del mismo formato que los datos de entrenamiento. Luego, en la etapa 112, la máquina aprendiz se prueba utilizando los datos de prueba preprocesados, si acaso. La salida de prueba de la máquina aprendiz se posprocesa optativamente en la etapa 114, a fin de determinar si los resultados son deseables. Nuevamente, la etapa de posprocesamiento implica interpretar la salida de prueba en un formato significativo. El formato significativo puede ser el que es inmediatamente entendido por un humano, o uno que es compatible con otro procesador. Independientemente de esto, la salida de prueba debe posprocesarse en un formato que pueda compararse con los datos de prueba, a fin de determinar si los resultados fueron deseables. Los ejemplos de etapas de posprocesamiento incluyen, pero no se limitan a, lo siguiente: determinaciones de categorización óptima, técnicas de ajuste (lineal y no lineal), transformación (lineal y no lineal) y estimaciones de probabilidad. El procedimiento 100 termina en la etapa 116.
La Fig. 2 es un diagrama de flujo que ilustra un procedimiento ejemplar 200 para mejorar el conocimiento que puede descubrirse a partir de datos, utilizando un tipo específico de máquina aprendiz conocida como una máquina de vectores de soporte (SVM). Una SVM implementa un algoritmo especializado para proporcionar generalización al estimar una función multidimensional a partir de una colección limitada de datos. Una SVM puede ser especialmente útil para resolver problemas de estimación de dependencia. Más específicamente, una SVM puede utilizarse con precisión para estimar funciones indicadoras (p. ej., problemas de reconocimiento de patrones) y funciones de valores reales (p. ej., problemas de aproximación funcional, problemas de estimación de regresión, problemas de estimación de densidad y la resolución de problemas inversos). La SVM fue originalmente desarrollada por Vladimir N. Vapnik. Los conceptos subyacentes a la SVM se explican en detalle en su libro, titulado Teoría Estadística del Aprendizaje (John Wiley e Hijos, Inc. 1998).
En consecuencia, se supone familiaridad con las SVM y la terminología utilizada con las mismas a lo largo de toda esta especificación.
El procedimiento ejemplar 200 comienza en el bloque 201 de inicio y avanza hasta la etapa 202, donde se formula un problema, y luego a la etapa 203, donde se recolecta un conjunto de datos de entrenamiento. Como se describió con referencia a la Fig. 1, los datos de entrenamiento pueden recolectarse desde una o más fuentes locales y/o remotas, a través de un proceso manual o automatizado. En la etapa 204 los datos de entrenamiento se preprocesan optativamente. Nuevamente, el preproceso de datos comprende mejorar su significado dentro de los datos de entrenamiento, limpiando los datos, transformando los datos y/o expandiendo los datos. Aquellos versados en la tecnología deberían apreciar que las SVM son capaces de procesar datos de entrada con dimensiones extremadamente grandes. De hecho, cuanto mayor sea la dimensión de los datos de entrada, mejores serán las generalizaciones que una SVM es capaz de calcular. Por lo tanto, si bien son posibles transformaciones de datos de entrenamiento que no expanden los datos de entrenamiento, en el contexto específico de las SVM es preferible que los datos de entrenamiento se expandan añadiendo información significativa a los mismos.
En la etapa 206 se selecciona un núcleo para la SVM. Como se conoce en la tecnología, distintos núcleos causarán que una SVM produzca grados variables de calidad en la salida para un conjunto dado de datos de entrada. Por lo tanto, la selección de un núcleo adecuado puede ser esencial para la calidad deseada de la salida de la SVM. En una realización de la máquina aprendiz, puede escogerse un núcleo sobre la base del conocimiento de prestaciones anteriores. Como se conoce en la tecnología, los núcleos ejemplares incluyen núcleos polinómicos, núcleos clasificadores de base radial, núcleos lineales, etc. En una realización alternativa, puede crearse un núcleo personalizado que es específico para el problema particular o el tipo de conjunto de datos. En otra realización más, las múltiples SVM pueden entrenarse y probarse simultáneamente, utilizando cada una un núcleo distinto. La calidad de las salidas para cada SVM simultáneamente entrenada y probada puede compararse utilizando una gran variedad de métricas seleccionables o ponderadas (véase la etapa 222) a fin de determinar el núcleo más deseable. En una realización preferida para el procesamiento de imágenes, se selecciona un núcleo de Fourier para abordar cuestiones de reconocimiento de formas geométricas. Este núcleo de Fourier, descrito en más detalle más adelante, es invariante por transformaciones de traslación y rotación.
Luego, en la etapa 208 se ingresan los datos de entrenamiento preprocesados a la SVM. En la etapa 210, la SVM se entrena utilizando los datos de entrenamiento preprocesados para generar un hiperplano óptimo. Optativamente, la salida de entrenamiento de la SVM puede posprocesarse luego en la etapa 211. Nuevamente, el posprocesamiento de la salida de entrenamiento puede ser deseable, o incluso necesario, en este punto, a fin de calcular debidamente las gamas o categorías para la salida. En la etapa 212 los datos de prueba se recolectan de manera similar a las descripciones anteriores de la recolección de datos. Los datos de prueba se preprocesan en la etapa 214 de la misma manera que los datos de entrenamiento anteriores. Luego, en la etapa 216, los datos de prueba preprocesados se ingresan a la SVM para su procesamiento, a fin de determinar si la SVM se entrenó de manera deseable. La salida de prueba se recibe desde la SVM en la etapa 218 y se posprocesa optativamente en la etapa 220.
Sobre la base de la salida de prueba posprocesada, se determina en la etapa 222 si un mínimo óptimo fue logrado por la SVM. Aquellos versados en la tecnología deberían apreciar que una SVM es operable para comprobar que una salida tenga un error global mínimo. Sin embargo, como se ha mencionado anteriormente, los resultados de salida de una SVM para un conjunto dado de datos variarán habitualmente con la selección del núcleo. Por lo tanto, hay de hecho múltiples mínimos globales que puedan ser comprobados por una SVM para un conjunto dado de datos. Como se emplea aquí, el término "mínimo óptimo" o "solución óptima" se refiere a un mínimo global seleccionado que se considera óptimo (p. ej., la solución óptima para un conjunto dado de criterios preestablecidos específicos para el problema) cuando se compara con otros mínimos globales comprobados por una SVM. En consecuencia, en la etapa 222, la determinación de si se ha comprobado el mínimo óptimo puede implicar comparar la salida de una SVM con un valor histórico o predeterminado. Tal valor predeterminado puede depender del conjunto de datos de prueba. Por ejemplo, en el contexto de un problema de reconocimiento de patrones, donde los puntos de datos son clasificados por una SVM como que tienen, o que no tienen, una cierta característica, un error mínimo global del 50% no sería óptimo. En este ejemplo, un mínimo global del 50% no es mejor que el resultado que se lograría arrojando una moneda para determinar si el punto de datos tenía esa característica. Como otro ejemplo, en el caso en que múltiples SVM se entrenan y se prueban simultáneamente con núcleos variables, las salidas para cada SVM pueden compararse con la salida de otra SVM para determinar la solución óptima práctica para ese conjunto específico de núcleos. La determinación de si se ha comprobado una solución óptima puede realizarse manualmente, o a través de un proceso de comparación automatizada.
Si se determina que el mínimo óptimo no ha sido alcanzado por la SVM entrenada, el procedimiento avanza a la etapa 224, donde se ajusta la selección del núcleo. El ajuste de la selección del núcleo puede comprender seleccionar uno o más nuevos núcleos, o ajustar parámetros del núcleo. Además, en el caso en que múltiples SVM fueron entrenadas y probadas simultáneamente, los núcleos seleccionados pueden reemplazarse o modificarse, mientras que los otros núcleos pueden reutilizarse con fines de control. Después de que se ajusta la selección del núcleo, el procedimiento 200 se repite a partir de la etapa 208, donde los datos de entrenamiento preprocesados se ingresan a la SVM con fines de entrenamiento. Cuando se determina en la etapa 222 que se ha alcanzado un mínimo óptimo, el procedimiento avanza a la etapa 226, conde los datos reales se recolectan de manera similar a lo anteriormente descrito. Por definición, los datos reales no han sido evaluados anteriormente, por lo que las características de salida deseables, que eran conocidas con respecto a los datos de entrenamiento y los datos de prueba, no se conocen.
En la etapa 228 los datos reales se preprocesan de la misma manera que para los datos de entrenamiento y los datos de prueba. En la etapa 230, los datos preprocesados reales se ingresan a la SVM para su procesamiento. La salida real de la SVM se recibe en la etapa 232 y se posprocesa en la etapa 234. En una realización de la máquina aprendiz, el posprocesamiento comprende convertir la salida de la SVM en un clasificador alfanumérico derivado por cálculo, para su interpretación por un humano o un ordenador. Preferiblemente, el clasificador alfanumérico comprende un único valor que es fácilmente comprendido por el humano o el ordenador. El procedimiento 200 termina en la etapa 236.
La Fig. 3 es un diagrama de flujo que ilustra un procedimiento ejemplar 300 de categorización óptima que puede utilizarse para preprocesar datos o posprocesar la salida de una máquina aprendiz. Adicionalmente, como se describirá más adelante, el procedimiento ejemplar de categorización óptima puede utilizarse como una técnica de categorización autónoma, independiente de las máquinas aprendices. El procedimiento ejemplar 300 de categorización óptima comienza en el bloque 301 de inicio y avanza hasta la etapa 302, donde se recibe un conjunto de datos de entrada. El conjunto de datos de entrada comprende una secuencia de muestras de datos de una variable continua. Las muestras de datos caen dentro de dos o más categorías de clasificación. Luego, en la etapa 304, se inicializan las variables de rastreo de contenedor y clase. Como se conoce en la tecnología, las variables de contenedor se refieren a la resolución, mientras que las variables de rastreo de clase se refieren al número de clasificaciones dentro del conjunto de datos. La determinación de los valores para la inicialización de las variables de contenedor y de rastreo de clase puede realizarse manualmente, o a través de un proceso automatizado, tal como un programa de ordenador para analizar el conjunto de datos de entrada. En la etapa 306, se calcula la entropía de datos para cada contenedor. La entropía es una cantidad matemática que mide la incertidumbre de una distribución aleatoria. En el procedimiento ejemplar 300, la entropía se emplea para calibrar las gradaciones de la variable de entrada, para que se alcance la máxima capacidad de clasificación.
El procedimiento 300 produce una serie de "cortes" en la variable continua, tales que la variable continua pueda dividirse en categorías discretas. Los cortes seleccionados por el procedimiento ejemplar 300 son óptimos en el sentido de que la entropía media de cada categoría discreta resultante está minimizada. En la etapa 308, se toma una determinación en cuanto a si se han situado todos los cortes dentro del conjunto de datos de entrada que comprende la variable continua. Si no se han situado todos los cortes, se prueban combinaciones secuenciales de contenedores para la determinación del corte en la etapa 310. A partir de la etapa 310, el procedimiento ejemplar 300 se reitera a través de la etapa 306 y vuelve a la etapa 308, donde nuevamente se determina si todos los cortes han sido situados dentro del conjunto de datos de entrada que comprende la variable continua. Cuando todos los cortes han sido situados, se evalúa la entropía para el sistema entero en la etapa 309, y se compara con resultados previos de pruebas de más, o menos, cortes. Si no puede concluirse que se ha determinado un estado de entropía mínima, entonces deben evaluarse otras posibles selecciones de corte, y el procedimiento avanza a la etapa 311. A partir de la etapa 311, se escoge una selección de cortes no probada hasta ese entonces, y el proceso anterior se repite a partir de la etapa 304. Cuando bien se han probado los límites de la resolución determinada por el ancho del contenedor, o bien se ha identificado la convergencia a una solución mínima, se emiten los criterios de clasificación óptima en la etapa 312, y el procedimiento ejemplar 300 de categorización óptima termina en la etapa 314.
El procedimiento 300 de categorización óptima aprovecha las técnicas de programación dinámica. Como se conoce en la tecnología, las técnicas de programación dinámica pueden utilizarse para mejorar significativamente la eficiencia de la resolución de ciertos problemas complejos, a través de una estructuración cuidadosa de un algoritmo para reducir cálculos redundantes. En el problema de categorización óptima, el enfoque directo de buscar exhaustivamente por todos los posibles cortes en los datos de la variable continua tendría como resultado un algoritmo de complejidad exponencial, y dejaría el problema como intratable incluso para entradas de tamaño moderado. Aprovechando la propiedad aditiva de la función objetivo, en este problema, la entropía media, el problema puede dividirse en una serie de subproblemas. Formulando adecuadamente subestructuras algebraicas para resolver cada subproblema, y almacenando las soluciones de los subproblemas, pueden identificarse y evitarse una cantidad significativa de cálculos redundantes. Como resultado de la utilización del enfoque de programación dinámica, el procedimiento ejemplar 300 de categorización óptima puede implementarse como un algoritmo que tiene una complejidad polinómica, que puede utilizarse para resolver problemas de gran tamaño.
Como se ha mencionado anteriormente, el procedimiento ejemplar 300 de categorización óptima puede utilizarse en el preprocesamiento de datos y/o el posprocesamiento de la salida de una máquina aprendiz. Por ejemplo, como una etapa de transformación del preprocesamiento, el procedimiento ejemplar 300 de categorización óptima puede utilizarse para extraer información de datos en bruto. Como una técnica de posprocesamiento, puede emplearse el procedimiento ejemplar de categorización óptima de gama para determinar los valores óptimos de corte para los marcadores objetivamente basados en los datos, en lugar de depender de enfoques ad hoc. Como debería ser evidente, el procedimiento ejemplar 300 de categorización óptima tiene aplicaciones en el reconocimiento de patrones, la clasificación, los problemas de regresión, etc. El procedimiento ejemplar 300 de categorización óptima también puede utilizarse como una técnica de categorización autónoma, independiente de las SVM y otras máquinas aprendices. Se describirá una aplicación ejemplar autónoma del procedimiento 300 de categorización óptima con referencia a la Fig. 7.
En un ejemplo de preprocesamiento de datos utilizado en el análisis de imágenes, la segmentación de imágenes proporciona medios para aislar objetos del fondo a fin de enfatizar los rasgos salientes de la imagen original. Con bastante frecuencia, especialmente en aplicaciones médicas, dos o más objetos pueden solaparse o arracimarse entre sí. Por ejemplo, en el análisis de imágenes de gel bidimensionales, varios puntos pueden arracimarse. En la formación de imágenes celulares, las células pueden solaparse. En los mamogramas, las calcificaciones y las masas pueden solaparse. En tales casos, la separación de los objetos es crucial en un sistema de análisis efectivo.
Con referencia a la Fig. 5a, se ilustran dos masas 502, 504 parcialmente solapadas, representadas como una imagen en escala de grises. En una realización ejemplar, se aplica iterativamente un modelo de "gravitación" a la imagen de escala de grises, para contraer las masas. En la imagen digital, los valores de píxeles se visualizan como valores de "masa", y las fuerzas gravitacionales entre las masas se utilizan para los movimientos de contracción. El proceso es análogo al proceso de la formación de estrellas y planetas. Las masas 502, 504, inicialmente ampliamente dispersas, se contraen bajo el modelo de gravitación hacia los respectivos centroides, para producir dos cuerpos densos y bien formados mostrados en la Fig. 5b como 502' y 504'. Este enfoque está inducido por los patrones naturales en la misma imagen. No se requiere ninguna información previa acerca de los datos específicos de la imagen. El modelo de gravitación es insensible al ruido y a los objetos ajenos, y es genérico en cuanto a que es aplicable a distintos tipos de imágenes, ajustando sencillamente el umbral para los movimientos de píxeles. Como principio general, el modelo de gravitación podría considerarse como un inverso de los algoritmos de crecimiento regional que se conocen en la segmentación de imágenes; sin embargo, en lugar de expandirse a partir de una "semilla", el objeto se contrae en una "semilla", de forma tal que puedan identificarse semillas distintas. Alternativamente, pueden utilizarse otros algoritmos conocidos de segmentación de imágenes para preprocesar los datos de imágenes, a fin de mejorar el proceso de análisis de imágenes.
La Fig. 4 ilustra un conjunto ejemplar 400 de datos no expandido, que puede utilizarse como entrada para una máquina de vectores de soporte. Este conjunto 400 de datos se denomina "no expandido" porque no se ha añadido al mismo ninguna información adicional. Según se muestra, el conjunto de datos no expandido comprende un conjunto 402 de datos de entrenamiento y un conjunto 404 de datos de prueba. Tanto el conjunto 402 de datos de entrenamiento no expandido como el conjunto 404 de datos de prueba no expandido comprenden puntos de datos, tales como el punto ejemplar 406 de datos, referidos a datos clínicos históricos de muestras de pacientes médicos. En este ejemplo, el conjunto 400 de datos puede utilizarse para entrenar una SVM para determinar si un paciente de cáncer de pecho padecerá una recurrencia o no.
Cada punto de datos incluye cinco coordenadas de entrada, o dimensiones, y una clasificación de salida mostrada como 406a-f, que representan datos médicos recolectados para cada paciente. En particular, la primera coordenada 406a representa la "Edad", la segunda coordenada 406b represente el "Nivel de Receptor de Estrógeno", la tercera coordenada 406c representa el "Nivel Receptor de Progesterona", la cuarta coordenada 406d representa el "Total de Nodos Linfáticos Extraídos", la quinta coordenada 406e representa los "Nodos Linfáticos Positivos (Cancerosos) Extraídos" y la clasificación 406f de salida representa la "Clasificación de Recurrencia". La característica conocida importante de los datos 400 es la clasificación 406f de salida (Clasificación de Recurrencia) que, en este ejemplo, indica si el paciente médico de la muestra respondió al tratamiento favorablemente, sin recurrencia de cáncer
("-1"), o si respondió al tratamiento negativamente, con recurrencia de cáncer ("1"). Esta característica conocida se utilizará para aprender, mientras que el procesamiento de los datos de entrenamiento en la SVM se utilizará de forma evaluativa después de que los datos de prueba ingresen a la SVM, creando así una prueba "a ciegas", y será obviamente desconocida en los datos reales de los pacientes médicos actuales.
La Tabla 2 proporciona una salida de prueba ejemplar de una SVM entrenada con el conjunto 402 de datos de entrenamiento no expandido, y probada con el conjunto 404 de datos no expandidos mostrados en la Fig. 4.
\vskip1.000000\baselineskip
TABLA 2
2
La salida de prueba ha sido posprocesada para que sea comprensible por un humano o un ordenador. Según la tabla, la salida de prueba muestra que 24 muestras totales (puntos de datos) fueron examinados por la SVM, y que la SVM identificó incorrectamente cuatro de ocho muestras positivas (50%), es decir, fueron halladas negativas para una muestra positiva, e identificó incorrectamente 6 de dieciséis muestras negativas (37,5%), es decir, fueron halladas positivas para una muestra negativa.
La Fig. 6 ilustra un conjunto ejemplar 600 de datos expandidos que puede utilizarse como entrada para una máquina de vectores de soporte. Este conjunto 600 de datos se denomina "expandido" porque se ha añadido al mismo, información adicional. Obsérvese que, aparte de la información añadida, el conjunto 600 de datos expandidos es idéntico al conjunto 400 de datos no expandidos mostrados en la Fig. 4. La información adicional suministrada al conjunto de datos expandidos ha sido provista utilizando el procedimiento ejemplar 300 de categorización óptima de gama, descrito con referencia a la Fig. 3. Según se muestra, el conjunto de datos expandidos comprende un conjunto 602 de datos de entrenamiento y un conjunto 604 de datos de prueba. Tanto el conjunto 602 de datos de entrenamiento expandido como el conjunto 604 de datos de prueba expandidos comprenden puntos de datos, tales como el punto ejemplar 606 de datos, referidos a datos históricos de muestras de pacientes médicos. Nuevamente, el conjunto 600 de datos puede utilizarse para entrenar una SVM para que aprenda si un paciente de cáncer de pecho padecerá una recurrencia de la enfermedad.
A través de la aplicación del procedimiento ejemplar 300 de categorización óptima, cada punto de datos expandido incluye veinte coordenadas (o dimensiones) 606a1-3 a 606e1-3, y una clasificación 606f de salida, que representan colectivamente los datos médicos y las transformaciones de categorización de los mismos para cada paciente. En particular, la primera coordenada 606a representa la "Edad", y las coordenadas segunda a cuarta 606a1 - 606a3 son variables que se combinan para representar una categoría de edad. Por ejemplo, puede categorizarse una gama de edades, por ejemplo, en categorías de "joven", "de edad media" y "viejo", con respecto a la gama de edades presentes en los datos. Según se muestra, puede utilizarse una cadena de variables "0" (606a1), "0" (606a2), "1" (606a3) para indicar que un cierto valor de edad está categorizado como "viejo". De manera similar, una cadena de variables "0" (606a1), "1" (606a2), "0" (606a3) puede utilizarse para indicar que un cierto valor de edad está categorizado como "de edad media". Además, puede utilizarse una cadena de variables "1" (606a1), "0" (606a2), "0" (606a1) para indicar que un cierto valor de edad está categorizado como "joven". A partir de una inspección de la Fig. 6, puede verse que la categorización óptima de la gama de valores 606a de "Edad", utilizando el procedimiento ejemplar 300, fue determinado como 31-33 = "joven", 34 = "de edad media" y 35-49 = "viejo". Las otras coordenadas, esto es, la coordenada 606b "Nivel de Receptores de Estrógeno", la coordenada 606c "Nivel de Receptor de Progesterona", la coordenada 606d "Total de Nódulos Linfáticos Extraídos" y la coordenada 606e "Nodos Linfáticos Positivos (Cancerosos) Extraídos" han sido todos categorizados óptimamente de manera similar.
La Tabla 3 proporciona una salida ejemplar de prueba expandida de una SVM entrenada con el conjunto 602 de datos de entrenamiento expandidos y probada con el conjunto 604 de datos expandidos mostrados en la Fig. 6.
\vskip1.000000\baselineskip
TABLA 3
3
La salida de prueba expandida ha sido posprocesada para que sea comprensible por un humano o un ordenador. Según se indica, la salida de prueba expandida muestra que 24 muestras totales (puntos de datos) fueron examinados por la SVM, y que la SVM identificó incorrectamente cuatro de ocho muestras positivas (50%) y que identificó incorrectamente cuatro de dieciséis muestras negativas (25%). En consecuencia, comparando esta salida de prueba expandida con la salida de prueba no expandida de la Tabla 2, puede verse que la expansión de los puntos de datos lleva a resultados mejorados (es decir, un menor error mínimo global), específicamente, una instancia reducida de pacientes que serían innecesariamente sometidos a tratamientos cancerosos de seguimiento.
La Fig. 7 ilustra una entrada y salida ejemplares para una aplicación autónoma del procedimiento 300 de categorización óptima descrito en la Fig. 3. En el ejemplo de la Fig. 8, el conjunto 801 de datos de entrada comprende un "Número de Nodos Linfáticos Positivos" 802 y una correspondiente "Clasificación de Recurrencia" 804. En este ejemplo, el procedimiento 300 de categorización óptima ha sido aplicado al conjunto 801 de datos de entrada a fin de localizar el punto óptimo de corte para la determinación del tratamiento para la recurrencia del cáncer, sobre la única base del número de nodos linfáticos positivos recolectados en una muestra de tejido posquirúrgica. El estándar clínico bien conocido es prescribir tratamiento para cualquier paciente con al menos tres nodos positivos. Sin embargo, el procedimiento 300 de categorización óptima demuestra que el corte óptimo, visto en la Tabla 4, sobre la base de los datos 801 de entrada, debería estar en el valor superior de 5,5 nodos linfáticos, lo que corresponde a una regla clínica que prescribe tratamientos de seguimiento en pacientes con al menos seis nodos linfáticos positivos.
TABLA 4
4
Como se muestra en la Tabla 5 a continuación, el punto aceptado de corte clínico de la tecnología anterior (\geq3,0) dio como resultado un 47% de recurrencias correctamente clasificadas y un 71% de no recurrencias correctamente clasificadas.
TABLA 5
5
En consecuencia, el 53% de las recurrencias fueron clasificadas incorrectamente (un tratamiento adicional, indebidamente, no fue recomendado) y el 29% de las no recurrencias fueron clasificadas incorrectamente (un tratamiento adicional fue incorrectamente recomendado). En contraste, el punto de corte determinado por el procedimiento 300 de categorización óptima (\geq5,5) dio como resultado un 33% de recurrencias correctamente clasificadas y un 97% de no recurrencias correctamente clasificadas. En consecuencia, el 67% de las recurrencias fueron incorrectamente clasificadas (un tratamiento adicional, indebidamente, no fue recomendado) y el 33% de las no recurrencias fueron incorrectamente clasificadas (un tratamiento adicional fue incorrectamente recomendado).
Como se muestra con este ejemplo, puede ser factible alcanzar una instancia mayor de identificación correcta de aquellos pacientes que pueden evitar los regímenes de tratamiento canceroso posquirúrgico, utilizando el procedimiento ejemplar 300 de categorización óptima. Incluso aunque el punto de corte determinado por el procedimiento 300 de categorización óptima haya producido un porcentaje moderadamente mayor de recurrencias incorrectamente clasificadas, produjo un porcentaje significativamente menor de no recurrencias incorrectamente clasificadas. Así, considerando la compensación, y advirtiendo que el objetivo del problema de optimización era evitar el tratamiento innecesario, los resultados del punto de corte determinado por el procedimiento 300 de categorización óptima son matemáticamente superiores a aquellos del punto de corte clínico de la tecnología anterior. Este tipo de información es, en potencia, extremadamente útil para proporcionar discernimiento adicional de pacientes que ponderan la elección entre someterse a tratamientos tales como la quimioterapia o arriesgarse a una recurrencia del cáncer de pecho.
La Tabla 6 es una comparación de salida ejemplar posprocesada de una primera máquina de vectores de soporte que comprende un núcleo lineal y una segunda máquina de vectores de soporte que comprende un núcleo polinómico.
\vskip1.000000\baselineskip
TABLA 6
6
La Tabla 6 demuestra que una variación en la selección de un núcleo puede afectar el nivel de calidad de la salida de una SVM. Según se muestra, la salida posprocesada de una primera SVM (Columna I) que comprende un núcleo de producto vectorial lineal indica que, para un conjunto de prueba dado de veinticuatro muestras, seis de las ocho muestras positivas fueron incorrectamente identificadas, y tres de dieciséis muestras negativas fueron incorrectamente identificadas. A modo de comparación, la salida posprocesada para una segunda SVM (Columna II) que comprende un núcleo polinómico indica que, para el mismo conjunto de prueba, sólo dos de las ocho muestras positivas fueron incorrectamente identificadas, y cuatro de dieciséis muestras negativas fueron identificadas. A modo de comparación, el núcleo polinómico produjo resultados significativamente mejorados con respecto a la identificación de muestras positivas, y produjo resultados sólo levemente peores con respecto a la identificación de muestras negativas. Así, como será evidente para aquellos versados en la tecnología, el error mínimo global para el núcleo polinómico es inferior que el error mínimo global para el núcleo lineal para este conjunto de datos.
La Fig. 8 y la siguiente exposición están concebidas para proporcionar una descripción breve y general de un entorno de cálculo adecuado para implementar el análisis de imágenes asistido por ordenador de la presente invención. Aunque el sistema mostrado en la Fig. 8 es un ordenador personal convencional 1000, aquellos versados en la tecnología reconocerán que la invención también puede implementarse utilizando otros tipos de configuraciones de sistemas de ordenadores. El ordenador 1000 incluye una unidad central 1022 de procesamiento, una memoria 1020 del sistema y un bus 1026 de Entrada/Salida ("E/S"). Un bus 1020 del sistema acopla la unidad central 1022 de procesamiento con la memoria 1020 del sistema. Un controlador 1023 de bus controla el flujo de datos por el bus 1026 de E/S y entre la unidad central 1022 de procesamiento y una gran variedad de dispositivos de E/S internos y externos. Los dispositivos de E/S conectados con el bus 1026 de E/S pueden tener acceso directo a la memoria 1020 del sistema, utilizando un controlador 1024 de Acceso Directo a Memoria ("DMA").
Los dispositivos de E/S están conectados con el bus 1026 de E/S mediante un conjunto de interfaces de dispositivo. Las interfaces de dispositivo pueden incluir tanto componentes de hardware como componentes de software. Por ejemplo, un controlador 1030 de disco rígido y un controlador 1032 de disco flexible, para leer o grabar medios extraíbles 1050, pueden conectarse con el bus 1026 de E/S, a través de los controladores 1040 de unidad de disco. Un controlador 1032 de disco óptico, para leer o grabar medios ópticos 1052, puede conectarse con el bus 1026 de E/S utilizando una Interfaz de Sistemas Pequeños de Ordenadores ("SCSI") 1041. Alternativamente, puede asociarse una interfaz IDE (Electrónica Integrada de Controlador, es decir, una interfaz de controlador de disco rígido para los PC), ATAPI (Interfaz de Paquetes de Anexo, es decir, una interfaz de controlador de CD-ROM y cinta) o EIDE (IDE Mejorado) a un controlador óptico, tal como puede ser el caso de un controlador de CD-ROM. Los controladores y sus medios asociados legibles por ordenador proporcionan almacenamiento no volátil para el ordenador 1000. Además de los medios legibles por ordenador anteriormente descritos, también pueden utilizarse otros tipos de medios legibles por ordenador, tales como controladores ZIP, o similares.
Un dispositivo 1053 de visualización, tal como un monitor, se conecta con el bus 1026 de E/S mediante otra interfaz, tal como un adaptador 1042 de vídeo. Una interfaz paralela 1043 conecta dispositivos periféricos sincrónicos, tales como una impresora láser 1056, con el bus 1026 de E/S. Una interfaz 1044 en serie conecta dispositivos de comunicación con el bus 1026 de E/S. Un usuario puede ingresar comandos e información al ordenador 1000 mediante la interfaz 1044 en serie, o bien empleando un dispositivo de entrada, tal como un teclado 1038, un ratón 1036 o un módem 1057. Otros dispositivos periféricos (no mostrados) también pueden conectarse con el ordenador 1000, tales como dispositivos de entrada/salida de audio o dispositivos de captura de imágenes.
Un cierto número de módulos de programa pueden almacenarse en los controladores y en la memoria 1020 del sistema. La memoria 1020 del sistema puede incluir tanto Memoria de Acceso Aleatorio ("RAM") como Memoria de Sólo Lectura ("ROM"). Los módulos de programa controlan cómo funciona el ordenador 100 e interactúa con el usuario, con dispositivos de E/S o con otros ordenadores. Los módulos de programa incluyen rutinas, sistemas operativos 1065, programas de aplicación, estructuras de datos y otros componentes de software o firmware. En una realización ilustrativa, la máquina aprendiz puede comprender uno o más módulos 1075A de programa de preprocesamiento, uno o más módulos 1075B de programa de posprocesamiento, y/o uno o más módulos 1077 de programa de categorización óptima y uno o más módulos 1070 de programa de SVM almacenados en los controladores o en la memoria 1020 del sistema del ordenador 1000. Específicamente, los módulos 1075A de programa de preprocesamiento, los módulos 1075B de programa de posprocesamiento, junto con los módulos 1070 de programa de SVM, pueden comprender instrucciones ejecutables por ordenador para preprocesar datos y posprocesar salida de una máquina aprendiz, e implementar el algoritmo de aprendizaje según los procedimientos ejemplares descritos con referencia a las Figs. 1 y 2. Además, los módulos 1077 de programa de categorización óptima pueden comprender instrucciones ejecutables por ordenador para categorizar óptimamente un conjunto de datos según los procedimientos ejemplares descritos con referencia a la Fig. 3.
El ordenador 1000 puede funcionar en un entorno en red, empleando conexiones lógicas con uno o más ordenadores remotos, tal como el ordenador remoto 1060. El ordenador remoto 1060 puede ser un servidor, un encaminador, un dispositivo equivalente u otro nodo común de red y, habitualmente, incluye muchos de, o todos, los elementos descritos con relación al ordenador 1000. En un entorno en red, los módulos de programa y los datos pueden almacenarse en el ordenador remoto 1060. Las conexiones lógicas ilustradas en la Fig. 8 incluyen una red de área local ("LAN") 1054 y una red de área amplia ("WAN") 1055. En un entorno de LAN, puede utilizarse una interfaz 1045 de red, tal como una tarjeta adaptadora de Ethernet, para conectar el ordenador 1000 con el ordenador remoto 1060. En un entorno de WAN, el ordenador 1000 puede utilizar un dispositivo de telecomunicaciones, tal como un módem 1057, para establecer una conexión. Se apreciará que las conexiones de red mostradas son ilustrativas, y que pueden utilizarse otros dispositivos para establecer un enlace de comunicaciones entre los ordenadores.
En otra realización, puede configurarse una pluralidad de SVM para procesar jerárquicamente múltiples conjuntos de datos, en paralelo o secuencialmente. En particular, una o más SVM de primer nivel pueden entrenarse y probarse para procesar un primer tipo de datos, y una o más SVM de primer nivel pueden entrenarse y probarse para procesar un segundo tipo de datos. Tipos adicionales de datos pueden ser procesados por otras SVM de primer nivel. Las salidas de algunas de, o todas, las SVM de primer nivel pueden combinarse de manera lógica para producir un conjunto de datos de entrada para una o más SVM de segundo nivel. De manera similar, las salidas de una pluralidad de SVM de segundo nivel pueden combinarse de manera lógica para producir datos de entrada para una o más SVM de tercer nivel. La jerarquía de las SVM puede expandirse a cualquier número de niveles, según sea lo adecuado. De esta manera, las SVM de menor nivel jerárquico pueden ser utilizadas para preprocesar datos que deben ingresarse a las SVM de mayor nivel. Además, las SVM de mayor nivel jerárquico pueden utilizarse para posprocesar datos que son emitidos desde las SVM de menor nivel jerárquico.
Cada SVM en la jerarquía o cada nivel jerárquico de las SVM puede configurarse con un núcleo distinto. Por ejemplo, las SVM utilizadas para procesar un primer tipo de datos pueden configurarse con un primer tipo de núcleo, mientras que las SVM utilizadas para procesar un segundo tipo de datos pueden utilizar un segundo tipo distinto de núcleo. Además, múltiples SVM, en el mismo, o en distinto, nivel jerárquico, pueden configurarse para procesar el mismo tipo de datos utilizando núcleos distintos.
La Fig. 9 se presenta para ilustrar un sistema jerárquico ejemplar de las SVM. Según se muestra, una o más SVM 1302a u 1302b de primer nivel pueden entrenarse y probarse para procesar un primer tipo de datos 1304a de entrada, tal como datos de mamografías, pertenecientes a una muestra de pacientes médicos. Una o más de estas SVM puede(n)
comprender un núcleo distinto, indicado como "NÚCLEO 1" y "NÚCLEO 2". Además, una o más SVM 1302c y 1302d de primer nivel pueden entrenarse y probarse para procesar un segundo tipo de datos 1304b, que pueden ser, por ejemplo datos genómicos o imágenes de especímenes de citología, para los mismos, o una muestra distinta de, pacientes médicos. Nuevamente, una o más de las SVM adicionales puede(n) comprender un núcleo distinto, indicado como "NÚCLEO 1" y "NÚCLEO 3". Las salidas de cada una de las SVM similares de primer nivel pueden compararse entre sí, p. ej., 1306a comparada con 1306b; 1306c comparada con 1306d, a fin de determinar las salidas óptimas 1308a y 1308b. Luego, las salidas óptimas de los dos grupos de las SVM de primer nivel, es decir, las salidas 1308a y 1308b, pueden combinarse para formar un nuevo conjunto multidimensional 1310 de datos de entrada, por ejemplo, referidos a datos de mamografía y genómicos. El nuevo conjunto de datos puede ser procesado luego por una o más de las SVM 1312a y 1312b de segundo nivel adecuadamente entrenadas y probadas. Las salidas resultantes 1314a y 1314b de las SVM 1312a y 1312b de segundo nivel pueden compararse para determinar una salida óptima 1316. La salida óptima 1316 puede identificar relaciones causales entre los puntos de datos de mamografía y genómicos. Como debería ser evidente para aquellos versados en la tecnología, pueden emplearse otras combinaciones de SVM jerárquicas para procesar, bien en paralelo o en serie, datos de distintos tipos en cualquier campo o industria en los cuales se desee el análisis de datos.
Como aplicación al análisis de imágenes, se utilizan múltiples SVM para procesar datos de distintos tipos que pueden extraerse de una imagen digitalizada. Los distintos tipos de datos pueden comprender distintas características o calidades de objetos hallados en la imagen, por ejemplo, tamaño, forma, densidad, cantidad, orientación, etc. El siguiente ejemplo proporciona una aplicación ilustrativa de múltiples SVM al análisis de imágenes, en particular, para el análisis de mamogramas para el diagnóstico del cáncer de pecho.
La calcificación en el tejido del pecho es de cuidado, debido a su asociación, en ciertas configuraciones, con el carcinoma. La detección y clasificación, asistidas por ordenador, de las microcalcificaciones identificadas por la mamografía, ha sido un área importante de enfoque en el campo del análisis de imágenes. (Véase, p. ej., Resúmenes de IWDM 2000 - Quinto Taller Internacional sobre Mamografía Digital). Dado que un porcentaje significativo del examen normal del mamograma muestra alguna calcificación, la mera detección de todas las calcificaciones brinda poco provecho, ya que no todos los tipos de calcificación tienen el mismo significado clínico. En términos generales, las microcalcificaciones se asocian a un proceso maligno y las macrocalcificaciones se asocian a un proceso benigno. Sin embargo, otras características de las calcificaciones pueden indicar la asociación con una estructura bien benigna o bien maligna, incluyendo la forma, el número y la distribución. Por lo tanto, la capacidad de distinguir entre calcificaciones benignas y aquellas asociadas al cáncer es clave para el análisis exitoso de imágenes, asistido por ordenador, de mamogramas.
Dos categorías adicionales de anormalidades sospechosas que pueden verse en los mamogramas, y que indican la posible presencia de un elemento maligno, son las masas y las distorsiones estructurales. Las masas son lesiones tridimensionales que pueden representar un signo localizador de cáncer. Las masas se describen por su ubicación, tamaño, forma, características marginales, atenuación de rayos X (radiodensidad) y el efecto sobre el tejido circundante. Las distorsiones estructurales son perturbaciones focales de los patrones normales del tejido. Radiográficamente, las distorsiones aparecen como tejido circundante que es "atraído" hacia un punto focal.
La Fig. 10 proporciona un diagrama de flujo de la secuencia de análisis básico según la presente invención para el análisis de mamogramas, utilizando las SVM. La imagen digitalizada 1102 del mamograma se ingresa al procesador, donde el componente 1104 de detección halla las áreas (objetos) de especial interés en la imagen 1102 y, por segmentación, separa estos objetos del fondo. El componente 1106 de extracción de rasgos formula valores numéricos relevantes a la tarea de clasificación a partir de los objetos segmentados. El clasificador 1108 de SVM produce un índice que discrimina entre los casos benignos y malignos.
La implementación de la realización ejemplar del sistema y procedimiento de análisis de imágenes de la invención para el análisis de mamogramas emplea tres subsistemas de detección, basados en las SVM, para las calcificaciones 1202, las masas 1204 y las distorsiones estructurales 1206, cada uno de los cuales recibe las imágenes digitalizadas 1201 de mamogramas como entrada, según se muestra en la Fig. 11. Aunque cada uno de los tres subsistemas fue desarrollado por separado, la estructura básica de cada subsistema es similar. Las salidas de los tres subsistemas se ingresan a una SVM 1250 distinta que realiza el análisis global y proporciona la salida final que, en este caso, sería un diagnóstico que indica la presencia o ausencia de un elemento maligno.
En cada uno de los tres subsistemas, el componente de detección halla las áreas de interés particular en la imagen y separa los objetos del fondo. El componente de extracción de rasgos formula valores numéricos relevantes para la tarea de clasificación a partir de los objetos segmentados. El clasificador de SVM produce un índice que discrimina entre los casos benignos y malignos.
Los componentes individuales pueden desarrollarse en paralelo debido a su estructura modular. (Véase, p. ej., el módulo 1070 en la Fig. 8). Por ejemplo, al desarrollar el componente 1202 de segmentación de calcificación, se utilizó un conjunto seleccionado de casos malignos, benignos y normales que representa una amplia gama de imágenes, para guiar y probar el diseño, a fin de producir un algoritmo general, robusto y preciso. A la vez, el clasificador 1242 de SVM se desarrolló y se probó con datos de entrada preparados manualmente. Un conjunto de 300 imágenes (150 casos benignos y 150 malignos) se utilizó para entrenar la SVM. Un conjunto independiente de 328 imágenes se empleó para la prueba. Se utilizaron rasgos de entrada de alta dimensión para garantizar una capacidad suficiente para los rasgos extraídos automáticamente. Los componentes se integrarán y ajustarán para un rendimiento óptimo.
En el subsistema 1202 de detección de calcificación, la primera etapa para hallar calcificaciones es procesar los datos de imágenes para hallar los puntos brillantes en el mamograma, es decir, para segmentar las calcificaciones (etapa 1212). En la realización preferida, el procedimiento implica hallar extremos locales de una función discreta bidimensional F (x, y). Dado que el mamograma consiste en imágenes en escala de grises, el problema implica distinguir entre los puntos blancos y negros en la imagen. El procedimiento convencional de resolver este problema es determinar, para cada punto (x, y), p. ej., cada píxel, que el valor F(x, y) en cualquier punto no sea menor que el valor en cada punto vecino. Las imágenes en el ordenador tienen ocho vecinos para cada punto (píxel). Otro procedimiento existente para identificar mínimos y máximos locales implica aplicar un filtro Gaussiano a cada punto (x, y) donde esté determinada la función F(x, y). Otros procedimientos de resolución del problema implican hallar los extremos locales; sin embargo, todos los procedimientos conocidos 1) requieren que se realice un cierto número de cálculos en cada punto y 2) deben aplicarse a todos y cada uno de los puntos (píxeles) en la imagen. Como resultado, estos algoritmos pueden consumir mucho tiempo.
En un aspecto de la presente invención, un procedimiento para hallar extremos locales de una función discreta bidimensional evita el examen de todos los puntos (x, y) y, por lo tanto, reduce drásticamente el tiempo de procesamiento. Específicamente, los máximos y mínimos locales se determinan utilizando puntos en la imagen, en lugar de llevar a cabo una evaluación píxel a píxel del brillo. Los puntos en la imagen se comparan con una serie de umbrales de brillo para generar una pluralidad de mapas de bits. El procedimiento puede ilustrarse utilizando el caso de la imagen en escala de grises mostrada en la Fig. 12 como un ejemplo. Por definición, el brillo de la imagen F(x_{j}, y_{j}) es una función discreta. El brillo puede discriminarse adicionalmente disminuyendo el número de niveles de brillo a N (por ejemplo, N = 32, o 16, o cualquier otro valor). La imagen gris se transforma luego en un conjunto de N imágenes (mapas de bits) binarias (negro ("1") y blanco ("0")). En el mapa de bits L (L = 1, 2, ..., N), el píxel es negro si el brillo del píxel correspondiente en la imagen inicial F es mayor que F_{L}, donde F_{L} = (L-1).(F_{max} - F_{min}) / N. En caso contrario, el píxel es blanco. Con referencia a la Fig. 12, el centro oscuro de la imagen de la derecha está asociada el mapa de bits del más alto nivel ("nivel N") y corresponde al máximo local. El siguiente mapa de bits de nivel inferior ("nivel N-1") define otro umbral, tal que los valores sobre la curva por encima del nivel N-1 son oscuros para el mapa de bits de nivel N-1. Esto da como resultado la identificación de dos tipos de puntos: aquellos que tienen valores por encima del nivel N y aquellos que tienen valores por encima del nivel N-1, de forma tal que los puntos con niveles de brillo que superan el nivel N también se incluirán en el mapa de bits de nivel N-1. Para diferenciar los puntos, se superponen los dos mapas de bits (del nivel N y del nivel N-1). Los puntos del primer tipo son puntos en el nivel N-1, denominados "puntos inferiores". Los puntos restantes en el mapa de bits de nivel N-1 representan los "puntos superiores", según se indica en la Fig. 12. Los puntos inferiores representan pendientes de las curvas para los máximos locales de los puntos superiores. Este proceso se repite superponiendo el mapa de bits del nivel N-2 con el mapa de bits del nivel N-1 para identificar nuevos puntos superiores y puntos inferiores a estos niveles, p. ej., el punto superior (N-1) y el punto inferior (N-2). Este proceso se repite adicionalmente hasta que se hallan todos los máximos locales, es decir, los puntos superiores, y los puntos inferiores para cada uno de los N niveles, evitando así la necesidad de realizar un análisis píxel a píxel de la imagen.
Las calcificaciones pueden clasificarse describiendo la geometría de los puntos brillantes. El procedimiento de analizar la geometría de los puntos se basa en los mapas de bits anteriormente descritos para el cálculo rápido de características continuadas. Por ejemplo, los gradientes de las pendientes correspondientes a los puntos pueden analizarse para distinguir ciertos rasgos de fondo. Se conoce que los puntos con un bajo gradiente se crean por la intersección de vasos sanguíneos o tejidos conectivos. Por otra parte, los puntos con pendientes muy empinadas son creados principalmente por artefactos (daños en la emulsión). Para estimar el gradiente, se utiliza el borde o perímetro del punto correspondiente al máximo local, es decir, el "borde superior" y el borde o perímetro del punto, que representa la pendiente, es decir, el "borde inferior". Debido a que se conoce la diferencia en brillo entre los bordes superior e inferior [(F_{max} - F_{min})/N], la distancia entre estos bordes (en número de píxeles, por ejemplo) es proporcional al valor del gradiente en la pendiente. Así, puede efectuarse la determinación del gradiente a un muy bajo coste de cálculo, porque se usan los mapas de bits binarios que ya estaban preparados en la etapa previa para hallar puntos brillantes (máximos locales), y el único requisito adicional es que se cuente el número de píxeles entre los bordes. Debería observarse que, dado que los puntos son a menudo asimétricos e irregulares en su forma (en particular, aquellos asociados a un elemento maligno), esta distancia puede ser distinta en distintas direcciones. Por lo tanto, la pendiente puede tener distintos gradientes en distintas direcciones.
Otro aspecto del subsistema 1202 de detección de calcificación es clasificar los puntos como calcificaciones o no calcificaciones. Con este fin, se calculan varias características del punto, que incluyen, pero que no se limitan a: 1) el área del punto superior, 2) el área del punto inferior, 3) la longitud del borde superior, 4) la longitud del borde inferior, 5) la razón entre área y borde para el punto superior y 6) la razón entre área y borde para el punto inferior. Para separar las calcificaciones de otros puntos brillantes, se utiliza una técnica de reconocimiento de patrones basada en máquinas SVM.
En la mayoría de los problemas de interpretación de imágenes, el contexto de cada parte de una imagen debe tomarse en consideración. Esto es verdad asimismo para el problema de identificar calcificaciones en mamogramas. Al menos tres características del área circundante de un punto brillante dado al nivel L deberían considerarse: 1) el área total de puntos al nivel L-1 dentro de un círculo de radio RI alrededor del punto superior, 2) la proximidad de otros objetos con características más prominentes de calcificación y 3) si el punto está situado en un vaso sanguíneo. (Las calcificaciones vasculares pueden verse como pistas paralelas o calcificaciones tubulares lineales que van a lo largo de un vaso sanguíneo y que se clasifican habitualmente como benignas), Como resultado de tal enfoque no local, se utiliza el siguiente procedimiento para hallar calcificaciones:
A.
Hallar un punto brillante.
B.
Calcular las características geométricas.
C.
Utilizar la SVM para reconocer las calcificaciones prominentes.
D.
Suavizar las restricciones para el reconocimiento de calcificaciones y aplicar estos criterios en la vecindad de las calcificaciones prominentes.
E.
Determinar si la "calcificación" está situada en un vaso sanguíneo y, en ese caso, borrarla.
\vskip1.000000\baselineskip
Lo siguiente proporciona un procedimiento para identificar vasos sanguíneos en la etapa E. Con este fin, cada punto en cada mapa de bits binario se analiza de la siguiente manera:
E_{1}
Hallar los píxeles del borde.
E_{2}
Conservar los píxeles del núcleo que sean comunes a los bordes opuestos (bordes izquierdo y derecho o bordes superior e inferior).
E_{3}
Borrar los píxeles del núcleo pertenecientes al borde superior.
E_{4}
Hallar los píxeles del borde.
E_{5}
Borrar los píxeles del borde pertenecientes al borde derecho.
E_{6}
Hallar los píxeles del borde.
E_{7}
Borrar los píxeles del borde pertenecientes al borde inferior.
E_{8}
Hallar los píxeles del borde.
E_{9}
Borrar los píxeles del borde pertenecientes al borde izquierdo.
E_{10}
Volver al punto E_{1} y repetir todas las etapas hasta que todos los píxeles en el mapa de bits sean píxeles del núcleo.
\vskip1.000000\baselineskip
La secuencia precedente de etapas E_{1}-E_{10} para la identificación de vasos sanguíneos transformará cada punto que tenga forma general de una banda, es decir, elongado como debería ser un vaso sanguíneo, en lo que parece una línea central (un conjunto de píxeles conectados), o un "esqueleto" de la banda, según se muestra en la imagen superior de la Fig. 13. Para los puntos que no tengan forma de banda, es decir, que no sean un vaso sanguíneo, el conjunto de píxeles del núcleo determinado según las etapas E_{1}-E_{10} no creará una línea conectada de longitud adecuada, indicando así que el punto no es un vaso sanguíneo. Véase, p. ej., la imagen inferior de la Fig. 13.
Los racimos de microcalcificaciones se caracterizan por sus tamaños relativamente pequeños y altas densidades. El algoritmo combina una técnica recursiva de búsqueda de picos con operaciones morfológicas para lograr una detección y segmentación de calcificaciones sumamente precisas.
La segmentación para distinguir el solapamiento o los objetos situados próximamente, según la realización preferida, se describe anteriormente con referencia a la Fig. 5 y, por lo tanto, no se repetirá. Brevemente, sin embargo, allí donde se identifican calcificaciones solapadas, se aplica un modelo gravitacional para contraer los objetos, a fin de permitir que se distingan.
A continuación de la Segmentación de Calcificación (etapa 1212), el analizador 1222 de la SVM Local analiza las características de las calcificaciones individuales detectadas por el algoritmo de segmentación. Una medida cuantitativa de la probabilidad de que una calcificación esté asociada a un elemento maligno es producida por la SVM. Todas las evaluaciones a partir del analizador 1222 de SVM local de la primera etapa son utilizadas por la SVM 1242 de la segunda etapa para una evaluación más global del racimo.
Para una SVM dada, los datos de entrada deben tener la misma dimensión. Debido a que las calcificaciones segmentadas variarán en tamaños, son necesarias transformaciones adecuadas para convertir los segmentos de imagen de tamaño variable en una forma de dimensión fija, sin perder información crítica. La siguiente secuencia de transformación convierte el contorno de una calcificación en un vector de dimensión fija y se ilustra en la Fig. 14.
1. Calcular el centroide 902 de la calcificación 900.
2. Utilizar el centroide 902 como origen de un sistema de coordenadas polares y muestrear la calcificación con n ángulos igualmente espaciados. Esto da n medidas radiales 904, que forman un vector de dimensión n [r_{1}-r_{2}, K ,r_{n}].
3. Aplicar una transformación discreta de Fourier al vector obtenido en la etapa 2. El vector complejo resultante de dimensión n se utiliza como entrada a la SVM.
Debido a que n es el número predeterminado de rayos radiales de muestreo, la dimensión del vector resultante está fijada independientemente del tamaño de la calcificación de entrada. Este enfoque evita la repetición del muestreo o relleno innatural. La transformada de Fourier aprovecha la naturaleza periódica del esquema de muestreo y mejora adicionalmente los rasgos esenciales, tales como los invariantes rotatorios.
Con referencia nuevamente a la Fig. 11, el resultado de la etapa 1222 de análisis de la SVM Local se procesa entonces para la extracción de rasgos (etapa 1232). Los rasgos conocidos como relevantes en la discriminación de calcificaciones malignas y benignas se extraen y los resultados se suministran al clasificador 1242 de SVM Global. Los rasgos útiles incluyen el número de calcificaciones, áreas, perímetros, ubicaciones, orientaciones y excentricidades de las calcificaciones.
Debido a la capacidad de las SVM para procesar datos de entrada de alta dimensión sin sacrificar la generalización, pueden añadirse un gran número de rasgos a la entrada. Incluso aunque la contribución de un rasgo individual al clasificador pueda ser pequeña, el conjunto entero de rasgos puede proporcionar colectivamente a la SVM suficiente información para lograr la clasificación adecuada.
Un componente importante en cualquier SVM u otro procedimiento basado en núcleos es el núcleo utilizado para definir el producto interno en el espacio de rasgos. El núcleo describe las similitudes entre los vectores de entrada de manera no lineal. Las prestaciones de un sistema basado en núcleos dependen en gran medida del diseño adecuado del núcleo que captura los rasgos esenciales del problema dado. En la realización preferida, se utiliza un núcleo de Fourier para abordar específicamente el problema del reconocimiento y clasificación de formas geométricas. Es claramente deseable que el núcleo sea invariante por las transformaciones de traslaciones y rotación. El contorno detectado de una imagen también variará de tamaño. El núcleo necesita ser lo bastante robusto como para asimilar una amplia gama de patrones de formas, siendo a la vez lo bastante sensible como para mantener información crítica para la clasificación. Dado un contorno, el núcleo de Fourier se calcula de la manera siguiente.
1. Dado un contorno que es una curva de Jordan (simple continua cerrada) en el plano, representar el contorno como una función de valores complejos z(s), 0\leqs\leq1. Considerar el origen del plano complejo en el centroide del contorno y asociar los puntos en el contorno a los números complejos de la función.
2. Calcular los coeficientes de Fourier de z(s) de hasta orden N.
8
3. Para dos contornos z(s), w(s) con coeficientes f_{n}, g_{n} de Fourier, el núcleo se define como
9
El núcleo de Fourier tiene muchas ventajas sobre otros núcleos al tratar el problema de clasificación de formas, en cuanto a que: 1) el núcleo de Fourier es invariante por traslación y rotación. Una forma trasladada o rotada será considerada exactamente la misma que la original por parte del núcleo. La invariancia se logra de forma completamente automática y transparente en el diseño del núcleo. No requiere ningún alineamiento ni búsqueda costosos, 2) El núcleo de Fourier es fiel al retener información crítica para la clasificación de formas. La serie de Fourier es una representación exacta del contorno original. Con un número finito de términos, aún es una aproximación precisa a la original. El rasgo rotatorio se elimina por filtración de forma natural sin afectar otros rasgos esenciales, d) El núcleo de Fourier es eficiente en términos de cálculo. Un pequeño número de términos (p. ej., N = 10) es usualmente suficiente para la mayoría de las aplicaciones prácticas. También puede aprovechar algoritmos rápidos existentes, tal como la Transformada Rápida de Fourier (FFT) para lograr mayor eficiencia.
Pueden utilizarse otros tipos de transformadas que son bien conocidas en la técnica para facilitar la extracción de datos útiles de los datos de imágenes originales, en lugar de analizar directamente los datos de imágenes. Una tal transformada, la "transformada de ondícula", proporciona una potente herramienta para el análisis de multi-resolución de las imágenes. Las transformadas de ondículas localizan una función tanto en el espacio como en el ajuste a escala. Los coeficientes en las transformadas de ondículas pueden utilizarse como rasgos, a ciertas escalas, para el clasificador de SVM.
Otro tipo de transformada, la "transformada de Radon", asocia puntos de imagen en el dominio espacial con una curva sinusoidal en el dominio de la transformada de Radon, para proporcionar parámetros de todas las posibles curvas sobre las que pueda estar el punto. Una propiedad importante de la transformada de Radon es extraer líneas (curvas) de imágenes muy ruidosas. Las transformadas bidimensionales de Radon pueden generar descripciones numéricas de muchos rasgos útiles relacionados con las formas de los objetos, incluyendo la convexidad, la elongación, la angularidad y el número de lóbulos. (Para una exposición del empleo de la transformada bidimensional de Radon para el análisis de la forma, véase Leavers, V. F., "Use of the Two-Dimensional Radon Transform to Generate a Taxonomy of Shape for the Characterization of Abrasive Powder Particles" ["Uso de la Transformada Bidimensional de Radon para Generar una Taxonomía de Formas para la Caracterización de Partículas de Polvo Abrasivo"], Transacciones del IEEE sobre Análisis de Patrones e Inteligencia de Máquinas, Vol. 22, Nº 23, 12/2000).
La transformada de Hough, un caso especial de la transformada de Radon, es una herramienta estándar en el análisis de imágenes que permite el reconocimiento de patrones globales en un espacio de imágenes, por el reconocimiento de patrones locales (idealmente, un punto) en un espacio de parámetros transformados. Es especialmente útil cuando los patrones buscados están escasamente digitalizados, tienen agujeros y/o las imágenes son ruidosas. (La función de Radon disponible en el elenco de la Caja de Herramientas de Procesamiento del software MatLab® comercialmente disponible (The MathWorks, Inc., Natick, MA) también puede utilizarse para implementar la transformada de
Hough).
La SVM dentro del clasificador 1242 de SVM Global está entrenada para clasificar las calcificaciones malignas y benignas sobre la base de los rasgos seleccionados y los resultados del analizador 1222 de SVM local. Un conjunto de datos de entrenamiento de un número aproximadamente igual de casos de calcificación benigna y cancerosa se emplea para entrenar al analizador 1242 de SVM Global. La SVM resultante se prueba con un conjunto independiente de datos de prueba para evaluar su rendimiento y capacidad de generalización. El proceso de entrenamiento se itera para seleccionar los núcleos y estructuras óptimos para la SVM. Utilizando una configuración de múltiples SVM, tal como el ejemplo mostrado en la Fig. 9, pueden proporcionarse múltiples SVM para procesar los mismos conjuntos de datos de entrenamiento y de prueba, seleccionando luego la SVM que proporciona la salida óptima para procesar datos reales.
Una versión mejorada de una SVM de margen suave se emplea en la realización preferida del clasificador 1242 de SVM Global. Una SVM tradicional de margen suave se construye maximizando el funcional
\vskip1.000000\baselineskip
10
sujeto a las restricciones
11
\vskip1.000000\baselineskip
La constante C se selecciona para penalizar los puntos mal clasificados.
En la SVM mejorada de margen suave, la constante C no es necesariamente la misma para todos los vectores de entrada. En particular, pueden escogerse distintos valores de C para casos benignos y casos malignos, para asociar distintas penalizaciones a cánceres no detectados y falsas alarmas. La SVM mejorada se construye maximizando el funcional
12
sujeto a las restricciones
13
El subsistema 1204 de detección de masas es similar al subsistema 1202 de calcificación. Sin embargo, en lugar de la calcificación, las etapas de preprocesamiento del subsistema 1204 están específicamente diseñadas para detectar y segmentar masas, y para extraer rasgos asociados a las masas. Los procedimientos de entrenamiento de SVM son las mismas que para el subsistema 1202 de calcificación.
Un indicador importante de anormalidades son los patrones de densidad asimétrica entre las imágenes izquierda y derecha y los cambios en las imágenes de mamograma tomadas en distintos momentos. La detección de regiones densas asimétricas puede mejorar significativamente el rendimiento del sistema entero. Claramente, no es realista esperar una coincidencia perfecta incluso para casos simétricos; por lo tanto, el algoritmo de asociación y registro utilizado para la detección de asimetría (etapa 1214) permitirá variaciones pequeñas normales en los patrones de densidad. El foco principal del algoritmo serán las diferencias topológicas de las áreas de densidad relativamente alta entre las dos imágenes. El procedimiento para la detección 1214 de asimetría es el siguiente:
1.
Construir dos gráficos que representan las áreas densas en las dos imágenes en comparación.
2.
Hallar una coincidencia óptima entre los vértices de los dos gráficos.
3.
Evaluar los vértices no alineados y eliminar los que pueden intercalarse en los vértices adyacentes dentro de variaciones aceptables.
4.
Los restantes vértices no alineados representan las densidades asimétricas.
Las apariencias de masas en imágenes de mamograma son usualmente mucho más sutiles que las calcificaciones. En la etapa 1224 de segmentación de masas, se utilizan técnicas de transformación geométrica para detectar los límites, a menudo mal definidos. Las transformadas de Hough, anteriormente descritas, pueden aplicarse para detectar formas específicas tales como líneas o círculos en las imágenes. Las transformadas de Radon son útiles para abordar formas irregulares.
La etapa 1234 de extracción de rasgos se realiza de la misma manera que la etapa 1232 de extracción de rasgos del subsistema 1202 de calcificación. Rasgos importantes a extraer son la ubicación, el tamaño, la forma, los márgenes y la atenuación de rayos X. La evaluación de cualidades adicionales, tales como las texturas del área de masas, también puede ser útil para la extracción de rasgos en el subsistema 1204 de detección de masas.
El clasificador 1244 de SVM se entrena y se prueba utilizando un procedimiento similar al utilizado para el clasificador 1242 de SVM Global en el subsistema de calcificación. El clasificador 1244 de SVM, que comprende una o más SVM, recibe la salida de la etapa 1234 de extracción de rasgos y clasifica los datos en categorías adecuadas para cada uno de los rasgos extraídos. Por ejemplo, la forma de la masa puede tener una de las siguientes características: redonda, ovalada, lobular o irregular, de forma tal que el clasificador 1244 de SVM distribuiría los datos en una de las cuatro categorías de la característica de la forma. De manera similar, hay cinco tipos de márgenes: circunscritos, oscurecidos, microlobulados, mal definidos y espiculados, y el clasificador SVM dividiría los datos en una de las cinco categorías de margen. A la vista del número de distintos rasgos relacionados con la masa que son relevantes para el diagnóstico de elementos malignos, puede ser deseable estructurar el clasificador 1244 de SVM en una configuración jerárquica, asignando al menos una SVM de primer nivel a cada rasgo, y combinando luego las salidas óptimas para el procesamiento a través de las SVM de nivel superior, hasta que se genere una única salida del clasificador 1244 de SVM. Esta salida es entrada para el analizador 1250 de SVM global, que combina los resultados de detección de masas con los resultados de los subsistemas de calcificación y distorsión de estructuras para producir un diagnóstico.
El subsistema 1206 de detección de distorsión estructural es similar al subsistema 1202 de calcificación. Las etapas de preprocesamiento, el detector 1216 de espiculación y la extracción 1226 de rasgos están específicamente diseñados para detectar regiones sospechosas y extraer rasgos asociados a las distorsiones de estructuras. Las espiculaciones, que aparecen típicamente como líneas radiantes, o como un patrón de "erupción solar", pueden representar un proceso desmoplástico conjuntamente con un tumor posiblemente infiltrado. Por otra parte, las cicatrices posquirúrgicas de una biopsia previa, las cicatrices radiales, los traumas y la infección también pueden producir una lesión con márgenes espiculados. La presencia de espiculaciones, conjuntamente con los resultados de los otros subsistemas de detección, proporcionan así una buena herramienta de diagnóstico. Los procedimientos de entrenamiento de SVM para el clasificador 1236 de SVM son los mismos que para los clasificadores anteriormente descritos para los otros subsistemas de detección. La salida del clasificador 1236 de SVM proporcionará habitualmente una salida que indica la presencia, o no, de distorsiones espiculadas. Esta salida se combina con las salidas de los otros subsistemas de detección, para la entrada al analizador global 1250 de SVM, para su empleo en el diagnóstico de la presencia, o no, de un elemento maligno.
Si bien el ejemplo precedente describe un procedimiento para el análisis de mamogramas para el diagnóstico del cáncer de pecho, las aplicaciones del análisis de imágenes asistido por ordenador, según la presente invención, no se limitan a ello, sino que son de gama tan amplia como las aplicaciones de la misma formación de imágenes digitales. Generalmente, cualquier situación en la cual ha de analizarse una imagen digital para asistir en la toma de decisiones, p. ej., médicas, industriales, geológicas y de exploración espacial, de reconocimiento aéreo o satelital, etc., o simplemente para proporcionar información acerca del asunto de la imagen, donde la imagen contiene muchos puntos de datos que están sujetos a un cierto número de interpretaciones, puede aprovechar el empleo del análisis de imágenes según la presente invención.
Las realizaciones alternativas de la presente invención devendrán evidentes para aquellos con habilidad corriente en la tecnología a la cual pertenece la presente invención. En consecuencia, el alcance de la presente invención está descrito por las reivindicaciones adjuntas y está soportado por la descripción precedente.

Claims (10)

1. Un procedimiento implementado por ordenador para el análisis de una imagen digitalizada, comprendiendo el procedimiento:
(a)
ingresar un conjunto de entrenamiento de datos de imágenes y un conjunto de prueba de datos de imágenes a un procesador, para ejecutar una pluralidad de subsistemas de detección, estando cada subsistema de detección adaptado para detectar y clasificar uno entre una pluralidad de distintos rasgos de interés, en donde cada rasgo de interés tiene una pluralidad de posibles características del rasgo, y en donde cada subsistema de detección genera una salida para su correspondiente rasgo de interés, en donde cada subsistema de detección ejecuta las etapas de:
(i)
preprocesar cada conjunto de datos de imágenes para detectar y extraer la presencia de un rasgo de interés dentro de los datos de imágenes;
(ii)
entrenar y probar al menos una máquina de vectores de soporte con al menos un núcleo que utiliza los conjuntos preprocesados de datos de imágenes para clasificar el rasgo de interés extraído en al menos una entre una pluralidad de clases de posibles características del rasgo;
(iii)
comparar los rasgos clasificados a partir del conjunto de prueba de datos de imágenes con resultados conocidos del conjunto de prueba de datos de imágenes, a fin de determinar si se obtiene una solución óptima;
(iv)
repetir las etapas (ii) y (iii) si no se obtiene la solución óptima;
(v)
si se obtiene la solución óptima, ingresar un conjunto real de datos de imágenes en el procesador;
(vi)
preprocesar el conjunto real de datos de imágenes para detectar y extraer la presencia de rasgos de interés dentro de los datos de imágenes;
(vii)
clasificar al menos dicho rasgo de interés; y
(viii)
generar una salida que comprende el rasgo, o rasgos, de interés clasificado(s) a partir del conjunto real de datos de imágenes;
(b)
ingresar las salidas de cada uno de la pluralidad de subsistemas en una máquina global de vectores de soporte con al menos un núcleo; y
(c)
generar una única salida global que comprende una clasificación de la imagen digitalizada.
\vskip1.000000\baselineskip
2. El procedimiento de la reivindicación 1, en el cual la máquina aprendiz global es una máquina de vectores de soporte de margen suave, en la cual se aplica una penalización variable para los errores de clasificación.
3. El procedimiento de la reivindicación 1, en el cual las etapas (ii) y (vi) de preprocesamiento comprenden segmentar el rasgo de interés para separar el rasgo de interés de un fondo;
identificar mínimos y máximos locales correspondientes a cada rasgo segmentado de interés en los datos de imágenes; y
generar un valor numérico para el rasgo de interés segmentado.
4. El procedimiento de la reivindicación 3, en el cual el rasgo de interés comprende un punto que tiene un cierto brillo, y la identificación de mínimos y máximos locales comprende clasificar el brillo del punto en uno o más entre una pluralidad de niveles de brillo.
5. El procedimiento de la reivindicación 4, en el cual la geometría es una posible característica de rasgo, y la geometría se determina midiendo un cambio en la pendiente entre los bordes del punto, en dos distintos niveles de brillo.
6. El procedimiento de la reivindicación 1, en el cual las etapas (ii) y (vi) de preprocesamiento comprenden segmentar el rasgo de interés y transformar el rasgo segmentado en un vector de dimensión fija, en el cual la transformación comprende;
calcular un centroide del rasgo de interés;
muestrear un contorno del rasgo de interés utilizando un sistema de coordenadas polares con un origen en el centroide, para proporcionar una pluralidad de medidas radiales;
formar un vector utilizando la pluralidad de medidas radiales; y
aplicar una transformada de Fourier al vector para proporcionar el vector de dimensión fija.
7. El procedimiento de la reivindicación 1 o la reivindicación 2, en el cual el rasgo, o rasgos, de interés, com-
prende(n) una pluralidad de rasgos de interés, y las etapas (ii) y (iv) de preprocesamiento comprenden segmentar un primer rasgo de interés de un segundo rasgo de interés, solapado al menos parcialmente, aplicando un modelo de gravitación a cada rasgo de interés para contraer cada rasgo en un cuerpo distinto.
8. El procedimiento de la reivindicación 1 o la reivindicación 2, en el cual las etapas (ii) y (iv) de preprocesamiento comprenden aplicar una transformación a los datos de imágenes, siendo la transformación seleccionada entre un grupo que consiste en las transformadas de ondículas, las transformadas de Radon y las transformadas de Hough.
9. El procedimiento de cualquiera de las reivindicaciones 1 a 8, en el cual la imagen digitalizada comprende un mamograma y la pluralidad de subsistemas comprende un subsistema de detección de calcificación, un subsistema de detección de masas y un subsistema de distorsión de estructuras.
10. Un sistema de ordenador para el análisis de una imagen digitalizada, con una pluralidad de rasgos de interés, comprendiendo el sistema de ordenador:
un procesador;
un dispositivo de entrada para recibir datos de imágenes a procesar;
un dispositivo de memoria, en comunicación con el procesador, que tiene una pluralidad de subsistemas de detección almacenados en el mismo, en donde el procesador y la memoria están adaptados para ejecutar el procedimiento de cualquiera de las reivindicaciones 1 a 9.
ES02709291T 2001-01-23 2002-01-23 Analisis de imagenes asistido por erdenador. Expired - Lifetime ES2337556T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US26338101P 2001-01-23 2001-01-23
US263381P 2001-01-23

Publications (1)

Publication Number Publication Date
ES2337556T3 true ES2337556T3 (es) 2010-04-27

Family

ID=23001553

Family Applications (1)

Application Number Title Priority Date Filing Date
ES02709291T Expired - Lifetime ES2337556T3 (es) 2001-01-23 2002-01-23 Analisis de imagenes asistido por erdenador.

Country Status (8)

Country Link
EP (1) EP1356421B1 (es)
JP (1) JP3947109B2 (es)
AT (1) ATE450834T1 (es)
AU (1) AU2002243783B2 (es)
CA (1) CA2435290C (es)
DE (1) DE60234571D1 (es)
ES (1) ES2337556T3 (es)
WO (1) WO2002059828A2 (es)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020003028A1 (es) * 2018-06-25 2020-01-02 Universidad Antonio Nariño Método para el diagnóstico, desarrollo e incremento acelerado de la inteligencia deportiva o de juego

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7313268B2 (en) 2002-10-31 2007-12-25 Eastman Kodak Company Method for using effective spatio-temporal image recomposition to improve scene classification
RU2242047C1 (ru) * 2003-03-20 2004-12-10 Общество с ограниченной ответственностью "Информационные исследования" ("Изучение, анализ, оценивание, распознавание") Открытая система для автоматизации обработки, анализа и распознавания изображений
JP4796356B2 (ja) * 2005-01-13 2011-10-19 学校法人 中央大学 判別分析を行う方法、プログラム及び装置
US7197487B2 (en) * 2005-03-16 2007-03-27 Lg Chem, Ltd. Apparatus and method for estimating battery state of charge
US7680307B2 (en) 2005-04-05 2010-03-16 Scimed Life Systems, Inc. Systems and methods for image segmentation with a multi-stage classifier
CN100455267C (zh) * 2005-08-17 2009-01-28 北京天惠华数字技术有限公司 一种对b超胎儿性别鉴别进行记录的方法
KR100856042B1 (ko) * 2005-10-07 2008-09-03 주식회사 메디슨 웨이브렛 변환과 svm을 이용하여 초음파 영상에서대상체 볼륨을 추출하는 초음파 영상 시스템 및 방법
WO2007077672A1 (ja) 2005-12-28 2007-07-12 Olympus Medical Systems Corp. 画像処理装置および当該画像処理装置における画像処理方法
US7640105B2 (en) 2007-03-13 2009-12-29 Certus View Technologies, LLC Marking system and method with location and/or time tracking
JP5519122B2 (ja) * 2007-08-15 2014-06-11 富士フイルム株式会社 画像成分分離装置、方法、およびプログラム
JP5298552B2 (ja) * 2008-02-04 2013-09-25 新日鐵住金株式会社 判別装置、判別方法及びプログラム
US9659268B2 (en) 2008-02-12 2017-05-23 CertusVies Technologies, LLC Ticket approval system for and method of performing quality control in field service applications
US9473626B2 (en) 2008-06-27 2016-10-18 Certusview Technologies, Llc Apparatus and methods for evaluating a quality of a locate operation for underground utility
US9208458B2 (en) 2008-10-02 2015-12-08 Certusview Technologies, Llc Methods and apparatus for analyzing locate and marking operations with respect to facilities maps
US9208464B2 (en) 2008-10-02 2015-12-08 Certusview Technologies, Llc Methods and apparatus for analyzing locate and marking operations with respect to historical information
US20090327024A1 (en) 2008-06-27 2009-12-31 Certusview Technologies, Llc Methods and apparatus for quality assessment of a field service operation
US8612271B2 (en) 2008-10-02 2013-12-17 Certusview Technologies, Llc Methods and apparatus for analyzing locate and marking operations with respect to environmental landmarks
WO2010035163A1 (en) 2008-09-29 2010-04-01 Koninklijke Philips Electronics, N.V. Method for increasing the robustness of computer-aided diagnosis to image processing uncertainties
GB2503582B (en) 2008-10-02 2014-04-09 Certusview Technologies Llc Marking device docking stations and methods of using same
US8620726B2 (en) 2008-10-02 2013-12-31 Certusview Technologies, Llc Methods and apparatus for analyzing locate and marking operations by comparing locate information and marking information
CA2897462A1 (en) 2009-02-11 2010-05-04 Certusview Technologies, Llc Management system, and associated methods and apparatus, for providing automatic assessment of a locate operation
JP5409103B2 (ja) * 2009-04-30 2014-02-05 株式会社Nttドコモ レコメンド情報配信装置およびレコメンド情報配信方法
TWI405147B (zh) 2010-03-16 2013-08-11 Novatek Microelectronics Corp 單張影像的階層式去動態模糊方法
KR102190484B1 (ko) * 2013-11-11 2020-12-11 삼성전자주식회사 인식기 학습 방법 및 장치, 데이터 인식 방법 및 장치
US9658987B2 (en) 2014-05-15 2017-05-23 International Business Machines Corporation Regression using M-estimators and polynomial kernel support vector machines and principal component regression
CA2976947C (en) * 2015-02-18 2023-02-28 Siemens Healthcare Diagnostics Inc. Locality-based detection of tray slot types and tube types in a vision system
US10627464B2 (en) 2016-11-22 2020-04-21 Hyperfine Research, Inc. Low-field magnetic resonance imaging methods and apparatus
US10955504B2 (en) 2016-11-22 2021-03-23 Hyperfine Research, Inc. Systems and methods for automated detection in magnetic resonance images
WO2018216623A1 (ja) * 2017-05-25 2018-11-29 日本電気株式会社 地球科学データ解析装置、地球科学データ解析方法、及びコンピュータ読み取り可能な記録媒体
KR101991028B1 (ko) * 2017-08-04 2019-10-01 동국대학교 산학협력단 지정맥 인식 장치 및 방법
KR101864412B1 (ko) * 2017-12-28 2018-06-04 (주)휴톰 학습용 데이터 관리방법, 장치 및 프로그램
JP7115114B2 (ja) * 2018-07-27 2022-08-09 コニカミノルタ株式会社 X線画像物体認識システム
CN109086822B (zh) * 2018-08-01 2021-04-06 广州虎牙信息科技有限公司 一种主播用户分类方法、装置、设备及存储介质
JP7161948B2 (ja) * 2018-09-07 2022-10-27 株式会社フジクラ 機械学習装置、機械学習方法、機械学習プログラム、及び検査装置
CN112116005B (zh) * 2020-09-18 2024-01-23 推想医疗科技股份有限公司 影像分类模型的训练方法及装置、存储介质和电子设备
CA3203664A1 (en) * 2020-12-01 2022-06-09 Johnson & Johnson Enterprise Innovation Inc. Machine learning to predict cancer involvement of lymph nodes
KR20220153171A (ko) * 2021-05-10 2022-11-18 주식회사 씨앤에이아이 유방 이미지 변환 장치 및 방법
CN116993985B (zh) * 2023-08-15 2025-10-28 国网湖南省电力有限公司 一种基于CLIP实现Zero-Shot自动分割安全带的方法
CN117078648A (zh) * 2023-08-29 2023-11-17 云南省第一人民医院 一种基于自注意力机制的病灶检测方法和系统
CN118886042B (zh) * 2024-09-29 2025-01-21 青岛他坦科技服务有限公司 一种企业隐私数据的加密存储方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03204783A (ja) * 1990-01-08 1991-09-06 Mitsubishi Electric Corp 画像追尾装置
JPH05101028A (ja) * 1991-10-04 1993-04-23 Nippon Telegr & Teleph Corp <Ntt> 複数特徴量の統合判定方法
ATE182856T1 (de) * 1994-01-12 1999-08-15 Inventio Ag Intelligent verteilte steuerung für aufzüge
JPH0836643A (ja) * 1994-07-26 1996-02-06 Matsushita Electric Works Ltd 画像認識におけるニューラルネットによる学習方法
US5657362A (en) * 1995-02-24 1997-08-12 Arch Development Corporation Automated method and system for computerized detection of masses and parenchymal distortions in medical images
US5987345A (en) * 1996-11-29 1999-11-16 Arch Development Corporation Method and system for displaying medical images
US6134344A (en) * 1997-06-26 2000-10-17 Lucent Technologies Inc. Method and apparatus for improving the efficiency of support vector machines
NZ515707A (en) * 1999-05-25 2003-06-30 Barnhill Technologies Llc Enhancing knowledge discovery from multiple data sets using multiple support vector machines

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020003028A1 (es) * 2018-06-25 2020-01-02 Universidad Antonio Nariño Método para el diagnóstico, desarrollo e incremento acelerado de la inteligencia deportiva o de juego

Also Published As

Publication number Publication date
DE60234571D1 (de) 2010-01-14
JP3947109B2 (ja) 2007-07-18
CA2435290A1 (en) 2002-08-01
JP2004536367A (ja) 2004-12-02
EP1356421B1 (en) 2009-12-02
EP1356421A2 (en) 2003-10-29
WO2002059828A3 (en) 2003-08-14
CA2435290C (en) 2012-05-01
AU2002243783B2 (en) 2007-07-19
ATE450834T1 (de) 2009-12-15
WO2002059828A2 (en) 2002-08-01

Similar Documents

Publication Publication Date Title
ES2337556T3 (es) Analisis de imagenes asistido por erdenador.
US6996549B2 (en) Computer-aided image analysis
AU2002243783A1 (en) Computer-aided image analysis
Doyle et al. Cascaded discrimination of normal, abnormal, and confounder classes in histopathology: Gleason grading of prostate cancer
US8724866B2 (en) Multi-level contextual learning of data
Feulner et al. Lymph node detection and segmentation in chest CT data using discriminative learning and a spatial prior
Foster et al. Segmentation of PET images for computer-aided functional quantification of tuberculosis in small animal models
CN101116089B (zh) 在三维图像容积中检测息肉的方法
US20060239552A1 (en) System and method for using learned discriminative models to segment three dimensional colon image data
Amelio et al. Classification methods in image analysis with a special focus on medical analytics
Marpu Geographic object based image analysis
Ogundokun et al. Optimized deep feature learning with hybrid ensemble soft voting for early breast cancer histopathological image classification
Malathi Automated Histopathological Analysis for Accurate Grading of Prostate Cancer Using CNNs and SVMs
Dubey et al. Classification of Breast Cancer Histopathological Images using Residual Learning-based CNN.
Salim et al. Hybrid optimization enabled segmentation and deep learning for breast cancer detection and classification using histopathological images
Jesna et al. A survey on MR Brain image segmentation using SOM based strategies
Ghasemi et al. Improving the Accuracy of Detecting Cancerous Tumors Based on Deep Learning on MRI Images.
Sajid et al. Spatial Awareness of Cancer Cells Using Segmentation Process
Feulner et al. Data-driven detection and segmentation of lymph nodes
Zahoor Ul Huq et al. Breast Cancer Detection and Classification Using Adaptively Regularized Fuzzy C-Means Based on Kernels Inception Transformer Quantum Generative Adversarial Network with Emperor Penguin Optimization
de Abreu et al. Didactic Algorithm for Detecting Contours in Mammograms
Buler et al. Multi-Head Attention Multiple Instance Learning Deep Neural Classifier Enhanced with Model Uncertainty Quantification
Indu et al. A Novel Lightweight Model for Ovarian Tumor Segmentation and Classification Using Obstetrics Ultrasound Images
Ma et al. Liver focus detections based on visual attention model
Grisan Boosted learned kernels for data-driven vesselness measure