• No se han encontrado resultados

Segmentación objeto-fondo mediante redes convolucionales

N/A
N/A
Protected

Academic year: 2022

Share "Segmentación objeto-fondo mediante redes convolucionales"

Copied!
66
0
0

Texto completo

(1)

Universidad Autónoma de Madrid

Escuela politécnica superior

Grado en Ingeniería de Tecnologías y Servicios de Telecomunicación

Trabajo Fin de Grado

SEGMENTACIÓN OBJETO-FONDO MEDIANTE REDES

CONVOLUCIONALES.

Alejandro Peña Almansa.

Tutor: Álvaro García Martín.

Ponente: José María Martínez Sánchez.

(2)
(3)
(4)
(5)

Resumen

En este Trabajo Fin de Grado se presenta el desarrollo de un algoritmo, basado en redes neuronales convolucionales, de segmentación de la escena en dos clases, objeto y fondo, cuyo objetivo radica en garantizar que ningún objeto o parte de objeto sea clasicado erróneamente como fondo, a diferencia del enfoque tradicional que se centra en obtener una gran precisión en la detección o clasicación del objeto. Dicho algoritmo se implementa a partir de un detector multiescala que aplica modelos basados en partes del objeto, siguiendo una arquitectura de red neuronal convolucional, sobre una pirámide de características construida por una segunda red neuronal convolucional a partir de la imagen de entrada. Sobre el detector desarrollamos dos métodos de segmentación que generalizan la segmentación persona-fondo del trabajo del que partimos, de forma que puedan operar con cualquier clase de objeto.

Nuestros experimentos se dividen en una evaluación del segmentador con la clase persona, y una segunda evaluación con distintas clases de objeto. La evaluación con la clase persona muestra que el enfoque basado en redes neuronales convolucionales desarrollado no sólo supera en rendimiento al enfoque tradicional del que partimos, sino que obtiene resultados cercanos al estado del arte en segmentación semántica mediante deep learning e incluso lo supera cuan- do se aplica una mayor penalización de los falsos positivos de la segmentación. Por su parte, la evaluación con clases de objeto distintas a persona corrobora la mejora de rendimiento del segmentador desarrollado respecto a sus versiones previas, llegando a obtener máscaras de seg- mentación satisfactorias en casos donde el trabajo previo no funcionó, aunque muestra un ligero aumento de la tasa de falsos positivos con respecto a la evaluación de persona.

(6)

Palabras Clave

Segmentación objeto-fondo, segmentación persona-fondo, detección de objetos, redes neuro- nales convolucionales, modelos basados en partes, procesamiento de imagen.

VI

(7)

Abstract

This work aims to develop a two-class segmentation algorithm, background and object, ba- sed on convolutional neural networks, with the goal of guaranteeing that no object or object parts are miss-classied as background, instead of the traditional detection and segmentation approach, which is to obtain a high performance on the object classication. We implemented the algorithm with a multi-scale object detector that applies parts based models as convolutional neural network over a feature pyramid, constructed by a second convolutional neural network from the input image. On top of this detector we developed two segmentation methods that generalize the people-background segmentation proposed in the work we started from, so that they can operate with any object class.

Our experiments are divided into two dierent evaluations: one with the people class and another one with a collection of dierent object classes. The people class evaluation shows that our approach not only outperfoms the traditional approach from which we proceed, but also obtains comparable results with the deep learning semantic segmentation state of the art, and signicantly outperforms it when a higher false positive penalty factor is used. For its part, the generic object evaluation shows the same performance improvement over the previous work, getting to obtain succesful segmentation masks in cases where the previous approaches didn't work, although it shows a slight increase in the false positive rate compared to the people class evaluation.

Key words

Object-background segmentation, people-background segmentation, people detection, con- volutional neural networks, part based models, image processing.

(8)

VIII

(9)

Agradecimientos

En primer lugar, me gustaría dar las gracias a mi tutor, Álvaro García Martín, no sólo por haberme dado la oportunidad de llevar a cabo este trabajo, sino por su constante ayuda y respaldo durante su realización.

Agradezco a mi familia y amigos su apoyo a lo largo de la carrera, así como a todos los compañeros con los que he compartido y me han ayudado estos últimos años de formación.

Finalmente, me gustaría agradecer y dedicar este trabajo a todos los profesores que, a lo largo de los años, han contribuido con su trabajo a mi formación, y sin los cuales jamás habría sido capaz de llegar a este punto.

(10)

X

(11)

Índice general

Resumen V

Abstract VII

Agradecimientos IX

Índice de Figuras XIV

Índice de Tablas XVI

1. Introducción 1

1.1. Motivación . . . 1

1.2. Objetivos . . . 2

1.3. Organización de la memoria . . . 2

2. Estado del arte 5 2.1. Introducción . . . 5

2.2. Detección de objetos . . . 5

2.2.1. Detección mediante modelos holísticos . . . 6

2.2.2. Detección mediante modelos basados en partes . . . 7

2.2.2.1. Detección mediante modelos de partes deformables . . . 7

2.2.2.2. Detector DeepPyramid DPM . . . 8

(12)

ÍNDICE GENERAL

2.3. Segmentación de imágenes . . . 10

2.3.1. Segmentación persona-fondo . . . 10

2.3.2. Pyramid Scene Parsing Network . . . 12

3. Diseño 15 3.1. Introducción . . . 15

3.2. Planteamiento inicialdelsegmentador . . . 15

3.3. Entrenamiento de los algoritmos . . . 16

4. Desarrollo 19 4.1. Introducción . . . 19

4.2. Detalles del algoritmo . . . 19

4.3. DeepPyramid Independent Object Parts . . . 21

4.4. DeepPyramid Dependent Object Parts . . . 21

5. Integración, pruebas y resultados 25 5.1. Introducción . . . 25

5.2. Métrica y dataset de evaluación . . . 25

5.3. Pruebas y resultados delsegmentador objeto-fondo en elcaso de personas . . . . 27

5.4. Pruebas y resultados del segmentador objeto-fondo en casos genéricos . . . 30

6. Conclusiones y trabajo futuro 35 6.1. Conclusiones . . . 35

6.2. Trabajo futuro . . . 36

Glosario 41

Bibliografía 43

XII

(13)

ÍNDICE GENERAL

A. Curvas ROC 43

B. Publicación (en revisión) 45

(14)
(15)

Índice de Figuras

2.1. DPM de dos componentes de la clase coche . . . 8

2.2. Detector DeepPyramid DPM. . . 9

2.3. Detalle de DPM-CNN . . . 10

2.4. Partes de un DPM de la clase persona . . . 11

2.5. Análisis de escena con FCN y PSPNet . . . 13

3.1. Esquema de funcionamiento de DP-IOP y DP-DOP . . . 16

4.1. Distribución de las partes en el modelo INRIAde persona . . . 20

4.2. Ejemplos de mapas de conanza obtenidos con DeepPyramid DPM, DP-IOP y DP-DOP. . . 22

4.3. Agrupaciones de partes realizadas sobre el DPM de la clase bicicleta VOC2010. . 23

5.1. Ejemplo de imagen y su ground truth en DAVIS . . . 26

5.2. Mapas de conanza de DP-DOP/INRIAy PSPNet50_ADE20k . . . 29

5.3. Curvas ROC de las redes PSPNet y DP-DOP/INRIA. . . 29

5.4. Comparativa entre métodos basados en CNNs y HoG . . . 32

A.1. Curvas ROC generadas durante la evaluación del segmentador objeto-fondo. . . . 44

(16)
(17)

Índice de Tablas

4.1. Valores del anchor para los ltros del modelo INRIA de persona . . . 20

5.1. Resultados con los modelos de persona de INRIA , VOC 2007 y VOC 2010 . . . . 28 5.2. Comparativa con PSPNet con distinto factor de penalización . . . 28 5.3. Resultados en términos AUC de las secuencias de evaluación. . . 31 5.4. Comparativa con PSPNet en términos AUC con diversas clases de objeto. . . 33

(18)
(19)

Capítulo 1

Introducción

1.1. Motivación

Dentro del mundo del procesamiento de imagen, la segmentación se presenta como una técnica que nos ayuda a obtener información de la imagen mediante su división en regiones homogéneas con respecto a una característica común, como pueden ser el color, la forma o la textura, simplicando la escena e identicando distintos elementos de interés para una aplicación concreta. En este Trabajo Fin de Grado se busca diseñar un segmentador de dos clases, objeto y fondo, pero con un propósito distinto al enfoque clásico de segmentación y detección, puesto que buscamos que el segmentador clasique de forma precisa las zonas que no son objeto.

