POTENTE SOFTWARE BASADO EN TECNOLOGÍA DE CLASIFICACIÓN SUPERVISADA PARA CLASIFICAR EFICIENTEMENTE OBJETOS DE INTERÉS
Clasificación de objetos a partir de imágenes
El Aphelion™ Imaging Software Suite incluye cuatro potentes herramientas que permiten desarrollar aplicaciones de clasificación avanzadas para identificar automáticamente el tipo o clase de objetos que se encuentran en un conjunto de imágenes. Las cuatro herramientas son Classifier Builder (la aplicación de clasificación front-end) y tres extensiones de clasificador: Fuzzy Logic, Neural Network Toolkit y Random Forest, siendo los dos últimos un producto de extensión Aphelion opcional.
Classifier Builder
Classifier Builder, una herramienta incluida con el producto Aphelion Dev, sirve como interfaz para una aplicación de clasificación. Se utiliza para definir los datos de entrenamiento y para configurar una herramienta clasificadora a través de un proceso de aprendizaje supervisado realizado por un conjunto de datos de formación. Con ClassifierBuilder, el usuario puede realizar de forma fácil y sin problemas una clasificación manual que asigna objetos de interés a clases definidas por el usuario. Esto es especialmente útil para crear un conjunto de datos de entrenamienton c fd. El ClassifierBuilder modifica ObjectSets en el sentido de que añade un nuevo atributo a cada objeto que contendrá la clase del objeto.
Classifier Builder incluye capacidades para:
- Cargar ObjectSets en un proyecto de clasificación
- Definir clases de objetos
- Seleccionar mediciones del objeto para calcular
- Seleccionar atributos para utilizar durante el proceso de entrenamiento
- Calcular automáticamente los parámetros del clasificador
- Realizar una clasificación manual
El Classifier Builder está provisto de la extensión de clasificador Fuzzy Logic (Fuzzy Logic) para permitir al usuario realizar rápidamente la clasificación de objetos basada en la lógica fuzzy. Como opción, el clasificador de la Red Neuronal se puede utilizar para tareas de clasificación más avanzadas (Neural Network Toolkit).
Fuzzy Logic
Fuzzy Logic es una clasificación supervisada que asigna un objeto a una clase basada en los valores numéricos de los atributos del objeto. El usuario interactúa con Classifier Builder para definir los límites inferior y superior para todos los atributos seleccionados por el usuario, para cada clase. Además de los valores vinculados a los atributos, el usuario puede alterar el tipo de forma borrosa (por ejemplo, banda de paso, banda de corte, paso bajo, paso alto), el ancho de borrosidad y el peso del atributo. Este clasificador asigna cada objeto a la clase para la que el clasificador calcula la puntuación más alta. Los ajustes del clasificador Fuzzy Logic se pueden guardar y cargar en Aphelion Dev para ser aplicados automáticamente a cualquier Aphelion ObjectSet.
Neural Network Toolkit (opcional)
El Neural Network Toolkit for Classifier Builder es una extensión de Aphelion que no está incluida en Aphelion Dev. Mejora Dev con una potente capacidad para clasificar automáticamente objetos complejos de interés sobre la base de una clasificación supervisada de objetos en categorías o clases. El Kit de Herramientas de la Red Neuronal libera al usuario de la necesidad de especificar reglas complejas para la clasificación de objetos, como las que requieren los clasificadores basados en probabilidad e información.
El Neural Network Toolkit fue desarrollado en colaboración con la Universidad de Caen (Normandía, Francia). Se basa en MONNA, una aplicación de software desarrollada originalmente por el Dr. Olivier Lezoray, PhD, Universidad de Caen1.
Random Forest Extension (opcional)
La extensión Random Forest para Classifier Builder es una extensión de Aphelion que no está incluida en Aphelion Dev. Mejora Dev con una potente capacidad para clasificar automáticamente objetos complejos de interés sobre la base de una clasificación supervisada de objetos en categorías o clases. La extensión libera al usuario de la necesidad de especificar reglas complejas para la clasificación de objetos, como las que requieren los clasificadores basados en probabilidad e información.
La extensión Random Forest se basa en el software R.
Generación de bases de datos de capacitación
El primer paso para crear una aplicación de clasificación es construir una base de datos de entrenamiento usando ClassifierBuilder. Esto incluye especificar la lista de clases de objetos. La lista de clases definidas se guarda como un archivo XML en un proyecto ClassifierBuilder. A continuación, se elige un ObjectSet representativo y sus objetos se asignan manualmente a las clases de objetos.
Configuración del clasificador
Classifier Builder - Selección de medición
El segundo paso del proceso de clasificación es seleccionar el clasificador a utilizar y después especificar los ajustes del clasificador (es decir, definir los parámetros del usuario, incluidos los ajustes utilizados durante el proceso de clasificación).
Este paso incluye que el usuario pueda elegir medidas de atributos de objeto de la lista proporcionada en Aphelion Dev. Estos incluyen atributos de forma (por ejemplo, área, perímetro, diámetros de Feret), atributos de textura (por ejemplo, parámetros de Haralick) y atributos estadísticos (por ejemplo, media de píxeles, mínimo, máximo). La lista de medidas seleccionadas se guarda en el proyecto ClassifierBuilder.
El atributo “class” y todos los atributos computados se añaden a cada ObjectSet cargado para formar nuevos ObjectSets, que se pueden guardar e importar posteriormente en Aphelion Dev para su posterior análisis.
Configuración de la red neuronal
Por defecto, el clasificador de la Red Neural se compone de múltiples clasificadores de red neural de una sola capa según la arquitectura MONNA1. La combinación de redes múltiples de una sola capa da mejores resultados que el uso de una sola red de una sola capa.
Un asistente está disponible para permitir al usuario seleccionar rápidamente los atributos que se utilizarán en el proceso de clasificación y para definir el número de neuronas utilizadas para discriminar entre dos clases.
El número de parámetros necesarios para definir el clasificador se redujo de manera intencional para simplificar el proceso de definición. Sin embargo, el Neural Network Toolkit también permite a los desarrolladores usar tantas capas y redes como sea necesario, y definir tales parámetros avanzados cuando trabajan fuera de ClassifierBuilder.
El tercer paso entrena al clasificador a calcular un peso para cada neurona. Estos pesos minimizarán los errores resultantes de la asignación de clases del clasificador de la Red Neural a los objetos de la base de datos de entrenamiento. Los datos de salida generados por el clasificador de la Red Neuronal durante el paso de entrenamiento se pueden mostrar en una ventana de texto o como un gráfico. El usuario puede comprobar la convergencia del proceso de clasificación revisando los datos de salida. Una vez que el clasificador está completamente definido, puede guardarse en un proyecto ClassifierBuilder y luego aplicarse a un ObjectSet usando ClassifierBuilder.
Clasificación de los Resultados
Classifier Builder - Asistente de software para la clasificación
Los resultados de la clasificación se pueden revisar explorando todas las imágenes de objetos y sus clases asignadas. En la captura de pantalla junto al texto «Imagen XXX – Clave = Y» conecta la imagen con el índice «XXX» a su objeto correspondiente «Y» en el ObjectSet.
Una vez configurado, se puede ejecutar un clasificador en el entorno Aphelion Dev para aplicar automáticamente el clasificador a los nuevos ObjectSets.
Comparación del clasificador Neural Network
Uno de los beneficios más importantes del clasificador de la Red Neuronal de Aphelion es que es más eficiente que una red neuronal multicapa estándar en que tiene menos complejidad, un ciclo de entrenamiento más corto (es posible una capacitación parcial), y mejor precisión cuando se definen más de dos clases.
Comparación de precisión de clasificación entre redes neuronales multicapa y clasificador de Aphelion Neural Network
Campos de aplicación
El clasificador de la Red Neuronal Aphelion se ha utilizado con éxito en los campos de la biología, la citología (por ejemplo, análisis celular), la agricultura, el control de calidad, el reconocimiento óptico de caracteres (por ejemplo, el análisis de matrículas), la teledetección y más. Su versatilidad hace que sea adecuado para cualquier ámbito de imagen que requiere herramientas de clasificación avanzadas.
Sistemas operativos compatibles
Windows® 7, 8, 8.1, y 10 (versiones de 32 bits y 64 bits).
Principales beneficios de las herramientas de clasificación Aphelion
- Interfaz gráfica fácil de usar diseñada específicamente para aplicaciones de clasificación
- Poderosas herramientas para la comprensión avanzada de imágenes utilizando Aphelion Dev ObjectSets
- Clasificación optimizada basada en la arquitectura MONNA
- Capacidad de clasificación de alto nivel para una amplia gama de aplicaciones
- Efectivo para aplicaciones donde el número de clases requiere un gran conjunto de atributos
1 Para más información, véase:
O. Lezoray, H. Cardot, A Neural Network Architecture for Data Classification, International Journal of Neural Systems, Vol. 11, no 1, pp. 33-42, 2001.