Escolar Documentos
Profissional Documentos
Cultura Documentos
MARING
2012
MARINGA
2012
Banca Examinadora:
_______________________________________
Orientadora Dra. Heloise Manica Paris Teixeira
_______________________________________
Professor Dr. Edson A. Oliveira Junior
_______________________________________
Professor Dr. Renato Balancieri
DEDICATRIA
Dedico esta monografia aos meus pais que me deram muito apoio e carinho nos
momentos mais difceis da minha vida e contriburam durante todo meu crescimento
e tambm nessa nova etapa de minha vida. A minha namorada pela mais pura forma
e incondicional de amor, companheirismo, incentivo, pacincia e ajuda sem medir
esforos sempre presentes em minha vida, a minha orientadora que colaborou com
presteza para o desenvolvimento e concretizao deste trabalho.
AGRADECIMENTOS
PENSAMENTO
RESUMO
Em uma era dirigida pela informao e o advento de dispositivos mveis mais
robustos, ter a informao aliada mobilidade trilha caminhos comodidade. Neste
cenrio, em um mundo globalizado onde a comunicao entre pessoas de diferentes
pases e lnguas tem se tornado cada vez mais comum, necessrio o
conhecimento em idiomas que so mais utilizados ou que fazem parte do cotidiano
profissional. O conhecimento de um idioma demanda tempo. Este trabalho
apresenta um prottipo de um tradutor de textos baseado em tcnicas de
reconhecimento de caracteres para entrada de dados, traduo automtica por meio
de webservices para processamento e realidade aumentada para visualizao dos
resultados. O reconhecimento de caracteres responde satisfatoriamente no quesito
de entrada de dados enquanto que a traduo instantnea foi inviabilizada devido a
uma alterao na disponibilidade do webservice de traduo.
SUMRIO
1. INTRODUO....................................................................................................
1.2. Objetivos......................................................................................................
2. REVISO TERICA...........................................................................................
2.1.2. Bibliotecas............................................................................................
10
21
26
28
45
48
52
52
52
4.3. Resultados...................................................................................................
61
LISTA DE FIGURAS
Figura 1.1 Exemplos de smbolos em Idiomas no-latinos.
Figura 1.2 Teclado QWERT.
Figura 2.1 Arquitetura do Android.
Figura 2.2 Emulador do Kit de Desenvolvimento Android.
Figura 2.3 Emulao da Cmera do Emulador.
Figura 2.4 Exemplo de aplicao do OCR.
Figura 2.5 Definio dos Ambientes Real e Virtual e da Realidade Misturada.
Figura 2.6 TranslatAR para Nokia N900.
Figura 2.7 iTranslate para iPhone.
Figura 2.8 Tela do aplicativo Jibbigo.
Figura 3.1 Modelo do prottipo.
Figura 3.2 Arquitetura da biblioteca Tesseract.
Figura 3.3 Classe do reconhecimento de caracteres TessBaseAPI.
Figura 3.4 Classe CameraManager.
Figura 3.5 Funo AdjustFramingRect da classe CameraManager.
Figura 3.6 Atributos da classe CaptureActivity.
Figura 3.7 Principais funes da classe CaptureActivity.
Figura 3.8 Classe OcrInitAsyncTask e as funes para transferncia
dos arquivos de idiomas.
Figura 3.9 Classe OCRRecognizeAsyncTask.
Figura 3.10 Mtodo runHttpRequest de TranslationHelper.
Figura 3.11 Mtodo Translate de TranslationHelper.
Figura 3.12 Mtodos doInBackground e onPostExecute de TranslateAsyncTask.
Figura 4.1. Texto retirado de revistas.
Figura 4.2. Texto em Telas LCD.
Figura 4.3 Site do JMF da Oracle.
Figura 4.4 Execuo da classe WebCamBroadcaster.
Figura 4.5 Atribuio do IP na Classe SocketCamera.
Figura 4.6 Tela do emulador sendo carregado.
Figura 4.7 Menu de Opes.
Figura 4.8 Tela de opes.
Figura 4.9 Tela de opes de idiomas.
Figura 4.10 Transferncia e instalao do arquivo do idioma
Figura 4.11 Texto envolto pelo retngulo delimitador.
Figura 4.12 Erro no reconhecimento do texto.
Figura 4.13 Sucesso no reconhecimento de caracteres e no texto reconhecido.
Figura 4.14 Falha no reconhecimento de caracteres.
LISTA DE TABELAS
Tabela 1.1 Exemplos de verbetes em idiomas com smbolos no latinos.
Tabela 2.1 O Android em cdigo fonte.
Tabela 2.2 Trabalhos Correlatos.
Tabela 4.1 Resultados do teste emprico.
1 INTRODUO
1.1 O problema de pesquisa
A linguagem escrita um importante meio de transmisso da informao
inserido no cotidiano das pessoas. Contudo, quando a escrita se encontra em uma
lngua desconhecida pelo leitor da informao, ela no compreendida. Para
amenizar esse problema, solues tecnolgicas de traduo so propostas, desde
dicionrios eletrnicos a tradutores instantneos. Nos primeiros dicionrios
eletrnicos, o texto no compreendido manualmente inserido como entrada dos
aplicativos. Esses buscam em um ndice alfabtico e apresentam ao usurio o
resultado em forma de texto ou sada de voz. Um exemplo desse tipo de dicionrio
o Franklin TGA-470 Global Translator [FRANKLIN ELETRONIC PUBLISHERS,
2011].
O desenvolvimento da Internet e redes sem fio promoveram a
comunicao entre pessoas em qualquer hora e lugar. Com o surgimento de
dispositivos mveis com maior capacidade de processamento, foram concebidos
novos tradutores eletrnicos, como o iTranslate [APPLE STORE, 2011] e o Jibbigo
[JIBBIGO, 2011]. Esses dispositivos auxiliam a compreenso de textos, porm
necessitam que o usurio fornea a entrada de dados por meio de digitao (no
caso do Franklin TGA-4701) ou pronncia (no caso do Jibbigo). Dessa forma, tornase necessrio que o usurio tenha conhecimento do idioma para pronunciar as
palavras ou digitar os smbolos corretamente, o que nem sempre uma tarefa
simples. Essa dificuldade comum em idiomas de origem oriental como o chins,
coreano, rabe entre outros que possuem escritas cujos smbolos so peculiares.
Essa problemtica exemplificada no seguinte cenrio. Um usurio, que
conhece somente a lngua portuguesa brasileira se encontra em um pas de lngua
inglesa e ao avistar uma placa indicando water deseja saber seu significado.
Utilizando o Franklin TGA-470 basta digitar water ou pronunciar w t r no Jibbigo.
Neste cenrio, os dois aplicativos citados provavelmente atendero a necessidade
de traduo do usurio.
Idioma
Nome Nativo
Arabic
Armenian
Bashkir
Kashmiri
,
Kazakh
Marathi (Marh)
1.2 Objetivos
Objetivo geral
Este trabalho tem como objetivo geral contribuir com traduo instantnea
de textos que contenham smbolos de difcil compreenso pelos usurios com a
utilizao de dispositivos mveis.
Objetivos especficos
outras
para
diferentes
fins
como
realizar
negcios,
dilogo
poltico,
2 REVISO TERICA
Este captulo apresenta os principais temas estudados para
2.1.2 Bibliotecas
O Android possui um conjunto de bibliotecas C/C++ usado por vrios
componentes do sistema Android. Elas esto disponveis aos desenvolvedores
atravs do framework de aplicaes Android. As bibliotecas escritas em C/C++
incluem:
cdigo), Java (2,1 milhes de linhas de cdigo), em C++ (1,75 milho de linhas de
cdigo) e outras linguagens conforme ilustra a Tabela 2.1.
10
11
Um conjunto de Views rico e extensvel que pode ser usado para construir
uma aplicao, incluindo listas, grids, caixas de texto, botes e at um
navegador web embutido;
mvel, o AVD (Android Virtual Device), usado para a realizao dos testes e
execuo do aplicativo proposto nesta pesquisa.
ser utilizada pelo aplicativo, mas uma vez executado o projeto, a cmera restringese a apenas a visualizao de um fundo com quadriculado, conforme a Figura 2.3.
At o presente momento, a Google no forneceu indcios de estar trabalhando em
alguma implementao ou pelo menos uma data de quando ela estar disponvel
nos emuladores.
comerciais
como
Kanji
OCR
da
Toshiba
usada
para
22
Jibbigo
iTranslate
TranslatAR
Android
Android e iOS
iOS
Maemo 5 Linux
63
9 (Em pares)
50
63
Online
Offline
Offline
Online
No
Sim
Sim, para
No
(ARTranslator)
Portabilidade
Nmero de Idiomas
Disponibilidade
Reconhecimento
por voz
alguns
idiomas
Licena
Livre
Proprietria
Livre
Livre
23
ocupada pelo Windows Mobile diminuiu de 2,7% para 1,5%. O relatrio no chega a
mencionar o Palm OS que o pioneiro no segmento, mas hoje encontra-se obsoleto
tendo a verso 6.0 Cobalt como sua ltima verso e nem o Blackberry OS,
desenvolvido pela RIM (Research in Motion) restrito aos aparelhos Blackberry
[BONNINGTON, 2011].
Apesar dos aplicativos serem escritos em Java, no h um cdigo na
plataforma e o bytecode Java no diretamente executado. As classes Java so
recompiladas em executveis Dalvik e executados em uma mquina virtual Dalvik
(mquina de execuo do Android). Essa mquina virtual uma Virtual Machine
modificada para o Android, com dispositivos otimizados que so executados com
energia proveniente de uma bateria e com uma CPU de baixa capacidade.
Para que o cdigo Java seja executado como um aplicativo Android, a
emulao feita por meio da integrao do IDE Eclipse com suporte ao Android
SDK release 14.
O Android SDK junto a ferramenta de desenvolvimento Android forneceu
um conjunto rico de ferramentas, como depurador, bibliotecas, emulador,
documentao, exemplos de cdigos e tutoriais, ao mesmo tempo que auxilia no
aproveitamento dos recursos ricos do Eclipse, como assistente de contedo,
recursos open source e integrao com JUnit.
A cmera do dispositivo simulada por meio de uma webcam instalada
ao computador e a execuo de um applet que serve de interface entre a webcam e
a cmera do dispositivo virtual Android.
O aplicativo que d suporte emulao da cmera do dispositivo virtual
o WebcamBroadcaster, uma classe java que captura os quadros de uma webcam e
os transmite por meio de uma conexo, que pode ser TCP/IP ou por sockets.
importante ressaltar o fato do sistema operacional ser necessariamente o Windows
XP ou Linux. A classe WebcamBroadcaster utiliza funes da biblioteca Java Media
Framework (JMF). Porm, essa biblioteca no oferece suporte aos sistemas
operacionais mais recentes, sendo um projeto que foi descontinuado. Ao ser
instalado em sistemas operacionais mais recentes, a biblioteca no detecta
dispositivos de entrada de vdeo, apenas de udio, sendo invivel para o
desenvolvimento do projeto.
25
inicializao
das
outras
classes,
como
por
exemplo,
26
27
API
Tesseract
utiliza
como
biblioteca
de
funes
de
viso
fundamentais
de
processamento,
transformaes,
tcnicas
de
32
34
classe
PreviewCallBack
implementao
da
interface
36
initCamera:
faz
inicializao
do
dispositivo
da
cmera,
Primeiramente
faz
chamadas
aos
mtodos
setSpanBetweenTokens:
atribui
espaos
entre
as
palavras
reconhecidas.
setStatusViewTop:
Imprime
as
mensagens
do
estado
do
40
41
43
foi
desenvolvida
classe
LanguageCodeHelper.
As
funes
45
47
48
as
funes
da
API
da
cmera
do
Android
no
pacote
classe
FinishListener
implementa
as
interfaces
alteradas pelo usurios, elas so retidas para que quando invocados os mtodos
onPause e onResume, estas possam ser recuperadas. As preferncias ficam
armazenadas no dispositivo de armazenamento externo.
51
obtidos.
52
53
54
57
59
4.3 Resultados
Durante o teste emprico nos diversos tipos de textos foram anotados o
nmero de tentativas realizadas at o reconhecimento com exatido. Os melhores
resultados foram apresentados em textos com luminosidade uniforme e com melhor
contraste entre o texto e o fundo. O resultado dos testes pode ser visualizado na
Tabela 4.1.
61
Tipo de Mdia
Nmero de
Tentativas
Nmero de
Acertos
Nmero de Erros
Jornais
20
17
Revistas
20
15
Textos em LCD
20
14
Textos em Papel
20
17
Textos em Papel
Escritos a Mo
20
13
Texto em Vdeos
20
12
62
63
64
REFERNCIAS
AIM Global Inc. Optical Character Recognition (OCR). Pittsburgh, PA, USA, 2000.
10 p.
ANDROID CENTRAL. Teclado QWERTY. Disponvel em: <
http://cdn.androidcentral.com/sites/androidcentral.com/files/articleimage/2437/2010/1
1/km-3.jpg >. Acesso em: 15 jan. 2012.
ANDROID DEVELOPER. What is Android? Disponvel em:
<http://developer.android.com/guide/basics/what-is-android.html>. Acesso em: 15 de
mar. 2011.
APPLE STORE. Apple Web Apps iTranslate. Disponvel em:
<http://www.apple.com/webapps/productivity/itranslate.html>. Acesso em: 20 mar.
2011.
BIER, E., STONE, M., FISHKIN, BUXTON, W., BAUDEL, T. (1994). A taxonomy of
see-through tools. Proceedings of the SIGCHI Conference on Human Factors in
Computing Systems: Celebrating interdependence, pp. 358-364, 0897916506,
Boston, April 1994, ACM, New York.
BIER, E., STONE, M., PIER, K., BUXTON, W., DEROSE, T. (1993). Toolglass and
magic lenses: the see-through interface, Proceedings of the 20th Annual
Conference on Computer Graphics and interactive Techniques SIGGRAPH '93,
0897916018, pp. 73-80, ACM, New York.
BLACKBERRY REFERENCE. Planar YUV Luminance Source Blackberry JDE
7.1.0 API Reference. Disponvel em:
<http://www.blackberry.com/developers/docs/7.1.0api/net/rim/device/api/barcodelib/P
lanarYUVLuminanceSource.html>. Acesso em: 15 nov. 2011.
BONNINGTON, Christina. Android crushed the smartphone competition last
quarter. Disponvel em: <http://edition.cnn.com/2011/11/16/tech/mobile/androidcompetition-gartner/index.html>. Acesso em: 16 nov. 2011.
CHIN, Jeff. Paid version of Google Translate API now open for business.
Disponvel em: <http://googlecode.blogspot.com/2011/08/paid-version-of-googletranslate-api.html>. Acesso em: 25 jan. 2012.
CVISION TECHNOLOGIES INC. Applications of OCR. Disponvel em:
<http://www.cvisiontech.com>. Acesso em: 28 set. 2011.
EUROPEAN COMPUTER MANUFACTURERS ASSOCIATION. Recommended
OCR Paper Specifications. 2. ed. Geneva - Switzerland, 1977. 24 p.
FRAGOSO, Victor; GAUGLITZ, Steffen; KLEBAN, Jim. TranslatAR: A Mobile
Augmented Reality Translator on the Nokia N900. California, Santa Barbara, Eua:
Ucsb, 2010. 7 p.
65
http://java.sun.com/developer/onlineTraining/Programming/JDCBook/jni.html>.
Acesso em: 07 ago. 2011.
ORACLE. Java Media Framework. Disponvel em:
<http://www.oracle.com/technetwork/java/javase/tech/index-jsp-140239.html>.
Acesso em: 09 fev. 2012.
PCMAG. PCMAG Encyclopedia Definition of YUV. Disponvel em:
<http://www.pcmag.com/encyclopedia_term/0,2542,t=YUV&i=55165,00.asp>.
Acesso em: 17 out. 2011.
RAIS, Naveed Bin; HANIF, M. Shehzad; TAJ, Imtiaz A.. Adaptive Thresholding
Technique for Document Image Analysis. Inria - Fr: Ieee, 2010. 6 p.
SCHWEGLER, Armin. Language and Globalization. Disponvel em:
<http://www.google.com.br/url?sa=t&rct=j&q=armin%20schwegler%20globalization&
source=web&cd=1&ved=0CCUQFjAA&url=http%3A%2F%2Fwww.globalization101.o
rg/uploads/File/Syllabus-Lang-Globalization.pdf>. Acesso em: 15 jan. 2012.
SONICMOBILE. iTranslate for iPhone. Disponvel em:
http://www.sonicomobile.com/itranslate-iphone/. Acesso em: 14 out. 2011.
SYSTRAN. SYSTRAN - Online translation, translation software and
tools. Disponvel em: <http://www.systransoft.com/>. Acesso em: 25 abr. 2011.
TANG, Son-lik; KWOH, Chee-keong; TEO, Ming-yeong. Augmented reality
systems for medical applications. 17. ed. Nanyang Technology University Singapore: Engineering In Medicine And Biology Magazine, Ieee, 1998. 49-58 p.
TCWORLD. Comparison of online machine translation tools. Disponvel em:
<http://www.tcworld.info/tcworld/translation-and-localization/article/comparison-ofonline-machine-translation-tools/>. Acesso em: 25 abr. 2011.
TERRA NETWORKS BRASIL S.A. (Brasil). Esportes Terra. Disponvel em:
<http://esportes.terra.com.br/>. Acesso em: 02 fev. 2012.
TESSERACT, Ocr. Tesseract OCR - An OCR Engine that was developed at HP
Labs between 1985 and 1995... and now at Google. Disponvel em:
<http://tesseract-ocr.googlecode.com/files/>. Acesso em: 02 fev. 2012.
THOMAS, Bruce H.; SANDOR, Christian. What Wearable Augmented Reality Can
Do For You. Passau, Lower Bavaria, Germany: Ieee Cs, 2009. 8 p.
TOM POWERS. Unofficial Leptonica v1.68 Documentation. Disponvel em:
http://tpgit.github.com/UnOfficialLeptDocs/>. Acesso em: 14 out. 2011.
W3. ISO 639 Language Codes. Disponvel em:
<http://www.w3.org/WAI/ER/IG/ert/iso639.htm>. Acesso em: 01 out. 2011.
ZORZAL, Ezequiel R.. Realidade Aumentada. Disponvel em:
<http://realidadeaumentada.com.br>. Acesso em: 24 jan. 2012.
67