Un segmentador de estas características no sólo es de utilidad en etapas de preprocesamiento, sino que puede emplearse en tareas diversas como pueden ser la robótica, la conducción autónoma o la vídeo-seguridad, entre otras.

En los últimos años, gracias al desarrollo de la capacidad de procesamiento y la recolección de grandes colecciones de datos, el deep learning está demostrando ser de gran utilidad en muchas tareas de procesamiento de señal, y en concreto las redes neuronales convolucionales presentan un gran rendimiento en la detección y segmentación de objetos. Por este motivo, se desarrollará un algoritmo de segmentación objeto-fondo que se base en el uso de redes neuronales convolucionales.

(20)

CAPÍTULO 1. INTRODUCCIÓN

1.2. Objetivos

Este Trabajo Fin de Grado tiene como objeto principal el desarrollo de un algoritmo de seg- mentación de secuencias de imágenes basado en el uso de redes neuronales convolucionales. Este segmentador analizará las imágenes de forma independiente e identicará las zonas con mayor probabilidad de pertenecer al fondo de la escena, diferenciándolas de aquellas correspondientes a objeto, con el objetivo de que no haya partes de los objetos que se clasiquen erróneamente como fondo. Este enfoque se llevará a cabo asignando una mayor penalización a los píxeles correspon- dientes a objetos que se clasiquen erróneamente como fondo, lo que conlleva una segmentación con sesgo en el fondo.

Los distintos objetivos en los que se centrará este trabajo son los siguientes:

1. Llevar a cabo un estudio del estado del arte en relación a la segmentación y detección de objetos, analizando tanto enfoques tradicionales como aquellos basados en deep learning.

2. En particular, se estudiarán en profundidad tanto el algoritmo original de segmentación persona-fondo como el detector basado en redes neuronales convolucionales de los que parte este trabajo.

3. Se desarrollará un algoritmo que, partiendo de una detección mediante redes neuronales convolucinales, generalice la segmentación persona-fondo para cualquier clase de objeto.

4. Realizar la evaluación del algoritmo desarrollado, comparando su rendimiento con una versión más tradicional desarrollada en un Trabajo Fin de Grado previo y con el estado del arte en segmentación.

1.3. Organización de la memoria

La memoria de este Trabajo Fin de Grado se organiza en los siguientes capítulos:

Capítulo 1. Introducción: Motivación y objetivos del trabajo.

Capítulo 2. Estado del arte: Estudio de las tecnologías de segmentación y detección rela- cionadas con el trabajo.

Capítulo 3. Diseño: Punto de partida, planteamiento inicial y entrenamiento del algoritmo.

2

(21)

CAPÍTULO 1. INTRODUCCIÓN

Capítulo 4. Desarrollo: Detalles del algoritmo desarrollado.

Capítulo 5. Integración, pruebas y resultados: Presentación del dataset, métrica de evalua- ción y resultados de las pruebas sobre el algoritmo.

Capítulo 6. Conclusiones y trabajo futuro.

Bibliografía.

Glosario.

Anexos.

(22)
(23)

Capítulo 2

Estado del arte

2.1. Introducción

El objetivo de este capítulo es llevar a cabo una presentación de las tecnologías de detección y segmentación que guardan relación con nuestro trabajo, estudiando tanto enfoques tradicionales como enfoques más modernos basados en deep learning. El segmentador objeto-fondo a desa- rrollar parte de los métodos presentados en el segmentador persona-fondo de [1], sustituyendo el detector tradicional que utiliza por el detector de [2]como base de la segmentación.

En primer lugar, se introducirán los detectores de objetos en la sección 2.2, distinguiendo entre los detectores de modelos holísticos y aquellos basados en modelos de partes. En esta segunda categoría se ubicarían tanto el detector original utilizado por el segmentador persona- fondo como el detector que hace uso de redes neuronales convolucionales (CNNs) con el que desarrollaremos el segmentador objeto-fondo.

A continuación, en la sección 2.3.1 se presenta el segmentador persona-fondo del que parte este trabajo, y nalmente en la sección 2.3.2 introduciremos uno de los algoritmos más novedosos del estado del arte en segmentación semántica a partir de deep learning.

2.2. Detección de objetos

La detección de objetos es uno de los problemas clásicos en el procesamiento de imagen y vídeo, consistente en determinar la presencia de una determinada clase de objeto en la escena y la localización de la misma. El principal reto al que se enfrentan las técnicas de detección es a la

(24)

CAPÍTULO 2. ESTADO DEL ARTE

denición de la clase de objeto, puesto que un mismo objeto puede presentarse con características bastante diversas en la escena, como pueden ser el color, la pose o la forma, entre otras.

La detección suele llevarse a cabo modelando la clase de objeto que buscamos detectar, para después comprobar la similitud entre el modelo generado y las distintas partes de la imagen en las que podría localizarse el objeto (e.g. aplicando el modelo como una ventana deslizante). Estos modelos deben permitir discriminar la clase de objeto deseada de otras, a la vez que presenten cierta robustez a la variabilidad propia de la clase y a las condiciones de captura de la imagen (e.g. cambios de iluminación, punto de vista, escala, etc.).

En lo relativo a la detección de objetos basada en modelos, podemos distinguir dos clases de detectores, los holísticos y los basados en partes. Los detectores holísticos modelan el objeto como un todo, sin identicar partes en el mismo, mientras que los basados en partes dividen el objeto de estudio en distintas componentes a modelar, con el objetivo de ser resistentes a las variaciones dentro de la clase de objeto. En las siguientes secciones se presentarán diversos algoritmos que se engloban en estos dos enfoques de detección.

2.2.1. Detección mediante modelos holísticos

Los modelos holísticos, a pesar de su baja complejidad, suelen presentar dicultades a la hora de reejar de forma óptima clases de objetos que presenten deformaciones o distintas posturas, como pueden ser lo animales. Así mismo, el hecho de representar al objeto como un todo puede llevar a que el rendimiento de estos detectores decaiga cuando el objeto en cuestión se presente parcialmente ocluido en la escena. Por ello, las aproximaciones típicas de este problema suelen extraer la información de bordes de los objetos para su identicación.

Entre los distintos detectores basados en modelos holísticos, destacamos los siguientes tra- bajos:

Implicit Shape Model (ISM). Este algoritmo [3] consiste en la generación de un codebook de las apariencias locales prototípicas para distintos puntos de vista de un objeto, mediante la extracción de características locales scale-invariant feature transform (SIFT) [4] entorno a los puntos de interés. A partir de dicho codebook se construye un ISM que especique dónde pueden aparecer las distintas entradas del codebook, de forma que en vez de especicar explícitamente cada postura del objeto, se denen formas implícitas a partir de apariencias

6

(25)

CAPÍTULO 2. ESTADO DEL ARTE

consistentes entre sí, pudiendo reconocer nuevas posturas del objeto nunca vistas por consistencia entre las ya conocidas.

Características Haar y clasicador en cascada Adaboost. El trabajo presentado en [5] par- te del cálculo de características Haar mediante una aproximación de ventana deslizante.

Puesto que en cada subventana de la imagen se obtiene un gran número de características Haar, excediendo incluso el número de píxeles, mediante el algoritmo de aprendizaje Ada- boost se seleccionan las más signicativas con el n de garantizar una clasicación rápida y efectiva. Junto a este esquema se presenta un método de combinación de clasicadores más complejos en una estructura en cascada, que permite discriminar rápidamente las regiones de poco interés para acelerar el proceso.

Histogramas de gradientes orientados (HoG). En [6] la apariencia local de los objetos se caracteriza a partir de distribuciones locales de los gradientes de intensidad o direcciones de bordes, utilizando estas características en un clasicador SVM lineal. Los descriptores HoG se pueden calcular para cada ventana de la imagen dividiéndola en celdas conjuntas, sobre las que se calculan histogramas de las direcciones de los gradientes normalizadas respecto a la dirección principal. La concatenación de estos histogramas forma el descriptor, y para añadir robustez frente a condiciones como la iluminación, se toma una medida de la intensidad a lo largo de una región mayor de la imagen conocida como bloque y se normalizan las celdas en su interior.

2.2.2. Detección mediante modelos basados en partes

Frente a los modelos holísticos, los modelos basados en partes dividen el objeto en distintas secciones, lo que aumenta su complejidad a cambio de reforzarse frente a problemas como las oclusiones o la variabilidad propia de los objetos. A continuación se presentan dos detectores que se ajustan a esta categoría, planteando el segundo un enfoque similar al primero mediante el uso de redes neuronales convolucionales.

