A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Imagem Digital Captura, Processamento, Interpretação, Criação, Reprodução, …

Apresentações semelhantes


Apresentação em tema: "Imagem Digital Captura, Processamento, Interpretação, Criação, Reprodução, …"— Transcrição da apresentação:

1 Imagem Digital Captura, Processamento, Interpretação, Criação, Reprodução, …

2 FORMAÇÃO DE UMA IMAGEM NUMA CÂMERA DIGITAL Captura da radiância de uma cena num plano

3 Câmera obscura e Câmera “pin-hole” Plymouth, UK

4 Câmera Obscura -- efeito natural Bellinzona no canton Ticino Switzerland.

5 Primeiras câmaras fotográficas Luis-Jacques-Mandé Daguerre ( ) 1839

6 Câmeras digitais

7 Captura da cor

8 Sensores

9 MONITORES Emissão da radiância num plano

10 Primeira imagem colorida (início do sec. XX) James Clerk Maxwell ( ) Scottish physicist.

11 RBG Images

12 Multi-fontes pontuais Nexus_one_screen_microscope.jpg (wiki) OLED

13 Impressão

14 Imagem: Modelo Matemático: Função u v L L(u,v) Função

15 Imagem colorida R G B u v

16 Imagem coloridas como 3 canais de cor =++ u v R R(u,v) u v G G(u,v) u v B B(u,v)

17 Imagem Digital Amostragem, quantização e codificação

18 Digitalização de Imagens Discretização espacial (amostragem)

19 Processos básicos Imagem de tons contínuos 64x54 Imagem amostrada amostragem 64x cores Imagem amostrada e quantizada quantização codificação 8*55, 1*20, 1*22, 1*23, …. Imagem amostrada, quantizada e codificada

20 Áudio (Sinal 1D)

21 Amostragem, quantização e codificação de f(x) x f(x)f(x) amostra partição do eixo x

22 codificação = (3, 4, 5, 5, 4, 2, 2, 3, 5, 5, 4, 2) Amostragem, quantização e codificação de f(x) x f(x)f(x) amostra quantizada           

23 (a) aumento de resolução Problemas associados a re-amostragem de um sinal digital f(x) x f(x)            função reconstruída pelo vizinho mais próximo função reconstruída por interpolação linear função original

24 Re-amostragem de f(x) x f(x)            função reconstruída pelo vizinho mais próximo função reconstruída por interpolação linear função original (b) redução de resolução

25 Parte 2 - Eliminação de ruídos e realce de arestas Aplicações da Transformada de Fourier Imagem Digital Conceitos, Processamento e Análise

26 Redução de ruídos Dada uma imagem I com um ruído n, reduza n o máximo que puder (preferencialmente elimine n completamente) sem alterar significativamente I. 20 dB significam

27 Dois tipos básicos de ruídos Ruído Gaussiano branco : processo estocástico de média zero, independente do tempo e dos espaço. é o mesmo processo estocástico que não varia no tempo. é uma variável aleatória com a distribuição:

28 Dois tipos básicos de ruídos Ruído impulsivo: causado por erro de transmissão, CCDs defeituosos, etc... Também chamado de pico e de sal e pimenta. são v.a. uniformemente distribuídas i min, i max, e l são parâmetos de controle da quantidade de ruídos.

29 Exemplo de ruído Gaussiano (  =5) e Impulsivo ( =0.99)

30

31 Imagem com ruído impulsivo Uso da mediana I ij = mediana Ω ij

32 Sinal com ruído

33 Suavização f h

34 Filtragem Gaussiana

35 Imagem Digital: Histogramas Uma outra maneira de ver a informação da imagem: probabilidade de ocorrência de um determinado valor, uso do intervalo [0,255], contraste,...

36 Histogramas de Imagem Colorida

37 Propriedades básicas de uma Imagem Digital

38 Convolução

39 Convolution Pictorially f(x) h(x)

40 Convolution f(t) x h(t-x)

41 Convolution Consider the function (box filter):

42 Convolution This function windows our function f(x). f(t)

