Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

20
Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008

Transcript of Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

Page 1: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

Juan Pablo VásquezRalf Wilke

18 de Diciembre 2008

Page 2: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

ÍNDICEVision conjuntaAdquisición de la imagenPreprocesamiento de la imagenExtracción de pontos de interes con SIFT

(Lowe 2003)Explicación del algoritmo

Matching con imagenes de referenciaCalculación del valor todal de la cuentaConclusionesAcceso al paper

Page 3: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

Vision conjunta

Preprocessing SIFT

Fotos de Referencia SIFT

Base de datos de

Productos

Matching Calculación

Base de Precios

Foto del Carro

Cantidad

Total de la cuenta

Page 4: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

Foto del CarroPara sacar la foto de los productos, usamos

una web-cam de calidad basicaEn comparación a una camara fotografica, la

imagen es en los bordes desenfocadaEn un uso practico, una camera más caro con

una calidad más alta tendrá que ser usado

Page 5: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

PreprocesamientoLas fotos tomando de la web-cam salen

depentiente de la iluminación claro / oscuro y con poco contraste.

Para estar más indepentiente de la iluminación, hacemos un preprocesamiento de la imagen tomada.

Histogram Spreading

Contrast Correction

Gamma Correcion

abaxy ))((

DxCy

0

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

0 50 100 150 200 250

0

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

0 50 100 150 200 250

Page 6: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

PreprocesamientoResultados

Antes Después

Page 7: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

SIFT - OverviewDeteccion de los extremos localesEntre ellos, localizacion de los puntos de

interes, que describen bien las caractersticas de la imagen.

Asignacion de orientacion de los gradientes en la vecindad de estos puntos.

Descripción de las caractersticas de una imagen en un vector.

Page 8: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

SIFT – Extremos Locales

( , , ) ( , , ) ( , )L x y G x y I x y

2

22

2exp

2

1),,(

yxyxGUsar una gausiana G

Filtar la imagen I con G

Usar differentes

Page 9: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

SIFT – Extremos LocalesCalcular la diferecia del resuldato de la

convolución de vestinosEsto sirve como un filtro pasa banda con

varias frequencias para detectar extremos locales de varias extensión

Page 10: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

SIFT – Extremos LocalesTratar con extremos solamente, si todos

pixeles vestinos tienen un valor más o menos del pixel examinada

Con este, muchos candidatos falsos están eleminado.

Page 11: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

SIFT – Puntos de InteresBuscar punctos con alto contraste para ser

indepentiente de riudoEstimar la DOG con una seria de Taylor

Derivar e igualar a cero

Aplicar un umbral de >3 % del valor maximo posible

xx

Dxx

x

DDxD T

T

2

2

2

1)(

xx

DDxD

x

D

x

Dx

T

ˆ2

1)ˆ(ˆ

2

12

Page 12: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

SIFT – Puntos de InteresEliminar punctos en lineas rectasUsar la matriz Hessiana

Linea recta: valor propio grande, más pequeño

Sacar puncto, si cumple con r = 10

rconyx

D

y

D

x

DHDet

y

D

x

DHTrace

2

2

2

2

2

2

2

2

2

)(

)(

r

r

HDet

HTrace 22 )1(

)(

)(

Page 13: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

Asignación de orientaciónExaminar el valor del gradiente y su orientación.

),1(),1(

)1,()1,(tantan),(

)1,()1,(),1(),1(),(

11

2222

yxLyxL

yxLyxL

Lx

Lyx

yxLyxLyxLyxLLLyxm

y

yx

Page 14: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

SIFT - DescripciónVentana gaussiana representada por el

círculoDistribución en sectores más grandes Uso de un histograma con 8 distintas

orientacionesEste hace la descripción bastante robusta con

respecto a las translaciones por culpa de cambio del punto de vista

Page 15: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

Generacion: Base de datosPara el reconocamiento hay que tener fotos

de cada una productoLa aplicación de SIFT por estas imagenes

tiene que ser hecho solamente una vez

Page 16: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

Generacion: Base de datosEl vector de descripción de cada puncto de

interes tiene 128 dimensionesEn una imagen normal del tamaño 800x600

de un producto hay más que 1000 punctos de interes

Para memorizar la descriptión de muchos productos, mucha memoria es necesaria

Page 17: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

MatchingBuscar en una espacio con 128 dimensionesCalcular distancia euclidiana de todos

candidatosEliminar candidato, si el segundo más cerca

no es significante más lejos que el más cercaBrute-ForceEn nuestro trabajo la existencia de un

producto es definido con un umbral fijo

Page 18: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

Total de la cuentaDe la deteccíon sale un vector con la cantidad

de cada productoBase de datos con los precios, igual a una

caja con barcodeMultiplicar y Sumar

Page 19: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

ConclusionesLos resultados obtenidos se podrían mejorar

aumentando la resolución de la cámara utilizada, pero esto aumentaría considerablemente el tiempo de ejecución.

Este puedee ser mucho menos usando una GPU de una trajeta grafica

El programa detecta la presencia o ausencia de un producto, pero no la cantidad en la que éste está presente.

Este proyecto es una buena solución para un número pequeño de productos, pero muchos recursos son necesarios para poder ser implementado a gran escala.

Page 20: Juan Pablo Vásquez Ralf Wilke 18 de Diciembre 2008.

Acceso al paperSe puede bajar el paper en la pagina web

http://www.ralfwilke.com/chile/puc