SlideShare une entreprise Scribd logo
1  sur  334
Télécharger pour lire hors ligne
Introdução ao
Processamento Digital de
               Imagens

          Prof. Leonardo Vidal Batista
                 DI/PPGI/PPGEM
              leonardo@di.ufpb.br
             leovidal@terra.com.br
        http://www.di.ufpb.br/leonardo
Processamento Digital de
Imagens


 Modelagem matemática, análise, projeto
 e implementação (S&H) de sistemas
 voltados ao tratamento de informação
 pictórica, com fins estéticos, para torná-la
 mais adequada à interpretação ou
 aumentar eficiência de armazenamento e
 transmissão.
PDI e áreas correlatas
                      Dados
    Visão                             Computação
 Computacional                          Gráfica
                     Imagens



                  Processamento
                 Digital de Imagens
                    (sinais 2D)



                   Processamento
                  Digital de Sinais
PDI x Visão Computacional
Imagens digitais
TV digital
Câmeras digitais, celulares, scanners
DVDs
Sistemas de teleconferência
Transmissões via fax
Editoração eletrônica
Impressoras
Monitoramento da superfície terrestre e previsão
climática por imagens de satélites
Detecção de movimento
Imagens Digitais
Diagnóstico médico: ultrassonografia,
angiografia, tomografia, ressonância
magnética, contagem de células, etc
Identificação biométrica: reconhecimento de
face, íris ou impressões digitais
Ciências forenses
Realce e restauração de imagens por
computador
Instrumentação
Controle de qualidade
Granulometria de minérios
Outros Sinais Digitais
Diagnóstico médico: eletrocardiograma,
eletroencefalograma, eletromiograma,
eletroretinograma, polisonograma, etc
Identificação biométrica por reconhecimento
de voz
Síntese de voz
Áudio Digital
Telefonia
Suspensão ativa em automóveis
Mercado acionário
Sinais Contínuos e Discretos
                                 Sinal analógico

                                 Sinal digital
            ...
Amplitude




            2q
              q
              0
            -q
            -2q
            ...
 Erros
   de
quantização       0   Ta   2Ta   3Ta     ...
                                 Tempo, espaço etc.
Processamento Analógico
de Sinais



                   Processador
 Sinal analógico     analógico   Sinal analógico
 de entrada                      de saída
Processamento Digital de
    Sinais
       Sinal                                  Sinal
       analógico Conversor      Processador   digital
                   A/D            Digital


Sinal                                              Sinal
analógico Conversor     Processador      Conversor analógico
            A/D           Digital          D/A
Processamento Digital de
 Sinais
Alguns sinais são inerentemente digitais ou
puramente matemáticos
Ex: Número de gols por rodada do
campeonato brasileiro de futebol
Neste caso, não há necessidade de
Conversão A/D
Ainda assim, pode haver necessidade de
conversão D/A
Ex: texto -> voz sintetizada
Processamento Digital de
 Sinais
Hardware, software, ou ambos
Maior flexibilidade
Menor custo
Menor tempo de desenvolvimento
Maior facilidade de distribuição
Sinais digitais podem ser armazenados e
reproduzidos sem perda de qualidade
Mas alguns sistemas exigem uma etapa
analógica!
Processamento Digital de
Sinais – Robustez a Ruído
   Sinal analógico original




   Sinal analógico corrompido – em geral, recuperação
   impossível mesmo para pequenas distorções
Processamento Digital de
       Sinais – Robustez a Ruído
                                     Sinal digital corrompido – recuperação possível
      Sinal digital original         mesmo com distorções substanciais, principalmente
                                     com uso de códigos corretores.
‘1’                            ‘1’



‘0’                            ‘0’




      Sinal digital
      recuperado com erro
‘1’



‘0’
Eliminação de ruído
Detecção de Bordas
Aguçamento
Pseudo-cor
Pseudo-cor
Segmentação/Classificação
Combinação de Imagens
Metamorfose
Warping (Deformação)
Você confia em seu sistema
visual?
Você confia em seu sistema
visual?
Você confia em seu sistema
visual?
Você confia em seu sistema
visual?




                     http://www.echalk.co.uk/
                     amusements/OpticalIllusi
                     ons/illusions.htm
Você confia em seu sistema
visual?
Você confia em seu sistema
visual?
Você confia em seu sistema
visual?
Você confia em seu sistema
visual?
Você confia em seu sistema
visual?
Você confia em seu sistema
visual?
Você confia em seu sistema
visual?
Você confia em seu sistema
visual?
Você confia em seu sistema
visual?
A Faixa Visível do Espectro
Eletromagnético
Luz: radiação eletromagnética
Freqüência f, comprimento de onda
L
Faixa visível do espectro
eletromagnético: 380 nm < L < 780
nm
Na faixa visível, o sistema visual
humano (SVH) percebe
comprimentos de onda diferentes
como cores diferentes
A Faixa Visível do Espectro
Eletromagnético

Radiação monocromática: radiação
em um único comprimento de onda
Cor espectral pura: radiação
monocromática na faixa visível
A Faixa Visível do Espectro
Eletromagnético
A Faixa Visível do Espectro
   Eletromagnético

Denominação Usual da Cor   Faixa do Espectro (nm)
        Violeta                  380 – 440
          Azul                   440 – 490
         Verde                   490 – 565
        Amarelo                  565 – 590
        Laranja                  590 – 630
       Vermelho                  630 – 780
A Estrutura do Olho Humano
Olho humano: aproximadamente esférico,
diâmetro médio em torno de dois
centímetros
A luz penetra no olho passando pela
pupila e pelo cristalino e atingindo a
retina
Imagem invertida do cenário externo
sobre a retina
Cones e bastonetes convertem energia
luminosa em impulsos elétricos que são
transmitidos ao cérebro.
A Estrutura do Olho Humano
Bastonetes
75 a 150 milhões/olho, sobre toda a
retina
Não são sensíveis às cores
Baixa resolução (conectados em grupos
aos terminais nervosos)
Sensíveis à radiação de baixa intensidade
na faixa visível
Visão geral e de baixa luminosidade
Objetos acinzentados sob baixa
luminosidade
Cones
6 a 7 milhões/olho, concentrados na fóvea
Sensíveis às cores
Alta resolução (um cone por terminal
nervoso)
Pouco sensíveis a radiação de baixa
intensidade na faixa visível
Visão específica, de alta luminosidade
Movimentamos os olhos para que a
imagem do objeto de interesse recaia
sobre a fóvea.
Cones
Há três tipos de cones:
  Cone sensível ao vermelho
  Cone sensível ao verde
  Cone sensível ao azul
Cores diversas obtidas por combinações
destas cores primárias
Cones
                                 Cone “Verde”
Resposta




           Cone “Azul”                       Cone “Vermelho”




            400          500        600          700

                          Comprimento de onda (nm)
Sistema de Cores RGB
A cor de uma fonte de radiação na
faixa visível é definida pela adição
das cores espectrais emitidas –
sistema aditivo
Combinação de radiações
monocromáticas vermelho (R), verde
(G) e azul (B)
Cores primárias da luz
Sistema de cores RGB
Sistema RGB

Padronização da Comissão
Internacional de Iluminação (CIE):
  Azul: 435,8 nm
  Verde: 546,1 nm
  Vermelho: 700 nm
Sistema RGB - Combinação de
Cores Primárias

Cores secundárias da luz: magenta
(M), cíano (C) e amarelo (Y):
  M=R+B
  C=B+G
  Y=G+R
Cor branca (W):
  W=R+G+B
Espaço de Cores RGB

Cor no sistema RGB é um vetor em
um espaço tridimensional:
             G




                    R

       B
Espaço de Cores RGB
Reta (i, i, i): reta acromática
Pontos na reta acromática:
tonalidades de cinza ou níveis de
cinza
Preto: (0, 0, 0) (ausência de luz)
Branco: (M, M, M), (M é a intensidade
máxima de uma componente de cor)
Monitor de vídeo: Sistema RGB
Sistema de Cores CMY

Cor de um objeto que não emite
radiação própria depende dos
pigmentos que absorvem radiação
em determinadas faixas de
freqüência e refletem outras
Absorção em proporções variáveis
das componentes R, G e B da
radiação incidente: sistema
subtrativo
CMY - Cores Primárias

Cores primárias dos pigmentos:
absorvem uma cor primária da luz e
refletem as outras duas
  C=W–R=G+B
  M=W–G=R+B
  Y=W–B=G+R
CMY – Combinação de Cores
Primárias
Cores secundárias:
  R=M+Y
  G=C+Y
  B=M+C
Preto (K):
  K=C+M+Y=W–R–G–B
Impressoras coloridas: CMY ou CMYK
Processos Aditivo e Subtrativo
Sistema de Cores YIQ

Transmissão de TV em cores:
compatibilidade com TV P & B
Y: luminância (intensidade percebida,
ou brilho)
I e Q: crominâncias
Conversão YIQ-RGB
Conversão de RGB para YIQ:
 Y = 0.299R + 0.587G + 0.114B
 I = 0.596R – 0.274G –0.322B
 Q = 0.211R – 0.523G + 0.312B
Conversão de YIQ para RGB :
 R = 1.000 Y + 0.956 I + 0.621 Q
 G = 1.000 Y – 0.272 I – 0.647 Q
 B = 1.000 Y – 1.106 I + 1.703 Q
Sistema de Cores HSI
Fisiologicamente, a retina humana
opera no sistema RGB
A percepção subjetiva de cor é
diferente
Atributos perceptivos das cores:
  Matiz (hue) ou tonalidade
  Saturação
  Intensidade
Sistema de Cores HSI
Matiz (H): determinada pelo comprimento
de onda dominante; cor espectral mais
próxima; denominação usual das cores
H é um ângulo: 0o = R; 120o = G; 240o =
B
Saturação: pureza da cor quanto à adição
de branco
S = 0: cor insaturada (nível de cinza)
S = 1: cor completamente saturada
Cores espectrais puras tem S = 1
Sistema de Cores HSI
Conversão HSI-RGB
Algoritmos nas Notas de Aula
Imagem monocromática
            y




x
Imagem monocromática
Função Ia(x,y)
(x, y): coordenadas espaciais
Ia(x,y): intensidade ou brilho da
imagem em (x,y)
Amostragem e Quantização
Digitalização: discretização espacial
(amostragem) e de intensidade
(quantização)
Amostragem e Quantização
                             Sinal analógico
                             Sinal digital
            ...
Amplitude




            2q
               q
               0
             -q
            -2q
            ...
 Erros
   de
quantização 0      T   2T    3T    ...
                            Tempo ou espaço
Amostragem e Quantização
- Parâmetros
T: período de amostragem (unidade de
espaço ou tempo)
f = 1/T: freqüência de amostragem
(amostras/unidade de espaço ou tempo)
q: passo de quantização
Sinal analógico: s(t), s(x)
Sinal digitalizado: s[nT], n inteiro não
negativo, s[nT] ∈{-Mq, ..., -2q, -q, 0, q,
2q, ..., Mq,}
Amostragem e Quantização
   – Exemplo 1
        Sinal analógico s(t): voltagem de
        saída de um sistema elétrico em
        função do tempo
        40

        20
                   Sinal analógico
Volts




         0

        -20

        -40
           0   1       2     3       4   5   6   7
                            segundos
Amostragem e Quantização
– Exemplo 1
T = 0.5s, q = 0.5V, M = 80: s[0.5.n], n =
0, 1, 2, ...
s[0.5n] ∈ {-40, -39.5..., -0.5, 0, 0.5
1,...,39.5, 40}
s[0]=9.5,s[0.5]=8,s[1]=-2, s[1.5]= -10.5,
...
Sinal digital pode ser representado como
s[n] ∈ {-M,..., -2, -1, 0, 1, 2,..., M}
s[0]=19, s[1]=16, s[2]=-4, s[3]=-21,...
s[n] = {19, 16, -4, -20, ...}
Amostragem e Quantização
 – Exemplo 2
  Em um processo de digitalização foram colhidas
  N=10 amostras de um sinal de temperatura
  (graus Celsius) igualmente espaçadas ao longo de
  um segmento de reta unindo duas cidades A e B.
  A primeira amostra foi colhida na cidade A e a
  última na cidade B. O sinal digital resultante é
  s[n] = {12 12 13 13 14 13 14 14 14 15}
  Perguntas:
(a) Distância entre as cidades?
(b) Valores de temperatura registrados?
(c) Limites de temperatura registrável?
(d) Qual o valor de s[5km]?
Amostragem e Quantização
– Solução do Exemplo 2

Precisamos conhecer f, q e M!
Dados:
       f = 0.1 amostra/km
          q = 2o Celsius
             M = 15;
Amostragem e Quantização
– Solução do Exemplo 2

 T = 10 km/amostra
 (a) Distância entre as cidades =
            (10-1)x10 = 90km
 (b) Temperaturas em graus Celsius:
{24 24 26 26 28 26 28 28 28 30}
 (c) Limites de temperatura em graus
Celsius: [-30, 30]
 (d) s[5km]: no sinal digital s[nT] não há
nT = 5km!
Conversores Analógico-
Digitais (ADC)
Conversor Analógico/Digital (Analog to
Digital Converter - ADC): amostra,
quantiza em L níveis e codifica em binário.
Um transdutor deve converter o sinal de
entrada para tensão elétrica (V)
Códigos de b bits: L = 2b níveis de
quantização
Exemplo: b = 8, L = 256
ADC de b bits
Conversores Analógico-
Digitais (ADC)
ADC unipolar: voltagem de entrada de 0 a Vref
ADC bipolar: voltagem de entrada de -Vref a
Vref
Exemplo: ADC unipolar de 3 bits, Vref = 10 V
  L = 23 = 8, Resolução de voltagem: 10/8 = 1,25V
Exemplo: ADC bipolar de 3 bits, Vref = 5 V
  L = 23 = 8, Resolução de voltagem: 10/8 = 1,25V
ADC

       Unipolar                 Bipolar

 Voltagem      Código    Voltagem       Código

[0,00, 1,25)      000   [-5,0, -3,75)     000
[1,25, 2,50)      001   [-3,75, -2,5)     001
[2,50, 3,75)      010   [-2,5, -1,25)     010
[3,75, 5,00)      011   [-1,25, 0,0)      011
[5,00, 6,25)      100   [0,00, 1,25)      100
[6,25, 7,50)      101   [1,25, 2,50)      101
[7,50, 8,75)      110   [2,50, 3,75)      110
[8,75, 10,0)      111   [3,75, 5,00)      111
Conversores Analógico-
Digitais (ADC)

 O bit menos significativo (LSB) do código
 se altera em incrementos de 1,25V.
 Resolução de voltagem: “valor” do LSB
 Alguns parâmetros: fa, Vref, b, ...
Amostragem e Quantização
        – Qualidade do Sinal
                             40

                             20
                                           Sinal analógico
                     Volts



                              0

                             -20

                             -40
                               0       1       2        3       4      5         6       7
                                                       segundos

40                                                              40
       f = 2 amostras/s                                                        Sinal analógico
20     (T = 0,5s), q = 1                                        20              reconstruído

 0                                                               0

-20                                                             -20

-40                                                             -40
   0   1      2      3             4       5       6        7      0       1         2       3   4   5   6   7
Amostragem e Quantização
       – Qualidade do Sinal
                             40

                             20
                                           Sinal analógico
                     Volts



                              0

                             -20

                             -40
                               0       1       2        3       4       5         6       7
                                                       segundos

40                                                              40
       f = 5 amostras/s
                                                                                Sinal analógico
       (T = 0,2s), q = 1
20                                                              20               reconstruído

 0                                                                  0

-20                                                             -20

-40                                                             -40
   0   1      2       3            4       5       6        7      0        1         2       3   4   5   6   7
Amostragem e Quantização
       – Qualidade do Sinal
                            40

                            20
                                          Sinal analógico
                    Volts



                             0

                            -20

                            -40
                              0       1       2        3       4       5         6       7
                                                      segundos

40                                                             40
       f = 10 amostras/s                                                       Sinal analógico
20     (T = 0,1s), q = 1                                       20               reconstruído

 0                                                                 0

-20                                                            -20

-40                                                            -40
   0   1      2      3            4       5       6        7     0         1         2       3   4   5   6   7
Amostragem e Quantização
       – Qualidade do Sinal
                            40

                            20
                                          Sinal analógico
                    Volts



                             0

                            -20

                            -40
                              0       1       2        3       4       5         6       7
                                                      segundos

40                                                             40
       f = 10 amostras/s                                                       Sinal analógico
20     (T = 0,1s), q = 16                                      20               reconstruído

 0                                                                 0

-20                                                            -20

-40                                                            -40
   0   1      2      3            4       5       6        7      0        1         2       3   4   5   6   7
Imagem digital
  monocromática
                      250

                      200

                      150

                      100

                      50

                        0
                            0            100         200         300      400       500

                                                     i=0
                            250

                            200


⎡161 161 ... 142⎤           150

⎢161 161 ... 142⎥           100

⎢                 ⎥             50
⎢ ... ... ... ... ⎥
⎢                 ⎥
                                 0
                                     0   50    100   150   200    250   300   350

⎣163 163 ... 95 ⎦                                    j = 266
Resolução Espacial e de
       Contraste




256x256 / 256 níveis   256x256 / 64 níveis       256x256 / 2 níveis




                                             32x32 / 256 níveis
Imagens RGB




Banda R   Banda G      Banda B




          Imagem RGB
Imagens Digitais
 Uma imagem é uma matriz bidimensional
 observada de forma pictórica.
 Imagens de densidade demográfica, de
 raios x, de infravermelho, de
 temperaturas de uma área, etc.
Scanners

Monocromáticos: fila de diodos
fotossensíveis em um suporte que se
desloca
Coloridos: fila de diodos fotossensíveis,
recobertos por filtros R, G e B, em um
suporte que se desloca

Lâmpada fluorescente branca
ilumina o objeto
Diodos produzem carga elétrica
proporcional à intensidade da
luz refletida pelo objeto
Scanners
Scanners

Th: distância entre diodos no suporte
Tv: tamanho do passo do suporte
Th e Tv definem a resolução espacial
L: profundidade de cor ou resolução de
contraste
Resolução espacial: pontos por polegada
(dot per inch, dpi) (1 ponto = 1 sensor em
scanner monocromático, 3 sensores em
scanners RGB)
1 pol = 2,54 cm.
Scanners

Ex: 300 x 300 dpi, digitalização de formato
carta(8,5 x 11’’), no máximo:
   8,5x300=2550 diodos (mono) ou
   3x2550=7650 diodos (cor)
Aumentar resolução vertical sem aumentar
o número de sensores
Scanners


    N pontos/polegada

                              Movimento do braço:
                        ...   M passos/polegada
Câmeras Digitais
Câmeras Digitais
Sensor de imagem:
matriz de diodos
fotosensíveis cobertos
por filtros R, G e B
Diodos produzem carga
elétrica proporcional à
intensidade da luz
refletida pelo objeto
 Resolução espacial de câmeras: número de
 pontos (ou pixels), RxC (1 ponto = 3 sensores)
Câmeras Digitais

Exemplo: Sony DSC V1: 1944 x 2592 pixels =
5Mpixels. Digitalizar papel em formato carta com
imagem da folha ocupando todo o sensor.
Resolução (em dpi)? Comparar com scanner de
300 x 300 dpi, em qualidade, número de
sensores e preço. Comparar com scanner de
2400 x 2400 dpi.
Câmeras Digitais
Solução:
1944 / 8,5 pol x 2592/11 pol = 228,7 dpi x =
235,6 dpi
Resolução espacial pior que scanner de 300 x
300 dpi, com 1944 x 2592 x 3 / 7650 = 1976
vezes mais sensores, 10 a 20 vezes mais caro,
aberrações geométricas e de cor, etc.
Câmeras digitais têm escopo de aplicação
maior e são mais rápidas
Scanner de 2400 x 2400 dpi = câmera de 500
Mpixels!
Dispositivos Gráficos
Exemplo: câmera digital, 3000 x 2000
pontos (6 Mpixels), impressa em formato
15x10 cm, com o mesmo no. de pontos.
Qual a resolução (dpi) no papel?
Dispositivos Gráficos

Exemplo: câmera digital, 3000 x 2000
pontos (6 Mpixels). Imprimir em formato
15x10 cm, com o mesmo no. de pontos.
Qual a resolução (dpi) no papel?
3,94 x 5,91 pol.
Resolução (dpi): 3000/5,91 = 2000/3,94 =
507x507 dpi
Dispositivos Gráficos
Ex: foto 10x15cm, scanneada a 1200x1200
dpi, 24 bits/pixel. Tamanho em bytes?
Dimensões impressa em 1440x1440 dpi?
Dimensões impressa em 720 x 720 dpi?
Dimensões em tela de 14 pol., resolução
1024x768? Resolução em dpi da tela?
Dimensões em tela de 17 pol., resolução
1024x768? Resolução em dpi da tela?
Dispositivos Gráficos
Solução:
Foto 10x15cm = 3,94 x 5,91 pol.
Tamanho      em      bytes:  3,94x1200   x
5,91x1200 pixels x 3 bytes/pixel = 4728 x
7092 x 3 = 100 milhões de bytes (96 MB)
Dimensões      (pol)   em   impressora  de
1440x1440 dpi: 4728/1440 x 7092/1440 =
3,3 x 4,9 pol.
Dimensões (pol.) em impressora de 720 x
720 dpi = 6,6 x 9,9 pol
Dispositivos Gráficos
Solução:
Dimensões em tela de 14 pol., em resolução de
1024x768 pontos? Resolução em dpi da tela?
                 x2 + y2 = 142
                   x/y = 3/4
           x = 8,4 pol; y = 11,2 pol.
Res. = 1024/11,2 x 768/8,4 = 91,4 x 91,4 dpi.
Dimensões = 4728 / 91,4 x 7092 / 91,4 =51,73 x
77,59 pol = 131,39 x 197,09cm (apenas parte da
imagem será visível)
Dispositivos Gráficos

Solução:
Dimensões em tela de 17 pol., em resolução de
1024x768 pontos? Resolução em dpi da tela?
           y = 13,6 pol; x = 10,2 pol
Res. = 1024/13,6 x 768/10,2 = 75,3 x 75, 3 dpi
(pior que no monitor de 14 pol)
Dimensões = 4728 / 75,3,4 x 7092 / 75,3 =62,79
x 94,18 pol = 159,49 x 239,22cm (apenas parte da
imagem será visível)
Câmeras Digitais


               ...




         ...
Monitor CRT




A e C: Placas aceleradoras e defletoras
D: tela com pontos de fósforos RGB
F: Máscara de sombra ou grade de abertura
Monitor CRT
Monitor RGB
Monitor RGB

 Linha 0

 Linha 1




Linha R-1
Operações com Imagens
 Espaço / freqüência
 Locais / pontuais
 Unárias / binárias / ... / n-árias
Operações n-árias
Operação T sobre n imagens, f1, f2, ..., fn,
produzindo imagem de saída g
          g = T[f1, f2, ..., fn]

Operações binárias: n = 2
Operações unárias ou filtros: n = 1
               g = T[f]
