Spaces:
Running
Running
ItzRoBeerT
commited on
Commit
•
a56edad
1
Parent(s):
eec9fc3
Update dom.py
Browse files
dom.py
CHANGED
@@ -43,8 +43,119 @@ models = """
|
|
43 |
- [FLUX.1-dev](https://huggingface.co/black-forest-labs/FLUX.1-dev) for image generation (API).
|
44 |
|
45 |
**Estimated times:**
|
|
|
46 |
- Realistic: 400s - 500s
|
47 |
- Pixel art: 200s - 250s
|
48 |
- Imaginative: 300s - 400s
|
49 |
- Cartoon: 300s - 400s
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
50 |
"""
|
|
|
43 |
- [FLUX.1-dev](https://huggingface.co/black-forest-labs/FLUX.1-dev) for image generation (API).
|
44 |
|
45 |
**Estimated times:**
|
46 |
+
|
47 |
- Realistic: 400s - 500s
|
48 |
- Pixel art: 200s - 250s
|
49 |
- Imaginative: 300s - 400s
|
50 |
- Cartoon: 300s - 400s
|
51 |
+
"""
|
52 |
+
|
53 |
+
doccumentation = """
|
54 |
+
|
55 |
+
# Documentación del Proyecto: Generación de Avatares Personalizados de Palomas
|
56 |
+
|
57 |
+
## Descripción del Proyecto
|
58 |
+
|
59 |
+
Este proyecto combina dos modelos de inteligencia artificial disponibles en Hugging Face para generar **avatares personalizados de palomas**. El sistema toma como entrada una imagen de una paloma, genera una descripción textual de la misma, y a partir de esta descripción crea un avatar estilizado basado en la preferencia del usuario.
|
60 |
+
|
61 |
+
## ¿Por qué he decidido realizar este proyecto?
|
62 |
+
Actualmente estoy trabajando en una aplicación para palomos de competición de la asociación de colombicultura de guadalcacín,
|
63 |
+
he pensado que poder generar avatares para los palomos más destacados (o los palomos que el usuario quiera) con inteligencia artificial,
|
64 |
+
podría ser una gran implementación. La idea es que el usuario pueda hacer una foto de su palomo y que la IA genere una foto para el avatar
|
65 |
+
de dicho palomo.
|
66 |
+
|
67 |
+
|
68 |
+
### Problema a Resolver
|
69 |
+
|
70 |
+
La generación automática de avatares personalizados a partir de imágenes específicas es un desafío que combina la **comprensión visual** y la **generación de imágenes**. Este sistema facilita la creación de avatares únicos basados en fotografías, ofreciendo múltiples estilos gráficos, lo que es útil para:
|
71 |
+
|
72 |
+
- Redes sociales personalizadas.
|
73 |
+
- Juegos con avatares estilizados.
|
74 |
+
- Identidades gráficas en comunidades digitales.
|
75 |
+
|
76 |
+
### Solución Propuesta
|
77 |
+
|
78 |
+
La solución se implementa en dos fases:
|
79 |
+
1. **Descripción de la Imagen**: Analizar la imagen de una paloma y generar una descripción textual.
|
80 |
+
2. **Generación del Avatar**: Usar la descripción textual para generar un avatar estilizado en el estilo seleccionado por el usuario.
|
81 |
+
|
82 |
+
### Flujo del Sistema
|
83 |
+
|
84 |
+
1. El usuario sube una imagen de una paloma.
|
85 |
+
2. El modelo de descripción genera un texto basado en la imagen.
|
86 |
+
3. El usuario selecciona un estilo gráfico para el avatar.
|
87 |
+
4. Un modelo de generación de imágenes produce avatares basados en la descripción y el estilo.
|
88 |
+
|
89 |
+
## Entrada y Salida
|
90 |
+
|
91 |
+
### Input
|
92 |
+
|
93 |
+
1. **Imagen**: Imagen de una paloma, cargada por el usuario.
|
94 |
+
2. **Estilo del avatar** (opcional): Selección del usuario entre opciones como:
|
95 |
+
- Realista
|
96 |
+
- Arte Pixelado
|
97 |
+
- Imaginativo
|
98 |
+
- Dibujo Animado
|
99 |
+
|
100 |
+
### Output
|
101 |
+
|
102 |
+
Una galería de **tres avatares estilizados** generados a partir de la descripción de la imagen y el estilo seleccionado.
|
103 |
+
|
104 |
+
---
|
105 |
+
|
106 |
+
## Modelos Utilizados
|
107 |
+
|
108 |
+
### 1. **Modelo de Descripción de Imágenes**
|
109 |
+
- **Nombre**: [vikhyatk/moondream2](https://huggingface.co/vikhyatk/moondream2)
|
110 |
+
- **Clasificación**: Modelo de Lenguaje Generativo con Capacidades de Visión.
|
111 |
+
- **Descripción**: Este modelo genera descripciones textuales detalladas basadas en el análisis de imágenes.
|
112 |
+
- **Posibles Limitaciones**:
|
113 |
+
- La descripción puede ser genérica si la imagen tiene elementos ambiguos.
|
114 |
+
- Limitada a dominios visuales preentrenados (puede no reconocer especies raras de palomas).
|
115 |
+
|
116 |
+
### 2. **Modelo de Generación de Imágenes**
|
117 |
+
- **Nombre**: [black-forest-labs/FLUX.1-dev](https://huggingface.co/black-forest-labs/FLUX.1-dev)
|
118 |
+
- **Clasificación**: Modelo de Difusión Estilizado.
|
119 |
+
- **Descripción**: Genera imágenes estilizadas basadas en prompts textuales. Permite control mediante parámetros como semillas para resultados reproducibles.
|
120 |
+
- **Posibles Limitaciones**:
|
121 |
+
- La calidad del avatar depende de la coherencia del prompt generado.
|
122 |
+
- El rendimiento puede ser inferior en dispositivos sin GPU.
|
123 |
+
|
124 |
+
### 3. **Modelo de Generación de Imágenes**
|
125 |
+
Si bien ha sido reemplazado por Flux.1-dev, e un inicio se iba a utilizar [stable-diffusion-v1-5/stable-diffusion-v1-5](https://huggingface.co/stable-diffusion-v1-5/stable-diffusion-v1-5)
|
126 |
+
este cambio lo he realizado porque buscaba una mejor experiencia de usuario, ya que, con Flux.1-dev, el cual cuenta con unos 12b de parámetros,
|
127 |
+
consigo unos resultados gracias a su API no solo en menos tiempo, sino que con mejor calidad. Si bien la implementación de stable-diffusion-v1
|
128 |
+
me ha servido para implementar un modelo de texto a imagen con diffuser y practicarlo, no daba los resultados que realmente esperaba para la demo y además,
|
129 |
+
en el espacio de la plataforma hugging face tardaba demasiado en generar la imagen.
|
130 |
+
|
131 |
+
---
|
132 |
+
|
133 |
+
## Implementación Técnica
|
134 |
+
|
135 |
+
La solución utiliza la biblioteca **Gradio** para ofrecer una interfaz de usuario interactiva y accesible:
|
136 |
+
|
137 |
+
- **Cargar Imagen**: El usuario sube la imagen de la paloma.
|
138 |
+
- **Seleccionar Estilo**: El usuario selecciona un estilo de avatar.
|
139 |
+
- **Generar Avatares**: Se genera una galería con tres avatares estilizados.
|
140 |
+
|
141 |
+
El sistema soporta múltiples dispositivos (CPU, GPU y Apple Silicon).
|
142 |
+
|
143 |
+
---
|
144 |
+
|
145 |
+
## Potenciales Usos y Expansión
|
146 |
+
|
147 |
+
1. **Avatares personalizados en redes sociales.**
|
148 |
+
2. **Identidad visual para juegos.**
|
149 |
+
3. **Expansión a otros dominios** (e.g., avatares para perros, gatos, etc.).
|
150 |
+
|
151 |
+
## Limitaciones y Consideraciones
|
152 |
+
|
153 |
+
- **Calidad de Entrada**: Las imágenes de baja resolución o con obstrucciones pueden afectar la precisión de la descripción.
|
154 |
+
- **Estilos Limitados**: Ampliar los estilos disponibles requiere ajustar los prompts o integrar nuevos modelos.
|
155 |
+
- **Dependencia de Recursos**: La generación de imágenes estilizadas puede ser lenta en dispositivos sin GPU.
|
156 |
+
|
157 |
+
---
|
158 |
+
|
159 |
+
Este proyecto demuestra cómo la combinación de modelos generativos puede resolver problemas complejos de personalización visual, ofreciendo una solución creativa y flexible para múltiples dominios.
|
160 |
+
|
161 |
"""
|