2.2.2.1. Detección mediante modelos de partes deformables

El detector DPM (Deformable Parts Model) [7] generaliza el uso de descriptores HoG [6]

para la detección de objetos, modelando cada clase de objeto mediante una combinación de componentes que capturan subcategorías del objeto o puntos de vista. Como puede observarse

(26)

CAPÍTULO 2. ESTADO DEL ARTE

Figura 2.1: Modelo DPM [7] de un coche con dos puntos de vista. Para ambas componentes se presentan el ltro root (izquierda), los ltros de partes de alta resolución (centro) y su distribu- ción espacial respecto al root (derecha).

en la Figura 2.1, cada componente incluye un ltro root de baja resolución que representa la apariencia general del objeto, similar al que se usa en [6], y una colección de ltros de mayor resolución que capturan el detalle no de cada parte del objeto. Estos modelos se entrenan mediante una variante de SVM conocida como latent SVM (LSVM), a partir de un conjunto de ejemplos parcialmente etiquetados.

Los DPMs se aplican sobre una pirámide espacio-escala de mapas de características HoG, construida a partir de la imagen bajo estudio. En dicha pirámide, el ltro root y los ltros de partes se aplican mediante una aproximación de ventana deslizante, aplicándose las partes en mapas al doble de resolución que su correspondiente root, de forma que se obtienen una serie de mapas de conanza que se combinan para generar el mapa de conanza nal, en el que se representa la puntuación del objeto en cada posición.

2.2.2.2. Detector DeepPyramid DPM

El detector DeepPyramid DPM [2] aúna los modelos de partes deformable con el uso de CNNs, presentándose como una evolución del algoritmo de [7]. Este detector parte de que la aplicación de cualquier DPM mediante ventanas deslizantes sobre una pirámide de características puede formularse como una CNN con una determinada arquitectura. El esquema general del detector se presenta en la Figura 2.2.

En primer lugar, los mapas de características HoG son sustituidos por mapas de carac- 8

(27)

CAPÍTULO 2. ESTADO DEL ARTE

Figura 2.2: Representación esquemática[2] del detector DeepPyramid DPM.

terísticas aprendidas por una fully convolutional network (FCN), generando una pirámide de características a partir de una pirámide de imagen para que siga funcionando con múltiples escalas. La FCN empleada por DeepPyramid DPM es una versión truncada de la CNN Super- Vision [8] en la quinta capa convolucional conv5, por lo que los mapas de características a su salida tendrán 256 canales a 1/16 de la resolución espacial original de la imagen.

La detección, para DPMs de una sola componente, sobre el mapa de características generado es llevada a cabo por una segunda CNN, conocida como DPM-CNN, cuya arquitectura se pre- senta en la Figura 2.3. La red DPM-CNN recibe los mapas de características de cada nivel de la pirámide como entrada, convolucionando dichos mapas con los ltros de partes y el root. Las respuesta tras el ltrado de las partes pasan por una capa que efectúa un distance transform pooling, generalizando la función de max pooling, y se concatenan con la respuesta del root para convolucionarlas con un ltro de geometría del objeto de forma que, en base al anchor de cada parte con relación al root, se compense el oset de todas las respuestas para que las puntuacio- nes se consideren en el centro del objeto. Finalmente, el mapa de conanza para un nivel de la pirámide se calcula con un máximo en cada punto entre las respuestas, pudiendo combinar los mapas de cada nivel para generar un mapa de conanza nal.

Este algoritmo también es compatible con el uso de DPMs de múltiples componentes, pu- diendo utilizar un módulo DPM-CNN para cada componente del modelo, y a la salida realizar un máximo entre componentes.

(28)

CAPÍTULO 2. ESTADO DEL ARTE

Figura 2.3: Detalle [2] de una DPM-CNN para una sola componente, equivalente a la aplicación tradicional de DPMs.

2.3. Segmentación de imágenes

La segmentación de imágenes es una técnica de procesamiento de imágenes digitales, por la cual se busca dividir las imágenes en regiones homogéneas respecto a alguna característica (e.g.

color, clase de objeto, textura, etc.). Existen diversos tipos de segmentación, en función de la aplicación nal a la que esté orientada. Por ejemplo, podemos llevar a cabo una segmentación orientada a determinar ciertas clases de objetos en la imagen, como es el enfoque de este trabajo, dividir la escena en frente y fondo o llevar a cabo una segmentación que busque delimitar de forma precisa los distintos elementos de la escena a nivel de píxel, como es el caso de la segmentación semántica.

A continuación se presentan dos segmentadores con enfoques distintos. El primero es un segmentador de dos clases basado en modelos DPM, mientras que el segundo es un segmentador basado en deep learning enfocado al análisis de escena.

2.3.1. Segmentación persona-fondo

El trabajo presentado en [1] propone una segmentación de imágenes en dos clases distintas, persona y fondo, cuyo objetivo es asegurar que ninguna persona o parte de persona sea clasicada erróneamente como fondo. Para llevar a cabo este enfoque, se asigna una penalización mayor a los píxeles correspondientes a partes de persona clasicadas como fondo, conllevando esta penalización desigual entre clases una segmentación con sesgo en el fondo.

10

(29)

CAPÍTULO 2. ESTADO DEL ARTE

Figura 2.4: Modelos de partes de persona usados por (a) el detector DPM[7], (b) IBP y(c) DBP.

El algoritmo parte del uso del detector multiescala DPM [7], expuesto en la sección 2.2.2.1, como base de la segmentación, utilizando los mapas de conanza generados por los distintos

ltros, tanto el root como las partes, para determinar las zonas de la escena en las que no hay personas.

El detector DPM modela cada parte del cuerpo n (n = 1, ..., N) como una tupla (Fn, vn,0, dn), en la que Fnrepresenta la respuesta del ltro HoG, vn,0es un vector que representa la posición de la parte n respecto al cuerpo entero, también conocida como anchor, y dnes un vector de cuatro dimensiones que especica los coecientes de una función cuadrática que dene un coste de deformación para cada posible posición de la parte respecto a la posición del anchor. Mientras que el ltro root modela la apariencia global de una persona, los ltros de partes tienen por objetivo capturar el detalle no de las distintas partes corporales, por lo que se modelan con el doble de resolución que el root.

En [1] se denen 5 métodos distintos para llevar a cabo la segmentación: Independent Body Parts (IBP), Dependent BodyParts (DBP), sus respectivas versiones extendidas IEBP yDEBP, yuna versión procesada de esta última, DEBP-P. En este trabajo nos centraremos en IBP y DBP, por lo que incidiremos en estos dos métodos.

IBP se dene usando 8 ltros de partes independientes del cuerpo In(Figura 2.4 (b)), siendo n = 1, 2, ..,8, yespecicando su posición del anchor vn,n respecto a la parte n en vez de la

(30)

CAPÍTULO 2. ESTADO DEL ARTE

posición del root. De esta forma, la detección de cada parte del cuerpo puntúa en su propio centro dentro del modelo, y no en el centro del mismo.

Por otra parte, para mejorar la robustez del sistema, DBP se dene usando M partes de- pendientes del cuerpo Dm (Figura 2.4 (c)), con m = 1, 2, ..., M, siendo cada una de ellas una combinación de Lm partes independientes del cuerpo In, con su posición del anchor vn,m en relación a la parte Dm correspondiente. En [1] se denen M = 4 partes dependientes: el cuerpo entero, la cabeza y los hombros, el tronco y las piernas.

Con la nalidad de recuperar partes no detectadas, debido a oclusiones por ejemplo, o nor- malizar la conanza de detección entre partes ya detectadas, se propone ampliar la denición de partes dependientes y poder reutilizar la información de otras partes dependientes. Las partes dependientes extendidas Dm se denen como el máximo entre la parte dependiente original Dm

y el promedio del resto de partes dependientes con relación a la parte Dm original. Asumiendo que al menos tenemos dos partes dependientes visibles para cada persona, podemos recuperar el resto mediante dicho promediado, a la vez que evitamos la reproducción de partes dependientes aisladas que fueron incorrectamente detectadas.

Una vez se han generado los mapas de conanza para cada escala y parte, se puede calcular el mapa de conanza nal como un máximo en cada punto (x, y) entre escalas y partes. A partir del mapa de conanza nal se puede obtener una máscara de segmentación mediante la binarización del mismo con un determinado umbral .

2.3.2. Pyramid Scene Parsing Network

