Computer Vision
http://www.dca.ufrn.br/~lmarcos/courses/visao
No princípio
• Advento dos computadores
• Tudo era Computação Gráfica (ou
Processamento Gráfico)
Processamento Gráfico?
1st Qtr
2nd Qtr
3rd Qtr
4th Qtr
4th Qtr
1st Qtr
3rd Qtr
2nd Qtr
3
Sistemas Gráficos
•
•
•
•
•
CORE, GKS, GINO-F (padrões gráficos)
X-Windows (interface gráfica MIT)
OpenGL (biblioteca gráfica)
DirectX (biblioteca gráfica)
DirectFB (biblioteca gráfica)
Evolução do PG
• Os modelos mais simples e métodos ainda
são muito usados devido a serem bem
entendidos, e simples de implementação em
hardware e também rápidos.
• Nos concentraremos em métodos simples,
mas também nos difíceis.
Sub-áreas
• Processamento de Imagens
– Entrada: imagem; saída: imagem
• Síntese de imagens
– Entrada: representação 3D; saída: imagem
• Análise de Imagens
– Entrada: imagem; saída: forma e outras características
3D
– Visão Computacional
– Reconhecimento de padrões
Processamento de Imagens
• Envolve as técnicas de transformação de
imagens em que tanto a imagem de partida
quanto a imagem resultado apresentam-se
sob uma representação visual;
• As transformações visam, em geral,
melhorar as características visuais da
imagem, como aumentar o contraste, foco,
reduzir ruídos e distorções.
Síntese de Imagens
• Ocupa-se da produção de representações
visuais a partir das especificações
geométrica e visual de seus componentes;
• É uma das sub-áreas mais difundidas e
geralmente confundida com a própria
computação gráfica
• Área de CAD usa síntese de imagens
Análise de Imagens
• Busca obter a especificação dos
componentes de uma imagem a partir de sua
representação visual.
• Extração de características para Visão de
Robôs
• Extração de forma 3D a partir de imagens
• Identificação de objetos 3D a partir de suas
imagens (envolve reconstrução)
Modelagem
Geométrica
Dados
SI
VC
Análise
Imagem
PI
Processamento
Síntese
Modelagem Geomética
• Provê formas eficientes para manipulação,
armazenamento e recuperação de dados
geométricos no computador.
• Pode ser usada visando interfacear tanto na
síntese de imagens quanto na análise de
imagens.
• Essencial construir uma boa estrutura de
dados visando eficiência.
What is computer vision?
• Primeira questão a ser respondida
• Controvérsias
• Outras questões que ajudam na resposta:
– Que problemas temos intenção de atacar?
– Como planejamos resolvê-los?
Problemas de Visao Computacional
• Computar propriedades do mundo real
usando uma ou mais imagens digitais
– Propriedades geométricas
• Forma e posição de objetos ou sólidos
– Velocidade, aceleração de objetos
– Processamento de imagem presumido
• Imagens temporárias calculadas das originais
• Partes de imagens identificadas para explicitar a
informação necessária para o cálculo objeto
Ferramentas de Visao
Computacional
• Computador interpretando imagens
• Análise de imagens
• Sistema de Visão Computacional
– Hardware de aquisição (adquire e armazena
imagens num computador)
– Processamento de imagens
– Mostrar os resultados aos usuários ou a outros
sistemas computacionais
Hardware
•
•
•
•
•
•
Parte mais importante, talvez
Software pode se tornar hardware
Iluminação em hardware
Câmeras de alta resolução
Redução e abstração de informação (HW)
Restringindo a pose de objetos (zooming,
movimento)
Visao Computacional
• Um conjunto de técnicas computacionais
para estimar ou explicitar as propriedades
geométricas e dinâmicas do mundo 3D a
partir de imagens digitais
As muitas faces da VC
• Dificil determinar o escopo
• Multidisciplinar
• Expansão contínua
– Novas aplicações aparecem todo o tempo
• Áreas de aplicação e pesquisa
– Visto à frente
Disciplinas relacionadas
• Contorno (algum entrelaçamento):
– IA, Robótica, Processamento de Sinais,
Reconhecimento de Padrões, Teoria de
Controle, Psicologia, Neurociência, outras
• Nasceu e cresceu muito rápido
– Menos de 40 anos de existência
Consequências
• Objetivos, ferramentas e pessoas se
entrelaçam com muitas outras disciplinas
• Definição e escopo do que é Visão
Computacional ainda são pautas de
discussão (definições ainda estão sendo
acertadas)
Processamento de Imagens
• Area de pesquisa muito vasta
• Diferença de VC:
– Relaciona-se com propriedades de imagem
– Transformações imagem-imagem
• Visão computacional visa o mundo 3D
– Requer processamento de imagens (prévio)
– Muita coisa entrelaça com PI
Processamento de Imagens
• Exemplos:
– Melhoria em imagens
– Compressão
– Extração de características
Reconhecimento de padroes
• Técnicas para reconhecer e classificar
objetos usando imagens digitais
• Muitos métodos (2D e 3D) para objetos em
poses restringidas
• Não ideais para o mundo 3D (irrestrito)
• IAPR (Internatinal Association for Pattern
Recognition) foi criada para assumir este
campo
Fotogrametria (cartografia)
• Obtenção de medidas precisas e robustas de imagens
controladas
• Menos overlap que PI e PR
• Diferença principal: fotogrametria precisa de graus de
precisao maiores que VC e nem tudo em VC é relacionado
com medidas
• Basear (olhar) em fotogrametria para se desenvolver um
sistema de VC que faça medidas é uma boa idéia
• ISPRS (International Society for Photogrametry and
Remote Sensing) assumiu esta área
Areas de pesquisa e aplicações
• Areas de pesquisa
– Numero grande de contribuições em Visão
(publicações)
• Areas de aplicação
– Domínios em que Visão Computacional é
usada, em conjunto ou não com outras técnicas,
para resolver problemas do mundo real
Areas de pesquisa
•
•
•
•
Detecção de características (features) em imagens
Representação de contornos
Segmentação baseada em características
Análise de imagens de profundidade (rangeimages)
• Modelagem e representação da forma
• Reconstrução a partir de imagens simples (shape
from X, single cues)
• Visão Estéreo
Areas de pesquisa
•
•
•
•
•
•
•
•
•
Análise de movimento
Visão colorida
Visão ativa e com propósito (purposive)
Invariantes (momentos, etc)
Sistemas calibrados e não calibrados
Detecção de objetos
Reconhecimento de objetos 3D
Localização de objetos 3D
Arquiteturas de tempo real e alta performance
Areas de aplicacao
•
•
•
•
•
•
•
Controle de qualidade e inspeção industrial
Engenharia reversa
Seguranca e vigilância
Reconhecimento de face
Reconhecimento de gestos
Monitoramento de estradas
Veículos autônomos (terra, água, espaço)
Areas de aplicacao
•
•
•
•
•
•
•
Sistemas robóticos olho-mão (hand-eye)
Visao Robótica (guia, servidor visual)
Espaço e aplicações
Aplicações militares
Análise de imagens médicas
Bancos de dados de imagens
Realidade virtual, tele-presença e tele-robótica
Conferências
• ICCV: International Conference on Computer Vision (Brasil em 2007)
• CVPR: Internacional Conference on Computer Vision and Pattern
Recognition
• ECCV: European Conference on Computer Vision
• ICIP: International Conference on Image Processing
• ICPR: International Conference on Pattern Recogntion
• ICRA: international Conference on Robotics and Automation
• SBAI: Simpósio Brasileiro de Automação Inteligente
• SIBGRAPI: Brazilian Smposium on Computer Graphics and Image
Processing
• SBIA: Simpósio Brasileiro de Inteligência Artificial
• EnRI: Encontro de Robótica Inteligente
Journals
• International Journal of Computer Vision
• IEEE Transactions on Pattern Analysis and
Machine Intelligence
• Computer Vision and Image Understanding
• Machine Vision and its Applications
• Image and Vision Computing Journal
• Journal of the Optical Society of America
• Pattern Recognition
• Pattern Recognition Letters
Journals
• IEEE Transactions on Image Processing
• IEEE Transactions on Systems, Man and
Cybernetics
• IEEE Proceedings: Vision, Image and Signal
Processing
• Biological Cybernetics
• Neural Computation
• Artificial Intelligence
• IEEE Intelligent Systems
Books
• Um montão: Computer Vision, Introductory
Techniques to Computer Vision, Robot
Vision, etc…
Internet
• www.cs.cmu.edu/~cil/vision (Computer Vision
Page)
• Peipa.essex.ac.uk (Pilot European Image
Processing Archive)
• iris.usc.edu/VisionNotes/bibliography/contents.html (Annotated
Computer Vision Bibliography)
• www.dai.ac.uk/daidb/staff/personal_pages/CVonli
ne/CVentry.html (colecao de textos - Edinburgh)
Softwares
•
•
•
•
•
•
•
OpenCV (free)
Numerical Recipes (livro com softwares)
Mescach (biblioteca numerica)
Matlab
Mathematica
Scilab
Khoros
Download

Introducao - DCA