Giter VIP home page Giter VIP logo

mapa-de-profundidad-con-ml's Introduction

Mapa-de-profundidad-con-ML

Resumen: Repositorio creado para participar en el reto DotCSV. La idea fue crear un modelo de aprendizaje para obtener el mapa de profundidad de un rostro a partir de una única fotografía. Los resultados no fueron lo suficientemente buenos, pero de todas maneras decidí compartir mi iniciativa.

Motivación: La idea principal fue que apartir de una fotografia real reconstruir la imagen simulando un ambiente de luz distinto. El modelo debía aprender los patrones necesarios para saber como reconstruir la imagen simulando el comportamiento de la luz. Por ejemplo

Imagen de entrada: Rotro 1

Imagen de salidad: Rotro 2

Para lo anterior supuse que lo mejor era realizar lo siguiente:

Proceso

Pero por poca experiencia y tiempo solo pude realizar el mapa de profundidad, que ademas no funciona correctamente con rostros reales.

Datos utilizados

Se crearon decenas de rotros a partir de un software de generación de rostros automaticos (https://facegen.com/). Cada rotro tiene 18 direcciones y 8 angulos distintos de luz. Con solo 15 rostros se renderizaron más de 2000 fotogramas en Blender.

Rostros

Los rostros target para el modelo:

RostrosTar

Método utilizado

Como existen muchas imagenes que deben tener el mismo target (ya que el angulo de la luz no influye en el mapa de profundidad), decidi modificar ligeramente la red. Para el Generator incluí un total de 8 inputs, uno para cada angulo de la luz. Por ejemplo, estas 3 imagenes deben tener el mismo target:

Angulos

Para no darle siempre mucha informacion a la red, decidi setear las entradas de manera aleatoria. Es decir, de vez en cuando darle una pura imagen, o hasta a veces los 8 angulos. Significa que la entrada a la red es una lista de 8 elementos, con al menos uno de ellos la imagen de entrada, los demás se rellenan con tensores nulos (tf.zeros([1, 256, 256, 3], tf.float32))

Los resultados para una cara real es el siguiente (para 20 epocas):

MImetodo

A medida que aumentan las epocas empeoran los resultados.

mapa-de-profundidad-con-ml's People

Contributors

metecko avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.