Pyramid Scene Parsing Network (PSPnet) es un algoritmo [9] que plantea el problema del análisis de escena mediante un enfoque de segmentación semántica, es decir, el algoritmo busca asignar a cada píxel de la imagen una categoría de forma que se etiqueten y localicen los distintos elementos presentes en la escena para su completo entendimiento.

Muchas aproximaciones al análisis de escena se basan en el uso de FCN, pero suelen encontrar problemas con objetos de apariencia similar, demasiado grandes o pequeños (Figura 2.5). Estos problemas suelen deberse a una falta de información contextual global de la escena o información entre categorías.

Para mejorar el rendimiento de una red profunda en el análisis de escena, en [9] se propone aumentar la información contextual mediante la inclusión de un módulo conocido como Pyramid

12

(31)

CAPÍTULO 2. ESTADO DEL ARTE

Figura 2.5: Distintos casos [9] de análisis de escena con el dataset ADE20k [11], en los que se pueden observar algunas limitaciones de las FCN en este problema.

Pooling. Este módulo recibe un mapa de características obtenido por una CNN ResNet [10]

pre-entrenada, a partir del cual forma representaciones de distintas subregiones del mapa a las que reduce su dimensionalidad para mantener el peso del mapa de características original.

A continuación, se realiza un upsampling de estas representaciones y se concatenan al mapa original, introduciéndose esta representación en una última capa convolucional para generar la predicción nal.

(32)
(33)

Capítulo 3

Diseño

3.1. Introducción

En este capítulo se realizará una exposición genérica del algoritmo en el que se centra este trabajo, previa a su desarrollo, presentando el punto de partida del mismo y los cambios que deberán llevarse a cabo sobre los algoritmos iniciales para alcanzar nuestro objetivo.

Así mismo, presentaremos los métodos de entrenamiento que utilizan tanto el algoritmo desa- rrollado como los distintos algoritmos que usaremos durante la evaluación, recogida en el capítulo 5. En esta línea, describiremos tanto la técnica como los distintos datasets de entrenamiento en la sección 3.3.

3.2. Planteamiento inicial del segmentador

Como ya comentamos en la sección 1.2, el objetivo principal de este trabajo radica en el desarrollo de un segmentador que, mediante el uso de CNNs, divida la escena en dos clases, objeto y fondo. Para llevar a cabo dicho algoritmo, partiremos del uso del detector DeepPyramid DPM [2], el cual se describió en la sección 2.2.2.2 del estado del arte. Para una determinada clase de objeto, este detector será el encargado de generar los mapas de conanza de la escena para cada parte del modelo que describe al mismo, combinándolos para generar un mapa de conanza nal que será la salida del detector.

A partir del detector DeepPyramid DPM implementaremos dos de los métodos del segmen- tador persona-fondo [1], que ya presentamos en la sección 2.3.1, a saber: IBP y DBP. Estos

(34)

CAPÍTULO 3. DISEÑO

(a)

(b)

Figura 3.1: Esquema de funcionamiento de (a) DP-IOP y (b) DP-DOP para una sola escala.

métodos actúan en la forma de aplicar sobre la imagen los ltros de partes del detector DPM [7], aplicando IBP las partes de forma independiente mientras que DBP aplica combinaciones de las partes, conocidas como partes dependientes. Tanto para las partes independientes como para las dependientes, el anchor de las partes implicadas se altera para que puntúen en su pro- pio centro en vez del centro del modelo, de forma que en los mapas de conanza generados las detecciones de las partes sean consideradas en su posición relativa al cuerpo del objeto.

Por lo tanto, desarrollaremos dos nuevos métodos de segmentación multiescala que sigan el esquema de IBP y DBP sobre eldetector DeepPyramid DPM, pero que generalicen su funciona- miento para poder segmentar cualquier clase de objeto. Dado que DeepPyramid DPM ya está diseñado para trabajar en múltiples escalas con DPMs de varias componentes, la generalización se centrará en la automatización del proceso de actualización del anchor de las partes y la com- binación de las partes para conformar las partes dependientes. En adelante, nos referiremos a estos nuevos métodos como DeepPyramid Independent Object Parts (DP-IOP) y DeepPyramid Dependent Object Parts (DP-DOP), cuyo funcionamiento para una sola escala se presenta en la Figura 3.1.

3.3. Entrenamiento de los algoritmos

En esta sección presentaremos los conceptos concernientes al entrenamiento de los algoritmos que usaremos en este trabajo. Los métodos que desarrollaremos, DP-IOP y DP-DOP, actúan sobre la forma de aplicar los modelos de objeto del detector DeepPyramid DPM [2], por lo que su entrenamiento consistirá en elentrenamiento deldetector. Junto a estos algoritmos, haremos

16

(35)

CAPÍTULO 3. DISEÑO

uso de dos métodos de segmentación objeto-fondo desarrollados en un Trabajo Fin de Grado [12] previo, IOP y DOP, que generalizan el trabajo de [1] a partir el detector DPM [7], y del algoritmo de análisis de escena PSPNet [9].

El detector DPM utiliza una extracción de características HoG a partir de una pirámide de la imagen, por lo que su entrenamiento se centra en los modelos DPM sobre características HoG. Para una clase de objeto determinada, su DPM se entrena mediante un algoritmo LSVM sobre un dataset de imágenes etiquetadas con bounding boxes entorno a los objetos de interés, seleccionando como ejemplos positivos regiones de las imágenes donde se encuentren bounding boxes del objeto en cuestión, y como negativos imágenes de fondo.

Por su parte, DeepPyramid DPM extrae las características a partir de una variante de la CNN SuperVision [8], truncada en la quinta capa convolucional conv5, que no requiere entrena- miento adicional, por lo que el entrenamiento también se limita a los DPM, pero en este caso sobre características conv5. DeepPyramid DPM utiliza LSVM, pero con el detalle del uso de detecciones positivas mal localizadas como ejemplos negativos del entrenamiento, obteniendo una mejora signicativa del rendimiento frente al uso de imágenes de fondo. Además, mientras que los DPMs basados en HoG presentan para cada componente su versión simétrica o ip, los DPM de DeepPyramid carecen de dichas componentes.

A lo largo de este trabajo entrenaremos DPMs a partir de 3 datasets distintos, a saber:

INRIA [6], VOC 2007 [13] y VOC 2010 [14]. El dataset INRIA, dado que está orientado a la detección de peatones, se compone de una amplia colección de imágenes de personas de pie, por lo que lo usaremos para generar un modelo de persona de una componente. Por otra parte, los datasets Visual Object Classes (VOC) pertenecen a la competición anual PASCAL VOC challenge, y en concreto los dataset de 2007 y 2010 contienen ejemplos con 20 clases distintas de objeto para problemas de clasicación, segmentación y detección, usando los últimos para entrenar DPMs de 3 componentes, de forma que se capturen 3 poses distintas de los objetos.

Finalmente, haremos uso de 3 versiones distintas del algoritmo PSPNet: PSPNet50_ADE20k, PSPNet101_VOC2012 y PSPNet101_Cityscapes. Como ya se explicó en la sección 2.3.2, PS- PNet utiliza una CNN ResNet [10] pre-entrenada seguida de un módulo Pyramid Pooling y una última capa convolucional para la clasicación. Una vez seleccionada la red ResNet a utilizar, el entrenamiento del algoritmo consiste en un ne-tuning de la última capa convolucional con el dataset deseado. En concreto, las tres versiones del algoritmo mencionadas son resultados respectivos de un ne-tuning con los datasets ADE20k [11], dataset de análisis de escena con

(36)

CAPÍTULO 3. DISEÑO

casi 150 categorías de objeto distintas, VOC 2012 [15] y Cityscapes [16], dataset especializado en escenas urbanas.

18

(37)

Capítulo 4

Desarrollo

4.1. Introducción

En este capítulo incidiremos en los cambios llevados a cabo sobre el detector DeepPyramid DPM [7] para desarrollar los métodos de segmentación DP-IOP y DP-DOP presentados en el capítulo 3, que generalizan la segmentación de [1] para cualquier clase de objeto, así como algunos detalles del algoritmo.

4.2. Detalles del algoritmo

En esta sección comentaremos algunos de los detalles del funcionamiento de los dos métodos desarrollados, así como de la estructura de los DPMs que usarán nuestro algoritmo.

El algoritmo de segmentación desarrollado está orientado al procesamiento de secuencias, analizando las imágenes que las componen de forma independiente para determinar las zonas correspondientes al objeto seleccionado, y las correspondientes al fondo de la escena. Al igual que DeepPyramid DPM, el algoritmo hará uso del framework de deep learning Cae [17] para llevar a cabo los cálculos relacionados con las CNNs.

