-
Primer esbozo de caracterización
Publicado el 5 05Europe/Berlin Mayo 05Europe/Berlin 2009 Sin comentarios aún ...Acabamos de terminar un primer esbozo del módulo de caracterización de imágenes. Actualmente, la aplicación incluye sólo dos operaciones de caracterización, a saber, media e histograma de una imagen sobre una región de interés.
El funcionamiento de la aplicación a la hora de caracterizar imágenes es muy similar al funcionamiento del procesamiento de paquetes de imágenes.
En primer lugar, se debe crear un paquete de imágenes que contenga las imágenes a caracterizar. Esto ya lo hemos explicado con anterioridad.
Posteriormente, el usario debe crear un generador de vector de caracterización. ¿Qué es un generador de vector de caracterización?
La caracterización de una imagen no es más que un vector de caracterización, el cual almacena medidas de caracterización. Una medida de caracterización es una propiedad numérica atribuible a una imagen, como, por ejemplo, la media de los valores de los píxeles de la imagen, o su histograma. Cuando se caracteriza una imagen, interesa calcular sobre ella diversas medidas de caracterización, para así aglutinar una mayor cantidad de información de ésta. Una vez creadas las medidas de caracterización, éstas son agrupadas en un vector de caracterización, que se asocia a la imagen, y que representa toda la información extraída de ella.
Un generador de vector de caracterización permite al usuario especificar cuál es la estructura del vector de caracterización que se genere al caracterizar una imagen. Por ejemplo, un generador de vector de caracterización podría especificar que el vector de caracterización generado contuviera dos medidas de caracterización, la media y el histograma.
Así pues, el siguiente paso es la creación de un generador de vector de caracterización. Para ello, el usuario accede a la vista de Caracterización de Imágenes, donde puede crear un generador de vector de caracterización pulsando el botón correspondiente, e introduciendo su nombre.
Tras crear el generador, el usuario debe insertar las operaciones que calcularán las medidas de caracterización del respectivo vector de caracterización. Si el usuario quiere que el vector de caracterización generado por un generador de vector de caracterización contenga, por ejemplo, la media y el histograma, el usuario deberá insertar dichas operaciones en el generador. El procedimiento es sencillo: del árbol de operaciones de caracterización, se selecciona la operación en cuestión, se introducen sus parámetros, y se inserta en un generador de vector de caracterización (proceso análogo al de la inserción de las cadenas de operaciones en el procesamiento de paquetes de imágenes).
Tras definir los paquetes de imágenes a caracterizar y los generadores de vector de caracterización, se configura la ejecución de la caracterización. La vista Caracterización de Imágenes permite lanzar un diálogo de configuración, desde el cual se configura y ejecuta la caracterización.
Tras presionar el botón Caracterizar, se desencadena la caracterización. Los datos generados de la caracterización son visualizados en un editor.
Actualmente, sólo se pueden visualizar los datos generados durante la caracterización. Insistimos, esto es un primer esbozo de la caracterización.
Por ahora, nos centraremos en crear más operaciones de caracterización, así como en permitir manipular los vectores de caracterización y guardar los informes de caracterización generados en ficheros persistentes.
-
Nueva versión de los ejecutables (con manual de ayuda y plugins de operaciones)
Publicado el 8 08Europe/Berlin Abril 08Europe/Berlin 2009 Sin comentarios aún ...Hola a tod@s,
Pues simplemente decir que hemos generado unos nuevos ejecutables de la aplicación.
Estos incluyen dos grandes diferencias (además de nuevas operaciones para la caracterización):
- Parte del manual de ayuda (aunque esperamos tener terminado lo principal en un par de días)
- Extensión mediantes plugins.
¿Que quiere decir extensión mediante plugins? Pues que ahora nuestra aplicación la tenemos dividida en componentes (plugins). En concreto cuatro (por ahora):
- com.coolimagingproject.coolimaging (la aplicación principal)
- com.coolimagingproject.colorOperations (Operaciones para cambio de espacios de color)
- com.coolimagingproject.basicImageProcessingOperations (Operaciones basicas de tratamiento de imágenes)
- com.coolimagingproject.help (manual de ayuda)
Estos componentes se encuentran en la carpeta plugins dentro de la carpeta coolimaging.
¿Que ventaja aporta esto? Pues una vez terminada la aplicación principal podemos implementar nuevas operaciones sin tener que tocar la aplicación principal. Incluso mejor, un usuario con conocimientos de programación puede añadir nuevas operaciones sin saber nada de nuestra aplicación. U otras, como que cuando terminemos el manual de ayuda solo habrá que sustituir el plugin com.coolimagingproject.help por el nuevo que generemos, sin tener que volver a generar todo el ejecutable.
Para poder descargarlos aquí.
-
Trabajando en la Caracterización
Publicado el 4 04Europe/Berlin Marzo 04Europe/Berlin 2009 Sin comentarios aún ...Tras los exámenes y más tranquilos, estamos ahora más centrados en la caracterización.
Hicimos un primer diseño para la caracterización, que no fue tan bueno como pensabamos, y lo tuvimos que rehacer.
Ahora mismo nos encontramos implementando el nuevo diseño para poder almacenar los datos de caracterización de las imágenes. Aunque gracias al diseño inicial del menú que realizamos para las operaciones de tratamiento de imágenes, hemos podido reutilizar practicamente todo el código (haciendo algunos cambios) para la caracterización.
Hemos intentando que el modo de trabajar con las operaciones de caracterización sea el mismo que el que usamos para las operaciones de tratamiento de imágenes, así la homogeneidad de la aplicación es mayor haciendose más fácil de usar. Como resultado, tenemos el menú de operaciones creado y la carga de operaciones, aunque todavía no tenemos ninguna operación creada.Además, hemos realizado una vista de thumbnails que aprovechará la caracterización cuando esté terminada. En un futuro, el usuario podrá seleccionar desde esta pantalla las imágenes sobre las que quiere realizar una batería de operaciones de caracterización.
Mostramos algunas capturas de pantalla de la aplicación (también mostramos la funcionalidad de los histogramas):
-
Seguimos añadiendole Funcionalidad a la aplicación
Publicado el 3 03Europe/Berlin Febrero 03Europe/Berlin 2009 1 comentarioAunque como ya dijimos en la entrada anterior (nos encontramos en una nueva fase del proyecto), no dejamos de lado el añadirle nueva funcionalidad a la aplicación para que la haga más completa y atractiva.
Algunas de las nuevas funcionalidades están relacionadas con la internacionalización, aunque no está terminada aún, o la insercción de nuevos menús.
Aquí dejamos unas capturas de pantalla de la aplicación, esperemos que os gusten.
-
Comienza la siguiente fase
Publicado el 26 26Europe/Berlin Enero 26Europe/Berlin 2009 Sin comentarios aún ...Tras estos tres primeros meses dándonos tortas contra el Eclipse RCP, JAI y Java2D, hemos llegado a un primer modelo de nuestra aplicación, dando ya por finalizado, salvo detalles menores, la parte relativa al tratamiento digital de imágenes.
Actualmente, Cool Imaging es una aplicación que, dentro de un entorno bastante intuitivo, permite al usuario manipular imágenes mediante clásicos operadores de tratamiento de imágenes.
Además, actualmente, la aplicación está diseñada de tal modo que el añadir nuevas operaciones de tratamiento de imágenes puede hacerse sin excesiva dificultad, y, mejor aún, sin necesidad de modificar los archivos binarios (es decir, puede hacerse de forma “externa”). Basta que el usuario proporcione el archivo binario .class de la clase que implementa dicha operación, y ésta es automáticamente añadida a la aplicación.
El siguiente paso, que será el último y el más duro, es el relacionado con la caracterización de imágenes. Ahora toca diseñar todo aquello relativo a la caracterización de imágenes digitales. Ésta es, supuestamente, la parte más dura, pero partiendo de la base de que la arquitectura actualmente creada es bastante simple y flexible, no debería suponer un gran problema el llevarla a cabo.
En este enlace se encuentra disponible la última versión de la documentación.
Mostramos capturas de pantalla de la aplicación:










Comentarios recientes