Operações Pontuais
g(i, j) depende do valor do pixel em (i’, j’)
das imagens de entrada
Se (i, j) = (i’, j’) e operação unária:s = T(r)
    r, s: nível de cinza de f e g em (i, j)
s                        s




(0,0)    m       r       (0,0)    m        r
Operações Pontuais
 s                                   s
L-1                                 L-1
         (r2, s2)



               (r1, s1)

 (0,0)                    L-1   r
                                     (0,0)   L-1   r
Operações Locais
    g(i, j) depende dos valores dos pixels das
    imagens de entrada em uma vizinhança
    de (i’, j’)
                 f                   g

                             j           j




i                                i



      Vizinhança de (i, j)
Operações Locais
 Exemplo: Filtro “Média”
           1
g (i, j ) = [ f (i − 1, j − 1) + f (i − 1, j ) + f (i − 1, j + 1) +
           9
            + f (i, j − 1) + f (i, j ) + f (i, j + 1) +
            + f (i + 1, j − 1) + f (i + 1, j ) + f (i + 1, j + 1)]
 Operação sobre pixels da imagem
 original: resultado do filtro em um dado
 pixel não altera o resultado em outros
 pixels.
  Primeira e última coluna/linha?
Filtros de suavização

 Média, Moda, Mediana, Gaussiano...
 Vizinhança m x n
Photoshop!
Photoshop!
Photoshop!
Photoshop!
Filtros de aguçamento e
 detecção de bordas
Efeito contrário ao de suavização: acentuam
variações de intensidade entre pixels
adjacentes.
Baseados no gradiente de funções
bidimensionais.
Gradiente de f(x, y):
               ⎡ ∂f ⎤
               ⎢ ∂x ⎥                   ⎡ ∂f2        2 ⎤1 / 2
                                                ⎛ ∂f ⎞
G[f(x, y)] =   ⎢ ⎥                      ⎢⎛ ⎞ + ⎜ ⎟ ⎥
                        G[ f ( x, y )] = ⎜ ⎟    ⎜ ∂y ⎟
               ⎢ ⎥                      ⎢⎝ ∂x ⎠ ⎝ ⎠ ⎥
               ⎢ ∂f ⎥                   ⎣              ⎦
               ⎢ ⎥
               ⎣ ∂y ⎦
Filtros de detecção de bordas
  g(i, j): aproximação discreta do módulo do
  vetor gradiente em f(i, j).
  Aproximações usuais:

g(i, j) = {[f(i,j)-f(i+1,j)]2 + [f(i,j)-f(i,j+1)]2}1/2
g(i, j) = |f(i,j)-f(i+1,j)| + |f(i,j)-f(i,j+1)|

              Gradiente de Roberts:
g(i,j) = {[f(i,j)-f(i+1,j+1)]2+[f(i+1,j)-f(i,j+1)]2}1/2
g(i, j) = |f(i,j)-f(i+1,j+1)| + |f(i+1,j)-f(i,j+1)|
Filtros de detecção de bordas
               Gradiente de Prewitt:
 g(i, j) = |f(i+1,j-1) + f(i+1, j) + f(i+1, j+1)
             - f(i-1, j-1) - f(i-1, j) - f(i-1, j+1)|
          +|f(i-1, j+1) + f(i, j+1) + f(i+1, j+1)
             - f(i-1, j-1) - f(i, j-1) - f(i+1, j-1)|
                Gradiente de Sobel:
g(i, j) = |f(i+1, j-1) + 2f(i+1, j) + f(i+1, j+1)
            - f(i-1, j-1) - 2f(i-1, j) - f(i-1, j+1)|
          + |f(i-1, j+1) + f(i, j+1) + f(i+1, j+1)
            - f(i-1, j-1) - 2f(i, j-1) - f(i+1, j-1)|
Gradiente de Roberts




      Limiares 15, 30 e 60
Processamento de
Histograma
Se o nível de cinza l ocorre nl vezes em
imagem com n pixels, então
                         nl
                P (l ) =
                         n

Histograma    da     imagem       é   uma
representação gráfica de nl ou P(l)
Histograma
                                           Histograma
                              nl

        Imagem            7
                          6
1   0   0   3    3        5
                          4
0   0   3   3    3
                          3
1   1   1   3    3        2
                          1
                          0
                                   0   1     2     3    l
    Imagem 3 x 5 (L = 4) e seu histograma
Histograma
         O histograma representa a distribuição
         estatística de níveis de cinza de uma imagem
nl                        nl                 nl




     0          255   l        0   255   l        0   255   l
Histograma




   10000

    8000

    6000

    4000

    2000

       0
           0   50   100   150   200   250
Histograma




   1500



   1000



    500



      0

          0   50   100   150   200   250
Expansão de Histograma
            Quando uma faixa reduzida de níveis de
            cinza é utilizada, a expansão de
            histograma pode produzir uma imagem
            mais rica.
nl                         nl                       nl
             A                       B                   C




                       l                        l                      l
m0=0   m1        L-1        0   m0   m1   L-1        0   m0   m1=L-1
Expansão de Histograma
 Quando uma faixa reduzida de níveis de
 cinza é utilizada, a expansão de
 histograma pode produzir uma imagem
 mais rica:


                    ⎛ r − rmin            ⎞
s = T ( r ) = round ⎜
                    ⎜r           ( L − 1) ⎟
                                          ⎟
                    ⎝ max − rmin          ⎠
Expansão de Histograma
         1500



         1000



          500



            0

                0   50   100   150   200   250



         1500



         1000



          500



            0
                0   50   100   150   200   250
Expansão de Histograma
           Expansão é ineficaz nos seguintes casos:

nl         A           nl        B            nl   C




 0   L-1       L-1 l    0   m0   m1   L-1 l    0       L-1 l
Equalização de Histograma
 Se a imagem apresenta pixels de valor 0
 e L-1 (ou próximos a esses extremos) a
 expansão de histograma é ineficaz.
 Nestas situações a equalização de
 histograma pode produzir bons
 resultados.
 O objetivo da equalização de histograma
 é gerar uma imagem com uma
 distribuição de níveis de cinza uniforme.
Equalização de Histograma
                       ⎛ L −1 r ⎞
    s = T (r ) = round ⎜      ∑ nl ⎟
                       ⎝ RC l =0 ⎠
                   1500



                   1000



                    500



                      0

                          0   50   100   150   200   250




                   1500


                   1000


                    500


                      0
                          0   50   100   150   200   250
Equalização de Histograma
 Exemplo: imagem 64 x 64, L = 8
              nl
  l     nl
  0    790   1200
  1   1023   1000
  2    850    800
  3    656    600
  4    329
              400
  5    245
              200
  6    122     0
  7     81       0   1   2   3   4   5   6   7   l
Equalização de Histograma
 Exemplo (cont.):
 r=0   s = round(790 x 7 / 4096)    =1
 r=1   s = round(1813 x 7 / 4096)   =3
 r=2   s = round(2663 x 7 / 4096)   =5
 r=3   s = round(3319 x 7 / 4096)   =6
 r=4   s = round(3648 x 7 / 4096)   =6
 r=5   s = round(3893 x 7 / 4096)   =7
 r=6   s = round(4015 x 7 / 4096)   =7
 r=7   s = round(4096 x 7 / 4096)   =7
Equalização de Histograma
 Exemplo: imagem 64 x 64, L = 8
  l     nl     nk
  0     0
              1200
  1    790
              1000
  2     0
               800
  3   1023
               600
  4     0
               400
  5    850
               200
  6    985
                0
  7    448        0   1   2   3   4   5   6   7   k
Equalização de Histograma
nl         Hist. Original     nl    Hist. Equal. (Ideal)   nl   Hist. Equal. (Real)




 0   L-1              L-1 l    0   m0     m1      L-1 l     0                 L-1 l
Equalização de Histograma
 Expansão de histograma é pontual ou
 local? E equalização de histograma?
 O que ocorre quando uma imagem com
 um único nível passa pela operação de
 equalização de histograma?
 Melhor fazer equalização seguido por
 expansão de histograma, o inverso, ou a
 ordem não importa?
Equalização de Histograma
Local
 Para cada locação (i,j) de f

 •   Calcular histograma na vizinhança de
     (i,j)
 •   Calcular s = T(r) para equalização de
     histograma na vizinhança
 •   G(i,j) = s
Controle de contraste
     adaptativo


            ⎧                c
            ⎪μ (i, j ) +           [ f (i, j ) − μ (i, j )];σ (i, j ) ≠ 0
g (i, j ) = ⎨            σ (i, j )
            ⎪ f (i, j );σ (i, j ) = 0
            ⎩
Controle de contraste
adaptativo
Filtros baseados na função
gaussiana
Função gaussiana:


Derivada:


Derivada segunda:
Filtros baseados na função
gaussiana
Gaussiana, derivada e derivada
segunda
Filtros baseados na função
gaussiana

A máscara é construída pela
amostragem de G(x), G’(x) e G’’(x)
x = -5σ, ...-2, -1, 0, 1, 2..., 5σ
Filtros gaussianos
bidimensionais




      Com r = sqrt(x2 + y2)
Pseudo-cor
Nível de   R     G    B
 cinza
   0       15    20   30
   1       15    25   40
  ...
  L-1      200   0    0
Outros filtros:
 Curtose, máximo, mínimo etc.
 Filtros de suavização + filtros de
 aguçamento
 Laplaciano do Gaussiano (LoG)
 “Emboss”
 Aumento de saturação
 Correção de gama
 ...
Filtros Lineares e Invariantes
ao Deslocamento
  Filtro linear:
       T [af1 + bf2] = aT [f1] + bT [f2]
  para constantes arbitrárias a e b.
  Filtro invariante ao deslocamento:
  Se g[i, j] = T [f[i, j]]
  então g[i - a, j – b] = T [f[i - a, j – b]].
  Se i e j são coordenadas espaciais: filtros
  espacialmente invariantes.
Convolução
  Convolução de s(t) e h(t):


                             ∞
                         ∫
  g (t ) = s (t ) * h (t ) =    s(τ )h(t − τ )dτ
                             −∞
Convolução
                                                  ∞
                  g (t ) = s (t ) * h (t ) = ∫       s(τ )h(t   − τ )dτ
                                                  −∞                        h(τ )
s(t)




(0,0)                                                                                            τ
             t0                      t1       t                           0 t2          t3

                                                                           h (t − τ )
                          h ( −τ )




       -t3        -t2 0                   τ                                 -t3+t        -t2+t
                                                                                                     τ
Convolução
 Observe que g(t) = 0 para


         t ∉ [t0 + t2 , t1 + t3 ]
Convolução Discreta Linear
 Convolução linear entre s[n] e h[n]
                                  ∞
     g[n ] = s[n ] * h[n ] =     ∑ s[τ ]h[n − τ ]
                               τ = −∞
 Se s[n] e h[n] têm N0 e N1 amostras,
 respectivamente => extensão com zeros:
                                 N −1
       g[n ] = s[n ] * h[n ] =   ∑ s[τ ]h[n − τ ]
                                 τ =0

       com N = N0 + N1 – 1.
Convolução Discreta Linear
     6         s (τ )                                               6       h(τ )


     4                                                              4


     2                                                              2


          0        1        2    3           4   5        6 τ           0    1       2   3   4   5       τ

                                     6           h(−τ )         6       h( n − τ )


                                     4                          4

                                     2                          2


-5   -4       -3       -2       -1       0       1          τ                                                τ
                                                                                                     n
Convolução Discreta Linear
                         6           s (τ )


                         4


                         2


                             0       1        2       3   4   5   6 τ

                             6         h(−τ )


                             4
                                                                  g[0] = 3
                             2


-5   -4   -3   -2   -1           0    1           τ
Convolução Discreta Linear
                         6           s (τ )


                         4


                         2


                             0       1        2        3   4   5   6 τ

                             6         h(1 − τ )


                             4
                                                                   g[0] = 3
                             2

                                                                   g[1] = 8
-5   -4   -3   -2   -1           0    1            τ
Convolução Discreta Linear
6       s[n]                                                     6           h[n]

4                                                                4


2                                                                2



    0    1     2    3        4       5       6   n                   0       1      2    3   4   5   n


                   30       g[n] = s[n]* h[n]


                   20


                   10


                        0        1       2   3   4   5   6   7   8       9       10 11       n
Convolução Discreta Linear

      s[n]           Filtro              g[n]
                     h[n]

                                  ∞
      g[n ] = s[n ] * h[n ] =    ∑ s[τ ]h[n − τ ]
                                τ = −∞
Impulso Unitário
 Delta de Dirac ou             δ(t)
 impulso unitário      1
 contínuo
 Duração = 0
 Área = 1                  0          t


                               δ[n]
 Delta de Kronecker
 ou impulso unitário   1

 discreto
                           0          n
Sinais = somatório de
impulsos
  Delta de Kronecker                              Aδ[n-n0]

                                          A




                                              0        n0    n

s[n] = s[0]δ [n] + s[1]δ [n − 1] + .... + s[ N − 1]δ [n − ( N − 1)]

                           N −1
                  s[n] =   ∑ s[τ ]δ [n − τ ]
                           τ =0
Resposta ao impulso
Resposta de um filtro a s[n]:
             N −1                     N −1
   g[ n] =   ∑ s[τ ]h[n − τ ] = ∑ h[τ ]s[n − τ ]
             τ =0                     τ =0
Resposta de um filtro ao impulso
                 N −1                 N −1
      g[ n ] =   ∑δ [τ ]h[n − τ ] = ∑δ [n − τ ]h[τ ]
                 τ =0                 τ =0
                             N −1
                    h[n] =   ∑δ [n − τ ]h[τ ]
                             τ =0
Resposta ao impulso

h[n]:
  Resposta ao impulso
  Máscara convolucional
  Kernel do filtro
  Vetor de coeficientes do filtro
Filtros FIR

Finite Impulse Response
                N −1
       y[n] =   ∑ ak x[n − k ]
                k =0

           ak = h[k ]
Filtros IIR

Infinite Impulse Response
           N −1            M −1
  y[n] =   ∑ ak x[n − k ] − ∑ bk y[n − k ]
           k =0            k =1

Filtros recursivos
Filtros IIR (exemplo)

Encontre a resposta ao impulso do
seguinte sistema recursivo. Supor que o
sistema está originalmente relaxado (y[n]
= 0 para n < 0)

   y[n] = x[n] - x[n-1] – 0,5y[n-1]
Filtros IIR (exemplo)

Exemplo:
y[n] = x[n] - x[n-1] – 0,5y[n-1]
y[0] = delta[0]–delta[-1]–0,5y[-1] = 1
y[1] = delta[1]–delta[0]–0,5y[0] = -1,5
y[2] = delta[2]–delta[1]–0,5y[1] = 0,75
y[3]= delta[3]–delta[2]–0,5y[2] = -0,325
y[n] = -0,5y[n-1], n > 1
Filtros IIR (exemplo 2)

Exemplo: encontre a resposta ao impulso
do seguinte sistema recursivo. Supor que
o sistema está originalmente relaxado
(y[n] = 0 para n < 0)

     y[n] - y[n-1] = x[n] - x[n-4]
Filtros IIR (exemplo 2)
Exemplo (Solução)
y[n] = y[n-1] + x[n] - x[n-4]
y[0] = y[-1] + delta[0] - delta[-4] = 1
y[1] = y[0] + delta[1] - delta[-3] = 1
y[2] = y[1] + delta[2] - delta[-2] = 1
y[3] = y[2] + delta[3] - delta[-1] = 1
y[4] = y[3] + delta[4] - delta[0] = 0
y[5] = y[4] + delta[5] - delta[1] = 0
y[6] = y[7] = ... = 0
Convolução Discreta Circular
  Sinais s[n] e h[n] com N0 e N1 amostras,
  respectivamente => extensão com zeros:
            ⎧ s[n ], 0 ≤ n < N 0                ⎧h[n ], 0 ≤ n < N 1
 s e [n ] = ⎨                         he [n ] = ⎨
            ⎩0, N 0 ≤ n < N                     ⎩0, N 1 ≤ n < N
   Extensão periódica: considera-se que
   se[n] e he[n] são períodos de sp[n] e hp[n]
   Convolução circular:
                                           N −1
                 g p [n] = s[n] ⊗ h[n] =   ∑ s p [τ ]h p [n − τ ]
                                           τ =0
Convolução Circular x Linear

  Fazendo-se N = N0 + N1 – 1


          s[n ] ⊗ h[n ] = s[n ] * h[n ]
Convolução de Imagens
   f[i, j] (R0xC0) e h[i, j] (R1xC1): extensão
   por zeros
                                          R −1 C −1
      g[i, j ] = f [i, j ] * h[i, j ] =   ∑ ∑ f [α , β ]h[i − α , j − β ]
                                          α =0 β =0

                                       R −1 C −1
g p [i, j ] = f [i, j ] ⊗ h[i, j ] =   ∑ ∑ f p [α , β ]h p [i − α , j − β ]
                                       α =0 β =0
   Iguais se R=R0+R1–1 e C=C0+C1–1
Máscaras Convolucionais
1   1   1     1   0    -1    -1 -1 -1
0   0   0     1   0    -1    -1   8   -1
-1 -1 -1      1   0    -1    -1 -1 -1


1/9 1/9 1/9       0.025     0.1   0.025

1/9 1/9 1/9           0.1   0.5    0.1

1/9 1/9 1/9       0.025     0.1   0.025
Operador de Bordas de
Kirsch
 5   5   5     -3   5   5     -3 -3     5
-3   0   -3    -3   0   5     -3    0   5
-3 -3 -3       -3 -3 -3       -3 -3     5

-3 -3 -3       -3 -3 -3       ...
-3   0   5     -3   0   -3
-3   5   5     5    5   5
Filtragem sucessiva com cada máscara
Pixel de saída recebe o valor máximo
Máscaras Convolucionais
 Em geral:
 Máscaras de integração somam
 para 1
 Máscaras de diferenciação somam
 para 0
Transformada z
 Transformada z de x[n]:
                              ∞
      Z {x[n]} = X [ z ] =    ∑ x[n] z − n
                             n =−∞

 z: variável complexa
Propriedades da
Transformada z
 Linearidade: Se x[n] = ax1[n] + bx2[n],
 (a e b: constantes arbitrárias), então:

       X [ z ] = aX 1[ z ] + bX 2 [ z ]
Propriedades da
 Transformada z
    Deslocamento:
           Z{x[n+k]} = zkX[z], k inteiro
    Prova:                             ∞
                   Z {x[n + k ]} =    ∑ x[n + k ]z − n
                                     n = −∞
    Fazendo m = n+k:
                    ∞                             ∞
Z {x[n + k ]} =    ∑ x[m]z − ( n − k ) = z k      ∑ x[m]z − n = z k X [ z ]
                  m = −∞                       m = −∞
Propriedades da
Transformada z
 Convolução:
                          ∞
 y[n] = h[n] * x[n] =    ∑ h[k ]x[n − k ] <=> Y [ z ] = H [ z ] X [ z ]
                        k = −∞

 Se h[n] é a resposta ao impulso de
 um filtro, H[z] é a função de
 transferência do filtro
Propriedades da
Transformada z
  Convolução (Prova)
                  ∞     ⎡ ∞           ⎤ −n
Z {h[n] * x[n]} = ∑ ⎢ ∑ h[k ]x[n − k ]⎥ z
                 n = −∞ ⎢ k = −∞
                        ⎣             ⎥
                                      ⎦
                   ∞        ∞
             =    ∑        ∑ h[k ]x[n − k ]z − n
                 k = −∞ n = −∞
                   ∞                      ∞
                                   −k
             =    ∑       h[k ]z         ∑ x[n]z − n
                 k = −∞                 n = −∞

              = H [ z]X [ z]
Função de Transferência

 Equação de diferenças de um filtro
             N −1            M −1
    y[n] =   ∑ ak x[n − k ] − ∑ bk y[n − k ]
             k =0            k =1
   M −1               N −1
    ∑ bk y[n − k ] = ∑ ak x[n − k ]
    k =0              k =0
   b0 = 1
Função de Transferência
 Transformada Z da Equação de
 diferenças

        ⎧M −1
        ⎪               ⎫
                        ⎪     ⎧ N −1
                              ⎪                ⎫
                                               ⎪
      Z ⎨ ∑ bk y[n − k ]⎬ = Z ⎨ ∑ a k x[n − k ]⎬
        ⎪ k =0
        ⎩               ⎪
                        ⎭     ⎪k =0
                              ⎩                ⎪
                                               ⎭
      M −1                          N −1
      ∑ bk Z{ y[n − k ]} = ∑ ak Z{ x[n − k ]}
      k =0                           k =0
      M −1                        N −1
      ∑      bk z − k Y [ z ] =   ∑      ak z − k X [z ]
      k =0                        k =0
Função de Transferência
 Aplicando a transformada z em
 ambos os lados e simplificando:
                          N −1
                          ∑ ak z − k
              Y [ z]      k =0
     H [ z] =        =
              X [ z]        M −1
                         1+   ∑ bk z − k
                              k =1

 Pólos: raízes do denominador
 Zeros: raízes do numerador
 Pólos e zeros: estabilidade
Função de Transferência
BIBO: Bounded-input, bounded-
output
Sistemas BIBO-estáveis: sistemas
causais tais que:

             ∞
            ∑ | h[k ] | < ∞
            k =0
Estimação da Resposta em
Freqüência
Resposta em freq. a partir de H[z]
                   ∞
      H [ z] =    ∑ h[n]z − n
                 n = −∞
                       ∞
      H [ e jω ] =     ∑ h[n]e − jnω ,    0 ≤ ω ≤ 2π
                     n = −∞

Comparar com
                           N −1           j 2πun
               1                      −
      F [u ] =
               N
                           ∑ s[n ]e          N
                           n =0
Estimação da Resposta em
Freqüência
Exemplo: encontre a resposta em
freqüência do filtro y[n] = (x[n] + x[n-1])/2
utilizando a transformada Z
Y[z] = (X[z] + z-1X[z] )/2 = X[z](1+z-1)/2
H[z] = (1+z-1)/2
H[ejw] = (1+e-jw)/2 = e-jw/2 (ejw/2 + e-jw/2)/2 =
e-jw/2cos(w/2)
|H[ejw]| = cos(w/2), -pi< w < pi
Estimação da Resposta em
Freqüência
Exemplo: encontre a resposta em
freqüência do filtro y[n] = (x[n] - x[n-1])/2
utilizando a transformada Z
Y[z] = (X[z] - z-1X[z] )/2 = X[z](1-z-1)/2
H[z] = (1-z-1)/2
H[ejw] = (1-e-jw)/2 = e-jw/2 (ejw/2 - e-jw/2)/2 =
je-jw/2sen(w/2)
|H[ejw]| = |sen(w/2)|, -pi< w < pi
Correlação
Convolução:                ∞
   g[n ] = s[n ] * h[n ] = ∑ s[τ ]h[n − τ ]
                             τ = −∞
Correlação:
                              ∞
     g[n] = s[n] o h[n] =    ∑ s[τ ]h[τ − n]
                            τ = −∞