Dado que los objetos pueden aparecer con distinto tamaño en la escena, es importante que el segmentador pueda tener conocimiento de las escalas en las que debe buscarlo. Mediante el ajuste de la variable scale_levels indicaremos al comienzo de la ejecución el tamaño del objeto que se busca, pudiendo presentar un tamaño normal (scale_levels = [2]), un tamaño reducido (scale_levels = [1]) o presentar ambos tamaños a lo largo de la escena (scale_levels = [1 2]).

(38)

CAPÍTULO 4. DESARROLLO

Figura 4.1: Distribución de las partes sobre el root en el DPM de persona entrenado con INRIA [6].

Root 1 2 3 4 5 6 7 8

[0 0] [0 0] [3 0] [22] [0 5] [3 5] [3 8] [0 13] [3 13]

Tabla 4.1: Valores del anchor de los ltros del DPM de persona entrenado con INRIA, repre- sentados en la Figura 4.1. En este modelo, el root presenta un tamaño detwindow = [6 16].

La clase de objeto que buscará el segmentador en la escena vendrá denida por el modelo DPM que carguemos. Cada DPM está denido por una serie de componentes, cada uno para una pose especíca del objeto, formados por un ltro root que captura el cuerpo completo y un conjunto de 8 ltros de partes, todos ellos denidos sobre características conv5. Dentro del modelo, la variable detwindow dene el tamaño del ltro root de cada componente, mientras que todos los ltros de partes tienen un tamaño jo 3 x 3. Cada ltro tiene asociada una distancia anchor que indica su posición, tomada desde la esquina superior izquierda, respecto al root, que al actuar de referencia tendrá siempre un anchor v0,0= [0 0]. Además, a diferencia de los DPM basados en HoG [7, 1, 12], los DPM basados en características conv5 denen las partes y el root a la misma escala, por lo que el rango de valores de anchor estará limitado por detwindow. Estos detalles pueden observarse en la Figura 4.1 y en la Tabla 4.1, donde se representa un DPM de una componente de la clase persona, entrenado con INRIA [6].

20

(39)

CAPÍTULO 4. DESARROLLO

4.3. DeepPyramid Independent Object Parts

El método de segmentación DP-IOP se basa en la detección de las distintas partes del objeto de forma independiente en la escena, por lo tanto, este método hará uso de las respuestas de los distintos ltros de partes del modelo DPM, pero no de la respuesta del root.La idea detrás de este método es la reducción de los falsos positivos en la segmentación, puesto que buscamos puntuar cada parte del objeto en la posición de la imagen en la que se detectó en vez de en el centro del objeto.

Como ya comentamos en la sección 3.2, en el desarrollo de DP-IOP buscamos automatizar el proceso de ajuste de la posición de las respuestas, de forma que sea genérico para cualquier clase de objeto.Las funciones de extracción de características, cálculo de las respuestas y combinación de las mismas no necesitan ninguna alteración, siendo el ajuste de la posición realizado en base al valor del anchor. Internamente, el algoritmo original calcula el centro del modelo y compara esta posición con el anchor de cada parte para deducir el oset necesario que requieren sus respuestas para llevarlas al centro del modelo.Para evitar cambiar el cuerpo del algoritmo, dejaremos el funcionamiento intacto y se calculará el nuevo valor del anchor de cada parte para que se coloque su respuesta en su propio centro, previamente al cálculo de las respuestas.

Dado que todos los ltros de partes tienen un tamaño jo de 3 x 3, para una posición dada del

ltro en la escena, denida por la localización (x0, y0) de la esquina superior izquierda del ltro, el centro de dicha parte se encontrará en la posición (x0+3/2 , y0+3/2).Sea el centro del objeto la posición (xc, yc), que puede calcularse a partir del tamaño del root almacenado en la variable detwindow, para que tras el ajuste de la posición la respuesta de cada parte se encuentre en su propio centro, la nueva posición del anchor de cada parte debe de encontrarse a una distancia (3/2 , 3/2) del centro del objeto, por lo que esta posición deberá ser (xc−3/2 , yc−3/2).

En la Figura 4.2 (c) se puede observar un ejemplo de un mapa de conanza obtenido con DP-IOP, para un frame (Figura 4.2 (a)) de la secuencia TUD-Crossing [18].

4.4. DeepPyramid Dependent Object Parts

Frente a DP-IOP, el método de segmentación DP-DOP utiliza en la detección un conjunto de partes dependientes del objeto, denidas como agrupaciones de las partes independientes entre las que exista una cierta correlación.Este método tiene como objetivo mejorar la robustez de la

(40)
(41)

CAPÍTULO 4. DESARROLLO

(a) (b) (c)

Figura 4.3: Representación de las agrupaciones de partes realizadas sobre las 3 componentes del DPM de la clase bicicleta, entrenado con VOC 2010 [14], donde cada color representa la pertenencia a una agrupación.

entrenado con VOC 2010 [15], se realiza previo al cálculo de las respuestas de las partes.

En DP-DOP buscamos que la respuesta de cada parte del objeto puntúe en el centro de la parte dependiente a la que pertenece, siendo estos centros calculados por el algoritmo de agrupamiento de partes. Ya comentamos en la sección 4.1 que el algoritmo calcula la diferencia entre el centro del modelo y el anchor para hallar el oset de cada parte. Para calcular el nuevo anchor de cada parte del objeto, tendremos que sumar a su anchor original el valor del centro del modelo, y restar el valor del centro de la parte dependiente a la que pertenece, de forma que la distancia entre este resultado y el centro del modelo sea exactamente la distancia entre el anchor original y la posición deseada tras el ajuste de posición. Dado que una parte independiente puede pertenecer a diversas agrupaciones, el resultado de este procedimiento será válido únicamente con la parte dependiente para la que se calculó.

Para una secuencia de entrada y un modelo de objeto, se calcularán las agrupaciones y se hará un barrido de todas las partes dependientes, comparando cada una consigo misma y con las partes restantes, y nalmente se combinarán todas la puntuaciones en un mapa de conanza nal.

Un ejemplo de este mapa de conanza se presenta en la Figura 4.2 (d), donde puede compararse con los mapas de conanza obtenidos por DP-IOP (Figura 4.2 (c)) y por el algoritmo original (Figura 4.2 (b)).

(42)
(43)

Capítulo 5

Integración, pruebas y resultados

5.1. Introducción

A lo largo de esta capítulo presentaremos la evaluación de los métodos de segmentación desarrollados, analizando sus resultados y realizando una comparación con otros enfoques de segmentación distintos.

En primer lugar, en la sección 5.2 presentaremos el dataset de evaluación, así como el proce- dimiento de evaluación que seguiremos en nuestros experimentos. A continuación, en la sección 5.3realizaremos una evaluación particular del segmentador objeto-fondo con la clase persona, de forma que podamos compararlo con distintos enfoques de segmentación de persona. Finalmente, en la sección 5.4 se llevará a cabo la evaluación del segmentador objeto-fondo con una selección más amplia de objetos de interés.

5.2. Métrica y dataset de evaluación

Para la evaluación de los algoritmos hemos decidido emplear la métrica utilizada por el segmentador persona-fondo de [1], que emplea el área bajo la curva (AUC) de curvas Receiver Operating Characteristic (ROC) calculadas con distintos factores de penalización de falsos posi- tivos fp. Cada punto de la curva ROC representa, para un umbral determinado, la sensibilidad del sistema, equivalente a la tasa de verdaderos positivos, frente a 1 − especificidad o tasa de falsos positivos, entendiendo la clase positiva como el fondo de la escena. Calculando el AUC de dicha curva, cuyo valor queda comprendido entre 0 y 1, se obtiene una medida del rendimiento

(44)

CAPÍTULO 5. INTEGRACIÓN, PRUEBAS Y RESULTADOS

(a) (b)

Figura 5.1: Ejemplo de imagen (a) y su ground truth (b) de la secuencia Motocross-jump de DAVIS [19].

del sistema sobre la secuencia de test, siendo un valor de 1 una clasicación perfecta, mientras que una puntuación inferior a 0.5 conlleva una clasicación peor que el azar.

