UNIVERSIDADE ESTADUAL DE MARINGÁ CENTRO DE TECNOLOGIA - DEPARTAMENTO DE INFORMATICA - DIN ESPECIALIZAÇÃO EM DESENVOLVIMENTO DE SISTEMAS PARA WEB

Tamanho: px
Começar a partir da página:

Download "UNIVERSIDADE ESTADUAL DE MARINGÁ CENTRO DE TECNOLOGIA - DEPARTAMENTO DE INFORMATICA - DIN ESPECIALIZAÇÃO EM DESENVOLVIMENTO DE SISTEMAS PARA WEB"

Transcrição

1 UNIVERSIDADE ESTADUAL DE MARINGÁ CENTRO DE TECNOLOGIA - DEPARTAMENTO DE INFORMATICA - DIN ESPECIALIZAÇÃO EM DESENVOLVIMENTO DE SISTEMAS PARA WEB ARTRANSLATOR: PROTÓTIPO DE UM TRADUTOR BASEADO EM TÉCNICAS DE RECONHECIMENTO ÓTICO E REALIDADE AUMENTADA PARA DISPOSITIVOS MÓVEIS OSVALDO MASSAKAZU KOHATSU MARINGÁ 2012

2 OSVALDO MASSAKAZU KOHATSU ARTRANSLATOR: PROTÓTIPO DE UM TRADUTOR BASEADO EM TÉCNICAS DE RECONHECIMENTO ÓTICO E REALIDADE AUMENTADA PARA DISPOSITIVOS MÓVEIS Monografia apresentada à Universidade Estadual de Maringá como requisito parcial à obtenção do título de especialização de desenvolvimento de sistemas para web. Orientadora Dra Heloise M. Paris Teixeira. MARINGA 2012

3 UNIVERSIDADE ESTADUAL DE MARINGÁ CENTRO DE TECNOLOGIA - DEPARTAMENTO DE INFORMATICA - DIN ESPECIALIZAÇÃO EM DESENVOLVIMENTO DE SISTEMAS PARA WEB OSVALDO MASSAKAZU KOHATSU ARTRANSLATOR: PROTÓTIPO DE UM TRADUTOR BASEADO EM TÉCNICAS DE RECONHECIMENTO ÓTICO E REALIDADE AUMENTADA PARA DISPOSITIVOS MÓVEIS Monografia aprovada em / / para obtenção do título de Especialista em Desenvolvimento de Sistemas para Web. Banca Examinadora: Orientadora Dra. Heloise Manica Paris Teixeira Professor Dr. Edson A. Oliveira Junior Professor Dr. Renato Balancieri

4 DEDICATÓRIA Dedico esta monografia aos meus pais que me deram muito apoio e carinho nos momentos mais difíceis da minha vida e contribuíram durante todo meu crescimento e também nessa nova etapa de minha vida. A minha namorada pela mais pura forma e incondicional de amor, companheirismo, incentivo, paciência e ajuda sem medir esforços sempre presentes em minha vida, a minha orientadora que colaborou com presteza para o desenvolvimento e concretização deste trabalho.

5 AGRADECIMENTOS Agradeço a Deus, pela vida, paz e tranqüilidade em todos os momentos de minha vida. A todas as pessoas do meu convívio que acreditaram e contribuíram direta e indiretamente para a conclusão deste trabalho. A todos os professores da especialização por compartilharem seus conhecimentos. A todos os amigos que conheci durante o curso e pelos momentos de amizade e convivência.

6 PENSAMENTO A vida é uma peça de teatro que não permite ensaios. Por isso, cante, chore, dance, ria e viva intensamente, antes que a cortina se feche e a peça termine sem aplausos. Charles Chaplin

7 RESUMO Em uma era dirigida pela informação e o advento de dispositivos móveis mais robustos, ter a informação aliada à mobilidade trilha caminhos à comodidade. Neste cenário, em um mundo globalizado onde a comunicação entre pessoas de diferentes países e línguas tem se tornado cada vez mais comum, é necessário o conhecimento em idiomas que são mais utilizados ou que fazem parte do cotidiano profissional. O conhecimento de um idioma demanda tempo. Este trabalho apresenta um protótipo de um tradutor de textos baseado em técnicas de reconhecimento de caracteres para entrada de dados, tradução automática por meio de webservices para processamento e realidade aumentada para visualização dos resultados. O reconhecimento de caracteres responde satisfatoriamente no quesito de entrada de dados enquanto que a tradução instantânea foi inviabilizada devido a uma alteração na disponibilidade do webservice de tradução.

8 SUMÁRIO 1. INTRODUÇÃO O problema de pesquisa Objetivos Justificativa e Motivação Procedimentos metodológicos Materiais e métodos Limitações da pesquisa Organização do documento REVISÃO TEÓRICA Sistema operacional Android Sistema de runtime Bibliotecas Framework de aplicação OCR (Reconhecimento Ótico de Caracteres) Realidade aumentada Aplicativos de tradução Trabalhos correlatos ARTRANSLATOR: TRADUÇÃO INSTANTÂNEA PARA DISPOSITIVOS PORTÁTEIS Ambiente de desenvolvimento Modelo do protótipo Biblioteca Tesseract API de processamento de imagens API camera manager API de reconhecimento de caracteres API de tradução API de realidade aumentada Classes acessórias TESTE DO PROTÓTIPO E RESULTADOS Ambiente de teste Descrição do Teste Resultados CONSIDERAÇÕES FINAIS E TRABALHOS FUTUROS REFERÊNCIAS BIBLIOGRÁFICAS... 65

9 LISTA DE FIGURAS Figura 1.1 Exemplos de símbolos em Idiomas não-latinos. Figura 1.2 Teclado QWERT. Figura 2.1 Arquitetura do Android. Figura 2.2 Emulador do Kit de Desenvolvimento Android. Figura 2.3 Emulação da Câmera do Emulador. Figura 2.4 Exemplo de aplicação do OCR. Figura 2.5 Definição 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 protótipo. Figura 3.2 Arquitetura da biblioteca Tesseract. Figura 3.3 Classe do reconhecimento de caracteres TessBaseAPI. Figura 3.4 Classe CameraManager. Figura 3.5 Função AdjustFramingRect da classe CameraManager. Figura 3.6 Atributos da classe CaptureActivity. Figura 3.7 Principais funções da classe CaptureActivity. Figura 3.8 Classe OcrInitAsyncTask e as funções para transferência dos arquivos de idiomas. Figura 3.9 Classe OCRRecognizeAsyncTask. Figura 3.10 Método runhttprequest de TranslationHelper. Figura 3.11 Método Translate de TranslationHelper. Figura 3.12 Métodos 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 Execução da classe WebCamBroadcaster. Figura 4.5 Atribuição do IP na Classe SocketCamera. Figura 4.6 Tela do emulador sendo carregado. Figura 4.7 Menu de Opções. Figura 4.8 Tela de opções. Figura 4.9 Tela de opções de idiomas. Figura 4.10 Transferência e instalação do arquivo do idioma Figura 4.11 Texto envolto pelo retângulo 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.

10 LISTA DE TABELAS Tabela 1.1 Exemplos de verbetes em idiomas com símbolos não latinos. Tabela 2.1 O Android em código fonte. Tabela 2.2 Trabalhos Correlatos. Tabela 4.1 Resultados do teste empírico.

11 1 INTRODUÇÃO 1.1 O problema de pesquisa A linguagem escrita é um importante meio de transmissão da informação inserido no cotidiano das pessoas. Contudo, quando a escrita se encontra em uma língua desconhecida pelo leitor da informação, ela não é compreendida. Para amenizar esse problema, soluções tecnológicas de tradução são propostas, desde dicionários eletrônicos a tradutores instantâneos. Nos primeiros dicionários eletrônicos, o texto não compreendido é manualmente inserido como entrada dos aplicativos. Esses buscam em um índice alfabético e apresentam ao usuário o resultado em forma de texto ou saída de voz. Um exemplo desse tipo de dicionário é o Franklin TGA-470 Global Translator [FRANKLIN ELETRONIC PUBLISHERS, 2011]. O desenvolvimento da Internet e redes sem fio promoveram a comunicação entre pessoas em qualquer hora e lugar. Com o surgimento de dispositivos móveis com maior capacidade de processamento, foram concebidos novos tradutores eletrônicos, como o itranslate [APPLE STORE, 2011] e o Jibbigo [JIBBIGO, 2011]. Esses dispositivos auxiliam a compreensão de textos, porém necessitam que o usuário forneça a entrada de dados por meio de digitação (no caso do Franklin TGA ) ou pronúncia (no caso do Jibbigo). Dessa forma, tornase necessário que o usuário tenha conhecimento do idioma para pronunciar as palavras ou digitar os símbolos corretamente, o que nem sempre é uma tarefa simples. Essa dificuldade é comum em idiomas de origem oriental como o chinês, coreano, árabe entre outros que possuem escritas cujos símbolos são peculiares. Essa problemática é exemplificada no seguinte cenário. Um usuário, que conhece somente a língua portuguesa brasileira se encontra em um país de língua 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 cenário, os dois aplicativos citados provavelmente atenderão a necessidade de tradução do usuário. 1 O Franklin TGA-470 é um tradutor eletrônico portátil digital. 1

