Full text
A mis abuelos, a todos ellos, a los que est´an y a los que se fueron; por cuidarme y preocuparse por m´ı en todo momento. En especial a mis padres por haberme animado a entrar en la carrera. A mi hermana mayor por haberse comportado como tal. A mi pareja por su apoyo y ´animo incondicional. A mis amigos y compa˜neros por todos los buenos momentos que me han hecho pasar dentro y fuera de la universidad. A mi tutor, Javier Civera, por su inestimable ayuda y paciencia durante la realizaci´on este proyecto. Un cient´ıfico debe tomarse la libertad de plantear cualquier cuesti´on, de dudar de cualquier afirmaci´on, de corregir errores. Julius Robert Oppenheimer
4
Resumen El reconocimiento de acciones es el problema consistente en clasificar de manera autom´atica secuencias de im´agenes en funci´on de las acciones (beber, caminar, abrir ventana, leer, etc.) que contengan. La mayor parte del trabajo previo se ha realizado en v´ıdeos tomados por terceras personas, provenientes de pel´ıculas o de repositorios como YouTube. La contribuci´on de este proyecto es el uso de secuencias de v´ıdeo de c´amaras vestibles. El inter´es por dichas c´amaras es creciente debido a la aparici´on de diversos modelos comerciales (Google Glass, GoPro o Memoto). Todo proceso de clasificaci´on tiene dos etapas b´asicas: entrenamiento y test. En ambas etapas cada v´ıdeo se codifica mediante una serie de descriptores. En la etapa de entrenamiento se calcula el clasificador a partir de v´ıdeos de entrenamiento, de los cuales conocemos la categor´ıa. En la etapa de test el clasificador asigna a cada v´ıdeo de test, de los cuales se desconoce la acci´on que contiene, una categor´ıa en funci´on de sus descriptores. El descriptor utilizado en este proyecto es el denominado bolsa de palabras. Dicho descriptor se calcula a partir de los puntos de inter´es espacio temporales (STIP). La bolsa de descriptores se construye mediante un proceso de clustering; el cual trata de agrupar los descriptores en grupos o clusters seg´un su semejanza empleando una determinada distancia. En el proyecto se eval´ua la influencia en los resultados del n´umero de palabras y del n´umero y valores de los descriptores elegidos para la construcci´on del vocabulario, as´ı como de la distancia elegida. Para la clasificaci´on de la acci´on realizada en el v´ıdeo se utiliza un algoritmo de entrenamiento supervisado como es Support Vector Machine (SVM). Se estudian los resultados obtenidos en funci´on del mayor o menor ajuste a la hora de trazar las fronteras entre las diferentes categor´ıas de acciones. Dichos resultados son medidos por la precisi´on media de reconocimiento. El proyecto cuenta con un dataset propio de acciones grabadas con c´amaras vestibles. Est´a formado por veinte acciones desarrolladas en dos escenarios diferentes (edificio Ada Byron y edificio I3A) por cinco usuarios diferentes. Los v´ıdeos consisten en una secuencia de varias acciones consecutivas y han debido de ser manualmente etiquetados para su utilizaci´on. Cada v´ıdeo ha sido grabado por cuatro c´amaras vestibles diferentes: una c´amara GoPro, un tel´efono m´ovil, una c´amara omnidireccional y una c´amara de profundidad. El objetivo es identificar cu´al de estos tipos de c´amaras proporciona unos mejores resultados en la identificaci´on de acciones en c´amaras vestibles
´ Indice 1. Introducci´on 1 1.1. Planteamiento del problema . . . . . . . . . . . . . . . . . . . . . . 1 1.2. Objetivos del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.3. Organizaci´on de la memoria . . . . . . . . . . . . . . . . . . . . . . 3 2. Estado del arte 5 3. Puntos de inter´es 7 3.1. Space-Time Interest Points (STIP) . . . . . . . . . . . . . . . . . . 8 3.2. Descriptores............................... 10 3.2.1. HOG............................... 11 3.2.2. HOF............................... 12 4. Descriptor de bolsa de palabras 13 4.1. Construcci´on del vocabulario visual . . . . . . . . . . . . . . . . . . 13 4.2. Concepto de similitud. Distancia eucl´ıdea y distancia de Mahalanobis 15 4.3. Problemas integrando la distancia de Mahalanobis en el algoritmo deagrupamiento ............................ 17 4.4. Soluci´on propuesta . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.5. Convergencia .............................. 23 4.6. Creaci´on del descriptor . . . . . . . . . . . . . . . . . . . . . . . . . 25 5. Clasificaci´on 27 5.1. SoftMargin ............................... 30 5.2. Clasificaci´on no lineal . . . . . . . . . . . . . . . . . . . . . . . . . . 31 5.3. Selecci´on de par´ametros . . . . . . . . . . . . . . . . . . . . . . . . 32 6. Experimentos y resultados 35 6.1. Clustering con datos sencillos sint´eticos . . . . . . . . . . . . . . . . 35 6.2. Hollywooddataset ........................... 40 6.3. C´amarasvestibles............................ 42 i
´ INDICE ´ INDICE 7. Conclusiones 47 7.1. L´ıneasfuturas.............................. 47 ii
1. Introducci´on Secci´on 1.3 Adicionalmente, se ha encontrado el problema de que la creaci´on de un vocabulario visual basado en clusters is´otropos no es recomendable, por lo que se ha propuesto un algoritmo propio que utiliza t´ecnicas ya conocidas para una mejor creaci´on de los clusters pero que, al mismo tiempo, trata de solucionar los problemas relacionados con el uso de dichas t´ecnicas. 1.3. Organizaci´on de la memoria El resto del proyecto se encuentra organizado de acuerdo a lo siguiente: el Cap´ıtulo 2 introduce el estado del arte en el momento en el que se desarrolla el proyecto. El Cap´ıtulo 3 explica el concepto de punto de inter´es y las t´ecnicas utilizadas en el proyecto para la extracci´on y descripci´on de los mismos. El Cap´ıtulo 4 describe el descriptor de bolsa de palabras utilizado para identificar cada v´ıdeo en base a los puntos de inter´es extra´ıdos y profundiza en los problemas encontrados en la creaci´on de un vocabulario visual con clusters is´otropos. El Cap´ıtulo 5 trata el proceso de clasificaci´on, el cual es llevado a cabo mediante una etapa de entrenamiento y otra de test. Los resultados obtenidos de la aplicaci´on de todos los cap´ıtulos anteriores sobre diversos experimentos son presentados en el Cap´ıtulo 6. Finalmente, el Capitulo 7 extrae una serie de conclusiones sobre el proyecto. Figura 1.2: Esquema del proceso de reconocimiento de acciones en v´ıdeos. 3
Cap´ıtulo 2 Estado del arte El ´ambito de estudio de este proyecto es relativamente reciente por lo que es escasa la bibliograf´ıa que se puede encontrar referente a trabajos e investigaciones anteriores. La inmensa mayor´ıa de dichos trabajos que utilizan las t´ecnicas se˜naladas consisten en estudios sobre el reconocimiento de objetos. Si nos centramos en el reconocimiento de acciones, encontramos diversas investigaciones en las que predomina el uso de datasets propios conformados por v´ıdeos en los que una tercera persona realiza la acci´on a identificar. Dentro de estos datasets podemos diferenciar entre aquellos que est´an constituidos por secuencias de v´ıdeo sencillas, centradas en la acci´on, en las que lo ´unico que se observa es la propia acci´on sin pr´acticamente ning´un otro movimiento a lo largo de la escena [SLC04]; y aquellos que est´an compuestos por secuencias complejas, en las que la acci´on se mezcla con los movimientos de otros elementos del fondo de la escena generando as´ı un mayor ruido [LMSR08]. Los datasets pertenecientes al segundo grupo se asemejan en mayor medida a las acciones que tienen lugar en la realidad donde la complejidad es mayor. Por otro lado, aunque en menor n´umero, existen trabajos de reconocimiento de acciones que utilizan grabaciones de c´amaras vestibles pero se ayudan de otros tipos de sensores tales como inerciales o del reconocimiento de objetos para la clasificaci´on de la acci´on [CSC+13] [PR12]. Los citados trabajos han demostrado la correcta clasificaci´on de acciones realizadas por personas con una efectividad aceptable. La mayor´ıa de ellos tienen en com´un el uso del mismo modelo de bolsa de descriptores, el cual es empleado en este proyecto debido a los buenos resultados obtenidos de su utilizaci´on. Para la construcci´on del vocabulario de dicho modelo, la distancia Eucl´ıdea es la m´as com´un salvo alguna excepci´on en la que se emplea la distancia de Mahalanobis con una matriz de covarianza global. 5
2. Estado del arte (a) (b) Figura 2.1: Comparaci´on de algunos ejemplos de v´ıdeos pertenecientes a datasets de acciones simples (a) y a datasets de acciones complejas (b). Los detectores utilizados as´ı como los descriptores empleados para la extracci´on e identificaci´on de los puntos de inter´es var´ıan en cada investigaci´on. Su eficiencia depende de la combinaci´on detector-descriptor y del dataset sobre el que se realizan los experimentos. Los detectores m´as comunes son Harris3D, Cuboid, Hessian y el detector mediante muestreo denso. En cuanto a los descriptores, los m´as frecuentes son HOG/HOF, HOG3D y ESURF [WUK+09]. En lo referente a la clasificaci´on, el uso de Maquinas de Soporte Vectorial (SVM) es el m´as extendido. Los resultados obtenidos en trabajos anteriores con los mismos par´ametros que el presente proyecto en v´ıdeos en tercera persona rondan el 45 % de precisi´on. 6
Cap´ıtulo 3 Puntos de inter´es Cuando se desea clasificar la informaci´on que una imagen o un v´ıdeo almacena, ´esta debe de ser codificada. Una de las formas m´as extendidas consiste en representarla mediante puntos de inter´es. Un punto de inter´es representa una ocurrencia lo suficientemente distinta de su vecindad como para tenerla en cuenta y almacena una serie de informaci´on codificada que la identifique. Generalmente todo punto de inter´es cumple que 1) tiene una posici´on bien definida, 2) la estructura de la imagen o v´ıdeo alrededor del punto es rica en t´erminos de contenido de informaci´on y 3) es estable ante alteraciones locales y globales (como el brillo y la intensidad) . Por ello, cada v´ıdeo debe pasar en primer lugar por un proceso que extraiga, describa y almacene sus puntos de inter´es. Existen diversos m´etodos de extracci´on de puntos de inter´es as´ı como descriptores para la representaci´on de los mismos como se ha mencionado en el an´alisis del estado del arte. Debido a que en el tratamiento de v´ıdeos existe una componente temporal, se hace necesaria la utilizaci´on de un detector que la tenga en cuenta. Figura 3.1: Ejemplo de los puntos de inter´es detectados en una imagen. Como puede observarse los puntos coinciden con las esquinas, donde su vecindad es diferente tanto horizontal como verticalmente. 7
Secci´on 3.1 3. Puntos de inter´es 3.1. Space-Time Interest Points (STIP) En el presente proyecto, para la extracci´on de los puntos de inter´es de cada v´ıdeo, se han utilizado los denominados STIP (Space-Time Interest Points), introducidos por el investigador Ivan Laptev [Lap05]. Estos puntos de inter´es consisten en una evoluci´on de la idea original de Harris [HS88] y F¨orstner [FG87] para detectar puntos de inter´es en un dominio espacial. Dichos puntos de inter´es originales consisten en un detector que busca puntos en al imagen donde existan cambios significativos en ambas direcciones, tanto en horizontal como en vertical. Un concepto importante en visi´on por computador es la escala de observaci´on σ2, el cual viene a expresar la granularidad del detalle con la que se trata una imagen. Un ejemplo sencillo para su entendimiento es pensar en una arboleda. Si la escala de observaci´on es de unos pocos cent´ımetros podremos diferenciar las ramas y las hojas de los ´arboles; mientras que si la escala es de cerca de medio metro, podremos distinguir los troncos de los ´arboles pero no sus ramas, quedando ´estas en un efecto difuminado. Para una escala de observaci´on dada σ2 l, los puntos de inter´es con cambios en la componente vertical y horizontal pueden ser detectados usando el segundo momento matricial integrado dentro de una ventana Gaussiana con varianza σ2 i. Por ello se aplica el operador representado por la expresi´on 3.1 a todos los puntos de la imagen. µsp(·;σ2 l;σ2 i) = gsp(·;σ2 i)∗((∇L(·;σ2 l))(∇L(·;σ2 l))T) =gsp(·;σ2 i)∗(Lsp x)2Lsp xLsp y Lsp xLsp y(Lsp y)2(3.1) donde ‘∗’ denota el operador de convoluci´on, Lsp(x, y;σ2 l) es la imagen fsp(x, y) en su representaci´on lineal a escala σ2 l Lsp(x, y;σ2 l) = gsp(x, y;σ2 l)∗fsp(x, y) yLsp xyLsp yson sus derivadas en la escala σ2 l: Lsp x=∂x(gsp(·;σ2 l)∗fsp(·)) Lsp y=∂y(gsp(·;σ2 l)∗fsp(·)). Siendo λ1yλ2(λ1≤λ2) los valores propios de µsp; dos valores significativamente altos de λ1yλ2indican la presencia de un punto de inter´es. Para detectarlos, Harris y Stehens propusieron encontrar m´aximos positivos en la funci´on 3.2. Hsp = det(µsp)−ktrace2(µsp) =λ1λ2−k(λ1+λ2)2.(3.2) 8
3. Puntos de inter´es Secci´on 3.1 Donde exista un punto de inter´es, el ratio de los valores propios α=λ2/λ1debe de ser alto. Es decir, para los m´aximos locales positivos de Hsp, el ratio αtiene que satisfacer k≤α/(1 + α)2. Un valor de kcom´unmente utilizado en la bibliograf´ıa es k= 0,04 lo que corresponde a la detecci´on de puntos con α < 23. Partiendo de esta base, Ivan Laptev extendi´o la noci´on de punto de inter´es a˜nadiendo la componente temporal; requiriendo a los puntos tener grandes variaciones el la componente espacial y en la temporal. Los puntos resultantes corresponden a puntos de inter´es espaciales en distintos momentos del tiempo donde se realiza un movimiento no constante. Para ello desarroll´o un operador (3.3) que respondiera a eventos en secuencias de im´agenes temporales en una determinada localizaci´on y con una extension espec´ıfica en el espacio y en el tiempo. Al igual que en el dominio espacial, se utiliza el segundo momento matricial usando una funci´on Gaussiana de ponderaci´on g(·;σ2 i;τ2 i) µ=g(·;σ2 i;τ2 i)∗ L2 xLxLyLxLt LxLyL2 yLyLt LxLtLyLyL2 t (3.3) donde Les la representaci´on espacio temporal de una secuencia de im´agenes L(·;σ2 l, τ2 l) = g(·;σ2 l, τ2 l)∗f(·) yLx,LyyLyson sus derivadas en las escalas σ2 lyτ2 l: Lx(·;σ2 l, τ2 l) = ∂x(g∗f) Ly(·;σ2 l, τ2 l) = ∂y(g∗f) Lz(·;σ2 l, τ2 l) = ∂t(g∗f). Para detectar los puntos de inter´es, se buscan regiones en fque tengan valores significativos en los valores propios λ1,λ2yλ3de µ. Para ello se modific´o la funci´on 3.2 de Harris definida en el dominio espacial, a˜nadi´endole el dominio temporal, obteniendo la expresi´on 3.4. Este detector de puntos de inter´es se conoce como Harris3D por su sustento en el detector espacial original de Harris. H= det(µ)−ktrace3(µ) =λ1λ2λ3−k(λ1+λ2+λ3)3.(3.4) Los puntos de inter´es espacio temporales de fpueden ser encontrados detectando los m´aximos locales positivos de H. Definiendo los ratios α=λ2/λ1yβ=λ3/λ1 se puede reescribir la expresi´on 3.4 como Hsp =λ3 1(αβ −k(1 + α+β)3). 9
Secci´on 3.2 3. Puntos de inter´es Figura 3.2: Ejemplo de descriptor HOG para una imagen: Valor del gradiente (izquierda) y su orientaci´on (centro). Votaci´on por parte de los pixels dentro de la celda (v´ease el cuadrado azul en la imagen del centro). Valor de la norma del gradiente en los puntos de inter´es (dereha). y en los m´aximos locales positivos de Hobtenemos k≤αβ/(1 + α+β)3, siendo su m´aximo valor k= 1/27 cuando α=β= 1. Esto indica que para valores suficientemente altos de k, los m´aximos locales positivos de Hcorresponden a puntos con grandes variaciones a lo largo de la componente espacial y de la temporal. En particular, si fijamos el valor de αyβa 23 como en el caso espacial, obtenemos que el valor de kutilizado en Hes k≈0,005. 3.2. Descriptores Una vez detectados los puntos de inter´es es necesario codificarlos; es decir, describirlos de tal manera que se guarde la mayor informaci´on posible de la estructura que rodea a cada punto. Como se ha se˜nalado en el estudio del estado del arte, existe una serie de descriptores que son los m´as utilizados en estos contextos. En este proyecto se ha utilizado el descriptor HOG/HOF consistente en la uni´on del descriptor HOG (Histogram of Oriented Gradients) y el descriptor HOG (Histogram of Optical Flows). Estos dos descriptores son muy comunes en el ´ambito de la visi´on por computador y son explicados m´as en detalle a continuaci´on. 10
3. Puntos de inter´es Secci´on 3.2 Figura 3.3: Histograma de la orientaci´on del gradiente: dividida en cuatro direcciones (izquierda), en ocho (centro) y diecis´eis (derecha). Cuantas m´as divisiones, m´as informaci´on alberga el descriptor. 3.2.1. HOG El descriptor HOG consiste en identificar un punto de inter´es seg´un la orientaci´on y magnitud del gradiente de los p´ıxeles que lo rodean. Para ello se toma en consideraci´on una celda de un tama˜no determinado en n´umero de p´ıxeles centrada en el punto de inter´es (imagen central de la figura 3.2). En diversas investigaciones estas celdas han adquirido forma rectangular o circular; siendo la primera la utilizada en este proyecto. Por cada p´ıxel perteneciente a la celda se calcula la magnitud del gradiente y su orientaci´on. La forma m´as com´un de calcularlo es aplicando a cada punto la mascara horizontal [−1,0,1] y la mascara vertical [−1,0,1]T. La orientaci´on del gradiente puede estar acotada entre 0oy 360oo entre 0oy 180o, dependiendo de si se tiene en cuenta el signo o no, respectivamente. Una vez realizados los c´alculos, se obtiene un histograma de la orientaci´on de los gradientes mediante una votaci´on en la que cada punto dentro de la celda ejerce tantos votos como la magnitud de su gradiente. Normalmente la orientaci´on es dividida en secciones de igual tama˜no y cada punto ejerce su votaci´on en la secci´on a la que su orientaci´on corresponda. Como se puede observar en la figura 3.3, cuanto mayor sea el n´umero de secciones en que se divide la orientaci´on, mayor es el nivel de detalle que se obtiene y, por consiguiente, mayor sensibilidad ante el ruido. Por ultimo, con el objetivo de obtener mejores resultados ante variaciones en la intensidad, las sombras, etc., se realiza una normalizaci´on del histograma en funci´on del contraste de un ´area mayor, denominada bloque, que engloba a la celda. El histograma obtenido del seguimiento de este m´etodo se toma como descriptor del punto de inter´es 11
Secci´on 3.2 3. Puntos de inter´es 3.2.2. HOF El flujo ´optico trata de definir el movimiento aparente de un determinado patr´on de intensidad dentro de una escena con respecto a un observador utilizando una determinada funci´on de semejanza. Intenta determinar el movimiento existente entre dos im´agenes consecutivas dentro de una secuencia tomadas en un tiempo t yt+ ∆t. Si denotamos como I(x, y, t) a la intensidad de un determinado patr´on en la posici´on x, y en un momento t, la ecuaci´on que busca satisfacer el flujo ´optico es I(x, y, t) = I(x+ ∆x, y + ∆y, t + ∆t). El procedimiento a seguir es similar al expuesto el apartado anterior. Se crea una celda formada por los p´ıxeles que rodean al punto de inter´es y se calcula el vector de movimiento que representa el flujo ´optico de un frame al siguiente. Mediante un proceso de votaci´on se genera un histograma de un n´umero determinado de secciones. En el presente proyecto el volumen que rodea a cada punto de inter´es es dividido en un una malla de nxxnyxntceldas; variando el tama˜no de cada celda en funci´on del valor de la varianza espacial σy de la varianza temporal τen que se haya detectado el punto. Se han elegido nx, ny= 3 y nt= 2 tal como sugiere el autor. Por cada celda se calcula un descriptor HOG de 4 secciones y un descriptor HOF de 5 secciones. Por consiguiente, el uso del descriptor HOG/HOF nos proporciona un vector de 162 (72+90) componentes o dimensiones (d= 162) por cada punto de inter´es. 12
4. Descriptor de bolsa de palabras Secci´on 4.4 Figura 4.5: Ejemplo de distancia entre dos puntos. Cuantas m´as dimensiones se tengan en cuenta, mayor ser´a la distancia entre dos puntos. En la imagen, la distancia en dos dimensiones (D2) entre el punto A y el B es menor que la distancia en tres dimensiones (D3). 4.4. Soluci´on propuesta El algoritmo propuesto trata de dar soluci´on a los problemas que conlleva la utilizaci´on de la distancia de Mahalanobis en el algoritmo de agrupamiento. El mayor de los inconvenientes radica en el n´umero de muestras que un grupo Hi necesita tener en relaci´on a sus dimensiones a la hora de calcular su matriz de covarianza para que ´esta no sea singular. En base a eso, la idea del algoritmo consiste en reducir el n´umero de dimensiones a tener en cuenta a la hora de realizar el agrupamiento e ir increment´andolo poco a poco conformando as´ı los clusters en funci´on de las dimensiones m´as discriminatorias, siendo ´estas aquellas que tengan mayor varianza. Dichas dimensiones son las utilizadas a la hora de calcular la matriz de covarianza S0y la distancia al grupo por parte de las muestras, siendo ignoradas el resto. En otras palabras, se reduce la complejidad dimensional del grupo hasta el m´ınimo y con cada iteraci´on se va descubriendo dimensi´on a dimensi´on la forma completa de cada cluster, comenzando por las dimensiones que mayor varianza tengan. De este modo se tendr´an en cuenta d0dimensiones, siendo 0< d0≤d0, generando una matriz de covarianza de tama˜no d0×d0. El hecho de que se comience utilizando las dimensiones m´as discriminatorias hace que el agru19
Secci´on 4.4 4. Descriptor de bolsa de palabras pamiento se vaya afinando cada vez m´as pues las dimensiones con menor varianza no son tan determinantes a la hora de elegir un cluster pero a˜naden un mayor grado de precisi´on. Como se puede observar en la Figura 4.6, un grupo ir´a a˜nadiendo elementos que coincidan con su forma en la dimensiones que se tienen en cuenta; as´ı empezar´a siendo tratado como un grupo de tan solo dos dimensiones (un circulo o una elipse) hasta llegar a su forma completa tomando en consideraci´on todas las dimensiones. Es importante el hecho de que en todos los clusters deben de tenerse en cuenta el mismo n´umero de dimensiones d0en una misma iteraci´on, aunque ´estas sean distintas en cada cluster, en lugar de utilizar tantas dimensiones como el n´umero de muestras mperteneciente a un cluster nos permita usar. Es decir, si tenemos un cluster Hicon mimuestras y otro Hjcon mjmuestras, el n´umero de dimensiones que se podr´ıan utilizar en cada uno de ellos hasta conseguir un matriz S0que no fuera singular viene determinado por las restricciones d0 i< miyd0 j< mj. Si mi> mj, implica que la distancia de una muestra al primero de los clusters tomar´a en consideraci´on m´as dimensiones que respecto al segundo; por lo que su valor puede llegar a ser mayor sin que necesariamente la muestra se encuentre m´as lejos de Hique de Hj(figura 4.5). El hecho de aumentar en cada iteraci´on y para todos los clusters el n´umero de dimensiones a utilizar conlleva que en alg´un momento del refinamiento iterativo se podr´ıa dar el caso de que d0≥mi, siendo miel n´umero de muestras pertenecientes al cluster Hi. En dicho caso la matriz de covarianza S0 ique se calcular´ıa ser´ıa singular. Para evitar este efecto se ha procedido a sumar un peque˜no valor del orden de una diezmil´esima a su diagonal principal; transformando as´ı una matriz singular en no singular. Este valor a˜nadido no tiene apenas ning´un efecto en la correlaci´on de las variables ya que un valor cercano a cero en una covarianza indica que una dimensi´on no proporciona informaci´on de la otra y eso es precisamente lo que ocurre en este caso. Menci´on aparte requieren los casos de la primera y segunda iteraci´on. En el primero de ellos no se pueden calcular las varianzas de ninguna de las dimensiones ya que el n´umero de muestras no lo permite. Por ello, se elige como medida de similitud o disparidad a la hora de calcular la distancia a una muestra xila distancia eucl´ıdea. De esta forma se realiza un agrupamiento inicial que, aunque utilice una medida diferente, sirve como una estimaci´on para poder seleccionar las dimensiones m´as discriminatorias y poder realizar el algoritmo propuesto propiamente dicho. En el segundo, cuando un grupo cuenta con tan solo con dos muestras, ´unicamente se podr´ıa calcular una matriz de 1x1, lo que equivale a la varianza. La ecuaci´on 4.2 se puede expresar en este casa del siguiente modo en funci´on de la dimensi´on con mayor varianza σ2 k: 20
4. Descriptor de bolsa de palabras Secci´on 4.4 (a) Dos dimensines y-z (b) Tres dimensiones x-y-z (c) Dos dimensines x-z Figura 4.6: Grupo original formado por muestras de tres dimensiones (b) al que se le ha reducido su complejidad dimensional. Las dimensiones x-z tienen mayor varianza que las dimensiones y-z, por lo que ser´ıan elegidas para la reducci´on. D=s(xjk−µik)2 σ2 k Por otro lado, para remediar el hecho de que se formen grupos excesivamente grandes o peque˜nos, se ha aplicado una ponderaci´on wa cada uno de los grupos como el ratio del n´umero de elementos del subconjunto Hiy el n´umero total de elementos del conjunto X. Esta modificaci´on no es una constante arbitraria y, aunque penaliza a los grupos grandes, no evita que un grupo est´e formado por m´as elementos si realmente es m´as cercano que los dem´as. De esta manera la expresi´on 4.2 podr´ıa ser reescrita de forma general como la siguiente: D=w∗(x0 d0−µ0 d0)TS0 d0 −1(x0 d0−µ0 d0) (4.4) donde wies size(Hi)/size(X) y x0 d0,µ0 d0yS0 d0representan la muestra, el centro de gravedad del cluster y la matriz de covarianza del cluster teniendo ´unicamente en cuenta las d0dimensiones con mayor varianza. Se han realizado pruebas del algoritmo propuesto sobre las muestras creadas sint´eticamente previamente mencionadas y los resultados son claramente mejores que los obtenidos con el uso de la distancia eucl´ıdea. Los resultados obtenidos al completo se pueden encontrar en la secci´on 6.1 dentro del cap´ıtulo 6. Adem´as se tom´o en consideraci´on el hecho de que la expresi´on 4.4 ser´ıa la que m´as veces deber´ıa ejecutarse dentro del nuevo algoritmo de agrupamiento, por lo que se hizo un estudio para reducir su coste temporal y se puede consultar en el Anexo ??. 21
Secci´on 4.4 4. Descriptor de bolsa de palabras Input: k,d,X={x1, x2, . . . , xn} ⊂ Rd, R={r11, . . . , r1k;r21,· · · , r2k;· · · , rn1,· · · , rnk}⊂{0,1} Output: H={H1, H2, . . . , Hk} ————————————————————————————————— /* elegir aleatoriamente ksemillas e inicializar los clusters con ellas */ H←SelectRandomSeeds(X, k) D← {} count ←0 repeat R0←R for i= 1 to ndo for j= 1 to kdo if count = 0 then Dj←q(xi−µj)2 else w← |Hj|/|X| Dj←w∗(xi0−µj0)TSj0−1(xi0−µj0) end end dist ←min(D) p←indexof(D, dist) rip ←1 for q= 1 to jdo if q6=pthen riq ←0 end end end for j= 1 to kdo µj←Pirij xi Pirij C←HeapSortVariances(Hj) Sj0←CalculateCovarianceMatrix(C, count) end if count < d then count ←count + 1 end until R0=R; Algoritmo 1:Clustering con distancia de Mahalanobis 22
4. Descriptor de bolsa de palabras Secci´on 4.5 4.5. Convergencia Tanto en el algoritmo de agrupamiento cl´asico con distancia eucl´ıdea como en el m´etodo propuesto con distancia de Mahalanobis, ambas etapas de reasignaci´on de elementos a los culters y de actualizaci´on de los mismos se repiten hasta que no haya cambios. Es decir, se repiten hasta que el conjunto R= {r11, . . . , r1k;r21,· · · , r2k;· · · , rn1,· · · , rnk}⊂{0,1}no cambia de una iteraci´on a otra. Debido a que cada fase minimiza el valor de Jdejando fijos los valores de la otra, la convergencia est´a asegurada [Bis06]. Sin embargo la convergencia suele ir encaminada hacia un m´ınimo local que no tiene por qu´e ser global; por lo que normalmente se ejecuta varias veces con distintas semillas hasta obtener el m´aximo global. Tanto el m´ınimo hacia el que converge como la velocidad de convergencia dependen altamente de las semillas elegidas; lo cual puede observarse m´as detalladamente en los experimentos realizados en el Cap´ıtulo 6. Las propiedades de convergencia del algoritmo K-Means fueron estudiadas m´as en detalle por MacQueen (1967) [Mac67]. Dichas propiedades pueden extrapolarse al m´etodo utilizado en este proyecto ya que la diferencia fundamental radica en el uso de la distancia de similitud, quedado inalterado el esquema del m´etodo iterativo de dos etapas. En este proyecto se ha ejecutado el algoritmo K-Means MacQueen1967sobre los puntos STIP previamente extra´ıdos de los v´ıdeos. Realizar dicho algoritmo sobre un n´umero tan elevado de elementos como el que obtenemos de la extracci´on representa un coste temporal altamente inasumible. Por lo tanto se han seleccionado aleatoriamente 100.000 muestras de entre todos los puntos de inter´es del conjunto de entrenamiento y se han agrupado usando K-Means. Este proceso se ha repetido varias veces en paralelo y se ha seleccionado finalmente el vocabulario que mejores resultados ha proporcionado. Un ejemplo de la velocidad de convergencia en funci´on del n´umero de cambios en los subconjuntos de una iteraci´on a otra puede observarse en la figura 4.7; donde el eje de ordenadas representa el n´umero de cambios y el eje de ordenadas, las iteraciones. Como puede observarse, el m´etodo b´asico de agrupamiento con distancia eucl´ıdea converge m´as r´apidamente a cero. Esto es debido en gran medida a que el algoritmo propuesto tiene una etapa de inicio lenta donde los cambios son muy elevados, ya que en las primeras iteraciones se a˜naden dimensiones muy discriminatorias en comparaci´on con las a˜nadidas en las ultimas iteraciones; mientras que esta etapa no existe en el uso de la distancia eucl´ıdea. 23
Secci´on 4.5 4. Descriptor de bolsa de palabras (a) Distancia eucl´ıdea (b) Distancia de Mahalanobis Figura 4.7: Representaci´on gr´afica de la velocidad de convergencia del algoritmo de agrupamiento en funci´on del n´umero de cambios por iteraci´on dependiendo de la distancia utilizada. 24
4. Descriptor de bolsa de palabras Secci´on 4.6 4.6. Creaci´on del descriptor Una vez se ha construido el vocabulario visual se puede pasar a generar un descriptor para los v´ıdeos que se deseen. Estos descriptores estar´a basados en el concepto de bolsa de palabras explicado anteriormente para el lenguaje natural. Esto es, para cada punto de inter´es existente en el v´ıdeo sobre el cual se est´a construyendo el descriptor, se calcula la distancia (4.2) de dicho punto a cada uno de los clusters que conforman el vocabulario, qued´andonos con aquel cluster para el cual la distancia sea menor y pas´andolo a considerar una ocurrencia de dicho cluster. De esta forma cada punto de inter´es es asociado a un grupo determinado. Tras ello, se procede a realizar un histograma de todas las ocurrencias de todos los grupos; por lo cual las palabras visuales que mejor identifiquen una acci´on tendr´an un mayor valor al estar m´as veces repetidas en el v´ıdeo. Dicho histograma ser´a el descriptor del v´ıdeo o acci´on y su longitud ser´a igual al n´umero de grupos del vocabulario. As´ı obtenemos un descriptor ´unico para cada v´ıdeo en vez de una serie de descriptores por cada punto de inter´es. 25
Cap´ıtulo 5 Clasificaci´on Una vez identificadas y definidas todas las acciones es necesario realizar un proceso de clasificaci´on de las mismas para saber diferenciar entre los distintos tipos de acciones existentes. Para ello se utiliza un sistema de entrenamiento supervisado llamado M´aquinas de Soporte Vectorial o Support Vector Machine (SVM) [OP], el cual se divide en dos fases: entrenamiento y test. Antes de entrar a explicar en detalle el funcionamiento de este sistema es importante introducir el concepto de clases linealmente separables. En espacio eucl´ıdeo de ddimensiones dos conjuntos de puntos son linealmente separables si existe un hiperplano de d−1 dimensiones capaz de generar un par de subespacios tal que en uno de ellos est´en albergados todos los puntos de uno de los conjuntos y en el otro subespacio est´en todos los puntos del otro conjunto. Este concepto es sencillo de explicar tomando como ejemplo un espacio de dos dimensiones con dos tipos de puntos (figura 5.1). Si existe al menos una recta capaz de dividir el plano de tal forma que un tipo de puntos queden a un lado de ella y el otro tipo de puntos al otro lado, los conjuntos son linealmente separables. SVM se divide en una fase de entrenamiento y otra de test. En la primera de ellas las entradas est´an constituidas por las diferentes muestras representadas cada una como un vector de dcomponentes o dimensiones y de las que conocemos la clase a la que pertenecen. Estas entradas se conciben como puntos representados en el espacio. Originalmente las SVM estaban dise˜nadas para tratar ´unicamente con problemas linealmente separables. Su cometido era trazar el hiperplano ´optimo de entre todos los que separaran las entradas pertenecientes a dos grupos. Como puede observarse en la figura 5.1, tanto R1 como R2 son rectas que separan correctamente los dos conjuntos, pero la recta ´optima a la hora de trazar la frontera entre las dos clases viene definida por R3 puesto que maximiza la distancia o el margen entre la frontera y la muestra m´as cercana de cada uno de los tipos. Es decir, dado un conjunto 27
5. Clasificaci´on Figura 5.1: Problema en dos dimensiones linealmente separable. C={(xi, yi)|xi∈Rd, yi∈ {−1,1}}n i=1 donde yiindica la clase del puntoxi, el hiperplano que queremos que separe las muestras con yi= 1 de las que tienen yi=−1 puede venir determinado por la siguiente expresi´on x·w+b= 0 siendo buna constante que indica la posici´on del hiperplano respecto al origen y wes el vector normal al dicho hiperplano. Maximizar el margen entre el hiperplano y las muestras puede verse como el problema de trazar dos hiperplanos paralelos entre los que no exista ning´un punto y maximizar su distancia. Estos dos hiperplanos definidos por x·w+b= 1 y x·w+b=−1 deben de cumplir xi·w+b > +1 si yi= +1 xi·w+b < −1 si yi=−1 lo cual puede combinarse en una ´unica ecuaci´on yi(xi·w+b)≥1∀i= 1,· · · , n. (5.1) La distancia que los separa es 2 kwk, lo que implica que el hiperplano ´optimo se encuentra a una distancia 1 kwkde ambos grupos. El problema de maximizar la expresi´on 2 kwkes equivalente a minimizar kwk. Se ha demostrado que kwkpuede 28
Cap´ıtulo 6 Experimentos y resultados 6.1. Clustering con datos sencillos sint´eticos Una vez analizado el problema del algoritmo de agrupamiento y las posibles variaciones que ´este puede tener, se ha decidido probar mediante un datasets sint´eticamente creado el correcto funcionamiento del algoritmo propuesto en comparaci´on con el algoritmo K-Means t´ıpico con distancia eucl´ıdea. Se ha programado el algoritmo en el programa Matlab y se han realizado una serie de pruebas con ejemplos sencillos en tres dimensiones para que los resultados pudieran ser visualizados gr´aficamente, pero que representan casos conflictivos a la dividir un conjunto de muestras en subconjuntos. El dataset est´a formado por cinco experimentos partiendo desde el caso m´as sencillo y aumentando la dificultad en cada uno de ellos. El primero de ellos (figura 6.1) consiste en un conjunto de muestras a dividir en dos grupos claramente diferenciables. Dado que est´an suficientemente separados el uno del otro la distancia eucl´ıdea es un factor suficientemente discriminatorio, por lo que los resultados obtenidos con distancia eucl´ıdea son los mismos que con el algoritmo propuesto. Aumentando el n´umero de grupos los resultados se mantienen. Si acercamos dos grupos con la misma forma lo suficiente como para que se mezclen sus l´ımites, la situaci´on cambia (figura 6.2). La distancia eucl´ıdea encuentra problemas a la hora de hacer las particiones ya que la distancia entre los dos extremos m´as alejados de un mismo grupo es mayor que la distancia que separa los puntos de una mitad de un grupo con los puntos de la misma mitad del otro grupo; dando lugar as´ı a la formaci´on de clusters esf´ericos. Sin embargo, si se tiene en cuenta la forma de dichos grupos la distancia entre las muestras de un mismo grupo disminuye; por lo que se puede realizar un agrupamiento m´as correcto. Cuando la forma de los grupos no es la misma si no que var´ıa en la direcci´on por ejemplo 35
Secci´on 6.1 6. Experimentos y resultados (a) Distancia eucl´ıdea y dos clusters (b) Distancia de Mahalanobis y dos clusters (c) Distancia eucl´ıdea y cuatro clusters (d) Distancia de Mahalanobis y cuatro clusters Figura 6.1: Primer experimento en el que los clusters con forma elipsoidal est´an separados los unos de los otros. La distancia eucl´ıdea y la de Mahalanobis consiguen los mismos resultados (figura 6.3), el agrupamiento cl´asico continua formando clusters esf´ericos que absorben muestras de otros clusters cercanos a la frontera entre ambos mientras que el algoritmo propuesto diferencia perfectamente los dos grupos. Si se aumenta el n´umero de grupos a formar los resultados contin´uan siendo mejores utilizando el algoritmo propuesto en vez de la distancia eucl´ıdea. Otro caso de prueba consiste en que los grupos no var´ıen ´unicamente en la direcci´on si no que tengan una forma totalmente diferente como es el caso de la figura 6.4, donde claramente nos encontramos ante un grupo con forma esf´erica y otro con forma elipsoidal. En este experimento, la distancia eucl´ıdea forma clusters pr´acticamente correctos pero la esfera absorbe muestras pertenecientes a la elipsoide ya que es tan m´as cerca del centroide del primero que del segundo; lo cual genera un efecto negativo no deseado. Por otro lado, el algoritmo propuesto 36
6. Experimentos y resultados Secci´on 6.1 (a) Distancia eucl´ıdea (b) Distancia de Mahalanobis Figura 6.2: Segundo experimento. En (a) la distancia del centroide de uno de los grupos respecto a las muestras situadas en la frontera del otro es menor que respecto a las muestras de la parte alargada del mismo. se adapta a las formas de los grupos dado que la ponderaci´on que ejerce la matriz de covarianza hace que las distancias respecto a los centroides disminuyan para las muestras que est´an dentro de un mismo grupo. Dado que la esfera se encuentra en la direcci´on con mayor varianza de la elipsoide, ´esta primera podr´ıa ser absorbida por la segunda pero el peso wa˜nadido a cada distancia hace que esto no ocurra. Por ´ultimo, en un caso extremo como el representado por la figura 6.5, el algoritmo propuesto vuelve a obtener mejores resultados si asumimos que los grupos tiene forma elipsoidal. Los dos grupos est´an mezclados casi en su totalidad, lo que hace que la distancia eucl´ıdea sea pr´acticamente incapaz de diferenciar los dos grupos, por lo que realiza dos clusters esf´ericos dividiendo la uni´on diagonalmente. El algoritmo propuesto, guiado por la forma indicada por la matriz de covarianza, es capaz de identificar los dos clusters elipsoidales y asigna los puntos de la intersecci´on de forma equitativa entre los dos clusters. Visto que el algoritmo propuesto presenta mejores resultados en estos experimentos creados sint´eticamente que las t´ecnicas cl´asicas de agrupamiento, se postula como aceptable la idea de probar dicho procedimiento en un dataset real. 37
Secci´on 6.1 6. Experimentos y resultados (a) Distancia eucl´ıdea y dos clusters (b) Distancia de Mahalanobis y dos clusters (c) Distancia eucl´ıdea y dos clusters (d) Distancia de Mahalanobis y dos clusters (e) Distancia eucl´ıdea y cuatro clusters (f) Distancia de Mahalanobis y cuatro clusters Figura 6.3: Tercer experimento en el que la direcci´on de la forma de los clusters cambia. La distancia de Mahalanonis va descubriendo la matriz de covarianza y obtiene mejores resultados. 38
6. Experimentos y resultados Secci´on 6.1 (a) Distancia eucl´ıdea (b) Distancia de Mahalanobis Figura 6.4: Cuarto experimento formado por clusters con forma de hiperelipsoide y forma de hiperesfera. (a) Distancia eucl´ıdea (b) Distancia de Mahalanobis Figura 6.5: Quinto experimento. Dos clusters elipsoidales mezclados completamente. 39
Secci´on 6.2 6. Experimentos y resultados (a) ContestarTel´efono (b) SalirDelCoche (c) Besar Figura 6.6: Ejemplo de las acciones contenidas en el Hollywood dataset. 6.2. Hollywood dataset Como paso previo a los experimentos con el dataset propio de c´amaras vestibles, se ha ejecutado el reconocimiento sobre datasets ya existentes de los que se conoce el porcentaje de aciertos en la clasificaci´on con el fin de medir como de bueno es el sistema desarrollado en el presente proyecto. Para ello se utiliz´o el Hollywood dataset [MLS09]. Dicho dataset est´a formado por una serie de v´ıdeos ya etiquetados consistentes en partes de distintas pel´ıculas que encapsulan acciones humanas. En total proporciona 823 v´ıdeos de entrenamiento y 884 de test, divididos en 12 clases: contestar al tel´efono, conducir un coche, comer, pelearse, salir del coche, saludo de manos, abrazar, besar, correr, sentarse, recostarse y levantarse. En Laptev et al. [LMSR08], los experimentos realizados sobre dicho dataset obtuvieron un 45.2 % de aciertos mientras que en los experimentos replicados en este proyecto con los mismos par´ametros y con distancia eucl´ıdea se ha obtenido un 42.5 %. Un valor relativamente menor que en cierta parte es debido a que en el experimento original cada muestra es etiquetada como perteneciente a varias clases a la vez, lo que aumenta la probabilidad de acertar en la predicci´on. Una vez se ha comprobado que el sistema de agrupamiento cl´asico realizado funciona de una forma correcta, se ha pasado a verificar si ocurre lo mismo con el algoritmo propuesto o si obtiene peores o mejores resultados. Tal como se ha se˜nalado anteriormente, este m´etodo conlleva un elevado coste computacional debido a la evaluaci´on de la expresi´on 4.2 para cada uno de los puntos de inter´es y para cada uno de los clusters, por lo que se ha realizado una optimizaci´on del c´alculo tal como puede observarse en el anexo ??. A´un con la optimizaci´on incluida, el coste computacional es bastante considerable; por ello se llevaron a cabo en un principio experimentos m´as reducidos con los que probar la efectividad de la dis40
6. Experimentos y resultados Secci´on 6.2 tancia de Mahalanobis en un experimento con datos reales. De este modo el primer experimento realizado constaba de tres clases elegidas aleatoriamente de entras las doce disponibles en el dataset. Se ha ejecutado varias veces tanto con distancia Mahalanobis como con distancia eucl´ıdea siendo estos ´ultimos experimentos con distancia eucl´ıdea necesarios para tomar sus resultados como referencia y compararlos bajo las mismas condiciones con los devueltos por el m´etodo propuesto. Los porcentajes de acierto obtenidos con la distancia de Mahalanobis han sido iguales o mejores a los obtenidos con distancia eucl´ıdea; siendo los primeros de en torno al 50 % y los segundos en torno al 40 %. En estos experimentos las semillas utilizadas para cada una de las versiones del algoritmo de agrupamiento han sido las mismas para asegurar as´ı que la mejora obtenida recae ´unicamente en el proceso de construcci´on de los grupos del vocabulario y no es debido a una mejor o peor semilla de inicializaci´on. Dado que este experimento devuelve resultados claramente favorables se ha procedido a aumentar el n´umero de clases sobre el que ejecutar el reconocimiento. Se ha realizado un experimento similar al anterior pero teniendo en cuenta tres clases m´as. Ejecutando el reconocimiento sobre seis clases se ha podido observar como los buenos resultados obtenidos por la soluci´on propuesta se mantienen, devolviendo hasta un 54.25 % de aciertos por el 50.85 % devuelto por la distancia eucl´ıdea bajo los mismos par´ametros. Cabe destacar que estos resultados son los mejores que se han obtenido con cada versi´on del algoritmo de agrupamiento y no han sido necesariamente obtenidos con las mismas semillas. Comparando ejecuciones en las que las semillas de inicializaci´on han sido las mismas, obtenemos una diferencias de entorno al 5 % en el caso mejor (49.14 % para distancia eucl´ıdea y 54.25 % para distancia de Mahalanobis) mientras que tambi´en existen casos en los que la distancia de Mahalanobis obtiene los mismos resultados o m´ınimamente inferiores que la eucl´ıdea (50.85 % para distancia eucl´ıdea y 49.87 % para distancia de Mahalanobis). Esto hace entrever que el algoritmo propuesto no asegura siempre una mejor partici´on de las muestras para unas semillas de inicializaci´on dadas; pero que repitiendo el agrupamiento varias veces con distintas semillas cada vez, se pueden llegar a conseguir resultados superiores al mayor de los obtenidos con distancia eucl´ıdea. Por ´ultimo, y antes de pasar al dataset de c´amaras vestibles, se ha realizado el reconocimiento sobre la totalidad de las doce clases por las que est´a formado el Hollywood dataset. El mejor resultado que se ha conseguido replicar con distancia eucl´ıdea, tal como se ha dicho anteriormente, alcanza el 42.5 % de aciertos; mientras que si se usa la distancia eucl´ıdea ese n´umero asciende hasta 44.91 %. Al igual que con el experimento de seis clases, existen algunas semillas para las que la distancia de Mahalanobis obtiene unos resultados m´ınimamente inferiores; confirm´andose as´ı el hecho de que la distancia de Mahalanobis no asegura siempre 41
Secci´on 6.3 6. Experimentos y resultados Figura 6.7: Ejemplo de las acciones contenidas en el dataset de c´amaras vestibles. La primera fila muestra im´agenes grabadas con una GoPro y la segunda grabadas con un m´ovil. mejores resultados, mas normalmente son mejores y en ocasiones pr´acticamente iguales. A ra´ız estos resultados obtenidos en este dataset podemos se˜nalar que el uso la distancia de Mahalanobis conlleva claros beneficios en detrimento de la distancia eucl´ıdea. Los resultados obtenidos de los diversos experimentos realizados pueden observarse en la siguiente tabla: Distancia Eucl´ıdea Mahalanobis N´umero de clases 3 38.17 % 51.02 % 6 49.87 % 54.25 % 12 42.5 % 44.91 % 6.3. C´amaras vestibles Habiendo demostrado el correcto funcionamiento del sistema de reconocimiento con distancia eucl´ıdea en un dataset real y los mejores/peores resultados obtenidos con la utilizaci´on de la distancia de Mahalanobis, se ha pasado a ejecutar el reconocimiento sobre el dataset propio. ´ Este esta conformado por secuencias de acciones grabadas con c´amaras vestibles, desarrolladas en dos escenarios diferentes (edificio Ada Byron y edificio I3A) por cinco usuarios diferentes y divididas en 42
6. Experimentos y resultados Secci´on 6.3 Figura 6.8: Ejemplo de resultados obtenidos de la clasificaci´on con el dataset de Hollywood en el que se puede observar las diferencia entre verdadero positivo y falso positivo. veinte clases: escribir en teclado, mover rat´on, leer/mirar una pantalla, leer/mirar un cartel, leer un papel, leer un libro, escribir en un papel, escribir en una pizarra, abrir/cerrar una puerta, abrir/cerrar una ventana, abrir/cerrar un frigor´ıfico, abrir/cerrar un microondas, abrir/cerrar un armario, usar m´aquina de caf´e, usar m´aquina expendedora, hablar/contestar al tel´efono, hablar con alguien, dar la mano a alguien, beber y comer. Los v´ıdeos consisten una secuencia de varias acciones consecutivas y han sido manualmente etiquetados para su utilizaci´on. De los cuatro tipos de c´amaras se ha ejecutado el reconocimiento sobre la c´amara GoPro que los usuarios llevaban colocada en la frente. Se han fijando las semillas de una ejecuci´on con distancia eucl´ıdea a otra con distancia de Mahalanobis tal como se ha explicado anteriormente. Distancia Eucl´ıdea Mahalanobis Porcentaje de aciertos 17.34 % 19.76 % El porcentaje de aciertos que este experimento ha devuelto es del 17.34 % para la distancia eucl´ıdea y del 19.76 % para la distancia de Mahalanobis. Estos resultados indican que de forma general que las acciones desarrolladas en primera persona y grabadas con una c´amara colocada en la frente del sujeto pueden ser reconocidas pero con un escaso grado de efectividad. Para obtener m´as conclusiones de este experimento, si ha calculado la precisi´on de reconocimiento de cada clase. La precisi´on de reconocimiento viene dada por la siguiente f´ormula: 43
Secci´on 6.3 6. Experimentos y resultados P=TP TP +FP (6.1) donde TP son los verdaderos positivos (True Positive y False Positive) y FN corresponde al n´umero de falsos negativos (False Negative). Un verdadero positivo es cuando una muestra es clasificada con una clase y efectivamente pertenece a dicha clase; mientras que un falso positivo consiste en una muestra predicha como perteneciente a una clase cuando en realidad pertenece a otra. Un ejemplo ilustrativo puede observarse en la figura 6.8. Realizado este c´alculo se han obtenido los siguientes resultados: Acci´on Precisi´on EscribirTeclado 0.094 MoverRat´on 0.080 MirarPantalla 0.117 LeerCartel 0.078 LeerPapel 0.072 LeerLibro 0.402 EscribirPapel 0.228 EscribirPizarra 0.563 AbrirPuerta 0.073 AbrirVentana 0.206 AbrirFrigor´ıfico 0.102 AbrirMicroondas 0.087 AbrirArmario 0.133 M´aquinaCafe 0.353 M´aquinaExpendedora 0.271 HablarTel´efono 0.109 HablarConAlguien 0.149 DarLaMano 0.110 Beber 0.181 Comer 0.130 Las acciones “escribir en teclado”, “mover rat´on” y “leer un papel” son de las que peor porcentaje de precisi´on presentan. Esto es debido a que la parte principal de la acci´on se realiza fuera del campo visual de la c´amara GoPro que est´a situada en la frente, ya que el usuario puede inclinar los ojos sin necesidad de mover la cabeza para realizar dicho tipo de acciones. Este efecto puede observarse en la figura 6.9 donde la imagen (b) corresponde a una acci´on de la categor´ıa 44