Los datasets que usamos en la evaluación se componen de secuencias de imágenes y sus correspondientes ground truth, máscaras de segmentación con la solución correcta a nivel de píxel, como puede observarse en la Figura 5.1 . El procedimiento de evaluación de una secuencia consistirá en calcular, para distintos umbrales, las tasas de verdaderos y falsos positivos de los mapas de conanza generados tomando como base sus correspondientes ground tuth, de forma que podamos generar curvas ROC sobre las que calcular el AUC. Las curvas ROC se calcularán con distintos valores del factor de penalización fp, correspondiéndose un valor fp = 1 con un esquema tradicional de evaluación, y valores superiores con una mayor penalización de los píxeles correspondientes a objeto clasicados como fondo.

Como se comentó en la sección 5.1, nuestros experimentos se han dividido en una evaluación del segmentador objeto-fondo con la clase persona y una evaluación más genérica del segmentador con distintas clases de objeto. En la evaluación de la clase persona haremos uso de las secuencias originales que se usaron en [1], entre las cuales encontramos 3 secuencias al aire libre (TUD- Campus y TUD-Crossing de [18], y PETS2009 1) y 3 secuencias de interior (PETS2006 2, TRECVID20083 y AVSS20074), en las que se presentan oclusiones, distintos puntos de vista o variaciones en la escala de las personas.

En cuanto a la evaluación genérica de la sección 5.4, las pruebas se realizarán sobre un conjunto de secuencias de vídeo seleccionadas de los datasets Densely Annotated Video Segmen-

1http://www.cvg.rdg.ac.uk/PETS2009/

2http://www.cvg.rdg.ac.uk/PETS2006/

3http://www.itl.nist.gov/iad/mig//tests/trecvid/2008/

4http://www.avss2007.org

26

(45)

CAPÍTULO 5. INTEGRACIÓN, PRUEBAS Y RESULTADOS

tation (DAVIS) [19], orientado a la segmentación de objetos en vídeo, y SegTrackv2 [20], dataset especializado en la segmentación mediante tracking, en las que aparezcan los objetos de interés de los modelos que evaluaremos.

5.3. Pruebas y resultados del segmentador objeto-fondo en el caso de personas

En esta sección realizamos la evaluación del segmentador objeto-fondo con la clase persona, comparando el rendimiento del detector DeepPyramid DPM [2] y los algoritmos desarrolla- dos con sus versiones tradicionales [7, 12] y las redes PSPNet [9] introducidas en la sección 3.3 (PSPNet50_ADE20k, PSPNet101_VOC2012 y PSPNet101_Cityscapes) con sus resultados adaptados a la segmentación persona-fondo.

Con el objetivo de validar el rendimiento del segmentador con una prueba más genérica, en nuestro experimento usaremos tres modelos de persona distintos sobre las 6 secuencias presen- tadas en la sección 5.2, comparando los algoritmos basados en CNNs con sus versiones basadas en HoG. Los resultados en términos de AUC, con un factor de penalización fp = 1, se presentan en la Tabla 5.1.

Mientras que los detectores DPM [7] y DeepPyramid DPM obtienen resultados similares entre las secuencias y los modelos, los métodos DP-IOP y DP-DOP obtienen en casi todos los casos un mejor resultado que sus versiones basadas en HoG, IOP y DOP de [12], incluidas secuencias complejas como PETS2006. Resaltamos el caso de la secuencia TUD-Campus, en la que los métodos desarrollados con los modelos VOC obtienen peores resultados que sus versiones previas, mientras que con el modelo de INRIA se obtiene una mejora signicativa.

Aunque DP-IOP y DP-DOP obtienen buenos resultados, este último destaca sobre el pri- mero debido a la robustez de su detección, comportamiento que se observa igualmente entre IOP y DOP. En particular, la segmentación de DP-DOP con el modelo de persona de INRIA presenta los mejores resultados en todas las secuencias, probablemente debido a la similitud de las secuencias con el dataset de INRIA, especializado en personas de pie. Debido a estos bue- nos resultados, tomamos esta combinación como enfoque a comparar con las redes de PSPNet previamente mencionadas.

La comparativa entre PSPNet y DP-DOP/INRIA se realiza con distintos factores de pena- lización, de forma que podamos observar el impacto de los falsos positivos en el rendimiento,

(46)

CAPÍTULO 5. INTEGRACIÓN, PRUEBAS Y RESULTADOS

Secuencia TUD-Campus TUD-Crossing PETS2009 PETS2006 AVSS TRECVID

Modelo (a) (b) (c) (a) (b) (c) (a) (b) (c) (a) (b) (c) (a) (b) (c) (a) (b) (c) DPM [7] .77 .74 .70 .81 .75 .71 .90 .79 .74 .75 .60 .56 .81 .77 .74 .85 .71 .69 IOP [12] .81 .82 .80 .78 .83 .83 .69 .76 .70 .67 .75 .71 .71 .70 .70 .65 .73 .73 DOP [12] .86 .85 .88 .86 .87 .89 .80 .82 .80 .77 .75 .77 .89 .80 .78 .80 .78 .79 DeepPyramid DPM [2] .78 .60 .60 .83 .68 .64 .88 .76 .74 .81 .65 .73 .81 .65 .63 .80 .65 .66 DP-IOP .89 .69 .73 .93 .84 .85 .94 .93 .93 .86 .84 .79 .94 .84 .87 .73 .73 .79 DP-DOP .94 .74 .74 .96 .90 .86 .97 .95 .95 .97 .88 .81 .97 .90 .92 .91 .77 .81

Table 5.1: Resultados en términos de AUC obtenidos con los modelos de persona de INRIA [6]

(a), VOC2007 [13] (b) y VOC2010 [14] (c).

Secuencia TUD-Campus TUD-Crossing PETS2009 PETS2006 AVSS TRECVID

Factor de penalización 1 10 40 1 10 40 1 10 40 1 10 40 1 10 40 1 10 40

PSPNet/ADE20k [9] .98 .89 .68 .97 .84 .58 .98 .91 .72 .98 .84 .57 .98 .90 .72 .90 .48 .18 PSPNet/CityScapes [9] .87 .40 .14 .99 .95 .85 .99 .95 .84 .51 .09 .02 .85 .37 .13 .16 .02 .00 PSPNet/VOC2012 [9] .97 .76 .45 .97 .79 .49 .96 .75 .44 .97 .79 .49 .97 .78 .47 .91 .51 .20 DP-DOP/INRIA .94 .85 .78 .96 .90 .86 .97 .92 .88 .97 .90 .83 .97 .92 .86 .91 .71 .51

Table 5.2: Comparativa con PSPNet [9] en términos de AUC con distinto factor de penalización.

recogiendo los resultados en la Tabla 5.2. Siguiendo una evaluación tradicional de segmentación, lo que es equivalente a un fp= 1, PSPNet presenta un rendimiento ligeramente superior a DP- DOP/INRIA, aunque esta diferencia varíe entre las redes dependiendo de la secuencia (e.g. la red tuneada con CityScapes [16] reduce su rendimiento en las secuencias de interior, ya que es un dataset especializado en ciudades). Sin embargo, según aumentamos el factor de penalización, la puntuación de DP-DOP se mantiene más estables que la de PSPNet, llegando a superar a este en todas las secuencias cuando usamos fp= 40. Si recordamos, el objetivo de nuestros métodos de segmentación es garantizar que no haya partes del objeto que se clasiquen como fondo, mien- tras que algoritmos como PSPNet se centran en obtener una alta precisión en la clasicación del objeto. Esto explica explica su mayor susceptibilidad a los falsos positivos, ya que, mientras que en nuestros mapas de conanza existen umbrales con los que se cubren completamente los objetos, en PSPNet la transición entre clases es más abrupta, existiendo píxeles de objeto que nunca se clasicarán como tal. Esta diferencia en los enfoques puede apreciarse visualmente en los mapas de conanza que genera cada algoritmo (Figura 5.2) o en sus curvas ROC (Figura 5.3).

28

(47)

CAPÍTULO 5. INTEGRACIÓN, PRUEBAS Y RESULTADOS

(a) (b) (c)

Figura 5.2: Comparativa entre los mapas de conanza de un frame (a) de la secuencia PETS2006 obtenidos con DP-DOP/INRIA (b) y PSPNet50_ADE20k [9] (c).

Figura 5.3: Comparativa entre las curvas ROC generadas por las redes PSPNet [9] y DP- DOP/INRIA con distinto factor de penalización.

(48)

CAPÍTULO 5. INTEGRACIÓN, PRUEBAS Y RESULTADOS

5.4. Pruebas y resultados del segmentador objeto-fondo en casos genéricos

