SlideShare una empresa de Scribd logo
1 de 223
Descargar para leer sin conexión
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


José Raphael Teixeira Marques – DI/PPGI
   jose.raphael.marques@gmail.com
     raphaelmarques.wordpress.com
Filtros de suavização

 Média, Moda, Mediana, Gaussiano...
 Vizinhança m x n
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                      f
                                                2         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
   Aproximações usuais:




             Gradiente de Roberts:
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) + 2f(i,j+1) + f(i+1, j+1)
            - f(i-1, j-1) - 2f(i, j-1) - f(i+1, j-1)|
Filtros de detecção de bordas
      Gradiente de Prewitt:




       Gradiente de Sobel:
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                       nl                       nl
           A                       B                   C




                     l                        l                  l
 0   L-1       L-1        0   m0   m1   L-1        0       L-1
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
    1    790     1200
                 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 posiçã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
                               desvio padrão na       
               (i, j )  
                           visinhança do ponto (i,j ) 
                                                       
                                                      
                                   média na             
               (i, j )  
                           visinhança do ponto (i,j )  
                                                        

                            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




Original   c<σ          c>σ
Pseudo-cor
Nível de   R     G    B
 cinza
   0       15    20   30
   1       15    25   40
  ...
  L-1      200   0    0
Pseudo-cor
Pseudo-cor
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.
Dissolve Cruzado
   ht (i, j)= (1 - t) f(i, j) + t g(i, j)
   t é um escalar no intervalo [0, 1]

   http://jose.raphael.marques.googlepage
    s.com/PDI_Dissolve.jnlp
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
Detecção de Movimento
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 ]         g k [i, j ]
                      M k 1
Redução de Ruído por Média
de Imagens
                         M
                        
                     1
         g [i, j ]        ( f [i, j ]  nk (i, j ))
                     M k 1
                                    M
                                    
                                  1
          g [i, j ]  f [i, j ]        nk (i, j )
                                  M k 1


   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

   http://jose.raphael.marques.googlep
    ages.com/PDI_Rotation.jnlp
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:
10 a 10: 0
20 a 30: (30-20)/5 = 2
                             20 22 24 26 28 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                  12   12   13   13   14   14
Interpolação nas colunas     14   15   16   16   17   18
Passos de níveis de cinza:
                             16   17   18   20   21   22
10 a 20: (20-10)/5 = 2
10 a 22: (22-10)/5 = 2.4     18   20   21   23   24   26
...                          20   22   24   26   28   30
10 a 30: (30-10)/5 = 4
Ampliação (Zoom in)
   Por interpolação bilinear
      passos:
         12/5 = 2.4
         12/9 = 1.333... (dízima)


    n  a b
            in      i
    xi  xa      xb  , i  {0..n}
             n       n
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 média
                                por fator 3
10   10   10   10   10   10
13   14   16   17   18   19
                                   14 18
17   19   21   23   25   28
                                   28 41
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 (Deformação)
Warping (Deformação)
Warping (Deformação)
Warping baseado em
Campos
 Entretenimento
 Efeitos especiais, morphing
 Correção de distorções óticas
 Alinhamento de elementos
  correspondentes em duas ou mais
  imagens (registro)
 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
   http://sites.google.com/site/joserap
    haelmarques/arquivos/PDI_UV.jnlp

   http://sites.google.com/site/joserap
    haelmarques/arquivos/PDI_Warping.
    jnlp
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 ||  x  y
                          2
                          1
                                   2
                                   1


   Produto interno:
                a.b = x1x2 +y1y2
Warping baseado em
Campos
   “Norma” da projeção de a sobre b (o
    sinal indica o sentido em relação a b)
                    a
           a.b
|| c || 
          || b ||
                                             b

                        c
Warping baseado em
Campos
   Vetor 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
               Q




                   P
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]1/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          2
             || PQ ||

            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
   http://sites.google.com/site/joserap
    haelmarques/arquivos/PDI_UV2.jnlp

   http://sites.google.com/site/joserap
    haelmarques/arquivos/PDI_Warping
    2.jnlp
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.
Warping baseado em
Campos
   Exemplo:
P0 = (40, 10); Q0 = (20, 5)
P0’ = (35, 15); Q0’ = (25, 20)        0   5 10   15         20 25 30        35    40     45   50   55   60
P1 = (20, 30); Q1 = (10, 35)      0
                                                                                       Q1’
P1’ = (25, 50); Q1’ = (5, 40)     5
                                                                        Q1
X = (20, 25)                     10

u0 = [(20-40) (20-40) + (25-     15
    10)(5-10)] / [(20-40)2+                                   X
    (5-10)2] = 0.76
                                 20       Q0
                                                                       P1
v0 = [(20-40) (5-10) + (25-      25                   Q0’
                                                                                               P1’
    10)(40-20)] / [(20-40)2+     30
    (5-10)2]1/2 = 19.40
                                 35
X0’ = (35, 10) + 0.76 (25-35,                         P0’
    20-15) + 19.4 (20-15, 35-    40
                                           P0
                                                                                 X0’
    25) / [(25-35)2 + (20-       45
    15)2]1/2
X0’ = (36.03, 31.17)             50
Warping baseado em
Campos
   Exemplo (cont):
u1 = [(20-20) (10-20) +
   (25-30)(35-30)] / [(10-
   20)2+ (35-30)2] = - 0.2         0   5 10   15         20 25 30        35    40     45   50    55   60
v1 = [(20-20) (35-30) +        0
   (25-30)(20-10)] / [(10-     5                                                    Q1’
   20)2+ (35-30)2]1/2 = -     10
                                                                     Q1
   4,47
                              15
X1’ = (25, 50) - 0.2 (5-25,                                X
   40-50) -4,47 (40-50,       20       Q0
   25-5) / [(25-5)2 + (40-    25                   Q0’
                                                                    P1
   50)2]1/2                                                                                 P1’

X1’ = (25, 50) + (4.6, 2) +   30

   (2, -3.99) = (31.6,        35                                                           X1’
   48,01)                     40
                                                   P0’                        X0’
                                        P0
                              45

                              50
Warping baseado em
Campos
   Exemplo (cont):
Dados a = 0.1; b = 2; p= 0
wi = 1/[0.1+di]2
d0 = v0 = 19.4 => w0 =
                                   0   5 10   15         20 25 30        35    40     45   50    55   60

   0.0026
                               0
                               5                                                    Q1’
d1 = distância de X a P1 =                                           Q1
   [(20-20)2 + (25-30)2]1/2   10
   = 5 =>: w1 = 0.0384        15
X’ = [0.0026* (36.03,         20       Q0
                                                           X
   31.17) + 0.0384*(31.6,                                           P1
   48,01)]/( 0.0026+          25                   Q0’
                                                                                            P1’
   0.0384)                    30                                                      X’
X’ = (31.88, 46,94)                                                                        X1’
                              35
                                                   P0’                        X0’
                              40
                                        P0
                              45

                              50
Warping baseado em
Campos
      0   5    10   15          20   25   30         35    40         45   50         55   60
  0
  5                                                             Q1’
                                                    Q1
 10

 15
                                     X
 20       Q0
                                               P1
 25                      Q 0’
                                                                                P1’
 30

 35
                         P0’
 40                                                       X0’
              P0
 45

 50
Warping baseado em
Campos
       0   5    10   15         20   25   30         35    40         45   50         55   60
   0
   5                                                            Q1’
                                                    Q1
  10

  15
                                     X
  20       Q0
                                               P1
  25                      Q0’
                                                                                P1’
  30

  35                                                                       X1’

                          P0’
  40                                                      X0’
               P0
  45

  50
Warping baseado em
Campos
      0   5    10   15          20   25   30         35    40         45   50         55   60
  0
  5                                                             Q1’
                                                    Q1
 10

 15
                                     X
 20       Q0
                                               P1
 25                      Q 0’
                                                                                P1’
 30
                                                                      X’

 35                                                                        X1’

                         P0’
 40                                                       X0’
              P0
 45

 50
Warping baseado em
Campos
   http://sites.google.com/site/joserap
    haelmarques/arquivos/PDI_Warping
    N.jnlp

   http://sites.google.com/site/joserap
    haelmarques/arquivos/PDI_Warping
    N_FixSize.jnlp
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


Inicial    Warping   Final
Morphing
           Warping I


Inicial                Final




           Warping F
Morphing
           Warping I


Inicial                Final




           Warping F
Morphing


