Skip to content

DressUp is an algorithm which has the purpose of dressing a person with another type of garment. This consists of 2 deep neural network architectures. Unet (segmentation model) Pix2Pix

Notifications You must be signed in to change notification settings

Comdisde/DressUp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DressUp

cvmod python

Proyecto desarrollado para participar en el "Reto DotCSV"

Overview

DressUp es un algoritmo el cual tiene el fin de vestir a una persona con otro tipo de prenda. Este consta de 2 arquitecturas de redes neuronales profundas.

  • Unet (modelo de segmentación)
  • Pix2Pix

Diagrama Unet

La segmentación generada por nuestra primera Unet es coloreada de acuerdo a la prenda que queremos sustituir.

clothes_to_change={'playera_gris/playera_blanca': (255, 0, 0),
                    'playera_negra/playera_azul': (0, 255, 0),
                    'playera_rayas': (0, 0, 255),
                    'pantalon_negro': (0, 255, 255),
                    'sudadera_azul': (255, 255, 0),
                    'playera_tigre': (255, 0, 255)}            

En este caso seleccionamos el color azul, el cual corresponde a "playera_rayas". Esta imagen es suministrada a la Unet-generadora para producir la prenda que reemplazaremos.

El output final es el siguiente:

El algoritmo cuenta soportada 6 prendas hasta el momento:

Getting Started

  • Para poder contar con los pesos correspondientes es necesario descargarlos aquí, posterior a esto se descomprime el archivo dentro de la carpeta data del repositorio

  • DressUp_Demo.ipynb Es la forma más fácil de comenzar. Muestra un ejemplo del uso de un modelo previamente entrenado para segmentar prendas y reemplazarlas en sus propias imágenes. Incluye código para ejecutar la detección de estas y su reemplazo.

  • Pix2Pix_Model_Training.ipynb Muestra cómo se entrenó a Dress Up. Este cuaderno presenta el conjunto de datos usado, cual puede ser reemplazado por otra prenda.

Training

Data

Para el entrenamiento de la primera arquitectura se optó por utilizar un dataset con una gran variedad de imagenes _Clothing Co-Parsing _ (https://github.com/bearpaw/clothing-co-parsing) y para el caso del segundo modelo era necesario contar con un imágenes de una misma prenda para ello fue de gran ayuda LookBook dataset (https://dgyoo.github.io), el cual cuenta con diversas fotografias de una misma prenda, la desventaja de este dataset es que no cuenta con imágenes etiquetadas.

Considerations

*El modelo de segmentación fue entrenado con imágenes que contaban con diversas características: una sola persona mirando de frente de cuerpo completo, si se desea un desempeño óptimo con estas consideraciones.

*Para un resultado más realista es necesario mayor número de imágenes y por ende mayor etiquetado.

Reference

Nota: Para más detalles aqui DressUp.pdf

About

DressUp is an algorithm which has the purpose of dressing a person with another type of garment. This consists of 2 deep neural network architectures. Unet (segmentation model) Pix2Pix

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published