En esta sección se realiza una evaluación del segmentador objeto-fondo con las clases de objeto coche, bicicleta, caballo, vaca y motocicleta, todas ellas modeladas con DPMs de 3 com- ponentes entrenados con el dataset VOC 2010 [14]. Estos modelos se usarán sobre las secuencias Car-turn, Car-shadow, Car-roundabout, Bmx-trees, Bmx-bumps, Cows, Motorbike, Motocross- jump, Horsejump-high y Horsejump-low del dataset DAVIS [19], y las secuencias Bmx y Drift de SegTrackv2 [20]. En esta sección la evaluación se llevará a cabo de forma similar a la realizada en la sección 5.3, analizando en primer lugar una comparativa, con distintos factores de penaliza- ción de falsos positivos, entre los métodos basados en CNNs y sus versiones previas [7, 12], para posteriormente comparar nuestro enfoque con las redes PSPNet [9] ya utilizadas en el trabajo (PSPNet50_ADE20k, PSPNet101_VOC2012 y PSPNet101_Cityscapes).

Los resultados de la comparativa entre nuestro enfoque y sus versiones previas se presentan en la Tabla 5.3, mientras que en el anexo A se recogen las curvas ROC de todas las secuencias, obtenidas con un factor de penalización de 1.

En primer lugar, nos centraremos en los resultados de la evaluación tradicional (i.e. factor de penalización de 1). Como puede observarse, salvo en el caso de la secuencia Car-roundabout, los métodos basados en CNNs obtienen la mejor puntuación de segmentación en las secuencias, y por lo general superan el rendimiento de los métodos basados en HoG. En el caso de Car- roundabout, DOP obtiene una puntuación ligeramente superior a DP-DOP y la más alta, pero DeepPyramid DPM y DP-IOP superan a sus versiones previas, por lo que podría tratarse de un caso aislado.

Otro detalle que podemos destacar de los resultados es que se mantiene la jerarquía de los métodos entre ambos enfoques en todas las secuencias, a pesar de que en cada secuencia el aumento de rendimiento es desigual entre los métodos. Por lo general, DP-IOP experimenta el mayor aumento de rendimiento, pudiendo citar casos como Cows, donde pasamos de .41 a .85, o Motorbike, donde el aumento es de .65 a .91. En el caso de la secuencia Motocross-jump (Figura 5.1) DP-IOP obtiene la mejor puntuación entre todos los métodos, pudiendo esto deberse a que en gran parte de la secuencia el objeto de interés, la motocicleta, presenta un tamaño que llega a ocupar casi toda la imagen, siendo más ecaz la detección de sus partes de forma independiente.

Si nos centramos en DP-DOP, aunque su aumento de rendimiento respecto a DOP suele ser 30

(49)

CAPÍTULO 5. INTEGRACIÓN, PRUEBAS Y RESULTADOS

Secuencia (a) (b) (c) (d) (e) (f)

fp 1 4 10 1 4 10 1 4 10 1 4 10 1 4 10 1 4 10

Car-turn .21 .09 .05 .47 .25 .15 .79 .58 .42 .44 .28 .20 .75 .52 .37 .86 .63 .44 Car-shadow .33 .16 .09 .54 .33 .22 .85 .69 .54 .43 .27 .18 .79 .54 .37 .90 .74 .58 Car-roundabout .30 .16 .08 .61 .40 .28 .76 .57 .44 .41 .24 .17 .62 .36 .23 .72 .50 .33 Drift .68 .50 .39 .75 .58 .47 .88 .77 .67 .49 .26 .16 .79 .54 .37 .90 .75 .60 Bmx .50 .30 .19 .60 .37 .24 .67 .47 .34 .52 .30 .19 .60 .34 .20 .75 .50 .34 Bmx-bumps .48 .30 .19 .62 .38 .25 .75 .54 .40 .52 .28 .16 .67 .38 .23 .78 .54 .37 Bmx-trees .78 .59 .47 .72 .49 .34 .85 .69 .55 .77 .52 .36 .87 .67 .50 .91 .78 .65 Cows .17 .06 .03 .41 .21 .13 .73 .53 .40 .57 .34 .22 .85 .66 .51 .88 .69 .52 Motorbike .71 .51 .38 .65 .43 .30 .83 .63 .48 .85 .66 .51 .91 .80 .69 .95 .87 .79 Motocross-jump .47 .26 .15 .52 .30 .19 .49 .28 .17 .61 .41 .30 .73 .54 .40 .70 .47 .33 Horsejump-high .64 .43 .30 .62 .42 .31 .61 .42 .33 .55 .32 .20 .80 .57 .40 .91 .80 .69 Horsejump-low .61 .37 .24 .61 .44 .35 .66 .49 .39 .48 .27 .17 .71 .48 .33 .79 .56 .38

Table 5.3: Resultados en términos AUC,obtenidos con los modelos DPM VOC 2010 [14] con el detector DPM [7] (a),IOP [12] (b),DOP [12] (c),el detector DeepPyramid DPM [2] (d), DP-IOP (e) y DP-DOP (f).

más modesto que el experimentado por DP-IOP respecto a IOP,también encontramos casos en los que la diferencia es bastante relevante,como el de Horsejump-high,donde pasamos de un .61 con DOP a un .91 con DP-DOP. Igualmente,este método presenta los mejores resultados en 10 de las 12 secuencias,alcanzando una puntuación igual o superior a .90 en 5 secuencias en total, entre las cuales se encuentran 4 de las 5 clases de objeto de este experimento.

Visto el rendimiento de los distintos métodos en una evaluación estándar,en adelante atende- remos a la evaluación con un factor de penalización mayor,de forma que estudiemos la robustez de los métodos a los falsos positivos. En este punto encontramos comportamientos dispares entre las secuencias. En una única secuencia,Motorbike,el rendimiento de los métodos DP-DOP y DP-IOP se ve menos afectado por el aumento del factor de penalización que sus versiones previas respectivas,mientras que en tres secuencias los dos enfoques se ven penalizados de forma similar por dicho aumento. En otras 4 secuencias nos encontramos con que alguno de los métodos se ve más afectado en el enfoque con CNNs y el otro en el enfoque HoG,y nalmente en las 4 restantes los métodos basados en CNNs se ven más penalizados con factores de penalización mayores. Ante estos resultados es bastante difuso concluir que alguno de los dos enfoques sea más resistente a los falsos positivos,aunque los métodos basados en CNNs obtienen por lo ge- neral unos resultados similares o mejores que sus versiones previas cuando se aumenta el factor de penalización,siendo los resultados de DP-DOP superiores a los de DP-IOP y DeepPyramid DPM.

En la Figura 5.4 se presentan unos ejemplos de los mapas de conanza generados por los

(50)

CAPÍTULO 5. INTEGRACIÓN, PRUEBAS Y RESULTADOS

(a) (b) (c)

(d) (e) (f)

Figura 5.4: Comparativa entre los mapas de conanza de IOP [12] (b) y DP-IOP (c) para un frame de Cows (a), y entre DOP [12] (e) y DP-DOP (f) para un frame de Horsejump-High (d).

métodos HoG y los métodos basados en CNNs. Como puede observarse, tanto IOP como DOP generan mapas de conanza bastante ruidosos con una gran cantidad de falsos negativos, mien- tras que DP-IOP y DP-DOP aumentan el número de verdaderos positivos, siendo más selectivos con el objeto de interés. Es probable que dicho aumento de los verdaderos positivos sea la causa de la mejora en el rendimiento de los nuevos métodos cuando se evalúan siguiendo un esquema tradicional, pero también podría conllevar un leve aumento de los falsos positivos con respec- to a los métodos HoG, lo que explicaría una mayor caída de rendimiento, aunque esta última conclusión requeriría de una evaluación más amplia en vista de los resultados obtenidos.

Dado que hemos comprobado que DP-DOP obtiene la mejor puntuación en la mayoría de las secuencias será el enfoque seleccionado en la comparación con las distintas redes de PSPNet, la cual realizaremos igualmente con distintos factores de penalización. Los resultados de esta comparativa se presentan en la Tabla 5.4, donde podemos observar un comportamiento desigual entre las clases de objeto. En las secuencias de la clase coche, destacamos el caso particular de la secuencia Drift, en la cual ambos enfoques muestran un comportamiento muy similar, a diferencia de las 3 secuencias restantes. En estas 3 secuencias las redes PSPNet obtienen resultados casi perfectos, dejando atrás a los obtenidos por DP-DOP, a la vez que muestran una gran robustez en su rendimiento según aumenta la penalización de falsos positivos, mientras que el rendimiento de DP-DOP cae con dicho aumento.

En las secuencias de las clases bicicleta y motocicleta se produce una caída en el rendimiento 32

(51)