43 Convolution This function windows our function f(x). f(t)

44 Convolution This function windows our function f(x). f(t)

45 Convolution This function windows our function f(x). f(t)

46 Convolution This function windows our function f(x). f(t)

47 Convolution This function windows our function f(x). f(t)

48 Convolution This function windows our function f(x). f(t)

49 Convolution This function windows our function f(x). f(t)

50 Convolution This function windows our function f(x). f(t)

51 Convolution This function windows our function f(x). f(t)

52 Convolution This function windows our function f(x). f(t)

53 Convolution This function windows our function f(x). f(t)

54 Convolution This function windows our function f(x). f(t)

55 Convolution This function windows our function f(x). f(t)

56 Convolution This function windows our function f(x). f(t)

57 Convolution This function windows our function f(x). f(t)

58 Convolution This function windows our function f(x). f(t)

59 Convolution This function windows our function f(x). f(t)

60 Convolution This function windows our function f(x). f(t)

61 Convolution This function windows our function f(x). f(t)

62 Convolution This function windows our function f(x). f(t)

63 Convolution This function windows our function f(x). f(t)

64 Convolution This particular convolution smooths out some of the high frequencies in f(x). f(x)  g(x) f(t)

65 Ilustação da convolução

66 Ilustração da convolução

67 ALIAS O problema de amostragem

68 Freqüência de Amostragem x f(x) x x

69 Sinal sub-amostrado

70 Estudo de sinais digitais Transformadas para o domínio da freqüencia Teorema de Nyquist e Alias

71 Harmônicos  t+  A-A T revisão A

72 Integrais de senos e cosenos em [- ,  ] cos(nx) sin(nx) n = 1 n = 2 sin(nx)cos(nx) revisão Áreas se compensam. Integrais resultam em 0.

73 Integrais de senos e cosenos em [- ,  ] Funções ortogonais revisão

74 Série de Fourier t f(t)f(t) 0 T Jean Baptiste Joseph Fourier ( ) Paper de 1807 para o Institut de France: Joseph Louis Lagrange ( ), and Pierre Simon de Laplace ( ).

75 Exemplo: Série de harmônicos

76 Série de Fourier: cálculo de a 0 t f(t)f(t) 0 T

77 Série de Fourier: a n e b n... t f(t)f(t) 0 T

78 Resumindo t f(t)f(t) 0 T

79 Domínios t f(t)f(t) 0 T w akak 0 w bkbk 0 tempo ou espaço freqüencia

80 Coeficientes de funções pares e ímpares f-ímpara k = 0 f-parb k = 0

81 Periodicidade da Série de Fourier t f(t)f(t) 0 T t f(t)f(t) 0 T

82 Números complexos x é a parte real y é a parte imaginária A é a magnitude  é a fase  A x eixo real eixo imagnário y revisão

83 Operação básicas com complexos revisão

84 Derivada de e i  t C.Q.D. revisão

85 Outras propriedades úteis i 1 revisão

86 Outras propriedades úteis (2) revisão 1 i -i o cosseno corresponde a média de dois harmônicos de freqüências w e -w

87 Outras propriedades úteis (2) revisão 1 i -i o seno também corresponde a dois harmônicos: w e -w

88 Outras propriedades úteis (3) revisão

89 Amplitude e fase de complexos  A-A Dado um valor: Amplitude Fase revisão

90 Série de Fourier com números complexos

91 Escrevendo em complexos

92 Serie de Fourier de Sinais Discretos

93 Sinal discreto t N-1 r

94 N tt...

95 onde:

96

97 Qual o valor? Inversa da inversa

98 Se s=k Se s ≠ k é a soma de uma PG de N termos e razão q. Mas

99 onde: Qual o valor? C.Q.D.

100 real imaginário  1 N =3 N =4 N =5 N =6

101 Transformada Discreta T - não é o período do sinal!

102 Transformada Discreta de Fourier todas as feqüências computadas são multiplas destas

103 Outro exemplo :=()f3t  10()cos2  t6()sin10  t.8()cos40  t

104 Transformada

