Buscar

Aula 00 - Revisão

Prévia do material em texto

CCT0404- Processamento de Imagens
Revisão prova AV1
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Motivação
• Melhorar a informação da imagem para interpretação humana 
• Melhoramento de imagem para diagnostico médico
• Armazenamento e transmissão eficientes de vídeos.
• Processamento de imagem para melhorar o Georreferenciamento
Processamento de Imagens
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Introdução
O Processamento Digital de Imagens (PDI) não é uma tarefa simples,
na realidade envolve um conjunto de tarefas interconectadas. Tudo
se inicia com a captura de uma imagem, a qual, normalmente,
corresponde à iluminação que é refletida na superfície dos objetos,
realizada através e um sistema de aquisição (Ex. Scanner).
Processamento de Imagens
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Conjunto de tarefas para PDI
Processamento de Imagens
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Conceitos fundamentais
Imagem GRÁFICA é toda e qualquer representação visual
do REAL, mantendo assim fielmente suas
proporções. Imagem ARTÍSTICA é pessoal; toda e
qualquer interpretação ou distorção visual do REAL.
Processamento de imagens
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Definição técnica
Uma imagem
– Uma função bidimensional, f(x,y)
– Cada ponto no par ordenado (x,y) é chamado de intensidade do
ponto ou de nível de cinza.
Quando x, y e o nível de cinza são finitos tem-se uma imagem digital
Processamento de Imagens
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Introdução
Computação Gráfica
Objetivo: manipular e criar imagens
-Entrada: dados
-Saída: imagens
Processamento de Imagens
Processamento de Imagens
Objetivo: processar e transformar imagens
-Entrada: imagens
-Saída: imagens
Visão Computacional
Objetivo: simular a visão humana
-Reconhecer/identificar padrões
Entrada: dados
Saida: aprendizado
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Aplicabilidade
Processamento de Imagens
Medicina
Raio-x
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Aplicabilidade
Processamento de Imagens
Medicina
Ultrassonografia
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Aplicabilidade
Processamento de Imagens
Georreferenciamento
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Arquitetura básica do Processamento de 
imagens
Processamento de Imagens
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tarefas típicas:
Processamento de Imagens
Emprega métodos capazes de melhorar a informação pictorial para interpretação e 
análises humanas. 
Tarefas típicas: 
• Realce do conteúdo da imagem;
• Aumento de contraste;
• Correção de Iluminação
• Eliminação de ruídos
• Falsa coloração 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Histograma
Processamento de Imagens
Conforme Silva (2001), em processamento de imagens, trabalha-se sempre
com os tons de cinza (digital numbers ou DNs) atribuídos aos pixels de
uma imagem. O histograma é uma das formas mais comuns de se
representar a distribuição dos DNs de uma imagem, e possivelmente a mais
útil em processamento digital de imagens.
Nota: Também, é a forma de representar uma imagem por meio de uma função gráfica
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Histograma
Processamento de Imagens
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Expansão de contraste
Processamento de Imagens
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Eliminação de ruídos
Processamento de Imagens
Com ruídos Sem ruídos
Ruído: È o mesmo que má qualidade ou imperfeições
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Realce
Processamento de Imagens
Realce: podemos entender também como nitidez
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Falsa coloração
Processamento de Imagens
Descolorido Falso-color
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tipos de operações em Imagens
Processamento de Imagens
Transformação de imagem a[m,n] em imagem b[m,n]
• Pontual: o resultado num pixel apenas depende do valor do pixel de
entrada correspondente;
Nota: È possível criar a mesma imagem com a quantidade de pixel
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tipos de operações em Imagens
Processamento de Imagens
Transformação de imagem a[m,n] em imagem b[m,n]
• Local: o resultado num pixel depende dos valores da vizinhança de
pixels de entrada mais próximos;
Nota: A medida que se aumenta a quantidade de pixel tem-se o aumento dos vizinhos mais próximos
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tipos de operações em Imagens
Processamento de Imagens
Transformação de imagem a[m,n] em imagem b[m,n]
• Global: o resultado num pixel depende de todos os valores dos
pixels de entrada;
Nota: Quanto maior a quantidade de pixel, melhor a imagem
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Vizinhança de pixels
Processamento de Imagens
:
Tipos de vizinhança de pixels
O conceito de vizinhança de pixels é muito importante
No caso mais comum de amostragem rectangular as vizinhanças
mais usadas são:
viz4
viz6viz8
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Reconhecimento de imagens de forma manual
Processamento de Imagens
Introdução à Programação
AULA 01: Introdução à Lógica de ProgramaçãoProcessamento de Imagens
:
Fundamentos de Imagem digital
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Introdução 
O processo de fundamentação da imagem é utilizado para quantificar
uma imagem numericamente a partir um espaço amostral de uma
imagem, onde:
Processamento de Imagens
Amostragem => tamanho da imagem digital, MxN
Quantização => número de níveis de cinza = 
k=1 imagem binária
k>1 imagem monocromática
k2
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
A estrutura do olho humano
Processamento de Imagens
Três membranas o revestem:
A córnea
A coroide;
e a retina.
A córnea e um tecido resistente e transparente que cobre a
superfície anterior do olho.
Como um prolongamento da córnea, temos a esclera, uma
membrana opaca que reveste o restante do globo ocular.(Gonzalez e
Richard, 2010, p 22)
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
A estrutura do olho humano
Processamento de Imagens
Três membranas o revestem:
A córnea
A coroide;
e a retina.
A coroide situa-se diretamente abaixo da esclera. Essa membrana contem uma
rede de vasos sanguíneos que atua como a principal fonte de nutrição para o
olho.
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
A estrutura do olho humano
Processamento de Imagens
Três membranas o revestem:
A córnea
A coroide;
e a retina.
A membrana mais interna do olho é a retina, que se estende por toda a
porção posterior da parede do olho. Quando o olho esta adequadamente
focalizado, a luz de um objeto externo ao olho forma uma imagem na
retina.
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
A estrutura do olho humano
Processamento de Imagens
Introdução à Programação
AULA 01: Introdução à Lógicade Programação
A estrutura do olho humano
Processamento de Imagens
A disposição geométrica apresentada na Figura 2.3 ilustra como calcular
as dimensões de uma imagem formada na retina. Por exemplo, suponha
que uma pessoa esteja olhando para uma arvore de 15 m de altura a uma
distancia de 100 m. Se h for a altura do objeto na imagem formada na
retina, a disposição geométrica da Figura 2.3 nos leva a:
Fonte: (Gonzalez e Richard, 2010, p 23)
15 = h 
100 17 
Onde, h = 2,55 mm.
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Quantização de imagem
Processamento de Imagens
Amostragem Quantizador
Conversão numérica
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Quantização de Imagem
Processamento de Imagens
M
N
(M colunas, N linhas)
f(MxN)
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Qualidade da imagem
Processamento de Imagens
Resolução do brilho (“brightness resolution”) – número de tons de 
cinza
Resolução espacial – função de:
Densidade espacial – número de pixels (tamanho)
Resolução óptica – sistema óptico, photosensor, eletrônica, … 
(capacidade de capturar detalhes)
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Qualidade da imagem
Processamento de Imagens
• A qualidade de uma imagem deveria definir o grau de detalhe que se 
gostaria de observar na imagem digital. Definindo também a taxa de 
amostragem.
Ex: Digitalização
Sendo que digitalizadores apresentam taxas fixas.
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Recursos para aquisição de imagens
Processamento de Imagens
• É o meio no qual pode-se capturar uma imagem por intermédio de 
equipamentos apropriado para tal.
Imagem Plana
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Aquisição de imagens
Processamento de Imagens
2.3.2 Aquisição de imagens utilizando sensores por varredura de linha
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Aquisição de imagens
Processamento de Imagens
2.3.3 Aquisição de imagens utilizando sensores matriciais
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Perspectivas de imagem digital
Processamento de Imagens
• Perspectiva da imagem
- Plana
Geometricamente falando, as figuras
planas mais conhecidas são: círculo,
quadrado, triângulo, retângulo, trapézio,
hexágono, pentágono, paralelogramo e
losango.
Introdução à Programação
AULA 01: Introdução à Lógica de ProgramaçãoProcessamento de Imagens
Binária
Monocromática
Colorida
RGB
Tipos de imagens
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tipos de imagens
Processamento de Imagens
Binária
Uma Imagem binária, também
chamada bi-nível, é uma imagem
digital na qual há apenas dois
valores possíveis para cada pixel;
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tipos de imagens
Processamento de Imagens
Monocromática
monocromático, tons de cinza e
preto e branco verdadeiro.
Monocromático significa que vários
tons de uma única cor são
usados ​​para fazer uma imagem. ... O
sépia, por exemplo, que dá um tom
mais amarronzado para a fotografia,
é um tipo de imagem
monocromática.
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tipos de imagens
Processamento de Imagens
Tons de cinza
Embora não seja completamente
incorreto, imagens em tons de cinza
variam entre 0 a 256 tons de cinza e
nenhuma outra cor.
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tipos de imagens
Processamento de Imagens
Preto e branco verdadeiro
Verdadeiras fotos preto e branco usam somente preto e branco para
produzir a imagem, embora a maioria usam mistura de tons de cinza.
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tipos de imagens
Processamento de Imagens
Colorida
A cor é um descritor muito
poderoso na identificação
de uma imagem/objeto
(reconhecimento de
padrões e extração de
características);
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tipos de imagens em bits
Processamento de Imagens
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tipos de imagens
Processamento de Imagens
Sistema RGB
é a sigla do sistema de cores aditivas
formado pelas iniciais das cores em
inglês Red, Green e Blue.
A combinação dessas corres
especificamente derivam um conjunto de
cores com diferentes tonalidades.
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Representação RGB
Representação de cores RGB
R
G
B
RED
GREEN
BLUE
Introdução à Programação
AULA 01: Introdução à Lógica de ProgramaçãoProcessamento de Imagens
:
Geoprocessamento de Imagem
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Conceitos
Processamento de Imagens
Geoprocessamento - Conjunto de procedimentos que lidam com
dados georreferenciados e cuja área de atuação envolve a coleta e o
tratamento da informação espacial, assim como o desenvolvimento
e uso de sistemas e aplicações;
Geoprocessamento - Conjunto de técnicas e metodologias
relacionadas a coleta, armazenamento e tratamento de informações
espaciais ou georreferenciadas para serem utilizadas em sistemas
específicos que de alguma forma se utiliza do espaço físico
geográfico;
Geoprocessamento - É a disciplina do conhecimento que utiliza
técnicas matemáticas e computacionais para o tratamento de
informações geográficas.
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
GeoTecnologia
Processamento de Imagens
Conjunto de tecnologias para coleta, processamento, análise e
disponibilização de informação com referência geográfica.
As geotecnologias estão entre os três mercados emergentes mais
importantes da atualidade, junto com a nanotecnologia e a
biotecnologia (Revista Nature, jan2004);
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Fluxo do Geoprocessamento
Processamento de Imagens
Armazenamento
Cartografia
Sensoriamento Remoto
Fotogrametria
Topografia
Dados alfanuméricos
Coleta
Banco de dados Geográfico
Tratamento e análise
Modelagem de dados
Geoestatística
Aritmética lógica
Análise de redes
Análise topológica
Reclassificação
SIG - GIS
CAD
Uso integrado
Conjunto de técnicas 
relacionadas ao 
tratamento da 
informação espacial 
G
eo
p
ro
ce
ss
am
e
n
to
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Armazenamento BDG
Processamento de Imagens
Interface
Entrada e integração 
de dados
Consulta e análise 
espacial
Visualização e 
plotagem
Gerência de dados 
espaciais
Banco de dados 
geográfico (BDG)
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Divisão em Camadas
Processamento de Imagens
Fonte:(Adaptadada: Revista Nature, jan2004); 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Espaço Geográfico X Informação Espacial
Processamento de Imagens
• Espaço geográfico: uma coleção de localizações na superfície da Terra,
sobre a qual ocorrem os fenômenos geográficos;
• Informação espacial: está relacionada à existência de objetos com
propriedades, as quais incluem a sua localização no espaço e a sua relação
com outros objetos.
Introdução à Programação
AULA 01: Introdução à Lógica de ProgramaçãoProcessamento de Imagens
Fonte:(Adaptadada: Revista Nature, jan2004); 
Espaço Geográfico X Informação Espacial
Introdução à ProgramaçãoAULA 01: Introdução à Lógica de ProgramaçãoProcessamento de Imagens
Características do SIG
• Integrar, numa única base de dados, as informações espaciais
provenientes de dados cartográficos, dados de censo e cadastro
urbano e rural, imagens de satélite, redes e modelos numéricos de
terreno;
• Oferecer mecanismos para combinar as várias informações, através
de algoritmos de manipulação e análise, bem como consultar,
recuperar, visualizar e plotar o conteúdo da base de dados
georreferenciados.
Introdução à Programação
AULA 01: Introdução à Lógica de ProgramaçãoProcessamento de Imagens
Exemplo de análise espacial
Análise Espacial
Análise Pergunta Geral Exemplo
Condição O que está... Qual a população desta cidade?
Localização Onde está... Quais as áreas com declividade acima de 20% ?
Tendência O que mudou... Esta terra era produtiva a 5 anos atrás?
Rota Como chegar... Qual o melhor caminho para a rodoviária?
Introdução à Programação
AULA 01: Introdução à Lógica de ProgramaçãoProcessamento de Imagens
Exemplo de análise espacial
Introdução à Programação
AULA 01: Introdução à Lógica de ProgramaçãoProcessamento de Imagens
Exemplo de mapas
Mapas cadastrais: cada elemento do mapa é considerado como um 
objeto geográfico possuindo atributo e podendo estar associado a várias 
representações gráficas
Introdução à Programação
AULA 01: Introdução à Lógica de ProgramaçãoProcessamento de Imagens
Exemplo de satélites
São armazenadas como matrizes, sendo que cada elemento é
denominado pixel, que tem um valor proporcional a energia
eletromagnética refletida ou emitida pela área da superfície terrestre
mapeada. Satélites: LANDSAT, SPOT, NOAA, METEOSAT, ERS.
Fontes: Google earth
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Bibliografia Básica
Processamento de Imagens
CONCI, Aura; AZEVEDO, Eduardo; LETTA, Fabiana. Computação Gráfica:
Processamento de Imagens. Rio de Janeiro: Elsevier, 2008. Vol. 2.
GONZALEZ, R.C.; WOODS, R.E. Processamento de Imagens Digitais. 3.
ed. São Paulo: Pearson, 2010.
HETEM, Jr., Anníbal. Computação gráfica. Rio de Janeiro: LTC, 2006.
MARQUES FILHO, Ogê; VIEIRA NETO, Hugo. Processamento digital de
imagens.. 3 ed.. Rio de Janeiro:: Brasport,, 2011.
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Bibliografia Complementar
Processamento de Imagens
AZEVEDO, Eduardo; CONCI, Aura. Computação Gráfica: Teoria e Prática. Vol 1.. 1
ed... Rio de Janeiro:: Elsevier,,, 2003.
COHEN, Marcelo; MANSSOUR, Isabel. openGL: uma Abordagem Prática e
Objetiva... 1 Ed.. São Paulo:: Novatec,, 2006.
Filho, O.M.; Neto, H.V. Processamento Digital de Imagens.. Porto Alegre:
Brasport,1999.
PEDRINI, H., SCHWARTZ, W. R. Análise de Imagens Digitais: Princípios,
Algoritmos e Aplicações.. 1 Ed.. Rio de Janeiro:: Cengage, 2007.
SOLOMON,Chris. BRECKON, Toby. Fundamentos de Processamento Digital de
Imagens: Uma Abordagem Prática com Exemplos em Matlab.. 1 Ed.. Rio de
Janeiro::LTC, 2013.
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Sugestões de Livros
Processamento de Imagens