Quando um dos sinais é par,
correlação = convolução
Correlação
  Exemplo:
h[-1] = 3; h[0] = 7; h[1] = 5;
s[0..15] = {3, 2, 4, 1, 3, 8, 4, 0, 3, 8, 0,
  7, 7, 7, 1, 2}


  Extensão com zeros
Correlação
 Exemplo:
g[−1] = s[0]h[1] = 15
          1
g[0] =    ∑ s[τ ]h[τ ] = s[0]h[0] + s[1]h[1] = 31
         τ =0
          2
g[1] =   ∑ s[τ ]h[τ − 1] = s[0]h[−1] + s[1]h[0] + s[2]h[1] = 43
         τ =0
          3
g[2] =    ∑ s[τ ]h[τ − 2] = s[1]h[−1] + s[2]h[0] + s[3]h[1] = 39
         τ =1
...
Correlação
 Exemplo:
g[0..15] = 31, 43, 39, 34, 64, 85, 52, 27,
  61, 65, 59, 84, 105, 75, 38, 27
  Observe que g[5] é elevado, pois é
  obtido centrando h em s[5] e calculando
  a correlação entre (3, 7, 5) e (3, 8, 4)
  Mas g[12] é ainda maior, devido aos
  valores elevados de s[11..13]
Correlação Normalizada
 A correlação normalizada elimina a
 dependência dos valores absolutos
 dos sinais:
                                  ∞
                                 ∑ s[τ ]h[τ − n]
g[n] = s[n] • h[n] =            τ = −∞
                         ∞                 ∞
                        ∑ ( s[τ ]) 2      ∑ (h[τ − n]) 2
                       τ = −∞            τ = −∞
Correlação Normalizada
Resultado para o exemplo anterior:
g[0..15] = .??? .877 .934 .73 .81
.989 .64 .59 .78 .835 .61 .931 .95
.83 .57 .???
Valor máximo: g[5]
Detecção e estimação

Fonte:
http://www.dspguide.com/ch7/3.htm
Detecção e estimação
Gaivota, “filtro casado” (olho) e
imagem de correlação normalizada
(máximo no olho)




  Fonte: http://www.dca.fee.unicamp.br/dipcourse/html-dip/c6/s5/front-page.html
Estimação Espectral
  O cálculo direto do espectro         de
  amplitudes e fases não é fidedigno
 O espectro pode variar muito em
 diferentes seções de um mesmo sinal.

 Variância é um indicador de qualidade

 O problema pode ser causado por ruído,
 escassez de dados, comportamento não
 estacionário etc.
Periodograma
 O quadrado do módulo do espectro de
 amplitudes: densidade espectral de
 potência (PSD), ou espectro de potência

 Periodograma: dividir sinal em K seções
 adjacentes (com ou sem intersecção) de
 mesmo tamanho; obter PSD de cada
 seção; obter média das PSDs
 Variância se reduz por fator K1/2
 Resolução espectral diminui
Janelamento (windowing)
 Todo sinal discreto obtido a partir de um
 sinal    analógico    é   resultado     da
 multiplicação de um sinal discreto de
 duração infinita por um pulso, ou janela,
 retangular:

              ⎧1 0 ≤ n < N
         wn = ⎨
              ⎩0 caso contrário
Janelamento (windowing)
 A janela retangular pode gerar grandes
 descontinuidades na forma de onda
 original
Janelamento (windowing)
    Multiplicação no tempo equivale          a
    convolução na freqüência (Fourier)
    DFT da janela retangular: função sinc
    (sine cardinal, kernel de Dirichlet, função
    de amostragem):

           ⎧1      x=0
           ⎪
sinc( x) = ⎨ sen x
           ⎪ x     caso contrário
           ⎩
Janelamento (windowing)
 A convolução com um sinc introduz
 distorções no espectro
 Janelas mais “suaves” reduzem estas
 distorções, mas distorcem mais as
 amostras centrais-> Compromisso
 Dezenas dessas janelas tem sido
 avaliadas e utilizadas em diversas
 aplicações
Janela de Hamming
     ⎧               ⎛ 2πn ⎞
     ⎪0,54 − 0,46 cos⎜     ⎟   0≤n<N
wn = ⎨               ⎝ N −1⎠
     ⎪0 caso contrário
     ⎩
Janela de Hamming
  Seno multiplicado por janela retangular e
  de Hamming
Janela de Hamming
  DFT de seno multiplicado por janela
  retangular e de Hamming
Outras Janelas
  Blackman-Harris, Dolph-Chebyshev,
  Kaiser-Bessel (superiores?)
  Tukey, Poisson, Hanning etc
Dissolve Cruzado
 ht (i, j)= (1 - t) f(i, j) + t g(i, j)
 t é um escalar no intervalo [0, 1]
Dissolve Cruzado




  t = 0,3   t = 0,5   t = 0,7
Dissolve Cruzado Não-
Uniforme
 ht(i, j)= [1 - t(i, j)] f(i, j) + t(i, j) g(i, j)
 t é uma matriz com as mesmas
 dimensões de f e g cujos elementos
 assumem valores no intervalo [0, 1]
Dissolve Cruzado Não-
Uniforme




t(i,j)=(i+j)/(R+C-2)   t(i,j)=j/(C-1)   t(i,j)=i/(R-1)
Detecção de Movimento
          ⎧L − 1, se | f1 − f 2 |≥ Lt
        g=⎨
          ⎩0, caso contrario




   f1              f2               g
Redução de Ruído por Média
de Imagens
 f[i, j] imagem sem ruído
 nk(i, j) ruído de média m
 gk[i,j] = f[i,j] + nk(i,j)


                       M
                   1
       g [i, j ] =    ∑
                   M k =1
                          g k [i, j ]
Redução de Ruído por Média
de Imagens
                      M
                  1
      g [i, j ] =    ∑
                  M k =1
                        ( f [i, j ] + nk (i, j ))

                                 M
                               1
       g [i, j ] = f [i, j ] +   ∑
                               M k =1
                                     nk (i, j )


 Para M grande:

              g [i, j ] = f [i, j ] + m
Operações Topológicas

 Rígidas
   Translação
   Rebatimento
   Rotação
   Mudança de Escala
 Não rígidas (Warping)
Rotação
 Rotação em torno de (ic, jc)

 i ' = (i − ic ) cosθ − ( j − jc ) sen θ + ic
  j ' = (i − ic ) sen θ + ( j − jc ) cosθ + jc
Rotação e Rebatimento




Imagem original   Rebatimento pela   Rotação de 90
                       diagonal       graus em torno
                                       de (R/2,C/2)
Ampliação (Zoom in)
Por replicação de pixels

Original     Ampliação por fator 3

 10 10      10   10   10   10   10   10
 20 30      10   10   10   10   10   10
            10   10   10   10   10   10
            20   20   20   30   30   30
            20   20   20   30   30   30
            20   20   20   30   30   30
Ampliação (Zoom in)
   Por interpolação bilinear

   Original                  Ampliação por fator 3
    10 10                    10 10 10 10 10 10
    20 30

Interpolação nas linhas
Passos de níveis de cinza:
                             20 23 27 30 33 37
10 a 10: 0
20 a 30: (30-20)/3 = 3,3
Ampliação (Zoom in)
    Por interpolação bilinear

    Original                 Ampliação por fator 3
     10 10                   10   10   10   10   10   10
     20 30                   13   14   16   17   18   19
Interpolação nas colunas     17   19   21   23   25   28
Passos de níveis de cinza:
                             20   23   27   30   33   37
10 a 20: (20-10)/3 = 3,3
10 a 23: (23-10)/3 = 4,3     23   27   33   37   41   46
10 a 27: (27-10)/3 = 5,7     27   32   38   43   48   55
...
Ampliação (Zoom in)
 Exemplo: Ampliação por fator 10




Original      Replicação     Interpolação
Redução (Zoom out)
     Por eliminação de pixel
     Por Média
      Original                Redução por fator 3
10   10   10   10   10   10
                                    14 18
13   14   16   17   18   19
                                    28 41
17   19   21   23   25   28
20   23   27   30   33   37
23   27   33   37   41   46
27   32   38   43   48   55
Reconstrução de Imagens
Zoom por fatores não inteiros
Ex: F = 3,75432
Operações elásticas, etc.
Técnicas mais avançadas devem ser
utilizadas
Uma dessas técnicas é a reconstrução
de imagens
Reconstrução de imagens
 Dados f(i,j), f(i,j+1), f(i+1,j), f(i+1,j+1)
                        (i, j)     (i, y)       (i, j+1)
  Reconstrução:
Encontrar f(x,y),                      (x,y)
x em [i, i+1]
y em [j, j+1]


                       (i+1, j)   (i+1, y)     (i+1, j+1)
Reconstrução de imagens
por interpolação bilinear
f(i, y) = f(i, j)+(y–j)[f(i, j+1)-f(i, j)]
f(i+1,y)=f(i+1,j)+(y–j)[f(i+1,j+1)-f(i+1, j)]
f(x, y) = f(i, y) + (x – i) [f(i+1, y) - f(i, y)]
         (i, j)     (i, y)       (i, j+1)



                        (x,y)




        (i+1, j)   (i+1, y)     (i+1, j+1)
Reconstrução de imagens
 Ex: f(10.5, 15.2)=?

  f(10, 15) = 10; f(10, 16) = 20;