105 Eixo de freqüência

106 Tutorial com o Excel

107 Discrete Cosine Transformation (DCT)

108 o cosseno pode substituir o seno

109 Resumindo t f(t)f(t) 0 T

110 N tt...

111 Aula 2

112 Serie de Fourier de Sinais Discretos

113 Sinal discreto t N-1 r

114 onde:

115 Transformada

116 Transformada de Fourier

117 Exemplo 1: Função caixa (box) box(x) x a b

118 Transformada da função box  F( w )  0 1/b2/b 3/b -1/b-2/b-3/b ab w sinc(  bw) box(x) x a b

119 Distribuição normal: Gaussiana

120 Exemplo 2: Gaussiana f(x) x || F(w) || w

121 Transformada da Gaussiana

122 Exemplo 3: Delta de Dirac f(x) x b/2 -b/2 1/b

123 Delta de Dirac de Gaussianas

124 Transformada do Delta de Dirac f(x) x (x)(x) || F(w) || w 1

125 Transformada do cosseno x

126 Exemplo 4: Cosseno || F(w) || w x

127 Exemplo 5: Sequência de impulsos w f(x) x b2b3b-b-2b || F(w) || 1/b 2/b -1/b -2/b f(x) x 1b2b3b-b-2b || F(w) || w 1/b 2/b -1/b -2/b

128 Pares importantes

129 Propriedades da transformada convolução

130 Filtragem com Transformada de Fourier FT X X FT -1

131 Amostragem e Reconstrução Observando os domínio do espaço e das freqüências

132 Sinal original domínio do espaçodomínio das freqüências

133 Sinal discretizado

134 Amostragem domínio do espaço domínio das freqüências produtoconvolução

135 Sinal discretizado domínio do espaço domínio das freqüências

136 Reconstrução domínio do espaço domínio das freqüências convoluçãoproduto

137 Retorno ao sinal original domínio do espaçodomínio das freqüências

138 Sinal original com mais altas freqüências domínio do espaçodomínio das freqüências

139 Mesma taxa de amostragem domínio do espaçodomínio das freqüências produtoconvolução

140 Sinal amostrado domínio do espaçodomínio das freqüências Não temos como reconstruir sem introduzir artefatos!

141 Teorema de Nyquist Para que um sinal de banda limitada (i.e. aqueles cuja a transformada resultam em zero para freqüências f > B) seja reconstruido plenamente ele precisa ser amostrado numa freqüência f >= 2B. Um sinal amostrado na freqüência (f=2B) é dito amostrado por Nyquist e f=2B é a freqüência de Nyquist. Não há perda de informação nos sinais amostrados na freqüência de Nyquist, e não adicionamos nenhuma informação se amostrarmos numa freqüência maior.

142 Aliasing Esta mistura de espectros é chamada de aliasing. Existem duas maneiras de lidarmos com aliasing. –Passar um filtro passa-baixa no sinal. –Aumentar a freqüência de amostragem.

143 Alias Texture errors

144 Parte 2 - Eliminação de ruídos e realce de arestas Aplicações da Transformada de Fourier Imagem Digital Conceitos, Processamento e Análise

145 Filtragem Gaussiana

146 Filtro Um filtro é um operador que atenua ou realça uma determinada freqüência Fácil de visualizar no domínio da freqüência onde: h(t) é o f(t) filtrado

147 Tipos de Filtros  FG =   = = H Passa baixa Passa alta Passa banda

148 Imagem filtrada com um filtro passa baixa

149 Imagem filtrada com um filtro passa alta

150 Filtragem no domínio espacial Filtragem no domínio espacial é obtida pela convolution (e vice-versa). ou: Na realidade é ao contrário: a TF é uma ferramenta para filtragem.

151 Mascara ou Filtro ou:

152 Discretização da Gaussiana 1D

153 Discretização da Gaussiana 2D

154 Separabilidade do filtro gaussiano

155 Transformada normalizada de Fourier

156 Transformada normalizada de Fourier: separação

157 Transformada normalizada de Fourier: Matriz H

