lunes, 31 de marzo de 2014

[Tesis] Semana 10: Análisis de experimentos y agregaciones pendientes

Notas de la semana


La reunión inicial correspondiente a esta semana se llevó a cabo el día 18 de marzo de 2014.

Las observaciones realizadas a los avances de la semana anterior fueron:

  • Complementar los agradecimientos.
  • Usar algunos cuadros en lugar de solo imágenes.
  • Citar el contenido de la seguridad de la información y telecomunicaciones.
  • Arreglar la tabla del capítulo 3.
  • Complementar la redacción del capítulo 5, la introducción a cada sección.
  • Ortografía:
    • Verificar la redacción de los párrafos.
    • Cuidar los acentos y correcta escritura de las palabras.
  • Corregir bibliografía.

Evidencia de la semana:
  • Redactar una entrada en el blog con los avances realizados durante la semana. (1 punto)
  • El avance de esta semana en código consistió en corregir algunos errores en el proceso de cifrado de la comunicación entre sockets. (4 puntos)
  • El avance de ésta semana en redacción de tesis consistió en complementar los capítulos 5 y 6 con las agregaciones pendientes (redacción, tablas, gráficas o  imágenes) (4 puntos)
  • Reunión final agendada para el día 28 de marzo de 2014 (1 punto)


Avance en código

Los avances pueden encontrarse en el repositorio: https://github.com/jcespinosa/EcoGlasses

Para esta semana se corrigió el módulo de encriptación de la comunicación, el procedimiento funcional quedo de la siguiente manera:

  • Codificación en base64.
  • Compresión con zlib.
  • Segmentación del mensaje.
  • Cifrado de cada segmento utilizando RSA.
  • Unión de los segmentos en un nuevo mensaje completo.

Los procedimiento es correcto, sin embargo, se encontró un problema más crítico: mientras que el proceso de cifrado del lado del cliente funciona de la manera esperada, el proceso de descrifrado del lado del servidor tarda mucho lo que vuelve muy lento el proceso de detección, por ahora se desactivo la parte del cifrado, posiblemente se deba a que la longitud de la llave para cifrar y descifrar es de 2048 bits, de probarán con llaves más pequeñas ya que la codificación base64 y la compresión agregan seguridad adicional al proceso.

De la misma manera, se corrigió la pérdida de mensajes en la comunicación del socket, éste sucedía porque el mensaje se enviaba segmentado, por ello se agregó un último paso que consiste en juntar todos los segmentos y enviarlos en un solo mensaje.

Se realizaron cambios a la interfaz diseñada, en una primera etapa la detección ocurría en tiempo real y cada segundo, sin embargo, se decidió agregar interactividad. Ahora es posible realizar una detección en tiempo real mientras que la interfaz espera a que suceda, cuando un logotipo es detectado la interfaz espera a que el usuario realice alguna acción, se irán agregando más interacciones en etapas posteriores, por ahora solo se agregó un panel lateral donde se mostrará la información del logotipo encontrado y un botón de reseteo de la detección, esto sirve para que el proceso de detección no se quede enviando peticiones al servidor sino que espere a que el usuario elija qué hacer cuando un logotipo de ha detectado dándole tiempo de analizar la información disponible del producto.

Avances para la siguiente semana


Los avances en la redacción de la tesis será redactar la el análisis de los experimentos.

Los avances en código a realizar son:
  • Implementar un módulo que permita recuperar la información de los logotipos, terminar el panel lateral para mostrar la información.
  • Proceso para detectar 2 o más logotipos y/o marcas.


viernes, 21 de marzo de 2014

[Tesis] Semana 9: Reportaje de resultados experimentales

Notas de la semana


La reunión inicial correspondiente a esta semana se llevó a cabo el día 11 de marzo de 2014.

Las observaciones realizadas a los avances de la semana anterior fueron:

  • Complementar la redacción del capítulo 2 y citar los conceptos faltantes.
  • Ortografía:
    • Verificar la redacción de los párrafos.
    • Quitar palabras o frases innecesarias.
    • Cuidar los acentos y correcta escritura de las palabras
  • Agregar footnotes a los conceptos que sólo se usan una vez.
  • Redacción del capítulo 4.
  • Redacción del capítulo 5.
  • Colocar imágenes.
  • Corregir bibliografía.