Inicial    Warping   Final
Morphing
Morphing
Morphing
  ai
       c1i
             c2i
                   c3i
                         c4i
                               c5i
                                     c6i
                                           c7i
                                                 c8i
                                                       c9i
                                                             bi
Morphing


Inicial 0   Warping 1   Warping 2   Warping 3   Final 4
Morphing
            Warping 1 I   Warping 2 I   Warping 3 I




Inicial 0                                             Final 4




            Warping 1 F   Warping 2 F   Warping 3 F
Morphing
 Exemplo:
 http://www.youtube.com/watch?v=
  wZurRt0TidI
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)




                                                                                      t3 
(0,0)
             t0                      t1       t                         0 t2
                                                                         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
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  N1
    s e [n ]                           he [n ]  
               0, N 0  n  N                     0, N1  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
Correlação
   Convolução:                    
       g[n]  s[n ] * h[n]         s[ ]h[n   ]
                                   
   Correlação:
                                  
         g[n]  s[n]  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]
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      

      f0  0                1/ 2
                         2  1
                                  1/ 2
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 ]         ck 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                                  g1+g3+g10
 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   1000      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     π                  f 1  f 2  ...  f 6
       f 5 [n]  -34.55 cos 2π   n    
40                          2N      2N     100

20                                            50

 0                                             0
-20
                                             -50
-40
                                             -
-60                                          100
  0   10   20     30     40     50     60       0   10   20        30       40        50   60
                                              150
60                              6     π                     f 1  f 2  ...  f 6
       f 6 [n]  -33.29 cos 2 π   n    
40                          2N       2N     100
20                                             50
 0
                                               0
-20
                                              -50
-40
-60                                          -
                                             100
  0   10   20     30     40     50     60       0   10   20         30        40      50   60
DCT – Exemplo 2 (Cont.)
                                                    200
60                                 7     π                     f 1  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                                                 -
                                                    1000   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    100
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   1000   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   1000   10   20     30       40      50   60
DCT – Exemplo 2 (Cont.)
                                               600
60                              20     π                 f 1  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    2000   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    0
                                               800
20                                            600
 0                                            400
-20                                           200
-40                                             0
-60                                           -
                                              200
  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       0
40                          2N       2N    100
                                             0800
20
                                             600
 0
                                             400
-20                                          200
-40                                            0
-60                                          -
  0   10   20     30     40     50     60    2000   10   20     30       40       50   60
60                             63     π    120          f1  f 2  ...  f 63
       f 63 [n]  -1.51cos 2 π    n    
                           2N        2N    0
                                             100
40
                                             0800
20
                                             600
 0
                                             400
-20
                                             200
-40                                            0
-60                                          -
  0   10   20     30     40     50     60    2000   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     (adimensio nal)  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
           5           5           5           5           5           5
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 por
    eliminação de pixel deve ser evitada?
   Sinal original digitalizado com fa =2fmax
   No. de amostras do sinal digital
    reduzido pela metade por eliminação de
    amostras -> nova freqüência de
    amostragem f’a = fa/2 = fmax ->
    freqüência máxima do sinal analógico
    digitalizada sem aliasing = f’a/2 = fmax/2
Eliminação de pixels
revisitada
   Por que redução de imagens (ou
    outros sinais) por eliminação de
    pixel (ou amostras) deve ser
    evitada?
   Aliasing!
   Usar filtro passa-baixas!
Filtros no domínio da
freqüência

   Multiplicar o sinal no domínio da freq., S,
    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)1/2 ou |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  2 N 
             2N      m 0 n 0         2N                      

          1 N 1N 1                     (2k  1)m   (2l  1)n 
x[m, n]         ck cl X [k , l ] cos  2 N  cos  2 N 
          2 N 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
Transformada de Fourier
Discreta (DFT)
                                  N 1            j 2un
                          1                   
   Direta:      F [u ] 
                          N
                                   s[n]e            N
                                  n 0
                           N 1          j 2un

   Inversa:     s[n ]     F [u]e         N
                           u 0

                  n, u = 0, 1, ..., N-1
                              j  1

 Fórmula de Euler: e j  cos   j sen 
Duas propriedades
essenciais

      F [u  N ]  ?
       |F[-u]| = ?
Duas propriedades
essenciais
   DFT é periódica de período N:

           F [u  N ]  F (u)

   Espectro de Fourier é função par:

           |F[u]| = |F[-u]|
Esboço do Espectro de
    Fourier
                 |F[u]|




                                            u
-N/2                      N/2       N-1
   u = 0, N, 2N,...: freq. 0
   u = N/2, 3N/2,...: freq. máxima (N par)
   u = (N-1)/2,...: freq. máxima (N ímpar)
Freqüências em Hz

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


    1                           1       fa
f1  (adimensio nal)  f1                  Hz
    N                       ( N  1)Ta N  1

                       N  1 fa     fa
        f( N 1) / 2                 Hz
                        2 ( N  1) 2
Fourier 2-D

 Operação separável
 Complexidade elevada
                     C 1 R 1
                 1
    F [u, v ] 
                RC
                       s[m, n]e     j 2 ( um / C  vn / R )

                     m 0n 0

                 C 1 R 1
     s[m, n]      F [u, v]e   j 2 ( um / C  vn / R )

                 u 0 v 0
Exibição do Espectro de
    Fourier 2-D


Flog[u, v] = round[(L - 1) log(1+|F[u, v]|)/Fmax2]
Teorema da Convolução
   Se
         g[m, n]  s[m, n]  h[m, n]
   Então:
       G[u,v] = H[u,v]F[u,v]
        onde
        G[u,v]: DFT de g[m,n]
        F[u,v]: DFT de s[m,n]
        H[u,v]: DFT de h[m,n]

   H[u,v]: Função de transferência do filtro
Filtros: espaço x freqüência
   Projeto de filtro no domínio da freqüência
    (Fourier)
   Método imediato: H[k], k = 0..N-1
   Como filtrar sinais no domínio do tempo,
    em tempo real?
   Convolução com h[n], n = 0..N-1 pode ser
    proibitiva para n grande
   Encontrar ht[n], n = 0..M-1, com M < N,
    de modo a obter uma aproximação
    adequada para H[k].
Filtros: espaço x freqüência
 Para eficiência computacional e
  redução de custos, o número de
  coeficientes do filtro deve ser o
  menor possível
 Projetar filtros relativamente imunes
  ao truncamento
Questões do PosComp 2002
   51. Histograma de uma imagem com K tons de cinza é :
        a) Contagem dos pixels da imagem.
        b) Contagem do número de tons de cinza que ocorreram na imagem.
        c) Contagem do número de vezes que cada um dos K tons de cinza
         ocorreu na imagem.
        d) Contagem do número de objetos encontrados na imagem.
        e) Nenhuma alternativa acima.

   52. filtro da mediana é :
        a) Indicado para detectar bordas em imagens.
        b) Indicado para atenuar ruído com preservação de bordas (i.é rápidas
         transições de nível em
        imagens).
        c) Indicado para detectar formas específicas em imagens.
        d) Indicado para detectar tonalidades específicas em uma imagem.
        e) Nenhuma das respostas acima.
Questões do PosComp 2002
   51. Histograma de uma imagem com K tons de cinza é :
        a) Contagem dos pixels da imagem.
        b) Contagem do número de tons de cinza que ocorreram na imagem.
        c) Contagem do número de vezes que cada um dos K tons de
         cinza ocorreu na imagem.
        d) Contagem do número de objetos encontrados na imagem.
        e) Nenhuma alternativa acima.

   52. filtro da mediana é :
        a) Indicado para detectar bordas em imagens.
        b) Indicado para atenuar ruído com preservação de bordas (i.é
         rápidas transições de nível em
        imagens).
        c) Indicado para detectar formas específicas em imagens.
        d) Indicado para detectar tonalidades específicas em uma imagem.
        e) Nenhuma das respostas acima.
Questões do PosComp 2004
   56) Considerando as declarações abaixo, é incorreto afirmar:
        a) Filtros passa-altas são utilizados para detecção de bordas em imagens
        b) A transformada discreta de Fourier nos permite obter uma representação de
         uma imagem no domínio freqüência
        c) Filtragem no domínio espacial é realizada por meio de uma operação chamada
         “convolução”
        d) Os filtros Gaussiano e Laplaciano são exemplos de filtro passa-baixas
        e) O filtro da mediana pode ser utilizado para redução de ruído em uma imagem

   58) Identifique a declaração incorreta:
        a) As operações de ajuste de brilho e contraste são operações lineares
        b) A equalização de histograma é uma transformação não-linear e específica
         para cada imagem
        c) A transformação necessária para calcular o negativo de uma imagem pode ser
         aplicada simultaneamente (i.e., em paralelo) a todos pixels da imagem original
        d) A equalização de histograma pode ser obtida a partir de um histograma
         cumulativo da imagem original
        e) O objetivo da equalização de histograma é reduzir o constrastre nas regiões
         da imagem que correspondem à porção do histograma com maior concentração
         de pixels