158

159

160

161

162 Problemas com a Transformada de Fourier

163 Como tornar a TF invariante a rotação e escala?

164 Parte 3 - Processamentos apenas no espaço das cores Imagem Digital Conceitos, Processamento e Análise

165 Correção gama Ajustes de contraste e iluminação

166 Correção gama

167 Probabilidade 01 x DF(x) x0x0 x1x1 Função de densidade de probabilidade 01 x CDF(x) 1 Função de densidade acumulada de probabilidade

168 Mudança de variavel y = f (x) 01 x y=f(x) 1 01 y 1 01 x DF(y) 1 Transformaçã o monotônica e limitada ao intervalo [0,1]

169 Equalização de Histograma

170 Equalização do histograma

171 Tons de cinza e negativo L x,y = 0.299R x,y G x,y B x,y tons de cinza L x,y = L x,y

172 Outros exemplos com o PaintShopPro tm

173 Quantização de cores Quantização de 24 para 8 bits

174 A qualidade depende da imagem

175 Corte mediano

176

177 Parte 4 - Codificação e armazenamento de Imagens compressão e formatos de arquivos Imagem Digital Conceitos, Processamento e Análise

178 Codificação uniforme Uniforme tons # pixelscódigotam.# bits / / / / / / TOTAL30000 Podemos melhorar?

179 Construção da Árvore Huffman 1/ / / /7800 5/7600 6/ / / / /7800 5/7600 n0500 n0 6/7 1

180 Construção da Árvore Huffman 1/ / / /7800 5/7600 n0500 n0 6/7 1 1/ / /71600 n /7800 5/7 n1

181 Construção da Árvore Huffman 1/ / /71600 n /7800 1/ / n /71600 n0 6/7 1 5/7 n1 4/7 n2

182 Construção da Árvore Huffman 1/ / n /71600 n / / n0 6/7 1 5/7 n1 4/7 n2 3/7 n3

183 Construção da Árvore Huffman n / / n0 6/7 1 5/7 n1 4/7 n2 3/7 n3 n44000 n /72500 n4 2/7 0

184 Construção da Árvore Huffman n0 6/7 1 5/7 n1 4/7 n2 3/7 n3 n56000 n44000 n4 2/7 0 n44000 n /72500 n5 1/7 n6

185 Construção da Árvore Huffman n0 n1 n2 n3 n4 n5 n6 6/7 1 5/7 4/7 3/7 0 2/7 1/7

186 Codificação de Huffman UniformeHuffman tons# pixelscódigotam.# bitscódigotam.# bits / / / / / / TOTAL30000 TOTAL27000

187 Redundância de Codificação rp(r)Code 1l(r)l(r)p(r)Code 2l(r)l(r)p(r) / / / / / / L avg = r k = tons de cinza em uma imagem, k=0, 1,...,  p(r k ) = n k / n onde n k = número de pixels com tom r k n = número de pixels da imagem L avg =

188 Resultado da Teoria da Informação

189 Compressão de imagens Compressão de Imagens Compressão de Imagens Sem Perda Com Perda Preserva exatamente o conteúdo da imagem Taxas de compressão 3 : 1 Preserva de forma controlada o nível de qualidade da imagem Taxas de compressão que chegam a valores de mais de 100 : 1

190 Métodos de compressão Sem perdas –Run length encoding (RLE) - repetição –Huffman coding - histograma –Predictive coding - diferenças –Block coding (LZW) - dicionário Com perdas –Truncation coding - reduz a representação –Predictive coding - descarta diferenças altas –Block coding - dicionário aproximado –Transform coding - descarta frequencias altas Métodos compostos: JPEG, MPEG

191 Processo de compressão e descompressão Dados da Imagem Original 32, 45, 57, 68, 23, 100, 98,... 32, 45, 57, 68, 23, 100, 98,... Imagem Comprimida 32, 45, 57, 68, 23, 100, 98,... Dados da Imagem Original Compressão da imagem Imagem Comprimida 32, 45, 57, 68, 23, 100, 98,... Transporte e/ou Armazenamento Descompressão da imagem  