Evidencia de la semana:
  • Redactar una entrada en el blog con los avances realizados durante la semana. (1 punto)
  • El avance de esta semana en código consistió en corregir algunos errores en el proceso de cifrado de la comunicación entre sockets. (4 puntos)
  • El avance de ésta semana en redacción de tesis consistió en colocar las imágenes, tablas o gráficas que representarán los resultados de los experimentos diseñados (4 puntos)
  • Reunión final agendada para el día 18 de marzo de 2014 (1 punto)


Avances de la redacción tesis


Para esta semana se complementó la redacción de la solución propuesta, se agregaron algunas imágenes al capítulo 2 y se corrigieron errores de ortografía y redacción.

Se comenzó con la redacción del capítulo 5, que contiene el diseño de los experimentos a realizar.

En el capítulo 6 se agregaron las descripciones de las tablas y gráficas donde se mostrarán los resultados del análisis de los experimentos.

Finalmente se corrigieron las observaciones realizadas en la reunion de la semana anterior.


Avance en código


Los avances pueden encontrarse en el repositorio: https://github.com/jcespinosa/EcoGlasses

Para esta semana se siguió trabajando en la integración de métodos de seguridad de la información dentro de la solución propuesta, se dió orden a la implementación quedando de la siguiente forma:

  • Codificación en base64
  • Compresión con zlib
  • Segmentación del mensaje
  • Cifrado de cada segmento utilizando RSA.
Hasta ahora los primeros tres pasos funcionan correctamente pero al agregar el cifrado se sigue obteniendo un error en la longitud del texto cifrado al intentar decifrar:

Se intentará corregir dicho error.

También se tiene un bug al momento de recibir y enviar los mensajes, por alguna razón el socket deja de hacerlo. Es un bug que sucede sólo cuando el proceso dura mucho tiempo ejecutándose y no lanza ninguna excepción o mensaje de error. Se realizarán las pruebas necesarias para encontrar la raíz de dicho error.

Se estuvo trabajando también con el mejoramiento de la detección, para ello se implemento otro tipo de algoritmo de clasificación utilizando fuerza bruta. En la siguiente entrega se mostrarán los resultados obtenidos.

Avances para la siguiente semana


Los avances en la redacción de la tesis será redactar la el análisis de los experimentos.

Los avances en código a realizar son:
  • Arreglar el módulo de cifrado.
  • Mejorar el proceso de detección.
  • Realizar pruebas de ejecución tratando de encontrar otro tipo de errores hasta ahora desconocidos.


martes, 11 de marzo de 2014

[Tesis] Semana 8: Desarrollo experimental

Notas de la semana


La reunión inicial correspondiente a esta semana se llevó a cabo el día 04 de marzo de 2014.

Las observaciones realizadas a los avances de la semana anterior fueron:

  • Complementar resumen con contribuciones y los agradecimientos.
  • Ortografía:
    • Usar punto y coma.
    • Verificar la redacción de los párrafos.
    • Quitar palabras o frases innecesarias.
  • Quitar frases en 1era persona plural.
  • Redacción del capítulo 3.
    • Modificar redacción del capítulo 3.1
    • Complementar inicio del capitulo y de la sección 3.2 de como fueron seleccionadas las características a evaluar.
    • Redactar 3.3.
  • Colocar imágenes.
  • Corregir bibliografía.

Evidencia de la semana:
  • Redactar una entrada en el blog con los avances realizados durante la semana. (1 punto)
  • El avance de ésta semana en código consistió cifrar la comunicación entre sockets y en mejorar el de retroalimentación para el usuario cuando un logotipo es detectado. (4 puntos)
  • El avance de ésta semana en redacción de tesis consistió en diseñar y redactar la etapa experimental (4 puntos)
  • Reunión final agendada para el día 11 de marzo de 2014 (1 punto)


Avances de la redacción tesis


Para esta semana se complementó la redacción de la solución propuesta para comprobar la hipótesis del proyecto de tesis; se agregaron algunas imágenes al capítulo 2 y se corrigieron errores de ortografía y redacción.

