DESARROLLO E IMPLEMENTACIN DE UN SOFTWARE DE RECONOCIMIENTO

  • Slides: 32
Download presentation
DESARROLLO E IMPLEMENTACIÓN DE UN SOFTWARE DE RECONOCIMIENTO DE DÓLARES AMERICANOS DIRIGIDO A PERSONAS

DESARROLLO E IMPLEMENTACIÓN DE UN SOFTWARE DE RECONOCIMIENTO DE DÓLARES AMERICANOS DIRIGIDO A PERSONAS CON DISCAPACIDAD VISUAL UTILIZANDO TELÉFONOS MOVILES INTELIGENTES CON SISTEMA OPERATIVO ANDROID CHRISTIAN ROBERTO CATACTA LLIVE CARLOS ANDRES GUAITA AYALA 1

Agenda �Introducción �Personas con Discapacidad Visual �Teléfonos Móviles Inteligentes �Sistemas Operativos �Sistema Operativo Android

Agenda �Introducción �Personas con Discapacidad Visual �Teléfonos Móviles Inteligentes �Sistemas Operativos �Sistema Operativo Android �Procesamiento Digital de Imágenes �Diseño e Implementación del Software �Conclusiones y Recomendaciones 2

Introducción �El Proyecto consiste en hacer una aplicación que funcione en teléfonos móviles inteligentes

Introducción �El Proyecto consiste en hacer una aplicación que funcione en teléfonos móviles inteligentes que posean el sistema operativo Android de Google, esta aplicación permite reconocer la denominación de dólares americanos mediante la cámara del dispositivo móvil y presentarlo en modo de audio para las personas con discapacidad visual. 3

Estadísticas del CONADIS Personas con discapacidades registradas y carnetizadas (1996 al 2011) 313. 000

Estadísticas del CONADIS Personas con discapacidades registradas y carnetizadas (1996 al 2011) 313. 000 personas con discapacidad en Ecuador 35. 000 personas con discapacidad visual 4

Generalidades Organismos • VICEPRESIDENCIA DEL ECUADOR • CONADIS Leyes • LA LEY ORGÁNICA DE

Generalidades Organismos • VICEPRESIDENCIA DEL ECUADOR • CONADIS Leyes • LA LEY ORGÁNICA DE DISCAPACIDADES • PRIMER PLAN NACIONAL DE DISCAPACIDADES • PLAN DEL BUEN VIVIR • FENCE 5

Teléfonos Móviles Inteligentes Teléfonos inteligentes convertidos en puntos finales del Internet y la red

Teléfonos Móviles Inteligentes Teléfonos inteligentes convertidos en puntos finales del Internet y la red de Telecomunicaciones 6

Mercado de Teléfonos Móviles Inteligentes Ecuador América Latina Telefonos Moviles vs Telefonos Moviles Inteligentes

Mercado de Teléfonos Móviles Inteligentes Ecuador América Latina Telefonos Moviles vs Telefonos Moviles Inteligentes Teléfonos Móviles Inteligentes 20% Teléfonos Móviles 80% 7

Sistemas Operativos • Provee de un ambiente conveniente de trabajo. • Hacer uso eficiente

Sistemas Operativos • Provee de un ambiente conveniente de trabajo. • Hacer uso eficiente del Hardware. • Proveer de una adecuada distribución de los recursos. • Gobernar el Sistema. y asignar los recursos. • Administrar y controlar la ejecución de los programas. DISPOSITIVOS DISPOSITIVOS h. TC, Samsung Sony. Ericcson, Motorola, LG, Huawei. i. Phone 3, i. Phone 4, i. Phone 5, i. Pad Exclusivos Black. Berry Exclusivos Nokia Pocket Pc (Palm Dell), Nokia, h. TC 8

Características Comparativas Sistema Operativo Android 2. 1 Eclair Black. Berry OS 4. 7 i.

Características Comparativas Sistema Operativo Android 2. 1 Eclair Black. Berry OS 4. 7 i. Phone OS 3. 0 Symbian 5 th Edition Windows Mobile 6. 5 Apariencia Visual Nucleo Linux Propietario OS X Symbian Windows CE Licencias No Limitado Si Limitado Funcionamiento Desarrollo de Terceros Aceptable Aceptable Excelente Escaso Limitado Aplicaciones Android Market Black. Berry App World i. Tunes OVI App. Store 9

Mercado de Sistemas Operativos Ecuador A nivel mundial 10

Mercado de Sistemas Operativos Ecuador A nivel mundial 10

Sistema Operativo ANDROID Open Handset Alliance 05 de Noviembre del año 2007 11

Sistema Operativo ANDROID Open Handset Alliance 05 de Noviembre del año 2007 11

Arquitectura ARQUITECTURA 12

Arquitectura ARQUITECTURA 12