192 Fundamentos da Compressão de Imagens codificação entre pixels psico-visual A compressão de uma imagem é obtida quando se elimina a redundância de:

193 Redundância entre pixels 640 colunas x 480 linhas x 1 byte/pixel = 300 KBytes 480*(1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0) = ~18 Kbytes onde 1 = 32 bytes de preto e 0 = 32 bytes de branco

194 Compressão - RLE Objetivo Reduzir a quantidade de dados redundantes. Exemplo AAAAAAxxx6A3x Caracterísiticas Simples e rápido, porém a eficiência depende da imagem a ser comprimida.

195 Run-Length Encoding | 578 | 179 | 480 | 2 imagem binária

196 Compressão do jpeg

197 Aplicações são tecnologicamente complexas: exemplo: algoritmo do JPEG FDCT Source Image Quantizer Entropy Encoder Table Compressed image data DCT-based encoding 8x8 blocks R B G

198

199

200

201 Equations for JPEG DCT Forward DCT: Inverse DCT:

202 Visualization of Basis Functions Increasing frequency

203 Organização de pixels num array no formato TGA (targa) bgra b g rabbar g 0 1 …... ar g w-1 x y unsigned char *bgra_vector; … offset=4*(w*y+x); blue = bgra_vector[offset]; green = bgra_vector[offset+1]; red = bgra_vector[offset+2]; alpha = bgra_vector[offset+3]; h-1 3 Pixel (x,y)

204 Outra ordem no plano

205 Tipo Abstrato Imagem Image *imgCreate (int w, int h); void imgDestroy (Image *image); int imgGetWidth(Image * image); int imgGetHeight(Image * image); float * imgGetRGBData(Image * image); void imgSetPixel3fv(Image *image, int x, int y, float * color); void imgSetPixel3ubv(Image *image, int x, int y, unsigned char *color); void imgGetPixel3fv(Image *image, int x, int y, float *color); void imgGetPixel3ubv(Image *image, int x, int y, unsigned char *color); Image * imgReadBMP(char *filename); int imgWriteBMP(char *filename, Image * image); Image * imgCopy(Image * image); Image * imgGrey(Image * image); Image * imgResize(Image * img0, int w1, int h1); /*- implementação do tipo Imagem */ struct image_imp { int width; /* largura (width) em pixels */ int height; /* altura (height) em pixels */ float *buf; /* buffer RGB */ };

206 Arquivos Targa RGBA CabeçalhoPixels (bgra,bgra, …,bgra) /* escreve o cabecalho */ putc(byteZero,filePtr); /* no. de caracteres no campo de id da imagem */ putc(byteZero,filePtr); /* imagem nao tem palheta de cores */ putc(imageType,filePtr); /* = 2 -> imagem "true color" (RGBA) */ putuint(shortZero,filePtr);/* info sobre a tabela de cores (inexistente) */ putuint(shortZero,filePtr); /* idem */ putc(byteZero,filePtr); /* idem */ putuint(shortZero,filePtr); /* =0 origem em x */ putuint(shortZero,filePtr); /* =0 origem em y */ putuint(img->width,filePtr); /* largura da imagem em pixels */ putuint(img->height,filePtr); /* altura da imagem em pixels */ putc(bitDepth,filePtr); /* numero de bits de um pixel */ putc(byteZero, filePtr); /* origem canto inf esquedo sem entrelacamento */ unsigned char imageType=2 /* RGB(A) sem compressão */ unsigned char bitDepth=32; /* 32 bits por pixel */ unsigned char byteZero=0; /* usado para escrever um byte zero no arquivo */ short int shortZero=0; /* usado para escrever um short int zero no arquivo */

207 Organização de pixels num array no formato PPM (o mais simples) w x y Pixel (x,y) unsigned char *rgb_vector; … offset=3*(w*y+x); red = rgb_vector[offset]; green = rgb_vector[offset+1]; blue = rgb_vector[offset+2]; h