Se agregaron definiciones al pie de página utilizando el comando \footnote{}, con ellas se definen conceptos cuando éstos son utilizados solo en algunas páginas.

Se comenzó con la redacción de la solución propuesta

Se corrigieron las observaciones realizadas.


Avance en código


Los avances pueden encontrarse en el repositorio: https://github.com/jcespinosa/EcoGlasses

Para esta semana se propuso como incorporar seguridad a la comunicación entre los sockets cliente y servidor, para ello se utilizan 3 métodos en conjunto:

  • Primeramente se comprimen los datos utilizando la librería zlib, esta librería ofrece compresión de datos compatible con gzip.
  • La cadena comprimida se procede a codificarla utilizando la librería base64 para producir una cadena de texto segura.
  • Con los datos comprimidos, se procede a dividirlos en trozos de aproximadamente 100 bytes.
  • Cada trozo de se encripta utilizando el algoritmo RSA con una llave de largo 2048 bits.
  • En este punto la información ya esta lista para enviarse a través del socket.
Seguir este método de compresión ayuda en dos cosas: en ahorrar ancho de banda al enviar menos datos a través del socket y en establecer una conexión segura entre los sockets.

Se tiene un error al reconstruir los datos del lado del servidor, al parecer no se obtiene el trozo completo de información por lo que el decifrado falla, se estará trabajando en mejorar el proceso de compresión y encriptación.


Avances para la siguiente semana


Los avances en la redacción de la tesis será redactar la ejecución de los experimentos diseñados.

Los avances en código a realizar son:
  • Arreglar el módulo de encriptación.
  • Complementar el módulo de retroalimentación al usuario.


lunes, 3 de marzo de 2014

[Tesis] Semana 7: Implementación de la solución propuesta

Notas de la semana


La reunión inicial correspondiente a esta semana se llevó a cabo el día 28 de febrero de 2014.

Las observaciones realizadas a los avances de la semana anterior fueron:

  • Ortografía.
    • Acentos y redacción.
  • Reacomodar subsecciones huérfanas .
  • Agregar referencias al capítulo uno.
  • Agregar un framebox a las imágenes pendientes.
  • Imágenes para explicar los algoritmos de extracción de características, hacer una tabla comparativa y finalmente explicar los que se usen en el proyecto.
  • Agregar imagen para la información generada usando realidad aumentada.
  • Agregar imagen para definir qué son las características (keypoints y descriptors).



Evidencia de la sexta semana:
  • Redactar una entrada en el blog con los avances realizados durante la semana. (1 punto)
  • El séptimo avance de código consistió en mejorar el de retroalimentación para el usuario cuando un logotipo es detectado. (4 puntos)
  • El séptimo avance de redacción de tesis consistió en comenzar a continuar redactando la solución propuesta (4 puntos)
  • Reunión final agendada para el día 04 de marzo de 2014 (1 punto)

Avances de la redacción tesis


Para esta semana se continuó con la redacción de la solución propuesta para comprobar la hipótesis del proyecto de tesis.

Para el diseño de la solución propuesta de debieron establecer todas las herramientas, métodos y procesos que la conforman.

En la subsección Implementación se hablará de manera más especifica de los procesos establecidos, se especificarán los algoritmos utilizados y la forma en la que se implementarán en la solución propuesta, se hablará de los datos específicos del proyecto, cómo son, cómo se procesarán, cómo se modificarán

Se corrigieron las observaciones realizadas.

Avance en código


Los avances pueden encontrarse en el repositorio: https://github.com/jcespinosa/EcoGlasses

Para esta semana se propuso como avance mejorar la retroalimentación para el usuario, para ello se agregó una respuesta visual dependiendo si un logotipo es detectado o no.

Para ello el servidor recupera algo de información del logotipo y la envía en formato JSON, posteriormente el cliente recibe la información y realiza los cambios en la interfaz.


Para una siguiente etapa puede resultar atractivo agregar algún tipo de cifrado entre la comunicación con los sockets, mejorar el proceso de detección y la retroalimentación para el usuario.


Avances para la siguiente semana


Los avances en la redacción de la tesis será redactar el diseño experimental.

Los avances en código a realizar son:
  • Mejorar el módulo de retroalimentación para el usuario.
  • Cifrar la comunicación.