Slides de PDI 2009 - Raphael Update 5

  • 961 views
Uploaded on

 

More in: Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
961
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
35
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 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 
  • 27. Controle de contraste adaptativo Original c<σ c>σ
  • 28. Pseudo-cor Nível de R G B cinza 0 15 20 30 1 15 25 40 ... L-1 200 0 0
  • 29. Pseudo-cor
  • 30. Pseudo-cor
  • 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]
  • 36. 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)
  • 37. Detecção de Movimento L  1, se | f1  f 2 | Lt g 0, caso contrario f1 f2 g
  • 38. Detecção de Movimento
  • 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
  • 57. Warping (Deformação)
  • 58. Warping (Deformação)
  • 59. Warping (Deformação)
  • 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
  • 63. Warping baseado em Campos
  • 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.
  • 79. Warping baseado em Campos
  • 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 Q0’ 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 Q0’ 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
  • 98. Morphing
  • 99. Morphing
  • 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
  • 103. Morphing  Exemplo:  http://www.youtube.com/watch?v= wZurRt0TidI
  • 104. 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.
  • 105. 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
  • 106. 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
  • 107. 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
  • 108. 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 
  • 109. 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
  • 110. 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
  • 111. 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
  • 112. 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
  • 113. 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
  • 114. 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).
  • 115. 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  
  • 116. 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
  • 117. 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
  • 118. 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
  • 119. 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
  • 120. 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
  • 121. 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
  • 122. 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
  • 123. 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
  • 124. 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
  • 125. 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
  • 126. 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  
  • 127. 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
  • 128. 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
  • 129. 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
  • 130. 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
  • 131. 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
  • 132. 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
  • 133. 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
  • 134. 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
  • 135. 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
  • 136. 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
  • 137. 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
  • 138. 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
  • 139. 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
  • 140. 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
  • 141. 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
  • 142. 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
  • 143. 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
  • 144. 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
  • 145. 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
  • 146. Freqüências e Conteúdo de Freqüência  Sinal periódico  Freqüência  Freqüências componentes  Sinal não-periódico:  Freqüências componentes
  • 147. 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?
  • 148. 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
  • 149. 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
  • 150. 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
  • 151. 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
  • 152. 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
  • 153. 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
  • 154. 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
  • 155. 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
  • 156. 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
  • 157. 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
  • 158. 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
  • 159. 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
  • 160. 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
  • 161. 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
  • 162. 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
  • 163. 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)
  • 164. Aliasing
  • 165. 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
  • 166. 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
  • 167. 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
  • 168. 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!
  • 169. 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)
  • 170. 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
  • 171. 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)
  • 172. 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    
  • 173. DCT 2-D  Imagem “cosseno na vertical”, 256 x 256, 8 ciclos (k = 16) e sua DCT normalizada
  • 174. DCT 2-D  Imagem “cosseno na vertical”, 256 x 256, 16 ciclos (k = 32) e sua DCT normalizada
  • 175. DCT 2-D  Imagem “cosseno na horizontal x cosseno na vertical”, 256 x 256, 16 ciclos (k = 32) e sua DCT normalizada
  • 176. DCT 2-D  Imagem “cosseno na horizontal x cosseno na vertical”, 256 x 256, 8 x 16 ciclos e sua DCT normalizada
  • 177. DCT 2-D  Imagem “Lena” (256x256) e sua DCT normalizada
  • 178. DCT 2-D  Imagem “Lena” (256x256) e o log(DCT+1) normalizado
  • 179. 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 
  • 180. Duas propriedades essenciais F [u  N ]  ? |F[-u]| = ?
  • 181. 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]|
  • 182. 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)
  • 183. 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
  • 184. 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
  • 185. Exibição do Espectro de Fourier 2-D Flog[u, v] = round[(L - 1) log(1+|F[u, v]|)/Fmax2]
  • 186. 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
  • 187. 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].
  • 188. 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
  • 189. 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   DCT inversa 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  
  • 190. Transformada Cosseno Discreta (DCT)  Freqüência: k 1 fk  f k  f k 1  2N 2N  Período: Tk  2N Tk  Tk 1  2N k k (k  1)  Fase: k  k   k   k 1  2N 2N
  • 191. DCT 2D
  • 192. Zoom na DCT 2D
  • 193. Convolução  Convolução de s(t) e h(t):  g (t )  s (t ) * h (t )   s( )h(t   )d 
  • 194. Convolução  s(n) = 1 2 3 4 5 2 1  h(n) = 3 2 1 0 1 2  h(n) espelhado = 2 1 0 1 2 3
  • 195. Convolução 1 2 3 4 5 2 1 2 1 0 1 2 3
  • 196. Convolução 1 2 3 4 5 2 1 2 3 3
  • 197. Convolução 1 2 3 4 5 2 1 1 2 3 3 3
  • 198. Convolução 1 2 3 4 5 2 1 0 1 2 3 2 6 3 8
  • 199. Convolução 1 2 3 4 5 2 1 1 0 1 2 3 1 4 9 3 8 14
  • 200. Convolução 1 2 3 4 5 2 1 2 1 0 1 2 3 0 2 6 12 3 8 14 20
  • 201. Convolução 1 2 3 4 5 2 1 2 1 0 1 2 3 1 0 3 8 15 3 8 14 20 27
  • 202. Convolução 1 2 3 4 5 2 1 2 1 0 1 2 3 4 3 0 5 4 3 3 8 14 20 27 24 19
  • 203. Convolução 1 2 3 4 5 2 1 2 1 0 1 2 3 8 5 0 1 3 8 14 20 27 24 19 14 14
  • 204. Convolução 1 2 3 4 5 2 1 2 1 0 1 2 10 2 0 3 8 14 20 27 24 19 14 14 12
  • 205. Convolução 1 2 3 4 5 2 1 2 1 0 1 4 1 3 8 14 20 27 24 19 14 14 12 5
  • 206. Convolução 1 2 3 4 5 2 1 2 1 0 2 3 8 14 20 27 24 19 14 14 12 5 2
  • 207. Convolução 1 2 3 4 5 2 1 3 2 1 0 1 2 3 8 14 20 27 24 19 14 14 12 5 2
  • 208. Convolução  Convolução de s(t) e h(t):  g (t )  s (t ) * h (t )   s( )h(t   )d 
  • 209. 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
  • 210. Convolução  Observe que g(t) = 0 para t  [t0  t2 , t1  t3 ]
  • 211. 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.
  • 212. 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 
  • 213. 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 
  • 214. 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
  • 215. 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
  • 216. Características da Convolução  Associatividade: f g  g f  Distributividade f  ( g  h)  ( f  g )  ( f  h)  Associatividade com multiplicação escalar: a( f  g )  (af )  g  f  (ag )
  • 217. Convolução Discreta Linear s[n] Filtro g[n] h[n]  g[n]  s[n ] * h[n]   s[ ]h[n   ]   
  • 218. 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
  • 219. 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
  • 220. 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
  • 221. Resposta ao impulso  h[n]:  Resposta ao impulso  Máscara convolucional  Kernel do filtro  Vetor de coeficientes do filtro
  • 222. 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
  • 223. Convolução Circular x Linear  Fazendo-se N = N0 + N1 – 1 s[n]  h[n]  s[n] * h[n]
  • 224. 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
  • 225. 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
  • 226. 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
  • 227. 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
  • 228. Máscaras Convolucionais  Em geral:  Máscaras de integração somam para 1  Máscaras de diferenciação somam para 0
  • 229. 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
  • 230. Correlação  s(n) = 3 2 4 1 3 8 4  h(n) = 3 7 5
  • 231. Correlação 3 2 4 1 3 8 4 7 5
  • 232. Correlação 3 2 4 1 3 8 4 3 7 5 15
  • 233. Correlação 3 2 4 1 3 8 4 3 7 5 15 31 43
  • 234. Correlação 3 2 4 1 3 8 4 3 7 5 15 31 43 39
  • 235. Correlação 3 2 4 1 3 8 4 3 7 15 31 43 39 34 64 85 52 12
  • 236. 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
  • 237. 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 ...
  • 238. 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]
  • 239. 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      
  • 240. 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]
  • 241. Correlação Normalizada 1 1 1 4 5 1 1 1 4 5 1 1 1 1 .02 .04 .07 .15 .35 .43 .56 .70 .97 .65 .30 .11 .02
  • 242. Correlação Normalizada 1 1 1 4 5 1 1 1 4 5 1 1 1 1 .02 .04 .07 .15 .35 .43 .56 .70 .97 .65 .30 .11 .02 central maior
  • 243. Correlação Normalizada 1 1 1 4 5 1 1 1 4 5 1 1 1 1 .02 .04 .07 .15 .35 .43 .56 .70 .97 .65 .30 .11 .02 deslocamento = 2
  • 244. Correlação Normalizada 1 1 1 4 5 1 1 1 4 5 1 1 1 1 .02 .04 .07 .15 .35 .43 .56 .70 .97 .65 .30 .11 .02 deslocamento = 2
  • 245. Correlação Normalizada 1 -2 -3 1 -2 -1 0 1 -2 -3 1 -2 -1 0 .0 -.05 .0 .4 .0 .05 1.0 .05 .0 .4 .0 0.05 .0 deslocamento = 2
  • 246. Correlação Normalizada  Correlação central = 1  Sinais exatamente iguais  Correlação central = 0  Sinais sem nenhuma correlação  Correlação central = -1  Sinais invertidos
  • 247. 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.
  • 248. 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.
  • 249. 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
  • 250. 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
  • 251. 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.
  • 252. 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.
  • 253. 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
  • 254. 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
  • 255. 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
  • 256. 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.