12 Suponha que o usuário seguiu sua viagem para um país de língua de origem latina ou neolatina, como o espanhol, francês entre outras. Também não haveria muita dificuldade com os verbetes água e eau ou pronunciar a ɣ wa e eau. Como no cenário anterior, os dois aplicativos citados provavelmente atenderiam a necessidade de tradução do usuário. Finalmente, o usuário segue sua viagem para um país no oriente. Nesse último cenário o usuário poderá se deparar com caracteres não-latinos, como os ilustrados na Figura 1.1 e Tabela 1.1. Neste momento surgem as dificuldades: como digitar tais símbolos no teclado QWERT (tipo de teclado cujas primeiras letras são o QWERT) de seu dispositivo, que não suporta esses caracteres (Figura 1.2)? Como pronunciá-los? Figura 1.1. Exemplos de símbolos em Idiomas não latinos. Fonte: O Autor. Idioma Nome Nativo Arabic العربية Armenian Bashkir Հայերեն башҡорт теле Kashmiri Kazakh كشميري क म र, қазақ тілі Marathi (Marāṭhī) मर ठ Tabela 1.1. Exemplos de verbetes em idiomas com símbolos não latinos. Fonte: Google Inc.,

13 Figura 1.2. Teclado QWERT Fonte: Android Central Nesse contexto, este trabalho propõe auxiliar a entrada de dados em tradutores por meio do desenvolvimento de um protótipo para tradução instantânea. A solução proposta nesta pesquisa utiliza entrada de texto visual por meio de um dispositivo móvel provido de uma câmera e suporte touchscreen. Para tornar a solução viável, foi utilizado um sistema de reconhecimento ótico de caracteres para a transcrição do verbete em tipo de entrada legível para sistemas computacionais. 1.2 Objetivos Objetivo geral Este trabalho tem como objetivo geral contribuir com tradução instantânea de textos que contenham símbolos de difícil compreensão pelos usuários com a utilização de dispositivos móveis. Objetivos específicos Empregar técnicas de Realidade Aumentada (RA) para simplificar o processo de visualização de dados para tradução de textos; Permitir a tradução de textos entre diferentes idiomas com entrada de dados por reconhecimento ótico de caracteres (OCR). 1.3 Justificativa e motivação Com as vertentes do desenvolvimento mundial direcionadas para o processo de globalização da economia, é imprescindível o estudo ou o conhecimento de idiomas ou a competência para comunicar-se em uma língua diferente da língua mãe. De acordo com Armin Schwegler [SCHWEGLER,2012], quando economistas (e linguistas) escrevem sobre globalização e seus efeitos sobre 3

14 a sociedade moderna, classificam o idioma como sendo um bem econômico, ou seja, pessoas que se comunicam em outros idiomas diferente da língua-pátria são detentoras deste bem. Em adição conclui também que, no mundo globalizado as interconexões são realizadas por intermédio de grupos de pessoas multilíngüe. A globalização tornou essencial às pessoas se comunicarem umas com as outras para diferentes fins como realizar negócios, diálogo político, desenvolvimento de pesquisas, socialização, entretenimento, entre outros. Os idiomas favorecem o relacionamento interpessoal e servem para estabelecer elos. Entretanto, a diferença de idiomas ainda é um obstáculo na comunicação entre pessoas. Tradutores e dicionários eletrônicos são utilizados para atenuar as dificuldades de tradução e no aprendizado de novas línguas. Com o advento de dispositivos móveis mais modernos e capazes de realizar tarefas e aplicações mais complexas, além da capacidade de conexão com a Internet, a possibilidade de desenvolvimento de aplicativos mais práticos e eficientes tornou-se viável. Com isso, um dispositivo móvel como um celular pode ser provido de dicionários ou tradutores instantâneos para serem utilizados em qualquer hora e lugar. Grande parte dos dispositivos móveis atuais é capaz de executar os aplicativos sobre sistemas operacionais. Alguns deles como o Galaxy S2 da Samsung, Atrix da Motorola, iphone da Apple e Optimus da LG possuem capacidade de processamento equivalente ao de um microcomputador desktop. Esses verdadeiros computadores de bolso proporcionam a experiência de um desktop em qualquer lugar na palma da mão. Este cenário de desenvolvimento motivou o estudo e adoção de funcionalidades inovadoras (providas por áreas de pesquisa como a visão computacional, programação para dispositivos móveis, tradução instantânea online e realidade aumentada) para o desenvolvimento do protótipo proposto nesta pesquisa. 1.4 Procedimentos Metodológicos Quanto à natureza, esta pesquisa é classificada como aplicada. Para o desenvolvimento da pesquisa, inicialmente foi realizado uma revisão da literatura, buscando conhecer os principais conceitos, tecnologias e ferramentas existentes. O levantamento bibliográfico e estudo de conceitos sobre sistema de reconhecimento ótico de caracteres, ambiente de desenvolvimento Android, integração de serviços 4

15 Web e Realidade Aumentada permitiu a definição dos recursos tecnológicos adotados no desenvolvimento do protótipo. Foram utilizados como fontes de pesquisa artigos científicos, livros e relatórios técnicos, monografias, teses, fóruns entre outras fontes confiáveis sobre o tema da pesquisa. Com base na literatura, a seleção dos recursos utilizados no desenvolvimento do protótipo considerou a facilidade de integração, desempenho, usabilidade, manutenabilidade e portabilidade. Por ser um protótipo de tradução, é relevante considerar o desempenho, enquanto a portabilidade em questão trata-se dos componentes em si e não do produto final (protótipo). Na modelagem e desenvolvimento do protótipo priorizou-se a utilização de ferramentas e tecnologias de código aberto ou softwares livres, tais como a linguagem Java, serviços web, ambiente de desenvolvimento Eclipse, e plugins Android. Para a avaliação do protótipo, realizou-se testes controlados Materiais e Métodos Entre outros, os softwares utilizados no desenvolvimento do protótipo são: biblioteca de reconhecimento ótico de caracteres; Tesseract; serviço web de tradução; Google Translate; IDE Eclipse com plugins ADT (Android Development Tools); o kit de desenvolvimento Android; Android SDK. O hardware utilizado no desenvolvimento, testes e avaliação é composto de um notebook com processador Intel Centrino Core Duo Processor 1.83 GHz, RAM de 0,99 Gibabytes SDRAM e um smartphone provido do sistema operacional Android com câmera e sistema touchscreen disponíveis ou um emulador. 1.5 Limitações da Pesquisa A presente pesquisa apresenta as seguintes limitações. A primeira referese ao fato do aplicativo não realizar o reconhecimento dos caracteres capturados pela câmera numa taxa de 100% de acurácia. Outra limitação refere-se ao tempo de processamento decorrente deste reconhecimento. A maior parte do tempo completo de processamento do aplicativo é utilizado pela etapa de reconhecimento. O tempo total é composto pelo tempo gasto do resultado do reconhecimento de caracteres, pela troca de mensagens com o serviço de tradução e pela exibição da tradução para o usuário na tela do dispositivo. Como trabalho futuro se faz necessário um estudo para melhorar a acurácia e tempo de processamento do aplicativo proposto. 5