Questões do PosComp 2004
   56) Considerando as declarações abaixo, é incorreto afirmar:
        a) Filtros passa-altas são utilizados para detecção de bordas em imagens
        b) A transformada discreta de Fourier nos permite obter uma representação de
         uma imagem no domínio freqüência
        c) Filtragem no domínio espacial é realizada por meio de uma operação chamada
         “convolução”
        d) Os filtros Gaussiano e Laplaciano são exemplos de filtro passa-baixas
        e) O filtro da mediana pode ser utilizado para redução de ruído em uma imagem

   58) Identifique a declaração incorreta:
        a) As operações de ajuste de brilho e contraste são operações lineares
        b) A equalização de histograma é uma transformação não-linear e específica
         para cada imagem
        c) A transformação necessária para calcular o negativo de uma imagem pode ser
         aplicada simultaneamente (i.e., em paralelo) a todos pixels da imagem original
        d) A equalização de histograma pode ser obtida a partir de um histograma
         cumulativo da imagem original
        e) O objetivo da equalização de histograma é reduzir o constrastre nas regiões
         da imagem que correspondem à porção do histograma com maior concentração
         de pixels
Questões do PosComp 2005
   59. O processo de análise de imagens é uma seqüência de etapas que são iniciadas a
    partir da definição do problema. A seqüência correta destas etapas é:
        (a) pré-processamento, aquisição, segmentação, representação, reconhecimento.
        (b) aquisição, pré-processamento, segmentação, representação, reconhecimento.
        (c) aquisição, pré-processamento, representação, segmentação, reconhecimento.
        (d) aquisição, representação, pré-processamento, segmentação, reconhecimento.
        (e) pré-processamento, aquisição, representação, segmentação, reconhecimento.

   60. O termo imagem se refere a uma função bidimensional de intensidade de luz,
    denotada por f(x; y), onde o valor ou amplitude de f nas coordenadas espaciais (x;
    y) representa a intensidade (brilho) da imagem neste ponto. Para que uma imagem
    possa ser processada num computador, a função f(x; y) deve ser discretizada tanto
    espacialmente quanto em amplitude. Estes dois processos recebem as seguintes
    denominações, respectivamente:
        (a) translação e escala.
        (b) resolução e escala.
        (c) resolução e ampliação.
        (d) amostragem e quantização.
        (e) resolução e quantização.
Questões do PosComp 2005
   59. O processo de análise de imagens é uma seqüência de etapas que são iniciadas a
    partir da definição do problema. A seqüência correta destas etapas é:
        (a) pré-processamento, aquisição, segmentação, representação, reconhecimento.
        (b) aquisição, pré-processamento, segmentação, representação, reconhecimento.
        (c) aquisição, pré-processamento, representação, segmentação, reconhecimento.
        (d) aquisição, representação, pré-processamento, segmentação, reconhecimento.
        (e) pré-processamento, aquisição, representação, segmentação, reconhecimento.

   60. O termo imagem se refere a uma função bidimensional de intensidade de luz,
    denotada por f(x; y), onde o valor ou amplitude de f nas coordenadas espaciais (x;
    y) representa a intensidade (brilho) da imagem neste ponto. Para que uma imagem
    possa ser processada num computador, a função f(x; y) deve ser discretizada tanto
    espacialmente quanto em amplitude. Estes dois processos recebem as seguintes
    denominações, respectivamente:
        (a) translação e escala.
        (b) resolução e escala.
        (c) resolução e ampliação.
        (d) amostragem e quantização.
        (e) resolução e quantização.
Questões do PosComp 2006
   47. [TE] Considere os filtros espaciais da média (m) e Mediana (M)
    aplicados em imagens em níveis de cinza f e g. Qual par de termos ou
    expressões a seguir não está associado, respectivamente, a características
    gerais de m e M?
        (a) m(f + g) = m(f) + m(g); M(f + g) != M(f) + M(g)
        (b) ruído gaussiano; ruído impulsivo
        (c) convolução; filtro estatístico da ordem
        (d) preservação de pequenos componentes; não preservação de pequenos
         componentes
        (e) filtragem com preservação de contornos; filtragem sem preservação de
         contornos

   48. [TE] A convolução da máscara [-1 2 -1] com uma linha de uma
    imagem contendo uma seqüência de pixels do tipo [... 3 4 5 6 7 8 9 10 ...]
    resulta na transformação (sem considerar efeitos de borda):
        (a) [...3 4 5 6 7 8 9 10...] e representa o filtro da média com 2-vizinhos mais
         próximos
        (b) [...0 0 0 0 0 0 0 0...] e representa o laplaciano no espaço discreto
        (c) [...0 0 0 0 0 0 0 0...] e representa uma erosão morfológica
        (d) [...1 1 1 1 1 1 1 1...] e é equivalente a um filtro passa-baixas
        (e) [...7 9 11 13 15 17 19...] e é equivalente a um filtro passa-altas
Questões do PosComp 2006
   47. [TE] Considere os filtros espaciais da média (m) e Mediana (M)
    aplicados em imagens em níveis de cinza f e g. Qual par de termos ou
    expressões a seguir não está associado, respectivamente, a características
    gerais de m e M?
        (a) m(f + g) = m(f) + m(g); M(f + g) != M(f) + M(g)
        (b) ruído gaussiano; ruído impulsivo
        (c) convolução; filtro estatístico da ordem
        (d) preservação de pequenos componentes; não preservação de pequenos
         componentes
        (e) filtragem com preservação de contornos; filtragem sem preservação de
         contornos

   48. [TE] A convolução da máscara [-1 2 -1] com uma linha de uma
    imagem contendo uma seqüência de pixels do tipo [... 3 4 5 6 7 8 9 10 ...]
    resulta na transformação (sem considerar efeitos de borda):
        (a) [...3 4 5 6 7 8 9 10...] e representa o filtro da média com 2-vizinhos mais
         próximos
        (b) [...0 0 0 0 0 0 0 0...] e representa o laplaciano no espaço discreto
        (c) [...0 0 0 0 0 0 0 0...] e representa uma erosão morfológica
        (d) [...1 1 1 1 1 1 1 1...] e é equivalente a um filtro passa-baixas
        (e) [...7 9 11 13 15 17 19...] e é equivalente a um filtro passa-altas
Questões do PosComp 2007
   61. [TE] O realce de imagem tem como objetivo destacar detalhes
    finos procurando obter uma representação mais adequada do que
    a imagem original para uma determinada aplicação. Dessa forma,
    sobre as técnicas utilizadas no realce de imagens, é CORRETO
    afirmar que
       (a) o melhor resultado obtido depende do filtro aplicado na imagem.
        Normalmente, o mais aplicado é o filtro da mediana.
       (b) o melhor resultado é obtido com a aplicação de filtros passa-
        baixas, cujos parâmetros dependem do resultado desejado.
       (c) a aplicação de filtros da média sempre oferece resultado adequado
        no realce de imagens.
       (d) o resultado mais adequado no realce de imagens está associado à
        aplicação de filtro passa-altas e da interpretação subjetiva do
        observador que deverá ter conhecimento a priori da imagem original.
       (e) o resultado mais adequado no realce de imagens está associado à
        aplicação de filtro passa-baixas e da interpretação subjetiva do
        observador que deverá ter conhecimento a priori da imagem original.
   62 e 63
Questões do PosComp 2007
   61. [TE] O realce de imagem tem como objetivo destacar detalhes
    finos procurando obter uma representação mais adequada do que
    a imagem original para uma determinada aplicação. Dessa forma,
    sobre as técnicas utilizadas no realce de imagens, é CORRETO
    afirmar que
       (a) o melhor resultado obtido depende do filtro aplicado na imagem.
        Normalmente, o mais aplicado é o filtro da mediana.
       (b) o melhor resultado é obtido com a aplicação de filtros passa-
        baixas, cujos parâmetros dependem do resultado desejado.
       (c) a aplicação de filtros da média sempre oferece resultado adequado
        no realce de imagens.
       (d) o resultado mais adequado no realce de imagens está associado à
        aplicação de filtro passa-altas e da interpretação subjetiva do
        observador que deverá ter conhecimento a priori da imagem original.
       (e) o resultado mais adequado no realce de imagens está associado à
        aplicação de filtro passa-baixas e da interpretação subjetiva do
        observador que deverá ter conhecimento a priori da imagem original.

