Trabalho 2 MELHORANDO A IMAGEM CAPTURADA Gabriel Tavares Malizia Alves Manuel Creative WebCam Pro 640x480 (VGA) color CMOS Sensor USB 1.1 Interface Resultados Partindo dos dados calculados no primeiro trabalho, utilizando as correções descritas nesta apresentação e o método de tentativa e erro, encontramos os seguintes valores para a câmera utilizada: (ox, oy) = (314, 251) (em coordenadas da tela) m1 = -2.2 * 10-5 mm-2 m2 = -2.0 * 10-9 mm-4 f = 100.0 mm (escolhido) sx = 0.129 mm/pixel sy = 0.120 mm/pixel Primeira Parte: Correção Radiométrica Descrição: Utilizando os dados obtidos na primeira experiência, realizamos correções radiométricas em algumas imagens. Sem correção Com correção radiométrica Sem correção Com correção radiométrica Sem correção Com correção radiométrica Sem correção Com correção radiométrica Quarta Parte: Correção Radial Descrição: No primeiro trabalho calculou-se k1=7,3•10-7. Porém considerou-se a distância em pixel da tela. Na prática é a mesma coisa que considerar sx e sy iguais. Para gerar as novas imagens utilizou-se (ox,oy)=(285,210) e (sx,sy)=(0.129 , 0.127). Obtivemos k1=4,5•10-7. Os resultados mostram que um melhor k1 seria igual a 2,3•10-7. (24, 15) (319, 4) (285,210) (611, 13) (620, 237) (16, 238) (24, 457) (319, 471) (610, 457) (Ox , Oy ) = (285,210) , em pixel da imagem (-261, 195) (34, 208) (326, 197) (0,0) (335, -27) (-269, -28) (-261, -247) (34, -261) (325, -247) Nova distribuição das coordenadas P1=(xim1,yim1) P2=(xim2,yim2) P3=(xim3,yim3) Em P1: xd = (xim1-ox)sx yd = -(yim1-oy)sy r12 = xd2 + yd2 Em P2: xd = (xim2-ox)sx yd = -(yim2-oy)sy r22 = xd2 + yd2 Em P3: xd = (xim3-ox)sx yd = -(yim3-oy)sy r32 = xd2 + yd2 x de P1 é igual a x de P2: [(xim1-ox)sx](1+k1 r12+k2 r14) = [(xim2-ox)sx](1+k1 r22+k2 r24) y de P1 é igual a y de P2: [(yim1-oy)sy](1+k1 r12+k2 r14) = [(yim3-oy)sy](1+k1 r32+k2 r34) Considerando k20 k1=5*10-5 k1=5*10-5 k1=4*10-5 k1=4*10-5 Valores médios de k1 nos pontos extremos da imagem capturada Sem correção -5 =4,5•10 k1 Com correção -5 =2,3•10 k1 Com correção Sem correção -5 =2,3•10 k1 Com correção Sem correção -5 =2,3•10 k1 Com correção Esta experiência mostrou alguns problemas: Consideramos k2 desprezível, porém a experiência mostra que esta consideração é errada, pois no canto da tela , onde as distâncias até o centro da imagem são muito grandes, k2 passa a ter uma contribuição tão significativa quanto k1. As equações descrevem como levar um pixel da imagem original até sua posição na imagem sem distorção. Porém esta seria a correção ideal para câmeras com distorção “pincushion”. A maioria das câmeras tem distorção do tipo barril. Como podemos ver, se tentarmos mapear todos os pixels da imagem com distorção em barril para a imagem sem distorção, irá faltar pixels na imagem sem distorção, pois alguns pixels irão cair em cima de outros. A solução é fazer uma função inversa que, para cada pixel da imagem sem distorção, pega o pixel correspondente na imagem com distorção em barril. x = xd (1+k1 r22+k2 r24) y = yd (1+k1 r32+k2 r34) xd = x (1+m1 r22+m2 r24) yd = y (1+m1 r32+m2 r34) Vale para ambos: x = (xim - ox) sx y = (yim - oy) sy Os resultados obtidos mostram que m1 e m2 tem ordem de grandeza compatíveis com k1 e k2, porém com o sinal trocado. A seguir temos imagens com as correções radiométricas e radias já com os valores encontrados e utilizados no resto do curso, porém sem interpolação. Versão com interpolação pode ser encontrada em qualquer aplicação desenvolvida para o curso. Sem correção Com correção radiométrica e radial Sem correção Com correção radiométrica e radial