CAPÍTULO 5. INTEGRACIÓN, PRUEBAS Y RESULTADOS

Secuencia (a) (b) (c) (d)

fp 1 10 40 1 10 40 1 10 40 1 10 40

Car-turn .99 .93 .67 .98 .87 .64 1 .98 .93 .86 .44 .21 Car-shadow 1 .98 .93 1 .98 .92 1 .99 .97 .90 .58 .32 Car-roundabout .97 .96 .93 .96 .90 .78 .98 .96 .93 .72 .33 .17 Drift .94 .62 .30 .92 .57 .26 .98 .83 .55 .90 .60 .36 Bmx .39 .07 .02 .02 0 0 .71 .23 .12 .75 .34 .17 Bmx-bumps .80 .58 .32 .02 0 0 .54 .26 .10 .78 .37 .20 Bmx-trees .23 .03 0 .08 0 0 .73 .45 .27 .91 .65 .43 Cows - - - .98 .90 .69 .88 .52 .29 Motorbike .19 .02 0 .04 0 0 .43 .11 .3 .95 .79 .61 Motocross-jump .25 .03 0 .07 0 0 .80 .37 .13 .70 .33 .16 Horsejump-high - - - .95 .66 .33 .91 .69 .48 Horsejump-low - - - .97 .75 .44 .79 .38 .18 Table 5.4: Comparativa entre las redes PSPNet50_ADE20k (a), PSPNet101_Cityscapes (b) y PSPNet101_VOC2012 (c) de [9] con DP-DOP/VOC2010 (d) en términos AUC .

de los métodos, siendo más llamativa en el caso de las redes PSPNet. De las 5 secuencias, en 3 de ellas DP-DOP obtiene los mejores resultados en una evaluación tradicional, y en las dos restantes logra unos resultados bastante cercanos a los mejores. A su vez, salvo en el caso de la secuencia Bmx-bumps, DP-DOP obtiene el mejor resultado cuando tomamos un factor de penalización de 40. El mal rendimiento de PSPNet en estos casos puede deberse a la naturaleza de las secuencias en casos como el de la red tuneada con Cityscapes, pero creemos que está más relacionada con la naturaleza de las clases motocicleta y bicicleta, ya que dada sus similitud puede llevar a confusiones en su segmentación.

Finalmente, las secuencias con las clases vaca y caballo sólo se analizan con la red PS- PNet101_VOC2012 y nuestro enfoque, puesto que las otras redes se entrenaron con datasets que no incluyen estas clases. En estas secuencias la red PSPNet101_VOC2012 obtiene los mejores re- sultados, presentando DP-DOP unos resultados comparables salvo en el caso de Hoserjump-low.

En la secuencia Horsejump-high, la caída de rendimiento con factores de penalización mayores es más notable, llegando a ser superada por DP-DOP, mientras que en las dos secuencias restantes ambos métodos experimentan una caída de rendimiento similar.

Como conclusión de esta evaluación, la comparativa con PSPNet en el caso de objetos gené- ricos no ha mostrado los mismos resultados que se observaron en el caso de persona, presentando

(52)

CAPÍTULO 5. INTEGRACIÓN, PRUEBAS Y RESULTADOS

gran caída de rendimiento con el aumento del factor de penalización de falsos positivos. Esto puede deberse a que los modelos utilizados, entrenados con VOC 2010, no se asemejen lo sucien- temente bien a los objetos evaluados ya que los datasets VOC suelen contener ejemplos genéricos de cada categoría, mientras que PSPNet, al estar diseñado para realizar una segmentación se- mántica, es capaz de generalizar mejor su entrenamiento, teniendo en cuenta que también puede fallar con situaciones totalmente distintas a las utilizadas en su entrenamiento, como hemos vis- to en las redes de ADE20k y Cityscapes. Esta idea podría explorarse, y repetir el experimento usando modelos entrenados con datasets especializados en los objetos de interés, como es el caso del dataset INRIA [6] de persona, con el cual obtuvimos unos resultados bastante satisfactorios en la evaluación de la sección 5.3.

34

(53)

Capítulo 6

Conclusiones y trabajo futuro

6.1. Conclusiones

En este trabajo se han desarrollado dos métodos de segmentación objeto-fondo basados en el uso de redes neuronales convolucionales, cuyo objetivo radica en asegurar que no existan objetos o partes de objetos clasicadas erróneamente como fondo.

Tras una exposición inicial del estado del arte en segmentación y detección de objetos, pre- sentamos la idea inicial y los algoritmos de partida en los que se basa este trabajo, para poste- riormente exponer los cambios que debían llevarse a cabo sobre los mismos para implementar los métodos de segmentación buscados. Finalmente, dichos métodos se sometieron a una evaluación en térmicos de AUC, la cual se dividió en una evaluación del segmentador con la clase persona, y una evaluación con una colección de objetos más diversa.

En la evaluación del segmentador con la clase persona comprobamos que los métodos desarro- llados con redes neuronales convolucionales muestran un mayor rendimiento que sus versiones tradicionales. Debido a sus buenos resultados, comparamos uno de los métodos desarrollados con un algoritmo actual del estado del arte en segmentación semántica basada en deep learning, observando que no sólo obtienen resultados comparables si no que el método de segmentación desarrollado llega a superarlo cuando se aplica una mayor penalización de los píxeles pertene- cientes a persona clasicados erróneamente como fondo, lo cual es precisamente nuestro enfoque de partida.

A continuación, dimos paso a una evaluación del segmentador con las clases de objeto coche, bicicleta, motocicleta, vaca y caballo en diferentes secuencias, comprobando que al igual que con

(54)

CAPÍTULO 6. CONCLUSIONES Y TRABAJO FUTURO

la clase persona, los métodos desarrollados obtienen mejores resultados que sus versiones previas, incluso en secuencias donde estas últimas no consiguen realizar una segmentación satisfactoria.

Al estudiar el efecto del aumento de la penalización de falsos positivos, llegamos a unos resultados bastante dispares, a partir de los cuales no podemos inferir que ninguno de los enfoques, tanto el presentado en este trabajo como su versión tradicional, sea más robusto a los falsos positivos de segmentación, aunque igualmente los métodos presentados suelen mantener un rendimiento superior. Finalmente, observamos unos resultados bastante desiguales, tanto en una evaluación tradicional como con factores de penalización superiores, en función de la clase de objeto durante la comparativa de uno de nuestros métodos con el estado del arte en segmentación semántica, pudiendo esto deberse al modelado de las clases de objeto con un dataset de entrenamiento genérico.

6.2. Trabajo futuro

Como trabajo futuro, en primer lugar se propone la ampliación del dataset de evaluación, de forma que podamos analizar el efecto de los falsos positivos en el segmentador desarrollado en comparación con aproximaciones más tradicionales. También proponemos estudiar el efecto del modelado de los objetos en los resultados de la segmentación, planteando el uso de datasets especializados en la clase de objeto buscada durante el entrenamiento del algoritmo y analizando su impacto sobre la tasa de falsos positivos, y por ende en el rendimiento. Además, se abre la puerta a la evaluación del segmentador con otras clases de objeto, distintas a las aquí presentadas, recolectando secuencias para su entrenamiento y posterior evaluación.

En segundo lugar, se podrían explorar distintas arquitecturas de CNNs y aproximaciones de segmentación semántica para su adaptación al enfoque de segmentación objeto-fondo con sesgo en el fondo de este trabajo. También se podría estudiar el uso de información de movimiento para realizar la segmentación de las distintas imágenes de las secuencias.

Finalmente, se plantea el desarrollo de versiones extendidas de DP-IOP y DP-DOP, tomando como punto de partida las versiones extendidas de IBP y DBP del segmentador persona-fondo original del que parte este trabajo.

36

Referencias

Documento similar

Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en

que hasta que llegue el tiempo en que su regia planta ; | pise el hispano suelo... que hasta que el

por unidad de tiempo (throughput) en estado estacionario de las transiciones.. de una red de Petri

The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,

El desafío de este Trabajo de Fin de Grado es el diseño e implementación de un algoritmo de seg- mentación objeto-fondo basado en segmentación semántica, que permita la distinción

La campaña ha consistido en la revisión del etiquetado e instrucciones de uso de todos los ter- mómetros digitales comunicados, así como de la documentación técnica adicional de

Así, antes de adoptar una medida de salvaguardia, la Comisión tenía una reunión con los representantes del Estado cuyas productos iban a ser sometidos a la medida y ofrecía

¿Tenemos a nuestro alcance en Prevención herramientas basadas en este tipo de tecnologías?... TIC’S EN