208 Formato PPM File_signature "P6". White_space (blanks, TABs, CRs, LFs). Width, w, (ASCII decimal characters). White_space (blanks, TABs, CRs, LFs). Height, h, (ASCII decimal characters). White_space (blanks, TABs, CRs, LFs). Max_color, max, (ASCII decimal characters). White_space (blanks, TABs, CRs, LFs). Pixels, (3*w*h bytes rgb components of pixels) Comments from # to the end of line lines  70 characters

209 Formato PPM P6 # Created by Paint Shop Pro =?:?A exemplo

210 Gravação em PPM int ppm_write(int w, int h, unsigned char *rgb, char *file_name) { FILE *fp; fp = fopen(file_name, "wb"); if (fp == NULL) return 0; if (fprintf(fp, "P6\n%d %d\n255\n", w, h) <= 0) { fclose(fp); return 0; } if (fwrite(rgb, 3*w*h, 1, fp) != 1) { fclose(fp); return 0; } fclose(fp); return 1; }

211 Leitura em PPM int ppm_read(int *p_w, int *p_h, unsigned char **p_rgb, char *file_name) { FILE *fp; char line[80]; int rgb_size; int max; fp = fopen(file_name, "rb"); if (fp == NULL) { printf(”Error reading %s",file_name); return 0;} fgets(line,80,fp); if(strcmp(line,"P6\n")) { printf(”Wrong signature\n"); return 0; } while (fscanf( fp, " %d ", p_w ) != 1) fgets(line, 80, fp); while (fscanf( fp, " %d ", p_h ) != 1) fgets(line, 80, fp); while (fscanf( fp, " %d", &max ) != 1) fgets(line, 80, fp); fgetc(fp); rgb_size=3*(*p_w)*(*p_h); (*p_rgb) = (unsigned char *) calloc(rgb_size, 1); if ((*p_rgb) != NULL) fread( (*p_rgb), rgb_size, 1, fp ); fclose(fp); return 1; }

212 Programa Simples void main(void){ int w, h; // dimensões da imagem unsigned char *rgb; // bytes de rgb unsigned char r,g,b,grey; // componentes de cor int x,y; long int k; if (ppm_read(&w,&h,&rgb,"test_in.ppm")==0) return; for (y = 0; y < h; y++) { for (x = 0; x < w; x++) { k = 3*(y*w+x); r = rgb[k]; g = rgb[k+1]; b = rgb[k+2]; grey = (unsigned char)(0.3*r+0.6*g+0.1*b); rgb[k] = grey; rgb[k+1] = grey; rgb[k+2] = grey; } ppm_write(w, h, rgb, "test_out.ppm"); free(rgb); }

213 Arquivo BMP colocado para garantir múltiplo de 4 colocado para garantir múltiplo de 4 Organização dos pixels de uma imagem RGB no arquivo BMP

214 Microsoft Windows Bitmap - BMP Características Principais Mono, 4-bit, 8-bit, 24-bit Tipo de compressão: RLE / não comprimido Tamanho máximo: 64K x 64K pixels Seções (versão 3): Header Info. Header Palette Bitmap Data

215 BMP - Header typedef struct _Win3xBitmapHeader { WORD Type; /* Image file type 4D42h (“BM”)*/ DWORD FileSize; /* File size (bytes) */ WORD Reserved1; /* Reserved (always 0) */ WORD Reserved2; /* Reserved (always 0) */ DWORD Offset; /* Offset to bitmap data in bytes */ } WIN3XHEAD;

216 BMP - Information Header typedef struct _Win3xBitmapInfoHeader { DWORD Size; /* Size of this Header (40) */ DWORD Width; /* Image width (pixels) */ DWORD Height; /* Image height (pixels) */ WORD Planes; /* Number of Planes (always=1)*/ WORD BitCount; /* Bits per pixel (1/4/8 or 24)*/ DWORD Compression; /* Compression (0/1/2) */ DWORD SizeImage; /* Size of bitmap (bytes) */ DWORD XPelsPerMeter; /* Horz. resol.(pixels/m) */ DWORD YPelsPerMeter; /* Vert. resol.(pixels/m) */ DWORD ClrUsed; /* Num of colors in the image */ DWORD ClrImportant; /* Num of important colors */ } WIN3XINFOHEADER;

217 BMP - Palette typedef struct _Win3xPalette { RGBQUAD Palette[ ]; /* 2, 16, or 256 elem.*/ } WIN3XPALETTE; typedef struct _Win3xRgbQuad { BYTE Blue;/* 8-bit blue component*/ BYTE Green;/* 8-bit green component*/ BYTE Red;/* 8-bit red component */ BYTE Reserved;/* Reserved (= 0) */ } RGBQUAD ;

218 BMP - Image Data Notas Cada scan line em um arquivo BMP é sempre um múltiplo de 4. Imagens com1-, 4-, e 8-bits usam uma palheta de cores. Imagens com 24-bits guardam a cor diretamente, na ordem azul, verde e vermelho. O armazenamento da imagem é sempre feito a partir do canto esquerdo inferior.

219 Esquemas de armazenamento de imagens Verm. Verde Azul Pixel 2 Plano de Cores Pixel 0 Pixel 5 Pixel 4 Pixel 3 Pixel 1 06 Organização dos pixels de uma imagem por planos de cores Bancos (Java) Informação é uma componente da cor (Data Buffer – Java)

220 Transformações Geométricas na Imagem Amostragem e Reconstrução

221

222 Transformações R 2  R 2 Exemplos: x y x´ y´ p´p´ = x y x y p =

223 Transformações lineares R 2  R 2 x y m 11 x´ y´ = m 21 m 22 m 12 Mostre que: 1 0 x y 0 1 m 11 m T = m 12 m T =  T (0) = 0 A) B)