Más contenido relacionado

La actualidad más candente

Derivadas Aplicações
Derivadas AplicaçõesDerivadas Aplicações
Derivadas AplicaçõesJones Fagundes
 
Volumes de sólidos integral
Volumes de sólidos integralVolumes de sólidos integral
Volumes de sólidos integralHugoTavares82
 
Apostila 001 funções
Apostila  001 funçõesApostila  001 funções
Apostila 001 funçõescon_seguir
 
Trabalho individual objetos de aprendizagem
Trabalho individual objetos de aprendizagemTrabalho individual objetos de aprendizagem
Trabalho individual objetos de aprendizagemEdson Júnio
 
Cálculo Numérico - Aula 03: Zeros de funções
Cálculo Numérico - Aula 03: Zeros de funçõesCálculo Numérico - Aula 03: Zeros de funções
Cálculo Numérico - Aula 03: Zeros de funçõesRodolfo Almeida
 

La actualidad más candente (20)

Resumo - Álgebra Linear
Resumo - Álgebra LinearResumo - Álgebra Linear
Resumo - Álgebra Linear
 
Matemática I - Tópico 04: Equações do 1º e 2º graus e Inequações
Matemática I - Tópico 04: Equações do 1º e 2º graus e InequaçõesMatemática I - Tópico 04: Equações do 1º e 2º graus e Inequações
Matemática I - Tópico 04: Equações do 1º e 2º graus e Inequações
 
Algebra[1]
Algebra[1]Algebra[1]
Algebra[1]
 
Derivadas Aplicações
Derivadas AplicaçõesDerivadas Aplicações
Derivadas Aplicações
 
Aula 05 derivadas - conceitos iniciais
Aula 05   derivadas - conceitos iniciaisAula 05   derivadas - conceitos iniciais
Aula 05 derivadas - conceitos iniciais
 
Tri gonometria 2012
Tri gonometria 2012Tri gonometria 2012
Tri gonometria 2012
 
Derivadas
DerivadasDerivadas
Derivadas
 
Matemática básica derivada e integral
Matemática básica   derivada e integralMatemática básica   derivada e integral
Matemática básica derivada e integral
 
Volumes de sólidos integral
Volumes de sólidos integralVolumes de sólidos integral
Volumes de sólidos integral
 
Calculo1 aula06
Calculo1 aula06Calculo1 aula06
Calculo1 aula06
 
Apostila 001 funções
Apostila  001 funçõesApostila  001 funções
Apostila 001 funções
 
Tópico 08 - Derivadas
Tópico 08 - DerivadasTópico 08 - Derivadas
Tópico 08 - Derivadas
 
Ex algebra (10)
Ex algebra  (10)Ex algebra  (10)
Ex algebra (10)
 
Apostila de calculo i
Apostila de calculo iApostila de calculo i
Apostila de calculo i
 
Aula 07 derivadas - regras de derivação - parte 1
Aula 07   derivadas - regras de derivação - parte 1Aula 07   derivadas - regras de derivação - parte 1
Aula 07 derivadas - regras de derivação - parte 1
 
Ap matemática m2
Ap matemática m2Ap matemática m2
Ap matemática m2
 
Trabalho individual objetos de aprendizagem
Trabalho individual objetos de aprendizagemTrabalho individual objetos de aprendizagem
Trabalho individual objetos de aprendizagem
 
Cálculo Numérico - Aula 03: Zeros de funções
Cálculo Numérico - Aula 03: Zeros de funçõesCálculo Numérico - Aula 03: Zeros de funções
Cálculo Numérico - Aula 03: Zeros de funções
 
Apostila 3 funções
Apostila 3 funçõesApostila 3 funções
Apostila 3 funções
 
Funcoes
FuncoesFuncoes
Funcoes
 

Destacado

Planejamentopassoapasso
PlanejamentopassoapassoPlanejamentopassoapasso
PlanejamentopassoapassoLuiz Henrique
 
Curso tecnico eletromecanica
Curso tecnico eletromecanicaCurso tecnico eletromecanica
Curso tecnico eletromecanicaLuiz Henrique
 
Processamento digital de sinais
Processamento digital de sinaisProcessamento digital de sinais
Processamento digital de sinaisLuiz Henrique
 
Processamento digital de sinais
Processamento digital de sinaisProcessamento digital de sinais
Processamento digital de sinaisLuiz Henrique
 

Destacado (8)

Planejamentopassoapasso
PlanejamentopassoapassoPlanejamentopassoapasso
Planejamentopassoapasso
 
Curso tecnico eletromecanica
Curso tecnico eletromecanicaCurso tecnico eletromecanica
Curso tecnico eletromecanica
 
Circuitos
CircuitosCircuitos
Circuitos
 
obtenção de sinais discretos
obtenção de sinais discretosobtenção de sinais discretos
obtenção de sinais discretos
 
Processamento digital de sinais
Processamento digital de sinaisProcessamento digital de sinais
Processamento digital de sinais
 
Apostila pds
Apostila pdsApostila pds
Apostila pds
 
Sistemas digitais
Sistemas digitaisSistemas digitais
Sistemas digitais
 
Processamento digital de sinais
Processamento digital de sinaisProcessamento digital de sinais
Processamento digital de sinais
 

Similar a Slides PDI 2009 Raphael versao4

Similar a Slides PDI 2009 Raphael versao4 (20)

Apostila estatistica descritiva pareto ch
Apostila estatistica descritiva pareto chApostila estatistica descritiva pareto ch
Apostila estatistica descritiva pareto ch
 
Funções trigonométricas
Funções trigonométricasFunções trigonométricas
Funções trigonométricas
 
Trabalho de mat.pptx
Trabalho de mat.pptxTrabalho de mat.pptx
Trabalho de mat.pptx
 
03 raizes
03 raizes03 raizes
03 raizes
 
Gabarito do 2º teste de geometria
Gabarito do 2º teste de geometriaGabarito do 2º teste de geometria
Gabarito do 2º teste de geometria
 
1 ano função afim
1 ano   função afim1 ano   função afim
1 ano função afim
 
Funções
FunçõesFunções
Funções
 
2 equações
2 equações2 equações
2 equações
 
Gabarito do 2º teste de geometria
Gabarito do 2º teste de geometriaGabarito do 2º teste de geometria
Gabarito do 2º teste de geometria
 
Anexo ma aula_fd_unidade1
Anexo ma aula_fd_unidade1Anexo ma aula_fd_unidade1
Anexo ma aula_fd_unidade1
 
Cn2008 2009
Cn2008 2009Cn2008 2009
Cn2008 2009
 
Curso de Matlab avancado 1
Curso de Matlab avancado 1Curso de Matlab avancado 1
Curso de Matlab avancado 1
 
Michel função 1 grau = universitário
Michel   função 1 grau = universitárioMichel   função 1 grau = universitário
Michel função 1 grau = universitário
 
Apostila integrais
Apostila integraisApostila integrais
Apostila integrais
 
Matemática 2012
Matemática 2012Matemática 2012
Matemática 2012
 
Matemática
MatemáticaMatemática
Matemática
 
Cadernodequestes ano2004
Cadernodequestes ano2004Cadernodequestes ano2004
Cadernodequestes ano2004
 
Apresentação geometria analítica
Apresentação geometria analíticaApresentação geometria analítica
Apresentação geometria analítica
 
Cadernodequestes ano2011
Cadernodequestes ano2011Cadernodequestes ano2011
Cadernodequestes ano2011
 
Aula 7 - Funções Logarítmicas, Exponenciais e Trigonometricas
Aula 7 - Funções Logarítmicas, Exponenciais e TrigonometricasAula 7 - Funções Logarítmicas, Exponenciais e Trigonometricas
Aula 7 - Funções Logarítmicas, Exponenciais e Trigonometricas
 

Más de Raphael Marques

Introdução a Informática - Arquitetura
Introdução a Informática - ArquiteturaIntrodução a Informática - Arquitetura
Introdução a Informática - ArquiteturaRaphael Marques
 
