|
||
A. Ciências Exatas e da Terra - 2. Ciência da Computação - 4. Engenharia de Software | ||
IMAGENET: PLATAFORMA PARA PROCESSAMENTO DIGITAL DE IMAGENS EM PLATAFORMA .NET | ||
Jorge André G. Albuquerque 1 (jorge@faculdadefb.com.br) e Felipe Oquendo Nogueira 1 | ||
(1. Curso de Ciência da Computação, Faculdade Farias Brito, FFB) | ||
INTRODUÇÃO:
A área de processamento digital de imagens (PDI) pode ser dividida em duas categorias de funcionalidade: melhoria da qualidade das imagens digitais e extração de informação da imagem em processos automáticos ou semi-automáticos. Os desenvolvedores de sistemas de PDI deparam-se com uma diversidade de pacotes disponíveis em diferentes plataformas de desenvolvimento e APIs, o que dificulta a interoperabilidade e reutilização das soluções desenvolvidas. Com o propósito de solucionar o problema exposto, analisou-se a filosofia de independência de linguagem de programação da plataforma gratuita .NET (Microsoft Corporation, Redmond, WA). A plataforma (framework) .NET possui integração livre para definições de linguagens de programação em sua biblioteca comum (CLI), atualmente dispondo de mais de 20 linguagens, dentre as quais Java (J#), C (C++ e C#) e VB (VB .NET). A plataforma .NET apresenta ainda facilidades para desenvolvimento de aplicações distribuídas e acesso remoto a componentes via Web. Este trabalho apresenta o ImageNET, uma plataforma que permite fácil implementação e integração de novos algoritmos de PDI sobre o framework .NET |
||
METODOLOGIA:
A plataforma ImageNET foi projetada e construída na linguagem C#, e disponibilizada na forma de uma biblioteca dinâmica (DLL), oferecendo publicamente um coleção de classes abstratas (interfaces) relacionadas entre si. Adicionando-se novas classes, através da especialização, as interfaces podem ser estendidas, cooperando para produzir uma solução de projeto reutilizável. A plataforma ImageNET define uma hierarquia de classes dividida nas categorias de classes de mídia (representação de imagens), classes de processamento (operações sobre mídias) e classes de formato (representações internas e externas dos dados de mídia e operadores). Para produção e obtenção de imagens, foram utilizadas classes pré-disponíveis na plataforma .NET. A classe de mídia mais genérica foi denominada “Media”, com propriedade “Info”, contendo atributos de nome, tamanho e formato, e subclasses para imagens binárias, tons de cinza, indexadas e compostas com discretização de 8 bits e 16 bits de cor. A classe de processamento segue o padrão de “objeto funcional”, com método “Execute” e atributos de parâmetros e mídias de entrada e saída. As classes de formatos apresentam métodos de importação (decodificação) e exportação (codificação). |
||
RESULTADOS:
A classe de processamento foi implementada sobre o pacote lógico ImageNET.Media.Image.Processing. Os processamentos implementados nesta classe foram definidos em classes concretas sobre as classes abstratas nas categorias de filtros, operadores de convolução, transformadas de imagem, morfologia matemática e operações matriciais. A classe de formatos foi especificada nos formatos de imagem, operadores morfológicos, matrizes complexas e objetos de análise (i.e. histograma). O pacote foi utilizado para construção de aplicativos de processamento de imagens com interfaces gráficas (GUI) em ambientes Windows e Web (aspx). A plataforma ImageNET está disponível para download em http://www.fbtechcenter.com/free/imagenet. |
||
CONCLUSÕES:
A plataforma projetada foi considerada mais adequada que a biblioteca de classes pré-disponível na plataforma .NET, implementando funções de morfologia matemática e transformadas de Fourier. A plataforma se mostrou flexível para adição de novas classes de mídia, novas classes de algoritmos (uso de objetos funcionais) e novos formatos de mídia. A plataforma .NET permite interoperabilidade dos pacotes desenvolvidos independentemente da linguagem de programação, tanto para código relativo aos algoritmos de processamento como para eventual interface de obtenção de parâmetros do usuário. A plataforma ImageNET serve como uma ferramenta para estudantes e pesquisadores de computação implementarem e testarem algoritmos de PDI de forma fácil e rápida. Em trabalhos futuros, devem ser consideradas técnicas para melhoria de performance com uso de múltiplos processadores locais ou remotos, como paralelismo ou processamento distribuído. A plataforma pode também ser facilmente estendida para processar outros tipos de mídia, como áudio, vídeo ou animação. |
||
Palavras-chave: processamento digital de imagem; framework .NET; engenharia de software. | ||
Anais da 57ª Reunião Anual da SBPC - Fortaleza, CE - Julho/2005 |