f(11,15) = 30; f(11, 16) = 30
Reconstrução de imagens
Solução:
x = 10.5; y = 15.2 => i = 10; j = 15
f(i, y) = f(i, j)+(y–j)[f(i, j+1)-f(i, j)]
f(10, 15.2)=f(10,15)+(15.2-15)*[f(10,16)-f(10,15)
   = 10 + 0.2*[20 – 10] = 12
f(i+1,y)=f(i+1,j)+(y–j)[f(i+1,j+1)-f(i+1, j)]
f(11, 15.2)=f(11,15)+(15.2-15)*[f(11,16)-f(11,15)
   =30 + 0.2*[30 – 30] = 30
f(x, y) = f(i, y) + (x–i) [f(i+1, y) - f(i, y)]
f(10.5, 15.2)=12+(10.5-10)*[30-12] =21
Zoom por reconstrução de
 imagens
Ex: Ampliação por fator 2.3
Passo para as coordenadas: 1/2.3 = 0.43
x = 0, 0.43, 0. 87, 1.30, 1.74, 2.17, 2.61, 3.04...
y = 0, 0.43, 0. 87, 1.30, 1.74, 2.17, 2.61, 3.04...
g(0,0) = f(0,0); g(0,1) = f(0, 0.43);
g(0,2) = f(0, 0.87); g(0,3) = f(0, 1.30);...

Ex: Redução por fator 2.3
x = 0, 2.3, 4.6, 6.9, 9.2, 11.5, 13.8...
y = 0, 2.3, 4.6, 6.9, 9.2, 11.5, 13.8...
g(0,0) = f(0,0); g(0,1) = f(0, 2.3);
g(0,2) = f(0, 4.6); g(0,3) = f(0,6.9);...
Operações Topológicas Não
Rígidas (warping)
 Warping = distorção
 Zoom por fator F(i, j)
 Rotação por ângulo teta(i,j)
 Translação com deslocamento d(i,j)
 Warping especificado pelo usuário
Warping baseado em
Campos
 Entretenimento
 Efeitos especiais
 Correção de distorções óticas
 Alinhamento de elementos da
 imagens (registro)
 Morphing
 Modelagem e visualização de
 deformações físicas
Warping baseado em
Campos
1.   Características importantes da
     imagem são marcados por
     segmentos de reta orientados
     (vetores de referência)
2.   Para cada vetor de referência, um
     vetor alvo é especificado, indicando
     a transformação que se pretende
     realizar
Warping baseado em
Campos
3.   Para cada par de vetores
     referência-alvo, encontra-se o
     ponto X’ para onde um ponto X da
     imagem deve migrar, de forma que
     as relações espaciais entre X’ e o
     vetor alvo sejam idênticas àquelas
     entre X e o vetor de referência
4.   Parâmetros para as relações
     espaciais : u e v
Warping baseado em
Campos
Warping baseado em
Campos
 u: representa o
 deslocamento
 normalizado de P
 até O no sentido
 do vetor PQ
 (Normalizado:
 dividido pelo
 módulo de PQ)
 v: distância de X à
 reta suporte de PQ
Warping baseado em
Campos
 Se O=P, u = 0
 Se O=Q, u = 1
 Se O entre P e
 Q, 0<u<1;
 Se O após Q,
 u>1
 Se O antes de
 P, u<0
Warping baseado em
Campos
 Encontrar u e v: norma, produto interno,
 vetores perpendiculares, projeção de um
 vetor sobre outro.
 Vetores a = (x1, y1) e b = (x2, y2)
 Norma de a:

            || a || =   x12 + y12

 Produto interno:
             a.b = x1x2 +y1y2
Warping baseado em
Campos
 Norma da projeção de
 a sobre b:
                    a
           a.b
|| c || =
          || b ||
                            b

                        c
Warping baseado em
Campos
 Vetores b = (x2, y2) perpendicular a a
 = (x1, y1) e de norma igual à de a:
            b     a




 Perpendicularidade: x1x2 +y1y2 = 0
 Mesma norma: x22 + y22 = x12 + y12
Warping baseado em
Campos
 Soluções:
    x2 = y1, y2 = -x1
    x2 = -y1, y2 = x1

               b        a



                        b’
Warping baseado em
Campos
 Parâmetro u:
 norma da projeção
 de PX sobre PQ,
 dividido pela norma
 de PQ


    PX . PQ
 u=          2
    || PQ ||
Warping baseado em
Campos
  P = (xp,yp), Q =
  (xq, yq), X = (x,y)

       PX .PQ
    u=          2
       || PQ ||

u = (x - xp).(xq - xp) + (y -yp)(yq – yp)
            (xq-xp)2 + (yq-yp)2
Warping baseado em
Campos
Parâmetro v:
distância de X à
reta suporte de PQ

    PX . ⊥ PQ
 v=
     || PQ ||
 ⊥v: vetor
 perpendicular a v e
 de mesma norma
 que este.
Warping baseado em
Campos
PQ = (Xq-Xp, Yq-Yp)
⊥PQ1 = (Yq–Yp, Xp-Xq)
⊥PQ2 = (Yp–Yq, Xq-Xp)
Vamos usar ⊥PQ1
Warping baseado em
Campos
 Parâmetro v:


     PX . ⊥ PQ
  v=
      || PQ ||


v = (x-xp)(yq-yp) + (y-yp)(xp–xq)
        [(xq-xp)2 + (yq-yp)2]
Warping baseado em
Campos
Cálculo de X’:




                         v. ⊥ P' Q'
    X ' = P '+u.P ' Q '+
                          || P ' Q ' ||
Warping baseado em
Campos

              PX . PQ
           u=
              || PQ || 2

            PX . ⊥ PQ
         v=
             || PQ ||

                         v. ⊥ P' Q'
    X ' = P '+u.P ' Q '+
                          || P ' Q ' ||
Warping baseado em
Campos
Quando há mais de um par de vetores
referência-alvo, cada pixel sofre a
influência de todos os pares de vetores
Será encontrado um ponto Xi’ diferente
para cada par de vetores referência-alvo.
Os diferentes pontos para os quais o
ponto X da imagem original seria levado
por cada par de vetores referência-alvo
são combinados por intermédio de uma
média ponderada, produzindo o ponto X’
para onde X será efetivamente levado.
Warping baseado em
Campos
Warping baseado em
Campos
Peso da coordenada definida pelo i-ésimo
par de vetores de referência-alvo:




di: Distância entre X e o segmento PiQi
li: ||Pi Qi||
a, b e p : Parâmetros não negativos
Warping baseado em
Campos
Relação inversa com a distância entre a
reta e o ponto X
Parâmetro a : Aderência ao segmento
  a = 0 (Peso infinito ou aderência máxima)
Warping baseado em
Campos
Parâmetro p controla a importância do
tamanho do segmento
p = 0: independe do tamanho do
segmento
Warping baseado em
Campos
Parâmetro b controla a forma como a
influência decresce em função da
distância
b = 0: peso independe da distância
Warping baseado em
Campos
Bons resultados são obtidos com:
a entre 0 e 1
b=2
p = 0 ou p = 1.
Morphing
Interpolação de formas e cores
entre duas imagens distintas
(f0 e fN-1)
Encontrar imagens f1, f2, ..., fN-2:
transição gradual de f0 a fN-1
Efeitos especiais na publicidade e na
indústria cinematográfica; realidade
virtual; compressão de vídeo; etc.
Morphing
Morphing
            Warping de f0


                  cki

      f0                     fN-1


 ai                                 bi
                 “+”
           Warping de fN-1


                  cki
Morphing
  ai   c1i
             c2i
                   c3i
                         c4i
                               c5i
                                     c6i   c7i
                                                 c8i
                                                       c9i
                                                             bi
Morphing
Técnicas no Domínio da
 Freqüência
Conversão ao domínio da freqüência:
transformadas
Processamento e análise no domínio da
freqüência
Fourier, Cosseno Discreta, Wavelets,
etc.
Cosseno Analógico
f: freqüência         x (t ) = A cos[2πft + θ ]
T=1/f: período    A


θ : fase
A: amplitude
Gráfico para
fase nula e A>0



                                              T
Uma Família de Funções
  Cosseno Analógicas
xk (t ) = Ak cos[2πf k t + θ k ], k = 0, 1, ..., N − 1

fk: freqüência do k-ésimo cosseno
Tk =1/fk: período do k-ésimo
cosseno
θ k : fase do k-ésimo cosseno
Ak: amplitude do k-ésimo cosseno
Uma Família de Funções
Cosseno Discretas

x k [n ] = Ak cos[2πf k n + θ k ], n = 0,1,...,N − 1


   k = 0,1,...N-1
Uma Família de Funções
Cosseno Discretas
            1/ 2
     ⎛2⎞
Ak = ⎜ ⎟            ck X k
     ⎝N⎠
       ⎧(1/2)1/2
       ⎪             para k = 0
ck   =⎨
       ⎪1
       ⎩           para k = 1, 2, ... N - 1
         k            2N                kπ
fk   =           Tk =           θk =
       2N               k               2N

                 1/ 2
           ⎛2⎞                      ⎡ ( 2n + 1)kπ ⎤
x k [n ] = ⎜ ⎟          c k X k cos ⎢             ⎥, n = 0,1,...,N − 1
           ⎝N⎠                      ⎣     2N      ⎦
Uma Família de Funções
  Cosseno Discretas
                 1/ 2
           ⎛2⎞                      ⎡ ( 2n + 1)kπ ⎤
x k [n ] = ⎜ ⎟          c k X k cos ⎢             ⎥, n = 0,1,...,N − 1
           ⎝N⎠                      ⎣     2N      ⎦
                               1/ 2 1/ 2
     ⎧ f0 = 0             ⎛ 2 ⎞ ⎛1⎞
k =0⇒⎨        ⇒ x0 [n ] = ⎜ ⎟ ⎜ ⎟ X 0 , n = 0,1,...,N − 1
     ⎩θ 0 = 0             ⎝ N ⎠ ⎝2⎠

              1
k = 1 ⇒ f1 =    ⇒ T1 = 2 N (meio-período em N amostras)
             2N
                     N −1           2N
k = N − 1 ⇒ f N −1 =      ⇒ TN −1 =
                     2N             N −1
Uma Família de Funções
Cosseno Discretas
 xk[n] (N = 64, Xk = 10).
      2

      1

      0

     -1

     -2
          0   10   20   30   40   50   60   70



                      k=1
                    Meio-ciclo
Uma Família de Funções
Cosseno Discretas
            2

            1
 k=2
            0
1 ciclo     -1

            -2
                 0   10   20   30   40   50   60   70


            2

            1
  k=3
            0
1,5 ciclo   -1

            -2
                 0   10   20   30   40   50   60   70
Uma Família de Funções
   Cosseno Discretas
               2



  k=32
               1



 16 ciclos
               0


               -1


               -2
                    0   10   20   30   40   50   60   70


               2


               1

Para           0

visualização   -1


               -2
                    0   10   20   30   40   50   60   70
Uma Família de Funções
   Cosseno Discretas
               2


  k=63         1



31,5 ciclos    0


               -1


               -2
                    0   10   20   30   40   50   60   70


               2


               1
Para
               0

visualização   -1


               -2
                    0   10   20   30   40   50   60   70
Uma Família de Funções
Cosseno Discretas
Amostragem de um sinal periódico não
necessariamente produz um sinal de
mesmo período (ou mesmo periódico).
Somando Cossenos
  Discretos
    Criar um sinal x[n] somando-se os sinais
    xk[n], k = 0...N-1, amostra a amostra:
                           N −1
                 x[n ] =   ∑ x k [n ],   n =0,1,...,N − 1
                           k =0

              1 / 2 N −1
        ⎛2⎞                     ⎡ ( 2n + 1)kπ ⎤
x[n ] = ⎜ ⎟        ∑ c k X k cos⎢ 2 N ⎥, n = 0,1,...,N − 1
        ⎝N⎠       k =0          ⎣             ⎦
Somando Cossenos
        Discretos
        Exemplo:
        N = 8; X0 = 10; X1 = 5; X2 = 8,5; X3 = 2;
        X4 = 1; X5 = 1,5; X6 = 0; X7 = 0,1.

5
                                               1/ 2
                                        1⎛1⎞
4                             x 0 [n ] = ⎜ ⎟          10
                                        2⎝2⎠
3                            =3.5355
2
    0     2    4    6    8
Somando Cossenos
     Discretos
         X1 = 5
4                                   5   ⎡ ( 2n + 1)π ⎤
                           x1 [n ] = cos⎢
2
                                    2   ⎣     16 ⎥   ⎦
0
                           =2.4520; 2.0787; 1.3889;
-2
                            0.4877; -0.4877; -1.3889;
-4
 0        2    4   6   8
                            -2.0787; -2.4520
6


4
                           x0[n]+x1[n]
2


0
     0     2   4   6   8
Somando Cossenos
     Discretos
         X2 = 8,5
                                       8.5    ⎡ ( 2n + 1)2π ⎤
                            x 2 [n ] =
 4
                                           cos⎢             ⎥
 2                                      2     ⎣      16     ⎦
 0
                            = 3.9265; 1.6264; -1.6264;
-2
                              -3.9265; -3.9265; -1.626;
-4
     0     2   4    6   8
                              1.6264; 3.9265
10


 5
                            x0[n]+x1[n] +x2[n]
 0


-5
     0     2   4    6   8
Somando Cossenos
       Discretos
           X3 = 2
  1                                      2   ⎡ ( 2n + 1)3π ⎤
                               x 3 [n ] = cos⎢             ⎥
0.5                                      2   ⎣      16     ⎦
  0
                             = 0.8315; -0.1951; -0.9808;
-0.5
                               -0.5556; 0.5556; 0.9808;
 -1
       0     2   4   6   8
                               0.1951; -0.8315
15

10

  5                          x0[n]+x1[n]+x2[n]+x3[n]
  0

 -5
      0      2   4   6   8
Somando Cossenos
       Discretos
           X4 = 1
0.4
                                        1   ⎡ (2n + 1)4π ⎤
                              x 4 [n ] = cos⎢            ⎥
0.2
                                        2   ⎣     16     ⎦
  0
                             = 0.3536; -0.3536; -0.3536;
-0.2
                               0.3536; 0.3536; -0.3536;
-0.4
       0     2   4   6   8
                               -0.3536; 0.3536
15

10

  5                          x0[n]+x1[n]+x2[n]+x3[n]
  0                            +x4[n]
 -5
      0      2   4   6   8
Somando Cossenos
       Discretos
           X5 = 1,5
  1
                                           1.5    ⎡ (2n + 1)5π ⎤
                                x 5 [n ] =     cos⎢            ⎥
0.5
                                            2     ⎣     16     ⎦
  0

-0.5
                              = 0.4167 -0.7356 0.1463
                                0.6236 -0.6236 -0.1463
 -1
       0     2   4    6   8     0.7356 -0.4167
15

10

  5                           x0[n]+x1[n]+x2[n]+x3[n]
  0                             +x4[n]+x5[n]
 -5
      0      2   4    6   8
Somando Cossenos
       Discretos
           X6 = 0
                                         0   ⎡ ( 2n + 1)6π ⎤
                               x 6 [n ] = cos⎢
  1

0.5                                      2   ⎣      16     ⎥
                                                           ⎦
                               =0
  0

-0.5

 -1
       0     2   4   6   8
15

10

  5                          x0[n]+x1[n]+x2[n]+x3[n]
  0                            +x4[n]+x5[n]+x6[n]
 -5
      0      2   4   6   8
Somando Cossenos
        Discretos
            X7 = 0,1
                                           0.1 ⎡ ( 2n + 1)7π ⎤
                                x 7 [n ] =
0.05
                                              cos⎢           ⎥
                                            2    ⎣    16     ⎦
   0
                               = 0.0098; -0.0278; 0.0416;
                                 -0.0490’; 0.0490; -0.0416;
-0.05
        0     2   4    6   8
                                 0.0278; -0.0098
 15

 10

   5                           x[n]=x0[n]+x1[n]+x2[n]+
   0                             x3[n] +x4[n]+x5[n]+x6[n]
  -5
                                 +x7[n]
       0      2   4    6   8
Somando Cossenos
Discretos
     X[k] é um sinal digital: X[k]= X0, X1,...XN-1
     Exemplo: X[k]=10;5;8.5;2;1;1.5;0;0.1
     Dado X[k] pode-se obter x[n]
     X[k]: representação alternativa para x[n]

             X[k]                          x[n]
10                            15

                              10

 5                             5

                               0

 0                            -5
     0   2    4     6   8          0   2    4     6   8
Somando Cossenos
Discretos
xk[n]: cosseno componente de x[n],
de freqüência fk = k/2N; ou
xk[n]: componente de freqüência
fk = k/2N;
X[k]: Diretamente relacionado com a
amplitude da componente de
freqüência fk = k/2N
 X[k] representa a importância da
componente de freqüência fk = k/2N
Transformada Cosseno
  Discreta (DCT)
    DCT de x[n]:
              1/ 2     N −1
         ⎛2⎞                       ⎡ (2n + 1)kπ ⎤
X [k ] = ⎜ ⎟         ck ∑ x[n ] cos⎢            ⎥, k = 0,1,...,N − 1
         ⎝N⎠            n =0       ⎣ 2N         ⎦

   Transformada DCT inversa (IDCT) de
   X[k]:
          1 / 2 N −1
        ⎛2⎞                      ⎡ (2n + 1)kπ ⎤
x[n ] = ⎜ ⎟       ∑ ck X [k ] cos⎢ 2 N ⎥, n = 0,1,...,N − 1
        ⎝N⎠      k =0            ⎣            ⎦
Transformada Cosseno
Discreta (DCT)

X[k]: coeficientes DCT
X: representação de x no domínio da
freqüência
X[0]: coeficiente DC (Direct Current)
X[1]...X[N-1]: coeficientes AC
(Alternate Current)
Complexidade
Algoritmos eficientes: FDCT
DCT – Exemplo 1
                    g1

0.1


  0


-0.1


-0.2
    0     20   40   60   80   100   120
                    g3                                   g1 + g3
  2                                       2

  1                                       1

  0                                       0

 -1                                       -1
 -2
                                          -2
      0   20   40   60   80   100 120      0   20   40    60       80   100   120
DCT – Exemplo 1 (Cont.)
                   g10                                   g 1 +g 3 +g 10
 2                                       2

 1                                       1

 0                                       0

 -1                                      -1
 -2
                                         -2
     0   20   40   60     80   100 120       0    20    40    60     80    100   120
                   g118                                g1+ g3+ g10+ g118
                                          2
0.1
                                          1

  0                                       0

-0.1                                     -1

                                         -2
-0.2
   0     20   40    60    80   100 120        0   20    40    60      80   100   120
DCT – Exemplo 2
60                      ⎛     1     π ⎞
       f1[n] = 29.99 cos⎜ 2 π   n+    ⎟
40                      ⎝ 2N       2N ⎠

20
 0
-20
-40
-60
  0   10   20     30     40     50     60
60                        ⎛     2     π ⎞   150                 f1 + f 2
       f 2 [n] = 48.54 cos⎜ 2 π   n+    ⎟
40                        ⎝ 2N       2N ⎠
                                            100
20
                                                50
 0
-20                                              0

-40                                             -50
-60
                                            -
  0   10   20     30     40     50     60         0   10   20    30        40   50   60
DCT – Exemplo 2 (Cont.)
60                           ⎛     3     π ⎞    150                 f1 + f 2 + f 3
          f 3 [n] = 34.23 cos⎜ 2 π   n+    ⎟
40                           ⎝ 2N       2N ⎠
                                                100
20
                                                    50
 0
-20                                                  0

-40                                                 -50
-60
                                                -
  0      10   20     30     40     50     60      0       10   20      30      40      50   60
60                            ⎛     4     π ⎞   150             f1 + f 2 + ... + f 4
          f 4 [n] = -35.19 cos⎜ 2 π   n+    ⎟
40                            ⎝ 2N       2N ⎠
                                                100
20
                                                    50
 0
-20                                                  0

-40                                                 -50
-60
                                                -
     0   10   20     30     40     50     60          0   10   20      30      40      50   60
DCT – Exemplo 2 (Cont.)
                                             150
60                         ⎛     5     π ⎞                         f1 + f 2 + ... + f 6
       f 5 [n] = -34.55 cos⎜ 2 π   n+    ⎟
40                         ⎝ 2N       2N ⎠   100

20                                               50

 0                                                   0
-20
                                                 -50
-40
                                             -
-60
  0   10   20     30     40     50     60             0      10   20       30       40        50   60
                                                 150
60                         ⎛     6     π ⎞                             f1 + f 2 + ... + f 6
       f 6 [n] = -33.29 cos⎜ 2 π   n+    ⎟
40                         ⎝ 2N       2N ⎠       100
20                                                   50
 0
                                                      0
-20
                                                     -50
-40
-60                                              -

  0   10   20     30     40     50     60                0   10   20         30       40      50   60
DCT – Exemplo 2 (Cont.)
                                                         200
60                             ⎛     7     π ⎞                          f1 + f 2 + ... + f 7
           f 7 [n] = -63.42 cos⎜ 2 π   n+    ⎟           150
40                             ⎝ 2N       2N ⎠
                                                         100
20
                                                         50
 0
                                                          0
-20
-40                                                      -50

-60                                                  -
  0       10      20     30     40     50     60              0   10   20     30       40      50   60

 60                                ⎛     8     π ⎞                      f1 + f 2 + ... + f 8
               f 8 [n] = -42.82 cos⎜ 2 π   n+    ⎟   200
 40                                ⎝ 2N       2N ⎠
                                                     150
 20
                                                     100
  0
                                                         50
-20
                                                          0
-40
                                                         -50
-60
                                                     -
      0   10       20     30     40     50     60
DCT – Exemplo 2 (Cont.)
60                        ⎛     9     π ⎞                   f1 + f 2 + ... + f 9
       f 9 [n] = -10.31cos⎜ 2 π   n+    ⎟   200
40                        ⎝ 2N       2N ⎠
                                            150
20                                          100
 0                                              50
-20                                              0
-40                                             -50
-60                                         -
  0   10   20     30     40     50     60         0   10   20     30       40      50   60
60                       ⎛     10     π ⎞                   f1 + f 2 + ... + f10
       f10 [n] = 7.18 cos⎜ 2 π    n+    ⎟   200
40                       ⎝ 2N        2N ⎠
                                            150
20                                          100
 0                                              50
-20                                              0
-40                                             -50
-60                                         -
  0   10   20     30     40     50     60         0   10   20     30       40      50   60
DCT – Exemplo 2 (Cont.)
                                                   600
60                          ⎛     20     π ⎞                      f1 + f 2 + ... + f 20
       f 20 [n] = -62.24 cos⎜ 2 π    n+    ⎟
40                          ⎝ 2N        2N ⎠
                                                   400
20
 0                                                 200

-20
                                                    0
-40
-60
                                               -
  0   10   20     30      40     50     60              0   10   20     30       40       50   60

60                         ⎛     40     π ⎞    100                f1 + f 2 + ... + f 40
       f 40 [n] = 35.54 cos⎜ 2 π    n+    ⎟
40                         ⎝ 2N        2N ⎠
                                               800
20                                             600
 0                                             400
-20                                            200
-40                                                 0
-60                                            -
  0   10   20     30      40     50     60           0      10   20     30       40       50   60
DCT – Exemplo 2 (Cont.)
60                         ⎛     60     π ⎞   120             f1 + f 2 + ... + f 60
       f 60 [n] = -6.73 cos⎜ 2 π    n+    ⎟
40                         ⎝ 2N        2N ⎠   100
                                              800
20
                                              600
 0
                                              400
-20                                           200
-40                                               0
-60                                           -
  0   10   20     30      40     50     60          0   10   20     30       40       50   60
60                        ⎛     63     π ⎞    120             f1 + f 2 + ... + f 63
       f 63 [n] = -1.51cos⎜ 2 π    n+    ⎟
40                        ⎝ 2N        2N ⎠    100
                                              800
20
                                              600
 0
                                              400
-20
                                              200
-40                                               0
-60                                           -
  0   10   20     30      40     50     60          0   10   20     30       40       50   60
DCT – Exemplo 3
                       1250
                       1200

       Sinal           1150
                       1100
eletrocardiográfico,   1050

  2048 amostras        1000
                       950
                       900
                       850
                              0   500   1000   1500   2000
                         400



   DCT do sinal          200


eletrocardiográfico          0
 (sem termo DC)
                       -200


                       -400
                              0   500   1000   1500   2000
DCT – Exemplo 4
                20


Onda Quadrada   10


                 0

                -10

                -20
                   0   10   20   30   40   50   60
                60
                40

 DCT da Onda    20

  Quadrada       0
                -20

                -40
                -60
                   0   10   20   30   40   50   60
Freqüências em Hz

     Ta = 1/fa (Período de amostragem)
     N amostras ---- (N-1)Ta segundos

      1                            1          fa
f1 =    (adimensional) ↔ f1 =            =          Hz
     2N                       2( N − 1)Ta 2( N − 1)

                                 fa     fa
           f N −1 = ( N − 1)          =    Hz
                             2( N − 1) 2
Freqüências em Hz

Aumentar N melhora a resolução de
freqüência.
Aumentar fa aumenta a freqüência
máxima digitalizável, em Hz.
Dualidade com o domínio do tempo
Freqüências em Hz
Sinal de ECG, N= 2048, fa=360Hz
Valores em Hz para k = 14, 70, 683 e 2047
  14




   70      683               2047
Freqüências em Hz

f1 = fa/[2(N-1)] Hz = 360/(2x2047) =
     0,087933561
f14 = 14f1 = 1,23 Hz
f70 = 70f1 = 6,16 Hz
f683 = 683f1 = 60,06 Hz
f2047 = 2047f1 = 180 Hz
Freqüências em Hz
Observações
fa = 360 Hz <=> Ta = 0,002778 Hz
Tempo total para 2048 amostras = 5,69s
Um batimento cardíaco: aprox. 0,8 s
“Freqüência” Cardíaca: aprox. 1,25 bat./s
= 1,25 Hz, ou 75 batimentos/min.
“Freqüência” Cardíaca aprox. igual a f14
Freqüências em Hz
Onda quadrada, N = 64, fa = 1Hz
Valores em Hz para k = 7, 8, 9 e 63
  60
  40

  20

   0

  -20
  -40
  -60
     0   7 9                    63
Freqüências em Hz
f1 = fa/[2(N-1)] Hz = 1/(2x63) =
    0,007936507
f7 = 7f1 = 0,0556 Hz
f8 = 8f1 = 0,0625 Hz
f9 = 9f1 = 0,0714 Hz
f63 = 63f1 = 0,5 Hz
Obs:
Período do sinal = 16 s
Freqüência da onda = 0,0625
Freqüências e Conteúdo de
Freqüência

Sinal periódico
  Freqüência
  Freqüências componentes
Sinal não-periódico:
  Freqüências componentes
Sinais analógicos senoidais

Representação em freqüência de um sinal
analógico senoidal?

Sinal analógico senoidal, de freqüência f

fa mínimo para digitalização adequada?

Se f não é múltiplo de f1?
Amostragem de Senóides
Cosseno com f=10Hz, fa=100Hz, N=26
       1

     0.8

     0.6

     0.4

     0.2


       0

     -0.2

     -0.4

     -0.6

     -0.8

       -1
            0   0.05   0.1   0.15   0.2   0.25
Amostragem de Senóides
DCT do cosseno com f = 10Hz, fa=100Hz, N=26
         4


       3.5


         3


       2.5


         2


       1.5


         1


       0.5


         0


       -0.5
              0   5   10   15   20   25   30   35   40   45   50
Amostragem de Senóides
Vazamento de freqüência: mais de uma
componente de freqüência para uma
senóide
Minimizar vazamento de freqüência:
aumentar N
Amostragem de Senóides
Cosseno com f = 30Hz, fa=100Hz, N=26
        1

      0.8

      0.6

      0.4

      0.2


        0

      -0.2

      -0.4

      -0.6

      -0.8

        -1
             0   0.05   0.1   0.15   0.2   0.25
Amostragem de Senóides
DCT do cosseno com f = 30Hz, fa=100Hz, N=26
       3.5

         3

       2.5

         2

       1.5


         1

       0.5

         0

       -0.5

         -1

       -1.5
              0   5   10   15   20   25   30   35   40   45   50
Amostragem de Senóides
Cosseno com f = 48Hz, fa=100Hz, N=26
        1

      0.8

      0.6

      0.4

      0.2


        0

      -0.2

      -0.4

      -0.6

      -0.8

        -1
             0   0.05   0.1   0.15   0.2   0.25
Amostragem de Senóides
DCT do cosseno com f = 48Hz, fa=100Hz, N=26
       3.5


         3


       2.5


         2


       1.5


         1


       0.5


         0


       -0.5
              0   5   10   15   20   25   30   35   40   45   50
Amostragem de Senóides
Cosseno com f = 50Hz, fa=100Hz, N=26
        1

      0.8

      0.6

      0.4

      0.2


        0

      -0.2

      -0.4

      -0.6

      -0.8

        -1
             0   0.05   0.1   0.15   0.2   0.25
Amostragem de Senóides
DCT do cosseno com f = 50Hz, fa=100Hz, N=26
        5

       4.5

        4

       3.5

        3


       2.5

        2

       1.5

        1

       0.5

        0
             0   5   10   15   20   25   30   35   40   45   50
Amostragem de Senóides
Cosseno com f = 52Hz, fa=100Hz, N=26
       1

      0.8

      0.6

      0.4

      0.2


       0

     -0.2

     -0.4

     -0.6

     -0.8

       -1
            0   0.05   0.1   0.15   0.2   0.25
Amostragem de Senóides
DCT do cosseno com f = 52Hz, fa=100Hz, N=26
       3.5


         3


       2.5


         2


       1.5


         1


       0.5


         0


       -0.5
              0   5   10   15   20   25   30   35   40   45   50
Amostragem de Senóides
        Sinal digital obtido a partir do cosseno de
        52Hz é idêntico ao obtido a partir do
        cosseno de 48 Hz
  1                                   1

0.8                                  0.8

0.6                                  0.6

0.4                                  0.4

0.2                                  0.2

  0                                   0

-0.2                             -0.2

-0.4                             -0.4

-0.6                             -0.6

-0.8                             -0.8

 -1                                  -1
   0   0.0   0.1   0.1   0.2   0.2     0   0.0   0.1   0.1   0.2   0.2
Amostragem de Senóides
Cosseno com f = 70Hz, fa=100Hz, N=26
        1

      0.8

      0.6

      0.4

      0.2


        0

      -0.2

      -0.4

      -0.6

      -0.8

        -1
             0   0.05   0.1   0.15   0.2   0.25
Amostragem de Senóides
DCT do cosseno com f = 70Hz, fa=100Hz, N=26
       3.5

        3

       2.5

        2

       1.5


        1

       0.5

        0

      -0.5

        -1

      -1.5
             0   5   10   15   20   25   30   35   40   45   50
Amostragem de Senóides
        Sinal digital obtido a partir do cosseno de
        70Hz é idêntico ao obtido a partir do
        cosseno de 30 Hz
  1                                   1

0.8                                  0.8

0.6                                  0.6

0.4                                  0.4

0.2                                  0.2

  0                                   0

-0.2                             -0.2

-0.4                             -0.4

-0.6                             -0.6

-0.8                             -0.8

 -1                                  -1
   0   0.0   0.1   0.1   0.2   0.2     0   0.0   0.1   0.1   0.2   0.2
Aliasing

Na DCT, a maior freqüência é fa/2
Aliasing: sinais senoidais de
freqüência f > fa/2 são discretizados
como sinais senoidais de freqüência
fd < fa / 2 (fd=fa–f, para fa/2 < f < fa)
Aliasing
Teorema de Shannon-
Nyquist

Sinal analógico com fmax Hz
(componente)
Digitalizar com fa Hz, tal que:
     fa
        > f max ⇔ f a > 2 f max
     2
2fmax: Freq. de Nyquist
Digitalização de áudio
Ouvido humano é sensível a freq.
entre 20Hz e 22KHz (aprox.)
Digitalizar com 44KHz?
Sons podem ter freqüências
componentes acima de 22KHz
Digitalização a 44KHz: aliasing.
Filtro passa-baixas com freqüência
de corte em 22KHz = Filtro anti-
aliasing
Eliminação de pixels
revisitada
Por que redução de imagens (ou
outros sinais) por eliminação de
pixel pode ser ruim?

Aliasing!

Usar filtro passa-baixas!
Filtros no domínio da
freqüência

Multiplicar X pela função de
transferência do filtro, H
Filtros:
 Passa-baixas
 Passa-altas
 Passa-faixa
 Corta-baixas
 Corta-altas
 Corta-faixa (faixa estreita: notch)
Filtros no domínio da freq.
Ideais   H             Passa-baixas       H             Passa-altas
                       (corta-altas)                    (corta-baixas)
             1                                1


                         fc         N-1                   fc         N-1

         H             Passa-faixa        H             corta-faixa

             1                                1


                 fc1          fc2   N-1           fc1          fc2   N-1
Filtros no domínio da
freqüência

Combinação de filtros
Filtros não-ideais (corte suave,
H(fc)=1/2)
DCT 2-D

     Operação separável
     Complexidade elevada
                    N −1 N −1
            1                      ⎡ (2m + 1)kπ ⎤ ⎡ (2n + 1)lπ ⎤
X [k, l ] =    ck cl ∑ ∑ x[m, n]cos⎢            ⎥ cos⎢ 2N ⎥
            2N      m=0 n=0        ⎣ 2N ⎦ ⎣                    ⎦

          1 N −1N −1             ⎡ (2k + 1)mπ ⎤ ⎡ (2l + 1)nπ ⎤
x[m, n] =     ∑ ∑ckcl X [k, l]cos⎢ 2N ⎥ cos⎢ 2N ⎥
          2N k =0 l =0           ⎣            ⎦ ⎣            ⎦
DCT 2-D
Imagem “cosseno na vertical”, 256 x 256,
8 ciclos (k = 16) e sua DCT normalizada
DCT 2-D
Imagem “cosseno na vertical”, 256 x 256,
16 ciclos (k = 32) e sua DCT normalizada
DCT 2-D
Imagem “cosseno na horizontal x cosseno
na vertical”, 256 x 256, 16 ciclos (k = 32)
e sua DCT normalizada
DCT 2-D
Imagem “cosseno na horizontal x cosseno
na vertical”, 256 x 256, 8 x 16 ciclos e
sua DCT normalizada
DCT 2-D
Imagem “Lena” (256x256) e sua DCT
normalizada
DCT 2-D
Imagem “Lena” (256x256) e o log(DCT+1)
normalizado
Introdução à Processamento Digital de Imagens
Introdução à Processamento Digital de Imagens
Introdução à Processamento Digital de Imagens
Introdução à Processamento Digital de Imagens
Introdução à Processamento Digital de Imagens
Introdução à Processamento Digital de Imagens
Introdução à Processamento Digital de Imagens
Introdução à Processamento Digital de Imagens
Introdução à Processamento Digital de Imagens
Introdução à Processamento Digital de Imagens

Contenu connexe

En vedette

Allergie de l’enfant cdg 11 06 13
Allergie de l’enfant cdg 11 06 13Allergie de l’enfant cdg 11 06 13
Allergie de l’enfant cdg 11 06 13raymondteyrouz
 
Basics of radiation and production of x rays
Basics of radiation and production of x raysBasics of radiation and production of x rays
Basics of radiation and production of x raysdbc9427
 
State of Drupal keynote, DrupalCon Austin
State of Drupal keynote, DrupalCon AustinState of Drupal keynote, DrupalCon Austin
State of Drupal keynote, DrupalCon AustinDries Buytaert
 
Projeto de reconhecimento de placas (2)
Projeto de reconhecimento de placas (2)Projeto de reconhecimento de placas (2)
Projeto de reconhecimento de placas (2)Guilherme Stéfano
 
Segurança de redes - Conceitos de firewall
Segurança de redes - Conceitos de firewall Segurança de redes - Conceitos de firewall
Segurança de redes - Conceitos de firewall Cleber Ramos
 
Snc 2º ano - 2012
Snc   2º ano - 2012Snc   2º ano - 2012
Snc 2º ano - 2012Maria Costa
 
Acto administrativo Modulo II
Acto administrativo   Modulo IIActo administrativo   Modulo II
Acto administrativo Modulo IIDiplomada2010
 
Geografia do Mato Grosso do Sul - Hidrografia. Blog do Prof. Marco Aurélio Go...
Geografia do Mato Grosso do Sul - Hidrografia. Blog do Prof. Marco Aurélio Go...Geografia do Mato Grosso do Sul - Hidrografia. Blog do Prof. Marco Aurélio Go...
Geografia do Mato Grosso do Sul - Hidrografia. Blog do Prof. Marco Aurélio Go...Marco Aurélio Gondim
 
Certificação ITIL e Curso ITIL Virtual
Certificação ITIL e Curso ITIL VirtualCertificação ITIL e Curso ITIL Virtual
Certificação ITIL e Curso ITIL VirtualFernando Palma
 
Slides De Vendedor Para Gerente De Clientes261108
Slides De Vendedor Para Gerente De Clientes261108Slides De Vendedor Para Gerente De Clientes261108
Slides De Vendedor Para Gerente De Clientes261108Ricardo Jordão Magalhaes
 
Sistema Urinário
Sistema  UrinárioSistema  Urinário
Sistema Urináriovictorpre
 
Timeline e historia do design
Timeline e historia do designTimeline e historia do design
Timeline e historia do designMarcio Duarte
 
História um amor de confusão, de dulce rangel
História um amor de confusão, de dulce rangelHistória um amor de confusão, de dulce rangel
História um amor de confusão, de dulce rangelAndreá Perez Leinat
 
Vitaminas lipossoluveis
Vitaminas lipossoluveisVitaminas lipossoluveis
Vitaminas lipossoluveisPaula Oliveira
 

En vedette (20)

Allergie de l’enfant cdg 11 06 13
Allergie de l’enfant cdg 11 06 13Allergie de l’enfant cdg 11 06 13
Allergie de l’enfant cdg 11 06 13
 
Basics of radiation and production of x rays
Basics of radiation and production of x raysBasics of radiation and production of x rays
Basics of radiation and production of x rays
 
Rizal's grand tour of europe with viola
Rizal's grand tour of europe with violaRizal's grand tour of europe with viola
Rizal's grand tour of europe with viola
 
State of Drupal keynote, DrupalCon Austin
State of Drupal keynote, DrupalCon AustinState of Drupal keynote, DrupalCon Austin
State of Drupal keynote, DrupalCon Austin
 
BUSINESS QUIZ -Round 1
 BUSINESS QUIZ -Round 1 BUSINESS QUIZ -Round 1
BUSINESS QUIZ -Round 1
 
Projeto de reconhecimento de placas (2)
Projeto de reconhecimento de placas (2)Projeto de reconhecimento de placas (2)
Projeto de reconhecimento de placas (2)
 
Segurança de redes - Conceitos de firewall
Segurança de redes - Conceitos de firewall Segurança de redes - Conceitos de firewall
Segurança de redes - Conceitos de firewall
 
Snc 2º ano - 2012
Snc   2º ano - 2012Snc   2º ano - 2012
Snc 2º ano - 2012
 
Acto administrativo Modulo II
Acto administrativo   Modulo IIActo administrativo   Modulo II
Acto administrativo Modulo II
 
Erfolg durch Empfehlung
Erfolg durch EmpfehlungErfolg durch Empfehlung
Erfolg durch Empfehlung
 
Geografia do Mato Grosso do Sul - Hidrografia. Blog do Prof. Marco Aurélio Go...
Geografia do Mato Grosso do Sul - Hidrografia. Blog do Prof. Marco Aurélio Go...Geografia do Mato Grosso do Sul - Hidrografia. Blog do Prof. Marco Aurélio Go...
Geografia do Mato Grosso do Sul - Hidrografia. Blog do Prof. Marco Aurélio Go...
 
Certificação ITIL e Curso ITIL Virtual
Certificação ITIL e Curso ITIL VirtualCertificação ITIL e Curso ITIL Virtual
Certificação ITIL e Curso ITIL Virtual
 
VisãO Geral da Filosofia
VisãO Geral da FilosofiaVisãO Geral da Filosofia
VisãO Geral da Filosofia
 
Slides De Vendedor Para Gerente De Clientes261108
Slides De Vendedor Para Gerente De Clientes261108Slides De Vendedor Para Gerente De Clientes261108
Slides De Vendedor Para Gerente De Clientes261108
 
Hebreus, FeníCios E Persas 1
Hebreus, FeníCios E Persas 1Hebreus, FeníCios E Persas 1
Hebreus, FeníCios E Persas 1
 
Sistema Urinário
Sistema  UrinárioSistema  Urinário
Sistema Urinário
 
Timeline e historia do design
Timeline e historia do designTimeline e historia do design
Timeline e historia do design
 
História um amor de confusão, de dulce rangel
História um amor de confusão, de dulce rangelHistória um amor de confusão, de dulce rangel
História um amor de confusão, de dulce rangel
 
O plano de deus (2)
O plano de deus (2)O plano de deus (2)
O plano de deus (2)
 
Vitaminas lipossoluveis
Vitaminas lipossoluveisVitaminas lipossoluveis
Vitaminas lipossoluveis
 

Similaire à Introdução à Processamento Digital de Imagens

Qualidade de imagens em radiografia industrial
Qualidade de imagens em radiografia industrialQualidade de imagens em radiografia industrial
Qualidade de imagens em radiografia industrialWalmor Godoi
 
Processamento de Imagem - Campinho
Processamento de Imagem - CampinhoProcessamento de Imagem - Campinho
Processamento de Imagem - Campinhozacssa
 
TV Analógica e Digital
TV Analógica e DigitalTV Analógica e Digital
TV Analógica e Digitaleveraldoperin
 
Caracteristica sensores doc
Caracteristica sensores docCaracteristica sensores doc
Caracteristica sensores docAlziane Lima
 
Forma visual e Cor
Forma visual e CorForma visual e Cor
Forma visual e Corkalexandrino
 
Campus Party - Computer Vision
Campus Party - Computer VisionCampus Party - Computer Vision
Campus Party - Computer Visiondannyxyz22
 
Prototipacao para Computacao Fisica
Prototipacao para Computacao FisicaPrototipacao para Computacao Fisica
Prototipacao para Computacao FisicaAndre Junqueira
 
Colorimetria na impressão digital
Colorimetria na impressão digitalColorimetria na impressão digital
Colorimetria na impressão digitalAry Luiz
 
Aplicações Informáticas B cor e sistdigitais.pptx
Aplicações Informáticas B cor e sistdigitais.pptxAplicações Informáticas B cor e sistdigitais.pptx
Aplicações Informáticas B cor e sistdigitais.pptxDanielLima356312
 
Tipos de Televisão Digital (Aparelho - Eletrodoméstico)
Tipos de Televisão Digital (Aparelho - Eletrodoméstico)Tipos de Televisão Digital (Aparelho - Eletrodoméstico)
Tipos de Televisão Digital (Aparelho - Eletrodoméstico)Elaine Cecília Gatto
 
Circuitos digitais 05042012
Circuitos digitais 05042012Circuitos digitais 05042012
Circuitos digitais 05042012'Evanildo Barros
 
Mass Media Stc
Mass Media StcMass Media Stc
Mass Media Stcaugustog
 
Dispositivos para Computação Gráfica
Dispositivos para Computação GráficaDispositivos para Computação Gráfica
Dispositivos para Computação GráficaLiliane Machado
 
Processamento de Sinais Digitais- aula introduyoris
Processamento de Sinais Digitais- aula introduyorisProcessamento de Sinais Digitais- aula introduyoris
Processamento de Sinais Digitais- aula introduyorisHenriqueNeto40
 

Similaire à Introdução à Processamento Digital de Imagens (20)

RADIOLOGIA DIGITAL
RADIOLOGIA DIGITALRADIOLOGIA DIGITAL
RADIOLOGIA DIGITAL
 
Radiologia digital
Radiologia digitalRadiologia digital
Radiologia digital
 
Qualidade de imagens em radiografia industrial
Qualidade de imagens em radiografia industrialQualidade de imagens em radiografia industrial
Qualidade de imagens em radiografia industrial
 
Processamento de Imagem - Campinho
Processamento de Imagem - CampinhoProcessamento de Imagem - Campinho
Processamento de Imagem - Campinho
 
15 c 084
15 c 08415 c 084
15 c 084
 
TV Analógica e Digital
TV Analógica e DigitalTV Analógica e Digital
TV Analógica e Digital
 
Caracteristica sensores doc
Caracteristica sensores docCaracteristica sensores doc
Caracteristica sensores doc
 
Forma visual e Cor
Forma visual e CorForma visual e Cor
Forma visual e Cor
 
Campus Party - Computer Vision
Campus Party - Computer VisionCampus Party - Computer Vision
Campus Party - Computer Vision
 
Tv Digital
Tv DigitalTv Digital
Tv Digital
 
Antenas_aula1
Antenas_aula1Antenas_aula1
Antenas_aula1
 
Prototipacao para Computacao Fisica
Prototipacao para Computacao FisicaPrototipacao para Computacao Fisica
Prototipacao para Computacao Fisica
 
Colorimetria na impressão digital
Colorimetria na impressão digitalColorimetria na impressão digital
Colorimetria na impressão digital
 
Aplicações Informáticas B cor e sistdigitais.pptx
Aplicações Informáticas B cor e sistdigitais.pptxAplicações Informáticas B cor e sistdigitais.pptx
Aplicações Informáticas B cor e sistdigitais.pptx
 
Tipos de Televisão Digital (Aparelho - Eletrodoméstico)
Tipos de Televisão Digital (Aparelho - Eletrodoméstico)Tipos de Televisão Digital (Aparelho - Eletrodoméstico)
Tipos de Televisão Digital (Aparelho - Eletrodoméstico)
 
Circuitos digitais 05042012
Circuitos digitais 05042012Circuitos digitais 05042012
Circuitos digitais 05042012
 
Mass Media Stc
Mass Media StcMass Media Stc
Mass Media Stc
 
Dispositivos para Computação Gráfica
Dispositivos para Computação GráficaDispositivos para Computação Gráfica
Dispositivos para Computação Gráfica
 
aula 1.pdf
aula 1.pdfaula 1.pdf
aula 1.pdf
 
Processamento de Sinais Digitais- aula introduyoris
Processamento de Sinais Digitais- aula introduyorisProcessamento de Sinais Digitais- aula introduyoris
Processamento de Sinais Digitais- aula introduyoris
 

Introdução à Processamento Digital de Imagens

  • 1. Introdução ao Processamento Digital de Imagens Prof. Leonardo Vidal Batista DI/PPGI/PPGEM leonardo@di.ufpb.br leovidal@terra.com.br http://www.di.ufpb.br/leonardo
  • 2. Processamento Digital de Imagens Modelagem matemática, análise, projeto e implementação (S&H) de sistemas voltados ao tratamento de informação pictórica, com fins estéticos, para torná-la mais adequada à interpretação ou aumentar eficiência de armazenamento e transmissão.
  • 3. PDI e áreas correlatas Dados Visão Computação Computacional Gráfica Imagens Processamento Digital de Imagens (sinais 2D) Processamento Digital de Sinais
  • 4. PDI x Visão Computacional
  • 5. Imagens digitais TV digital Câmeras digitais, celulares, scanners DVDs Sistemas de teleconferência Transmissões via fax Editoração eletrônica Impressoras Monitoramento da superfície terrestre e previsão climática por imagens de satélites Detecção de movimento
  • 6. Imagens Digitais Diagnóstico médico: ultrassonografia, angiografia, tomografia, ressonância magnética, contagem de células, etc Identificação biométrica: reconhecimento de face, íris ou impressões digitais Ciências forenses Realce e restauração de imagens por computador Instrumentação Controle de qualidade Granulometria de minérios
  • 7. Outros Sinais Digitais Diagnóstico médico: eletrocardiograma, eletroencefalograma, eletromiograma, eletroretinograma, polisonograma, etc Identificação biométrica por reconhecimento de voz Síntese de voz Áudio Digital Telefonia Suspensão ativa em automóveis Mercado acionário
  • 8. Sinais Contínuos e Discretos Sinal analógico Sinal digital ... Amplitude 2q q 0 -q -2q ... Erros de quantização 0 Ta 2Ta 3Ta ... Tempo, espaço etc.
  • 9. Processamento Analógico de Sinais Processador Sinal analógico analógico Sinal analógico de entrada de saída
  • 10. Processamento Digital de Sinais Sinal Sinal analógico Conversor Processador digital A/D Digital Sinal Sinal analógico Conversor Processador Conversor analógico A/D Digital D/A
  • 11. Processamento Digital de Sinais Alguns sinais são inerentemente digitais ou puramente matemáticos Ex: Número de gols por rodada do campeonato brasileiro de futebol Neste caso, não há necessidade de Conversão A/D Ainda assim, pode haver necessidade de conversão D/A Ex: texto -> voz sintetizada
  • 12. Processamento Digital de Sinais Hardware, software, ou ambos Maior flexibilidade Menor custo Menor tempo de desenvolvimento Maior facilidade de distribuição Sinais digitais podem ser armazenados e reproduzidos sem perda de qualidade Mas alguns sistemas exigem uma etapa analógica!
  • 13. Processamento Digital de Sinais – Robustez a Ruído Sinal analógico original Sinal analógico corrompido – em geral, recuperação impossível mesmo para pequenas distorções
  • 14. Processamento Digital de Sinais – Robustez a Ruído Sinal digital corrompido – recuperação possível Sinal digital original mesmo com distorções substanciais, principalmente com uso de códigos corretores. ‘1’ ‘1’ ‘0’ ‘0’ Sinal digital recuperado com erro ‘1’ ‘0’
  • 24. Você confia em seu sistema visual?
  • 25. Você confia em seu sistema visual?
  • 26. Você confia em seu sistema visual?
  • 27. Você confia em seu sistema visual? http://www.echalk.co.uk/ amusements/OpticalIllusi ons/illusions.htm
  • 28. Você confia em seu sistema visual?
  • 29. Você confia em seu sistema visual?
  • 30. Você confia em seu sistema visual?
  • 31. Você confia em seu sistema visual?
  • 32. Você confia em seu sistema visual?
  • 33. Você confia em seu sistema visual?
  • 34. Você confia em seu sistema visual?
  • 35. Você confia em seu sistema visual?
  • 36. Você confia em seu sistema visual?
  • 37. A Faixa Visível do Espectro Eletromagnético Luz: radiação eletromagnética Freqüência f, comprimento de onda L Faixa visível do espectro eletromagnético: 380 nm < L < 780 nm Na faixa visível, o sistema visual humano (SVH) percebe comprimentos de onda diferentes como cores diferentes
  • 38. A Faixa Visível do Espectro Eletromagnético Radiação monocromática: radiação em um único comprimento de onda Cor espectral pura: radiação monocromática na faixa visível
  • 39. A Faixa Visível do Espectro Eletromagnético
  • 40. A Faixa Visível do Espectro Eletromagnético Denominação Usual da Cor Faixa do Espectro (nm) Violeta 380 – 440 Azul 440 – 490 Verde 490 – 565 Amarelo 565 – 590 Laranja 590 – 630 Vermelho 630 – 780
  • 41. A Estrutura do Olho Humano Olho humano: aproximadamente esférico, diâmetro médio em torno de dois centímetros A luz penetra no olho passando pela pupila e pelo cristalino e atingindo a retina Imagem invertida do cenário externo sobre a retina Cones e bastonetes convertem energia luminosa em impulsos elétricos que são transmitidos ao cérebro.
  • 42. A Estrutura do Olho Humano
  • 43. Bastonetes 75 a 150 milhões/olho, sobre toda a retina Não são sensíveis às cores Baixa resolução (conectados em grupos aos terminais nervosos) Sensíveis à radiação de baixa intensidade na faixa visível Visão geral e de baixa luminosidade Objetos acinzentados sob baixa luminosidade
  • 44. Cones 6 a 7 milhões/olho, concentrados na fóvea Sensíveis às cores Alta resolução (um cone por terminal nervoso) Pouco sensíveis a radiação de baixa intensidade na faixa visível Visão específica, de alta luminosidade Movimentamos os olhos para que a imagem do objeto de interesse recaia sobre a fóvea.
  • 45. Cones Há três tipos de cones: Cone sensível ao vermelho Cone sensível ao verde Cone sensível ao azul Cores diversas obtidas por combinações destas cores primárias
  • 46. Cones Cone “Verde” Resposta Cone “Azul” Cone “Vermelho” 400 500 600 700 Comprimento de onda (nm)
  • 47. Sistema de Cores RGB A cor de uma fonte de radiação na faixa visível é definida pela adição das cores espectrais emitidas – sistema aditivo Combinação de radiações monocromáticas vermelho (R), verde (G) e azul (B) Cores primárias da luz Sistema de cores RGB
  • 48. Sistema RGB Padronização da Comissão Internacional de Iluminação (CIE): Azul: 435,8 nm Verde: 546,1 nm Vermelho: 700 nm
  • 49. Sistema RGB - Combinação de Cores Primárias Cores secundárias da luz: magenta (M), cíano (C) e amarelo (Y): M=R+B C=B+G Y=G+R Cor branca (W): W=R+G+B
  • 50. Espaço de Cores RGB Cor no sistema RGB é um vetor em um espaço tridimensional: G R B
  • 51. Espaço de Cores RGB Reta (i, i, i): reta acromática Pontos na reta acromática: tonalidades de cinza ou níveis de cinza Preto: (0, 0, 0) (ausência de luz) Branco: (M, M, M), (M é a intensidade máxima de uma componente de cor) Monitor de vídeo: Sistema RGB
  • 52. Sistema de Cores CMY Cor de um objeto que não emite radiação própria depende dos pigmentos que absorvem radiação em determinadas faixas de freqüência e refletem outras Absorção em proporções variáveis das componentes R, G e B da radiação incidente: sistema subtrativo
  • 53. CMY - Cores Primárias Cores primárias dos pigmentos: absorvem uma cor primária da luz e refletem as outras duas C=W–R=G+B M=W–G=R+B Y=W–B=G+R
  • 54. CMY – Combinação de Cores Primárias Cores secundárias: R=M+Y G=C+Y B=M+C Preto (K): K=C+M+Y=W–R–G–B Impressoras coloridas: CMY ou CMYK
  • 55. Processos Aditivo e Subtrativo
  • 56. Sistema de Cores YIQ Transmissão de TV em cores: compatibilidade com TV P & B Y: luminância (intensidade percebida, ou brilho) I e Q: crominâncias
  • 57. Conversão YIQ-RGB Conversão de RGB para YIQ: Y = 0.299R + 0.587G + 0.114B I = 0.596R – 0.274G –0.322B Q = 0.211R – 0.523G + 0.312B Conversão de YIQ para RGB : R = 1.000 Y + 0.956 I + 0.621 Q G = 1.000 Y – 0.272 I – 0.647 Q B = 1.000 Y – 1.106 I + 1.703 Q
  • 58. Sistema de Cores HSI Fisiologicamente, a retina humana opera no sistema RGB A percepção subjetiva de cor é diferente Atributos perceptivos das cores: Matiz (hue) ou tonalidade Saturação Intensidade
  • 59. Sistema de Cores HSI Matiz (H): determinada pelo comprimento de onda dominante; cor espectral mais próxima; denominação usual das cores H é um ângulo: 0o = R; 120o = G; 240o = B Saturação: pureza da cor quanto à adição de branco S = 0: cor insaturada (nível de cinza) S = 1: cor completamente saturada Cores espectrais puras tem S = 1
  • 63. Imagem monocromática Função Ia(x,y) (x, y): coordenadas espaciais Ia(x,y): intensidade ou brilho da imagem em (x,y)
  • 64. Amostragem e Quantização Digitalização: discretização espacial (amostragem) e de intensidade (quantização)
  • 65. Amostragem e Quantização Sinal analógico Sinal digital ... Amplitude 2q q 0 -q -2q ... Erros de quantização 0 T 2T 3T ... Tempo ou espaço
  • 66. Amostragem e Quantização - Parâmetros T: período de amostragem (unidade de espaço ou tempo) f = 1/T: freqüência de amostragem (amostras/unidade de espaço ou tempo) q: passo de quantização Sinal analógico: s(t), s(x) Sinal digitalizado: s[nT], n inteiro não negativo, s[nT] ∈{-Mq, ..., -2q, -q, 0, q, 2q, ..., Mq,}
  • 67. Amostragem e Quantização – Exemplo 1 Sinal analógico s(t): voltagem de saída de um sistema elétrico em função do tempo 40 20 Sinal analógico Volts 0 -20 -40 0 1 2 3 4 5 6 7 segundos
  • 68. Amostragem e Quantização – Exemplo 1 T = 0.5s, q = 0.5V, M = 80: s[0.5.n], n = 0, 1, 2, ... s[0.5n] ∈ {-40, -39.5..., -0.5, 0, 0.5 1,...,39.5, 40} s[0]=9.5,s[0.5]=8,s[1]=-2, s[1.5]= -10.5, ... Sinal digital pode ser representado como s[n] ∈ {-M,..., -2, -1, 0, 1, 2,..., M} s[0]=19, s[1]=16, s[2]=-4, s[3]=-21,... s[n] = {19, 16, -4, -20, ...}
  • 69. Amostragem e Quantização – Exemplo 2 Em um processo de digitalização foram colhidas N=10 amostras de um sinal de temperatura (graus Celsius) igualmente espaçadas ao longo de um segmento de reta unindo duas cidades A e B. A primeira amostra foi colhida na cidade A e a última na cidade B. O sinal digital resultante é s[n] = {12 12 13 13 14 13 14 14 14 15} Perguntas: (a) Distância entre as cidades? (b) Valores de temperatura registrados? (c) Limites de temperatura registrável? (d) Qual o valor de s[5km]?
  • 70. Amostragem e Quantização – Solução do Exemplo 2 Precisamos conhecer f, q e M! Dados: f = 0.1 amostra/km q = 2o Celsius M = 15;
  • 71. Amostragem e Quantização – Solução do Exemplo 2 T = 10 km/amostra (a) Distância entre as cidades = (10-1)x10 = 90km (b) Temperaturas em graus Celsius: {24 24 26 26 28 26 28 28 28 30} (c) Limites de temperatura em graus Celsius: [-30, 30] (d) s[5km]: no sinal digital s[nT] não há nT = 5km!
  • 72. Conversores Analógico- Digitais (ADC) Conversor Analógico/Digital (Analog to Digital Converter - ADC): amostra, quantiza em L níveis e codifica em binário. Um transdutor deve converter o sinal de entrada para tensão elétrica (V) Códigos de b bits: L = 2b níveis de quantização Exemplo: b = 8, L = 256 ADC de b bits
  • 73. Conversores Analógico- Digitais (ADC) ADC unipolar: voltagem de entrada de 0 a Vref ADC bipolar: voltagem de entrada de -Vref a Vref Exemplo: ADC unipolar de 3 bits, Vref = 10 V L = 23 = 8, Resolução de voltagem: 10/8 = 1,25V Exemplo: ADC bipolar de 3 bits, Vref = 5 V L = 23 = 8, Resolução de voltagem: 10/8 = 1,25V
  • 74. ADC Unipolar Bipolar Voltagem Código Voltagem Código [0,00, 1,25) 000 [-5,0, -3,75) 000 [1,25, 2,50) 001 [-3,75, -2,5) 001 [2,50, 3,75) 010 [-2,5, -1,25) 010 [3,75, 5,00) 011 [-1,25, 0,0) 011 [5,00, 6,25) 100 [0,00, 1,25) 100 [6,25, 7,50) 101 [1,25, 2,50) 101 [7,50, 8,75) 110 [2,50, 3,75) 110 [8,75, 10,0) 111 [3,75, 5,00) 111
  • 75. Conversores Analógico- Digitais (ADC) O bit menos significativo (LSB) do código se altera em incrementos de 1,25V. Resolução de voltagem: “valor” do LSB Alguns parâmetros: fa, Vref, b, ...
  • 76. Amostragem e Quantização – Qualidade do Sinal 40 20 Sinal analógico Volts 0 -20 -40 0 1 2 3 4 5 6 7 segundos 40 40 f = 2 amostras/s Sinal analógico 20 (T = 0,5s), q = 1 20 reconstruído 0 0 -20 -20 -40 -40 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
  • 77. Amostragem e Quantização – Qualidade do Sinal 40 20 Sinal analógico Volts 0 -20 -40 0 1 2 3 4 5 6 7 segundos 40 40 f = 5 amostras/s Sinal analógico (T = 0,2s), q = 1 20 20 reconstruído 0 0 -20 -20 -40 -40 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
  • 78. Amostragem e Quantização – Qualidade do Sinal 40 20 Sinal analógico Volts 0 -20 -40 0 1 2 3 4 5 6 7 segundos 40 40 f = 10 amostras/s Sinal analógico 20 (T = 0,1s), q = 1 20 reconstruído 0 0 -20 -20 -40 -40 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
  • 79. Amostragem e Quantização – Qualidade do Sinal 40 20 Sinal analógico Volts 0 -20 -40 0 1 2 3 4 5 6 7 segundos 40 40 f = 10 amostras/s Sinal analógico 20 (T = 0,1s), q = 16 20 reconstruído 0 0 -20 -20 -40 -40 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
  • 80. Imagem digital monocromática 250 200 150 100 50 0 0 100 200 300 400 500 i=0 250 200 ⎡161 161 ... 142⎤ 150 ⎢161 161 ... 142⎥ 100 ⎢ ⎥ 50 ⎢ ... ... ... ... ⎥ ⎢ ⎥ 0 0 50 100 150 200 250 300 350 ⎣163 163 ... 95 ⎦ j = 266
  • 81. Resolução Espacial e de Contraste 256x256 / 256 níveis 256x256 / 64 níveis 256x256 / 2 níveis 32x32 / 256 níveis
  • 82. Imagens RGB Banda R Banda G Banda B Imagem RGB
  • 83. Imagens Digitais Uma imagem é uma matriz bidimensional observada de forma pictórica. Imagens de densidade demográfica, de raios x, de infravermelho, de temperaturas de uma área, etc.
  • 84. Scanners Monocromáticos: fila de diodos fotossensíveis em um suporte que se desloca Coloridos: fila de diodos fotossensíveis, recobertos por filtros R, G e B, em um suporte que se desloca Lâmpada fluorescente branca ilumina o objeto Diodos produzem carga elétrica proporcional à intensidade da luz refletida pelo objeto
  • 86. Scanners Th: distância entre diodos no suporte Tv: tamanho do passo do suporte Th e Tv definem a resolução espacial L: profundidade de cor ou resolução de contraste Resolução espacial: pontos por polegada (dot per inch, dpi) (1 ponto = 1 sensor em scanner monocromático, 3 sensores em scanners RGB) 1 pol = 2,54 cm.
  • 87. Scanners Ex: 300 x 300 dpi, digitalização de formato carta(8,5 x 11’’), no máximo: 8,5x300=2550 diodos (mono) ou 3x2550=7650 diodos (cor) Aumentar resolução vertical sem aumentar o número de sensores
  • 88. Scanners N pontos/polegada Movimento do braço: ... M passos/polegada
  • 90. Câmeras Digitais Sensor de imagem: matriz de diodos fotosensíveis cobertos por filtros R, G e B Diodos produzem carga elétrica proporcional à intensidade da luz refletida pelo objeto Resolução espacial de câmeras: número de pontos (ou pixels), RxC (1 ponto = 3 sensores)
  • 91. Câmeras Digitais Exemplo: Sony DSC V1: 1944 x 2592 pixels = 5Mpixels. Digitalizar papel em formato carta com imagem da folha ocupando todo o sensor. Resolução (em dpi)? Comparar com scanner de 300 x 300 dpi, em qualidade, número de sensores e preço. Comparar com scanner de 2400 x 2400 dpi.
  • 92. Câmeras Digitais Solução: 1944 / 8,5 pol x 2592/11 pol = 228,7 dpi x = 235,6 dpi Resolução espacial pior que scanner de 300 x 300 dpi, com 1944 x 2592 x 3 / 7650 = 1976 vezes mais sensores, 10 a 20 vezes mais caro, aberrações geométricas e de cor, etc. Câmeras digitais têm escopo de aplicação maior e são mais rápidas Scanner de 2400 x 2400 dpi = câmera de 500 Mpixels!
  • 93. Dispositivos Gráficos Exemplo: câmera digital, 3000 x 2000 pontos (6 Mpixels), impressa em formato 15x10 cm, com o mesmo no. de pontos. Qual a resolução (dpi) no papel?
  • 94. Dispositivos Gráficos Exemplo: câmera digital, 3000 x 2000 pontos (6 Mpixels). Imprimir em formato 15x10 cm, com o mesmo no. de pontos. Qual a resolução (dpi) no papel? 3,94 x 5,91 pol. Resolução (dpi): 3000/5,91 = 2000/3,94 = 507x507 dpi
  • 95. Dispositivos Gráficos Ex: foto 10x15cm, scanneada a 1200x1200 dpi, 24 bits/pixel. Tamanho em bytes? Dimensões impressa em 1440x1440 dpi? Dimensões impressa em 720 x 720 dpi? Dimensões em tela de 14 pol., resolução 1024x768? Resolução em dpi da tela? Dimensões em tela de 17 pol., resolução 1024x768? Resolução em dpi da tela?
  • 96. Dispositivos Gráficos Solução: Foto 10x15cm = 3,94 x 5,91 pol. Tamanho em bytes: 3,94x1200 x 5,91x1200 pixels x 3 bytes/pixel = 4728 x 7092 x 3 = 100 milhões de bytes (96 MB) Dimensões (pol) em impressora de 1440x1440 dpi: 4728/1440 x 7092/1440 = 3,3 x 4,9 pol. Dimensões (pol.) em impressora de 720 x 720 dpi = 6,6 x 9,9 pol
  • 97. Dispositivos Gráficos Solução: Dimensões em tela de 14 pol., em resolução de 1024x768 pontos? Resolução em dpi da tela? x2 + y2 = 142 x/y = 3/4 x = 8,4 pol; y = 11,2 pol. Res. = 1024/11,2 x 768/8,4 = 91,4 x 91,4 dpi. Dimensões = 4728 / 91,4 x 7092 / 91,4 =51,73 x 77,59 pol = 131,39 x 197,09cm (apenas parte da imagem será visível)
  • 98. Dispositivos Gráficos Solução: Dimensões em tela de 17 pol., em resolução de 1024x768 pontos? Resolução em dpi da tela? y = 13,6 pol; x = 10,2 pol Res. = 1024/13,6 x 768/10,2 = 75,3 x 75, 3 dpi (pior que no monitor de 14 pol) Dimensões = 4728 / 75,3,4 x 7092 / 75,3 =62,79 x 94,18 pol = 159,49 x 239,22cm (apenas parte da imagem será visível)
  • 99. Câmeras Digitais ... ...
  • 100. Monitor CRT A e C: Placas aceleradoras e defletoras D: tela com pontos de fósforos RGB F: Máscara de sombra ou grade de abertura
  • 103. Monitor RGB Linha 0 Linha 1 Linha R-1
  • 104. Operações com Imagens Espaço / freqüência Locais / pontuais Unárias / binárias / ... / n-árias
  • 105. Operações n-árias Operação T sobre n imagens, f1, f2, ..., fn, produzindo imagem de saída g g = T[f1, f2, ..., fn] Operações binárias: n = 2 Operações unárias ou filtros: n = 1 g = T[f]
  • 106. Operações Pontuais g(i, j) depende do valor do pixel em (i’, j’) das imagens de entrada Se (i, j) = (i’, j’) e operação unária:s = T(r) r, s: nível de cinza de f e g em (i, j) s s (0,0) m r (0,0) m r
  • 107. Operações Pontuais s s L-1 L-1 (r2, s2) (r1, s1) (0,0) L-1 r (0,0) L-1 r
  • 108. Operações Locais g(i, j) depende dos valores dos pixels das imagens de entrada em uma vizinhança de (i’, j’) f g j j i i Vizinhança de (i, j)
  • 109. Operações Locais Exemplo: Filtro “Média” 1 g (i, j ) = [ f (i − 1, j − 1) + f (i − 1, j ) + f (i − 1, j + 1) + 9 + f (i, j − 1) + f (i, j ) + f (i, j + 1) + + f (i + 1, j − 1) + f (i + 1, j ) + f (i + 1, j + 1)] Operação sobre pixels da imagem original: resultado do filtro em um dado pixel não altera o resultado em outros pixels. Primeira e última coluna/linha?
  • 110. Filtros de suavização Média, Moda, Mediana, Gaussiano... Vizinhança m x n
  • 115. Filtros de aguçamento e detecção de bordas Efeito contrário ao de suavização: acentuam variações de intensidade entre pixels adjacentes. Baseados no gradiente de funções bidimensionais. Gradiente de f(x, y): ⎡ ∂f ⎤ ⎢ ∂x ⎥ ⎡ ∂f2 2 ⎤1 / 2 ⎛ ∂f ⎞ G[f(x, y)] = ⎢ ⎥ ⎢⎛ ⎞ + ⎜ ⎟ ⎥ G[ f ( x, y )] = ⎜ ⎟ ⎜ ∂y ⎟ ⎢ ⎥ ⎢⎝ ∂x ⎠ ⎝ ⎠ ⎥ ⎢ ∂f ⎥ ⎣ ⎦ ⎢ ⎥ ⎣ ∂y ⎦
  • 116. Filtros de detecção de bordas g(i, j): aproximação discreta do módulo do vetor gradiente em f(i, j). Aproximações usuais: g(i, j) = {[f(i,j)-f(i+1,j)]2 + [f(i,j)-f(i,j+1)]2}1/2 g(i, j) = |f(i,j)-f(i+1,j)| + |f(i,j)-f(i,j+1)| Gradiente de Roberts: g(i,j) = {[f(i,j)-f(i+1,j+1)]2+[f(i+1,j)-f(i,j+1)]2}1/2 g(i, j) = |f(i,j)-f(i+1,j+1)| + |f(i+1,j)-f(i,j+1)|
  • 117. Filtros de detecção de bordas Gradiente de Prewitt: g(i, j) = |f(i+1,j-1) + f(i+1, j) + f(i+1, j+1) - f(i-1, j-1) - f(i-1, j) - f(i-1, j+1)| +|f(i-1, j+1) + f(i, j+1) + f(i+1, j+1) - f(i-1, j-1) - f(i, j-1) - f(i+1, j-1)| Gradiente de Sobel: g(i, j) = |f(i+1, j-1) + 2f(i+1, j) + f(i+1, j+1) - f(i-1, j-1) - 2f(i-1, j) - f(i-1, j+1)| + |f(i-1, j+1) + f(i, j+1) + f(i+1, j+1) - f(i-1, j-1) - 2f(i, j-1) - f(i+1, j-1)|
  • 118. Gradiente de Roberts Limiares 15, 30 e 60
  • 119. Processamento de Histograma Se o nível de cinza l ocorre nl vezes em imagem com n pixels, então nl P (l ) = n Histograma da imagem é uma representação gráfica de nl ou P(l)
  • 120. Histograma Histograma nl Imagem 7 6 1 0 0 3 3 5 4 0 0 3 3 3 3 1 1 1 3 3 2 1 0 0 1 2 3 l Imagem 3 x 5 (L = 4) e seu histograma
  • 121. Histograma O histograma representa a distribuição estatística de níveis de cinza de uma imagem nl nl nl 0 255 l 0 255 l 0 255 l
  • 122. Histograma 10000 8000 6000 4000 2000 0 0 50 100 150 200 250
  • 123. Histograma 1500 1000 500 0 0 50 100 150 200 250
  • 124. Expansão de Histograma Quando uma faixa reduzida de níveis de cinza é utilizada, a expansão de histograma pode produzir uma imagem mais rica. nl nl nl A B C l l l m0=0 m1 L-1 0 m0 m1 L-1 0 m0 m1=L-1
  • 125. Expansão de Histograma Quando uma faixa reduzida de níveis de cinza é utilizada, a expansão de histograma pode produzir uma imagem mais rica: ⎛ r − rmin ⎞ s = T ( r ) = round ⎜ ⎜r ( L − 1) ⎟ ⎟ ⎝ max − rmin ⎠
  • 126. Expansão de Histograma 1500 1000 500 0 0 50 100 150 200 250 1500 1000 500 0 0 50 100 150 200 250
  • 127. Expansão de Histograma Expansão é ineficaz nos seguintes casos: nl A nl B nl C 0 L-1 L-1 l 0 m0 m1 L-1 l 0 L-1 l
  • 128. Equalização de Histograma Se a imagem apresenta pixels de valor 0 e L-1 (ou próximos a esses extremos) a expansão de histograma é ineficaz. Nestas situações a equalização de histograma pode produzir bons resultados. O objetivo da equalização de histograma é gerar uma imagem com uma distribuição de níveis de cinza uniforme.
  • 129. Equalização de Histograma ⎛ L −1 r ⎞ s = T (r ) = round ⎜ ∑ nl ⎟ ⎝ RC l =0 ⎠ 1500 1000 500 0 0 50 100 150 200 250 1500 1000 500 0 0 50 100 150 200 250
  • 130. Equalização de Histograma Exemplo: imagem 64 x 64, L = 8 nl l nl 0 790 1200 1 1023 1000 2 850 800 3 656 600 4 329 400 5 245 200 6 122 0 7 81 0 1 2 3 4 5 6 7 l
  • 131. Equalização de Histograma Exemplo (cont.): r=0 s = round(790 x 7 / 4096) =1 r=1 s = round(1813 x 7 / 4096) =3 r=2 s = round(2663 x 7 / 4096) =5 r=3 s = round(3319 x 7 / 4096) =6 r=4 s = round(3648 x 7 / 4096) =6 r=5 s = round(3893 x 7 / 4096) =7 r=6 s = round(4015 x 7 / 4096) =7 r=7 s = round(4096 x 7 / 4096) =7
  • 132. Equalização de Histograma Exemplo: imagem 64 x 64, L = 8 l nl nk 0 0 1200 1 790 1000 2 0 800 3 1023 600 4 0 400 5 850 200 6 985 0 7 448 0 1 2 3 4 5 6 7 k
  • 133. Equalização de Histograma nl Hist. Original nl Hist. Equal. (Ideal) nl Hist. Equal. (Real) 0 L-1 L-1 l 0 m0 m1 L-1 l 0 L-1 l
  • 134. Equalização de Histograma Expansão de histograma é pontual ou local? E equalização de histograma? O que ocorre quando uma imagem com um único nível passa pela operação de equalização de histograma? Melhor fazer equalização seguido por expansão de histograma, o inverso, ou a ordem não importa?
  • 135. Equalização de Histograma Local Para cada locação (i,j) de f • Calcular histograma na vizinhança de (i,j) • Calcular s = T(r) para equalização de histograma na vizinhança • G(i,j) = s
  • 136. Controle de contraste adaptativo ⎧ c ⎪μ (i, j ) + [ f (i, j ) − μ (i, j )];σ (i, j ) ≠ 0 g (i, j ) = ⎨ σ (i, j ) ⎪ f (i, j );σ (i, j ) = 0 ⎩
  • 138. Filtros baseados na função gaussiana Função gaussiana: Derivada: Derivada segunda:
  • 139. Filtros baseados na função gaussiana Gaussiana, derivada e derivada segunda
  • 140. Filtros baseados na função gaussiana A máscara é construída pela amostragem de G(x), G’(x) e G’’(x) x = -5σ, ...-2, -1, 0, 1, 2..., 5σ
  • 141. Filtros gaussianos bidimensionais Com r = sqrt(x2 + y2)
  • 142. Pseudo-cor Nível de R G B cinza 0 15 20 30 1 15 25 40 ... L-1 200 0 0
  • 143. Outros filtros: Curtose, máximo, mínimo etc. Filtros de suavização + filtros de aguçamento Laplaciano do Gaussiano (LoG) “Emboss” Aumento de saturação Correção de gama ...
  • 144. Filtros Lineares e Invariantes ao Deslocamento Filtro linear: T [af1 + bf2] = aT [f1] + bT [f2] para constantes arbitrárias a e b. Filtro invariante ao deslocamento: Se g[i, j] = T [f[i, j]] então g[i - a, j – b] = T [f[i - a, j – b]]. Se i e j são coordenadas espaciais: filtros espacialmente invariantes.
  • 145. Convolução Convolução de s(t) e h(t): ∞ ∫ g (t ) = s (t ) * h (t ) = s(τ )h(t − τ )dτ −∞
  • 146. Convolução ∞ g (t ) = s (t ) * h (t ) = ∫ s(τ )h(t − τ )dτ −∞ h(τ ) s(t) (0,0) τ t0 t1 t 0 t2 t3 h (t − τ ) h ( −τ ) -t3 -t2 0 τ -t3+t -t2+t τ
  • 147. Convolução Observe que g(t) = 0 para t ∉ [t0 + t2 , t1 + t3 ]
  • 148. Convolução Discreta Linear Convolução linear entre s[n] e h[n] ∞ g[n ] = s[n ] * h[n ] = ∑ s[τ ]h[n − τ ] τ = −∞ Se s[n] e h[n] têm N0 e N1 amostras, respectivamente => extensão com zeros: N −1 g[n ] = s[n ] * h[n ] = ∑ s[τ ]h[n − τ ] τ =0 com N = N0 + N1 – 1.
  • 149. Convolução Discreta Linear 6 s (τ ) 6 h(τ ) 4 4 2 2 0 1 2 3 4 5 6 τ 0 1 2 3 4 5 τ 6 h(−τ ) 6 h( n − τ ) 4 4 2 2 -5 -4 -3 -2 -1 0 1 τ τ n
  • 150. Convolução Discreta Linear 6 s (τ ) 4 2 0 1 2 3 4 5 6 τ 6 h(−τ ) 4 g[0] = 3 2 -5 -4 -3 -2 -1 0 1 τ
  • 151. Convolução Discreta Linear 6 s (τ ) 4 2 0 1 2 3 4 5 6 τ 6 h(1 − τ ) 4 g[0] = 3 2 g[1] = 8 -5 -4 -3 -2 -1 0 1 τ
  • 152. Convolução Discreta Linear 6 s[n] 6 h[n] 4 4 2 2 0 1 2 3 4 5 6 n 0 1 2 3 4 5 n 30 g[n] = s[n]* h[n] 20 10 0 1 2 3 4 5 6 7 8 9 10 11 n
  • 153. Convolução Discreta Linear s[n] Filtro g[n] h[n] ∞ g[n ] = s[n ] * h[n ] = ∑ s[τ ]h[n − τ ] τ = −∞
  • 154. Impulso Unitário Delta de Dirac ou δ(t) impulso unitário 1 contínuo Duração = 0 Área = 1 0 t δ[n] Delta de Kronecker ou impulso unitário 1 discreto 0 n
  • 155. Sinais = somatório de impulsos Delta de Kronecker Aδ[n-n0] A 0 n0 n s[n] = s[0]δ [n] + s[1]δ [n − 1] + .... + s[ N − 1]δ [n − ( N − 1)] N −1 s[n] = ∑ s[τ ]δ [n − τ ] τ =0
  • 156. Resposta ao impulso Resposta de um filtro a s[n]: N −1 N −1 g[ n] = ∑ s[τ ]h[n − τ ] = ∑ h[τ ]s[n − τ ] τ =0 τ =0 Resposta de um filtro ao impulso N −1 N −1 g[ n ] = ∑δ [τ ]h[n − τ ] = ∑δ [n − τ ]h[τ ] τ =0 τ =0 N −1 h[n] = ∑δ [n − τ ]h[τ ] τ =0
  • 157. Resposta ao impulso h[n]: Resposta ao impulso Máscara convolucional Kernel do filtro Vetor de coeficientes do filtro
  • 158. Filtros FIR Finite Impulse Response N −1 y[n] = ∑ ak x[n − k ] k =0 ak = h[k ]
  • 159. Filtros IIR Infinite Impulse Response N −1 M −1 y[n] = ∑ ak x[n − k ] − ∑ bk y[n − k ] k =0 k =1 Filtros recursivos
  • 160. Filtros IIR (exemplo) Encontre a resposta ao impulso do seguinte sistema recursivo. Supor que o sistema está originalmente relaxado (y[n] = 0 para n < 0) y[n] = x[n] - x[n-1] – 0,5y[n-1]
  • 161. Filtros IIR (exemplo) Exemplo: y[n] = x[n] - x[n-1] – 0,5y[n-1] y[0] = delta[0]–delta[-1]–0,5y[-1] = 1 y[1] = delta[1]–delta[0]–0,5y[0] = -1,5 y[2] = delta[2]–delta[1]–0,5y[1] = 0,75 y[3]= delta[3]–delta[2]–0,5y[2] = -0,325 y[n] = -0,5y[n-1], n > 1
  • 162. Filtros IIR (exemplo 2) Exemplo: encontre a resposta ao impulso do seguinte sistema recursivo. Supor que o sistema está originalmente relaxado (y[n] = 0 para n < 0) y[n] - y[n-1] = x[n] - x[n-4]
  • 163. Filtros IIR (exemplo 2) Exemplo (Solução) y[n] = y[n-1] + x[n] - x[n-4] y[0] = y[-1] + delta[0] - delta[-4] = 1 y[1] = y[0] + delta[1] - delta[-3] = 1 y[2] = y[1] + delta[2] - delta[-2] = 1 y[3] = y[2] + delta[3] - delta[-1] = 1 y[4] = y[3] + delta[4] - delta[0] = 0 y[5] = y[4] + delta[5] - delta[1] = 0 y[6] = y[7] = ... = 0
  • 164. Convolução Discreta Circular Sinais s[n] e h[n] com N0 e N1 amostras, respectivamente => extensão com zeros: ⎧ s[n ], 0 ≤ n < N 0 ⎧h[n ], 0 ≤ n < N 1 s e [n ] = ⎨ he [n ] = ⎨ ⎩0, N 0 ≤ n < N ⎩0, N 1 ≤ n < N Extensão periódica: considera-se que se[n] e he[n] são períodos de sp[n] e hp[n] Convolução circular: N −1 g p [n] = s[n] ⊗ h[n] = ∑ s p [τ ]h p [n − τ ] τ =0
  • 165. Convolução Circular x Linear Fazendo-se N = N0 + N1 – 1 s[n ] ⊗ h[n ] = s[n ] * h[n ]
  • 166. Convolução de Imagens f[i, j] (R0xC0) e h[i, j] (R1xC1): extensão por zeros R −1 C −1 g[i, j ] = f [i, j ] * h[i, j ] = ∑ ∑ f [α , β ]h[i − α , j − β ] α =0 β =0 R −1 C −1 g p [i, j ] = f [i, j ] ⊗ h[i, j ] = ∑ ∑ f p [α , β ]h p [i − α , j − β ] α =0 β =0 Iguais se R=R0+R1–1 e C=C0+C1–1
  • 167. Máscaras Convolucionais 1 1 1 1 0 -1 -1 -1 -1 0 0 0 1 0 -1 -1 8 -1 -1 -1 -1 1 0 -1 -1 -1 -1 1/9 1/9 1/9 0.025 0.1 0.025 1/9 1/9 1/9 0.1 0.5 0.1 1/9 1/9 1/9 0.025 0.1 0.025
  • 168. Operador de Bordas de Kirsch 5 5 5 -3 5 5 -3 -3 5 -3 0 -3 -3 0 5 -3 0 5 -3 -3 -3 -3 -3 -3 -3 -3 5 -3 -3 -3 -3 -3 -3 ... -3 0 5 -3 0 -3 -3 5 5 5 5 5 Filtragem sucessiva com cada máscara Pixel de saída recebe o valor máximo
  • 169. Máscaras Convolucionais Em geral: Máscaras de integração somam para 1 Máscaras de diferenciação somam para 0
  • 170. Transformada z Transformada z de x[n]: ∞ Z {x[n]} = X [ z ] = ∑ x[n] z − n n =−∞ z: variável complexa
  • 171. Propriedades da Transformada z Linearidade: Se x[n] = ax1[n] + bx2[n], (a e b: constantes arbitrárias), então: X [ z ] = aX 1[ z ] + bX 2 [ z ]
  • 172. Propriedades da Transformada z Deslocamento: Z{x[n+k]} = zkX[z], k inteiro Prova: ∞ Z {x[n + k ]} = ∑ x[n + k ]z − n n = −∞ Fazendo m = n+k: ∞ ∞ Z {x[n + k ]} = ∑ x[m]z − ( n − k ) = z k ∑ x[m]z − n = z k X [ z ] m = −∞ m = −∞
  • 173. Propriedades da Transformada z Convolução: ∞ y[n] = h[n] * x[n] = ∑ h[k ]x[n − k ] <=> Y [ z ] = H [ z ] X [ z ] k = −∞ Se h[n] é a resposta ao impulso de um filtro, H[z] é a função de transferência do filtro
  • 174. Propriedades da Transformada z Convolução (Prova) ∞ ⎡ ∞ ⎤ −n Z {h[n] * x[n]} = ∑ ⎢ ∑ h[k ]x[n − k ]⎥ z n = −∞ ⎢ k = −∞ ⎣ ⎥ ⎦ ∞ ∞ = ∑ ∑ h[k ]x[n − k ]z − n k = −∞ n = −∞ ∞ ∞ −k = ∑ h[k ]z ∑ x[n]z − n k = −∞ n = −∞ = H [ z]X [ z]
  • 175. Função de Transferência Equação de diferenças de um filtro N −1 M −1 y[n] = ∑ ak x[n − k ] − ∑ bk y[n − k ] k =0 k =1 M −1 N −1 ∑ bk y[n − k ] = ∑ ak x[n − k ] k =0 k =0 b0 = 1
  • 176. Função de Transferência Transformada Z da Equação de diferenças ⎧M −1 ⎪ ⎫ ⎪ ⎧ N −1 ⎪ ⎫ ⎪ Z ⎨ ∑ bk y[n − k ]⎬ = Z ⎨ ∑ a k x[n − k ]⎬ ⎪ k =0 ⎩ ⎪ ⎭ ⎪k =0 ⎩ ⎪ ⎭ M −1 N −1 ∑ bk Z{ y[n − k ]} = ∑ ak Z{ x[n − k ]} k =0 k =0 M −1 N −1 ∑ bk z − k Y [ z ] = ∑ ak z − k X [z ] k =0 k =0
  • 177. Função de Transferência Aplicando a transformada z em ambos os lados e simplificando: N −1 ∑ ak z − k Y [ z] k =0 H [ z] = = X [ z] M −1 1+ ∑ bk z − k k =1 Pólos: raízes do denominador Zeros: raízes do numerador Pólos e zeros: estabilidade
  • 178. Função de Transferência BIBO: Bounded-input, bounded- output Sistemas BIBO-estáveis: sistemas causais tais que: ∞ ∑ | h[k ] | < ∞ k =0
  • 179. Estimação da Resposta em Freqüência Resposta em freq. a partir de H[z] ∞ H [ z] = ∑ h[n]z − n n = −∞ ∞ H [ e jω ] = ∑ h[n]e − jnω , 0 ≤ ω ≤ 2π n = −∞ Comparar com N −1 j 2πun 1 − F [u ] = N ∑ s[n ]e N n =0
  • 180. Estimação da Resposta em Freqüência Exemplo: encontre a resposta em freqüência do filtro y[n] = (x[n] + x[n-1])/2 utilizando a transformada Z Y[z] = (X[z] + z-1X[z] )/2 = X[z](1+z-1)/2 H[z] = (1+z-1)/2 H[ejw] = (1+e-jw)/2 = e-jw/2 (ejw/2 + e-jw/2)/2 = e-jw/2cos(w/2) |H[ejw]| = cos(w/2), -pi< w < pi
  • 181. Estimação da Resposta em Freqüência Exemplo: encontre a resposta em freqüência do filtro y[n] = (x[n] - x[n-1])/2 utilizando a transformada Z Y[z] = (X[z] - z-1X[z] )/2 = X[z](1-z-1)/2 H[z] = (1-z-1)/2 H[ejw] = (1-e-jw)/2 = e-jw/2 (ejw/2 - e-jw/2)/2 = je-jw/2sen(w/2) |H[ejw]| = |sen(w/2)|, -pi< w < pi
  • 182. Correlação Convolução: ∞ g[n ] = s[n ] * h[n ] = ∑ s[τ ]h[n − τ ] τ = −∞ Correlação: ∞ g[n] = s[n] o h[n] = ∑ s[τ ]h[τ − n] τ = −∞ Quando um dos sinais é par, correlação = convolução
  • 183. Correlação Exemplo: h[-1] = 3; h[0] = 7; h[1] = 5; s[0..15] = {3, 2, 4, 1, 3, 8, 4, 0, 3, 8, 0, 7, 7, 7, 1, 2} Extensão com zeros
  • 184. Correlação Exemplo: g[−1] = s[0]h[1] = 15 1 g[0] = ∑ s[τ ]h[τ ] = s[0]h[0] + s[1]h[1] = 31 τ =0 2 g[1] = ∑ s[τ ]h[τ − 1] = s[0]h[−1] + s[1]h[0] + s[2]h[1] = 43 τ =0 3 g[2] = ∑ s[τ ]h[τ − 2] = s[1]h[−1] + s[2]h[0] + s[3]h[1] = 39 τ =1 ...
  • 185. Correlação Exemplo: g[0..15] = 31, 43, 39, 34, 64, 85, 52, 27, 61, 65, 59, 84, 105, 75, 38, 27 Observe que g[5] é elevado, pois é obtido centrando h em s[5] e calculando a correlação entre (3, 7, 5) e (3, 8, 4) Mas g[12] é ainda maior, devido aos valores elevados de s[11..13]
  • 186. Correlação Normalizada A correlação normalizada elimina a dependência dos valores absolutos dos sinais: ∞ ∑ s[τ ]h[τ − n] g[n] = s[n] • h[n] = τ = −∞ ∞ ∞ ∑ ( s[τ ]) 2 ∑ (h[τ − n]) 2 τ = −∞ τ = −∞
  • 187. Correlação Normalizada Resultado para o exemplo anterior: g[0..15] = .??? .877 .934 .73 .81 .989 .64 .59 .78 .835 .61 .931 .95 .83 .57 .??? Valor máximo: g[5]
  • 189. Detecção e estimação Gaivota, “filtro casado” (olho) e imagem de correlação normalizada (máximo no olho) Fonte: http://www.dca.fee.unicamp.br/dipcourse/html-dip/c6/s5/front-page.html
  • 190. Estimação Espectral O cálculo direto do espectro de amplitudes e fases não é fidedigno O espectro pode variar muito em diferentes seções de um mesmo sinal. Variância é um indicador de qualidade O problema pode ser causado por ruído, escassez de dados, comportamento não estacionário etc.
  • 191. Periodograma O quadrado do módulo do espectro de amplitudes: densidade espectral de potência (PSD), ou espectro de potência Periodograma: dividir sinal em K seções adjacentes (com ou sem intersecção) de mesmo tamanho; obter PSD de cada seção; obter média das PSDs Variância se reduz por fator K1/2 Resolução espectral diminui
  • 192. Janelamento (windowing) Todo sinal discreto obtido a partir de um sinal analógico é resultado da multiplicação de um sinal discreto de duração infinita por um pulso, ou janela, retangular: ⎧1 0 ≤ n < N wn = ⎨ ⎩0 caso contrário
  • 193. Janelamento (windowing) A janela retangular pode gerar grandes descontinuidades na forma de onda original
  • 194. Janelamento (windowing) Multiplicação no tempo equivale a convolução na freqüência (Fourier) DFT da janela retangular: função sinc (sine cardinal, kernel de Dirichlet, função de amostragem): ⎧1 x=0 ⎪ sinc( x) = ⎨ sen x ⎪ x caso contrário ⎩
  • 195. Janelamento (windowing) A convolução com um sinc introduz distorções no espectro Janelas mais “suaves” reduzem estas distorções, mas distorcem mais as amostras centrais-> Compromisso Dezenas dessas janelas tem sido avaliadas e utilizadas em diversas aplicações
  • 196. Janela de Hamming ⎧ ⎛ 2πn ⎞ ⎪0,54 − 0,46 cos⎜ ⎟ 0≤n<N wn = ⎨ ⎝ N −1⎠ ⎪0 caso contrário ⎩
  • 197. Janela de Hamming Seno multiplicado por janela retangular e de Hamming
  • 198. Janela de Hamming DFT de seno multiplicado por janela retangular e de Hamming
  • 199. Outras Janelas Blackman-Harris, Dolph-Chebyshev, Kaiser-Bessel (superiores?) Tukey, Poisson, Hanning etc
  • 200. Dissolve Cruzado ht (i, j)= (1 - t) f(i, j) + t g(i, j) t é um escalar no intervalo [0, 1]
  • 201. Dissolve Cruzado t = 0,3 t = 0,5 t = 0,7
  • 202. Dissolve Cruzado Não- Uniforme ht(i, j)= [1 - t(i, j)] f(i, j) + t(i, j) g(i, j) t é uma matriz com as mesmas dimensões de f e g cujos elementos assumem valores no intervalo [0, 1]
  • 204. Detecção de Movimento ⎧L − 1, se | f1 − f 2 |≥ Lt g=⎨ ⎩0, caso contrario f1 f2 g
  • 205. Redução de Ruído por Média de Imagens f[i, j] imagem sem ruído nk(i, j) ruído de média m gk[i,j] = f[i,j] + nk(i,j) M 1 g [i, j ] = ∑ M k =1 g k [i, j ]
  • 206. Redução de Ruído por Média de Imagens M 1 g [i, j ] = ∑ M k =1 ( f [i, j ] + nk (i, j )) M 1 g [i, j ] = f [i, j ] + ∑ M k =1 nk (i, j ) Para M grande: g [i, j ] = f [i, j ] + m
  • 207. Operações Topológicas Rígidas Translação Rebatimento Rotação Mudança de Escala Não rígidas (Warping)
  • 208. Rotação Rotação em torno de (ic, jc) i ' = (i − ic ) cosθ − ( j − jc ) sen θ + ic j ' = (i − ic ) sen θ + ( j − jc ) cosθ + jc
  • 209. Rotação e Rebatimento Imagem original Rebatimento pela Rotação de 90 diagonal graus em torno de (R/2,C/2)
  • 210. Ampliação (Zoom in) Por replicação de pixels Original Ampliação por fator 3 10 10 10 10 10 10 10 10 20 30 10 10 10 10 10 10 10 10 10 10 10 10 20 20 20 30 30 30 20 20 20 30 30 30 20 20 20 30 30 30
  • 211. Ampliação (Zoom in) Por interpolação bilinear Original Ampliação por fator 3 10 10 10 10 10 10 10 10 20 30 Interpolação nas linhas Passos de níveis de cinza: 20 23 27 30 33 37 10 a 10: 0 20 a 30: (30-20)/3 = 3,3
  • 212. Ampliação (Zoom in) Por interpolação bilinear Original Ampliação por fator 3 10 10 10 10 10 10 10 10 20 30 13 14 16 17 18 19 Interpolação nas colunas 17 19 21 23 25 28 Passos de níveis de cinza: 20 23 27 30 33 37 10 a 20: (20-10)/3 = 3,3 10 a 23: (23-10)/3 = 4,3 23 27 33 37 41 46 10 a 27: (27-10)/3 = 5,7 27 32 38 43 48 55 ...
  • 213. Ampliação (Zoom in) Exemplo: Ampliação por fator 10 Original Replicação Interpolação
  • 214. Redução (Zoom out) Por eliminação de pixel Por Média Original Redução por fator 3 10 10 10 10 10 10 14 18 13 14 16 17 18 19 28 41 17 19 21 23 25 28 20 23 27 30 33 37 23 27 33 37 41 46 27 32 38 43 48 55
  • 215. Reconstrução de Imagens Zoom por fatores não inteiros Ex: F = 3,75432 Operações elásticas, etc. Técnicas mais avançadas devem ser utilizadas Uma dessas técnicas é a reconstrução de imagens
  • 216. Reconstrução de imagens Dados f(i,j), f(i,j+1), f(i+1,j), f(i+1,j+1) (i, j) (i, y) (i, j+1) Reconstrução: Encontrar f(x,y), (x,y) x em [i, i+1] y em [j, j+1] (i+1, j) (i+1, y) (i+1, j+1)
  • 217. Reconstrução de imagens por interpolação bilinear f(i, y) = f(i, j)+(y–j)[f(i, j+1)-f(i, j)] f(i+1,y)=f(i+1,j)+(y–j)[f(i+1,j+1)-f(i+1, j)] f(x, y) = f(i, y) + (x – i) [f(i+1, y) - f(i, y)] (i, j) (i, y) (i, j+1) (x,y) (i+1, j) (i+1, y) (i+1, j+1)
  • 218. Reconstrução de imagens Ex: f(10.5, 15.2)=? f(10, 15) = 10; f(10, 16) = 20; f(11,15) = 30; f(11, 16) = 30
  • 219. Reconstrução de imagens Solução: x = 10.5; y = 15.2 => i = 10; j = 15 f(i, y) = f(i, j)+(y–j)[f(i, j+1)-f(i, j)] f(10, 15.2)=f(10,15)+(15.2-15)*[f(10,16)-f(10,15) = 10 + 0.2*[20 – 10] = 12 f(i+1,y)=f(i+1,j)+(y–j)[f(i+1,j+1)-f(i+1, j)] f(11, 15.2)=f(11,15)+(15.2-15)*[f(11,16)-f(11,15) =30 + 0.2*[30 – 30] = 30 f(x, y) = f(i, y) + (x–i) [f(i+1, y) - f(i, y)] f(10.5, 15.2)=12+(10.5-10)*[30-12] =21
  • 220. Zoom por reconstrução de imagens Ex: Ampliação por fator 2.3 Passo para as coordenadas: 1/2.3 = 0.43 x = 0, 0.43, 0. 87, 1.30, 1.74, 2.17, 2.61, 3.04... y = 0, 0.43, 0. 87, 1.30, 1.74, 2.17, 2.61, 3.04... g(0,0) = f(0,0); g(0,1) = f(0, 0.43); g(0,2) = f(0, 0.87); g(0,3) = f(0, 1.30);... Ex: Redução por fator 2.3 x = 0, 2.3, 4.6, 6.9, 9.2, 11.5, 13.8... y = 0, 2.3, 4.6, 6.9, 9.2, 11.5, 13.8... g(0,0) = f(0,0); g(0,1) = f(0, 2.3); g(0,2) = f(0, 4.6); g(0,3) = f(0,6.9);...
  • 221. Operações Topológicas Não Rígidas (warping) Warping = distorção Zoom por fator F(i, j) Rotação por ângulo teta(i,j) Translação com deslocamento d(i,j) Warping especificado pelo usuário
  • 222. Warping baseado em Campos Entretenimento Efeitos especiais Correção de distorções óticas Alinhamento de elementos da imagens (registro) Morphing Modelagem e visualização de deformações físicas
  • 223. Warping baseado em Campos 1. Características importantes da imagem são marcados por segmentos de reta orientados (vetores de referência) 2. Para cada vetor de referência, um vetor alvo é especificado, indicando a transformação que se pretende realizar
  • 224. Warping baseado em Campos 3. Para cada par de vetores referência-alvo, encontra-se o ponto X’ para onde um ponto X da imagem deve migrar, de forma que as relações espaciais entre X’ e o vetor alvo sejam idênticas àquelas entre X e o vetor de referência 4. Parâmetros para as relações espaciais : u e v
  • 226. Warping baseado em Campos u: representa o deslocamento normalizado de P até O no sentido do vetor PQ (Normalizado: dividido pelo módulo de PQ) v: distância de X à reta suporte de PQ
  • 227. Warping baseado em Campos Se O=P, u = 0 Se O=Q, u = 1 Se O entre P e Q, 0<u<1; Se O após Q, u>1 Se O antes de P, u<0
  • 228. Warping baseado em Campos Encontrar u e v: norma, produto interno, vetores perpendiculares, projeção de um vetor sobre outro. Vetores a = (x1, y1) e b = (x2, y2) Norma de a: || a || = x12 + y12 Produto interno: a.b = x1x2 +y1y2
  • 229. Warping baseado em Campos Norma da projeção de a sobre b: a a.b || c || = || b || b c
  • 230. Warping baseado em Campos Vetores b = (x2, y2) perpendicular a a = (x1, y1) e de norma igual à de a: b a Perpendicularidade: x1x2 +y1y2 = 0 Mesma norma: x22 + y22 = x12 + y12
  • 231. Warping baseado em Campos Soluções: x2 = y1, y2 = -x1 x2 = -y1, y2 = x1 b a b’
  • 232. Warping baseado em Campos Parâmetro u: norma da projeção de PX sobre PQ, dividido pela norma de PQ PX . PQ u= 2 || PQ ||
  • 233. Warping baseado em Campos P = (xp,yp), Q = (xq, yq), X = (x,y) PX .PQ u= 2 || PQ || u = (x - xp).(xq - xp) + (y -yp)(yq – yp) (xq-xp)2 + (yq-yp)2
  • 234. Warping baseado em Campos Parâmetro v: distância de X à reta suporte de PQ PX . ⊥ PQ v= || PQ || ⊥v: vetor perpendicular a v e de mesma norma que este.
  • 235. Warping baseado em Campos PQ = (Xq-Xp, Yq-Yp) ⊥PQ1 = (Yq–Yp, Xp-Xq) ⊥PQ2 = (Yp–Yq, Xq-Xp) Vamos usar ⊥PQ1
  • 236. Warping baseado em Campos Parâmetro v: PX . ⊥ PQ v= || PQ || v = (x-xp)(yq-yp) + (y-yp)(xp–xq) [(xq-xp)2 + (yq-yp)2]
  • 237. Warping baseado em Campos Cálculo de X’: v. ⊥ P' Q' X ' = P '+u.P ' Q '+ || P ' Q ' ||
  • 238. Warping baseado em Campos PX . PQ u= || PQ || 2 PX . ⊥ PQ v= || PQ || v. ⊥ P' Q' X ' = P '+u.P ' Q '+ || P ' Q ' ||
  • 239. Warping baseado em Campos Quando há mais de um par de vetores referência-alvo, cada pixel sofre a influência de todos os pares de vetores Será encontrado um ponto Xi’ diferente para cada par de vetores referência-alvo. Os diferentes pontos para os quais o ponto X da imagem original seria levado por cada par de vetores referência-alvo são combinados por intermédio de uma média ponderada, produzindo o ponto X’ para onde X será efetivamente levado.
  • 241. Warping baseado em Campos Peso da coordenada definida pelo i-ésimo par de vetores de referência-alvo: di: Distância entre X e o segmento PiQi li: ||Pi Qi|| a, b e p : Parâmetros não negativos
  • 242. Warping baseado em Campos Relação inversa com a distância entre a reta e o ponto X Parâmetro a : Aderência ao segmento a = 0 (Peso infinito ou aderência máxima)
  • 243. Warping baseado em Campos Parâmetro p controla a importância do tamanho do segmento p = 0: independe do tamanho do segmento
  • 244. Warping baseado em Campos Parâmetro b controla a forma como a influência decresce em função da distância b = 0: peso independe da distância
  • 245. Warping baseado em Campos Bons resultados são obtidos com: a entre 0 e 1 b=2 p = 0 ou p = 1.
  • 246. Morphing Interpolação de formas e cores entre duas imagens distintas (f0 e fN-1) Encontrar imagens f1, f2, ..., fN-2: transição gradual de f0 a fN-1 Efeitos especiais na publicidade e na indústria cinematográfica; realidade virtual; compressão de vídeo; etc.
  • 248. Morphing Warping de f0 cki f0 fN-1 ai bi “+” Warping de fN-1 cki
  • 249. Morphing ai c1i c2i c3i c4i c5i c6i c7i c8i c9i bi
  • 251. Técnicas no Domínio da Freqüência Conversão ao domínio da freqüência: transformadas Processamento e análise no domínio da freqüência Fourier, Cosseno Discreta, Wavelets, etc.
  • 252. Cosseno Analógico f: freqüência x (t ) = A cos[2πft + θ ] T=1/f: período A θ : fase A: amplitude Gráfico para fase nula e A>0 T
  • 253. Uma Família de Funções Cosseno Analógicas xk (t ) = Ak cos[2πf k t + θ k ], k = 0, 1, ..., N − 1 fk: freqüência do k-ésimo cosseno Tk =1/fk: período do k-ésimo cosseno θ k : fase do k-ésimo cosseno Ak: amplitude do k-ésimo cosseno
  • 254. Uma Família de Funções Cosseno Discretas x k [n ] = Ak cos[2πf k n + θ k ], n = 0,1,...,N − 1 k = 0,1,...N-1
  • 255. Uma Família de Funções Cosseno Discretas 1/ 2 ⎛2⎞ Ak = ⎜ ⎟ ck X k ⎝N⎠ ⎧(1/2)1/2 ⎪ para k = 0 ck =⎨ ⎪1 ⎩ para k = 1, 2, ... N - 1 k 2N kπ fk = Tk = θk = 2N k 2N 1/ 2 ⎛2⎞ ⎡ ( 2n + 1)kπ ⎤ x k [n ] = ⎜ ⎟ c k X k cos ⎢ ⎥, n = 0,1,...,N − 1 ⎝N⎠ ⎣ 2N ⎦
  • 256. Uma Família de Funções Cosseno Discretas 1/ 2 ⎛2⎞ ⎡ ( 2n + 1)kπ ⎤ x k [n ] = ⎜ ⎟ c k X k cos ⎢ ⎥, n = 0,1,...,N − 1 ⎝N⎠ ⎣ 2N ⎦ 1/ 2 1/ 2 ⎧ f0 = 0 ⎛ 2 ⎞ ⎛1⎞ k =0⇒⎨ ⇒ x0 [n ] = ⎜ ⎟ ⎜ ⎟ X 0 , n = 0,1,...,N − 1 ⎩θ 0 = 0 ⎝ N ⎠ ⎝2⎠ 1 k = 1 ⇒ f1 = ⇒ T1 = 2 N (meio-período em N amostras) 2N N −1 2N k = N − 1 ⇒ f N −1 = ⇒ TN −1 = 2N N −1
  • 257. Uma Família de Funções Cosseno Discretas xk[n] (N = 64, Xk = 10). 2 1 0 -1 -2 0 10 20 30 40 50 60 70 k=1 Meio-ciclo
  • 258. Uma Família de Funções Cosseno Discretas 2 1 k=2 0 1 ciclo -1 -2 0 10 20 30 40 50 60 70 2 1 k=3 0 1,5 ciclo -1 -2 0 10 20 30 40 50 60 70
  • 259. Uma Família de Funções Cosseno Discretas 2 k=32 1 16 ciclos 0 -1 -2 0 10 20 30 40 50 60 70 2 1 Para 0 visualização -1 -2 0 10 20 30 40 50 60 70
  • 260. Uma Família de Funções Cosseno Discretas 2 k=63 1 31,5 ciclos 0 -1 -2 0 10 20 30 40 50 60 70 2 1 Para 0 visualização -1 -2 0 10 20 30 40 50 60 70
  • 261. Uma Família de Funções Cosseno Discretas Amostragem de um sinal periódico não necessariamente produz um sinal de mesmo período (ou mesmo periódico).
  • 262. Somando Cossenos Discretos Criar um sinal x[n] somando-se os sinais xk[n], k = 0...N-1, amostra a amostra: N −1 x[n ] = ∑ x k [n ], n =0,1,...,N − 1 k =0 1 / 2 N −1 ⎛2⎞ ⎡ ( 2n + 1)kπ ⎤ x[n ] = ⎜ ⎟ ∑ c k X k cos⎢ 2 N ⎥, n = 0,1,...,N − 1 ⎝N⎠ k =0 ⎣ ⎦
  • 263. Somando Cossenos Discretos Exemplo: N = 8; X0 = 10; X1 = 5; X2 = 8,5; X3 = 2; X4 = 1; X5 = 1,5; X6 = 0; X7 = 0,1. 5 1/ 2 1⎛1⎞ 4 x 0 [n ] = ⎜ ⎟ 10 2⎝2⎠ 3 =3.5355 2 0 2 4 6 8
  • 264. Somando Cossenos Discretos X1 = 5 4 5 ⎡ ( 2n + 1)π ⎤ x1 [n ] = cos⎢ 2 2 ⎣ 16 ⎥ ⎦ 0 =2.4520; 2.0787; 1.3889; -2 0.4877; -0.4877; -1.3889; -4 0 2 4 6 8 -2.0787; -2.4520 6 4 x0[n]+x1[n] 2 0 0 2 4 6 8
  • 265. Somando Cossenos Discretos X2 = 8,5 8.5 ⎡ ( 2n + 1)2π ⎤ x 2 [n ] = 4 cos⎢ ⎥ 2 2 ⎣ 16 ⎦ 0 = 3.9265; 1.6264; -1.6264; -2 -3.9265; -3.9265; -1.626; -4 0 2 4 6 8 1.6264; 3.9265 10 5 x0[n]+x1[n] +x2[n] 0 -5 0 2 4 6 8
  • 266. Somando Cossenos Discretos X3 = 2 1 2 ⎡ ( 2n + 1)3π ⎤ x 3 [n ] = cos⎢ ⎥ 0.5 2 ⎣ 16 ⎦ 0 = 0.8315; -0.1951; -0.9808; -0.5 -0.5556; 0.5556; 0.9808; -1 0 2 4 6 8 0.1951; -0.8315 15 10 5 x0[n]+x1[n]+x2[n]+x3[n] 0 -5 0 2 4 6 8
  • 267. Somando Cossenos Discretos X4 = 1 0.4 1 ⎡ (2n + 1)4π ⎤ x 4 [n ] = cos⎢ ⎥ 0.2 2 ⎣ 16 ⎦ 0 = 0.3536; -0.3536; -0.3536; -0.2 0.3536; 0.3536; -0.3536; -0.4 0 2 4 6 8 -0.3536; 0.3536 15 10 5 x0[n]+x1[n]+x2[n]+x3[n] 0 +x4[n] -5 0 2 4 6 8
  • 268. Somando Cossenos Discretos X5 = 1,5 1 1.5 ⎡ (2n + 1)5π ⎤ x 5 [n ] = cos⎢ ⎥ 0.5 2 ⎣ 16 ⎦ 0 -0.5 = 0.4167 -0.7356 0.1463 0.6236 -0.6236 -0.1463 -1 0 2 4 6 8 0.7356 -0.4167 15 10 5 x0[n]+x1[n]+x2[n]+x3[n] 0 +x4[n]+x5[n] -5 0 2 4 6 8
  • 269. Somando Cossenos Discretos X6 = 0 0 ⎡ ( 2n + 1)6π ⎤ x 6 [n ] = cos⎢ 1 0.5 2 ⎣ 16 ⎥ ⎦ =0 0 -0.5 -1 0 2 4 6 8 15 10 5 x0[n]+x1[n]+x2[n]+x3[n] 0 +x4[n]+x5[n]+x6[n] -5 0 2 4 6 8
  • 270. Somando Cossenos Discretos X7 = 0,1 0.1 ⎡ ( 2n + 1)7π ⎤ x 7 [n ] = 0.05 cos⎢ ⎥ 2 ⎣ 16 ⎦ 0 = 0.0098; -0.0278; 0.0416; -0.0490’; 0.0490; -0.0416; -0.05 0 2 4 6 8 0.0278; -0.0098 15 10 5 x[n]=x0[n]+x1[n]+x2[n]+ 0 x3[n] +x4[n]+x5[n]+x6[n] -5 +x7[n] 0 2 4 6 8
  • 271. Somando Cossenos Discretos X[k] é um sinal digital: X[k]= X0, X1,...XN-1 Exemplo: X[k]=10;5;8.5;2;1;1.5;0;0.1 Dado X[k] pode-se obter x[n] X[k]: representação alternativa para x[n] X[k] x[n] 10 15 10 5 5 0 0 -5 0 2 4 6 8 0 2 4 6 8
  • 272. Somando Cossenos Discretos xk[n]: cosseno componente de x[n], de freqüência fk = k/2N; ou xk[n]: componente de freqüência fk = k/2N; X[k]: Diretamente relacionado com a amplitude da componente de freqüência fk = k/2N X[k] representa a importância da componente de freqüência fk = k/2N
  • 273. Transformada Cosseno Discreta (DCT) DCT de x[n]: 1/ 2 N −1 ⎛2⎞ ⎡ (2n + 1)kπ ⎤ X [k ] = ⎜ ⎟ ck ∑ x[n ] cos⎢ ⎥, k = 0,1,...,N − 1 ⎝N⎠ n =0 ⎣ 2N ⎦ Transformada DCT inversa (IDCT) de X[k]: 1 / 2 N −1 ⎛2⎞ ⎡ (2n + 1)kπ ⎤ x[n ] = ⎜ ⎟ ∑ ck X [k ] cos⎢ 2 N ⎥, n = 0,1,...,N − 1 ⎝N⎠ k =0 ⎣ ⎦
  • 274. Transformada Cosseno Discreta (DCT) X[k]: coeficientes DCT X: representação de x no domínio da freqüência X[0]: coeficiente DC (Direct Current) X[1]...X[N-1]: coeficientes AC (Alternate Current) Complexidade Algoritmos eficientes: FDCT
  • 275. DCT – Exemplo 1 g1 0.1 0 -0.1 -0.2 0 20 40 60 80 100 120 g3 g1 + g3 2 2 1 1 0 0 -1 -1 -2 -2 0 20 40 60 80 100 120 0 20 40 60 80 100 120
  • 276. DCT – Exemplo 1 (Cont.) g10 g 1 +g 3 +g 10 2 2 1 1 0 0 -1 -1 -2 -2 0 20 40 60 80 100 120 0 20 40 60 80 100 120 g118 g1+ g3+ g10+ g118 2 0.1 1 0 0 -0.1 -1 -2 -0.2 0 20 40 60 80 100 120 0 20 40 60 80 100 120
  • 277. DCT – Exemplo 2 60 ⎛ 1 π ⎞ f1[n] = 29.99 cos⎜ 2 π n+ ⎟ 40 ⎝ 2N 2N ⎠ 20 0 -20 -40 -60 0 10 20 30 40 50 60 60 ⎛ 2 π ⎞ 150 f1 + f 2 f 2 [n] = 48.54 cos⎜ 2 π n+ ⎟ 40 ⎝ 2N 2N ⎠ 100 20 50 0 -20 0 -40 -50 -60 - 0 10 20 30 40 50 60 0 10 20 30 40 50 60
  • 278. DCT – Exemplo 2 (Cont.) 60 ⎛ 3 π ⎞ 150 f1 + f 2 + f 3 f 3 [n] = 34.23 cos⎜ 2 π n+ ⎟ 40 ⎝ 2N 2N ⎠ 100 20 50 0 -20 0 -40 -50 -60 - 0 10 20 30 40 50 60 0 10 20 30 40 50 60 60 ⎛ 4 π ⎞ 150 f1 + f 2 + ... + f 4 f 4 [n] = -35.19 cos⎜ 2 π n+ ⎟ 40 ⎝ 2N 2N ⎠ 100 20 50 0 -20 0 -40 -50 -60 - 0 10 20 30 40 50 60 0 10 20 30 40 50 60
  • 279. DCT – Exemplo 2 (Cont.) 150 60 ⎛ 5 π ⎞ f1 + f 2 + ... + f 6 f 5 [n] = -34.55 cos⎜ 2 π n+ ⎟ 40 ⎝ 2N 2N ⎠ 100 20 50 0 0 -20 -50 -40 - -60 0 10 20 30 40 50 60 0 10 20 30 40 50 60 150 60 ⎛ 6 π ⎞ f1 + f 2 + ... + f 6 f 6 [n] = -33.29 cos⎜ 2 π n+ ⎟ 40 ⎝ 2N 2N ⎠ 100 20 50 0 0 -20 -50 -40 -60 - 0 10 20 30 40 50 60 0 10 20 30 40 50 60
  • 280. DCT – Exemplo 2 (Cont.) 200 60 ⎛ 7 π ⎞ f1 + f 2 + ... + f 7 f 7 [n] = -63.42 cos⎜ 2 π n+ ⎟ 150 40 ⎝ 2N 2N ⎠ 100 20 50 0 0 -20 -40 -50 -60 - 0 10 20 30 40 50 60 0 10 20 30 40 50 60 60 ⎛ 8 π ⎞ f1 + f 2 + ... + f 8 f 8 [n] = -42.82 cos⎜ 2 π n+ ⎟ 200 40 ⎝ 2N 2N ⎠ 150 20 100 0 50 -20 0 -40 -50 -60 - 0 10 20 30 40 50 60
  • 281. DCT – Exemplo 2 (Cont.) 60 ⎛ 9 π ⎞ f1 + f 2 + ... + f 9 f 9 [n] = -10.31cos⎜ 2 π n+ ⎟ 200 40 ⎝ 2N 2N ⎠ 150 20 100 0 50 -20 0 -40 -50 -60 - 0 10 20 30 40 50 60 0 10 20 30 40 50 60 60 ⎛ 10 π ⎞ f1 + f 2 + ... + f10 f10 [n] = 7.18 cos⎜ 2 π n+ ⎟ 200 40 ⎝ 2N 2N ⎠ 150 20 100 0 50 -20 0 -40 -50 -60 - 0 10 20 30 40 50 60 0 10 20 30 40 50 60
  • 282. DCT – Exemplo 2 (Cont.) 600 60 ⎛ 20 π ⎞ f1 + f 2 + ... + f 20 f 20 [n] = -62.24 cos⎜ 2 π n+ ⎟ 40 ⎝ 2N 2N ⎠ 400 20 0 200 -20 0 -40 -60 - 0 10 20 30 40 50 60 0 10 20 30 40 50 60 60 ⎛ 40 π ⎞ 100 f1 + f 2 + ... + f 40 f 40 [n] = 35.54 cos⎜ 2 π n+ ⎟ 40 ⎝ 2N 2N ⎠ 800 20 600 0 400 -20 200 -40 0 -60 - 0 10 20 30 40 50 60 0 10 20 30 40 50 60
  • 283. DCT – Exemplo 2 (Cont.) 60 ⎛ 60 π ⎞ 120 f1 + f 2 + ... + f 60 f 60 [n] = -6.73 cos⎜ 2 π n+ ⎟ 40 ⎝ 2N 2N ⎠ 100 800 20 600 0 400 -20 200 -40 0 -60 - 0 10 20 30 40 50 60 0 10 20 30 40 50 60 60 ⎛ 63 π ⎞ 120 f1 + f 2 + ... + f 63 f 63 [n] = -1.51cos⎜ 2 π n+ ⎟ 40 ⎝ 2N 2N ⎠ 100 800 20 600 0 400 -20 200 -40 0 -60 - 0 10 20 30 40 50 60 0 10 20 30 40 50 60
  • 284. DCT – Exemplo 3 1250 1200 Sinal 1150 1100 eletrocardiográfico, 1050 2048 amostras 1000 950 900 850 0 500 1000 1500 2000 400 DCT do sinal 200 eletrocardiográfico 0 (sem termo DC) -200 -400 0 500 1000 1500 2000
  • 285. DCT – Exemplo 4 20 Onda Quadrada 10 0 -10 -20 0 10 20 30 40 50 60 60 40 DCT da Onda 20 Quadrada 0 -20 -40 -60 0 10 20 30 40 50 60
  • 286. Freqüências em Hz Ta = 1/fa (Período de amostragem) N amostras ---- (N-1)Ta segundos 1 1 fa f1 = (adimensional) ↔ f1 = = Hz 2N 2( N − 1)Ta 2( N − 1) fa fa f N −1 = ( N − 1) = Hz 2( N − 1) 2
  • 287. Freqüências em Hz Aumentar N melhora a resolução de freqüência. Aumentar fa aumenta a freqüência máxima digitalizável, em Hz. Dualidade com o domínio do tempo
  • 288. Freqüências em Hz Sinal de ECG, N= 2048, fa=360Hz Valores em Hz para k = 14, 70, 683 e 2047 14 70 683 2047
  • 289. Freqüências em Hz f1 = fa/[2(N-1)] Hz = 360/(2x2047) = 0,087933561 f14 = 14f1 = 1,23 Hz f70 = 70f1 = 6,16 Hz f683 = 683f1 = 60,06 Hz f2047 = 2047f1 = 180 Hz
  • 290. Freqüências em Hz Observações fa = 360 Hz <=> Ta = 0,002778 Hz Tempo total para 2048 amostras = 5,69s Um batimento cardíaco: aprox. 0,8 s “Freqüência” Cardíaca: aprox. 1,25 bat./s = 1,25 Hz, ou 75 batimentos/min. “Freqüência” Cardíaca aprox. igual a f14
  • 291. Freqüências em Hz Onda quadrada, N = 64, fa = 1Hz Valores em Hz para k = 7, 8, 9 e 63 60 40 20 0 -20 -40 -60 0 7 9 63
  • 292. Freqüências em Hz f1 = fa/[2(N-1)] Hz = 1/(2x63) = 0,007936507 f7 = 7f1 = 0,0556 Hz f8 = 8f1 = 0,0625 Hz f9 = 9f1 = 0,0714 Hz f63 = 63f1 = 0,5 Hz Obs: Período do sinal = 16 s Freqüência da onda = 0,0625
  • 293. Freqüências e Conteúdo de Freqüência Sinal periódico Freqüência Freqüências componentes Sinal não-periódico: Freqüências componentes
  • 294. Sinais analógicos senoidais Representação em freqüência de um sinal analógico senoidal? Sinal analógico senoidal, de freqüência f fa mínimo para digitalização adequada? Se f não é múltiplo de f1?
  • 295. Amostragem de Senóides Cosseno com f=10Hz, fa=100Hz, N=26 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 0.05 0.1 0.15 0.2 0.25
  • 296. Amostragem de Senóides DCT do cosseno com f = 10Hz, fa=100Hz, N=26 4 3.5 3 2.5 2 1.5 1 0.5 0 -0.5 0 5 10 15 20 25 30 35 40 45 50
  • 297. Amostragem de Senóides Vazamento de freqüência: mais de uma componente de freqüência para uma senóide Minimizar vazamento de freqüência: aumentar N
  • 298. Amostragem de Senóides Cosseno com f = 30Hz, fa=100Hz, N=26 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 0.05 0.1 0.15 0.2 0.25
  • 299. Amostragem de Senóides DCT do cosseno com f = 30Hz, fa=100Hz, N=26 3.5 3 2.5 2 1.5 1 0.5 0 -0.5 -1 -1.5 0 5 10 15 20 25 30 35 40 45 50
  • 300. Amostragem de Senóides Cosseno com f = 48Hz, fa=100Hz, N=26 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 0.05 0.1 0.15 0.2 0.25
  • 301. Amostragem de Senóides DCT do cosseno com f = 48Hz, fa=100Hz, N=26 3.5 3 2.5 2 1.5 1 0.5 0 -0.5 0 5 10 15 20 25 30 35 40 45 50
  • 302. Amostragem de Senóides Cosseno com f = 50Hz, fa=100Hz, N=26 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 0.05 0.1 0.15 0.2 0.25
  • 303. Amostragem de Senóides DCT do cosseno com f = 50Hz, fa=100Hz, N=26 5 4.5 4 3.5 3 2.5 2 1.5 1 0.5 0 0 5 10 15 20 25 30 35 40 45 50
  • 304. Amostragem de Senóides Cosseno com f = 52Hz, fa=100Hz, N=26 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 0.05 0.1 0.15 0.2 0.25
  • 305. Amostragem de Senóides DCT do cosseno com f = 52Hz, fa=100Hz, N=26 3.5 3 2.5 2 1.5 1 0.5 0 -0.5 0 5 10 15 20 25 30 35 40 45 50
  • 306. Amostragem de Senóides Sinal digital obtido a partir do cosseno de 52Hz é idêntico ao obtido a partir do cosseno de 48 Hz 1 1 0.8 0.8 0.6 0.6 0.4 0.4 0.2 0.2 0 0 -0.2 -0.2 -0.4 -0.4 -0.6 -0.6 -0.8 -0.8 -1 -1 0 0.0 0.1 0.1 0.2 0.2 0 0.0 0.1 0.1 0.2 0.2
  • 307. Amostragem de Senóides Cosseno com f = 70Hz, fa=100Hz, N=26 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 0.05 0.1 0.15 0.2 0.25
  • 308. Amostragem de Senóides DCT do cosseno com f = 70Hz, fa=100Hz, N=26 3.5 3 2.5 2 1.5 1 0.5 0 -0.5 -1 -1.5 0 5 10 15 20 25 30 35 40 45 50
  • 309. Amostragem de Senóides Sinal digital obtido a partir do cosseno de 70Hz é idêntico ao obtido a partir do cosseno de 30 Hz 1 1 0.8 0.8 0.6 0.6 0.4 0.4 0.2 0.2 0 0 -0.2 -0.2 -0.4 -0.4 -0.6 -0.6 -0.8 -0.8 -1 -1 0 0.0 0.1 0.1 0.2 0.2 0 0.0 0.1 0.1 0.2 0.2
  • 310. Aliasing Na DCT, a maior freqüência é fa/2 Aliasing: sinais senoidais de freqüência f > fa/2 são discretizados como sinais senoidais de freqüência fd < fa / 2 (fd=fa–f, para fa/2 < f < fa)
  • 312. Teorema de Shannon- Nyquist Sinal analógico com fmax Hz (componente) Digitalizar com fa Hz, tal que: fa > f max ⇔ f a > 2 f max 2 2fmax: Freq. de Nyquist
  • 313. Digitalização de áudio Ouvido humano é sensível a freq. entre 20Hz e 22KHz (aprox.) Digitalizar com 44KHz? Sons podem ter freqüências componentes acima de 22KHz Digitalização a 44KHz: aliasing. Filtro passa-baixas com freqüência de corte em 22KHz = Filtro anti- aliasing
  • 314. Eliminação de pixels revisitada Por que redução de imagens (ou outros sinais) por eliminação de pixel pode ser ruim? Aliasing! Usar filtro passa-baixas!
  • 315. Filtros no domínio da freqüência Multiplicar X pela função de transferência do filtro, H Filtros: Passa-baixas Passa-altas Passa-faixa Corta-baixas Corta-altas Corta-faixa (faixa estreita: notch)
  • 316. Filtros no domínio da freq. Ideais H Passa-baixas H Passa-altas (corta-altas) (corta-baixas) 1 1 fc N-1 fc N-1 H Passa-faixa H corta-faixa 1 1 fc1 fc2 N-1 fc1 fc2 N-1
  • 317. Filtros no domínio da freqüência Combinação de filtros Filtros não-ideais (corte suave, H(fc)=1/2)
  • 318. DCT 2-D Operação separável Complexidade elevada N −1 N −1 1 ⎡ (2m + 1)kπ ⎤ ⎡ (2n + 1)lπ ⎤ X [k, l ] = ck cl ∑ ∑ x[m, n]cos⎢ ⎥ cos⎢ 2N ⎥ 2N m=0 n=0 ⎣ 2N ⎦ ⎣ ⎦ 1 N −1N −1 ⎡ (2k + 1)mπ ⎤ ⎡ (2l + 1)nπ ⎤ x[m, n] = ∑ ∑ckcl X [k, l]cos⎢ 2N ⎥ cos⎢ 2N ⎥ 2N k =0 l =0 ⎣ ⎦ ⎣ ⎦
  • 319. DCT 2-D Imagem “cosseno na vertical”, 256 x 256, 8 ciclos (k = 16) e sua DCT normalizada
  • 320. DCT 2-D Imagem “cosseno na vertical”, 256 x 256, 16 ciclos (k = 32) e sua DCT normalizada
  • 321. DCT 2-D Imagem “cosseno na horizontal x cosseno na vertical”, 256 x 256, 16 ciclos (k = 32) e sua DCT normalizada
  • 322. DCT 2-D Imagem “cosseno na horizontal x cosseno na vertical”, 256 x 256, 8 x 16 ciclos e sua DCT normalizada
  • 323. DCT 2-D Imagem “Lena” (256x256) e sua DCT normalizada
  • 324. DCT 2-D Imagem “Lena” (256x256) e o log(DCT+1) normalizado