16 Uma limitação do protótipo, quanto a tradução de textos, atribui-se a quantidade de máxima de caracteres a serem traduzidos. Esta quantidade máxima limita-se a caracteres. Caso o texto a ser traduzido ultrapasse este limite, o texto é truncado considerando-se sempre a posição do primeiro caracter como ponto de início para a contagem dos caracteres. Os testes finais do protótipo foram restritos em relação à etapa de tradução instantânea. Tal restrição se deve ao fato da versão do Google Translate API passar a ser paga durante a etapa de execução de testes finais no protótipo. Conforme Jeff Chin [CHIN, 2012], gerente de produtos da Google, a versão gratuita do Google Translate tornou-se obsoleta e removida desde o dia 01 de dezembro de 2011, dando lugar a versão paga com suporte a 50 idiomas. Atualmente a tradução do Google é oferecida aos usuários comuns somente pelo site do Google Translate e pela tradução de páginas da Internet, sendo o Web Service disponível apenas na versão paga. Como trabalho futuro, os testes poderão ser complementados com a aquisição da versão paga ou pela solicitação de uma versão disponibilizada pela Google para Universidades. 1.6 Organização do Documento O presente trabalho é organizado como segue. O capítulo 1 aborda questões relacionadas ao problema de pesquisa, justificativa, objetivos, metodologia, material e limitações da pesquisa. O capítulo 2 apresenta os principais conceitos das tecnologias adotadas para o desenvolvimento do protótipo, como o sistema operacional Android, o reconhecimento ótico de caracteres, a realidade aumentada e o sistema de tradução instantânea. São descritos alguns trabalhos correlatos e uma breve comparação entre eles e este trabalho. O capitulo 3 descreve o protótipo desenvolvido, o ambiente de desenvolvimento, arquitetura, as classes desenvolvidas, as bibliotecas open source utilizadas como a API de processamento de imagens e a Tesseract e o código fonte das funções principais. Estão inclusas, a API da câmera, a API do reconhecimento ótico de caracteres e a API de tradução. Neste capítulo também apresenta-se uma arquitetura do protótipo e as ligações com web services. 6

17 O capítulo 4 aborda o teste do protótipo. São descritos o ambiente experimental, o tipo das entradas, os passos do teste, resultados obtidos e conclusões sobre os resultados obtidos. Finalmente, o capítulo 5 apresenta a conclusão deste trabalho, contribuições, trabalhos futuros e um retrospecto do trabalho. 7

18 2 REVISÃO TEÓRICA Este capítulo apresenta os principais temas estudados para o desenvolvimento do trabalho. São introduzidos conceitos sobre a arquitetura do sistema operacional Android e seus componentes, reconhecimento ótico de caracteres, realidade aumentada e trabalhos correlatos na área. 2.1 Sistema Operacional Android O Android é um sistema operacional inicialmente desenvolvido pela Google e que atualmente está sendo continuado pela Open Handset Alliance. Porém, a gerência do projeto e a engenharia de processos é de responsabilidade da Google [ANDROID DEVELOPER, 2011]. É um sistema operacional livre e de código aberto (sob licença Apache 2.0), executado sobre um kernel Linux (monolítico) versão 2.6 modificado para serviços essenciais como segurança, gerenciamento de memória, pilha de rede e modelo de drivers. O kernel do Linux também é responsável pela comunicação entre o hardware e o software, ou seja, ele funciona como uma camada de abstração entre hardware e software. Pra ser mais específico, o Android corresponde a uma pilha de softwares que inclui um sistema operacional, um middleware e as aplicações chave. O Android é basicamente estruturado em kernel linux, bibliotecas, sistema de Android, framework de aplicações e as aplicações propriamente ditas. A Figura 2.1 ilustra uma visão geral da arquitetura Android. A camada mais inferior é a correspondente à camada do kernel Linux. Nesta camada localizam-se os componentes que fazem a comunicação entre o hardware do dispositivo, como câmera, auto falantes, disco de armazenamento, etc, e o Android. Logo acima localizam-se as bibliotecas do sistema e a máquina virtual Dalvik que faz a execução dos aplicativos. O Application Framework é a camada que corresponde aos componentes que gerenciam e que são utilizados no desenvolvimento de novas aplicações. Por fim, a camada de aplicações localiza-se no topo da pilha de softwares, onde estão os aplicativos (programas) do dispositivo, tais como agenda telefônica, navegador, calculadora, entre outros. 8

19 Figura 2.1. Arquitetura do Android Fonte: Android Developer, Sistema de Runtime Esta pilha de softwares consiste em aplicações Java sendo executadas, cada qual com sua instância e processo próprios, em um framework de aplicação baseado em orientação a objetos sobre bibliotecas nativas Java executadas em uma máquina virtual Dalvik com compilação JIT (Just-in-Time). Essa compilação JIT ou tradução dinâmica é essencial pois otimiza a performance de execução, ao passo que dispositivos móveis possuem uma arquitetura de hardware restrita. A máquina virtual Dalvik suporta a execução de múltiplas VMs eficientemente. É uma máquina baseada em registradores e executa classes compiladas por um compilador Java que converte o código fonte em um executável.dex através da ferramenta dx. O formato.dex, Dalvik Executable, é otimizado para um consumo mínimo de memória. A arquitetura do Android permite que os aplicativos sejam desenvolvidos na linguagem de programação Java. O aplicativo controla o dispositivo através de bibliotecas Java desenvolvidas pela Google. 9

20 2.1.2 Bibliotecas O Android possui um conjunto de bibliotecas C/C++ usado por vários componentes do sistema Android. Elas estão disponíveis aos desenvolvedores através do framework de aplicações Android. As bibliotecas escritas em C/C++ incluem: Surface Manager: gerencia o acesso ao subsistema de display e realiza a composição das camadas gráficas 2D e 3D de múltiplas aplicações; Framework de media OpenCore: bibliotecas que suportam a reprodução e gravação dos mais populares formatos de áudio e vídeo, assim como arquivos de imagens estáticas, incluindo Mpeg4, H.264, Mp3, Aac, Amr, Jpg, Png. SQLite: um poderoso e leve sistema de gerenciamento de banco de dados relacional; OpenGL ES 2.0: uma API 3D gráfica que prove aceleração 3D de hardware (quando disponível) ou um software rastreador 3D altamente otimizado; SGL: uma engine 2D gráfica subjacente; WebKit: engine de layout; SSL: Utilizado para armazenamento de keystores. Cada aplicação contém sua própria keystore onde são armazenados os certificados SSL, para verificação em webservices. FreeType: para renderização de fontes vetoriais e bitmaps. LibWebCore: uma engine que provê um navegador Android e embed. Biblioteca System C: uma implementação derivado do BSD da biblioteca system padrão do C (libc) adaptado para dispositivos com Linux; Além do C, o Android é escrito também em XML (12 milhões de linhas de código), Java (2,1 milhões de linhas de código), em C++ (1,75 milhão de linhas de código) e outras linguagens conforme ilustra a Tabela

21 Tabela 2.1. O Android em código fonte. Fonte: Android Developer, Framework de Aplicação A plataforma Android oferece aos desenvolvedores a construção de aplicações extremamente ricas e inovadoras, pois é permitido o acesso completo ao framework das APIs usadas nas principais aplicações. A arquitetura da aplicação é projetada para simplificar o reuso dos componentes. Qualquer aplicação pode prover suas funcionalidades e qualquer outra pode fazer o uso destas. O framework para o desenvolvimento de aplicações contém os seguintes serviços e componentes: 11

22 Um conjunto de Views rico e extensível que pode ser usado para construir uma aplicação, incluindo listas, grids, caixas de texto, botões e até um navegador web embutido; Servidores de conteúdo que provêem o acesso de aplicações a dados de outras aplicações (como lista de contatos), ou para compartilhar seus próprios dados; Gerenciador de recursos que provê o acesso a recursos não codificados como strings localizadas, gráficos e arquivos de layout; Um gerenciador de notificações que permite que todas as aplicações exibam mensagens de alerta ou erro na barra de status; Um gerenciador de atividades que gerencia o ciclo de vida de uma aplicação e provê uma navegação padrão. A Figura 2.2 apresenta a interface do emulador virtual de um dispositivo móvel, o AVD (Android Virtual Device), usado para a realização dos testes e execução do aplicativo proposto nesta pesquisa. Figura 2.2. Emulador do Kit de Desenvolvimento Android Fonte: O Autor. Uma limitação existente no emulador do Android é quanto o requisito câmera. O emulador do Android não prove a emulação de uma câmera, requisito necessário para este trabalho. O emulador faz apenas a indicação de que a câmera 12

23 será utilizada pelo aplicativo, mas uma vez executado o projeto, a câmera restringese a apenas a visualização de um fundo com quadriculado, conforme a Figura 2.3. Até o presente momento, a Google não forneceu indícios de estar trabalhando em alguma implementação ou pelo menos uma data de quando ela estará disponível nos emuladores. Figura 2.3. Emulação da Câmera do Emulador Fonte: O Autor. A solução adotada para a emulação de um dispositivo de câmera foi por meio da conexão de uma webcam e execução de applets em Java. O código fonte de domínio público para esta solução é apresentada em Gibara [GIBARA, 2011]. As classes consistem em: CameraSource: Uma interface que fornece ao usuário a possibilidade da escolha da fonte da câmera a ser utilizada no emulador; GenuineCamera: Implementação de CameraSource que utiliza o dispositivo câmera original do emulador (aquele que apresenta um fundo quadriculado); HttpCamera: Implementação que utiliza imagens obtidas através de um inputstream de uma conexão HTTP; SocketCamera: Implementação que obtêm imagens diretamente de uma conexão TCP/IP; BitmapCamera: Implementação que utiliza um bitmap como emulação de uma câmera; 13