224 Transformações lineares: escala x y a = x y x´ y´ a´a´ = Redução (0< s x <1), Aumento (s y >1) c b x y i j

225 Transformações lineares: espelhamento x´ = -1x y´ = y x y x´ y´ p' = = p x y x y i j

226 Transformações lineares: rotação x´ y´ p' = x´ y´  r x´ = x.cos  - y.sen  y´ = x.sen  + y.cos  x y p = x y   r rr

227 Transformações Lineares: matriz derivada pela geometria x y  i j

228 Mudança de referêncial x y p = x y x y cos  u v = sen  cos  -sen  u v u v ou  x y p = x´ y´ p' = x y  x y uxux u v = vxvx vyvy uyuy Para montarmos a matriz que transforma as coordenadas de um refencial xy para um novo refencial uv basta escrevermos as linhas como sendo os unitários das direções. x y  i j

229 Mudança de coordenadas entre sistemas rotacionados As coordenas de um ponto rodado de um ângulo em relação a um sistema são iguais as coordenadas do ponto original em relação a um sistema que sofre a rotação inversa. Como o novo sistema sofre a rotação inversa, a matriz de rotação é a inversa da matriz que levaria da base original para a este novo sistema. As colunas de uma matriz de uma rotação são as transformadas dos vetores da base e a transposta desta matriz é a sua inversa (rotação  matriz ortonormal). Logo as linhas da matriz que escreve uma mudança entre bases ortonormais rodadas são as coordenadas do vetores da nova base em relação a base original.

230 Transformações lineares: cisalhamento (shear) Cisalhamento em x x  x yy x y i j 

231 Exemplo de aplicação do cisalhamento x y a b c plano de projeção m x y a' m' x y c' b' a' m' 

232 Exemplo de aplicação do cisalhamento x y a x y c' b' a' m'

233 Decomposição Singular de Matrizes diagonal rotações

234 Exemplo: cisalhamento como composição de rotações e escala

235 Transformações Geométricas: Translação x y p p' txtx tyty t = x y = txtx tyty + = x’x’ y’y’ x y ? x´ y´ = ? ? ? x y 1 x´ y´ = txtx tyty + Não pode ser escrito na forma  Ruim para implementação 

236 Translação num plano do R 3 yhyh xhxh w w=1 x y t matriz de translação