O que você produz além de código?
O que você produz além de código?O que você produz além de código?
O que você produz além de código?Raphael Marques
 
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Raphael Marques
 
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Raphael Marques
 
Mini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPBMini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPBRaphael Marques
 
slides PDI 2007 leonardo
slides PDI 2007 leonardoslides PDI 2007 leonardo
slides PDI 2007 leonardoRaphael Marques
 

Más de Raphael Marques (19)

Sistemas numéricos
Sistemas numéricosSistemas numéricos
Sistemas numéricos
 
Windows explorer
Windows explorerWindows explorer
Windows explorer
 
Interface do windows
Interface do windowsInterface do windows
Interface do windows
 
Internet
InternetInternet
Internet
 
Introdução a Informática - Arquitetura
Introdução a Informática - ArquiteturaIntrodução a Informática - Arquitetura
Introdução a Informática - Arquitetura
 
O que você produz além de código?
O que você produz além de código?O que você produz além de código?
O que você produz além de código?
 
JavaFX
JavaFXJavaFX
JavaFX
 
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
 
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
 
Introdução ao JavaFX
Introdução ao JavaFXIntrodução ao JavaFX
Introdução ao JavaFX
 
JavaFX 1.2
JavaFX 1.2JavaFX 1.2
JavaFX 1.2
 
Mini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPBMini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPB
 
Mini-curso JavaFX Aula2
Mini-curso JavaFX Aula2Mini-curso JavaFX Aula2
Mini-curso JavaFX Aula2
 
Mini-curso JavaFX Aula1
Mini-curso JavaFX Aula1Mini-curso JavaFX Aula1
Mini-curso JavaFX Aula1
 
slides PDI 2007 leonardo
slides PDI 2007 leonardoslides PDI 2007 leonardo
slides PDI 2007 leonardo
 
Classes Internas
Classes InternasClasses Internas
Classes Internas
 
Operadores Java
Operadores JavaOperadores Java
Operadores Java
 
Minicurso Java && Cl
Minicurso Java && ClMinicurso Java && Cl
Minicurso Java && Cl
 
JavaFX
JavaFXJavaFX
JavaFX
 

