logo

Dot CSV

Inteligencia Artificial, Tecnología, Ciencia y Futuro! Bienvenidos a la 4ª Revolución Industrial 🚀 Inteligencia Artificial, Tecnología, Ciencia y Futuro! Bienvenidos a la 4ª Revolución Industrial 🚀

Transcribed podcasts: 213
Time transcribed: 5d 22h 50m 3s

This graph shows how many times the word ______ has been mentioned throughout the history of the program.

Problema a resolver. Imagínate que estás viendo la siguiente escena y te pregunto,
oye, ¿puedes decirme qué elementos están más cercanos a ti y cuáles están más atrás?
Seguramente no tendrás ningún problema en indicarme que esta persona de aquí está
más cerca que este edificio de acá y que entre medias pues hay un camino que se aleja
desde la persona hasta el edificio. Sin problema. De hecho, podría pedirte que
colorearas cada punto de la escena, asignando una intensidad diferente a cada punto en función de
su lejanía, obteniendo como resultado una imagen como esta, un mapa de profundidad.
Vale, ¿cómo has conseguido hacer esto? O mejor aún, ¿cómo podemos conseguir que
un ordenador aprenda a hacer esto? Pues a ver, para poder inferir la
tridimensionalidad de una escena podemos optar por la opción biológica. La separación que
existe entre tus ojos, la visión estereoscópica, te permite observar una escena desde dos puntos
de vista diferentes, cuyas imágenes pueden ser combinadas para triangular la posición
de cada uno de los objetos. Et voilà. Así obtenemos una interpretación de la profundidad
de la escena. Fácil. Pero… ¿y si no contáramos con dos cámaras? ¿Y si estuviéramos trabajando con
un sistema de visión monocular? ¿A cuántas millas crees que estará? ¿A un trillón?
Pues por suerte nuestro amigo Einstein estaría de acuerdo en que podríamos utilizar la dimensión
temporal como si otra dimensión espacial se tratase. Es decir, si necesitamos dos perspectivas
diferentes del mismo objeto y contamos con una sola cámara, pues podríamos ir moviendo la cámara
en el tiempo para así poder obtener capturas desde diferentes ángulos. Esto es interesante
porque en realidad es un esquema más sencillo y similar al que nos encontramos en nuestro día a
día cuando utilizamos por ejemplo la cámara de nuestro móvil. Así que perfecto, solucionado.
Hasta aquí el vídeo de hoy, suscríbete y… no, espérate, aún hay un problema. Y es que el método
que acabamos de comentar ha de cumplir una restricción más, que los objetos de la escena que
estamos observando se mantengan estáticos en el tiempo según vamos moviendo la cámara. Es decir,
que de aquí a aquí los puntos observados sean los mismos para así poder inferir correctamente
la tridimensionalidad de la escena. Porque si no, el invento se nos va a la mierda.
De acuerdo, esto es un problema porque, por ejemplo, ¿cómo podríamos utilizar un sistema así para
inferir la profundidad en un plano cuyo protagonista sea una persona? Que bueno, normalmente suele estar
en movimiento. Veamos. Volvamos al punto de partida. Porque es cierto que estos dos métodos que te he
explicado nos pueden servir muy bien para inferir la tridimensionalidad. Pero claro, cuando yo al
principio te he enseñado esta imagen, tú has sido capaz de resolverla sin contar con una vista
esteroscópica, porque a pesar de que tú tienes dos ojos, vista desde tu monitor, esta se trata de
una imagen plana en dos dimensiones. Y tampoco la cámara se mueve al ser una imagen estática. Así
que ¿cómo lo has hecho entonces? La realidad es que tu experiencia vital de observar el mundo con
tu visión esteroscópica y aprendiendo qué forma tridimensional tiene cada objeto, te ha permitido
aprender un modelo mental con el que puedes trabajar incluso en situaciones de poca información. Es
decir, tú ya cuentas con conocimiento a priori codificado en tu cabeza sobre cómo el mundo se
estructura en tres dimensiones y cómo los objetos se distribuyen en una escena. Información que te
será útil por tanto para resolver este problema. Entonces, lo que podemos hacer es entrenar a un
modelo de deep learning que aprenda a codificar este conocimiento a priori de cómo estimar la
profundidad de una escena con una persona. Ok, ok, ok, sí sé lo que estás pensando. Carlos,
me estás mareando. Estamos dando vueltas sobre el mismo problema. Esta es la pescadilla que se
mover de la cola. Porque ¿cómo entrenamos a este sistema de deep learning? Necesitaremos tener
pares de datos con el que para cada vídeo tengamos su equivalente mapa de profundidad. ¿Y ese mapa
cómo lo conseguimos si el sujeto y la cámara se están moviendo y no podemos triangular? ¿Qué?
¿Usar cámaras de tres dimensiones como podría ser el Kinect? Bueno, es una opción, pero estas
suenan a estar limitadas a su uso en entornos cerrados y nos ofrecerían muy poca variedad de
entornos para entrenar a nuestro sistema. Ay, Dios mío, todo mal. Llegados a este punto,
espero que entiendas todo el contexto que envuelve al problema que estamos tratando. No faltan datos,
datos que en este caso vendrían a ser escenas de personas en entorno variado de los que podamos
inferir su tridimensionalidad para entrenar así a nuestro modelo de deep learning. Pues atento,
porque la respuesta dada por un equipo de Google Research es simplemente brillante,
certera e ingeniosa. Tanto es que la semana pasada fue merecedora de una mención de honor en la
prestigiosa conferencia CVPR 2019, porque lo que ha hecho Google ha sido conectar la necesidad del
problema con la respuesta. Una respuesta que han encontrado retrocediendo al pasado hasta el año
2016. ¿Recuerdas lo que era el mannequin challenge? Sí, hagamos memoria y recordemos que hubo una época
en la que la moda era grabarse en situaciones a cada cual más absurda, donde la cámara se iba
moviendo alrededor de la tridimensionalidad de una escena mientras todas las personas que aparecían
permanecían inmóviles a la espera de terminar de conformar el dataset deseado. Bueno no, en este
caso para ellos estarían pasando el rato con la moda del momento, el mannequin challenge. Pero de
vuelta al 2019, esta moda ha sido clave para conformar el dataset perfecto para resolver el
problema del que estábamos tratando, ahí disponible en internet a la espera de ser utilizado. ¿Ves en
esta imagen las oficinas de Google? Bueno, pues aquí arriba estará el despacho de la persona a la
que se le ha ocurrido esta idea, simplemente brillante. Con estos datos se ha podido entrenar
a un modelo de deep learning que en combinación con otras técnicas como el cómputo del flujo
óptico es capaz de predecir mapas de profundidad de manera precisa con cámara y personas en
movimiento, algo que por ejemplo podrá tener directas aplicaciones en herramientas de realidad
aumentada, de manera similar a lo conseguido por Apple en su versión número 3 de layer kit que
también consigue estimar la profundidad y segmentar a los usuarios en tiempo real y que nos está
dejando numerosos ejemplos de aplicaciones de realidad aumentada bastante espectaculares. Tanto
el dataset de 2000 vídeos de gente realizando el mannequin challenge como los modelos entrenados
han sido puestos a disposición del público, ambos links en la descripción. Sin embargo de este vídeo
quiero que te quedes con la moraleja y la moraleja es que en un sector donde la recolección de datos
es una de las fases más costosas a nivel de recursos y tiempo, el ingenio es el elemento
que puede darte la solución idónea a tu problema, algo digno de valorar. A no ser, claro, que todo
esto fuera algo orquestado por Google, que el mannequin challenge fuera un reto lanzado por la
compañía en 2016 con el único fin de que los usuarios, ajen a su tarea real, trabajaran en
crear este dataset. ¿De verdad crees que esto es posible? En ese caso te recomiendo que vayas
directamente a ver este vídeo de aquí en el que hablamos de datos, de challenge y en el que te
explico algunas de las maneras ingeniosas en las que las compañías como Google se aprovechan para
obtener tus datos sin que tú lo sepas. Por mi parte el único dato que te voy a pedir es el feedback
de si este vídeo te ha gustado. Eso y que esperes impaciente al próximo vídeo sobre inteligencia
artificial que, como ya sabes, encontrarás aquí en DotsCSU.