237 Concatenação x y x0x0 y0y0  x y x y  x y x0x0 y0y0

238 xyx y x y xyx y x y T1T1 R1R1 E R2R2 T2T2 P’= T 2 R 2 E R 1 T 1 P

239 Coordenadas projetivas (ou homogêneas) x y p wx wy w xhxh yhyh w == x y 1 =  =  yhyh xhxh w w=1 x y wx wy w x = x h /w y = y h /w w>0 Ex.: = =  =  p

240 Vantagens das coordenadas homogêneas (pontos no infinito) yhyh xhxh w w=1 x y 2 3 u = u uhuh = ? ? uhuh w h1h1 c1c1 h 2 = c 2 h3h3 c3c / / infinito na direção (2,3) infinito na direção (2,3) h1h1 h2h2 h3h3 h4h4 c1c1 c2c2 c3c3 c4c4

241 Reta no espaço projetivo yhyh xhxh w reta: ax+by+c=0 plano: ax+by+cw=0 plano: w=1

242 Reta paralelas no espaço projetivo yhyh xhxh w plano: ax+by+c 1 w=0 reta: ax+by+c 1 =0 reta: ax+by+c 2 =0 plano: ax+by+c 2 w=0 reta= ax+by =0 plano: w=1

243 Deformação sem paralelismo yhyh xhxh w w=1 x y yhyh xhxh w x y

244 Matriz da Homografia

245 [A] : Afim Obs: Se fosse um paralelograma a imagem do ponto 2 seria (1,1) T e não (α,  ) T

246 [P] : Projetiva

247 [N] : Paralelograma para quadrado unitário

248 Fundamentals of Texture Mapping and Image Warping “Explained” A revisit of Paul Heckbert’s M.Sc. Thesis

249

250

251 Um exemplo 1D Sinal de entrada discreto Textura discretaTextuta contínua

252 Deformação da textura (warping) Textuta contínua deformadaTextuta contínua

253 Limitando a freqüência

254 Filtro de re-amostragem

255 Reconstrução, warping, filtragem e amostragem

256 Textura em imagem

257

258 Filtro de re-amostragem no espaço de destino (espaço da imagem) destination space integral

259 Filtro de re-amostragem no espaço de origem (espaço da textura)

260

261 texture space integral

262 Mapeamentos lineares afins

263 Elliptical Gaussian Resampling

264 Gaussiana

265

266 Circulos e Elipses

267 Warping de domínios de Gaussianas

268 Filtro Gaussiano de re-amostragem no espaço de origem (espaço da textura)

269 Exemplo de reconstrução com Gaussiana

270 Implementação do Filtro Gaussiano

271 Magnificação e mimificação

272 Regiões que mapeiam num quadrado ou círculo

273 Nosso problema Screen spaceTexture space

274 Como tratar o caso geral

275 FIM

276 Adding a lens A lens focuses light onto the film –There is a specific distance at which objects are “in focus” other points project to a “circle of confusion” in the image –Changing the shape of the lens changes this distance “circle of confusion”

277 Lenses A lens focuses parallel rays onto a single focal point –focal point at a distance f beyond the plane of the lens f is a function of the shape and index of refraction of the lens –Aperture of diameter D restricts the range of rays aperture may be on either side of the lens –Lenses are typically spherical (easier to produce) focal point F optical center (Center Of Projection)

278 Thin lenses Thin lens equation: –Any object point satisfying this equation is in focus –What is the shape of the focus region? –How can we change the focus region? –Thin lens applet: (by Fu-Kwun Hwang )

279 Depth of field Changing the aperture size affects depth of field –A smaller aperture increases the range in which the object is approximately in focus f / 5.6 f / 32 Flower images from Wikipedia

280 Lentes reais

281 Câmera obscura e Camera “pin-hole”

282 Sensor Fujifilm

283 O que é registrado nos sensores (CCD, CMOS...) y im x im sxsx sysy 5


Carregar ppt "Imagem Digital Captura, Processamento, Interpretação, Criação, Reprodução, …"

Apresentações semelhantes


Anúncios Google