24 WebcamBroadcaster: Um pequeno aplicativo Java que utiliza as bibliotecas JMF para a transmissão de uma seqüência de imagens através de uma rede. Com essas classes, a solução consiste em: executar o aplicativo WebcamBroadcaster para a transmissão do stream de vídeo, obtido de uma webcam instalada, através de uma porta utilizando sockets. Enquanto isso, a classe SocketCamera, será executada no aplicativo Android. Esta classe fará a captura das imagens do socket de transmissão e enviará para o emulador como se fosse a câmera do dispositivo. Outro problema constatado foi em relação ao código fonte do autor Tom Gibara. As classes publicadas [GIBARA, 2011] utilizam funções que já estão em desuso pelas novas implementações do SDK do Android. Como não serão utilizadas todas as classes, adaptações foram feitas apenas nas classes SocketCamera e WebcamBroadcaster. 2.2 OCR (Reconhecimento Ótico de Caracteres) OCR é acrônimo para Optical Character Recognition ou Reconhecimento Ótico de Caracteres [AIM, 2000]. É uma tecnologia que permite com que sistemas computacionais reconheçam caracteres por meio de um mecanismo ótico. O mecanismo ótico é uma interpretação de imagens e compreensão de sinais em forma textual. O reconhecimento ótico é feito pelo humano através dos olhos. Enquanto este reconhecimento é feito pelos olhos (entrada), a interpretação (processamento) varia de pessoa para pessoa de acordo com muitos fatores como qualidade da câmera do dispositivo, porcentagem de ruído das imagens, formato dos caracteres de entrada, entre outros. Três dos problemas enfrentados pelos desenvolvedores de sistemas OCR podem ser comparados com o mecanismo humano. Primeiro, o ser humano ao ler um texto que não esteja em sua língua nativa, pode até reconhecer alguns caracteres, porém não compreende o sentido das palavras e seus significados. Porém, caso o texto que se deseja ler seja composto por números, o ser humano é capaz de interpretá-los, pois estes possuem um significado universal. Por este motivo, esta é uma das funcionalidades que muitos sistemas OCR conseguem prover sem dificuldades: o reconhecimento apenas de caracteres numéricos e uma pequena variação de caracteres alfabéticos. 14

