##Borrar esta linea y dejar la siguiente que permite que ésta página sea pública
#acl -All:read Jaarac:read,write,delete,revert,admin JorgeSanchez:read,write,delete,revert,admin
= Robot Vision 2012 =
Experimentos realizados para la 4º edición de la competencia ''''Robot Vision Challenge - ImageCLEF''''.
[[http://www.imageclef.org/2012/robot|Robot Vision 2012 Web Site]]
== Cosas que vamos a tener que probar ==
* Aumentar los conjuntos de datos con la versión espejada de las imágenes
* Algún pre-procesamiento para estabilizar el "motion blur" y el "flickering"
* Debluring:
* http://www.di.ens.fr/willow/research/deblurring/ (código en matlab)
* http://grail.cs.washington.edu/projects/mdf_deblurring/
* Flickering: se puede probar trabajar en aglún espacio de color que sea robusto frente a cambios afines en la iluminación
* Descriptores de colores
* J. van de Weijer, C. Schmid, J. Verbeek, D. Larlus, ''Learning Color Names for Real-World Applications'', IEEE TIP, 2009.
http://lear.inrialpes.fr/people/vandeweijer/color_names.html
* K. van de Sande, T. Gevers and C. Snoek, ''Evaluating Color Descriptors for Object and Scene Recognition'', IEEE TPAMI, 2010
http://koen.me/research/colordescriptors
== Datasets ==
=== Imágenes de ejemplo ===
* En training1 el recorrido del robot es contrario al caso de training[23].
* Las imágenes de training3 son tomadas de noche
==== Training1 ====
[[attachment:training1_rgb_69.jpg|{{attachment:training1_rgb_69.jpg|rgb_69|width=200}}]]
[[attachment:training1_rgb_71.jpg|{{attachment:training1_rgb_71.jpg|rgb_71|width=200}}]]
[[attachment:training1_rgb_73.jpg|{{attachment:training1_rgb_73.jpg|rgb_73|width=200}}]]
[[attachment:training1_rgb_75.jpg|{{attachment:training1_rgb_75.jpg|rgb_75|width=200}}]]
==== Training2 ====
[[attachment:training2_rgb_93.jpg|{{attachment:training2_rgb_93.jpg|rgb_93|width=200}}]]
[[attachment:training2_rgb_95.jpg|{{attachment:training2_rgb_95.jpg|rgb_95|width=200}}]]
[[attachment:training2_rgb_97.jpg|{{attachment:training2_rgb_97.jpg|rgb_97|width=200}}]]
[[attachment:training2_rgb_99.jpg|{{attachment:training2_rgb_99.jpg|rgb_99|width=200}}]]
==== Training3 ====
[[attachment:training3_rgb_60.jpg|{{attachment:training3_rgb_60.jpg|rgb_60|width=200}}]]
[[attachment:training3_rgb_62.jpg|{{attachment:training3_rgb_62.jpg|rgb_62|width=200}}]]
[[attachment:training3_rgb_64.jpg|{{attachment:training3_rgb_64.jpg|rgb_64|width=200}}]]
[[attachment:training3_rgb_66.jpg|{{attachment:training3_rgb_66.jpg|rgb_66|width=200}}]]
== Repositorio con los scripts para replicar los experimentos ==
hg clone https://proyectos.ciii.frc.utn.edu.ar/hg/robot_vision_2012
== Estructura de directorios ==
RobotVision2012/DS_..._DSIFT_.../
trainingX/ <
>
trainingX.log <
>
trainingX_lr/ <
>
trainingX_lr.log <
>
_PCA_/ <
>
subspace.dat <
>
subspace.log <
>
80D/ <
>
trainingX/ <
>
trainingX.log <
>
trainingX_lr/ <
>
trainingX_lr.log <
>
_GMM_/ <
>
u64.gmm <
>
u64/ <
>
IFV.../ <
>
trainingX/ <
>
trainingX.log <
>
trainingX_lr/ <
>
trainingX_lr.log <
>
_SGD_tr12_te3_/ <
>
hinge_20_1e-4/ <
>
Corridor.lin <
>
hinge_20_1e-4.training3 <
>
hinge_20_1e-4.log <
>
== 25 abril 2012 ==
=== Experimento 1 ===
==== Configuración ====
* Descriptores: SIFT sobre grilla regular (DSIFT de vlfeat), patchs 32x32, paso=8, L2-norm., D=128
* PCA: subespacio aprendido sobre training1+training2+training3, D=80
* GMM: aprendido sobre training1+training2+training3, para ''N = 8, 16 y 32''
* IFV: gradientes resp. medias y varianzas, alpha=0.5, pnorm=2.0
* SGD: hinge loss, ''20, 50 y 100'' iteraciones, ''lambda = 1e-2, 1e-3 y 1e-4'', training sobre ''training1'' y testeando sobre ''training2''. La clasificación se realizo con argmax.
==== Resultados ====
|| ||||||20 iteraciones||||||||50 iteraciones||||||||100 iteraciones||
||lambda\ngauss||8||16||32||||8||16||32||||8||16||32||
||1e-3|| 1382 || 1334 || 1414 |||| 1376 || 1352 || 1426 |||| 1382 || 1356 || 1422 ||
||1e-4|| '''1462''' || '''1422''' || '''1466''' |||| 1462 || 1400 || 1478 |||| 1462 || 1396 || 1476 ||
||1e-5|| 1318 || 1402 || 1444 |||| 1358 || 1368 || 1394 |||| 1378 || 1384 || 1322 ||
/* ||1e-2|| 872 || 984 || 928 |||| 886 || 990 || 930 |||| 890 || 992 || 940 || */
[[attachment:experimento_1_25_abril_2012.txt]]
== 26 abril 2012 ==
=== Experimento 1 ===
==== Configuración ====
* Igual que el experimento anterior, pero se agrego 64 gaussianas.
* SGD: hinge loss, ''20'' iteraciones, ''lambda = 1e-4'', training sobre ''training1'' o ''training2'' y testeando siempre sobre ''training3''. La clasificación se realizo con argmax y con thr=-0.1.
==== Resultados ====
|| ||||||||20 iteraciones, argmax, train1 ||||||||||20 iteraciones, thr=-0.1, train1||||||||||20 iteraciones, argmax, train2||||||||||20 iteraciones, thr=-0.1, train2||
||l\ng||8||16||32||64||||8||16||32||64||||8||16||32||64||||8||16||32||64||
||1e-4|| -405 || -153 || -127 || -161 |||| 194 || 362 || 355 || 399 |||| -361 || -87 || 1 || 35 |||| 226 || 421 || 471 || 553 ||
[[attachment:experimento_1_train1_val3_argmax_26_abril_2012.txt]]
[[attachment:experimento_1_train1_val3_-0.1_26_abril_2012.txt]]
[[attachment:experimento_1_train2_val3_argmax_26_abril_2012.txt]]
[[attachment:experimento_1_train2_val3_-0.1_26_abril_2012.txt]]
== 3 mayo 2012 ==
=== Experimento 1 ===
Se realiza una prueba con distintos valores de DSIFT_STEP (8 y 16) y aumento el conjunto de entrenamiento haciendo un flip left-right de las imágenes antes de calcular DSIFT. Flip=0, indica sin aumentar el conjunto; Flip=1 indica aumentando el conjunto de entrenamiento con las imágenes flipeadas.
Al final de este experimento se muestra la configuración que resulta más apropiada.
==== Configuración ====
* SGD LBD=1e-4, 20 iteraciones
* Using ''argmax'' for classification
==== Resultados ====
===== Flip=0 =====
* DSIFT step=8
|||| |||||||||||||||| NGAUSS ||
|| Tr. || Te. || 8 || 16 || 32 || 64 || 128 || 256 || 512 || 1024 ||
|| 1,2 || 3 || -289 || 29 || 59 || 79 || 185 || 267 || 319 || 445 ||
|| 2,3 || 1 || 935 || 1195 || 1141 || 1173 || 1183 || 1251 || 1225 || 1293 ||
|| 3,1 || 2 || 1162 || 1374 || 1390 || 1456 || 1584 || 1658 || 1668 || 1632 ||
|||| Avg. || 603 || 866 || 863 || 903 || 984 || 1059 || 1071 || 1123 ||
* DSIFT step=16
|||| |||||||||||||||| NGAUSS ||
|| Tr. || Te. || 8 || 16 || 32 || 64 || 128 || 256 || 512 || 1024 ||
|| 1,2 || 3 || -161 || -9 || 19 || 25 || 225 || 191 || 299 || 371 ||
|| 2,3 || 1 || 897 || 1129 || 1221 || 1143 || 1101 || 1095 || 1175 || 1179 ||
|| 3,1 || 2 || 1160 || 1252 || 1392 || 1424 || 1412 || 1528 || 1552 || 1524 ||
|||| Avg. || 632 || 791 || 877 || 864 || 913 || 938 || 1009 || 1025 ||
===== Flip=1 =====
* DSIFT step=8
|||| |||||||||||||||| NGAUSS ||
|| Tr. || Te. || 8 || 16 || 32 || 64 || 128 || '''256''' || 512 || 1024 ||
|| 1,2 || 3 || -357 || -105 || 45 || 59 || 185 || '''199''' || 233 || 411 ||
|| 2,3 || 1 || 1569 || 1703 || 1787 || 1795 || 1887 || '''1949''' || 1995 || 1999 ||
|| 3,1 || 2 || 1666 || 1880 || 2018 || 2076 || 2142 || '''2182''' || 2182 || 2190 ||
|||| Avg. || 959 || 1159 || 1283 || 1310 || 1405 || '''1443''' || 1470 || 1533 ||
* DSIFT step=16
|||| |||||||||||||||| NGAUSS ||
|| Tr. || Te. || 8 || 16 || 32 || 64 || 128 || 256 || 512 || 1024 ||
|| 1,2 || 3 || -211 || 11 || 31 || -15 || 233 || 149 || 263 || 373 ||
|| 2,3 || 1 || 1447 || 1651 || 1693 || 1791 || 1857 || 1901 || 1945 || 1909 ||
|| 3,1 || 2 || 1642 || 1744 || 1944 || 2032 || 2126 || 2128 || 2150 || 2140 ||
|||| Avg. || 959 || 1135 || 1223 || 1269 || 1405 || 1393 || 1453 || 1474 ||
[[attachment:results_3_de_mayo_2012.tar.gz]]
* Configuración: 256 Gaussianas, DSIFT step=8, flip=1