12.07.2015 Views

III WVC 2007 - Iris.sel.eesc.sc.usp.br - USP

III WVC 2007 - Iris.sel.eesc.sc.usp.br - USP

III WVC 2007 - Iris.sel.eesc.sc.usp.br - USP

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>WVC</strong>'<strong>2007</strong> - <strong>III</strong> Workshop de Visão Computacional, 22 a 24 de Outu<strong>br</strong>o de <strong>2007</strong>, São José do Rio Preto, SP.Processamento de Imagem Distribuído e Orientado a Serviço usando JAVAFrank José Affonso 1,2 , Evandro Luis Linhari Rodrigues 21-Centro Universitário Central Paulista (UNICEP)2-E<strong>sc</strong>ola de Engenharia de São Carlos (EESC-<strong>USP</strong>)(frank@unicep.com.<strong>br</strong> / faffonso@<strong>sel</strong>.<strong>ee<strong>sc</strong></strong>.<strong>usp</strong>.<strong>br</strong>) (evandro@<strong>sel</strong>.<strong>ee<strong>sc</strong></strong>.<strong>usp</strong>.<strong>br</strong>)AbstractThis paper presents a methodology of distributedimage processing that has the main objective to optimizethe resource of machine available into network. Tooptimize the machine time to processing of image isintroduced the concept of service orientation, which isresponsible to find the available machine into network tohelp decrease the time of image processing.With the service oriented processing is possible the imageprocessing to become dynamic, because depending of thealgorithm or technique that is intended to apply, it isnecessary the high number of machine to have asatisfactory processing time. To have a dynamic processwere utilized two technologies, JINI and JavaSpace,which are complementary and work together to becomethe distributed processing more dynamic than traditionaltechnology can offer actually.1. IntroduçãoA atividade de processar uma imagem requer, emalguns casos, alto poder de processamento de máquina.Em algumas aplicações pode-se observar um ou mai<strong>sc</strong>omputador(es) dedicado(s) para realizar esta atividade.O volume de processamento pode ser determinado emfunção dos algoritmos (cálculos) que se pretende realizare, nota-se também, em determinados casos, oprocessamento é subutilizado e em outros se tornainsuficiente. Para aperfeiçoar a relação investimentoversus processamento, apresenta-se neste artigo umametodologia para processamento distribuído de imagens eorientado a serviços, cujo principal enfoque é otimizar oprocessamento em função dos recursos computacionais.Este artigo está organizado da seguinte maneira: naseção 2 são apresentados os trabalhos relacionados aodesenvolvimento deste; na seção 3 são apresentados ossistemas, local e orientado a serviços, de processamentode imagens com filtros e na seção 4 são apresentadas a<strong>sc</strong>onclusões finais.2. Trabalhos RelacionadosA linguagem de programação JAVA [2] é consideradauma das mais poderosas e mais a<strong>br</strong>angentes das existentesatualmente no mercado [1]. Ela pode ser caracterizadacomo uma linguagem orientada a objetos, robusta,interoperável, portável, multiplataforma e utilizada emvários ambientes de implementação computacional,devido à grande quantidade de APIs (ApplicationProgram Interface) existentes. Essas característicaslevaram a Sun [3] investir num slogan que marcou alinguagem JAVA “compile uma vez e rode em qualquerlugar”. Neste artigo são abordadas APIs paraManipulação de Imagens (Image I/O) [4], paradesenvolvimento de aplicações desktop (SwingJFC) [5] epara distribuição da aplicação na rede (RMI, JINI,JavaSpace) [6, 7 e 8].A API Java Image I/O [4] oferece recursos paramanipulação de imagens tanto em 2D quanto em 3D, paraintegração com aplicativos Swing [5] e para Web, paraaplicativos que envolvem recursos OpenGL [4]. Apesarde oferecer suporte a grande quantidade de recursos,optou-se neste trabalho pela utilização de processamentode imagens em 2D com a aplicação de filtros, que sãooperações matemáticas capazes de realizar as mudançasnas imagens originais. Os detalhes da e<strong>sc</strong>olha deste tipode imagem e filtros que serão aplicados serão detalhadosna seção 3.Para realizar o processamento de imagens com aaplicação de filtros foi desenvolvido um software deexecução local, também conhecido como aplicativodesktop. Esse software foi desenvolvido na ferramentaNetbeans [9] versão 5.5 pela integração direta com o<strong>sc</strong>omponentes gráficos SwingsJFC [5] e pela facilidade dedesenvolvimento.Para implementação da computação distribuídadestaca-se a RMI, Remote Method Invocation, quepermite que objetos JAVA [2], presentes no mesmocomputador ou em um ambiente distribuído, secomuniquem entre si por meio de chamadas remotas aosmétodos que implementam [10]. A RMI oferece atransferência de objetos complexos, tipos de dado<strong>sc</strong>omplexos, através de um mecanismo de serialização,cujo propósito principal é viabilizar a comunicação entreos objetos remotos, codificando-os como um fluxo debytes. Para isso, duas classes são fundamentais: aObjectOutputStream, que converte qualquer objeto“Serializable” em fluxo de bytes para transmissãona rede; e a ObjectInputStream, que reconstitui os259

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!