Versiones Android 2. 3 Android 2. 1 (Eclair – 01/2010) Android 2. 2 (Froyo

Versiones Android 2. 3 Android 2. 1 (Eclair – 01/2010) Android 2. 2 (Froyo - 05/2010) (Gingerbread – 12/2010) Android 1. 6 (Donut – 09/2009) Android 1. 5 (Cupcake – 04/2009) • Uso del gesto de “pellizcar” para hacer zoom en el navegador, la galería y en Google Maps. Transiciones • Quick Search Box, en la pantalla de inicio busca (contactos, números, Google) animadas entre ventanas. y Mejoras en la velocidad de la cámara. Soporte para Radio FM. Multitouch: Una nueva clave de acordes permite al usuario introducir rápidamente los • Mejoras en Google Maps. Mejoras • Posibilidad de conectarse a redes VPN, 802. 1 x. en la velocidad del navegador web con Webkit e Intérprete Java. Script. Permite compartir la conexión del teléfono con el portátil, haciendo del móvil un hotspot. números y símbolos. • Mejoras en la duración de la batería. Posibilidad Las aplicaciones de Android Market aparecen ahora ordenadas por categorías de personalizar los Widgets mostrados en la pantalla de inicio. Compilador JIT (Just in Time) que hace unas 4 o 5 veces más rápida la nueva versión de • Control sobre las aplicaciones. 13 Android. • Llamadas por Internet mediante cuentas SIP.

Desarrollo en Android Requerimientos previos: Android Versiones Microsoft Windows OS XP, Vista o 7

Desarrollo en Android Requerimientos previos: Android Versiones Microsoft Windows OS XP, Vista o 7 Mac OS 10. 4. 8 o posterior (sólo los chips de Intel) Linux Toda versión Plataformas que soportan herramientas de Desarrollo para Android Descargar e Instalar : Eclipse IDE El SDK de Android Java Development Kit (JDK) 14

Tipos de Aplicaciones Android Foreground Applications • PRIMER PLANO Background Servicese Intent Receivers •

Tipos de Aplicaciones Android Foreground Applications • PRIMER PLANO Background Servicese Intent Receivers • SEGUNDO PLANO Intermittent Applications • Chat en vivo y aplicaciones de correo electrónico Widgets • Iconos visuales interactivos que se pueden añadir a las pantallas de inicio. 15

Herramientas para el desarrollo en Android (AVD) - DISPOSITIVO VIRTUAL ECLIPSE IDE (DDMS) -

Herramientas para el desarrollo en Android (AVD) - DISPOSITIVO VIRTUAL ECLIPSE IDE (DDMS) - LOGCAT 16

Acceso al Hardware mediante Android Parámetros de la Cámara Scene. Mode Flash. Mode Balance.

Acceso al Hardware mediante Android Parámetros de la Cámara Scene. Mode Flash. Mode Balance. Blancos Color. Effect Focus. Mode • Permite seleccionar los tipos de escena. ( playa, puesta de sol, etc) • Permite especificar el modo de flash, como encendido, apagado, reducción de ojos rojos, o el modo de linterna. • Automático, Incandescente, Fluorescente, Día, Nublado • Escala de grises, Sepia, Negativo, Solarizar. • Configuración de autofocus. 17

Procesamiento Digital de Imágenes Imagen Digital Modelos de Color Modelo de color RGB Modelo

Procesamiento Digital de Imágenes Imagen Digital Modelos de Color Modelo de color RGB Modelo de color YCb. Cr 18

Técnicas de Procesamiento Histograma Sub-muestreo Filtro de Media Filtro Paso Bajo Filtros Filtro de

Técnicas de Procesamiento Histograma Sub-muestreo Filtro de Media Filtro Paso Bajo Filtros Filtro de Media Ponderada Filtro de Mediana Filtros Filtro Laplaciano Filtro Paso Alto Filtro Menos Laplaciano 19

Técnicas de Procesamiento ANÁLISIS DE COMPONENTES PRINCIPALES Eigenfaces Eigenvalues Meanfaces 20

Técnicas de Procesamiento ANÁLISIS DE COMPONENTES PRINCIPALES Eigenfaces Eigenvalues Meanfaces 20

Diseño del Software Etapa de Aprendizaje Banco de Imágenes de dólares americanos Pre-procesamiento de

Diseño del Software Etapa de Aprendizaje Banco de Imágenes de dólares americanos Pre-procesamiento de imágenes utilizando PDI Procesamiento de las imágenes utilizando PCA Componentes Principales, meanface, eigenvectors y eigenvalues Etapa de reconocimiento Imagen capturada por la Pre-procesamiento cámara del de la imagen dispositivo móvil utilizando PDI Procesamiento de la imagen utilizando PCA Proceso de Reconocimiento de la imagen Identificación de la imagen 21

Banco de Imágenes Etapa de Aprendizaje Cara Frontal Obtención del Banco de Imágenes de

Banco de Imágenes Etapa de Aprendizaje Cara Frontal Obtención del Banco de Imágenes de Dólares Americanos: Posterior No. De Muestras 24 24 Ángulos de Inclinación Detalles 0º 90º 180º 270º Cada muestra se tomó ± 1, con cierto grado de ± 5, inclinación debido a ± 10 que las personas no 0º 90º 180º 270º videntes no siempre ± 1, podrán colocar los ± 5, billetes en una posición ± 10 exacta. 22

Pre-Procesamiento del Banco de Imágenes Etapa de Aprendizaje SUB MUESTREO FILTRO DE MEDIA PONDERADA

Pre-Procesamiento del Banco de Imágenes Etapa de Aprendizaje SUB MUESTREO FILTRO DE MEDIA PONDERADA FILTRO MENOS LAPLACIANO Reducción de imagen Imagen suavizada Realza los rasgos lineales EXPANSION DEL HISTOGRAMA DE LA IMAGEN Normaliza la imagen Resolución Original (2592 x 1952) Nueva Resolución (80 x 60) Pre procesamiento de Imagen de muestra 23

Obtención de Eigenvectors Etapa de Aprendizaje Transformación vector Γ Creación de matriz b Calculo

Obtención de Eigenvectors Etapa de Aprendizaje Transformación vector Γ Creación de matriz b Calculo de los eigenvalues Cálculo de vector Ψ Creación de la matriz a Creación de la matriz K Calculo de los eigenvectors Proyección de la matriz 24

Almacenamiento de Eigenvectors Etapa de Aprendizaje . xml R. java. xml /res/values/ package net.

Almacenamiento de Eigenvectors Etapa de Aprendizaje . xml R. java. xml /res/values/ package net. sgoliver; public final class R { public static final class attr { } public static final class drawable { public static final int icon=0 x 7 f 020000; } public static final class layout { public static final int main=0 x 7 f 030000; } public static final class string { public static final intapp_name=0 x 7 f 040001; public static final int hello=0 x 7 f 040000; } } 25

Imagen capturada por la cámara Etapa de Reconocimiento Frame Objeto tipo Camera Surface. Holder.

Imagen capturada por la cámara Etapa de Reconocimiento Frame Objeto tipo Camera Surface. Holder. Callback Camera. Parameters (2592 x 1952) on. Preview. Frame Matriz de Imagen Digital 1 26

Pre-Procesamiento de la imagen capturada Etapa de Reconocimiento Frame SUB MUESTREO (2592 x 1952)

Pre-Procesamiento de la imagen capturada Etapa de Reconocimiento Frame SUB MUESTREO (2592 x 1952) FILTRO DE MEDIA PONDERADA (80 x 60) FILTRO MENOS LAPLACIANO EXPANSION DEL HISTOGRAMA Matriz de Imagen Digital 1 Matriz de Imagen Digital 2 27

Proyección de la imagen al espacio de caras Etapa de Reconocimiento Proyección de la

Proyección de la imagen al espacio de caras Etapa de Reconocimiento Proyección de la matriz Frame (80 x 60) ETAPA DE OBTENCIÓN DE EIGENVECTORS, EIGENVALUES Y MEANFACE. Matriz de Imagen Digital 2 28

Comparación de la Imagen capturada Etapa de Reconocimiento Distancia Euclideana Etapa de comparación 29

Comparación de la Imagen capturada Etapa de Reconocimiento Distancia Euclideana Etapa de comparación 29

Presentación de Resultados Etapa de Reconocimiento 30

Presentación de Resultados Etapa de Reconocimiento 30

Conclusiones y Recomendaciones • El futuro de Linux y especialmente de Android es uno

Conclusiones y Recomendaciones • El futuro de Linux y especialmente de Android es uno de los más claros y prometedores por sus propias características de inclusión en el desarrollo, seguridad y transparencia así como en la versatilidad de su modelo económico donde el Gobierno del Ecuador, empresa pública, universidades, bancos y muchas empresas están apostando a esta plataforma en la nueva era de la información y las tecnología libres. • El Ecuador aun es un país que adopta tecnologías mas no las desarrolla en su totalidad, sin embargo con la investigación y el conocimiento adecuado se puede empezar a desarrollar aplicaciones para dispositivos móviles en Ecuador, como es el caso de este proyecto de desarrollo de una aplicación para dispositivos celulares con Android SO. • Según las comparativas obtenidas de la investigación obtenemos que el sistema operativo Android, es una excelente plataforma para desarrollar aplicaciones, por ser software libre sin necesidad de adquirir licencias de programación o instalación evitándonos los altos costos, además porque se lo puede empezar a programar con tan solo un pequeño conocimiento de java bien sea en Linux o Windows de cualquier versión. 31

Conclusiones y Recomendaciones • El algoritmo de Análisis de Componentes Principales – PCA es

Conclusiones y Recomendaciones • El algoritmo de Análisis de Componentes Principales – PCA es muy adecuado para el reconocimiento de patrones, sin embargo, depende mucho de las condiciones de luz y la posición de la imagen a reconocer, por lo cual su eficiencia se ve comprometida al aplicarse sobre un sistema que se traslada como es el caso de un teléfono celular, por lo tanto si se lo desea aplicar en dichos dispositivos se lo debe hacer utilizando filtros y técnicas de Procesamiento Digital de Imágenes – PDI que aumenten la calidad de la imagen a reconocer. • Al aplicar algoritmos para el reconocimiento de patrones dentro de dispositivos móviles se debe tener en cuenta el Hardware ya que los mismos tienen recursos limitados gracias a su naturaleza portable, por lo cual los algoritmos no utilizar cálculos extensos para que puedan ser eficientes. 32