Arquitectura de Aphelion™

Interfase usuario

La interfase grafica de Aphelion permite al usuario de:

  • Visualizar una o varias imégenes simultáneamente, y controlar los parámetros de visualización (como tamaños, aspecto, LUT y contraste).
  • Lanzar funciones de tratamiento de imágenes con la posibilidad de utilizar los parámetros por defecto propuestos por Aphelion, o de emplear aquellos definidos por el usuario.
  • Registrar y ejecutar macro-comandos compatibles Visual Basic.
  • Visualizar mediciones en un tabla, calcular estadísticas y graficar histogramas de dichas mediciones, examinado los objetos correspondientes simultáneamente.
  • Acceder a la ayuda en línea incluyendo un manual de utilización, un manual de referencia de los operadores y demostraciones multimedia.
  • Visualizar histogramas, gráficos de dispersión, perfiles de intensidad, superficies de imágenes (representación pseudo 3D) y datos de objetos.
Aphelion GUI
comments

Base de datos simbólica

La teoría de la interpretación de imágenes permite al usuario de concebir una imagen como una colección de objetos en lugar de una colección de píxeles. Estos objetos pueden ser partículas, conjuntos de bordes, polígonos, segmentos, etc. Esta conversión en objetos permite reducir de manera significativa el tiempo de procesamiento, y facilita la fase de reconocimiento e interpretación. Una serie de atributos, tales como la superficie, el perímetro, las dimensiones (largo y ancho), los diámetros de Feret, la dirección principal, la intensidad luminosa etc., son calculados por cada objeto. Los objetos y sus atributos asociados son registrados en una base de datos simbólica que puede ser visualizada en una tabla 2D. Esta base de datos permite al usuario seleccionar, clasificar, reagrupar y filtrar objetos según distintos criterios como el tamaño, la forma, etc. Cada medida puede ser calculada usando unidades de calibración definidas por el usuario.

Table

Servidor grafico

El servidor grafico de Aphelion permite al usuario visualizar vistas 2D o 3D de las curvas de datos. La asignación dinámica de colores a las curvas, implementada por Aphelion, facilita significativamente el paso de mensajes. Los vínculos virtuales, establecidos entre las imágenes y las graficas correspondientes, permiten actualizar en tiempo real las curvas en función de los datos específicos de la imagen. Igualmente, los usuarios pueden modificar las propiedades de las curvas visualizadas a fin de adaptarlas a las condiciones de la aplicación desarrollada.

Seed Origin image Seed Histogram Seeds

Herramientas de visualización

Aphelion pone a la disposición de sus usuarios un conjunto de herramientas de visualización muy eficientes. Estas herramientas soportan la adquisición de imágenes que provienen de una cámara o de un scanner, la lectura de imágenes desde el disco duro o la red y la visualización de imágenes en curso de tratamiento. Igualmente, es posible controlar la paleta de colores, el contexto de visualización, el aspecto de los píxeles, así como, la visualzación de objetos gráficos sobre las as imágenes en un plano no destructivo. Una lupa interactiva permite agrandar los datos píxel, conservando el tamaño original de los objetos gráficos, esto permite realizar visualizaciones sub-píxel. La interfase multi-documentos permite igualmente, el paso de mensajes entre dos o mas imágenes o entre una imagen y el objeto grafico asociado (curva de intensidad, histograma, etc.). La librería de visualización de Aphelion esta disponible bajo la forma de componentes ActiveX o .Net®, permitiendo una utilización muy simple al momento del desarrollo de una aplicación que requiera la visualización de imágenes.

Formatos de imágenes soportados

Aphelion soporta formatos de imágenes TIFF, BMP, JPEG, KBVision™ y "Raw Data". Los formatos internos incluyen imágenes de 1, 8, 16 y 32 bits para imágenes de tipo entero, y de 32 bits para imágenes de tipo flotante (monocromáticas y color). Las secuencias de imágenes, las imágenes 2D y 3D, así como las imágenes de alta resolución son igualmente soportadas.

Programación

A fín de responder a las necesidades particulares de los distintos tipos de usuarios, Aphelion soporta diferentes niveles de programación interactiva, tales como:

  • La inserción de nuevos operadores desarrollados por el usuario a la interfase.
  • La posibilidad de asociar macros a botones en la interfase para un acceso inmediato.
  • El llamado a funciones de tratamiento y visualización de imágenes (disponibles bajo la forma de DLLs) desde aplicaciones autónomas escritas en C++.
  • La utilización de componentes ActiveX de Aphelion en ambientes de desarrollo tales como: Visual Basic, Delphi o Java. Doce componentes ActiveX para el tratamiento de imágenes, la gestión de imágenes y objetos (ObjectSets) son disponibles en el módulo de base del software.

Regiones de interés

Aphelion ofrece la posibilidad al usuario de defínir una o varias regiones de interés (ROIs) en una imagen. El uso de regiones de interés permite acelerar la rapidez de procesamiento limitando la utilización del operador de tratamiento a una región de interés específica. Formas de tipo rectangular, poligonal o esbozos a mano alzada son disponibles. Uno o varios objetos perteneciendo a un mismo conjunto de objetos (Objectset Aphelion) pueden igualmente ser convertidos en una ROI. Las ROIs puede ser definidas y controladas usando el lenguaje de macro-comandos de Aphelion.

