Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
Topico 0 - Introducao a Imagens Digitais
Joao B. Florindo
Instituto de Matematica, Estatıstica e Computacao CientıficaUniversidade Estadual de Campinas - Brasil
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 1 / 44
Imagens
Outline
1 Imagens
2 Tipos de Imagens
3 Aplicacoes
4 Sistema de Visao Artificial
5 Imagens Digitais
6 Operacoes Basicas
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 2 / 44
Imagens
Imagens
Imagens sao usadas como um poderoso meio de expressao desde osprimordios da civilizacao1
1Varias das imagens aqui expostas foram retiradas do curso disponıvel emhttp://iris.sel.eesc.usp.br/sel886
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 3 / 44
Imagens
Imagens
Uma imagem vale mais que mil palavras!
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 4 / 44
Tipos de Imagens
Outline
1 Imagens
2 Tipos de Imagens
3 Aplicacoes
4 Sistema de Visao Artificial
5 Imagens Digitais
6 Operacoes Basicas
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 5 / 44
Tipos de Imagens
Tipos de Imagens
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 6 / 44
Tipos de Imagens
Tipos de Imagens
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 7 / 44
Tipos de Imagens
Tipos de Imagens
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 8 / 44
Tipos de Imagens
Tipos de Imagens
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 9 / 44
Aplicacoes
Outline
1 Imagens
2 Tipos de Imagens
3 Aplicacoes
4 Sistema de Visao Artificial
5 Imagens Digitais
6 Operacoes Basicas
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 10 / 44
Aplicacoes
Aplicacoes
Inspecao de pecas Robos
Resistencia de materiais (microscopia eletronica)
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 11 / 44
Aplicacoes
Aplicacoes
Reconhecimento facial Impressao digital
Reconhecimento de assinaturasJoao B. Florindo Topico 0 - Introducao a Imagens Digitais 12 / 44
Aplicacoes
Aplicacoes
Identificacao por ıris Cameras de vigilancia (movimentos)
Marca-d’agua (protecao de copyright)Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 13 / 44
Aplicacoes
Aplicacoes
Contagem de celulas (exames) Micro-calcificacao na mama
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 14 / 44
Sistema de Visao Artificial
Outline
1 Imagens
2 Tipos de Imagens
3 Aplicacoes
4 Sistema de Visao Artificial
5 Imagens Digitais
6 Operacoes Basicas
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 15 / 44
Sistema de Visao Artificial
Sistema de Visao Artificial
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 16 / 44
Sistema de Visao Artificial
Sistema de Visao Artificial
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 17 / 44
Imagens Digitais
Outline
1 Imagens
2 Tipos de Imagens
3 Aplicacoes
4 Sistema de Visao Artificial
5 Imagens Digitais
6 Operacoes Basicas
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 18 / 44
Imagens Digitais
Imagens Digitais
Conceito de imagem digital surge na metade do seculo passado quandofotografias passam a ser escaneadas em computador (Exemplo abaixo de1957)
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 19 / 44
Imagens Digitais
Imagens Digitais
Uma imagem digital (em tons de cinza) e uma funcao
f (x , y)
em que (x , y) sao as coordenadas espaciais, discretas, inteiras e, porconvencao, positivas (nao-negativas).
Uma imagem colorida e uma funcao multi-valorada (ex. 3 canais RGB).
Cada ponto com coordenada (x , y) e chamado de pixel (Picture Element)
A magnitude de f (x , y) e chamada de nıvel de cinza ou intensidade decor do pixel. Sao valores, discretos, reais e nao-negativos.
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 20 / 44
Imagens Digitais
Imagens Digitais
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 21 / 44
Imagens Digitais
Imagens Digitais
Amostragem
Discretizacao das coordenadas espaciais.Ex.:
x = 1, 2, 3, . . . , 256 y = 1, 2, 3, . . . , 256
Diz-se que esta imagem tem tamanho (ou resolucao) 256× 256.
Quantizacao
Discretizacao da magnitude de f (x , y).Ex.: Supor que f (x , y) pode assumir os seguintes valores inteiros:
0, 1, 2, . . . , 255
Diz-se que esta imagem tem 256 nıveis de cinza (ou de cor).
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 22 / 44
Imagens Digitais
Imagens Digitais
Convencao de eixos utilizada em (a) Processamento de Imagens e (b)Computacao Grafica
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 23 / 44
Imagens Digitais
Imagens Digitais
A esquerda, convencao usada em C, Java, etc. A direita, convencao usadaem Matlab/Octave/Scilab
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 24 / 44
Imagens Digitais
Resolucao Espacial
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 25 / 44
Imagens Digitais
Resolucao em Nıveis de Cinza
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 26 / 44
Imagens Digitais
Resolucao em Nıveis de Cinza
Resolucao em nıveis de cinza esta relacionada ao numero de valoresdistintos que podem ser atribuıdos a cada pixel.
Usualmente se refere ao numero de bits necessarios para expressar osnıveis de cinza. Ex.: Imagem 8 bits - Nıveis 0, 1, 2, . . . , 255.
Tambem chamado de profundidade de cinza (ou de cor).
Imagens que possuem apenas dois nıveis de cinza (preto e branco) saochamadas de imagens binarias.
Imagens com maior resolucao e/ou profundidade exigem mais recursoscomputacionais para processamento.
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 27 / 44
Imagens Digitais
Adjacencia e Vizinhanca
Dois pixels que compartilham uma borda sao ditos adjacentes por bordaou 4-adjacentes.
Dois pixels que compartilham um vertice sao ditos adjacentes porvertice ou 8-adjacentes.
A vizinhanca de 4 de um pixel p com coordenadas (x , y) e o subconjuntode pixels 4-adjacentes mais o proprio p.
A vizinhanca de 8 de um pixel p com coordenadas (x , y) e o subconjuntode pixels 8-adjacentes mais o proprio p.
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 28 / 44
Imagens Digitais
Adjacencia e Vizinhanca
A esquerda, vizinhanca de 4, a direita, vizinhanca de 8
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 29 / 44
Imagens Digitais
Conectividade
Dois pixels sao conectados se
1 Sao adjacentes
2 Possuem nıveis de cinza similares sob algum criterio ou dentro de umconjunto particular, p.ex., {1, 2} abaixo.
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 30 / 44
Imagens Digitais
Metricas de Distancia
Dados dois pixels p com coordenadas (x1, y1) e q com coordenadas(x2, y2), temos aDistancia Euclideana:
De(p, q) =√
(x1 − x2)2 + (y1 − y2)2
Distancia City-Block (D4):
Dcb(p, q) = |x1 − x2|+ |y1 − y2|
Distancia Chessboard (D8):
Dch(p, q) = max{|x1 − x2|, |y1 − y2|}.
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 31 / 44
Imagens Digitais
Codigo
1 img = imread ( ’ l e n a . png ’ ) ;s i z e ( img )
3 img ( 1 : 5 , 1 : 5 )imshow ( img )
src/cap0/ex1.m
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 32 / 44
Operacoes Basicas
Outline
1 Imagens
2 Tipos de Imagens
3 Aplicacoes
4 Sistema de Visao Artificial
5 Imagens Digitais
6 Operacoes Basicas
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 33 / 44
Operacoes Basicas
Operacoes Basicas - Histogramas
Histogramas contam o numero de pixels com determinado nıvel de cinzana imagem.
Operacao fundamental na melhora do contraste e a equalizacao dehistograma.
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 34 / 44
Operacoes Basicas
Operacoes Basicas - Histogramas
Caso mais drastico:
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 35 / 44
Operacoes Basicas
Histogramas - Codigo
img = imread ( ’ l e n a . png ’ ) ;2 img = r g b 2 g r a y ( img ) ;
f i g u r e ; imshow ( img ) ;4 f i g u r e ; i m h i s t ( img ) ;
img = h i s t e q ( img ) ;6 f i g u r e ; imshow ( img ) ;
f i g u r e ; i m h i s t ( img ) ;
src/cap0/ex2.m
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 36 / 44
Operacoes Basicas
Operacoes Basicas - Binarizacao
Outra tecnica muito util, sobretudo em segmentacao e a binarizacao(thresholding): todos os pixels com intensidade menor que o limiarsetados para zero e os demais para um (ou qualquer outro valor definidocomo nıvel de cinza maximo).
Varias tecnicas para determinar limiar ideal. Matlab usa Otsu por padrao.
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 37 / 44
Operacoes Basicas
Operacoes Basicas - Histogramas
Exemplo de aplicacao:
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 38 / 44
Operacoes Basicas
Binarizacao - Codigo
1 img = imread ( ’ cameraman . png ’ ) ;t = g r a y t h r e s h ( img ) ;
3 img = im2bw ( img , t ) ;f i g u r e ; imshow ( img ) ;
src/cap0/ex3.m
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 39 / 44
Operacoes Basicas
Operacoes Basicas - Templates
Templates sao janelas que varrem a imagem fazendo uma operacao local(de vizinhanca) em cada pixel.
Cada elemento do template e multiplicado pelo pixel correspondente e asoma armazenada no pixel central.
Supondo uma janela w com 3× 3 pixels, a transformacao no pixel f (x , y)(posicao e abaixo) da imagem e feita como a seguir:
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 40 / 44
Operacoes Basicas
Operacoes Basicas - Templates
de modo que o pixel g(x , y) na imagem transformada sera dado por
g(x , y) = w1 ·a+w2 ·b+w3 ·c +w4 ·d +w5 ·e+w6 · f +w7 ·g +w8 ·h+w9 · i
Esta operacao e chamada de convolucao discreta. Exemplo tıpico deaplicacao sao os filtros.
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 41 / 44
Operacoes Basicas
Operacoes Basicas - Filtros
Filtros passa-baixas borram imagens ou eliminam ruıdos.
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 42 / 44
Operacoes Basicas
Operacoes Basicas - Filtros
Ja filtros passa-altas realcam bordas.
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 43 / 44
Operacoes Basicas
Filtro - Codigo
img = imread ( ’ cameraman . png ’ ) ;2
mask1 = ( 1 / 9 ) ∗ [ 1 1 1 ; 1 1 1 ; 1 1 1 ]4 img = conv2 ( img , mask1 ) ;
f i g u r e ; imshow ( img/max ( img ( : ) ) ) ;6
mask2 = ( 1 / 9 ) ∗[−1 −1 −1;−1 8 −1;−1 −1 −1]8 img = conv2 ( img , mask2 ) ;
f i g u r e ; imshow ( img/max ( img ( : ) ) ) ;
src/cap0/ex4.m
Joao B. Florindo Topico 0 - Introducao a Imagens Digitais 44 / 44