¡Pregunte, nosotros le respondemos!

Aplicaciones y Guías

Stable Diffusion: Generación de caras repetibles

La repetibilidad es el aspecto más importante a la hora de crear contenidos gráficos con redes neuronales generativas. Esto es válido independientemente del tipo de contenido que se cree, ya sea un personaje de cine o de videojuegos, un paisaje o el entorno de una escena. El problema principal puede formularse como: "¿Cómo puedo repetir mi resultado?". Cada vez que empieces a generar imágenes con las mismas indicaciones positivas y negativas, obtendrás resultados diferentes. A veces, las diferencias son menores y aceptables, pero en la mayoría de los casos, podrían plantear un problema.

Stable Diffusion se aprende en un gran conjunto de datos capturados del mundo real, lo que explica por qué la repetibilidad no es un punto fuerte de este modelo de red neuronal. Sin embargo, esta regla no se aplica a las fotos de famosos. Estas fotos se encuentran con mucha más frecuencia en el mundo real y, por tanto, en el conjunto de datos sobre el que se entrenó Stable Diffusion. Puede utilizar estas fotos como "constante" o "punto de partida" en el proceso de generación.

Método 1. "Agitado, no revuelto"

Por supuesto, no necesitas crear sólo imágenes de famosos, sino que puedes utilizar varias indicaciones relevantes para obtener resultados más o menos coherentes. Por ejemplo, podemos tomar a dos famosas cantantes griegas: Elena Paparizou y Marina Satti, y obtener resultados repetibles:

Model: Visión realista v6.0 beta 1

Positive prompts:

Elena Paparizou, Marina Satti, fashion portrait, alone, solo, greek woman in beautiful clothes, natural skin, 8k uhd, high quality, film grain, Canon EOS

Negative prompts:

bad anatomy, bad hands, three hands, three legs, bad arms, missing legs, missing arms, poorly drawn face, bad face, fused face, cloned face, worst face, three crus, extra crus, fused crus, worst feet, three feet, fused feet, fused thigh, three thigh, fused thigh, extra thigh, worst thigh, missing fingers, extra fingers, ugly fingers, long fingers, horn, extra eyes, huge eyes, 2girl, amputation, disconnected limbs, cartoon, cg, 3d, unreal, animate, nsfw, nude, censored
Greek singer generated

Funciona con cualquier famoso, ya que Stable Diffusion intentó reproducir los rasgos faciales más destacados. Aquí, utilizamos el mismo modelo y "agitamos" a dos estrellas de Hollywood (Dwayne Johnson y Danny Trejo) en un nuevo personaje sintético.

Positive prompts:

Dwayne Johnson, Danny Trejo, fashion portrait, alone, solo, 8k uhd, high quality, film grain, Canon EOS

Negative prompts:

bad anatomy, bad hands, three hands, three legs, bad arms, missing legs, missing arms, poorly drawn face, bad face, fused face, cloned face, worst face, three crus, extra crus, fused crus, worst feet, three feet, fused feet, fused thigh, three thigh, fused thigh, extra thigh, worst thigh, missing fingers, extra fingers, ugly fingers, long fingers, horn, extra eyes, huge eyes, amputation, disconnected limbs, cartoon, cg, 3d, unreal, animate, nsfw, nude, censored
Hollywood stars generated

Cada vez que mezclas las mismas celebridades, obtienes resultados similares. Veamos otro método para generar personajes repetibles.

Método 2. Anclaje de nombres

Los famosos son un buen comienzo, pero consideremos otros métodos para conseguir resultados repetibles. La respuesta es muy sencilla: podemos utilizar varios nombres humanos. Cada nación tiene nombres únicos, relacionados con rasgos lingüísticos. Por ejemplo, el nombre griego Kostas puede traducirse como "trabajo" o "esfuerzo", mientras que Nikos significa "Victoria del pueblo". Estos dos nombres crean una imagen única de una persona generada, lo que ayuda a los modelos de redes neuronales a comprender nuestros objetivos de creación.

Positive prompts:

Portrait of [Kostas | Nikos] on a white background, greek man, short haircut, beard

Negative prompts:

woman, bad anatomy, bad hands, three hands, three legs, bad arms, missing legs, missing arms, poorly drawn face, bad face, fused face, cloned face, worst face, three crus, extra crus, fused crus, worst feet, three feet, fused feet, fused thigh, three thigh, fused thigh, extra thigh, worst thigh, missing fingers, extra fingers, ugly fingers, long fingers, horn, extra eyes, huge eyes, 2girl, amputation, disconnected limbs, cartoon, cg, 3d, unreal, animate, nsfw, nude, censored
Greek person generated

Vamos a generar numerosas imágenes (80-100) para la posterior creación del conjunto de datos. La indicación principal se seleccionó para proporcionar imágenes convenientes que puedan borrarse fácilmente del fondo. Las indicaciones negativas nos protegen de incluir imágenes aleatorias con distorsiones en el conjunto de datos, así como imágenes de mujeres.

Consejo: si recibe imágenes muy diferentes entre sí, pruebe a cambiar el parámetro Escala CFG de 7,5 a 15. Esto obligará a la red neuronal a seguir las indicaciones de manera más formal.

Greek person dataset

Puedes seleccionar tus propios nombres únicos con un sencillo generador de nombres, como Behind the Name. También puedes utilizar la función ControlNet para tener un mayor control.

Método 3. Enseñar apariencia

No podemos influir directamente en el resultado final, pero observamos que algunos tokens (como los de imagen de famosos) tienen más peso que otros. Esto significa que podemos crear nuestro token condicional "celebridad" creando un prompt apropiado para él y entrenando más el modelo con él. Así funciona LoRA (Low-Rank Adaptation of Large Language Models). Puede utilizar nuestra guía paso a paso para entrenar su propio modelo LoRA a partir de un conjunto de datos creado por usted.

Tras eliminar el fondo, obtenemos retratos nítidos y los utilizamos para crear un modelo LoRA específico. Este modelo ayuda a reproducir un rostro con unos pequeños cambios:

Dataset without background

Ahora, podemos generar este personaje en diferentes lugares, crear historias y colocarlo en varios papeles: desde jardinero a hombre de negocios. Su rostro será siempre reconocible y repetible:

Greek person with various backgrounds

Este método no es ideal, pero funciona perfectamente en diversas situaciones. No hace falta preparar un conjunto de datos de una persona real, y se puede generar a distancia:

Greek person generated result

Puedes intentar crear un personaje virtual de este tipo tú mismo, sin la ayuda de un diseñador profesional o un especialista en modelado 3D. Todo lo que necesitas son GPU rápidas, que puedes encontrar en los servidores dedicados de LeaderGPU.

Ver también:



Actualizado: 26.03.2025

Publicado: 21.01.2025