Esto es algo en lo que ya había pensado hace tiempo y que ahora voy a poner en práctica ya que para desarrollar la parte que generará las reglas inductivas de aprendizaje\reconocimiento de objetos voy a tratar de implementar en Infant un sistema para la generación de código y que ese código generado sea usuado, mejorado y completado según aumente el conocimento acumulado por el sistema.Para ello Infant generará un script en Lua en el que se defina una función que decidirá si un deterinado objeto pertenece o no a una determinada categoría, código que será generado según las propiedades y características comunes y no cumunes de todos los objetos pertenecientes a esa categoría, lo precompilará (para mayor velocidad) y después utilizará ese script para decidir si un objeto nuevo, desconocido en principio, pertenece o no a esa categoría.Por supuesto aun esta todo por hacer pero ya os iré contando.
¿Te gustaría colaborar en YakiTo? No necesitas ningún conocimiento de programación. YakiTo facilita la ayuda al desarrollo por terceros sin conocimientos de informática. ¿Cómo? Pues de una forma muy sencilla, llevando a cabo una de las siguientes dos tareas:
Si os interesa estad atentos al desarrollo de YakiTo, porque más adelante daré más detalles en la sección dedicada a ello.
Tras bastante tiempo sin escribir, vuelvo para comentar algunas decisiones tomadas en el desarrollo y que influyen profundamente en el diseño del proyecto. En el ciclo 2 de la iteración estoy dedicando el tiempo a implementar la creación de las …
Con el avance en el desarrollo del proyecto, hemos decidido darle un cambio al aspecto visual de nuestra aplicación, haciendola a nuestro parecer bastante mas atractiva para el usuario, pero no nos conformamos con eso, queremos saber que opinas tu.
Aqui te dejamos una imagen del aspecto de la aplicacion en su version 0.0.1 y el aspecto que tendra la 0.0.2
V0.0.1
V0.0.2
Responde ahora a la siguiente encuesta:
Note: There is a poll embedded within this post, please visit the site to participate in this post's poll.
IntroducciónUno de los elementos clave en los que se basará Infant es el Sistema de Coordenadas de Obejeto y que consiste basicamente en que una vez vectorializados los bordes de un determinado objeto estos se convertiran a un sistema propio de coordendas.Origen de la ideaEsto va ha sonar un poco raro... pero cerrar los ojos e imaginaros primero una manzana cualquiera y después borrar esa imagen de la manzana e imaginaros la Torre Eiffel. En esas imagenes que se os presentan, por lo menos en mi caso, aparece la manzana en la misma escala que la torre es decir que si suporponeis esas dos imagenes las dos tendran el mismo tamaño y la manzana tapará a la Torre Effiel. Es juesto en esa idea de mantener las proporciones en referencia al total de la dimensiones de cada objeto en la que se basa el sistema. Sistema de coordendas de objetoPara desarrollar las ideas anteriormente descritas nace la necesidad del sistema de coordendas unico para todos los elementos y surge a raiz de querer comparar estos objetos entre si, para lo que debe garantizarse que:
Para lograr estos objetivos en Infant se ha implementado un sistema en el que la unidad viene definida por las dimensiones totales del objeto (en realidad del nivel), en nuestro caso se define y se compara con el 100% que componen los limites del objeto (del nivel) (Bounding Box) por lo que el resto de los vectores vendrán determinados en este nuevo sistema como un porcentaje del ancho y alto total de la imagen original. Matematicamente simplemente se define un sistema ortonormal en el que el origen de coordenadas es la coordenda menor (inferior izquierda) de la imagen y los vectores directores (aunque en nuetro caso su módulo no es la unidad sino el 100%) son los compuestos por el ancho y el largo del bounding box que contiene el objeto despues para transformar el objeto a ese sistema de coordenadas lo que hacemos es simplemente, sobre cada vector aplicaicar una traslacion y escalarlos segun el porcentaje en relacion al nuevos ejes de coordendas por lo que la operacion matematica es simplemnte suma y multiplicacion de vectores. Como imagino que será mucho mas fácil verlo graficamente un ejemplo sencillo sería el siguiente en el que la letra J pasa a convertirse en la letra J en el sistema de coordendas de objeto (aplicando también una simplificación a la imagen vectorializada de la que ya hablaremos):
Me estoy dando cuenta que mi sistema de actualizaciones es muy irregular, por lo que a partir de ahora, dejaré un roadmap sujeto a modificaciones de las actualizaciones para vidali. Hay que tener en cuenta, que este roadmap es la previsión hasta el lanzamiento de la fase alpha, por lo que si se retrasa en algo el proyecto, este roadmap será modificado.
Sin más, dejo aquí el roadmap hasta el lanzamiento de Vidali alpha:
Roadmap Vidali Pre-Alpha:
5-12-2010 – Version 0.4.0 (Implementación del sistema multimedia, mejoras menores)
19-12-2010 -Version 0.4.5 (Arreglos menores,cambio de comentarios y documentación a español/inglés)
30-01-2011 – Version 0.5.0 (Implementación del sistema de redes, arreglos y parcheos)
15-02-2011 – Version 0.5.5 (Implementacion de la coneccion entre usuarios, limpieza de codigo, arreglos, parches, mejora en traducción)
03-03-2010 – Version 0.6.0 (Limpieza de codigo, mejora de la estructura del código, mejora de encapsulamiento) VIDALI ALPHA (Codename: GEO)
En fin, es esto lo que queda fijado de momento para la Pre-Alpha de vidali. Y mas o menos a ojimetro (esa unidad de medida tan maja que me permite tener un margen de error superior al 50%), podría decir que el roadmap del proyecto en general sería de la siguiente manera:
Marzo 2011: Vidali Alpha
Abril 2011: Vidali Alpha2
Mayo 2011: Vidali Beta
Junio 2011: Vidali 1.0 Estable
Pero esto, esta solo sobre tintero… por lo que de momento son solo supocisiones
Saludos!