STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
Software libre de Reconocimiento de billetes para personas en situación de discapacidad visual
Ignacio Moretti1, Javier Jorge1, José Amado1, Daniel Puntillo1, Cristian Caniglia1
1 Instituto Nacional de Tecnología Industrial, Centro regional Córdoba, Córdoba, Argentina {imoretti, jjorge, jamado,dpuntillo, ccaniglia, labdei}@inti.gob.ar http://www.inti.gob.ar/cordoba/electronica.htm
Resumen. Los sistemas de reconocimiento de billetes para asistencia a personas con discapacidad visual presentan un alto grado de complejidad debido a la gran variedad de situaciones por resolver. El sistema descripto en el presente proyecto puede distinguir las denominaciones de billetes argentinos en diferentes posiciones, escalas y incluso en forma parcial. Los objetivos son: desarrollar un programa de software capaz de identificar billetes argentinos, su denominación y comunicar por medios auditivos esa clasificación; mejorar la calidad de vida de las personas con discapacidad visual; favorecer a la integración de las personas con discapacidad visual a la sociedad; aportar a la sociedad nuevas herramientas que ayuden a la integración de sus individuos; impulsar el desarrollo de aplicaciones de software libre y colaborativas; generar una aplicación de software accesible desde los aspectos de diseño, costo, libertad de uso, adaptabilidad, mantenibilidad en el tiempo, reusabilidad, seguridad y precisión. Actualmente se cuenta con prototipos para el reconocimiento de billetes y funcionalidades básicas en diferentes plataformas.
1 Introducción
El sistema de reconocimiento no visual que poseen los billetes argentinos actualmente se ve rápidamente degradado e inutilizado luego de un tiempo relativamente corto de uso.
Esta realidad se constituye como una oportunidad para la utilización de tecnologías existentes con el objetivo principal de integración de las personas con discapacidad visual a la sociedad.
Los dispositivos móviles pueden ser utilizados para la implementación de un sistema inteligente que sirva como herramienta para reconocer la denominación de los billetes.
El presente proyecto se centra en el desarrollo de una herramienta libre, útil y accesible para reconocer billetes utilizando dispositivos móviles.
44 JAIIO - STS 2015 - ISSN: 2451-7631
252
STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
2 Situación-Problema u Oportunidad
Según la Fundación ONCE para la cooperación e inclusión Social de las personas con discapacidad el 80% de la información necesaria para nuestra vida cotidiana implica el órgano de la visión [15].
Según la Organización Mundial de la Salud en el mundo hay aproximadamente 285 millones de personas con discapacidad visual, de las cuales 39 millones son ciegas y 246 millones presentan baja visión. Aproximadamente un 90% de la carga mundial de discapacidad visual se concentra en los países en desarrollo. El 82% de las personas que padecen ceguera tienen 50 años o más. En términos mundiales, los errores de refracción no corregidos constituyen la causa más importante de discapacidad visual, pero en los países de ingresos medios y bajos las cataratas siguen siendo la principal causa de ceguera [14].
Los individuos con discapacidad visual enfrentan diferentes problemas a diario que son imperceptibles para personas que no conviven con este problema directa o indirectamente. Esto condiciona su calidad de vida. Uno de estos problemas es la incapacidad de algunas personas de reconocer la denominación del papel moneda.
Particularmente en argentina, desde la unificación del tamaño del papel moneda en nuestro país el problema se incrementó y actualmente el único método propuesto para la identificación son las marcas en relieve presentes en los billetes. Este método es inútil, ya que dicho relieve es otorgado por la tinta con la que se imprimen y en cuestión de semanas desaparece completamente. Esto constituye una pérdida de autonomía y seguridad para las perdonas con discapacidad visual.
La realidad actual de argentina con respecto a la gran cantidad de teléfonos inteligentes que posee la población brinda un entorno más que favorable para desarrollar sobre esta tecnología. Argentina se convirtió en el mercado líder de la región en materia de teléfonos inteligentes. De acuerdo con un estudio realizado por la consultora GfK [16], el país encabeza el ranking de penetración de teléfonos inteligentes, y supera a vecinos como Chile o Brasil. Según los últimos datos disponibles, correspondientes a enero de 2012, los teléfonos inteligentes representan el 18% del parque de celulares de Sudamérica, mientras que en la Argentina el porcentaje trepa al 27%, superando al 18% de Brasil y Uruguay y al 15% de Chile. Las herramientas de accesibilidad, en especial para personas en situación de discapacidad visual están evolucionando a pasos agigantados haciendo que los teléfonos inteligentes sean cada vez más utilizados por las personas en esta situación.
La demanda actual de las personas en situación de discapacidad visual consiste en eliminar las barreras que les impiden reconocer los billetes. Esto implicaría un rediseño y necesariamente el reemplazo de todos los billetes de curso legal argentino. Esto permitiría la inclusión real de este grupo a la sociedad. Dada la imposibilidad de materializar esta solución en el corto plazo, se propone desarrollar el presente proyecto con el fin de integrar a estas personas. El proyecto consiste en el desarrollo de una aplicación de software libre que pueda ser utilizada en diferentes dispositivos existentes capaz de reconocer los billetes.
44 JAIIO - STS 2015 - ISSN: 2451-7631
253
STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
2.1 Soluciones existentes
El reconocimiento de billetes de pesos argentinos se enmarca en problemas más generales como reconocimiento de patrones, clasificación o reconocimiento de imágenes.
Actualmente existen diferentes aplicaciones desarrolladas para dispositivos móviles que realizan esta tarea con billetes de otras regiones, como dólares y euros, la mayoría son de carácter comercial y no son de código abierto. Existe una aplicación que puede reconocer billetes argentinos, pero en realidad realiza reconocimiento de cualquier texto [15]. Esto dificulta el reconocimiento de la denominación del billete ya que es indispensable que el usuario posicione el teléfono sobre el área de la denominación. En este proyecto se propone realizar una solución que permita el reconocimiento del billete en cualquier posición y que además sea software libre.
2.2 Objetivo General
Desarrollar una aplicación para dispositivos móviles capaz de reconocer billetes, que por su accesibilidad facilite la integración social de las personas en situación de discapacidad visual. Y además sea de licencia libre para que cualquiera lo pueda reproducir, mejorar, adaptar y usar libremente.
2.3 Objetivos Específicos
Objetivos Técnicos
1. Desarrollar una aplicación móvil capaz de identificar billetes de pesos argentinos, que pueda distinguir las denominaciones en diferentes posiciones, escalas y incluso en forma parcial, y por último que pueda comunicar el resultado por medios no visuales.
2. Crear un proyecto de código abierto para que pueda ser utilizado, modificado y adaptado libremente por la comunidad.
3. Generar esquemas de replicación, producción y distribución que garanticen la accesibilidad de este sistema.
4. Brindar una solución al problema intentando no incorporar nuevos productos, aprovechando dispositivos existentes siempre que sea posible.
5. Ofrecer una aplicación de uso gratuito.
Objetivos Sociales
6. Favorecer la integración de las personas en situación de discapacidad visual a la sociedad.
7. Brindar mayor independencia, seguridad y privacidad a las personas en situación de discapacidad visual a la hora de administrar su dinero.
8. Mejorar la calidad de vida de las personas en situación de discapacidad visual. 9. Incentivar la participación de las personas en situación de discapacidad activa en
ámbitos sociales fuera de su círculo de confianza. 10. Facilitar el acceso a diferentes actividades laborales que impliquen manejo de dine-
ro y transacciones comerciales.
44 JAIIO - STS 2015 - ISSN: 2451-7631
254
STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
11. Disminuir la posibilidad de estafa a las personas en situación de discapacidad. 12. Fomentar el trabajo colaborativo y la producción de software libre como medio de
crecimiento de la comunidad.
3 Solución
A través de distintas técnicas de procesamiento de imágenes y herramientas de software libre se desarrolla un sistema en multiplataforma capaz de realizar esta tarea. Utilizando una librería de licencia libre OpenCV y técnicas como “feacture detection”, “descriptors matching”, algoritmos como “homography” y diferentes herramientas.
Actualmente el sistema se encuentra en la etapa de desarrollo y verificación, se cuenta con varios prototipos en ordenadores y dispositivos móviles. Estas aplicaciones consisten en el reconocimiento de los billetes a través de una imagen capturada desde una cámara digital, reconoce el billete lo resalta en la imagen y emite un audio de su denominación.
El trabajo se desarrolla como un proyecto de código abierto permitiendo que la comunidad adopte esta tecnología, pueda adaptarla y evolucionarla para diferentes usos y aplicaciones futuras. La aplicación es fácilmente configurable para funcionar en otras regiones con su respectiva moneda local.
El código fuente de los distintos prototipos se desarrolla en lenguaje C++ y Java. Este desarrollo se sustenta principalmente en la utilización de una librería denominada OpenCV para el procesamiento de las imágenes.
44 JAIIO - STS 2015 - ISSN: 2451-7631
255
STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
Fig. 1. Proceso de reconocimiento de billetes
El método utilizado para el desarrollo consta de 3 etapas bien definidas como se muestra en la Fig. 1.
La primera es el preprocesamiento de la imagen capturada a través de la cámara del dispositivo. Se utilizan diferentes filtros de imagen para reducir el ruido de la misma, luego se incrementa el contraste, sobre todo para mejorar imágenes con poca luz, por último se ajusta automáticamente el brillo de la imagen. [5]
La segunda etapa consiste en la creación de un banco de datos de imágenes de referencia de distinta calidad y resolución, a los que denominamos “templates” o modelos de billetes junto con la creación de máscaras para centrarnos en los detalles de cada billete de muestra (como se observa en la Fig. 2).
44 JAIIO - STS 2015 - ISSN: 2451-7631
256
STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
Fig. 2. Billete modelo y máscara.
La tercera etapa consiste en el reconocimiento, que es la parte crítica del proceso. Se comienza con el análisis individual de la imagen de referencia y de la imagen de captura El primer paso del reconocimiento es la extracción de los denominados puntos de interés “keypoints” de la imagen. Este proceso de denomina “Feacture Detection”. Existen diferentes algoritmos que realizan este trabajo como SIFT [7], SURF [3], GETT [12], FAST [10], ORB [11], BRISK [6], STAR [1] y MSER [8]. El que utilizamos para los distintos prototipos fue ORB[1] de licencia libre. En el segundo paso se realiza un proceso denominado “keypoints descriptor extraction” que consiste en una caracterización de los puntos de interés. Para esta tarea también existen varios algoritmos como SIFT [7], SURF [3], FREAK [2], BRIEF [4], ORB [11] y BRISK [6]. El utilizado en este caso fue ORB ya que uno de los objetivos de este trabajo es la utilización de software libre. En el tercer paso se realiza el proceso de matching que consiste en la comparación de los descriptores de cada punto de interés. Se identifican los puntos de cada imagen que coincidan según el algoritmo utilizado en este caso existen Brute-force y FlannBassed [9].
Ya que el proyecto se encuentra actualmente en desarrollo se realizaron distintas pruebas con los dos algoritmos con resultados similares.
Como cuarto paso, teniendo las correspondencia de puntos de interés entre las imágenes comparadas, ejecutamos un algoritmos denominado “find homography” que consiste en la identificación del objeto en diferentes posiciones obteniendo las coordenadas en la imagen de captura. Por último si se reconoce alguno de los billetes de referencia en la imagen de captura es emitido mediante medios auditivos la denomi-
44 JAIIO - STS 2015 - ISSN: 2451-7631
257
STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
nación de ese billete, y el proceso vuelve a comenzar con una nueva imagen de captura
4 Innovación e Inédito
En general, las aplicaciones existentes para resolver este problema son rentadas y no son adaptables a pesos argentinos. Existen proyectos de aplicaciones que realizan reconocimiento de texto, pero estas últimas no son efectivas en el reconocimiento de billetes ya que es necesario posicionar visualmente una cámara sobre la denominación del billete.
El proyecto brindará la primer aplicación libre y gratuita, que a través del reconocimiento de imágenes distingue las denominaciones de billetes en diferentes posiciones, escalas y incluso en forma parcial.
5 Beneficiarios
Los beneficiarios directos son todas aquellas personas que viven en argentina que por diferentes motivos se encuentran en situación de discapacidad visual.
Los beneficiarios indirectos son los programadores que pueden participar del proyecto, aprender sobre procesamiento de imágenes y el uso de esta tecnología.
6 Relevancia para el Interés Social
Tal como se desarrolla en la sección Objetivos Sociales, se espera que el desarrollo de esta aplicación integre a las personas en situación de discapacidad a las actividades cotidianas que antes se veían limitadas por la imposibilidad de reconocer los billetes.
La efectividad de esta aplicación será probada primero en laboratorio, se reducirá al mínimo posible la tasa de falsos positivos, es importante que la aplicación no informe valores incorrectos, solo se deben informar valores con un alto nivel de confianza. Se realizarán pruebas de desempeño con personas en situación de discapacidad hasta lograr la aprobación del 80% de los sujetos de prueba. Posteriormente se publicará la aplicación en una tienda de aplicaciones para dispositivos móviles y se recibirá la realimentación de los usuarios en condiciones reales.
Además al desarrollar esta aplicación, publicada de manera libre también se sentará un nuevo precedente. Demostrando que desde el sector público se puede aportar a la resolución del problema y además alentar a la comunidad de desarrolladores a participar abiertamente en un desarrollo colectivo con beneficios para las personas con discapacidad. En este proyecto en particular se persigue el desarrollo de una aplicación específica, pero al dejarla abierta y modificable para toda la comunidad se convierte en una herramienta de educación y transferencia de conocimientos, que puede ser usada para resolver distintos problemas con esta misma técnica y tecnología.
Este tipo de proyectos abren las puertas para que futuros profesionales en el área de la ciencia de la computación, ingeniería en computación, electrónica y sistemas puedan formarse en el campo del procesamiento de imágenes. Las líneas de investigación
44 JAIIO - STS 2015 - ISSN: 2451-7631
258
STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
cubiertas por este proyecto serán presentadas en las distintas unidades académicas de la ciudad para realizar trabajos finales o prácticas profesionales.
Este proyecto vincula directamente centros de investigación como el CONICET y los distintos grupos de investigación de las universidades, como así también con diferentes áreas del mismo Instituto Nacional de Tecnología Industrial (INTI) a través del centro de Tecnología para la Discapacidad.
Desde el punto de vista institucional, la realización de este proyecto deja abierta la puerta para resolver otros problemas comunes que existen actualmente en el sector industrial, como lo es el reconocimiento de objetos, utilizado actualmente en maquinas herramientas en industrias de escala mundial. Servirá como experiencia tanto al instituto como al grupo de desarrollo para futuros proyectos de innovación en tecnología para la industrialización del país.
7 Viabilidad Técnica, Financiera y Política Organizacional
Los materiales a utilizar son computadoras con entorno para desarrollo de aplicaciones móviles para Android, dispositivos de prueba como diferentes tablets y modelos de celulares.
Las metodologías de desarrollo de software que utilizaremos se denominan “Metodologías Ágiles”.
El problema central a resolver es el reconocimiento de imágenes. Los experimentos a desarrollar serán la ejecución de distintos prototipos que tendrán como entrada un banco de imágenes de verificación preclasificadas. Esto constituirá una herramienta de valorización de los distintos prototipos.
En los siguientes experimentos se utilizarán voluntarios con discapacidad visual para comparar el nivel de exactitud de los prototipos con respecto a la capacidad real de estos individuos.
Está previsto realizar evaluaciones de usabilidad con estos mismos voluntarios con el objeto de construir una aplicación a medida de estas personas. Para la realización de todas estas pruebas se cuenta con la infraestructura necesaria en el Laboratorio de Desarrollo en Electrónica e Informática (LabDEI) del Instituto Nacional de Tecnología Industrial (INTI) de Córdoba.
En la última etapa el software será publicitado para que diferentes usuarios comiencen a utilizarlo. Además se realizará una presentación ante la comunidad de software libre a los fines de conseguir interesados en mantener y agregar mejoras. El grupo desarrolla su actividad en el Instituto Nacional de Tecnología Industrial (INTI Centro regional Córdoba), que consta con infraestructura adecuada y con personal técnico y profesional con las capacidades necesarias para desarrollar el proyecto, cuenta con el apoyo de la institución en numerosos aspectos. Además recientemente se está incorporando al proyecto la asociación cordobesa de ciegos UCORCI, en la cual se encuentran trabajando voluntarios estudiantes de la carrera de diseño industrial que vienen trabajando en el tema desde hace tiempo.
44 JAIIO - STS 2015 - ISSN: 2451-7631
259
STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
8 Facilidad de Reproducción
Al ser un proyecto de software de código abierto solo se necesita un dispositivo móvil apto para descargar y ejecutar la aplicación que estará disponible en tiendas virtuales de manera gratuita.
Si se desea modificar y adaptar a otra moneda, sólo es necesaria una computadora de escritorio con los programas básicos para su edición. Estos son Eclipse, el entorno de desarrollo de aplicaciones para dispositivos móviles y la librería OPENCV. Con estas herramientas es posible realizar una modificación de las plantillas y su equivalente sonoro que permita reconocer nuevos billetes e indicar su denominación.
9 Ambiente de Hardware y Software
El hardware necesario es un dispositivo móvil (teléfono o tablet) con cámara incorporada y sistema operativo android. El software necesario es: la aplicación de reconocimiento y la librería de procesamiento de imágenes OpenCV.
Fig. 3. Infraestructura de software y hardware necesaria Para brindar mayor cobertura de posibles usuarios existe una versión para computadoras de escritorio. Donde el hardware necesario consiste en una cámara digital con conexión USB y una PC. Gracias a la librería utilizada la aplicación puede ser utilizada tanto en Linux como en Windows, por lo que el software necesario se reduce a la aplicación y la librería como se muestra en la Fig. 4.
44 JAIIO - STS 2015 - ISSN: 2451-7631
260
STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
Fig. 4. Infraestructura de software y hardware necesaria para PC
10 Resultados y Conclusiones
Actualmente ya se realizaron pruebas con billetes argentinos en varias condiciones de posición e iluminación. Hasta el momento los resultados obtenidos son satisfactorios y concuerdan con los esperados, tal como se puede observar en las Fig. 5, 6 y 7.
Fig. 5. Resultado billete referencia e imagen capturada.
Fig. 6. Resultado billete referencia e imagen capturada.
44 JAIIO - STS 2015 - ISSN: 2451-7631
261
STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
Fig. 7. Resultado billete referencia e imagen capturada.
El primer objetivo de construir un software capaz de reconocer los billetes argentinos fue cumplido. El desafío actual consiste en alcanzar un prototipo con mejores prestaciones en cuanto a velocidad de cálculo, precisión y uso de recursos. Como tareas por realizar es la difusión de esta herramienta evaluando los resultados de pruebas en entornos controlados de los usuarios finales.
11 Referencias
1. Agrawal, M. & Konolige, K. & Blas, M. (2008). “Censure:CEnter surround extremas for realtime feacture detection and matching ,” Computer Vision ECCV 2008.
2. Alahik, A. & Ortiz, R. & Vandergheynst, P. (2012). “Freak: Fast retina keypoint,” Computer Vision ECCV 2012.
3. Bay, H. & Tuytelaars, T. & Van Gool, L. (2006). “Surf:Speeded up robustfeactures,” Computer Vision-ECCV 2006.
4. Calonder, M. & Lepetit, V. & Strecha, C. & Fua, P. (2010). “Brief:Binary robust independent elementary feactures,” Computer Vision ECCV 2010.
5. Heckbert, P. (1994). Graphics Gems: IV. Morgan Kaufmann, p. 575. 6. Leutenegger, S. (2011). “BRISK:Binary robust invariant sacalable keypoints” Computer
Vision ECCV 2011. 7. Lowe, D. (2004). “Distintive image feactures from scaleinvariant keypoints,” International
journalof computer vision. 8. Matas, J. & Chum, O. & Urban, M. & Pajdla, T. (2004). “Robust wide-baseline stereo
from maximally satble extermal regions,” Image and vision computing. 9. Muja, M. & Lowe, D. (2009). “Fast Approximate Nearest Neighbors with Automatic Al-
gorithm Configuration” VISAPP 10. Rosten, E. &Drummond, T. (2006). “Machine learning for high-speed corner detection,”
Computer Vision ECCV 2006. 11. Rublee, E. & Rabaud, V. (2011). “ORB: an efficient alternative to SIFT or SURF” Com-
puter Vision ECCV 2011. 12. Shi, J. & Tomassi, C.(1994). “Good feature to track” Poceeding CVPR'94., 1994 IEEE. 13. Crean la primera app para ciegos que reconoce billetes argentinos y otros
objetos,http://www.redusers.com/noticias/crean-la-primera-apppara-ciegos-que-reconoce-billetes-argentinos-y-otrosobjetos/ 14. Ceguera y discapacidad visual Nota descriptiva N° 282 OMS, http://www.who.int/ mediacentre/factsheets/fs282/es/
44 JAIIO - STS 2015 - ISSN: 2451-7631
262
STS 2015, 2º Simposio Argentino sobre Tecnología y Sociedad.
15. Discapacidad visual: Aspectos generales, http://www.once.es/new/servicios -especializados-en-discapacidad-visual/discapacidad-visualaspectos-generales
16. La Argentina Lider en Smartphones, http://www.lanacion.com.ar/1464855la-argentina-lider-en-smartphones
44 JAIIO - STS 2015 - ISSN: 2451-7631
263
Ver+/-