ROIs on the Road image

Macro-comandos

Gracias Aphelion ya no es necesario el aprendizaje de lenguajes de macro-comandos complejos y específicos a un producto determinado. En efecto, un lenguaje de macros compatible con Visual Basic es propuesto con el software. Cada operador de tratamiento esta disponible desde el lenguaje macro, así como objetos visuales clásicos como las cajas de dialogo y ventanas de control. Un interprete, un "debugger" y utilidades para el registro automático están también disponibles.

Macro example

Exportar medidas/cómputos

Todas las medidas, globales e individuales, calculadas con Aphelion pueden ser exportadas directamente a Microsoft Excel, o cualquier otro software similar compatible con Windows. Los usuarios pueden exportar una colección completa de objetos con los atributos asociados, o una selección específica de columnas, líneas o celdas de una tabla de medidas. Para estudios más detallados, los histogramas pueden igualmente ser exportados hacia aplicaciones de procesamiento como Excel. Asimismo, se pueden aprovechar las herramientas avanzadas de Aphelion para efectuar cómputos estadísticos y visualizacion de datos, o bien exportarlos hacia programas externos para el análisis de datos como Microsoft Excel o Access.

Soporte en tiempo real

La mayoría de los operadores de tipo punto a punto y transformaciones elementales de vecindad, han sido implementados bajo la arquitectura MMX con el fin de mejorar de manera drástica el tiempo de ejecución de estos operadores. Por lo tanto, es posible esperar tiempos de cómputo inferiores a la cadencia del video. Esto permite en la mayoría de los casos, liberarse de la utilización de cartas suplementarias de procesamiento para aplicaciones que requieran tratamiento de imágenes en tiempo real.

Lista de operadores optimizados para el conjunto de instrucciones MMX

  • Adición de 2 imágenes
  • Sustracción de 2 imágenes
  • Multiplicación de 2 imágenes
  • Mínimo de 2 imágenes
  • Máximo de 2 imágenes
  • Umbralización (Threshold)
  • Convolución
  • Erosión
  • Dilatación
  • Apertura
  • Cierre
  • Transformación "White Top Hat"
  • Transformación "Black Top Hat"
  • Filtro alternado secuencial
  • Filtro Automediana

Limitaciones

  • El tamaño de las imágenes debe ser un múltiplo de 8 (píxeles).
  • Las imágenes deben tener una profundidad (cuantización de los niveles de gris) de 8 bits sin signo.
  • Para la multiplicación, la imagen resultante debe tener una profundidad de 16 bits sin signo.
  • Para la convolución, la imagen resultante de tener una profundidad de 16 bits sin signo.
  • Para las operaciones morfológicas, solo los elementos estructurantes (EE) rectangulares pueden ser utilizados.

Tiempo de cálculo para imágenes de 512*512, 8 bits, en un Pentium III a 500Mhz:

Operador Tiempo (en ms)
Adición6.2
Sustracción6.2
Multiplicación6.9
Mínimo6.8
Máximo6.8
Umbralización (Threshold)19.1
Convolución 3x326.8
Erosión con EE cuadrado de 3x37.2
Erosión con EE cuadrado de 15x1551
Dilatación con EE cuadrado de 3x3 7.2
Dilatación con EE cuadrado de 15x1551
Apertura con EE cuadrado de 3x337
Apertura con EE cuadrado de 15x15130

Adquisición de imágenes con una cámara

Aphelion puede servirse de tarjetas especializadas de adquisición y digitalización utilizando pilotos específicos. Las imágenes provenientes de la cámara, monocromáticas o color, son visualizadas en la interfase grafica, con una velocidad de actualización cercana al tiempo real (la velocidad depende de la tarjeta utilizada). Es posible controlar la ganancia, el "offset" y otros parámetros físicos asociados a la tarjeta de adquisición. Un "kit" opcional de portabilidad esta disponible para tarjetas de adquisición no soportadas por el software (lista de tarjetas de adquisición soportadas).

Módulos opcionales

Aphelion puede ser enriquecido con un conjunto de módulos opcionales que permiten responder a requerimientos específicos. Por ejemplo, los usuarios de microscopios electrónicos podrán utilizar ventajosamente un módulo que permite controlar los motores paso a paso de una platina motorizada en las tres direcciones (X, Y y Z). El módulo Recognition Toolkit, desarrollado por "Recognition Science Inc.", ofrece herramientas de reconocimiento de formas basado en el análisis de componentes principales y la clasificación de objetos según sus atributos. Por otra parte, VisionTutor permite aprender técnicas asociadas al tratamiento de imágenes a través de cursos interactivos que incluyen una parte teórica y trabajos prácticos bajo la forma de macro-comandos Aphelion™.

Toda una gama de módulos están disponibles y descritos en detalle mas adelante.