Slides PDI 2009 Raphael versao4

  • 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 José Raphael Teixeira Marques – DI/PPGI jose.raphael.marques@gmail.com raphaelmarques.wordpress.com
  • 2. Filtros de suavização  Média, Moda, Mediana, Gaussiano...  Vizinhança m x n
  • 3. 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   f 2 2 1 / 2      f  G[f(x, y)] = G[ f ( x, y )]         y     x      f       y 
  • 4. 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)|
  • 5. Filtros de detecção de bordas  Aproximações usuais: Gradiente de Roberts:
  • 6. 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) + 2f(i,j+1) + f(i+1, j+1) - f(i-1, j-1) - 2f(i, j-1) - f(i+1, j-1)|
  • 7. Filtros de detecção de bordas Gradiente de Prewitt: Gradiente de Sobel:
  • 8. Gradiente de Roberts Limiares 15, 30 e 60
  • 9. 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)
  • 10. 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
  • 11. 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
  • 12. Histograma 10000 8000 6000 4000 2000 0 0 50 100 150 200 250
  • 13. Histograma 1500 1000 500 0 0 50 100 150 200 250
  • 14. 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
  • 15. 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 
  • 16. Expansão de Histograma 1500 1000 500 0 0 50 100 150 200 250 1500 1000 500 0 0 50 100 150 200 250
  • 17. Expansão de Histograma  Expansão é ineficaz nos seguintes casos: nl nl nl A B C l l l 0 L-1 L-1 0 m0 m1 L-1 0 L-1
  • 18. 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.
  • 19. 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
  • 20. 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
  • 21. 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
  • 22. Equalização de Histograma  Exemplo: imagem 64 x 64, L = 8 l nl nk 0 0 1 790 1200 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
  • 23. 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
  • 24. 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?
  • 25. Equalização de Histograma Local  Para cada posiçã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
  • 26. Controle de contraste adaptativo  desvio padrão na   (i, j )    visinhança do ponto (i,j )      média na   (i, j )    visinhança do ponto (i,j )      c  (i, j )  [ f (i, j )   (i, j )]; (i, j )  0 g (i, j )    (i, j )  f (i, j ); (i, j )  0 
  • 28. Pseudo-cor Nível de R G B cinza 0 15 20 30 1 15 25 40 ... L-1 200 0 0
  • 31. 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  ...
  • 32. 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.
  • 33. Dissolve Cruzado  ht (i, j)= (1 - t) f(i, j) + t g(i, j)  t é um escalar no intervalo [0, 1]  http://jose.raphael.marques.googlepage s.com/PDI_Dissolve.jnlp
  • 34. Dissolve Cruzado t = 0,3 t = 0,5 t = 0,7
  • 35. 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]
  • 37. Detecção de Movimento L  1, se | f1  f 2 | Lt g 0, caso contrario f1 f2 g
  • 39. 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 ]  g k [i, j ] M k 1
  • 40. Redução de Ruído por Média de Imagens M  1 g [i, j ]  ( f [i, j ]  nk (i, j )) M k 1 M  1 g [i, j ]  f [i, j ]  nk (i, j ) M k 1  Para M grande: g[i, j ]  f [i, j ]  m
  • 41. Operações Topológicas  Rígidas  Translação  Rebatimento  Rotação  Mudança de Escala  Não rígidas (Warping)
  • 42. 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  http://jose.raphael.marques.googlep ages.com/PDI_Rotation.jnlp
  • 43. Rotação e Rebatimento Imagem original Rebatimento pela Rotação de 90 diagonal graus em torno de (R/2,C/2)
  • 44. 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
  • 45. 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: 10 a 10: 0 20 a 30: (30-20)/5 = 2 20 22 24 26 28 30
  • 46. Ampliação (Zoom in)  Por interpolação bilinear Original Ampliação por fator 3 10 10 10 10 10 10 10 10 20 30 12 12 13 13 14 14 Interpolação nas colunas 14 15 16 16 17 18 Passos de níveis de cinza: 16 17 18 20 21 22 10 a 20: (20-10)/5 = 2 10 a 22: (22-10)/5 = 2.4 18 20 21 23 24 26 ... 20 22 24 26 28 30 10 a 30: (30-10)/5 = 4
  • 47. Ampliação (Zoom in)  Por interpolação bilinear  passos:  12/5 = 2.4  12/9 = 1.333... (dízima) n  a b in i xi  xa    xb  , i  {0..n}  n  n
  • 48. Ampliação (Zoom in)  Exemplo: Ampliação por fator 10 Original Replicação Interpolação
  • 49. Redução (Zoom out)  Por eliminação de pixel  Por Média Original Redução por média por fator 3 10 10 10 10 10 10 13 14 16 17 18 19 14 18 17 19 21 23 25 28 28 41 20 23 27 30 33 37 23 27 33 37 41 46 27 32 38 43 48 55
  • 50. 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
  • 51. 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)
  • 52. 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)
  • 53. 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
  • 54. 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
  • 55. 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);...
  • 56. 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
  • 60. Warping baseado em Campos  Entretenimento  Efeitos especiais, morphing  Correção de distorções óticas  Alinhamento de elementos correspondentes em duas ou mais imagens (registro)  Modelagem e visualização de deformações físicas
  • 61. 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
  • 62. 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
  • 64. 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
  • 65. 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
  • 66. Warping baseado em Campos  http://sites.google.com/site/joserap haelmarques/arquivos/PDI_UV.jnlp  http://sites.google.com/site/joserap haelmarques/arquivos/PDI_Warping. jnlp
  • 67. 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 ||  x  y 2 1 2 1  Produto interno: a.b = x1x2 +y1y2
  • 68. Warping baseado em Campos  “Norma” da projeção de a sobre b (o sinal indica o sentido em relação a b) a a.b || c ||  || b || b c
  • 69. Warping baseado em Campos  Vetor 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
  • 70. Warping baseado em Campos  Soluções: x2 = y1, y2 = -x1 x2 = -y1, y2 = x1 b a b’
  • 71. 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 ||
  • 72. 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
  • 73. 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.
  • 74. Warping baseado em Campos  PQ = (Xq-Xp, Yq-Yp) PQ1 = (Yq–Yp, Xp-Xq) PQ2 = (Yp–Yq, Xq-Xp)  Vamos usar PQ1 Q P
  • 75. 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]1/2
  • 76. Warping baseado em Campos  Cálculo de X’: v.  P ' Q' X '  P'u.P' Q' || P' Q' ||
  • 77. Warping baseado em Campos PX .PQ u 2 || PQ || PX .  PQ v || PQ || v.  P ' Q' X '  P'u.P' Q' || P' Q' ||
  • 78. 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.
  • 80. Warping baseado em Campos  http://sites.google.com/site/joserap haelmarques/arquivos/PDI_UV2.jnlp  http://sites.google.com/site/joserap haelmarques/arquivos/PDI_Warping 2.jnlp
  • 81. 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
  • 82. 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)
  • 83. Warping baseado em Campos  Parâmetro p controla a importância do tamanho do segmento  p = 0: independe do tamanho do segmento
  • 84. 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
  • 85. Warping baseado em Campos  Bons resultados são obtidos com: a entre 0 e 1 b=2 p = 0 ou p = 1.
  • 86. Warping baseado em Campos  Exemplo: P0 = (40, 10); Q0 = (20, 5) P0’ = (35, 15); Q0’ = (25, 20) 0 5 10 15 20 25 30 35 40 45 50 55 60 P1 = (20, 30); Q1 = (10, 35) 0 Q1’ P1’ = (25, 50); Q1’ = (5, 40) 5 Q1 X = (20, 25) 10 u0 = [(20-40) (20-40) + (25- 15 10)(5-10)] / [(20-40)2+ X (5-10)2] = 0.76 20 Q0 P1 v0 = [(20-40) (5-10) + (25- 25 Q0’ P1’ 10)(40-20)] / [(20-40)2+ 30 (5-10)2]1/2 = 19.40 35 X0’ = (35, 10) + 0.76 (25-35, P0’ 20-15) + 19.4 (20-15, 35- 40 P0 X0’ 25) / [(25-35)2 + (20- 45 15)2]1/2 X0’ = (36.03, 31.17) 50
  • 87. Warping baseado em Campos  Exemplo (cont): u1 = [(20-20) (10-20) + (25-30)(35-30)] / [(10- 20)2+ (35-30)2] = - 0.2 0 5 10 15 20 25 30 35 40 45 50 55 60 v1 = [(20-20) (35-30) + 0 (25-30)(20-10)] / [(10- 5 Q1’ 20)2+ (35-30)2]1/2 = - 10 Q1 4,47 15 X1’ = (25, 50) - 0.2 (5-25, X 40-50) -4,47 (40-50, 20 Q0 25-5) / [(25-5)2 + (40- 25 Q0’ P1 50)2]1/2 P1’ X1’ = (25, 50) + (4.6, 2) + 30 (2, -3.99) = (31.6, 35 X1’ 48,01) 40 P0’ X0’ P0 45 50
  • 88. Warping baseado em Campos  Exemplo (cont): Dados a = 0.1; b = 2; p= 0 wi = 1/[0.1+di]2 d0 = v0 = 19.4 => w0 = 0 5 10 15 20 25 30 35 40 45 50 55 60 0.0026 0 5 Q1’ d1 = distância de X a P1 = Q1 [(20-20)2 + (25-30)2]1/2 10 = 5 =>: w1 = 0.0384 15 X’ = [0.0026* (36.03, 20 Q0 X 31.17) + 0.0384*(31.6, P1 48,01)]/( 0.0026+ 25 Q0’ P1’ 0.0384) 30 X’ X’ = (31.88, 46,94) X1’ 35 P0’ X0’ 40 P0 45 50
  • 89. Warping baseado em Campos 0 5 10 15 20 25 30 35 40 45 50 55 60 0 5 Q1’ Q1 10 15 X 20 Q0 P1 25 Q 0’ P1’ 30 35 P0’ 40 X0’ P0 45 50
  • 90. Warping baseado em Campos 0 5 10 15 20 25 30 35 40 45 50 55 60 0 5 Q1’ Q1 10 15 X 20 Q0 P1 25 Q0’ P1’ 30 35 X1’ P0’ 40 X0’ P0 45 50
  • 91. Warping baseado em Campos 0 5 10 15 20 25 30 35 40 45 50 55 60 0 5 Q1’ Q1 10 15 X 20 Q0 P1 25 Q 0’ P1’ 30 X’ 35 X1’ P0’ 40 X0’ P0 45 50
  • 92. Warping baseado em Campos  http://sites.google.com/site/joserap haelmarques/arquivos/PDI_Warping N.jnlp  http://sites.google.com/site/joserap haelmarques/arquivos/PDI_Warping N_FixSize.jnlp
  • 93. 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.
  • 94. Morphing Inicial Warping Final
  • 95. Morphing Warping I Inicial Final Warping F
  • 96. Morphing Warping I Inicial Final Warping F
  • 97. Morphing Inicial Warping Final
  • 100. Morphing ai c1i c2i c3i c4i c5i c6i c7i c8i c9i bi
  • 101. Morphing Inicial 0 Warping 1 Warping 2 Warping 3 Final 4
  • 102. Morphing Warping 1 I Warping 2 I Warping 3 I Inicial 0 Final 4 Warping 1 F Warping 2 F Warping 3 F
  • 104. Convolução  Convolução de s(t) e h(t):  g (t )  s (t ) * h (t )   s( )h(t   )d 
  • 105. Convolução  g (t )  s (t ) * h (t )   s( )h(t   )d  h ( ) s(t) t3  (0,0) t0 t1 t 0 t2 h (t   ) h (  ) -t3 -t2 0   -t3+t -t2+t
  • 106. Convolução  Observe que g(t) = 0 para t  [t0  t2 , t1  t3 ]
  • 107. 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.
  • 108. 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 
  • 109. 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 
  • 110. 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
  • 111. 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
  • 112. Convolução Discreta Linear s[n] Filtro g[n] h[n]  g[n]  s[n ] * h[n]   s[ ]h[n   ]   
  • 113. 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
  • 114. 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
  • 115. 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
  • 116. Resposta ao impulso  h[n]:  Resposta ao impulso  Máscara convolucional  Kernel do filtro  Vetor de coeficientes do filtro
  • 117. 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  N1 s e [n ]   he [n ]   0, N 0  n  N 0, N1  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
  • 118. Convolução Circular x Linear  Fazendo-se N = N0 + N1 – 1 s[n]  h[n]  s[n] * h[n]
  • 119. 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
  • 120. 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
  • 121. 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
  • 122. Máscaras Convolucionais  Em geral:  Máscaras de integração somam para 1  Máscaras de diferenciação somam para 0
  • 123. Correlação  Convolução:  g[n]  s[n ] * h[n]   s[ ]h[n   ]     Correlação:  g[n]  s[n]  h[n]   s[ ]h[  n]     Quando um dos sinais é par, correlação = convolução
  • 124. 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
  • 125. 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 ...
  • 126. 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]
  • 127. 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      
  • 128. 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]
  • 129. 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.
  • 130. 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
  • 131. 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
  • 132. 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
  • 133. 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 
  • 134. 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   f0  0 1/ 2  2  1 1/ 2 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
  • 135. 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
  • 136. 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
  • 137. 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
  • 138. 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
  • 139. 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).
  • 140. 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 ]     ck X k cos  2 N , n  0,1,...,N  1 N k 0  
  • 141. 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
  • 142. 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
  • 143. 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
  • 144. 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
  • 145. 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
  • 146. 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
  • 147. 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
  • 148. 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
  • 149. 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
  • 150. 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
  • 151. 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  
  • 152. 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
  • 153. 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
  • 154. DCT – Exemplo 1 (Cont.) g10 g1+g3+g10 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
  • 155. 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
  • 156. 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 1000 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
  • 157. DCT – Exemplo 2 (Cont.) 150 60  5 π  f 1  f 2  ...  f 6 f 5 [n]  -34.55 cos 2π n  40  2N 2N  100 20 50 0 0 -20 -50 -40 - -60 100 0 10 20 30 40 50 60 0 10 20 30 40 50 60 150 60  6 π  f 1  f 2  ...  f 6 f 6 [n]  -33.29 cos 2 π n  40  2N 2N  100 20 50 0 0 -20 -50 -40 -60 - 100 0 10 20 30 40 50 60 0 10 20 30 40 50 60
  • 158. DCT – Exemplo 2 (Cont.) 200 60  7 π  f 1  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 - 1000 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 100
  • 159. 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 1000 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 1000 10 20 30 40 50 60
  • 160. DCT – Exemplo 2 (Cont.) 600 60  20 π  f 1  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 2000 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  0 800 20 600 0 400 -20 200 -40 0 -60 - 200 0 10 20 30 40 50 60 0 10 20 30 40 50 60
  • 161. DCT – Exemplo 2 (Cont.) 60  60 π  120 f1  f 2  ...  f 60 f 60 [n]  -6.73 cos 2π n  0 40  2N 2N  100 0800 20 600 0 400 -20 200 -40 0 -60 - 0 10 20 30 40 50 60 2000 10 20 30 40 50 60 60  63 π  120 f1  f 2  ...  f 63 f 63 [n]  -1.51cos 2 π n   2N 2N  0 100 40 0800 20 600 0 400 -20 200 -40 0 -60 - 0 10 20 30 40 50 60 2000 10 20 30 40 50 60
  • 162. 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
  • 163. 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
  • 164. Freqüências em Hz  Ta = 1/fa (Período de amostragem)  N amostras ---- (N-1)Ta segundos 1 1 fa f1  (adimensio nal)  f1   Hz 2N 2( N  1)Ta 2( N  1) fa fa f N 1  ( N  1)  Hz 2( N  1) 2
  • 165. 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
  • 166. 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
  • 167. 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
  • 168. 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
  • 169. 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
  • 170. 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
  • 171. Freqüências e Conteúdo de Freqüência  Sinal periódico  Freqüência  Freqüências componentes  Sinal não-periódico:  Freqüências componentes
  • 172. 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?
  • 173. 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
  • 174. 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
  • 175. 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
  • 176. 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
  • 177. 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
  • 178. 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
  • 179. 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
  • 180. 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
  • 181. 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
  • 182. 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
  • 183. 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
  • 184. 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
  • 185. 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
  • 186. 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
  • 187. 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 5 5 5 5 5 5
  • 188. 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)
  • 190. 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
  • 191. 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
  • 192. Eliminação de pixels revisitada  Por que redução de imagens por eliminação de pixel deve ser evitada?  Sinal original digitalizado com fa =2fmax  No. de amostras do sinal digital reduzido pela metade por eliminação de amostras -> nova freqüência de amostragem f’a = fa/2 = fmax -> freqüência máxima do sinal analógico digitalizada sem aliasing = f’a/2 = fmax/2
  • 193. Eliminação de pixels revisitada  Por que redução de imagens (ou outros sinais) por eliminação de pixel (ou amostras) deve ser evitada?  Aliasing!  Usar filtro passa-baixas!
  • 194. Filtros no domínio da freqüência  Multiplicar o sinal no domínio da freq., S, 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)
  • 195. 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
  • 196. Filtros no domínio da freqüência  Combinação de filtros  Filtros não-ideais (corte suave, |H(fc)|=(1/2)1/2 ou |H(fc)|=1/2)
  • 197. 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  2 N  2N m 0 n 0  2N    1 N 1N 1  (2k  1)m   (2l  1)n  x[m, n]    ck cl X [k , l ] cos  2 N  cos  2 N  2 N k 0 l 0    
  • 198. DCT 2-D  Imagem “cosseno na vertical”, 256 x 256, 8 ciclos (k = 16) e sua DCT normalizada
  • 199. DCT 2-D  Imagem “cosseno na vertical”, 256 x 256, 16 ciclos (k = 32) e sua DCT normalizada
  • 200. DCT 2-D  Imagem “cosseno na horizontal x cosseno na vertical”, 256 x 256, 16 ciclos (k = 32) e sua DCT normalizada
  • 201. DCT 2-D  Imagem “cosseno na horizontal x cosseno na vertical”, 256 x 256, 8 x 16 ciclos e sua DCT normalizada
  • 202. DCT 2-D  Imagem “Lena” (256x256) e sua DCT normalizada
  • 203. DCT 2-D  Imagem “Lena” (256x256) e o log(DCT+1) normalizado
  • 204. Transformada de Fourier Discreta (DFT) N 1 j 2un 1   Direta: F [u ]  N  s[n]e N n 0 N 1 j 2un  Inversa: s[n ]   F [u]e N u 0 n, u = 0, 1, ..., N-1 j  1  Fórmula de Euler: e j  cos   j sen 
  • 205. Duas propriedades essenciais F [u  N ]  ? |F[-u]| = ?
  • 206. Duas propriedades essenciais  DFT é periódica de período N: F [u  N ]  F (u)  Espectro de Fourier é função par: |F[u]| = |F[-u]|
  • 207. Esboço do Espectro de Fourier |F[u]| u -N/2 N/2 N-1  u = 0, N, 2N,...: freq. 0  u = N/2, 3N/2,...: freq. máxima (N par)  u = (N-1)/2,...: freq. máxima (N ímpar)
  • 208. Freqüências em Hz  Ta = 1/fa (Período de amostragem)  N amostras ---- (N-1)Ta segundos 1 1 fa f1  (adimensio nal)  f1   Hz N ( N  1)Ta N  1 N  1 fa fa f( N 1) / 2   Hz 2 ( N  1) 2
  • 209. Fourier 2-D  Operação separável  Complexidade elevada C 1 R 1 1 F [u, v ]  RC   s[m, n]e  j 2 ( um / C  vn / R ) m 0n 0 C 1 R 1 s[m, n]    F [u, v]e j 2 ( um / C  vn / R ) u 0 v 0
  • 210. Exibição do Espectro de Fourier 2-D Flog[u, v] = round[(L - 1) log(1+|F[u, v]|)/Fmax2]
  • 211. Teorema da Convolução  Se g[m, n]  s[m, n]  h[m, n]  Então:  G[u,v] = H[u,v]F[u,v] onde G[u,v]: DFT de g[m,n] F[u,v]: DFT de s[m,n] H[u,v]: DFT de h[m,n]  H[u,v]: Função de transferência do filtro
  • 212. Filtros: espaço x freqüência  Projeto de filtro no domínio da freqüência (Fourier)  Método imediato: H[k], k = 0..N-1  Como filtrar sinais no domínio do tempo, em tempo real?  Convolução com h[n], n = 0..N-1 pode ser proibitiva para n grande  Encontrar ht[n], n = 0..M-1, com M < N, de modo a obter uma aproximação adequada para H[k].
  • 213. Filtros: espaço x freqüência  Para eficiência computacional e redução de custos, o número de coeficientes do filtro deve ser o menor possível  Projetar filtros relativamente imunes ao truncamento
  • 214. Questões do PosComp 2002  51. Histograma de uma imagem com K tons de cinza é :  a) Contagem dos pixels da imagem.  b) Contagem do número de tons de cinza que ocorreram na imagem.  c) Contagem do número de vezes que cada um dos K tons de cinza ocorreu na imagem.  d) Contagem do número de objetos encontrados na imagem.  e) Nenhuma alternativa acima.  52. filtro da mediana é :  a) Indicado para detectar bordas em imagens.  b) Indicado para atenuar ruído com preservação de bordas (i.é rápidas transições de nível em  imagens).  c) Indicado para detectar formas específicas em imagens.  d) Indicado para detectar tonalidades específicas em uma imagem.  e) Nenhuma das respostas acima.
  • 215. Questões do PosComp 2002  51. Histograma de uma imagem com K tons de cinza é :  a) Contagem dos pixels da imagem.  b) Contagem do número de tons de cinza que ocorreram na imagem.  c) Contagem do número de vezes que cada um dos K tons de cinza ocorreu na imagem.  d) Contagem do número de objetos encontrados na imagem.  e) Nenhuma alternativa acima.  52. filtro da mediana é :  a) Indicado para detectar bordas em imagens.  b) Indicado para atenuar ruído com preservação de bordas (i.é rápidas transições de nível em  imagens).  c) Indicado para detectar formas específicas em imagens.  d) Indicado para detectar tonalidades específicas em uma imagem.  e) Nenhuma das respostas acima.
  • 216. Questões do PosComp 2004  56) Considerando as declarações abaixo, é incorreto afirmar:  a) Filtros passa-altas são utilizados para detecção de bordas em imagens  b) A transformada discreta de Fourier nos permite obter uma representação de uma imagem no domínio freqüência  c) Filtragem no domínio espacial é realizada por meio de uma operação chamada “convolução”  d) Os filtros Gaussiano e Laplaciano são exemplos de filtro passa-baixas  e) O filtro da mediana pode ser utilizado para redução de ruído em uma imagem  58) Identifique a declaração incorreta:  a) As operações de ajuste de brilho e contraste são operações lineares  b) A equalização de histograma é uma transformação não-linear e específica para cada imagem  c) A transformação necessária para calcular o negativo de uma imagem pode ser aplicada simultaneamente (i.e., em paralelo) a todos pixels da imagem original  d) A equalização de histograma pode ser obtida a partir de um histograma cumulativo da imagem original  e) O objetivo da equalização de histograma é reduzir o constrastre nas regiões da imagem que correspondem à porção do histograma com maior concentração de pixels
  • 217. Questões do PosComp 2004  56) Considerando as declarações abaixo, é incorreto afirmar:  a) Filtros passa-altas são utilizados para detecção de bordas em imagens  b) A transformada discreta de Fourier nos permite obter uma representação de uma imagem no domínio freqüência  c) Filtragem no domínio espacial é realizada por meio de uma operação chamada “convolução”  d) Os filtros Gaussiano e Laplaciano são exemplos de filtro passa-baixas  e) O filtro da mediana pode ser utilizado para redução de ruído em uma imagem  58) Identifique a declaração incorreta:  a) As operações de ajuste de brilho e contraste são operações lineares  b) A equalização de histograma é uma transformação não-linear e específica para cada imagem  c) A transformação necessária para calcular o negativo de uma imagem pode ser aplicada simultaneamente (i.e., em paralelo) a todos pixels da imagem original  d) A equalização de histograma pode ser obtida a partir de um histograma cumulativo da imagem original  e) O objetivo da equalização de histograma é reduzir o constrastre nas regiões da imagem que correspondem à porção do histograma com maior concentração de pixels
  • 218. Questões do PosComp 2005  59. O processo de análise de imagens é uma seqüência de etapas que são iniciadas a partir da definição do problema. A seqüência correta destas etapas é:  (a) pré-processamento, aquisição, segmentação, representação, reconhecimento.  (b) aquisição, pré-processamento, segmentação, representação, reconhecimento.  (c) aquisição, pré-processamento, representação, segmentação, reconhecimento.  (d) aquisição, representação, pré-processamento, segmentação, reconhecimento.  (e) pré-processamento, aquisição, representação, segmentação, reconhecimento.  60. O termo imagem se refere a uma função bidimensional de intensidade de luz, denotada por f(x; y), onde o valor ou amplitude de f nas coordenadas espaciais (x; y) representa a intensidade (brilho) da imagem neste ponto. Para que uma imagem possa ser processada num computador, a função f(x; y) deve ser discretizada tanto espacialmente quanto em amplitude. Estes dois processos recebem as seguintes denominações, respectivamente:  (a) translação e escala.  (b) resolução e escala.  (c) resolução e ampliação.  (d) amostragem e quantização.  (e) resolução e quantização.
  • 219. Questões do PosComp 2005  59. O processo de análise de imagens é uma seqüência de etapas que são iniciadas a partir da definição do problema. A seqüência correta destas etapas é:  (a) pré-processamento, aquisição, segmentação, representação, reconhecimento.  (b) aquisição, pré-processamento, segmentação, representação, reconhecimento.  (c) aquisição, pré-processamento, representação, segmentação, reconhecimento.  (d) aquisição, representação, pré-processamento, segmentação, reconhecimento.  (e) pré-processamento, aquisição, representação, segmentação, reconhecimento.  60. O termo imagem se refere a uma função bidimensional de intensidade de luz, denotada por f(x; y), onde o valor ou amplitude de f nas coordenadas espaciais (x; y) representa a intensidade (brilho) da imagem neste ponto. Para que uma imagem possa ser processada num computador, a função f(x; y) deve ser discretizada tanto espacialmente quanto em amplitude. Estes dois processos recebem as seguintes denominações, respectivamente:  (a) translação e escala.  (b) resolução e escala.  (c) resolução e ampliação.  (d) amostragem e quantização.  (e) resolução e quantização.
  • 220. Questões do PosComp 2006  47. [TE] Considere os filtros espaciais da média (m) e Mediana (M) aplicados em imagens em níveis de cinza f e g. Qual par de termos ou expressões a seguir não está associado, respectivamente, a características gerais de m e M?  (a) m(f + g) = m(f) + m(g); M(f + g) != M(f) + M(g)  (b) ruído gaussiano; ruído impulsivo  (c) convolução; filtro estatístico da ordem  (d) preservação de pequenos componentes; não preservação de pequenos componentes  (e) filtragem com preservação de contornos; filtragem sem preservação de contornos  48. [TE] A convolução da máscara [-1 2 -1] com uma linha de uma imagem contendo uma seqüência de pixels do tipo [... 3 4 5 6 7 8 9 10 ...] resulta na transformação (sem considerar efeitos de borda):  (a) [...3 4 5 6 7 8 9 10...] e representa o filtro da média com 2-vizinhos mais próximos  (b) [...0 0 0 0 0 0 0 0...] e representa o laplaciano no espaço discreto  (c) [...0 0 0 0 0 0 0 0...] e representa uma erosão morfológica  (d) [...1 1 1 1 1 1 1 1...] e é equivalente a um filtro passa-baixas  (e) [...7 9 11 13 15 17 19...] e é equivalente a um filtro passa-altas
  • 221. Questões do PosComp 2006  47. [TE] Considere os filtros espaciais da média (m) e Mediana (M) aplicados em imagens em níveis de cinza f e g. Qual par de termos ou expressões a seguir não está associado, respectivamente, a características gerais de m e M?  (a) m(f + g) = m(f) + m(g); M(f + g) != M(f) + M(g)  (b) ruído gaussiano; ruído impulsivo  (c) convolução; filtro estatístico da ordem  (d) preservação de pequenos componentes; não preservação de pequenos componentes  (e) filtragem com preservação de contornos; filtragem sem preservação de contornos  48. [TE] A convolução da máscara [-1 2 -1] com uma linha de uma imagem contendo uma seqüência de pixels do tipo [... 3 4 5 6 7 8 9 10 ...] resulta na transformação (sem considerar efeitos de borda):  (a) [...3 4 5 6 7 8 9 10...] e representa o filtro da média com 2-vizinhos mais próximos  (b) [...0 0 0 0 0 0 0 0...] e representa o laplaciano no espaço discreto  (c) [...0 0 0 0 0 0 0 0...] e representa uma erosão morfológica  (d) [...1 1 1 1 1 1 1 1...] e é equivalente a um filtro passa-baixas  (e) [...7 9 11 13 15 17 19...] e é equivalente a um filtro passa-altas
  • 222. Questões do PosComp 2007  61. [TE] O realce de imagem tem como objetivo destacar detalhes finos procurando obter uma representação mais adequada do que a imagem original para uma determinada aplicação. Dessa forma, sobre as técnicas utilizadas no realce de imagens, é CORRETO afirmar que  (a) o melhor resultado obtido depende do filtro aplicado na imagem. Normalmente, o mais aplicado é o filtro da mediana.  (b) o melhor resultado é obtido com a aplicação de filtros passa- baixas, cujos parâmetros dependem do resultado desejado.  (c) a aplicação de filtros da média sempre oferece resultado adequado no realce de imagens.  (d) o resultado mais adequado no realce de imagens está associado à aplicação de filtro passa-altas e da interpretação subjetiva do observador que deverá ter conhecimento a priori da imagem original.  (e) o resultado mais adequado no realce de imagens está associado à aplicação de filtro passa-baixas e da interpretação subjetiva do observador que deverá ter conhecimento a priori da imagem original.  62 e 63
  • 223. Questões do PosComp 2007  61. [TE] O realce de imagem tem como objetivo destacar detalhes finos procurando obter uma representação mais adequada do que a imagem original para uma determinada aplicação. Dessa forma, sobre as técnicas utilizadas no realce de imagens, é CORRETO afirmar que  (a) o melhor resultado obtido depende do filtro aplicado na imagem. Normalmente, o mais aplicado é o filtro da mediana.  (b) o melhor resultado é obtido com a aplicação de filtros passa- baixas, cujos parâmetros dependem do resultado desejado.  (c) a aplicação de filtros da média sempre oferece resultado adequado no realce de imagens.  (d) o resultado mais adequado no realce de imagens está associado à aplicação de filtro passa-altas e da interpretação subjetiva do observador que deverá ter conhecimento a priori da imagem original.  (e) o resultado mais adequado no realce de imagens está associado à aplicação de filtro passa-baixas e da interpretação subjetiva do observador que deverá ter conhecimento a priori da imagem original.