quinta-feira, 20 de dezembro de 2012

Visão Computacional


Visão Computacional

A Visão Computacional, fortemente consolidada em vários países, é um ramo da computação onde ainda não existe nenhum modelo genérico de percepção visual que possa ser aplicado na prática.

Entretanto, com soluções desenvolvidas visando a resolução de problemas restritos, vem agregando valor a produtos e serviços em vários ramos da indústria, seja na segurança, automação ou em equipamentos de uso cotidiano, como nos sistemas de auxílio a pilotagem presentes em alguns modelos de automóveis, ou em câmeras digitais, nos detectores de sorriso. A visão computacional pode ser definida como sendo o domínio da ciência da computação que estuda e aplica métodos que permitem aos computadores “compreenderem” o conteúdo de uma imagem. Isto pode ser feito quando as informações capazes de caracterizar os elementos que compõem uma cena podem ser padronizadas e extraídas a partir de sua representação digital.

Devido à vasta gama de aplicações e a impossibilidade de definirmos como um elemento deve ser representado em uma imagem, seja um carro, uma cadeira ou uma pessoa, dificilmente poderemos construir um algoritmo determinístico para reconhecer e classificar objetos representados em imagens, fazendo-se necessária a aplicação de técnicas de inteligência artificial que proporcionem ao algoritmo a capacidade de aprendizado. Estas técnicas realizam o seu aprendizado a partir de dados característicos peculiares a cada elemento representado em uma cena, reconhecendo e classificando-os, para a partir de então tomar alguma decisão ou ser capaz de representá-lo de maneira adequada.

Muito se tem pesquisado nesta área para descobrir como nós humanos interpretamos uma determinada cena e como podemos extrair informações de nossa interpretação de modo que possamos associá-las na resolução de certos problemas. Neste contexto surge a aprendizagem de máquina, que é um subcampo da inteligência artificial, dedicado ao desenvolvimento de algoritmos e técnicas que permitam ao computador aprender, isto é, que permitam ao computador aperfeiçoar seu desempenho em alguma tarefa.

O aprendizado de máquina é um aliado valioso no desenvolvimento de sistemas de visão computacional voltados ao reconhecimento e classificação de imagens, visto que além de aprender, as técnicas de aprendizado de máquinas são capazes de generalizar o conhecimento adquirido durante o processo de treinamento. Estas características se enquadram perfeitamente ao comportamento esperado de um sistema de visão computacional, onde é necessário aprender a reconhecer elementos de uma cena e ser capaz de generalizar, reconhecendo elementos semelhantes em outras situações, conforme pode ser observado na imagem 1. Ao projetar um sistema deste tipo, a escolha da técnica mais adequada pode ser um fator decisivo quanto a viabilidade ou não do projeto. Isso ocorre devido a vários fatores, tais como a complexidade do problema e o poder de processamento do hardware onde o sistema será executado.

Várias informações podem ser extraídas de uma cena afim de caracterizar os elementos que a compõem, porém, ao definir quais são as informações mais relevantes para caracteriza-los é necessário considerar aspectos como: se o objeto é o único a estar presente na cena, se existem elementos sobrepostos, se o objeto está em movimento ou não. É possível subdividir os tipos de características que podem ser extraídas de imagens em dois grupos, aspecto e forma, sendo que no primeiro são consideradas informações como rugosidade, cor e textura, e no segundo informações sobre contorno, dimensões, inércia e topologia.

Sistemas de processamento de imagens podem ser agrupados em diferentes áreas, de acordo com sua finalidade e o uso que fazem de técnicas de inteligência artificial, dados coletados e imagens. Aplicações que visam gerar imagens a partir de dados coletados são consideradas aplicações de síntese de imagens, já quando os dados são informações extraídas de uma imagem, a área em questão é a análise de imagens, onde o objetivo consiste em encontrar parâmetros descritivos (em geral numéricos) que representem de modo sucinto informações importantes da imagem.

Fazendo uso dos conceitos agregados pela visão computacional, a OpServices vem trabalhando no desenvolvimento de aplicações capazes de interagir com o sistemas através do processamento de imagens, permitindo realizar o monitoramento da disponibilidade e desempenho de um sistema ao simular uma tarefa realizada por um usuário final.

Referências

CONCI, Aura; AZEVEDO, Eduardo; LETA, Fabiana R.. Computação Gráfica: Teoria e Prática. 2. ed. CAMPUS, 2008.

ROCHA, Anderson de Rezende; Classificadores e Aprendizado em Processamento de Imagens e Visão Computacional. Campinas: Unicamp, 2009. 182p. Tese (Doutorado) - Programa de Pós-Graduação: Doutorado em Ciência da Computação, Universidade Estadual de Campinas, Campinas, 2009.

Bruno Miranda - Support Analyst OpServices

Nenhum comentário:

Postar um comentário