CoolFace
Modelpublic

diffusers/tools

sourceHugging Facecreativeml-openrail-mupdated 3y agoView on Hugging Face
11likes28downloads
combined_pipe.py74 linesDownload Raw Back to root
1#!/usr/bin/env python32from diffusers import AutoPipelineForText2Image, AutoPipelineForImage2Image,  AutoPipelineForInpainting3from diffusers.utils import load_image4from pathlib import Path5import torch6import numpy as np7import requests8from io import BytesIO9from PIL import Image10from huggingface_hub import HfApi11import os12 13api = HfApi()14 15url = "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/assets/stable-samples/img2img/sketch-mountains-input.jpg"16response = requests.get(url)17original_image = Image.open(BytesIO(response.content)).convert("RGB")18original_image = original_image.resize((768, 512))19 20original_image = load_image(21    "https://huggingface.co/datasets/hf-internal-testing/diffusers-images/resolve/main" "/kandinsky/cat.png"22)23 24mask = np.ones((768, 768), dtype=np.float32)25# Let's mask out an area above the cat's head26mask[:250, 250:-250] = 027 28# pipe = AutoPipelineForText2Image.from_pretrained("kandinsky-community/kandinsky-2-1", torch_dtype=torch.float16)29# pipe = AutoPipelineForImage2Image.from_pretrained("kandinsky-community/kandinsky-2-1", torch_dtype=torch.float16)30pipe = AutoPipelineForInpainting.from_pretrained("kandinsky-community/kandinsky-2-1", torch_dtype=torch.float16)31 32# pipe = AutoPipelineForText2Image.from_pretrained("kandinsky-community/kandinsky-2-2-decoder", torch_dtype=torch.float16)33# pipe = AutoPipelineForImage2Image.from_pretrained("kandinsky-community/kandinsky-2-2-decoder", torch_dtype=torch.float16)34# pipe = AutoPipelineForInpainting.from_pretrained("kandinsky-community/kandinsky-2-2-decoder-inpaint", torch_dtype=torch.float16)35pipe.enable_model_cpu_offload()36 37prompt = "A lion in galaxies, spirals, nebulae, stars, smoke, iridescent, intricate detail, octane render, 8k"38negative_prompt = ""39 40prompt = "A fantasy landscape, Cinematic lighting"41prompt = "a hat"42negative_prompt = "low quality, bad quality"43 44# rompts = ["a cat playing with a ball++ in the forest", "a cat playing with a ball++ in the forest", "a cat playing with a ball-- in the forest"]45 46# prompt_embeds = torch.cat([compel.build_conditioning_tensor(prompt) for prompt in prompts])47 48# generator = [torch.Generator(device="cuda").manual_seed(0) for _ in range(prompt_embeds.shape[0])]49#50# url = "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/assets/stable-samples/img2img/sketch-mountains-input.jpg"51 52# response = requests.get(url)53# image = Image.open(BytesIO(response.content)).convert("RGB")54# image.thumbnail((768, 768))55 56 57generator = torch.Generator(device="cpu").manual_seed(0)58# images = pipe(prompt=prompt, generator=generator, num_images_per_prompt=1, num_inference_steps=25).images59# images = pipe(prompt=prompt, image=original_image, generator=generator, num_images_per_prompt=1, num_inference_steps=25).images60images = pipe(prompt=prompt, image=original_image, mask_image=mask, generator=generator, num_images_per_prompt=1, num_inference_steps=25).images61 62for i, image in enumerate(images):63    file_name = f"bb_1_{i}"64    path = os.path.join(Path.home(), "images", f"{file_name}.png")65    image.save(path)66 67    api.upload_file(68        path_or_fileobj=path,69        path_in_repo=path.split("/")[-1],70        repo_id="patrickvonplaten/images",71        repo_type="dataset",72    )73    print(f"https://huggingface.co/datasets/patrickvonplaten/images/blob/main/{file_name}.png")74