MistoLine
MistoLine: Un modelo versátil y robusto SDXL-ControlNet para el acondicionamiento adaptativo del arte lineal. MistoLine es un modelo SDXL-ControlNet que puede adaptarse a cualquier tipo de entrada de arte lineal, demostrando alta precisión y excelente estabilidad. Puede generar imágenes de alta calidad (con un lado corto mayor a 1024px) basadas en arte lineal proporcionado por el usuario de varios tipos, incluyendo bocetos dibujados a mano, diferentes preprocesadores de línea ControlNet y contornos generados por el modelo. MistoLine elimina la necesidad de seleccionar diferentes modelos ControlNet para diferentes preprocesadores de línea, ya que muestra fuertes capacidades de generalización en diversas condiciones de arte lineal. Desarrollamos MistoLine al emplear un novedoso algoritmo de preprocesamiento de línea, Anyline, y entrenando nuevamente el modelo ControlNet basado en el Unet de stabilityai/stable-diffusion-xl-base-1.0, junto con innovaciones en la ingeniería de entrenamiento de grandes modelos. MistoLine muestra un rendimiento superior en diferentes tipos de entradas de arte lineal, superando a los modelos ControlNet existentes en términos de restauración de detalles, alineación de indicaciones y estabilidad, particularmente en escenarios más complejos.
Como usar
Asegúrate de primero instalar las bibliotecas:
pip install accelerate transformers safetensors opencv-python diffusers
Y luego estamos listos para empezar:
from diffusers import ControlNetModel, StableDiffusionXLControlNetPipeline, AutoencoderKL
from diffusers.utils import load_image
from PIL import Image
import torch
import numpy as np
import cv2
prompt = "vista aérea, un complejo de investigación futurista en una jungla brillante y con niebla, iluminación dura"
negative_prompt = 'baja calidad, mala calidad, bocetos'
image = load_image("https://huggingface.co/datasets/hf-internal-testing/diffusers-images/resolve/main/sd_controlnet/hf-logo.png")
controlnet_conditioning_scale = 0.5
controlnet = ControlNetModel.from_pretrained(
"TheMistoAI/MistoLine",
torch_dtype=torch.float16,
variant="fp16",
)
vae = AutoencoderKL.from_pretrained("madebyollin/sdxl-vae-fp16-fix", torch_dtype=torch.float16)
pipe = StableDiffusionXLControlNetPipeline.from_pretrained(
"stabilityai/stable-diffusion-xl-base-1.0",
controlnet=controlnet,
vae=vae,
torch_dtype=torch.float16,
)
pipe.enable_model_cpu_offload()
image = np.array(image)
image = cv2.Canny(image, 100, 200)
image = image[:, :, None]
image = np.concatenate([image, image, image], axis=2)
image = Image.fromarray(image)
images = pipe(
prompt, negative_prompt=negative_prompt, image=image, controlnet_conditioning_scale=controlnet_conditioning_scale,
).images
images[0].save(f"hug_lab.png")
Funcionalidades
- Alta precisión
- Excelente estabilidad
- Capacidad de generar imágenes de alta calidad
- Adapta a cualquier tipo de entrada de arte lineal
- Elimina la necesidad de seleccionar diferentes modelos ControlNet
- Capacidad de generalización fuerte en diversas condiciones de arte lineal
- Compatible con la mayoría de los modelos SDXL
Casos de uso
- Generación de imágenes de alta calidad basada en arte lineal
- Compatibilidad con varios preprocesadores de línea
- Acondicionamiento adaptativo del arte lineal
- Aplicaciones artísticas y creativas
- Uso en interfaces de usuario como ComfyUI