traductor ar
Post on 02-Nov-2015
229 Views
Preview:
DESCRIPTION
TRANSCRIPT
-
FACULTAD DE INGENIERA
TRADUCTOR AR
Integrantes: Miguel ngel Martnez Soruco
Mara Luisa Natusch Justiniano
Docente: Ing. Jos Antonio Benavente
Materia:
Ingeniera de Software II
Santa Cruz de la Sierra Bolivia Junio de 2013
-
CONTENIDO
Planteamiento del Problema ..................................................................................................... 3
Objetivo del trabajo ................................................................................................................... 3
Mtodo de Solucin .................................................................................................................. 3
Contenido Adjunto .................................................................................................................... 4
Marco Terico ........................................................................................................................... 4
Realidad Aumentada ............................................................................................................. 4
Reconocimiento Optico de Caracteres .................................................................................. 4
Procesamiento de Lenguajes Naturales ................................................................................ 4
Objetivo .................................................................................................................................... 5
Requerimientos ........................................................................................................................ 7
Requerimientos Funcionales ................................................................................................. 7
Requerimientos No Funcionales ........................................................................................... 7
Restricciones ........................................................................................................................ 7
Modelo de Anlisis.................................................................................................................... 8
Identificacin de los actores ...................................................................................................... 9
Identificacin de los Casos de Uso ........................................................................................... 9
Casos de Uso que implementan los Requisitos Funcionales .................................................. 10
Modelo de Casos de Uso ........................................................................................................ 11
Modelo De Dominio ................................................................................................................ 12
Descripcin de las clases del Dominio ................................................................................... 13
Identificar Paquetes de Analisis .............................................................................................. 14
Modelo de paquetes y sus dependencias ............................................................................... 14
Modelo de Diseo ................................................................................................................... 15
-
Modelo de Clases ................................................................................................................... 16
Paquetes y subsistemas ......................................................................................................... 17
Modelo de Despliegue ............................................................................................................ 18
Modelo de Datos .................................................................................................................... 19
Descripcion de la Arquitectura ................................................................................................ 19
-
PLANTEAMIENTO DEL PROBLEMA
El avance de las Tecnologas de la Informacin cada vez apunta ms hacia la Nube y las
Aplicaciones Mviles. Es por eso que estn apareciendo este tipo de aplicaciones en el
mercado, ya sea de Software Libre o Comercial.
La tendencia de hoy en da es construir aplicaciones combinando varios conceptos distintos,
por ejemplo en este caso utilizaremos los siguientes conceptos para desarrollar una
aplicacin:
Realidad Aumentada
Reconocimiento ptico de Caracteres (OCR)
Procesamiento de Lenguajes Naturales
Utilizando tambin uno de los conceptos bsicos de la Ingeniera del Software: La
Reutilizacin.
OBJETIVO DEL TRABAJO
Se realiza un Traductor de Ingles a Espaol (y viceversa) en Realidad Aumentada para
Androide utilizando herramientas de Software Libre. Este estar disponible para todos los
usuarios de Google PlayStore.
MTODO DE SOLUCIN
Se est utilizando la metodologa RUP (Proceso Unificado de Rational), este es un proceso de
desarrollo de software desarrollado por la empresa Rational Software. Junto con UML,
constituye la metodologa estndar ms utilizada para el anlisis, diseo, implementacin y
documentacin de sistemas orientados a objetos.
-
CONTENIDO ADJUNTO
MARCO TERICO
A continuacin hablaremos sobres los conceptos que utilizaremos para desarrollar dicha
aplicacin.
REALIDAD AUMENTADA1
La realidad aumentada (RA) es el trmino que se usa para definir una visin directa o
indirecta de un entorno fsico del mundo real, cuyos elementos se combinan con elementos
virtuales para la creacin de una realidad mixta en tiempo real. Consiste en un conjunto de
dispositivos que aaden informacin virtual a la informacin fsica ya existente, es decir,
aadir una parte sinttica virtual a lo real. Esta es la principal diferencia con la realidad virtual,
puesto que no sustituye la realidad fsica, sino que sobreimprime los datos informticos al
mundo real.
RECONOCIMIENTO OPTICO DE CARACTERES2
El Reconocimiento ptico de Caracteres (ROC), o generalmente como reconocimiento de
caracteres, es un proceso dirigido a la digitalizacin de textos, los cuales identifican
automticamente a partir de una imagen smbolos o caracteres que pertenecen a un
determinado alfabeto, para luego almacenarlos en forma de datos, as podremos interactuar
con estos mediante un programa de edicin de texto o similar. Con frecuencia es abreviado en
textos escritos en el idioma espaol, utilizando el acrnimo a partir del ingls OCR.
PROCESAMIENTO DE LENGUAJES NATURALES3
El Procesamiento de Lenguajes Naturales (PLN), o (NLP) del idioma ingls Natural Language
Processing, es una sub-disciplina de la Inteligencia Artificial y la rama de la ingeniera de la
1Fuente Wikipedia 2Fuente Wikipedia 3 Fuente Wikipedia
-
lingstica computacional. El PLN se ocupa de la formulacin e investigacin de mecanismos
eficaces computacionales para la comunicacin entre personas o entre personas y maquinas
por medio de lenguajes naturales.
OBJETIVO
Realizar un Traductor de Ingles a espaol (y viceversa) en Realidad Aumentada para Android
reutilizando herramientas de Software Libre.
HERRAMIENTAS
A continuacin hablaremos sobres los conceptos que utilizaremos para desarrollar dicha
aplicacin.
TESSERACT OCR4
Tesseract es un motor OCR libre. Fue desarrollado originalmente por Hewlett Packard como
software propietario entre 1985 y 1995. Tras diez aos sin ningn desarrollo, fue liberado
como cdigo abierto en el ao 2005 por Hewlett Packard y la Universidad de Nevada, Las
Vegas. Tesseract es desarrollado actualmente por Google y distribuido bajo la licencia
Apache, versin 2.0.
Tesseract est considerado como uno de los motores OCR libres con mayor precisin
disponibles actualmente.
El motor Tesseract se desarroll en los laboratorios de Bristol de Hewlett Packard en Greeley
(Colorado) entre 1985 y 1994. En 1996 se realizaron las modificaciones necesarias para su
portabilidad en Windows, y ms tarde, en 1998 se migr el sistema de C a C++.
4Fuente Wikipedia
-
LEPTONICA5
Una Biblioteca Open Source desarrollada en C para un procesamiento eficiente de imgenes
y de operaciones de anlisis de imgenes.
GOOGLE TRANSLATE API6
Google Translate o Traductor Google es un sistema de traduccin automtica gratuito
proporcionado por Google Inc , basado en datos estadsticos para traducir texto, documentos
y pginas web a otras lenguas. Google introdujo su propio software de traduccin en 2007,
antes Google utilizaba el traductor SYSTRAN, que es utilizado por otros servicios de
traduccin, tales como Babel Fish, AOL y Yahoo.
ANDROID SDK Y ANDROID NDK
Frameworks para el desarrollo de aplicaciones mviles para Android.
- SDK: Software Development Kit
- NDK: Native Development Kit
5Fuente Wikipedia 6Fuente Wikipedia
-
REQUERIMIENTOS
REQUERIMIENTOS FUNCIONALES
Requerimientos funcionales de la aplicacin a desarrollarse:
La aplicacin debe realizar un Reconocimiento ptico de Caracteres (OCR) para
capturar el texto de la imagen obtenida por la cmara del dispositivo.
La aplicacin debe traducir el texto capturado de la imagen procesada.
La traduccin debe ser del ingls al espaol o viceversa.
En la pantalla se subtitular en tiempo real la traduccin de la imagen en cuestin.
REQUERIMIENTOS NO FUNCIONALES
El Dispositivo debe contar con una cmara de mnimo 2 Megapxeles.
El Dispositivo debe contar con una pantalla.
El Sistema instalado en el dispositivo debe ser Android 2.3.6 o superior.
La imagen real debe tener buena iluminacin.
RESTRICCIONES
El cuadro de texto de la imagen real debe ser en blanco y negro.
Las letras del texto deben ser nicamente Maysculas.
Las letras del texto no deben ser cursivas.
-
MODELO DE ANLISIS
-
IDENTIFICACIN DE LOS ACTORES
Actor Descripcin
Usuario
El usuario que utiliza el dispositivo Android,
es el nico que interacta con el software.
IDENTIFICACIN DE LOS CASOS DE USO
CASO
DE USO
NOMBRE DEL CASO DE USO PRIORIDAD PRESENTACION
CU-01 Obtener imagen desde cmara Alta 2do Parcial
CU-02 Verificar si el Dispositivo no se movi
considerablemente despus de la captura de
imagen.
Media 2do Parcial
CU-03 Procesar imagen con Reconocimiento de
Patrones y capturar texto.
Muy alta Final
CU-04 Detectar idioma del texto capturado Media 1er Parcial
CU-05 Traducir texto Muy alta 1er Parcial
CU-06 Mostrar traduccin en pantalla como subttulos
de la imagen
Baja 1er Parcial
-
CASOS DE USO QUE IMPLEMENTAN LOS REQUISITOS
FUNCIONALES
Requerimiento Casos de Uso
Ejecutar OCR para capturar el texto de la
imagen obtenida.
- Obtener Imagen desde Cmara.
- Verificar si el Dispositivo no se movi
considerablemente despus de la captura de
imagen.
- Procesar imagen con Reconocimiento de
Imgenes y capturar texto.
Traducir el texto capturado de la imagen
procesada.
Traduccin ingls al espaol y viceversa
- Detectar idioma del texto capturado.
- Traducir Texto.
Subtitular en tiempo real la traduccin de la
imagen en cuestin
- Mostrar traduccin en pantalla como subttulos de
la imagen.
-
MODELO DE CASOS DE USO
-
MODELO DE DOMINIO
-
DESCRIPCIN DE LAS CLASES DEL DOMINIO
Breve descripcin de las clases del dominio que se utiliza en el diagrama de clases de
dominio:
CLASE DESCRIPCION
Cmara Es la clase conceptual que representa a la Cmara del
Dispositivo.
Imagen Real Es la clase conceptual que representa a la Imagen en el mundo
Real.
Imagen Virtual Representa a la imagen obtenida desde la cmara del
dispositivo.
Modulo OCR Representa al motor de Reconocimiento de Caracteres.
Sensor de Movimiento Representa al sensor de movimiento del dispositivo.
Pantalla Clase interfaz que interactuar con la interfaz grfica.
Traductor Clase para el motor de traduccin.
Subtitulador Clase que interactuar con la Pantalla para mostrar la
informacin producida por la aplicacin.
-
IDENTIFICAR PAQUETES DE ANALISIS
Agrupando los Casos de uso en Paquetes de Anlisis segn los conceptos de Realidad Aumentada,
Reconocimiento ptico de Caracteres y Procesamiento de Lenguajes Naturales:
Paquete de Interfaz Grfica de Usuario (GUI)
Paquete de Reconocimiento ptico de Caracteres (OCR)
Paquete de Traduccin
MODELO DE PAQUETES Y SUS DEPENDENCIAS
-
MODELO DE DISEO
-
MODELO DE CLASES
Para esta presentacin solo tenemos desarrollada una clase de nuestro modelo de clases,
esta es la clase Traductor.
-
PAQUETES Y SUBSISTEMAS
-
MODELO DE DESPLIEGUE
-
MODELO DE DATOS
DESCRIPCION DE LA ARQUITECTURA
Para describir la arquitectura de este software nos basaremos en 4+1 Vistas de la
Arquitectura de Software que propone Philippe B. Kruchten.
Vista Lgica: Esta vista apoya principalmente los requisitos funcionales, lo que el sistema
debe brinda en trminos de servicio a sus usuarios. El sistema se descompone en una serie
de abstracciones primarias, tomadas principalmente del dominio del problema en forma de
objetos o clases de objetos. Aqu se aplican los principios de abstraccin, encapsulacin y
herencia. Esta descomposicin no solo se hace para potenciar el anlisis funcional, sino
tambin sirve para identificar mecanismos y elementos de diseo comunes a diversas partes
del sistema.
Por lo tanto deberemos revisar los requerimientos del proyecto, el diagrama de clases y el
modelo de paquetes que estn indicados en el ndice de este documento.
-
Vista de Procesos: Se tratan los aspectos de concurrencia y distribucin, integridad del
sistema, y tolerancia a fallos. Tambin en esta, se especifica en cual hilo de control se ejecuta
efectivamente una operacin de una clase identificada en la vista lgica. Esta vista puede ser
descrita como un conjunto de redes lgicas de procesos que son ejecutados de forma
independiente, y distribuidos a lo largo de varios recursos de hardware conectados mediante
un bus o a una red de datos.
En este punto revisaremos los diagramas de secuencia indicados en el ndice de este
documento.
Vista de Desarrollo: Se centra en la organizacin real de los mdulos de software en el
ambiente de desarrollo. El software se empaqueta en partes pequeas que pueden ser
bibliotecas o subsistemas que son desarrollados por uno o un grupo de desarrolladores. Los
subsistemas se organizan en una jerarqua de capas, cada una brinda una interfaz estrecha y
bien definida hacia las capas superiores.
Para esta vista revisaremos los siguientes diagramas:
Paquete de Anlisis
Dependencia de Paquetes
Modelo de Subsistemas
Vista Fsica: Se toma en cuenta los requisitos no funcionales del sistema tales como,
disponibilidad, confiabilidad, desempeo entre otras ms. El sistema se ejecuta sobre varios
nodos de procesamiento (hardware). Estos nodos son relacionados con los elementos
identificados de las vistas anteriores. En esta vista se especifican varias configuraciones
fsicas. Por ejemplo, una para el desarrollo y las pruebas, o para el despliegue del sistema en
plataformas distintas.
En esta vista se necesitara ver el diagrama de despliegue indicados en el ndice de este
documento.
Vista de Escenarios (+1): La funcin de los escenarios es relacionar las cuatro vistas entre
s, de esta forma se cuenta con una perspectiva general del sistema, que ayuda a describir
nuevos elementos o validar la arquitectura.
En este caso revisaremos los diagramas de casos de uso indicados en el ndice de este
documento.
-
CONCLUSIONES
Se logr demostrar que es posible reutilizar herramientas de Software de diferentes
plataformas para elaborar una aplicacin especfica en el campo de las Aplicaciones Mviles.
RECOMENDACIONES
Se recomienda tomar el objetivo del Proyecto como un aporte para la Comunidad de Software
Libre y se insina un desarrollo mutuo entre los desarrolladores de dicha comunidad.
El avance de esta aplicacin si bien est en su Fase BETA, se puede apreciar que es
totalmente funcional y apunta a satisfacer los requisitos especificados.
top related