25 Segundo, as similaridades no formato entre alguns caracteres numéricos e alfabéticos também configura-se como um empecilho. Ao ser analisada uma string de letras e números, pode ocorrer uma pequena diferença visível entre, por exemplo, a letra maiúscula O e o numeral 0, a letra maiúscula S e o 5, a letra maiúscula I e o 1 entre outros. Para os humanos, entretanto, basta a compreensão do contexto para determinar o significado exato. Na computação, essa tarefa é mais complicada, pois não existe esta compreensão do contexto. O terceiro problema refere-se à questão do contraste entre a cor do texto e a cor de fundo e a sobreposição de letras ou imagens. A similaridade entre as cores de texto e de fundo e a sobreposição entre elas e a dificuldade de distinção e interpretação dos caracteres são diretamente proporcionais. Quanto maior a similaridade entre as cores, maior a dificuldade do reconhecimento pelo sistema OCR. O mesmo vale para o olho humano, ao se deparar com fundos e caracteres de cores semelhantes. As primeiras versões de OCR eram simples e requeriam calibragem do sistema. Esta calibragem constituia-se da prévia programação de imagens associadas a cada caracter e utilizando-se de apenas um tipo de fonte. Implementações atuais abordando OCR abrangem tanto caracteres do alfabeto latino quanto caracteres orientais como o chinês, japonês, etc. Algumas dessas implementações são de código fonte aberto, mas ainda encontram problemas na integração com os sistemas operacionais. A maioria pode ser executado em plataformas linux e windows, porém ainda não suportam o Android, exceto em código nativo. É necessário a implementação de uma interface para a integração de bibliotecas nativas da linguagem C que ainda não são suportadas pelo Android. O OCR é utilizado para a entrada automática de dados em um computador, armazenamento, compartilhamento ou processamento. Os primeiros sistemas foram dedicados para entrada de grande quantidade de dados. O primeiro grande uso foi no processamento de cartões de venda de crédito de petróleo [AIM, 2000]. Atualmente as aplicações com OCR englobam leitores de caixa registradora de fita e scanners de página. Uma aplicação inovadora são os scanners de Kurzweil que auxiliam indivíduos com deficiência visual. Estes dispositivos escaneiam textos que são processados pelo computador e convertidos para a linguagem falada. Atualmente a tecnologia OCR tem sido largamente utilizada em aplicações de visão computacional tais como: operações bancárias (digitalização e compensação de 15

Pré-Projeto do Trabalho de Conclusão de Curso Tiago Garcia Pereira 1. INTRODUÇÃO

Pré-Projeto do Trabalho de Conclusão de Curso Tiago Garcia Pereira 1. INTRODUÇÃO UM PADRÃO ABERTO DE SOFTWARE PARA COMPUTAÇÃO MÓVEL: UM ESTUDO SOBRE GOOGLE ANDROID 1. INTRODUÇÃO O aumento do número usuários de dispositivos móveis atrai cada vez os desenvolvedores a produzir aplicações

Leia mais

A plataforma Android: Uma Introdução

A plataforma Android: Uma Introdução A plataforma Android: Uma Introdução Android Iniciativa da Google de prover uma plataforma aberta para Web móvel Open Handset Alliance Associação de um grupo bastante heterogêneo de empresas (operadoras,

Leia mais

Introdução a Computação Móvel

Introdução a Computação Móvel Introdução a Computação Móvel Computação Móvel Prof. Me. Adauto Mendes adauto.inatel@gmail.com Histórico Em 1947 alguns engenheiros resolveram mudar o rumo da história da telefonia. Pensando em uma maneira

Leia mais

Android. Marcelo Quinta @mrquinta

Android. Marcelo Quinta @mrquinta Android Marcelo Quinta @mrquinta Oi, eu sou o Marcelo Quinta Pública Público-privada Privada Próprio negócio Voluntariado Parabéns à organização do GO-GTUG Tablets 160% de aumento em 2011 Smartphones

Leia mais

Programação para Dispositivos Móveis

Programação para Dispositivos Móveis Programação para Dispositivos Móveis Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 02 História do desenvolvimento de software para dispositivos móveis Dalton Martins dmartins@gmail.com São

Leia mais

Aula 1 - Introdução e configuração de ambiente de desenvolvimento

Aula 1 - Introdução e configuração de ambiente de desenvolvimento Aula 1 - Introdução e configuração de ambiente de desenvolvimento Olá, seja bem-vindo à primeira aula do curso para desenvolvedor de Android, neste curso você irá aprender a criar aplicativos para dispositivos

Leia mais

Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura

Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura Dispositivos móveis e o mercado Mercado cresce a cada ano Muitos recursos Múltiplas plataforma Symbian

Leia mais

Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação. Android. Universidade Federal de Santa Catarina. 17 de dezembro de 2008

Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação. Android. Universidade Federal de Santa Catarina. 17 de dezembro de 2008 Android José João Junior Universidade Federal de Santa Catarina 17 de dezembro de 2008 Agenda 1 Visão geral 2 Estrutura do sistema 3 Ferramentas de desenvolvimento 4 Uma aplicação Visão geral Histórico

Leia mais

O que é o Android? O que é o Android

O que é o Android? O que é o Android O que é o Android? O Android é um sistema operacional para dispositivos móveis, baseado em uma plataforma de código aberta sob a licença apache, permitindo que os fabricantes possam modificar seu código

Leia mais

Introdução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega

Introdução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega Android Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega Universidade Federal de Santa Catarina November 18, 2008 Agenda 1 Introdução 2 Dalvik 3 Linux 2.6 Introdução

Leia mais

PLATAFORMA ANDROID. Ariel Soares Teles arielsoaresteles@gmail.com

PLATAFORMA ANDROID. Ariel Soares Teles arielsoaresteles@gmail.com Universidade Federal do Maranhão UFMA Programa de Pós-graduação em Engenharia de Eletricidade PPGEE Área de Concentração: Ciência da Computação Disciplina: Introdução a Computação Móvel Professor: Dr.

Leia mais

Fundamentos da Computação Móvel

Fundamentos da Computação Móvel Fundamentos da Computação Móvel (Plataformas Sistemas Operacionais e Desenvolvimento) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus

Leia mais

MAPEAMENTO E LOCALIZAÇÃO DE REGIÕES DE INTERESSE UTILIZANDO REALIDADE AUMENTADA EM DISPOSITIVOS MÓVEIS COM PLATAFORMA ANDROID

MAPEAMENTO E LOCALIZAÇÃO DE REGIÕES DE INTERESSE UTILIZANDO REALIDADE AUMENTADA EM DISPOSITIVOS MÓVEIS COM PLATAFORMA ANDROID MAPEAMENTO E LOCALIZAÇÃO DE REGIÕES DE INTERESSE UTILIZANDO REALIDADE AUMENTADA EM DISPOSITIVOS MÓVEIS COM PLATAFORMA ANDROID Alessandro Teixeira de Andrade¹; Geazy Menezes² UFGD/FACET Caixa Postal 533,

Leia mais

Programação para Android

Programação para Android Programação para Android Aula 01: Visão geral do android, instalação e configuração do ambiente de desenvolvimento, estrutura básica de uma aplicação para Android Objetivos Configurar o ambiente de trabalho

Leia mais

DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS

DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS Leandro Guilherme Gouvea 1, João Paulo Rodrigues 1, Wyllian Fressatti 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil leandrog.gouvea@gmail.com,

Leia mais

Desenvolvendo e Integrando Serviços Multiplataforma de TV Digital Interativa

Desenvolvendo e Integrando Serviços Multiplataforma de TV Digital Interativa Desenvolvendo e Integrando Serviços Multiplataforma de TV Digital Interativa Agenda Introdução Aplicações interativas de TV Digital Desafios de layout e usabilidade Laboratório de usabilidade Desafios

Leia mais

MONOGRAFIA: PLATAFORMAS DE DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS

MONOGRAFIA: PLATAFORMAS DE DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO PUC-RIO DEPARTAMENTO DE INFORMÁTICA - DI PROGRAMA DE PÓS GRADUAÇÃO EM INFORMÁTICA INF2541 INTRODUÇÃO À COMPUTAÇÃO MÓVEL PROF. MARKUS ENDLER MONOGRAFIA:

Leia mais

DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS. PROFª. M.Sc. JULIANA H Q BENACCHIO

DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS. PROFª. M.Sc. JULIANA H Q BENACCHIO DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS PROFª. M.Sc. JULIANA H Q BENACCHIO Objetivos Desenvolver software baseados na plataforma de dispositivos móveis com ênfase na Android SDK, abrangendo desde princípios

Leia mais

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas Conteúdo Programático Nomeclaturas JDK JRE JEE JSE JME JVM Toolkits Swing AWT/SWT JDBC EJB JNI JSP Conteúdo Programático Nomenclatures

Leia mais

LEI DE ACESSO A INFORMAÇÃO DIREITO DO CIDADÃO

LEI DE ACESSO A INFORMAÇÃO DIREITO DO CIDADÃO DESCRIÇÃO DO SIGAI O SIGAI (Sistema Integrado de Gestão do Acesso à Informação) é uma solução de software que foi desenvolvida para automatizar os processos administrativos e operacionais visando a atender

Leia mais

UM FRAMEWORK PARA DESENVOLVIMENTO DE

UM FRAMEWORK PARA DESENVOLVIMENTO DE UNIVERSIDADE FEDERAL DE PERNAMBUCO GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO CENTRO DE INFORMÁTICA UM FRAMEWORK PARA DESENVOLVIMENTO DE APLICATIVOS EM WINDOWS MOBILE. PROPOSTA DE TRABALHO DE GRADUAÇÃO Aluno:

Leia mais

Estudo comparativo entre tecnologias Java: Applet e JWS.

Estudo comparativo entre tecnologias Java: Applet e JWS. Estudo comparativo entre tecnologias Java: Applet e JWS. Clara Aben-Athar B. Fernandes¹, Carlos Alberto P. Araújo¹ 1 Centro Universitário Luterano de Santarém Comunidade Evangélica Luterana (CEULS/ULBRA)

Leia mais

DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID

DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID Maik Olher CHAVES 1 ; Daniela Costa Terra 2. 1 Graduado no curso de Tecnologia em Análise e Desenvolvimento de Sistemas

Leia mais

Desenvolvimento de um aplicativo básico usando o Google Android

Desenvolvimento de um aplicativo básico usando o Google Android Desenvolvimento de um aplicativo básico usando o Google Android (Organização do Ambiente) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus

Leia mais

Capitulo 11 Multimídias

Capitulo 11 Multimídias Capitulo 11 Multimídias Neste capítulo são exploradas as ferramentas multimídias presentes no SO Android customizadas para o Smartphone utilizado neste manual. É inegável o massivo uso destas ferramentas,

Leia mais

Planejamento de TI usando Cenários Prospectivos: Tecnologias de Desenvolvimento de Sistemas

Planejamento de TI usando Cenários Prospectivos: Tecnologias de Desenvolvimento de Sistemas Planejamento de TI usando Cenários Prospectivos: Tecnologias de Desenvolvimento de Sistemas Sidnei da Silva 11 de julho de 2007 1 Sumário 1 Dados Fundamentais 3 2 Definição do Problema 3 2.1 Questão...............................

Leia mais

ARQUITETURA DE SISTEMAS. Cleviton Monteiro (cleviton@gmail.com)

ARQUITETURA DE SISTEMAS. Cleviton Monteiro (cleviton@gmail.com) ARQUITETURA DE SISTEMAS Cleviton Monteiro (cleviton@gmail.com) Roteiro Definição Documento de arquitetura Modelos de representação da arquitetura Estilos arquiteturais Arquitetura de sistemas web Arquitetura

Leia mais

Sistemas Operacionais Cap 3 Estruturas de Sistemas Operacionais. Podemos analisar um sistema operacional sob diversos aspectos:

Sistemas Operacionais Cap 3 Estruturas de Sistemas Operacionais. Podemos analisar um sistema operacional sob diversos aspectos: Estruturas de Sistemas Operacionais Podemos analisar um sistema operacional sob diversos aspectos: Os serviços que o sistema operacional oferece. A interface que o sistema operacional torna disponível

Leia mais

Módulo I - Introdução. Faculdade Christus Sistemas de Informação 17/09/2010. Carlos Eugênio Torres Engenheiro de Informática http://cetorres.

Módulo I - Introdução. Faculdade Christus Sistemas de Informação 17/09/2010. Carlos Eugênio Torres Engenheiro de Informática http://cetorres. Módulo I - Introdução Aula 2 Carlos Eugênio Torres Engenheiro de Informática http://cetorres.com Faculdade Christus Sistemas de Informação 17/09/2010 Graduado em Ciência da Computação pela UFC, Brasil

Leia mais

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador Sistemas de Informação Prof. Anderson D. Moura Um programa de computador é composto por uma seqüência de instruções, que é interpretada e executada por um processador ou por uma máquina virtual. Em um

Leia mais

Sistemas Embarcados Android

Sistemas Embarcados Android Engenharia Elétrica UFPR 7 de março de 2013 Outline Desenvolvido para sistemas móveis pelo Google: Android Open Source Project (AOSP) Grande sucesso, devido a combinação de: open source licensing aggressive

Leia mais

Sistemas Operacionais Introdução

Sistemas Operacionais Introdução Sistemas Operacionais Introdução Adriano J. Holanda http://adrianoholanda.org/edu/ 5 de agosto de 2013 Introdução Sobre o curso Introdução Complexidade dos SOs Informações sobre a disciplina Serviços Arquitetura

Leia mais

Sistemas Operacionais

Sistemas Operacionais UNIVERSIDADE BANDEIRANTE DE SÃO PAULO INSTITUTO POLITÉCNICO CURSO DE SISTEMAS DE INFORMAÇÃO Sistemas Operacionais Notas de Aulas: Tópicos 7 e 8 Estrutura do Sistema Operacional São Paulo 2009 1 Sumário

Leia mais

UNIVERSIDADE FEDERAL DE VIÇOSA DEPARTAMENTO DE INFORMÁTICA COMPUTAÇÃO MÓVEL CONTROLE DE GASTOS PARA ORÇAMENTO DOMÉSTICO

UNIVERSIDADE FEDERAL DE VIÇOSA DEPARTAMENTO DE INFORMÁTICA COMPUTAÇÃO MÓVEL CONTROLE DE GASTOS PARA ORÇAMENTO DOMÉSTICO UNIVERSIDADE FEDERAL DE VIÇOSA DEPARTAMENTO DE INFORMÁTICA COMPUTAÇÃO MÓVEL CONTROLE DE GASTOS PARA ORÇAMENTO DOMÉSTICO Fred Paulino Ferreira, Leonardo Couto, Renato Maia, Luiz G. Montanha Departamento

Leia mais

Tecnólogo em Análise e Desenvolvimento de Sistemas

Tecnólogo em Análise e Desenvolvimento de Sistemas Tecnólogo em Análise e Desenvolvimento de Sistemas O conteúdo deste documento tem como objetivos geral introduzir conceitos mínimos sobre sistemas operacionais e máquinas virtuais para posteriormente utilizar

Leia mais

Noções de Informática TRT -RS

Noções de Informática TRT -RS Analista Judiciário 26. Um usuário do Windows 7 Professional em português clicou, a partir do Painel de Controle, nas seguintes opções: Rede e Internet; Exibir o status e as tarefas da rede; Conexão Local;

Leia mais

Sistemas Embarcados Android

Sistemas Embarcados Android Engenharia Elétrica UFPR 13 de novembro de 2014 Desenvolvido para sistemas móveis pelo Google: Android Open Source Project (AOSP) Grande sucesso, devido a combinação de: open source licensing aggressive

Leia mais

Capítulo 1. Introdução. 1.1 Linguagens. OBJETIVOS DO CAPÍTULO Ao final deste capítulo você deverá ser capaz de:

Capítulo 1. Introdução. 1.1 Linguagens. OBJETIVOS DO CAPÍTULO Ao final deste capítulo você deverá ser capaz de: i Sumário 1 Introdução 1 1.1 Linguagens....................................... 1 1.2 O que é um Compilador?................................ 2 1.3 Processadores de Programas: Compiladores, Interpretadores

Leia mais

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN SISTEMAS OPERACIONAIS Apostila 03 Estrutura do Sistema Operacional UNIBAN 1.0 O Sistema Operacional como uma Máquina Virtual A arquitetura (conjunto de instruções, organização de memória, E/S e estrutura

Leia mais

Minicurso introdutório de desenvolvimento para dispositivos Android. Cristiano Costa

Minicurso introdutório de desenvolvimento para dispositivos Android. Cristiano Costa Minicurso introdutório de desenvolvimento para dispositivos Android Cristiano Costa Desenvolvimento da interface estática Sobre mim Graduando em Engenharia Eletrônica - UNIFEI Trabalhou em desenvolvimento

Leia mais

Sobre o Colméia: Grupo de pesquisa em Software e Hardware Livre. Software Livre não é só Linux!

Sobre o Colméia: Grupo de pesquisa em Software e Hardware Livre. Software Livre não é só Linux! Sobre o Colméia: Grupo de pesquisa em Software e Hardware Livre. Software Livre não é só Linux! Assuntos que serão abordados Android é Software Livre? Arquitetura Android Maquina Virtual Dalvik Evolução

Leia mais

ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL

ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL Francisco Tiago Avelar, Vitor Conrado F. Gomes, Cesar Tadeu Pozzer Universidade Federal de Santa Maria UFSM Curso de Ciência da Computação

Leia mais

Sistema para gestão de restaurante

Sistema para gestão de restaurante Sistema para gestão de restaurante Luciana Tavares Rosa luciana.rosa@inf.aedb.br AEDB Fábio Rezende Dutra fabio.dutra@inf.aedb.br AEDB Resumo:O sistema para gestão de restaurante é um software desenvolvido

Leia mais

Programação de Computadores II: Java. / NT Editora. -- Brasília: 2014. 82p. : il. ; 21,0 X 29,7 cm.

Programação de Computadores II: Java. / NT Editora. -- Brasília: 2014. 82p. : il. ; 21,0 X 29,7 cm. Autor José Jesse Gonçalves Graduado em Licenciatura em Matemática pela Universidade Estadual de São Paulo - UNESP, de Presidente Prudente (1995), com especialização em Análise de Sistemas (1999) e mestrado

Leia mais

Manual do Usuário Android Neocontrol

Manual do Usuário Android Neocontrol Manual do Usuário Android Neocontrol Sumário 1.Licença e Direitos Autorais...3 2.Sobre o produto...4 3. Instalando, Atualizando e executando o Android Neocontrol em seu aparelho...5 3.1. Instalando o aplicativo...5

Leia mais

2ª Edição Ricardo R. Lecheta

2ª Edição Ricardo R. Lecheta Google Aprenda a criar aplicações para dispositivos móveis com o Android SDK 2ª Edição Ricardo R. Lecheta Novatec capítulo 1 Introdução ao Android 1.1 Introdução O mercado de celulares está crescendo cada

Leia mais

Excel 2010 Modulo II

Excel 2010 Modulo II Excel 2010 Modulo II Sumário Nomeando intervalos de células... 1 Classificação e filtro de dados... 3 Subtotais... 6 Validação e auditoria de dados... 8 Validação e auditoria de dados... 9 Cenários...

Leia mais

6 - Gerência de Dispositivos

6 - Gerência de Dispositivos 1 6 - Gerência de Dispositivos 6.1 Introdução A gerência de dispositivos de entrada/saída é uma das principais e mais complexas funções do sistema operacional. Sua implementação é estruturada através de

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso

Leia mais

COMPUTAÇÃO MÓVEL. Prof. M.Sc Sílvio Bacalá Jr www.facom.ufu.br/~bacala/android

COMPUTAÇÃO MÓVEL. Prof. M.Sc Sílvio Bacalá Jr www.facom.ufu.br/~bacala/android COMPUTAÇÃO MÓVEL Prof. M.Sc Sílvio Bacalá Jr www.facom.ufu.br/~bacala/android O que é computação Móvel Acesso à informação a qualquer lugar, a qualquer momento. O que é computação Móvel Tecnicamente: Processamento

Leia mais

SISTEMA BASEADO EM LOCALIZAÇÃO DE SERVIÇOS DE TÁXI

SISTEMA BASEADO EM LOCALIZAÇÃO DE SERVIÇOS DE TÁXI SISTEMA BASEADO EM LOCALIZAÇÃO DE SERVIÇOS DE TÁXI Acadêmico: Arthur Henrique Kienolt Orientador: Prof. Dr. Mauro Marcelo Mattos ROTEIRO Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento

Leia mais

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Aula 3 Virtualização de Sistemas 1. Conceito Virtualização pode ser definida

Leia mais

Copyright. Isenção e limitação de responsabilidade

Copyright. Isenção e limitação de responsabilidade Manual do SMS Copyright 1998-2002 Palm, Inc. Todos os direitos reservados. Graffiti, HotSync, o logotipo da Palm e Palm OS são marcas registradas da Palm, Inc. O logotipo de HotSync e Palm são marcas comerciais

Leia mais

Softwares de Sistemas e de Aplicação

Softwares de Sistemas e de Aplicação Fundamentos dos Sistemas de Informação Softwares de Sistemas e de Aplicação Profª. Esp. Milena Resende - milenaresende@fimes.edu.br Visão Geral de Software O que é um software? Qual a função do software?

Leia mais

Especificação Suplementar

Especificação Suplementar Especificação Suplementar Versão Histórico de Revisões Data Versão Descrição Autor 29/10/2014 2.0 2.1 funcionalidade e segurança de M. Vinícius acesso 30/10/2014

Leia mais

AUTOR(ES): MARGHEL RAIMUNDO DA COSTA VASCONCELOS, BRUNO ALEXANDRE PEREIRA, SERGIO DIAS VIEIRA

AUTOR(ES): MARGHEL RAIMUNDO DA COSTA VASCONCELOS, BRUNO ALEXANDRE PEREIRA, SERGIO DIAS VIEIRA Anais do Conic-Semesp. Volume 1, 2013 - Faculdade Anhanguera de Campinas - Unidade 3. ISSN 2357-8904 TÍTULO: RECONHECIMENTO DE GESTOS - OPENCV CATEGORIA: EM ANDAMENTO ÁREA: ENGENHARIAS E TECNOLOGIAS SUBÁREA:

Leia mais

ruirossi@ruirossi.pro.br

ruirossi@ruirossi.pro.br Dispositivos Móveis Plataformas Rui Rossi dos Santos ruirossi@ruirossi.pro.br Mediador: Rui Rossi dos Santos Slide 1 Contexto o Presença massiva dos celulares 1,5 bilhões de televisores 1 bilhão de pessoas

Leia mais

Plano de Trabalho Docente 2014. Ensino Técnico

Plano de Trabalho Docente 2014. Ensino Técnico Plano de Trabalho Docente 2014 Ensino Técnico ETEC MONSENHOR ANTONIO MAGLIANO Código: 088 Município: Garça Eixo Tecnológico: Informação e Comunicação Habilitação Profissional: Técnica de Nível Médio de

Leia mais

Seminário de S.O - Google Android

Seminário de S.O - Google Android Seminário de S.O - Google Android Diogo de Campos João Paulo Pizani Flor Maurício Oliveira Haensch Pedro Covolan Bachiega 19 de novembro de 2008 1 Introdução O presente trabalho foi apresentado como seminário

Leia mais

CONFORTO COM SEGURANÇA CONFORTO COM SEGURANÇA. 0 P27070 - Rev

CONFORTO COM SEGURANÇA CONFORTO COM SEGURANÇA. 0 P27070 - Rev P27070 - Rev. 0 1. RESTRIÇÕES DE FUNCIONAMENTO RECEPTOR IP ÍNDICE 1. Restrições de Funcionamento... 03 2. Receptor IP... 03 3. Inicialização do Software... 03 4. Aba Eventos... 04 4.1. Botão Contas...

Leia mais

Processos (Threads,Virtualização e Migração de Código)

Processos (Threads,Virtualização e Migração de Código) Processos (Threads,Virtualização e Migração de Código) Roteiro Processos Threads Virtualização Migração de Código O que é um processo?! Processos são programas em execução. Processo Processo Processo tem

Leia mais

Android. 10 vantagens do sistema Android em relação ao iphone

Android. 10 vantagens do sistema Android em relação ao iphone Android Android é um sistema operacional do Google para smartphones, TVs e tablets. Baseado em Linux e de código aberto, o sistema móvel é utilizado em aparelhos da Samsung, LG, Sony, HTC, Motorola, Positivo,

Leia mais

Figura 01 Kernel de um Sistema Operacional

Figura 01 Kernel de um Sistema Operacional 01 INTRODUÇÃO 1.5 ESTRUTURA DOS SISTEMAS OPERACIONAIS O Sistema Operacional é formado por um Conjunto de rotinas (denominado de núcleo do sistema ou kernel) que oferece serviços aos usuários e suas aplicações

Leia mais

MANUAL DE INSTALAÇÃO CONFIGURAÇÃO IDE ECLIPSE

MANUAL DE INSTALAÇÃO CONFIGURAÇÃO IDE ECLIPSE MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO IDE ECLIPSE T1011 GUILHERME RODRIGUES Ano 2015 MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO DA IDE ECLIPSE. Neste documento aborda como instalar e configurar a IDE eclipse para

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Android Android é um sistema operacional para dispositivos móveis Kernel Linux, drivers e bibliotecas do

Leia mais

Arquitetura de Sistemas Operacionais Machado/Maia. Arquitetura de Sistemas

Arquitetura de Sistemas Operacionais Machado/Maia. Arquitetura de Sistemas Arquitetura de Sistemas Operacionais Capítulo 4 Estrutura do Sistema Operacional Cap. 4 Estrutura do Sistema 1 Sistemas Operacionais Pitágoras Fadom Divinópolis Material Utilizado na disciplina Sistemas

Leia mais

Manual do Aplicativo - Rastreamento Veicular

Manual do Aplicativo - Rastreamento Veicular Manual do Aplicativo - Rastreamento Veicular Sumário Apresentação... 2 Instalação do Aplicativo... 2 Localizando o aplicativo no smartphone... 5 Inserindo o link da aplicação... 6 Acessando o sistema...

Leia mais

CAPTURA SINCRONIZADA DE VÍDEO NO ENSINO DE CIÊNCIAS

CAPTURA SINCRONIZADA DE VÍDEO NO ENSINO DE CIÊNCIAS CAPTURA SINCRONIZADA DE VÍDEO NO ENSINO DE CIÊNCIAS INTRODUÇÃO A imagem e o áudio têm ocupado cada vez mais espaço na constituição e expressão do conhecimento humano, seja no âmbito da informação, do entretenimento

Leia mais

4 Conversor EDTV Raw. 4.1 Arquitetura

4 Conversor EDTV Raw. 4.1 Arquitetura 4 Conversor EDTV Raw O conversor EDTV Raw é o programa que lê um documento escrito no perfil NCL EDTV e gera um documento Raw equivalente, i.e. que define a mesma apresentação. Este capítulo, apresenta

Leia mais

AFRE. a. ( ) Instalando um programa gerenciador de carregamento, como o LILO ou o GRUB. a. ( ) Data Werehouse ; Internet ; Linux

AFRE. a. ( ) Instalando um programa gerenciador de carregamento, como o LILO ou o GRUB. a. ( ) Data Werehouse ; Internet ; Linux 1. De que forma é possível alterar a ordem dos dispositivos nos quais o computador procura, ao ser ligado, pelo sistema operacional para ser carregado? a. ( ) Instalando um programa gerenciador de carregamento,

Leia mais

MEGAFREE MANUAL DO USUÁRIO

MEGAFREE MANUAL DO USUÁRIO MEGAFREE MANUAL DO USUÁRIO VERSÃO: Julho, 2013. DIREITOS DE USO: Publicação de uso exclusivo, classificada quanto ao nível de sigilo como RESERVADA. A presente documentação é propriedade da Tellfree Brasil

Leia mais

SED 2.0. Guia Rápido. Módulo 1 Servidor de OCR Sistema Eletrônico de Documentos. Nesta Edição

SED 2.0. Guia Rápido. Módulo 1 Servidor de OCR Sistema Eletrônico de Documentos. Nesta Edição SED 2.0 Guia Rápido Módulo 1 Servidor de OCR Sistema Eletrônico de Documentos Nesta Edição 1 Parâmetros da Digitalização 2 Configuração do MODO AVANÇADO 3 Adicionando Documento ao Cadastro 4 Utilizando

Leia mais

Sistemas Operacionais I Parte III Estrutura dos SOs. Prof. Gregorio Perez gregorio@uninove.br 2007. Roteiro. Componentes do Sistema

Sistemas Operacionais I Parte III Estrutura dos SOs. Prof. Gregorio Perez gregorio@uninove.br 2007. Roteiro. Componentes do Sistema Sistemas Operacionais I Parte III Estrutura dos SOs Prof. Gregorio Perez gregorio@uninove.br 2007 Roteiro Serviços Estrutura dos Sistemas Operacionais Funções do Sistema Operacional Chamadas do Sistema

Leia mais

Universidade Federal de Minas Gerais Instituto de Ciências Exatas Departamento de Ciências da Computação. Raphael Ottoni Santiago Machado de Faria

Universidade Federal de Minas Gerais Instituto de Ciências Exatas Departamento de Ciências da Computação. Raphael Ottoni Santiago Machado de Faria Universidade Federal de Minas Gerais Instituto de Ciências Exatas Departamento de Ciências da Computação Raphael Ottoni Santiago Machado de Faria MONOGRAFIA DE PROJETO ORIENTADO EM COMPUTAÇÃO I Rastreamento

Leia mais

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 05 Estrutura e arquitetura do SO Parte 2 Referência: MACHADO, F.B. ; MAIA, L.P. Arquitetura de Sistemas Operacionais. 4.ed. LTC,

Leia mais

Plano de Trabalho Docente 2014. Ensino Técnico

Plano de Trabalho Docente 2014. Ensino Técnico Plano de Trabalho Docente 2014 Ensino Técnico Etec: ETEC PROF MASSUYUKI KAWANO Código: 136 Município: TUPÃ Eixo Tecnológico: INFORMAÇÃO E COMUNICAÇÃO Habilitação Profissional: Habilitação Profissional

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação Unidade 4 Ambiente de desenvolvimento Java QI ESCOLAS E FACULDADES Curso Técnico em Informática SUMÁRIO A LINGUAGEM JAVA... 3 JVM, JRE, JDK... 3 BYTECODE... 3 PREPARANDO O AMBIENTE

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Depurando aplicações Professor: Danilo Giacobo OBJETIVOS DA AULA Aprender dicas e técnicas para encontrar erros em aplicações Android. Conhecer os recursos que auxiliam

Leia mais

PROGRAMANDO ANDROID NA IDE ECLIPSE GABRIEL NUNES, JEAN CARVALHO TURMA TI7

PROGRAMANDO ANDROID NA IDE ECLIPSE GABRIEL NUNES, JEAN CARVALHO TURMA TI7 Serviço Nacional de Aprendizagem Comercial do Rio Grande do Sul Informação e Comunicação: Habilitação Técnica de Nível Médio Técnico em Informática Programação Android na IDE Eclipse PROGRAMANDO ANDROID

Leia mais

Fundamentos de Java. Prof. Marcelo Cohen. 1. Histórico

Fundamentos de Java. Prof. Marcelo Cohen. 1. Histórico Fundamentos de Java Prof. Marcelo Cohen 1. Histórico 1990 linguagem Oak; desenvolvimento de software embutido para eletrodomésticos S.O. para o controle de uma rede de eletrodomésticos o surgimento da

Leia mais

PROJETO PEDAGÓGICO DE CURSOS

PROJETO PEDAGÓGICO DE CURSOS 1 de 5 PROJETO PEDAGÓGICO DE CURSOS BURITREINAMENTOS MANAUS-AM DEZEMBRO / 2014 2 de 5 PACOTES DE TREINAMENTOS BURITECH A Buritech desenvolveu um grupo de pacotes de treinamentos, aqui chamados de BuriPacks,

Leia mais

Frameworks para criação de Web Apps para o Ensino Mobile

Frameworks para criação de Web Apps para o Ensino Mobile 393 Frameworks para criação de Web Apps para o Ensino Mobile Lucas Zamim 1 Roberto Franciscatto 1 Evandro Preuss 1 1 Colégio Agrícola de Frederico Westphalen (CAFW) Universidade Federal de Santa Maria

Leia mais

Desenvolvimento de uma aplicação embarcada em celular visando controle de robô via Wi-Fi

Desenvolvimento de uma aplicação embarcada em celular visando controle de robô via Wi-Fi Desenvolvimento de uma aplicação embarcada em celular visando controle de robô via Wi-Fi Bruno Henrique Andrade Cruz 1 Josué Fernandes Dall Agnese 1 Bruno José Fagundes 1 Marcelo Teixeira Bastos 1 Rolf

Leia mais

Índice de ilustrações

Índice de ilustrações Sumário 1Dez novos recursos do windows 8...2 1.1Interface Metro...2 1.2Internet Explorer 10...4 1.3Gerenciador de Tarefas...5 1.4Painel de Controle...5 1.5Interface Ribbon...6 1.6Menu Iniciar...7 1.7Windows

Leia mais

SO Sistemas Operacionais

SO Sistemas Operacionais GOVERNO DO ESTADO DO RIO DE JANEIRO FUNDAÇÃO DE APOIO A ESCOLA TÉCNICA ESCOLA TÉCNICA ESTADUAL REPÚBLICA SO Sistemas Operacionais Curso de Informática ETE REPÚBLICA - Rua Clarimundo de Melo, 847, Quintino

Leia mais

AUTOR(ES): CARLOS ANTONIO PINHEIRO PINTO, ERMÍNIO PEDRAL SANTANA, GUILHERME CASSIANO DA SILVA

AUTOR(ES): CARLOS ANTONIO PINHEIRO PINTO, ERMÍNIO PEDRAL SANTANA, GUILHERME CASSIANO DA SILVA Anais do Conic-Semesp. Volume 1, 2013 - Faculdade Anhanguera de Campinas - Unidade 3. ISSN 2357-8904 TÍTULO: SISTEMA MÓVEL DE COMPRAS POR QR CODE CATEGORIA: CONCLUÍDO ÁREA: ENGENHARIAS E TECNOLOGIAS SUBÁREA:

Leia mais

MANUAL DE UTILIZAÇÃO DO MOODLE 2.6

MANUAL DE UTILIZAÇÃO DO MOODLE 2.6 NÚCLEO DE TECNOLOGIA DA INFORMAÇÃO E COMUNICAÇÃO NTIC MANUAL DE UTILIZAÇÃO DO MOODLE 2.6 PERFIL ALUNO Versão 1.0 2014 NÚCLEO DE TECNOLOGIA DA INFORMAÇÃO E COMUNICAÇÃO NTIC MANUAL DE UTILIZAÇÃO DO MOODLE

Leia mais

Capítulo 2 Introdução à ferramenta Flash

Capítulo 2 Introdução à ferramenta Flash Capítulo 2 Introdução à ferramenta Flash Índice 1. O uso da ferramenta Flash no projeto RIVED.... 1 2. História do Flash... 4 1. O uso da ferramenta Flash no projeto RIVED. É importante, antes de iniciarmos

Leia mais

CyberLink. PowerDVD Mobile. Guia do Usuário

CyberLink. PowerDVD Mobile. Guia do Usuário CyberLink PowerDVD Mobile Guia do Usuário Copyright e aviso de isenção Todos os direitos reservados. Nenhuma parte desta publicação pode ser reproduzida, armazenada em um sistema de recuperação ou transmitida

Leia mais

Comunicado Técnico 19

Comunicado Técnico 19 Comunicado Técnico 19 ISSN 2177-854X Novembro. 2012 Uberaba - MG Desenvolvimento para dispositivos móveis Instruções Técnicas Responsável: Gill Mayeron Duarte e-mail: gill@valim.com.br Especialista em

Leia mais

4 Estrutura do Sistema Operacional. 4.1 - Kernel

4 Estrutura do Sistema Operacional. 4.1 - Kernel 1 4 Estrutura do Sistema Operacional 4.1 - Kernel O kernel é o núcleo do sistema operacional, sendo responsável direto por controlar tudo ao seu redor. Desde os dispositivos usuais, como unidades de disco,

Leia mais

Arquiteturas para implantação de aplicações móveis wireless

Arquiteturas para implantação de aplicações móveis wireless Arquiteturas para implantação de aplicações móveis wireless Este tutorial apresenta uma visão geral da arquitetura para implantação de aplicações móveis wireless. Eduardo Tude Engenheiro de Teleco (IME

Leia mais

MANUAL DE UTILIZAÇÃO. Instalação do MV Portaria

MANUAL DE UTILIZAÇÃO. Instalação do MV Portaria MANUAL DE UTILIZAÇÃO Instalação do MV Portaria Histórico da Revisão Data Versão Autor Descrição 15/06/12 1.0 Aluisio Comiran Criação do documento. 12/09/12 1.1 Aluisio Comiran - Foram removidas as etapas

Leia mais

Shavlik Protect. Guia de Atualização

Shavlik Protect. Guia de Atualização Shavlik Protect Guia de Atualização Copyright e Marcas comerciais Copyright Copyright 2009 2014 LANDESK Software, Inc. Todos os direitos reservados. Este produto está protegido por copyright e leis de

Leia mais

LASERJET ENTERPRISE M4555 SÉRIE MFP. Guia de instalação do software

LASERJET ENTERPRISE M4555 SÉRIE MFP. Guia de instalação do software LASERJET ENTERPRISE M4555 SÉRIE MFP Guia de instalação do software HP LaserJet Enterprise M4555 MFP Series Guia de instalação do software Direitos autorais e licença 2011 Copyright Hewlett-Packard Development

Leia mais

GuiBi: Um aplicativo para plataforma Android com um guia comercial da cidade de Bambuí MG

GuiBi: Um aplicativo para plataforma Android com um guia comercial da cidade de Bambuí MG GuiBi: Um aplicativo para plataforma Android com um guia comercial da cidade de Bambuí MG Bruno Alberto Soares Oliveira 1,3 ; Lucas Vieira Murilo 1,3 ; Maik Olher Chaves 2,3 1 Estudante de Engenharia de

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel A linguagem JAVA A linguagem Java O inicio: A Sun Microsystems, em 1991, deu inicio ao Green Project chefiado por James Gosling. Projeto que apostava

Leia mais

Inicialização Rápida do Novell Vibe Mobile

Inicialização Rápida do Novell Vibe Mobile Inicialização Rápida do Novell Vibe Mobile Março de 2015 Introdução O acesso móvel ao site do Novell Vibe pode ser desativado por seu administrador do Vibe. Se não conseguir acessar a interface móvel do

Leia mais

Versão 2.2.0 PIMACO AUTOADESIVOS LTDA. Assistente Pimaco + 2.2.0. Ajuda ao Usuário

Versão 2.2.0 PIMACO AUTOADESIVOS LTDA. Assistente Pimaco + 2.2.0. Ajuda ao Usuário Versão 2.2.0 PIMACO AUTOADESIVOS LTDA. Assistente Pimaco + 2.2.0 Ajuda ao Usuário A S S I S T E N T E P I M A C O + 2.2.0 Ajuda ao usuário Índice 1. BÁSICO 1 1. INICIANDO O APLICATIVO 2 2. O AMBIENTE DE

Leia mais

DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION

DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION Robison Cris Brito Centro Federal de Educação Tecnológica do Paraná Unidade de Pato Branco robison@pb.cefetpr.br RESUMO Engana-se quem acha

Leia mais