diff --git a/.gitignore b/.gitignore index aea802e984b782ce742750000e016e9527008287..a2edbc9792c69e00184c4e69a2d00eb107c608fe 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ venv/* +venv2/* __pycache__/* anime_app_local.py *__/pycache__/* diff --git a/app.py b/app.py index 0775dda75ce4337cfcc97cd36b99648fe6e2069c..d7c9ad81a729e499553a8e33181914ced37d7101 100644 --- a/app.py +++ b/app.py @@ -1,451 +1,451 @@ -prod = False -port = 8080 -show_options = False -if prod: - port = 8081 - # show_options = False - -import os -import gc -import random -import time -import gradio as gr -import numpy as np -# import imageio -import torch -from PIL import Image -from diffusers import ( - ControlNetModel, - DPMSolverMultistepScheduler, - StableDiffusionControlNetPipeline, - AutoencoderKL, -) -from diffusers.models.attention_processor import AttnProcessor2_0 -from preprocess import Preprocessor -MAX_SEED = np.iinfo(np.int32).max -API_KEY = os.environ.get("API_KEY", None) - -print("CUDA version:", torch.version.cuda) -print("loading pipe") -compiled = False -# api = HfApi() - -import spaces - -preprocessor = Preprocessor() -preprocessor.load("NormalBae") - -if gr.NO_RELOAD: - torch.cuda.max_memory_allocated(device="cuda") - - # Controlnet Normal - model_id = "lllyasviel/control_v11p_sd15_normalbae" - print("initializing controlnet") - controlnet = ControlNetModel.from_pretrained( - model_id, - torch_dtype=torch.float16, - attn_implementation="flash_attention_2", - ).to("cuda") - - # Scheduler - scheduler = DPMSolverMultistepScheduler.from_pretrained( - "runwayml/stable-diffusion-v1-5", - solver_order=2, - subfolder="scheduler", - use_karras_sigmas=True, - final_sigmas_type="sigma_min", - algorithm_type="sde-dpmsolver++", - prediction_type="epsilon", - thresholding=False, - denoise_final=True, - device_map="cuda", - torch_dtype=torch.float16, - ) - - # Stable Diffusion Pipeline URL - # base_model_url = "https://huggingface.co/broyang/hentaidigitalart_v20/blob/main/realcartoon3d_v15.safetensors" - base_model_url = "https://huggingface.co/Lykon/AbsoluteReality/blob/main/AbsoluteReality_1.8.1_pruned.safetensors" - vae_url = "https://huggingface.co/stabilityai/sd-vae-ft-mse-original/blob/main/vae-ft-mse-840000-ema-pruned.safetensors" - - vae = AutoencoderKL.from_single_file(vae_url, torch_dtype=torch.float16).to("cuda") - vae.to(memory_format=torch.channels_last) - - pipe = StableDiffusionControlNetPipeline.from_single_file( - base_model_url, - # safety_checker=None, - # load_safety_checker=True, - controlnet=controlnet, - scheduler=scheduler, - vae=vae, - torch_dtype=torch.float16, - ) - - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="EasyNegativeV2.safetensors", token="EasyNegativeV2",) - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="badhandv4.pt", token="badhandv4") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="fcNeg-neg.pt", token="fcNeg-neg") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Ahegao.pt", token="HDA_Ahegao") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Bondage.pt", token="HDA_Bondage") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_pet_play.pt", token="HDA_pet_play") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_unconventional maid.pt", token="HDA_unconventional_maid") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_NakedHoodie.pt", token="HDA_NakedHoodie") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_NunDress.pt", token="HDA_NunDress") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Shibari.pt", token="HDA_Shibari") - pipe.to("cuda") - - # experimental speedup? - # pipe.compile() - # torch.cuda.empty_cache() - # gc.collect() - print("---------------Loaded controlnet pipeline---------------") - - @spaces.GPU(duration=12) - def init(pipe): - pipe.enable_xformers_memory_efficient_attention() - pipe.unet = torch.compile(pipe.unet, mode="reduce-overhead", fullgraph=True) - pipe.unet.set_attn_processor(AttnProcessor2_0()) - print("Model Compiled!") - init(pipe) - -def randomize_seed_fn(seed: int, randomize_seed: bool) -> int: - if randomize_seed: - seed = random.randint(0, MAX_SEED) - return seed - -def get_additional_prompt(): - prompt = "hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" - top = ["tank top", "blouse", "button up shirt", "sweater", "corset top"] - bottom = ["short skirt", "athletic shorts", "jean shorts", "pleated skirt", "short skirt", "leggings", "high-waisted shorts"] - accessory = ["knee-high boots", "gloves", "Thigh-high stockings", "Garter belt", "choker", "necklace", "headband", "headphones"] - return f"{prompt}, {random.choice(top)}, {random.choice(bottom)}, {random.choice(accessory)}, score_9" - # outfit = ["schoolgirl outfit", "playboy outfit", "red dress", "gala dress", "cheerleader outfit", "nurse outfit", "Kimono"] - -def get_prompt(prompt, additional_prompt): - interior = "design-style interior designed (interior space), captured with a DSLR camera using f/10 aperture, 1/60 sec shutter speed, ISO 400, 20mm focal length, tungsten white balance, (sharp focus), professional photography, high-resolution, 8k, Pulitzer Prize-winning" - default = "hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" - default2 = f"professional 3d model {prompt},octane render,highly detailed,volumetric,dramatic lighting,hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" - randomize = get_additional_prompt() - # nude = "NSFW,((nude)),medium bare breasts,hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" - # bodypaint = "((fully naked with no clothes)),nude naked seethroughxray,invisiblebodypaint,rating_newd,NSFW" - lab_girl = "hyperrealistic photography, extremely detailed, shy assistant wearing minidress boots and gloves, laboratory background, score_9, 1girl" - pet_play = "hyperrealistic photography, extremely detailed, playful, blush, glasses, collar, score_9, HDA_pet_play" - bondage = "hyperrealistic photography, extremely detailed, submissive, glasses, score_9, HDA_Bondage" - # ahegao = "((invisible clothing)), hyperrealistic photography,exposed vagina,sexy,nsfw,HDA_Ahegao" - ahegao2 = "(invisiblebodypaint),rating_newd,HDA_Ahegao" - athleisure = "hyperrealistic photography, extremely detailed, 1girl athlete, exhausted embarrassed sweaty,outdoors, ((athleisure clothing)), score_9" - atompunk = "((atompunk world)), hyperrealistic photography, extremely detailed, short hair, bodysuit, glasses, neon cyberpunk background, score_9" - maid = "hyperrealistic photography, extremely detailed, shy, blushing, score_9, pastel background, HDA_unconventional_maid" - nundress = "hyperrealistic photography, extremely detailed, shy, blushing, fantasy background, score_9, HDA_NunDress" - naked_hoodie = "hyperrealistic photography, extremely detailed, medium hair, cityscape, (neon lights), score_9, HDA_NakedHoodie" - abg = "(1girl, asian body covered in words, words on body, tattoos of (words) on body),(masterpiece, best quality),medium breasts,(intricate details),unity 8k wallpaper,ultra detailed,(pastel colors),beautiful and aesthetic,see-through (clothes),detailed,solo" - # shibari = "extremely detailed, hyperrealistic photography, earrings, blushing, lace choker, tattoo, medium hair, score_9, HDA_Shibari" - shibari2 = "octane render, highly detailed, volumetric, HDA_Shibari" - - if prompt == "": - girls = [randomize, pet_play, bondage, lab_girl, athleisure, atompunk, maid, nundress, naked_hoodie, abg, shibari2, ahegao2] - prompts_nsfw = [abg, shibari2, ahegao2] - prompt = f"{random.choice(girls)}" - prompt = f"boho chic" - # print(f"-------------{preset}-------------") - else: - prompt = f"Photo from Pinterest of {prompt} {interior}" - # prompt = default2 - return f"{prompt} f{additional_prompt}" - -style_list = [ - { - "name": "None", - "prompt": "" - }, - { - "name": "Minimalistic", - "prompt": "Minimalistic" - }, - { - "name": "Boho Chic", - "prompt": "boho chic" - }, - { - "name": "Saudi Prince Gold", - "prompt": "saudi prince gold", - }, - { - "name": "Modern Farmhouse", - "prompt": "modern farmhouse", - }, - { - "name": "Neoclassical", - "prompt": "Neoclassical", - }, - { - "name": "Eclectic", - "prompt": "Eclectic", - }, - { - "name": "Parisian White", - "prompt": "Parisian White", - }, - { - "name": "Hollywood Glam", - "prompt": "Hollywood Glam", - }, - { - "name": "Scandinavian", - "prompt": "Scandinavian", - }, - { - "name": "Japanese", - "prompt": "Japanese", - }, - { - "name": "Texas Cowboy", - "prompt": "Texas Cowboy", - }, - { - "name": "Midcentury Modern", - "prompt": "Midcentury Modern", - }, - { - "name": "Beach", - "prompt": "Beach", - }, -] - -styles = {k["name"]: (k["prompt"]) for k in style_list} -STYLE_NAMES = list(styles.keys()) - -def apply_style(style_name): - if style_name in styles: - p = styles.get(style_name, "boho chic") - return p - - -css = """ -h1 { - text-align: center; - display:block; -} -h2 { - text-align: center; - display:block; -} -h3 { - text-align: center; - display:block; -} -.gradio-container{max-width: 1200px !important} -footer {visibility: hidden} -""" -with gr.Blocks(theme="bethecloud/storj_theme", css=css) as demo: - ############################################################################# - with gr.Row(): - with gr.Accordion("Advanced options", open=show_options, visible=show_options): - num_images = gr.Slider( - label="Images", minimum=1, maximum=4, value=1, step=1 - ) - image_resolution = gr.Slider( - label="Image resolution", - minimum=256, - maximum=1024, - value=512, - step=256, - ) - preprocess_resolution = gr.Slider( - label="Preprocess resolution", - minimum=128, - maximum=1024, - value=512, - step=1, - ) - num_steps = gr.Slider( - label="Number of steps", minimum=1, maximum=100, value=15, step=1 - ) # 20/4.5 or 12 without lora, 4 with lora - guidance_scale = gr.Slider( - label="Guidance scale", minimum=0.1, maximum=30.0, value=5.5, step=0.1 - ) # 5 without lora, 2 with lora - seed = gr.Slider(label="Seed", minimum=0, maximum=MAX_SEED, step=1, value=0) - randomize_seed = gr.Checkbox(label="Randomize seed", value=True) - a_prompt = gr.Textbox( - label="Additional prompt", - value = "design-style interior designed (interior space), captured with a DSLR camera using f/10 aperture, 1/60 sec shutter speed, ISO 400, 20mm focal length, tungsten white balance, (sharp focus), professional photography, high-resolution, 8k, Pulitzer Prize-winning" - ) - n_prompt = gr.Textbox( - label="Negative prompt", - value="EasyNegativeV2, fcNeg, (badhandv4:1.4), (worst quality, low quality, bad quality, normal quality:2.0), (bad hands, missing fingers, extra fingers:2.0)", - ) - ############################################################################# - # input text - with gr.Row(): - gr.Text(label="Interior Design Style Examples", value="Eclectic, Maximalist, Bohemian, Scandinavian, Minimalist, Rustic, Modern Farmhouse, Contemporary, Luxury, Airbnb, Boho Chic, Midcentury Modern, Art Deco, Zen, Beach, Neoclassical, Industrial, Biophilic, Eco-friendly, Hollywood Glam, Parisian White, Saudi Prince Gold, French Country, Monster Energy Drink, Cyberpunk, Vaporwave, Baroque, etc.\n\nPro tip: add a color to customize it! You can also describe the furniture type.") - with gr.Column(): - prompt = gr.Textbox( - label="Custom Prompt", - placeholder="boho chic", - ) - with gr.Row(visible=True): - style_selection = gr.Radio( - show_label=True, - container=True, - interactive=True, - choices=STYLE_NAMES, - value="None", - label="Design Styles", - ) - # input image - with gr.Row(): - with gr.Column(): - image = gr.Image( - label="Input", - sources=["upload"], - show_label=True, - mirror_webcam=True, - format="webp", - ) - # run button - with gr.Column(): - run_button = gr.Button(value="Use this one", size=["lg"], visible=False) - # output image - with gr.Column(): - result = gr.Image( - label="Output", - interactive=False, - format="webp", - show_share_button= False, - ) - # Use this image button - with gr.Column(): - use_ai_button = gr.Button(value="Use this one", size=["lg"], visible=False) - config = [ - image, - style_selection, - prompt, - a_prompt, - n_prompt, - num_images, - image_resolution, - preprocess_resolution, - num_steps, - guidance_scale, - seed, - ] - - with gr.Row(): - helper_text = gr.Markdown("## Tap and hold (on mobile) to save the image.", visible=True) - - # image processing - @gr.on(triggers=[image.upload, prompt.submit, run_button.click], inputs=config, outputs=result, show_progress="minimal") - def auto_process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed, progress=gr.Progress(track_tqdm=True)): - return process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed) - - # AI Image Processing - @gr.on(triggers=[use_ai_button.click], inputs=config, outputs=result, show_progress="minimal") - def submit(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed, progress=gr.Progress(track_tqdm=True)): - return process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed) - - # Change input to result - @gr.on(triggers=[use_ai_button.click], inputs=None, outputs=image, show_progress="hidden") - def update_input(): - try: - print("Updating image to AI Temp Image") - ai_temp_image = Image.open("temp_image.jpg") - return ai_temp_image - except FileNotFoundError: - print("No AI Image Available") - return None - - # Turn off buttons when processing - @gr.on(triggers=[image.upload, use_ai_button.click, run_button.click], inputs=None, outputs=[run_button, use_ai_button], show_progress="hidden") - def turn_buttons_off(): - return gr.update(visible=False), gr.update(visible=False) - - # Turn on buttons when processing is complete - @gr.on(triggers=[result.change], inputs=None, outputs=[use_ai_button, run_button], show_progress="hidden") - def turn_buttons_on(): - return gr.update(visible=True), gr.update(visible=True) - -@spaces.GPU(duration=10) -@torch.inference_mode() -def process_image( - image, - style_selection, - prompt, - a_prompt, - n_prompt, - num_images, - image_resolution, - preprocess_resolution, - num_steps, - guidance_scale, - seed, - progress=gr.Progress(track_tqdm=True) -): - torch.cuda.synchronize() - preprocess_start = time.time() - print("processing image") - preprocessor.load("NormalBae") - # preprocessor.load("Canny") #20 steps, 9 guidance, 512, 512 - - global compiled - if not compiled: - print("Not Compiled") - compiled = True - - seed = random.randint(0, MAX_SEED) - generator = torch.cuda.manual_seed(seed) - control_image = preprocessor( - image=image, - image_resolution=image_resolution, - detect_resolution=preprocess_resolution, - ) - preprocess_time = time.time() - preprocess_start - if style_selection is not None or style_selection != "None": - prompt = "Photo from Pinterest of " + apply_style(style_selection) + " " + prompt + " " + a_prompt - else: - prompt=str(get_prompt(prompt, a_prompt)) - negative_prompt=str(n_prompt) - print(prompt) - start = time.time() - results = pipe( - prompt=prompt, - negative_prompt=negative_prompt, - guidance_scale=guidance_scale, - num_images_per_prompt=num_images, - num_inference_steps=num_steps, - generator=generator, - image=control_image, - ).images[0] - torch.cuda.synchronize() - torch.cuda.empty_cache() - print(f"\n-------------------------Preprocess done in: {preprocess_time:.2f} seconds-------------------------") - print(f"\n-------------------------Inference done in: {time.time() - start:.2f} seconds-------------------------") - - # timestamp = int(time.time()) - #if not os.path.exists("./outputs"): - # os.makedirs("./outputs") - # img_path = f"./{timestamp}.jpg" - # results_path = f"./{timestamp}_out_{prompt}.jpg" - # imageio.imsave(img_path, image) - # results.save(results_path) - results.save("temp_image.jpg") - - # api.upload_file( - # path_or_fileobj=img_path, - # path_in_repo=img_path, - # repo_id="broyang/anime-ai-outputs", - # repo_type="dataset", - # token=API_KEY, - # run_as_future=True, - # ) - # api.upload_file( - # path_or_fileobj=results_path, - # path_in_repo=results_path, - # repo_id="broyang/anime-ai-outputs", - # repo_type="dataset", - # token=API_KEY, - # run_as_future=True, - # ) - - return results -if prod: - demo.queue(max_size=20).launch(server_name="localhost", server_port=port) -else: +prod = False +port = 8080 +show_options = False +if prod: + port = 8081 + # show_options = False + +import os +import gc +import random +import time +import gradio as gr +import numpy as np +# import imageio +import torch +from PIL import Image +from diffusers import ( + ControlNetModel, + DPMSolverMultistepScheduler, + StableDiffusionControlNetPipeline, + AutoencoderKL, +) +from diffusers.models.attention_processor import AttnProcessor2_0 +from preprocess import Preprocessor +MAX_SEED = np.iinfo(np.int32).max +API_KEY = os.environ.get("API_KEY", None) + +print("CUDA version:", torch.version.cuda) +print("loading pipe") +compiled = False +# api = HfApi() + +import spaces + +preprocessor = Preprocessor() +preprocessor.load("NormalBae") + +if gr.NO_RELOAD: + torch.cuda.max_memory_allocated(device="cuda") + + # Controlnet Normal + model_id = "lllyasviel/control_v11p_sd15_normalbae" + print("initializing controlnet") + controlnet = ControlNetModel.from_pretrained( + model_id, + torch_dtype=torch.float16, + attn_implementation="flash_attention_2", + ).to("cuda") + + # Scheduler + scheduler = DPMSolverMultistepScheduler.from_pretrained( + "runwayml/stable-diffusion-v1-5", + solver_order=2, + subfolder="scheduler", + use_karras_sigmas=True, + final_sigmas_type="sigma_min", + algorithm_type="sde-dpmsolver++", + prediction_type="epsilon", + thresholding=False, + denoise_final=True, + device_map="cuda", + torch_dtype=torch.float16, + ) + + # Stable Diffusion Pipeline URL + # base_model_url = "https://huggingface.co/broyang/hentaidigitalart_v20/blob/main/realcartoon3d_v15.safetensors" + base_model_url = "https://huggingface.co/Lykon/AbsoluteReality/blob/main/AbsoluteReality_1.8.1_pruned.safetensors" + vae_url = "https://huggingface.co/stabilityai/sd-vae-ft-mse-original/blob/main/vae-ft-mse-840000-ema-pruned.safetensors" + + vae = AutoencoderKL.from_single_file(vae_url, torch_dtype=torch.float16).to("cuda") + vae.to(memory_format=torch.channels_last) + + pipe = StableDiffusionControlNetPipeline.from_single_file( + base_model_url, + # safety_checker=None, + # load_safety_checker=True, + controlnet=controlnet, + scheduler=scheduler, + vae=vae, + torch_dtype=torch.float16, + ) + + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="EasyNegativeV2.safetensors", token="EasyNegativeV2",) + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="badhandv4.pt", token="badhandv4") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="fcNeg-neg.pt", token="fcNeg-neg") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Ahegao.pt", token="HDA_Ahegao") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Bondage.pt", token="HDA_Bondage") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_pet_play.pt", token="HDA_pet_play") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_unconventional maid.pt", token="HDA_unconventional_maid") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_NakedHoodie.pt", token="HDA_NakedHoodie") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_NunDress.pt", token="HDA_NunDress") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Shibari.pt", token="HDA_Shibari") + pipe.to("cuda") + + # experimental speedup? + # pipe.compile() + # torch.cuda.empty_cache() + # gc.collect() + print("---------------Loaded controlnet pipeline---------------") + + @spaces.GPU(duration=12) + def init(pipe): + pipe.enable_xformers_memory_efficient_attention() + pipe.unet = torch.compile(pipe.unet, mode="reduce-overhead", fullgraph=True) + pipe.unet.set_attn_processor(AttnProcessor2_0()) + print("Model Compiled!") + init(pipe) + +def randomize_seed_fn(seed: int, randomize_seed: bool) -> int: + if randomize_seed: + seed = random.randint(0, MAX_SEED) + return seed + +def get_additional_prompt(): + prompt = "hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" + top = ["tank top", "blouse", "button up shirt", "sweater", "corset top"] + bottom = ["short skirt", "athletic shorts", "jean shorts", "pleated skirt", "short skirt", "leggings", "high-waisted shorts"] + accessory = ["knee-high boots", "gloves", "Thigh-high stockings", "Garter belt", "choker", "necklace", "headband", "headphones"] + return f"{prompt}, {random.choice(top)}, {random.choice(bottom)}, {random.choice(accessory)}, score_9" + # outfit = ["schoolgirl outfit", "playboy outfit", "red dress", "gala dress", "cheerleader outfit", "nurse outfit", "Kimono"] + +def get_prompt(prompt, additional_prompt): + interior = "design-style interior designed (interior space), captured with a DSLR camera using f/10 aperture, 1/60 sec shutter speed, ISO 400, 20mm focal length, tungsten white balance, (sharp focus), professional photography, high-resolution, 8k, Pulitzer Prize-winning" + default = "hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" + default2 = f"professional 3d model {prompt},octane render,highly detailed,volumetric,dramatic lighting,hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" + randomize = get_additional_prompt() + # nude = "NSFW,((nude)),medium bare breasts,hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" + # bodypaint = "((fully naked with no clothes)),nude naked seethroughxray,invisiblebodypaint,rating_newd,NSFW" + lab_girl = "hyperrealistic photography, extremely detailed, shy assistant wearing minidress boots and gloves, laboratory background, score_9, 1girl" + pet_play = "hyperrealistic photography, extremely detailed, playful, blush, glasses, collar, score_9, HDA_pet_play" + bondage = "hyperrealistic photography, extremely detailed, submissive, glasses, score_9, HDA_Bondage" + # ahegao = "((invisible clothing)), hyperrealistic photography,exposed vagina,sexy,nsfw,HDA_Ahegao" + ahegao2 = "(invisiblebodypaint),rating_newd,HDA_Ahegao" + athleisure = "hyperrealistic photography, extremely detailed, 1girl athlete, exhausted embarrassed sweaty,outdoors, ((athleisure clothing)), score_9" + atompunk = "((atompunk world)), hyperrealistic photography, extremely detailed, short hair, bodysuit, glasses, neon cyberpunk background, score_9" + maid = "hyperrealistic photography, extremely detailed, shy, blushing, score_9, pastel background, HDA_unconventional_maid" + nundress = "hyperrealistic photography, extremely detailed, shy, blushing, fantasy background, score_9, HDA_NunDress" + naked_hoodie = "hyperrealistic photography, extremely detailed, medium hair, cityscape, (neon lights), score_9, HDA_NakedHoodie" + abg = "(1girl, asian body covered in words, words on body, tattoos of (words) on body),(masterpiece, best quality),medium breasts,(intricate details),unity 8k wallpaper,ultra detailed,(pastel colors),beautiful and aesthetic,see-through (clothes),detailed,solo" + # shibari = "extremely detailed, hyperrealistic photography, earrings, blushing, lace choker, tattoo, medium hair, score_9, HDA_Shibari" + shibari2 = "octane render, highly detailed, volumetric, HDA_Shibari" + + if prompt == "": + girls = [randomize, pet_play, bondage, lab_girl, athleisure, atompunk, maid, nundress, naked_hoodie, abg, shibari2, ahegao2] + prompts_nsfw = [abg, shibari2, ahegao2] + prompt = f"{random.choice(girls)}" + prompt = f"boho chic" + # print(f"-------------{preset}-------------") + else: + prompt = f"Photo from Pinterest of {prompt} {interior}" + # prompt = default2 + return f"{prompt} f{additional_prompt}" + +style_list = [ + { + "name": "None", + "prompt": "" + }, + { + "name": "Minimalistic", + "prompt": "Minimalistic" + }, + { + "name": "Boho Chic", + "prompt": "boho chic" + }, + { + "name": "Saudi Prince Gold", + "prompt": "saudi prince gold", + }, + { + "name": "Modern Farmhouse", + "prompt": "modern farmhouse", + }, + { + "name": "Neoclassical", + "prompt": "Neoclassical", + }, + { + "name": "Eclectic", + "prompt": "Eclectic", + }, + { + "name": "Parisian White", + "prompt": "Parisian White", + }, + { + "name": "Hollywood Glam", + "prompt": "Hollywood Glam", + }, + { + "name": "Scandinavian", + "prompt": "Scandinavian", + }, + { + "name": "Japanese", + "prompt": "Japanese", + }, + { + "name": "Texas Cowboy", + "prompt": "Texas Cowboy", + }, + { + "name": "Midcentury Modern", + "prompt": "Midcentury Modern", + }, + { + "name": "Beach", + "prompt": "Beach", + }, +] + +styles = {k["name"]: (k["prompt"]) for k in style_list} +STYLE_NAMES = list(styles.keys()) + +def apply_style(style_name): + if style_name in styles: + p = styles.get(style_name, "boho chic") + return p + + +css = """ +h1 { + text-align: center; + display:block; +} +h2 { + text-align: center; + display:block; +} +h3 { + text-align: center; + display:block; +} +.gradio-container{max-width: 1200px !important} +footer {visibility: hidden} +""" +with gr.Blocks(theme="bethecloud/storj_theme", css=css) as demo: + ############################################################################# + with gr.Row(): + with gr.Accordion("Advanced options", open=show_options, visible=show_options): + num_images = gr.Slider( + label="Images", minimum=1, maximum=4, value=1, step=1 + ) + image_resolution = gr.Slider( + label="Image resolution", + minimum=256, + maximum=1024, + value=512, + step=256, + ) + preprocess_resolution = gr.Slider( + label="Preprocess resolution", + minimum=128, + maximum=1024, + value=512, + step=1, + ) + num_steps = gr.Slider( + label="Number of steps", minimum=1, maximum=100, value=15, step=1 + ) # 20/4.5 or 12 without lora, 4 with lora + guidance_scale = gr.Slider( + label="Guidance scale", minimum=0.1, maximum=30.0, value=5.5, step=0.1 + ) # 5 without lora, 2 with lora + seed = gr.Slider(label="Seed", minimum=0, maximum=MAX_SEED, step=1, value=0) + randomize_seed = gr.Checkbox(label="Randomize seed", value=True) + a_prompt = gr.Textbox( + label="Additional prompt", + value = "design-style interior designed (interior space), captured with a DSLR camera using f/10 aperture, 1/60 sec shutter speed, ISO 400, 20mm focal length, tungsten white balance, (sharp focus), professional photography, high-resolution, 8k, Pulitzer Prize-winning" + ) + n_prompt = gr.Textbox( + label="Negative prompt", + value="EasyNegativeV2, fcNeg, (badhandv4:1.4), (worst quality, low quality, bad quality, normal quality:2.0), (bad hands, missing fingers, extra fingers:2.0)", + ) + ############################################################################# + # input text + with gr.Row(): + gr.Text(label="Interior Design Style Examples", value="Eclectic, Maximalist, Bohemian, Scandinavian, Minimalist, Rustic, Modern Farmhouse, Contemporary, Luxury, Airbnb, Boho Chic, Midcentury Modern, Art Deco, Zen, Beach, Neoclassical, Industrial, Biophilic, Eco-friendly, Hollywood Glam, Parisian White, Saudi Prince Gold, French Country, Monster Energy Drink, Cyberpunk, Vaporwave, Baroque, etc.\n\nPro tip: add a color to customize it! You can also describe the furniture type.") + with gr.Column(): + prompt = gr.Textbox( + label="Custom Prompt", + placeholder="boho chic", + ) + with gr.Row(visible=True): + style_selection = gr.Radio( + show_label=True, + container=True, + interactive=True, + choices=STYLE_NAMES, + value="None", + label="Design Styles", + ) + # input image + with gr.Row(): + with gr.Column(): + image = gr.Image( + label="Input", + sources=["upload"], + show_label=True, + mirror_webcam=True, + format="webp", + ) + # run button + with gr.Column(): + run_button = gr.Button(value="Use this one", size=["lg"], visible=False) + # output image + with gr.Column(): + result = gr.Image( + label="Output", + interactive=False, + format="webp", + show_share_button= False, + ) + # Use this image button + with gr.Column(): + use_ai_button = gr.Button(value="Use this one", size=["lg"], visible=False) + config = [ + image, + style_selection, + prompt, + a_prompt, + n_prompt, + num_images, + image_resolution, + preprocess_resolution, + num_steps, + guidance_scale, + seed, + ] + + with gr.Row(): + helper_text = gr.Markdown("## Tap and hold (on mobile) to save the image.", visible=True) + + # image processing + @gr.on(triggers=[image.upload, prompt.submit, run_button.click], inputs=config, outputs=result, show_progress="minimal") + def auto_process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed, progress=gr.Progress(track_tqdm=True)): + return process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed) + + # AI Image Processing + @gr.on(triggers=[use_ai_button.click], inputs=config, outputs=result, show_progress="minimal") + def submit(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed, progress=gr.Progress(track_tqdm=True)): + return process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed) + + # Change input to result + @gr.on(triggers=[use_ai_button.click], inputs=None, outputs=image, show_progress="hidden") + def update_input(): + try: + print("Updating image to AI Temp Image") + ai_temp_image = Image.open("temp_image.jpg") + return ai_temp_image + except FileNotFoundError: + print("No AI Image Available") + return None + + # Turn off buttons when processing + @gr.on(triggers=[image.upload, use_ai_button.click, run_button.click], inputs=None, outputs=[run_button, use_ai_button], show_progress="hidden") + def turn_buttons_off(): + return gr.update(visible=False), gr.update(visible=False) + + # Turn on buttons when processing is complete + @gr.on(triggers=[result.change], inputs=None, outputs=[use_ai_button, run_button], show_progress="hidden") + def turn_buttons_on(): + return gr.update(visible=True), gr.update(visible=True) + +@spaces.GPU(duration=10) +@torch.inference_mode() +def process_image( + image, + style_selection, + prompt, + a_prompt, + n_prompt, + num_images, + image_resolution, + preprocess_resolution, + num_steps, + guidance_scale, + seed, + progress=gr.Progress(track_tqdm=True) +): + torch.cuda.synchronize() + preprocess_start = time.time() + print("processing image") + preprocessor.load("NormalBae") + # preprocessor.load("Canny") #20 steps, 9 guidance, 512, 512 + + global compiled + if not compiled: + print("Not Compiled") + compiled = True + + seed = random.randint(0, MAX_SEED) + generator = torch.cuda.manual_seed(seed) + control_image = preprocessor( + image=image, + image_resolution=image_resolution, + detect_resolution=preprocess_resolution, + ) + preprocess_time = time.time() - preprocess_start + if style_selection is not None or style_selection != "None": + prompt = "Photo from Pinterest of " + apply_style(style_selection) + " " + prompt + " " + a_prompt + else: + prompt=str(get_prompt(prompt, a_prompt)) + negative_prompt=str(n_prompt) + print(prompt) + start = time.time() + results = pipe( + prompt=prompt, + negative_prompt=negative_prompt, + guidance_scale=guidance_scale, + num_images_per_prompt=num_images, + num_inference_steps=num_steps, + generator=generator, + image=control_image, + ).images[0] + torch.cuda.synchronize() + torch.cuda.empty_cache() + print(f"\n-------------------------Preprocess done in: {preprocess_time:.2f} seconds-------------------------") + print(f"\n-------------------------Inference done in: {time.time() - start:.2f} seconds-------------------------") + + # timestamp = int(time.time()) + #if not os.path.exists("./outputs"): + # os.makedirs("./outputs") + # img_path = f"./{timestamp}.jpg" + # results_path = f"./{timestamp}_out_{prompt}.jpg" + # imageio.imsave(img_path, image) + # results.save(results_path) + results.save("temp_image.jpg") + + # api.upload_file( + # path_or_fileobj=img_path, + # path_in_repo=img_path, + # repo_id="broyang/anime-ai-outputs", + # repo_type="dataset", + # token=API_KEY, + # run_as_future=True, + # ) + # api.upload_file( + # path_or_fileobj=results_path, + # path_in_repo=results_path, + # repo_id="broyang/anime-ai-outputs", + # repo_type="dataset", + # token=API_KEY, + # run_as_future=True, + # ) + + return results +if prod: + demo.queue(max_size=20).launch(server_name="localhost", server_port=port) +else: demo.queue(api_open=False).launch(show_api=False) \ No newline at end of file diff --git a/controlnet_aux/canny/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/canny/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 26de05ae8c3bea90a9417fb951b4f5909d15545f..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/canny/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/dwpose/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/dwpose/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 99388b454a8f6bf22afdd1e3ca315afd147690d9..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/dwpose/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/dwpose/__pycache__/util.cpython-310.pyc b/controlnet_aux/dwpose/__pycache__/util.cpython-310.pyc deleted file mode 100644 index ef2b30838712d99da0ed44d7f13d85b5f5b9effd..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/dwpose/__pycache__/util.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/dwpose/__pycache__/wholebody.cpython-310.pyc b/controlnet_aux/dwpose/__pycache__/wholebody.cpython-310.pyc deleted file mode 100644 index 378bd6df7cbff8d1c4d4b8f2d6cc092bd4133898..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/dwpose/__pycache__/wholebody.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/hed/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/hed/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index c78acc95f28cd4e301a85d516a133333bccd8700..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/hed/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/leres/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index afb7303055551e4344705b346761711c8f965b51..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/leres/__pycache__/Resnet.cpython-310.pyc b/controlnet_aux/leres/leres/__pycache__/Resnet.cpython-310.pyc deleted file mode 100644 index 8ccc4ad8f2ea6e5627fc6c90f46ef322236bf942..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/leres/__pycache__/Resnet.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/leres/__pycache__/Resnext_torch.cpython-310.pyc b/controlnet_aux/leres/leres/__pycache__/Resnext_torch.cpython-310.pyc deleted file mode 100644 index efd28973f66d25b1ea8b12f1d50160f153a2b88d..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/leres/__pycache__/Resnext_torch.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/leres/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/leres/leres/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 3683dd2fa1bc53440e2bc8ab06f4484d7ab4e3d5..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/leres/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/leres/__pycache__/depthmap.cpython-310.pyc b/controlnet_aux/leres/leres/__pycache__/depthmap.cpython-310.pyc deleted file mode 100644 index 90fa19f54a483641918e212f3ca53a80449aca95..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/leres/__pycache__/depthmap.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/leres/__pycache__/multi_depth_model_woauxi.cpython-310.pyc b/controlnet_aux/leres/leres/__pycache__/multi_depth_model_woauxi.cpython-310.pyc deleted file mode 100644 index f9de4a13dfb1bbe9243061b1eb0353bfc6f46e81..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/leres/__pycache__/multi_depth_model_woauxi.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/leres/__pycache__/net_tools.cpython-310.pyc b/controlnet_aux/leres/leres/__pycache__/net_tools.cpython-310.pyc deleted file mode 100644 index 7914fce69b1edb43d7627808a8245396dc828ce1..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/leres/__pycache__/net_tools.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/leres/__pycache__/network_auxi.cpython-310.pyc b/controlnet_aux/leres/leres/__pycache__/network_auxi.cpython-310.pyc deleted file mode 100644 index a7eb1f4669914403ff2a99cbde9af482f474229e..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/leres/__pycache__/network_auxi.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/pix2pix/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/leres/pix2pix/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 4c6ec421d2cbe7b37cb7c83eaa22590d1b8cce7d..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/pix2pix/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/pix2pix/models/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/leres/pix2pix/models/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 584b3569f4112a068a0f51fc0df5ce69b366de26..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/pix2pix/models/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/pix2pix/models/__pycache__/base_model.cpython-310.pyc b/controlnet_aux/leres/pix2pix/models/__pycache__/base_model.cpython-310.pyc deleted file mode 100644 index 68b700e71604337d7c5cde5d6aeb92727ad57581..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/pix2pix/models/__pycache__/base_model.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/pix2pix/models/__pycache__/base_model_hg.cpython-310.pyc b/controlnet_aux/leres/pix2pix/models/__pycache__/base_model_hg.cpython-310.pyc deleted file mode 100644 index fef774e69125d66bbf5388b59c16bb4aac6b518f..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/pix2pix/models/__pycache__/base_model_hg.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/pix2pix/models/__pycache__/networks.cpython-310.pyc b/controlnet_aux/leres/pix2pix/models/__pycache__/networks.cpython-310.pyc deleted file mode 100644 index f44b4ee77d4b9a9b73685f9c926f809bb60a2581..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/pix2pix/models/__pycache__/networks.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/pix2pix/models/__pycache__/pix2pix4depth_model.cpython-310.pyc b/controlnet_aux/leres/pix2pix/models/__pycache__/pix2pix4depth_model.cpython-310.pyc deleted file mode 100644 index fd2ec80efc2f2ea8f4c65cea8df702a0b59cdc08..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/pix2pix/models/__pycache__/pix2pix4depth_model.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/pix2pix/options/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/leres/pix2pix/options/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 581eceaacc6bffd0153b7c5e606d2e2299795344..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/pix2pix/options/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/pix2pix/options/__pycache__/base_options.cpython-310.pyc b/controlnet_aux/leres/pix2pix/options/__pycache__/base_options.cpython-310.pyc deleted file mode 100644 index 55477a97f630ec7bf746f1772c862536b86cf88e..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/pix2pix/options/__pycache__/base_options.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/pix2pix/options/__pycache__/test_options.cpython-310.pyc b/controlnet_aux/leres/pix2pix/options/__pycache__/test_options.cpython-310.pyc deleted file mode 100644 index ffc69b03b105c4905d18b77bb635a87c3aaf717a..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/pix2pix/options/__pycache__/test_options.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/pix2pix/util/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/leres/pix2pix/util/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 8ae5ac863c893875932ede3b14b0b213afeb1fc7..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/pix2pix/util/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/leres/pix2pix/util/__pycache__/util.cpython-310.pyc b/controlnet_aux/leres/pix2pix/util/__pycache__/util.cpython-310.pyc deleted file mode 100644 index 0673022f6c6fd288f2d08955be47a54f077fce55..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/leres/pix2pix/util/__pycache__/util.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/lineart/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/lineart/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index d37fdd1c38ba35ca00b0976d18b371dc7745d322..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/lineart/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/lineart_anime/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/lineart_anime/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index c399db5847e27ce311c23a62aaae6e21ed519a01..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/lineart_anime/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/mediapipe_face/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/mediapipe_face/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 063c7814dc99ae1eaaf86e76c655cb1877013ea0..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/mediapipe_face/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/mediapipe_face/__pycache__/mediapipe_face_common.cpython-310.pyc b/controlnet_aux/mediapipe_face/__pycache__/mediapipe_face_common.cpython-310.pyc deleted file mode 100644 index 10e76bd8ad534d9516f3061f9f5d4ae47be5e79f..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/mediapipe_face/__pycache__/mediapipe_face_common.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/midas/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/midas/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index b29c76ee5b889806210763b19ae186483f12a84d..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/midas/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/midas/__pycache__/api.cpython-310.pyc b/controlnet_aux/midas/__pycache__/api.cpython-310.pyc deleted file mode 100644 index 21587cd9010075819789073faef4d42ca4506b44..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/midas/__pycache__/api.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/midas/__pycache__/utils.cpython-310.pyc b/controlnet_aux/midas/__pycache__/utils.cpython-310.pyc deleted file mode 100644 index 0ecc3a5636a7bad46fd643915bc282ec1d00bb60..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/midas/__pycache__/utils.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/midas/midas/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/midas/midas/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index a2d18db5bac86bbef6b52ca6afeb04abbef5c2ec..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/midas/midas/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/midas/midas/__pycache__/base_model.cpython-310.pyc b/controlnet_aux/midas/midas/__pycache__/base_model.cpython-310.pyc deleted file mode 100644 index e8b238e11cc8ff921787315778e8b40eab43d44f..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/midas/midas/__pycache__/base_model.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/midas/midas/__pycache__/blocks.cpython-310.pyc b/controlnet_aux/midas/midas/__pycache__/blocks.cpython-310.pyc deleted file mode 100644 index 521385530297a1962739b0faf8d46e737b3342c5..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/midas/midas/__pycache__/blocks.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/midas/midas/__pycache__/dpt_depth.cpython-310.pyc b/controlnet_aux/midas/midas/__pycache__/dpt_depth.cpython-310.pyc deleted file mode 100644 index df9441e3d4b72cd4cfc09a3e23a024c1a60d6aec..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/midas/midas/__pycache__/dpt_depth.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/midas/midas/__pycache__/midas_net.cpython-310.pyc b/controlnet_aux/midas/midas/__pycache__/midas_net.cpython-310.pyc deleted file mode 100644 index 14f2bca4bff2df4bba7d83a1cb64b1d7526b748d..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/midas/midas/__pycache__/midas_net.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/midas/midas/__pycache__/midas_net_custom.cpython-310.pyc b/controlnet_aux/midas/midas/__pycache__/midas_net_custom.cpython-310.pyc deleted file mode 100644 index ded8e1cea505803be950ead6472c77e9191a30de..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/midas/midas/__pycache__/midas_net_custom.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/midas/midas/__pycache__/transforms.cpython-310.pyc b/controlnet_aux/midas/midas/__pycache__/transforms.cpython-310.pyc deleted file mode 100644 index 1c08cdf80934700c2a46674f38970bb50c0c6d98..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/midas/midas/__pycache__/transforms.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/midas/midas/__pycache__/vit.cpython-310.pyc b/controlnet_aux/midas/midas/__pycache__/vit.cpython-310.pyc deleted file mode 100644 index f6277d7f268a9ad9cf257defb7ee142b3fceaf5e..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/midas/midas/__pycache__/vit.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/mlsd/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/mlsd/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 0a5ac283fc20ae2b191babcf4268ff22f942132e..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/mlsd/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/mlsd/__pycache__/utils.cpython-310.pyc b/controlnet_aux/mlsd/__pycache__/utils.cpython-310.pyc deleted file mode 100644 index acecb3da2116e8314b1b527f247b723c68ef85fa..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/mlsd/__pycache__/utils.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/mlsd/models/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/mlsd/models/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index a355cbbba5b42e3401bac6a62bd20a5cc0378b1e..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/mlsd/models/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/mlsd/models/__pycache__/mbv2_mlsd_large.cpython-310.pyc b/controlnet_aux/mlsd/models/__pycache__/mbv2_mlsd_large.cpython-310.pyc deleted file mode 100644 index de4d6d3f8b041fc0afdc464474b710db8eef92ae..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/mlsd/models/__pycache__/mbv2_mlsd_large.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/mlsd/models/__pycache__/mbv2_mlsd_tiny.cpython-310.pyc b/controlnet_aux/mlsd/models/__pycache__/mbv2_mlsd_tiny.cpython-310.pyc deleted file mode 100644 index 060b96812cfad2fb8d24ac1b89d9bceed959dfd0..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/mlsd/models/__pycache__/mbv2_mlsd_tiny.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/normalbae/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index fcaf6854e8be6155d1f0ff99a8d6867ee622d810..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/__pycache__/NNET.cpython-310.pyc b/controlnet_aux/normalbae/nets/__pycache__/NNET.cpython-310.pyc deleted file mode 100644 index d9fc7af6b48c58872b9aaca729d64a13a5fb7f8b..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/__pycache__/NNET.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/normalbae/nets/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index a92a239ae7eac1d12214feb3cecf2bd25d80bc3a..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/__pycache__/baseline.cpython-310.pyc b/controlnet_aux/normalbae/nets/__pycache__/baseline.cpython-310.pyc deleted file mode 100644 index 8c37c0377b1406c6534820a63e9ad08d782565e8..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/__pycache__/baseline.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 4038c0698edea29c13a1d8d233af3e9765dacd08..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/__pycache__/decoder.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/__pycache__/decoder.cpython-310.pyc deleted file mode 100644 index dbdf9339f984f0bb54dc46a07e048555afc4299a..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/__pycache__/decoder.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/__pycache__/encoder.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/__pycache__/encoder.cpython-310.pyc deleted file mode 100644 index e0a0fe968a3d5ac36052430b395c849f262f4cdf..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/__pycache__/encoder.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/__pycache__/submodules.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/__pycache__/submodules.cpython-310.pyc deleted file mode 100644 index bcccceaccfeb380ed056542a1d0db087cd36fa4e..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/__pycache__/submodules.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index a7dedf83b2a0927a04f14399e12190566122a3e3..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/caffe2_benchmark.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/caffe2_benchmark.cpython-310.pyc deleted file mode 100644 index b52d665882a31d41ee7ac58b3dbe3d2f7990596e..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/caffe2_benchmark.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/caffe2_validate.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/caffe2_validate.cpython-310.pyc deleted file mode 100644 index 02ade5d3b4cd491a525ea2a4d4538444fe6a3841..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/caffe2_validate.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/hubconf.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/hubconf.cpython-310.pyc deleted file mode 100644 index 68c913e02f8accf13c1e4344c2a452970f150cea..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/hubconf.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_export.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_export.cpython-310.pyc deleted file mode 100644 index 0cbbced140c7d1f48fe1bb2db69fd88af9f65c11..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_export.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_optimize.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_optimize.cpython-310.pyc deleted file mode 100644 index d8bf1859693fbf9bd19d34e1271b2a7b8f50ec26..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_optimize.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_to_caffe.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_to_caffe.cpython-310.pyc deleted file mode 100644 index b464761f841c1449aa09f1815b4b3ccd0679966d..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_to_caffe.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_validate.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_validate.cpython-310.pyc deleted file mode 100644 index f746a0fc66ce85bc4e442be0387db0d5562405a7..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/onnx_validate.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/setup.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/setup.cpython-310.pyc deleted file mode 100644 index 96ed5b65015f990f07962c5ec330cb4fec3e2e54..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/setup.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/utils.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/utils.cpython-310.pyc deleted file mode 100644 index c68c2c2348243b3a860ed40edead9e9d9c1e50b1..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/utils.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/validate.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/validate.cpython-310.pyc deleted file mode 100644 index be2c9fc7fb89007426aa6eb83a3ff1b8a922d9c5..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__pycache__/validate.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 0769f6cb25cda0b3568663b7b6441cecbfb52db3..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/config.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/config.cpython-310.pyc deleted file mode 100644 index ddbb51d50580c8020433d852e8e9b18786529edd..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/config.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/conv2d_layers.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/conv2d_layers.cpython-310.pyc deleted file mode 100644 index 8f9cc1c495069590e4386c9edd0804e7377416bc..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/conv2d_layers.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/efficientnet_builder.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/efficientnet_builder.cpython-310.pyc deleted file mode 100644 index 5ac83c725b435ff201c7ffe625ad65d4167b8d2a..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/efficientnet_builder.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/gen_efficientnet.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/gen_efficientnet.cpython-310.pyc deleted file mode 100644 index 9770633d5f084e9767c4e03bd47507f4e426773b..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/gen_efficientnet.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/helpers.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/helpers.cpython-310.pyc deleted file mode 100644 index ec898f28b96f41ff531fcb3721e314108048b83d..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/helpers.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/mobilenetv3.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/mobilenetv3.cpython-310.pyc deleted file mode 100644 index 1c0a3a7802abde433e15230abf912d86955aab5e..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/mobilenetv3.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/model_factory.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/model_factory.cpython-310.pyc deleted file mode 100644 index 3ea609f6e20a52391b380e677c4ffde2faf5ba31..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/model_factory.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/version.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/version.cpython-310.pyc deleted file mode 100644 index e5e3c9a86f2f656e416f25bb0c72a48fe441df71..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__pycache__/version.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 648b6695868c0b932fc3234e56093fcc21882d18..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/activations.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/activations.cpython-310.pyc deleted file mode 100644 index f5ce06cbf6be18937e0010ad805605d0010cbd25..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/activations.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/activations_jit.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/activations_jit.cpython-310.pyc deleted file mode 100644 index 8fdc7969344be77570ddded44d8d37ad00bb952f..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/activations_jit.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/activations_me.cpython-310.pyc b/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/activations_me.cpython-310.pyc deleted file mode 100644 index d2b639f65e804c370add54659f8f4d70441495bd..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__pycache__/activations_me.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/open_pose/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/open_pose/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index b9b08de28781a37a536c1ed0cbe2c53d94cbce1b..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/open_pose/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/open_pose/__pycache__/body.cpython-310.pyc b/controlnet_aux/open_pose/__pycache__/body.cpython-310.pyc deleted file mode 100644 index 12923bfb6c18287e95a7e1a85825cc32d9b07d56..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/open_pose/__pycache__/body.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/open_pose/__pycache__/face.cpython-310.pyc b/controlnet_aux/open_pose/__pycache__/face.cpython-310.pyc deleted file mode 100644 index 275974779e238731710a7998522c94f273f44989..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/open_pose/__pycache__/face.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/open_pose/__pycache__/hand.cpython-310.pyc b/controlnet_aux/open_pose/__pycache__/hand.cpython-310.pyc deleted file mode 100644 index 3b4f087d6ecc552bf1c7c94f8282af3554a883d5..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/open_pose/__pycache__/hand.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/open_pose/__pycache__/model.cpython-310.pyc b/controlnet_aux/open_pose/__pycache__/model.cpython-310.pyc deleted file mode 100644 index 07d879509f6db1d2134a327cbe10d70c8da23487..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/open_pose/__pycache__/model.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/open_pose/__pycache__/util.cpython-310.pyc b/controlnet_aux/open_pose/__pycache__/util.cpython-310.pyc deleted file mode 100644 index b835887267fb19498efaffa139d50496902e50ee..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/open_pose/__pycache__/util.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/pidi/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/pidi/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index c331000beeb210ab85e13bca6fdd7a6cf1cd4462..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/pidi/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/pidi/__pycache__/model.cpython-310.pyc b/controlnet_aux/pidi/__pycache__/model.cpython-310.pyc deleted file mode 100644 index 6f7cbf73042cdf198fb4cbd0a4bf3a7d13990c41..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/pidi/__pycache__/model.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/segment_anything/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index b541a89673fb06d18d4a485fe8658a51c2a030dc..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/__pycache__/automatic_mask_generator.cpython-310.pyc b/controlnet_aux/segment_anything/__pycache__/automatic_mask_generator.cpython-310.pyc deleted file mode 100644 index e0fc5a96e09492770a2ea6a09ff61e5d6561ade7..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/__pycache__/automatic_mask_generator.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/__pycache__/build_sam.cpython-310.pyc b/controlnet_aux/segment_anything/__pycache__/build_sam.cpython-310.pyc deleted file mode 100644 index 83c79eba76d37e78e9888ac2d3d21d0b19d2c420..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/__pycache__/build_sam.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/__pycache__/predictor.cpython-310.pyc b/controlnet_aux/segment_anything/__pycache__/predictor.cpython-310.pyc deleted file mode 100644 index 8f222e26232f508c5a1f70d2ade3e104202587d3..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/__pycache__/predictor.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/modeling/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/segment_anything/modeling/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 46169cbc6b266cde398ed2d4f2ddeacd08bd3ed3..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/modeling/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/modeling/__pycache__/common.cpython-310.pyc b/controlnet_aux/segment_anything/modeling/__pycache__/common.cpython-310.pyc deleted file mode 100644 index 97acf7528a62ea70d7df3c073dacf21cd5f22c36..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/modeling/__pycache__/common.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/modeling/__pycache__/image_encoder.cpython-310.pyc b/controlnet_aux/segment_anything/modeling/__pycache__/image_encoder.cpython-310.pyc deleted file mode 100644 index 034834bf6e70f5d3231976d5d2bbcacc83f13665..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/modeling/__pycache__/image_encoder.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/modeling/__pycache__/mask_decoder.cpython-310.pyc b/controlnet_aux/segment_anything/modeling/__pycache__/mask_decoder.cpython-310.pyc deleted file mode 100644 index 7416f344cc1434ed42593e03d4b1f98e7aa44563..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/modeling/__pycache__/mask_decoder.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/modeling/__pycache__/prompt_encoder.cpython-310.pyc b/controlnet_aux/segment_anything/modeling/__pycache__/prompt_encoder.cpython-310.pyc deleted file mode 100644 index 72d7f1b9288399308614a9433bd42c45a8251abb..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/modeling/__pycache__/prompt_encoder.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/modeling/__pycache__/sam.cpython-310.pyc b/controlnet_aux/segment_anything/modeling/__pycache__/sam.cpython-310.pyc deleted file mode 100644 index 393b4119dde068862f241499a4365f55e62f2883..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/modeling/__pycache__/sam.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/modeling/__pycache__/tiny_vit_sam.cpython-310.pyc b/controlnet_aux/segment_anything/modeling/__pycache__/tiny_vit_sam.cpython-310.pyc deleted file mode 100644 index f91a9d0758cbb0d44554c5ca624021a2d0f9649a..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/modeling/__pycache__/tiny_vit_sam.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/modeling/__pycache__/transformer.cpython-310.pyc b/controlnet_aux/segment_anything/modeling/__pycache__/transformer.cpython-310.pyc deleted file mode 100644 index 9db6332aaf5c22ca84998a5f3d6a3dc2dd041f07..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/modeling/__pycache__/transformer.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/utils/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/segment_anything/utils/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 4bf54150e5d34f35ed6078b8043ae36ef701b7f2..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/utils/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/utils/__pycache__/amg.cpython-310.pyc b/controlnet_aux/segment_anything/utils/__pycache__/amg.cpython-310.pyc deleted file mode 100644 index b71d0e3cba63e5a18f70e534a0916d44c783c662..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/utils/__pycache__/amg.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/utils/__pycache__/onnx.cpython-310.pyc b/controlnet_aux/segment_anything/utils/__pycache__/onnx.cpython-310.pyc deleted file mode 100644 index 391db1c0b6de63ca6216252ff07babefb054e51f..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/utils/__pycache__/onnx.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/segment_anything/utils/__pycache__/transforms.cpython-310.pyc b/controlnet_aux/segment_anything/utils/__pycache__/transforms.cpython-310.pyc deleted file mode 100644 index 61fb0b8aa44ab3f5e9b99785706930c014ad0004..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/segment_anything/utils/__pycache__/transforms.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/shuffle/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/shuffle/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 6e70af8ca154e663041f3d1faa9027378682dfde..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/shuffle/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index e0705b28eb57861f8d1e12502a0d8aa6f5effb8e..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 6543f0b84b76c124503f153f85f2ad86b7308561..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 321e64bac7c2dd2e8ef8cb5077000252ae6abf0d..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/__pycache__/builder.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/__pycache__/builder.cpython-310.pyc deleted file mode 100644 index fcb7a7efbf015e34d9c31294fa0881b248704707..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/__pycache__/builder.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/__pycache__/depth_model.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/__pycache__/depth_model.cpython-310.pyc deleted file mode 100644 index 5554d1d42569aadcdffe447f5ef591fdc52deca7..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/__pycache__/depth_model.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/__pycache__/model_io.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/__pycache__/model_io.cpython-310.pyc deleted file mode 100644 index 46ad0670649ea8780b3d3ae7913e97371b541f0c..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/__pycache__/model_io.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index ffda3f6ada84630ac139f0658063a398a18582fc..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/__pycache__/midas.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/__pycache__/midas.cpython-310.pyc deleted file mode 100644 index dce05348fe1350793739d680d4de9fa1f54c6135..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/__pycache__/midas.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 5246eac4309fbe1ba27caef07d520c2d300f1470..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/__pycache__/hubconf.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/__pycache__/hubconf.cpython-310.pyc deleted file mode 100644 index 40491cf1088d57225115a4cab227e58bca440cbe..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/__pycache__/hubconf.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index dd449a043d54f4b6479109f7510329b02c0c3ce7..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/base_model.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/base_model.cpython-310.pyc deleted file mode 100644 index ff639649eea544b43a3667b439da79f453ecf985..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/base_model.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/blocks.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/blocks.cpython-310.pyc deleted file mode 100644 index 36961911e84f86ce3eda02fb55aa2d873db38020..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/blocks.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/dpt_depth.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/dpt_depth.cpython-310.pyc deleted file mode 100644 index f7b81978011468432a4c25ba80333cd5d2946ffb..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/dpt_depth.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/midas_net.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/midas_net.cpython-310.pyc deleted file mode 100644 index 97d91ccbaa1e99c78e0a361cee12b913640b4a3b..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/midas_net.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/midas_net_custom.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/midas_net_custom.cpython-310.pyc deleted file mode 100644 index 5107de203c6219986ca3fc74cb2ba93091559cc4..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/midas_net_custom.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/model_loader.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/model_loader.cpython-310.pyc deleted file mode 100644 index 2cd3a68ae622e7ad057cbff97937dcbf01b69ab0..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/model_loader.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/transforms.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/transforms.cpython-310.pyc deleted file mode 100644 index 1cf4541bd503d9b2ed4ca950f878b9ee344a90fa..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__pycache__/transforms.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index efab63579b16bb8c62927507e733f5ec3b63e7c0..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/beit.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/beit.cpython-310.pyc deleted file mode 100644 index e26ac1855e3861796d353bf9cd0ad19d0dff0a31..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/beit.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/levit.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/levit.cpython-310.pyc deleted file mode 100644 index c086e1374b47a84596a47b0141995ce9d65656ce..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/levit.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/next_vit.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/next_vit.cpython-310.pyc deleted file mode 100644 index 347113dda595a57cfe98dd7a23162e21460a3a56..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/next_vit.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/swin.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/swin.cpython-310.pyc deleted file mode 100644 index fb3c299c60a4e05bd6aa71c25ee41c31d73a2904..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/swin.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/swin2.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/swin2.cpython-310.pyc deleted file mode 100644 index 8675b5ec2d3ab076b0a3a9ac662c01dbb2351942..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/swin2.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/swin_common.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/swin_common.cpython-310.pyc deleted file mode 100644 index 43d0964491f80b150f73ed7014ba5a8bd910b4c0..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/swin_common.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/utils.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/utils.cpython-310.pyc deleted file mode 100644 index e726c4465e8f70650fcdd52fbf0c994391608331..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/utils.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/vit.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/vit.cpython-310.pyc deleted file mode 100644 index 2d146d1fad1e10069db4a6f4ae98b8ac2b35ddb3..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__pycache__/vit.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 98cf895efde51ba73cca8bad7e405c91ebf2d23b..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/attractor.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/attractor.cpython-310.pyc deleted file mode 100644 index 655d5847682511ced9a3786cb89d42777036dbaa..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/attractor.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/dist_layers.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/dist_layers.cpython-310.pyc deleted file mode 100644 index 5cff59279173500fb4e1fa2031d0f722d73d8647..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/dist_layers.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/localbins_layers.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/localbins_layers.cpython-310.pyc deleted file mode 100644 index b2e5df4979db12c6ad606ec63963241b8be60f0c..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/localbins_layers.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/patch_transformer.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/patch_transformer.cpython-310.pyc deleted file mode 100644 index 56a9a884c6076d39e044d071d282b3e29630a813..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/layers/__pycache__/patch_transformer.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/zoedepth/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/zoedepth/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index db55443371fa39549c0e64ab37f4ea82f5deb2a1..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/zoedepth/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/zoedepth/__pycache__/zoedepth_v1.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/zoedepth/__pycache__/zoedepth_v1.cpython-310.pyc deleted file mode 100644 index efccec3c72657f217d4fc3653f88a768a2d81b12..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/zoedepth/__pycache__/zoedepth_v1.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/zoedepth_nk/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/zoedepth_nk/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 5dfa78437609e2591654d947759f59958359e2ed..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/zoedepth_nk/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/models/zoedepth_nk/__pycache__/zoedepth_nk_v1.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/models/zoedepth_nk/__pycache__/zoedepth_nk_v1.cpython-310.pyc deleted file mode 100644 index e72a190f913c557a545cbf3b18c457c1bfd4c540..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/models/zoedepth_nk/__pycache__/zoedepth_nk_v1.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/utils/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/utils/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index 97a0b69697644f3ae2f44e79a0e6a108ad7961b6..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/utils/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/utils/__pycache__/arg_utils.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/utils/__pycache__/arg_utils.cpython-310.pyc deleted file mode 100644 index 766e9aa8253dec52357dd892169666c7809ab4a9..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/utils/__pycache__/arg_utils.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/utils/__pycache__/config.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/utils/__pycache__/config.cpython-310.pyc deleted file mode 100644 index bac6a83510fba7c92599623cd24b7c5c9dc8785d..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/utils/__pycache__/config.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/zoe/zoedepth/utils/easydict/__pycache__/__init__.cpython-310.pyc b/controlnet_aux/zoe/zoedepth/utils/easydict/__pycache__/__init__.cpython-310.pyc deleted file mode 100644 index ee994488df6a03b6cd2f3a754d9420322554f18a..0000000000000000000000000000000000000000 Binary files a/controlnet_aux/zoe/zoedepth/utils/easydict/__pycache__/__init__.cpython-310.pyc and /dev/null differ diff --git a/controlnet_aux/__init__.py b/controlnet_aux_local/__init__.py similarity index 100% rename from controlnet_aux/__init__.py rename to controlnet_aux_local/__init__.py diff --git a/controlnet_aux/canny/__init__.py b/controlnet_aux_local/canny/__init__.py similarity index 100% rename from controlnet_aux/canny/__init__.py rename to controlnet_aux_local/canny/__init__.py diff --git a/controlnet_aux/dwpose/__init__.py b/controlnet_aux_local/dwpose/__init__.py similarity index 100% rename from controlnet_aux/dwpose/__init__.py rename to controlnet_aux_local/dwpose/__init__.py diff --git a/controlnet_aux/dwpose/util.py b/controlnet_aux_local/dwpose/util.py similarity index 100% rename from controlnet_aux/dwpose/util.py rename to controlnet_aux_local/dwpose/util.py diff --git a/controlnet_aux/dwpose/wholebody.py b/controlnet_aux_local/dwpose/wholebody.py similarity index 100% rename from controlnet_aux/dwpose/wholebody.py rename to controlnet_aux_local/dwpose/wholebody.py diff --git a/controlnet_aux/hed/__init__.py b/controlnet_aux_local/hed/__init__.py similarity index 100% rename from controlnet_aux/hed/__init__.py rename to controlnet_aux_local/hed/__init__.py diff --git a/controlnet_aux/leres/__init__.py b/controlnet_aux_local/leres/__init__.py similarity index 100% rename from controlnet_aux/leres/__init__.py rename to controlnet_aux_local/leres/__init__.py diff --git a/controlnet_aux/leres/leres/Resnet.py b/controlnet_aux_local/leres/leres/Resnet.py similarity index 100% rename from controlnet_aux/leres/leres/Resnet.py rename to controlnet_aux_local/leres/leres/Resnet.py diff --git a/controlnet_aux/leres/leres/Resnext_torch.py b/controlnet_aux_local/leres/leres/Resnext_torch.py similarity index 100% rename from controlnet_aux/leres/leres/Resnext_torch.py rename to controlnet_aux_local/leres/leres/Resnext_torch.py diff --git a/controlnet_aux/leres/leres/__init__.py b/controlnet_aux_local/leres/leres/__init__.py similarity index 100% rename from controlnet_aux/leres/leres/__init__.py rename to controlnet_aux_local/leres/leres/__init__.py diff --git a/controlnet_aux/leres/leres/depthmap.py b/controlnet_aux_local/leres/leres/depthmap.py similarity index 100% rename from controlnet_aux/leres/leres/depthmap.py rename to controlnet_aux_local/leres/leres/depthmap.py diff --git a/controlnet_aux/leres/leres/multi_depth_model_woauxi.py b/controlnet_aux_local/leres/leres/multi_depth_model_woauxi.py similarity index 100% rename from controlnet_aux/leres/leres/multi_depth_model_woauxi.py rename to controlnet_aux_local/leres/leres/multi_depth_model_woauxi.py diff --git a/controlnet_aux/leres/leres/net_tools.py b/controlnet_aux_local/leres/leres/net_tools.py similarity index 100% rename from controlnet_aux/leres/leres/net_tools.py rename to controlnet_aux_local/leres/leres/net_tools.py diff --git a/controlnet_aux/leres/leres/network_auxi.py b/controlnet_aux_local/leres/leres/network_auxi.py similarity index 100% rename from controlnet_aux/leres/leres/network_auxi.py rename to controlnet_aux_local/leres/leres/network_auxi.py diff --git a/controlnet_aux/leres/pix2pix/__init__.py b/controlnet_aux_local/leres/pix2pix/__init__.py similarity index 100% rename from controlnet_aux/leres/pix2pix/__init__.py rename to controlnet_aux_local/leres/pix2pix/__init__.py diff --git a/controlnet_aux/leres/pix2pix/models/__init__.py b/controlnet_aux_local/leres/pix2pix/models/__init__.py similarity index 100% rename from controlnet_aux/leres/pix2pix/models/__init__.py rename to controlnet_aux_local/leres/pix2pix/models/__init__.py diff --git a/controlnet_aux/leres/pix2pix/models/base_model.py b/controlnet_aux_local/leres/pix2pix/models/base_model.py similarity index 100% rename from controlnet_aux/leres/pix2pix/models/base_model.py rename to controlnet_aux_local/leres/pix2pix/models/base_model.py diff --git a/controlnet_aux/leres/pix2pix/models/base_model_hg.py b/controlnet_aux_local/leres/pix2pix/models/base_model_hg.py similarity index 100% rename from controlnet_aux/leres/pix2pix/models/base_model_hg.py rename to controlnet_aux_local/leres/pix2pix/models/base_model_hg.py diff --git a/controlnet_aux/leres/pix2pix/models/networks.py b/controlnet_aux_local/leres/pix2pix/models/networks.py similarity index 100% rename from controlnet_aux/leres/pix2pix/models/networks.py rename to controlnet_aux_local/leres/pix2pix/models/networks.py diff --git a/controlnet_aux/leres/pix2pix/models/pix2pix4depth_model.py b/controlnet_aux_local/leres/pix2pix/models/pix2pix4depth_model.py similarity index 100% rename from controlnet_aux/leres/pix2pix/models/pix2pix4depth_model.py rename to controlnet_aux_local/leres/pix2pix/models/pix2pix4depth_model.py diff --git a/controlnet_aux/leres/pix2pix/options/__init__.py b/controlnet_aux_local/leres/pix2pix/options/__init__.py similarity index 100% rename from controlnet_aux/leres/pix2pix/options/__init__.py rename to controlnet_aux_local/leres/pix2pix/options/__init__.py diff --git a/controlnet_aux/leres/pix2pix/options/base_options.py b/controlnet_aux_local/leres/pix2pix/options/base_options.py similarity index 100% rename from controlnet_aux/leres/pix2pix/options/base_options.py rename to controlnet_aux_local/leres/pix2pix/options/base_options.py diff --git a/controlnet_aux/leres/pix2pix/options/test_options.py b/controlnet_aux_local/leres/pix2pix/options/test_options.py similarity index 100% rename from controlnet_aux/leres/pix2pix/options/test_options.py rename to controlnet_aux_local/leres/pix2pix/options/test_options.py diff --git a/controlnet_aux/leres/pix2pix/util/__init__.py b/controlnet_aux_local/leres/pix2pix/util/__init__.py similarity index 100% rename from controlnet_aux/leres/pix2pix/util/__init__.py rename to controlnet_aux_local/leres/pix2pix/util/__init__.py diff --git a/controlnet_aux/leres/pix2pix/util/util.py b/controlnet_aux_local/leres/pix2pix/util/util.py similarity index 100% rename from controlnet_aux/leres/pix2pix/util/util.py rename to controlnet_aux_local/leres/pix2pix/util/util.py diff --git a/controlnet_aux/lineart/__init__.py b/controlnet_aux_local/lineart/__init__.py similarity index 100% rename from controlnet_aux/lineart/__init__.py rename to controlnet_aux_local/lineart/__init__.py diff --git a/controlnet_aux/lineart_anime/__init__.py b/controlnet_aux_local/lineart_anime/__init__.py similarity index 100% rename from controlnet_aux/lineart_anime/__init__.py rename to controlnet_aux_local/lineart_anime/__init__.py diff --git a/controlnet_aux/mediapipe_face/__init__.py b/controlnet_aux_local/mediapipe_face/__init__.py similarity index 100% rename from controlnet_aux/mediapipe_face/__init__.py rename to controlnet_aux_local/mediapipe_face/__init__.py diff --git a/controlnet_aux/mediapipe_face/mediapipe_face_common.py b/controlnet_aux_local/mediapipe_face/mediapipe_face_common.py similarity index 100% rename from controlnet_aux/mediapipe_face/mediapipe_face_common.py rename to controlnet_aux_local/mediapipe_face/mediapipe_face_common.py diff --git a/controlnet_aux/midas/__init__.py b/controlnet_aux_local/midas/__init__.py similarity index 100% rename from controlnet_aux/midas/__init__.py rename to controlnet_aux_local/midas/__init__.py diff --git a/controlnet_aux/midas/api.py b/controlnet_aux_local/midas/api.py similarity index 100% rename from controlnet_aux/midas/api.py rename to controlnet_aux_local/midas/api.py diff --git a/controlnet_aux/midas/midas/__init__.py b/controlnet_aux_local/midas/midas/__init__.py similarity index 100% rename from controlnet_aux/midas/midas/__init__.py rename to controlnet_aux_local/midas/midas/__init__.py diff --git a/controlnet_aux/midas/midas/base_model.py b/controlnet_aux_local/midas/midas/base_model.py similarity index 100% rename from controlnet_aux/midas/midas/base_model.py rename to controlnet_aux_local/midas/midas/base_model.py diff --git a/controlnet_aux/midas/midas/blocks.py b/controlnet_aux_local/midas/midas/blocks.py similarity index 100% rename from controlnet_aux/midas/midas/blocks.py rename to controlnet_aux_local/midas/midas/blocks.py diff --git a/controlnet_aux/midas/midas/dpt_depth.py b/controlnet_aux_local/midas/midas/dpt_depth.py similarity index 100% rename from controlnet_aux/midas/midas/dpt_depth.py rename to controlnet_aux_local/midas/midas/dpt_depth.py diff --git a/controlnet_aux/midas/midas/midas_net.py b/controlnet_aux_local/midas/midas/midas_net.py similarity index 100% rename from controlnet_aux/midas/midas/midas_net.py rename to controlnet_aux_local/midas/midas/midas_net.py diff --git a/controlnet_aux/midas/midas/midas_net_custom.py b/controlnet_aux_local/midas/midas/midas_net_custom.py similarity index 100% rename from controlnet_aux/midas/midas/midas_net_custom.py rename to controlnet_aux_local/midas/midas/midas_net_custom.py diff --git a/controlnet_aux/midas/midas/transforms.py b/controlnet_aux_local/midas/midas/transforms.py similarity index 100% rename from controlnet_aux/midas/midas/transforms.py rename to controlnet_aux_local/midas/midas/transforms.py diff --git a/controlnet_aux/midas/midas/vit.py b/controlnet_aux_local/midas/midas/vit.py similarity index 100% rename from controlnet_aux/midas/midas/vit.py rename to controlnet_aux_local/midas/midas/vit.py diff --git a/controlnet_aux/midas/utils.py b/controlnet_aux_local/midas/utils.py similarity index 100% rename from controlnet_aux/midas/utils.py rename to controlnet_aux_local/midas/utils.py diff --git a/controlnet_aux/mlsd/__init__.py b/controlnet_aux_local/mlsd/__init__.py similarity index 100% rename from controlnet_aux/mlsd/__init__.py rename to controlnet_aux_local/mlsd/__init__.py diff --git a/controlnet_aux/mlsd/models/__init__.py b/controlnet_aux_local/mlsd/models/__init__.py similarity index 100% rename from controlnet_aux/mlsd/models/__init__.py rename to controlnet_aux_local/mlsd/models/__init__.py diff --git a/controlnet_aux/mlsd/models/mbv2_mlsd_large.py b/controlnet_aux_local/mlsd/models/mbv2_mlsd_large.py similarity index 100% rename from controlnet_aux/mlsd/models/mbv2_mlsd_large.py rename to controlnet_aux_local/mlsd/models/mbv2_mlsd_large.py diff --git a/controlnet_aux/mlsd/models/mbv2_mlsd_tiny.py b/controlnet_aux_local/mlsd/models/mbv2_mlsd_tiny.py similarity index 100% rename from controlnet_aux/mlsd/models/mbv2_mlsd_tiny.py rename to controlnet_aux_local/mlsd/models/mbv2_mlsd_tiny.py diff --git a/controlnet_aux/mlsd/utils.py b/controlnet_aux_local/mlsd/utils.py similarity index 100% rename from controlnet_aux/mlsd/utils.py rename to controlnet_aux_local/mlsd/utils.py diff --git a/controlnet_aux/normalbae/__init__.py b/controlnet_aux_local/normalbae/__init__.py similarity index 100% rename from controlnet_aux/normalbae/__init__.py rename to controlnet_aux_local/normalbae/__init__.py diff --git a/controlnet_aux/normalbae/nets/NNET.py b/controlnet_aux_local/normalbae/nets/NNET.py similarity index 100% rename from controlnet_aux/normalbae/nets/NNET.py rename to controlnet_aux_local/normalbae/nets/NNET.py diff --git a/controlnet_aux/normalbae/nets/__init__.py b/controlnet_aux_local/normalbae/nets/__init__.py similarity index 100% rename from controlnet_aux/normalbae/nets/__init__.py rename to controlnet_aux_local/normalbae/nets/__init__.py diff --git a/controlnet_aux/normalbae/nets/baseline.py b/controlnet_aux_local/normalbae/nets/baseline.py similarity index 100% rename from controlnet_aux/normalbae/nets/baseline.py rename to controlnet_aux_local/normalbae/nets/baseline.py diff --git a/controlnet_aux/normalbae/nets/submodules/__init__.py b/controlnet_aux_local/normalbae/nets/submodules/__init__.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/__init__.py rename to controlnet_aux_local/normalbae/nets/submodules/__init__.py diff --git a/controlnet_aux/normalbae/nets/submodules/decoder.py b/controlnet_aux_local/normalbae/nets/submodules/decoder.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/decoder.py rename to controlnet_aux_local/normalbae/nets/submodules/decoder.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__init__.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/__init__.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/__init__.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/__init__.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/caffe2_benchmark.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/caffe2_benchmark.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/caffe2_benchmark.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/caffe2_benchmark.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/caffe2_validate.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/caffe2_validate.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/caffe2_validate.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/caffe2_validate.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__init__.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/__init__.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/__init__.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/__init__.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__init__.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__init__.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__init__.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__init__.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations_jit.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations_jit.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations_jit.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations_jit.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations_me.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations_me.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations_me.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations_me.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/config.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/config.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/config.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/config.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/conv2d_layers.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/conv2d_layers.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/conv2d_layers.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/conv2d_layers.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/efficientnet_builder.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/efficientnet_builder.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/efficientnet_builder.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/efficientnet_builder.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/gen_efficientnet.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/gen_efficientnet.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/gen_efficientnet.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/gen_efficientnet.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/helpers.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/helpers.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/helpers.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/helpers.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/mobilenetv3.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/mobilenetv3.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/mobilenetv3.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/mobilenetv3.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/model_factory.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/model_factory.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/model_factory.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/model_factory.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/version.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/version.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/geffnet/version.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/geffnet/version.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/hubconf.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/hubconf.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/hubconf.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/hubconf.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/onnx_export.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/onnx_export.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/onnx_export.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/onnx_export.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/onnx_optimize.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/onnx_optimize.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/onnx_optimize.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/onnx_optimize.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/onnx_to_caffe.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/onnx_to_caffe.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/onnx_to_caffe.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/onnx_to_caffe.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/onnx_validate.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/onnx_validate.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/onnx_validate.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/onnx_validate.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/setup.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/setup.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/setup.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/setup.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/utils.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/utils.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/utils.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/utils.py diff --git a/controlnet_aux/normalbae/nets/submodules/efficientnet_repo/validate.py b/controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/validate.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/efficientnet_repo/validate.py rename to controlnet_aux_local/normalbae/nets/submodules/efficientnet_repo/validate.py diff --git a/controlnet_aux/normalbae/nets/submodules/encoder.py b/controlnet_aux_local/normalbae/nets/submodules/encoder.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/encoder.py rename to controlnet_aux_local/normalbae/nets/submodules/encoder.py diff --git a/controlnet_aux/normalbae/nets/submodules/submodules.py b/controlnet_aux_local/normalbae/nets/submodules/submodules.py similarity index 100% rename from controlnet_aux/normalbae/nets/submodules/submodules.py rename to controlnet_aux_local/normalbae/nets/submodules/submodules.py diff --git a/controlnet_aux/open_pose/__init__.py b/controlnet_aux_local/open_pose/__init__.py similarity index 100% rename from controlnet_aux/open_pose/__init__.py rename to controlnet_aux_local/open_pose/__init__.py diff --git a/controlnet_aux/open_pose/body.py b/controlnet_aux_local/open_pose/body.py similarity index 100% rename from controlnet_aux/open_pose/body.py rename to controlnet_aux_local/open_pose/body.py diff --git a/controlnet_aux/open_pose/face.py b/controlnet_aux_local/open_pose/face.py similarity index 100% rename from controlnet_aux/open_pose/face.py rename to controlnet_aux_local/open_pose/face.py diff --git a/controlnet_aux/open_pose/hand.py b/controlnet_aux_local/open_pose/hand.py similarity index 100% rename from controlnet_aux/open_pose/hand.py rename to controlnet_aux_local/open_pose/hand.py diff --git a/controlnet_aux/open_pose/model.py b/controlnet_aux_local/open_pose/model.py similarity index 100% rename from controlnet_aux/open_pose/model.py rename to controlnet_aux_local/open_pose/model.py diff --git a/controlnet_aux/open_pose/util.py b/controlnet_aux_local/open_pose/util.py similarity index 100% rename from controlnet_aux/open_pose/util.py rename to controlnet_aux_local/open_pose/util.py diff --git a/controlnet_aux/pidi/__init__.py b/controlnet_aux_local/pidi/__init__.py similarity index 100% rename from controlnet_aux/pidi/__init__.py rename to controlnet_aux_local/pidi/__init__.py diff --git a/controlnet_aux/pidi/model.py b/controlnet_aux_local/pidi/model.py similarity index 100% rename from controlnet_aux/pidi/model.py rename to controlnet_aux_local/pidi/model.py diff --git a/controlnet_aux/processor.py b/controlnet_aux_local/processor.py similarity index 98% rename from controlnet_aux/processor.py rename to controlnet_aux_local/processor.py index 12cb6b085ea080d39c225ebf7d7f13061b42d125..f1055d3226ac0925206b57efbd0dc0b4265f16fc 100644 --- a/controlnet_aux/processor.py +++ b/controlnet_aux_local/processor.py @@ -7,7 +7,7 @@ from typing import Dict, Optional, Union from PIL import Image -from controlnet_aux import (CannyDetector, ContentShuffleDetector, HEDdetector, +from controlnet_aux_local import (CannyDetector, ContentShuffleDetector, HEDdetector, LeresDetector, LineartAnimeDetector, LineartDetector, MediapipeFaceDetector, MidasDetector, MLSDdetector, NormalBaeDetector, diff --git a/controlnet_aux/segment_anything/__init__.py b/controlnet_aux_local/segment_anything/__init__.py similarity index 100% rename from controlnet_aux/segment_anything/__init__.py rename to controlnet_aux_local/segment_anything/__init__.py diff --git a/controlnet_aux/segment_anything/automatic_mask_generator.py b/controlnet_aux_local/segment_anything/automatic_mask_generator.py similarity index 100% rename from controlnet_aux/segment_anything/automatic_mask_generator.py rename to controlnet_aux_local/segment_anything/automatic_mask_generator.py diff --git a/controlnet_aux/segment_anything/build_sam.py b/controlnet_aux_local/segment_anything/build_sam.py similarity index 100% rename from controlnet_aux/segment_anything/build_sam.py rename to controlnet_aux_local/segment_anything/build_sam.py diff --git a/controlnet_aux/segment_anything/modeling/__init__.py b/controlnet_aux_local/segment_anything/modeling/__init__.py similarity index 100% rename from controlnet_aux/segment_anything/modeling/__init__.py rename to controlnet_aux_local/segment_anything/modeling/__init__.py diff --git a/controlnet_aux/segment_anything/modeling/common.py b/controlnet_aux_local/segment_anything/modeling/common.py similarity index 100% rename from controlnet_aux/segment_anything/modeling/common.py rename to controlnet_aux_local/segment_anything/modeling/common.py diff --git a/controlnet_aux/segment_anything/modeling/image_encoder.py b/controlnet_aux_local/segment_anything/modeling/image_encoder.py similarity index 100% rename from controlnet_aux/segment_anything/modeling/image_encoder.py rename to controlnet_aux_local/segment_anything/modeling/image_encoder.py diff --git a/controlnet_aux/segment_anything/modeling/mask_decoder.py b/controlnet_aux_local/segment_anything/modeling/mask_decoder.py similarity index 100% rename from controlnet_aux/segment_anything/modeling/mask_decoder.py rename to controlnet_aux_local/segment_anything/modeling/mask_decoder.py diff --git a/controlnet_aux/segment_anything/modeling/prompt_encoder.py b/controlnet_aux_local/segment_anything/modeling/prompt_encoder.py similarity index 100% rename from controlnet_aux/segment_anything/modeling/prompt_encoder.py rename to controlnet_aux_local/segment_anything/modeling/prompt_encoder.py diff --git a/controlnet_aux/segment_anything/modeling/sam.py b/controlnet_aux_local/segment_anything/modeling/sam.py similarity index 100% rename from controlnet_aux/segment_anything/modeling/sam.py rename to controlnet_aux_local/segment_anything/modeling/sam.py diff --git a/controlnet_aux/segment_anything/modeling/tiny_vit_sam.py b/controlnet_aux_local/segment_anything/modeling/tiny_vit_sam.py similarity index 100% rename from controlnet_aux/segment_anything/modeling/tiny_vit_sam.py rename to controlnet_aux_local/segment_anything/modeling/tiny_vit_sam.py diff --git a/controlnet_aux/segment_anything/modeling/transformer.py b/controlnet_aux_local/segment_anything/modeling/transformer.py similarity index 100% rename from controlnet_aux/segment_anything/modeling/transformer.py rename to controlnet_aux_local/segment_anything/modeling/transformer.py diff --git a/controlnet_aux/segment_anything/predictor.py b/controlnet_aux_local/segment_anything/predictor.py similarity index 100% rename from controlnet_aux/segment_anything/predictor.py rename to controlnet_aux_local/segment_anything/predictor.py diff --git a/controlnet_aux/segment_anything/utils/__init__.py b/controlnet_aux_local/segment_anything/utils/__init__.py similarity index 100% rename from controlnet_aux/segment_anything/utils/__init__.py rename to controlnet_aux_local/segment_anything/utils/__init__.py diff --git a/controlnet_aux/segment_anything/utils/amg.py b/controlnet_aux_local/segment_anything/utils/amg.py similarity index 100% rename from controlnet_aux/segment_anything/utils/amg.py rename to controlnet_aux_local/segment_anything/utils/amg.py diff --git a/controlnet_aux/segment_anything/utils/onnx.py b/controlnet_aux_local/segment_anything/utils/onnx.py similarity index 100% rename from controlnet_aux/segment_anything/utils/onnx.py rename to controlnet_aux_local/segment_anything/utils/onnx.py diff --git a/controlnet_aux/segment_anything/utils/transforms.py b/controlnet_aux_local/segment_anything/utils/transforms.py similarity index 100% rename from controlnet_aux/segment_anything/utils/transforms.py rename to controlnet_aux_local/segment_anything/utils/transforms.py diff --git a/controlnet_aux/shuffle/__init__.py b/controlnet_aux_local/shuffle/__init__.py similarity index 100% rename from controlnet_aux/shuffle/__init__.py rename to controlnet_aux_local/shuffle/__init__.py diff --git a/controlnet_aux/util.py b/controlnet_aux_local/util.py similarity index 100% rename from controlnet_aux/util.py rename to controlnet_aux_local/util.py diff --git a/controlnet_aux/zoe/__init__.py b/controlnet_aux_local/zoe/__init__.py similarity index 100% rename from controlnet_aux/zoe/__init__.py rename to controlnet_aux_local/zoe/__init__.py diff --git a/controlnet_aux/zoe/zoedepth/__init__.py b/controlnet_aux_local/zoe/zoedepth/__init__.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/__init__.py rename to controlnet_aux_local/zoe/zoedepth/__init__.py diff --git a/controlnet_aux/zoe/zoedepth/models/__init__.py b/controlnet_aux_local/zoe/zoedepth/models/__init__.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/__init__.py rename to controlnet_aux_local/zoe/zoedepth/models/__init__.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/__init__.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/__init__.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/__init__.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/__init__.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/__init__.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/__init__.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/__init__.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/__init__.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/hubconf.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/hubconf.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/hubconf.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/hubconf.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__init__.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/__init__.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/__init__.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/__init__.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__init__.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__init__.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__init__.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__init__.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/beit.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/beit.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/beit.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/beit.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/levit.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/levit.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/levit.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/levit.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/next_vit.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/next_vit.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/next_vit.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/next_vit.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin2.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin2.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin2.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin2.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin_common.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin_common.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin_common.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin_common.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/utils.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/utils.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/utils.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/utils.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/vit.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/vit.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/vit.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/vit.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/base_model.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/base_model.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/base_model.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/base_model.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/blocks.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/blocks.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/blocks.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/blocks.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/dpt_depth.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/dpt_depth.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/dpt_depth.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/dpt_depth.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/midas_net.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/midas_net.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/midas_net.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/midas_net.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/midas_net_custom.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/midas_net_custom.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/midas_net_custom.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/midas_net_custom.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/model_loader.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/model_loader.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/model_loader.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/model_loader.py diff --git a/controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/transforms.py b/controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/transforms.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/base_models/midas_repo/midas/transforms.py rename to controlnet_aux_local/zoe/zoedepth/models/base_models/midas_repo/midas/transforms.py diff --git a/controlnet_aux/zoe/zoedepth/models/builder.py b/controlnet_aux_local/zoe/zoedepth/models/builder.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/builder.py rename to controlnet_aux_local/zoe/zoedepth/models/builder.py diff --git a/controlnet_aux/zoe/zoedepth/models/depth_model.py b/controlnet_aux_local/zoe/zoedepth/models/depth_model.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/depth_model.py rename to controlnet_aux_local/zoe/zoedepth/models/depth_model.py diff --git a/controlnet_aux/zoe/zoedepth/models/layers/__init__.py b/controlnet_aux_local/zoe/zoedepth/models/layers/__init__.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/layers/__init__.py rename to controlnet_aux_local/zoe/zoedepth/models/layers/__init__.py diff --git a/controlnet_aux/zoe/zoedepth/models/layers/attractor.py b/controlnet_aux_local/zoe/zoedepth/models/layers/attractor.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/layers/attractor.py rename to controlnet_aux_local/zoe/zoedepth/models/layers/attractor.py diff --git a/controlnet_aux/zoe/zoedepth/models/layers/dist_layers.py b/controlnet_aux_local/zoe/zoedepth/models/layers/dist_layers.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/layers/dist_layers.py rename to controlnet_aux_local/zoe/zoedepth/models/layers/dist_layers.py diff --git a/controlnet_aux/zoe/zoedepth/models/layers/localbins_layers.py b/controlnet_aux_local/zoe/zoedepth/models/layers/localbins_layers.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/layers/localbins_layers.py rename to controlnet_aux_local/zoe/zoedepth/models/layers/localbins_layers.py diff --git a/controlnet_aux/zoe/zoedepth/models/layers/patch_transformer.py b/controlnet_aux_local/zoe/zoedepth/models/layers/patch_transformer.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/layers/patch_transformer.py rename to controlnet_aux_local/zoe/zoedepth/models/layers/patch_transformer.py diff --git a/controlnet_aux/zoe/zoedepth/models/model_io.py b/controlnet_aux_local/zoe/zoedepth/models/model_io.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/model_io.py rename to controlnet_aux_local/zoe/zoedepth/models/model_io.py diff --git a/controlnet_aux/zoe/zoedepth/models/zoedepth/__init__.py b/controlnet_aux_local/zoe/zoedepth/models/zoedepth/__init__.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/zoedepth/__init__.py rename to controlnet_aux_local/zoe/zoedepth/models/zoedepth/__init__.py diff --git a/controlnet_aux/zoe/zoedepth/models/zoedepth/config_zoedepth.json b/controlnet_aux_local/zoe/zoedepth/models/zoedepth/config_zoedepth.json similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/zoedepth/config_zoedepth.json rename to controlnet_aux_local/zoe/zoedepth/models/zoedepth/config_zoedepth.json diff --git a/controlnet_aux/zoe/zoedepth/models/zoedepth/config_zoedepth_kitti.json b/controlnet_aux_local/zoe/zoedepth/models/zoedepth/config_zoedepth_kitti.json similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/zoedepth/config_zoedepth_kitti.json rename to controlnet_aux_local/zoe/zoedepth/models/zoedepth/config_zoedepth_kitti.json diff --git a/controlnet_aux/zoe/zoedepth/models/zoedepth/zoedepth_v1.py b/controlnet_aux_local/zoe/zoedepth/models/zoedepth/zoedepth_v1.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/zoedepth/zoedepth_v1.py rename to controlnet_aux_local/zoe/zoedepth/models/zoedepth/zoedepth_v1.py diff --git a/controlnet_aux/zoe/zoedepth/models/zoedepth_nk/__init__.py b/controlnet_aux_local/zoe/zoedepth/models/zoedepth_nk/__init__.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/zoedepth_nk/__init__.py rename to controlnet_aux_local/zoe/zoedepth/models/zoedepth_nk/__init__.py diff --git a/controlnet_aux/zoe/zoedepth/models/zoedepth_nk/config_zoedepth_nk.json b/controlnet_aux_local/zoe/zoedepth/models/zoedepth_nk/config_zoedepth_nk.json similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/zoedepth_nk/config_zoedepth_nk.json rename to controlnet_aux_local/zoe/zoedepth/models/zoedepth_nk/config_zoedepth_nk.json diff --git a/controlnet_aux/zoe/zoedepth/models/zoedepth_nk/zoedepth_nk_v1.py b/controlnet_aux_local/zoe/zoedepth/models/zoedepth_nk/zoedepth_nk_v1.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/models/zoedepth_nk/zoedepth_nk_v1.py rename to controlnet_aux_local/zoe/zoedepth/models/zoedepth_nk/zoedepth_nk_v1.py diff --git a/controlnet_aux/zoe/zoedepth/utils/__init__.py b/controlnet_aux_local/zoe/zoedepth/utils/__init__.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/utils/__init__.py rename to controlnet_aux_local/zoe/zoedepth/utils/__init__.py diff --git a/controlnet_aux/zoe/zoedepth/utils/arg_utils.py b/controlnet_aux_local/zoe/zoedepth/utils/arg_utils.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/utils/arg_utils.py rename to controlnet_aux_local/zoe/zoedepth/utils/arg_utils.py diff --git a/controlnet_aux/zoe/zoedepth/utils/config.py b/controlnet_aux_local/zoe/zoedepth/utils/config.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/utils/config.py rename to controlnet_aux_local/zoe/zoedepth/utils/config.py diff --git a/controlnet_aux/zoe/zoedepth/utils/easydict/__init__.py b/controlnet_aux_local/zoe/zoedepth/utils/easydict/__init__.py similarity index 100% rename from controlnet_aux/zoe/zoedepth/utils/easydict/__init__.py rename to controlnet_aux_local/zoe/zoedepth/utils/easydict/__init__.py diff --git a/local_app.py b/local_app.py index 4ba184fc1d5afda5b435238e573ccb458e14fefb..692830263bd9e69c6512b11a5a4771b397cbe1ce 100644 --- a/local_app.py +++ b/local_app.py @@ -1,455 +1,459 @@ -prod = True -port = 8080 -show_options = False -if prod: - port = 8081 - # show_options = False - -import os -import gc -import random -import time -import gradio as gr -import numpy as np -# import imageio -import torch -from PIL import Image -from diffusers import ( - ControlNetModel, - DPMSolverMultistepScheduler, - StableDiffusionControlNetPipeline, - AutoencoderKL, -) -from diffusers.models.attention_processor import AttnProcessor2_0 -from local_preprocess import Preprocessor -MAX_SEED = np.iinfo(np.int32).max -API_KEY = os.environ.get("API_KEY", None) - -print("CUDA version:", torch.version.cuda) -print("loading pipe") -compiled = False - -preprocessor = Preprocessor() -preprocessor.load("NormalBae") - -if gr.NO_RELOAD: - # torch.cuda.max_memory_allocated(device="cuda") - - # Controlnet Normal - model_id = "lllyasviel/control_v11p_sd15_normalbae" - print("initializing controlnet") - controlnet = ControlNetModel.from_pretrained( - model_id, - torch_dtype=torch.float16, - attn_implementation="flash_attention_2", - ).to("cuda") - - # Scheduler - scheduler = DPMSolverMultistepScheduler.from_pretrained( - "stabilityai/stable-diffusion-xl-base-1.0", - subfolder="scheduler", - use_karras_sigmas=True, - # final_sigmas_type="sigma_min", - algorithm_type="sde-dpmsolver++", - # prediction_type="epsilon", - # thresholding=False, - denoise_final=True, - device_map="cuda", - attn_implementation="flash_attention_2", - ) - - # Stable Diffusion Pipeline URL - # base_model_url = "https://huggingface.co/broyang/hentaidigitalart_v20/blob/main/realcartoon3d_v15.safetensors" - base_model_url = "https://huggingface.co/Lykon/AbsoluteReality/blob/main/AbsoluteReality_1.8.1_pruned.safetensors" - base_model_id = "Lykon/absolute-reality-1.81" - vae_url = "https://huggingface.co/stabilityai/sd-vae-ft-mse-original/blob/main/vae-ft-mse-840000-ema-pruned.safetensors" - - vae = AutoencoderKL.from_single_file(vae_url, torch_dtype=torch.float16).to("cuda") - vae.to(memory_format=torch.channels_last) - - pipe = StableDiffusionControlNetPipeline.from_pretrained( - base_model_id, - safety_checker=None, - controlnet=controlnet, - scheduler=scheduler, - vae=vae, - torch_dtype=torch.float16, - ).to("cuda") - - # pipe = StableDiffusionControlNetPipeline.from_single_file( - # base_model_url, - # controlnet=controlnet, - # scheduler=scheduler, - # vae=vae, - # torch_dtype=torch.float16, - # ) - - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="EasyNegativeV2.safetensors", token="EasyNegativeV2",) - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="badhandv4.pt", token="badhandv4") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="fcNeg-neg.pt", token="fcNeg-neg") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Ahegao.pt", token="HDA_Ahegao") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Bondage.pt", token="HDA_Bondage") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_pet_play.pt", token="HDA_pet_play") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_unconventional maid.pt", token="HDA_unconventional_maid") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_NakedHoodie.pt", token="HDA_NakedHoodie") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_NunDress.pt", token="HDA_NunDress") - pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Shibari.pt", token="HDA_Shibari") - pipe.to("cuda") - - # experimental speedup? - # pipe.compile() - # torch.cuda.empty_cache() - # gc.collect() - print("---------------Loaded controlnet pipeline---------------") - - # @spaces.GPU(duration=12) - # pipe.enable_xformers_memory_efficient_attention() - # pipe.unet = torch.compile(pipe.unet, mode="reduce-overhead", fullgraph=True) - # pipe.unet.set_attn_processor(AttnProcessor2_0()) - torch.cuda.empty_cache() - gc.collect() - print("Model Compiled!") - -def randomize_seed_fn(seed: int, randomize_seed: bool) -> int: - if randomize_seed: - seed = random.randint(0, MAX_SEED) - return seed - -def get_additional_prompt(): - prompt = "hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" - top = ["tank top", "blouse", "button up shirt", "sweater", "corset top"] - bottom = ["short skirt", "athletic shorts", "jean shorts", "pleated skirt", "short skirt", "leggings", "high-waisted shorts"] - accessory = ["knee-high boots", "gloves", "Thigh-high stockings", "Garter belt", "choker", "necklace", "headband", "headphones"] - return f"{prompt}, {random.choice(top)}, {random.choice(bottom)}, {random.choice(accessory)}, score_9" - # outfit = ["schoolgirl outfit", "playboy outfit", "red dress", "gala dress", "cheerleader outfit", "nurse outfit", "Kimono"] - -def get_prompt(prompt, additional_prompt): - interior = "design-style interior designed (interior space), captured with a DSLR camera using f/10 aperture, 1/60 sec shutter speed, ISO 400, 20mm focal length, tungsten white balance, (sharp focus), professional photography, high-resolution, 8k, Pulitzer Prize-winning" - default = "hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" - default2 = f"professional 3d model {prompt},octane render,highly detailed,volumetric,dramatic lighting,hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" - randomize = get_additional_prompt() - # nude = "NSFW,((nude)),medium bare breasts,hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" - # bodypaint = "((fully naked with no clothes)),nude naked seethroughxray,invisiblebodypaint,rating_newd,NSFW" - lab_girl = "hyperrealistic photography, extremely detailed, shy assistant wearing minidress boots and gloves, laboratory background, score_9, 1girl" - pet_play = "hyperrealistic photography, extremely detailed, playful, blush, glasses, collar, score_9, HDA_pet_play" - bondage = "hyperrealistic photography, extremely detailed, submissive, glasses, score_9, HDA_Bondage" - # ahegao = "((invisible clothing)), hyperrealistic photography,exposed vagina,sexy,nsfw,HDA_Ahegao" - ahegao2 = "(invisiblebodypaint),rating_newd,HDA_Ahegao" - athleisure = "hyperrealistic photography, extremely detailed, 1girl athlete, exhausted embarrassed sweaty,outdoors, ((athleisure clothing)), score_9" - atompunk = "((atompunk world)), hyperrealistic photography, extremely detailed, short hair, bodysuit, glasses, neon cyberpunk background, score_9" - maid = "hyperrealistic photography, extremely detailed, shy, blushing, score_9, pastel background, HDA_unconventional_maid" - nundress = "hyperrealistic photography, extremely detailed, shy, blushing, fantasy background, score_9, HDA_NunDress" - naked_hoodie = "hyperrealistic photography, extremely detailed, medium hair, cityscape, (neon lights), score_9, HDA_NakedHoodie" - abg = "(1girl, asian body covered in words, words on body, tattoos of (words) on body),(masterpiece, best quality),medium breasts,(intricate details),unity 8k wallpaper,ultra detailed,(pastel colors),beautiful and aesthetic,see-through (clothes),detailed,solo" - # shibari = "extremely detailed, hyperrealistic photography, earrings, blushing, lace choker, tattoo, medium hair, score_9, HDA_Shibari" - shibari2 = "octane render, highly detailed, volumetric, HDA_Shibari" - - if prompt == "": - girls = [randomize, pet_play, bondage, lab_girl, athleisure, atompunk, maid, nundress, naked_hoodie, abg, shibari2, ahegao2] - prompts_nsfw = [abg, shibari2, ahegao2] - prompt = f"{random.choice(girls)}" - prompt = f"boho chic" - # print(f"-------------{preset}-------------") - else: - prompt = f"Photo from Pinterest of {prompt} {interior}" - # prompt = default2 - return f"{prompt} f{additional_prompt}" - -style_list = [ - { - "name": "None", - "prompt": "" - }, - { - "name": "Minimalistic", - "prompt": "Minimalistic" - }, - { - "name": "Boho Chic", - "prompt": "boho chic" - }, - { - "name": "Saudi Prince Gold", - "prompt": "saudi prince gold", - }, - { - "name": "Modern Farmhouse", - "prompt": "modern farmhouse", - }, - { - "name": "Neoclassical", - "prompt": "Neoclassical", - }, - { - "name": "Eclectic", - "prompt": "Eclectic", - }, - { - "name": "Parisian White", - "prompt": "Parisian White", - }, - { - "name": "Hollywood Glam", - "prompt": "Hollywood Glam", - }, - { - "name": "Scandinavian", - "prompt": "Scandinavian", - }, - { - "name": "Japanese", - "prompt": "Japanese", - }, - { - "name": "Texas Cowboy", - "prompt": "Texas Cowboy", - }, - { - "name": "Midcentury Modern", - "prompt": "Midcentury Modern", - }, - { - "name": "Beach", - "prompt": "Beach", - }, -] - -styles = {k["name"]: (k["prompt"]) for k in style_list} -STYLE_NAMES = list(styles.keys()) - -def apply_style(style_name): - if style_name in styles: - p = styles.get(style_name, "boho chic") - return p - - -css = """ -h1 { - text-align: center; - display:block; -} -h2 { - text-align: center; - display:block; -} -h3 { - text-align: center; - display:block; -} -.gradio-container{max-width: 1200px !important} -footer {visibility: hidden} -""" -with gr.Blocks(theme="bethecloud/storj_theme", css=css) as demo: - ############################################################################# - with gr.Row(): - with gr.Accordion("Advanced options", open=show_options, visible=show_options): - num_images = gr.Slider( - label="Images", minimum=1, maximum=4, value=1, step=1 - ) - image_resolution = gr.Slider( - label="Image resolution", - minimum=256, - maximum=1024, - value=512, - step=256, - ) - preprocess_resolution = gr.Slider( - label="Preprocess resolution", - minimum=128, - maximum=1024, - value=512, - step=1, - ) - num_steps = gr.Slider( - label="Number of steps", minimum=1, maximum=100, value=15, step=1 - ) # 20/4.5 or 12 without lora, 4 with lora - guidance_scale = gr.Slider( - label="Guidance scale", minimum=0.1, maximum=30.0, value=5.5, step=0.1 - ) # 5 without lora, 2 with lora - seed = gr.Slider(label="Seed", minimum=0, maximum=MAX_SEED, step=1, value=0) - randomize_seed = gr.Checkbox(label="Randomize seed", value=True) - a_prompt = gr.Textbox( - label="Additional prompt", - value = "design-style interior designed (interior space), captured with a DSLR camera using f/10 aperture, 1/60 sec shutter speed, ISO 400, 20mm focal length, tungsten white balance, (sharp focus), professional photography, high-resolution, 8k, Pulitzer Prize-winning" - ) - n_prompt = gr.Textbox( - label="Negative prompt", - value="EasyNegativeV2, fcNeg, (badhandv4:1.4), (worst quality, low quality, bad quality, normal quality:2.0), (bad hands, missing fingers, extra fingers:2.0)", - ) - ############################################################################# - # input text - with gr.Row(): - gr.Text(label="Interior Design Style Examples", value="Eclectic, Maximalist, Bohemian, Scandinavian, Minimalist, Rustic, Modern Farmhouse, Contemporary, Luxury, Airbnb, Boho Chic, Midcentury Modern, Art Deco, Zen, Beach, Neoclassical, Industrial, Biophilic, Eco-friendly, Hollywood Glam, Parisian White, Saudi Prince Gold, French Country, Monster Energy Drink, Cyberpunk, Vaporwave, Baroque, etc.\n\nPro tip: add a color to customize it! You can also describe the furniture type.") - with gr.Column(): - prompt = gr.Textbox( - label="Custom Prompt", - placeholder="boho chic", - ) - with gr.Row(visible=True): - style_selection = gr.Radio( - show_label=True, - container=True, - interactive=True, - choices=STYLE_NAMES, - value="None", - label="Design Styles", - ) - # input image - with gr.Row(): - with gr.Column(): - image = gr.Image( - label="Input", - sources=["upload"], - show_label=True, - mirror_webcam=True, - format="webp", - ) - # run button - with gr.Column(): - run_button = gr.Button(value="Use this one", size=["lg"], visible=False) - # output image - with gr.Column(): - result = gr.Image( - label="Output", - interactive=False, - format="webp", - show_share_button= False, - ) - # Use this image button - with gr.Column(): - use_ai_button = gr.Button(value="Use this one", size=["lg"], visible=False) - config = [ - image, - style_selection, - prompt, - a_prompt, - n_prompt, - num_images, - image_resolution, - preprocess_resolution, - num_steps, - guidance_scale, - seed, - ] - - with gr.Row(): - helper_text = gr.Markdown("## Tap and hold (on mobile) to save the image.", visible=True) - - # image processing - @gr.on(triggers=[image.upload, prompt.submit, run_button.click], inputs=config, outputs=result, show_progress="minimal") - def auto_process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed, progress=gr.Progress(track_tqdm=True)): - return process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed) - - # AI Image Processing - @gr.on(triggers=[use_ai_button.click], inputs=config, outputs=result, show_progress="minimal") - def submit(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed, progress=gr.Progress(track_tqdm=True)): - return process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed) - - # Change input to result - @gr.on(triggers=[use_ai_button.click], inputs=None, outputs=image, show_progress="hidden") - def update_input(): - try: - print("Updating image to AI Temp Image") - ai_temp_image = Image.open("temp_image.jpg") - return ai_temp_image - except FileNotFoundError: - print("No AI Image Available") - return None - - # Turn off buttons when processing - @gr.on(triggers=[image.upload, use_ai_button.click, run_button.click], inputs=None, outputs=[run_button, use_ai_button], show_progress="hidden") - def turn_buttons_off(): - return gr.update(visible=False), gr.update(visible=False) - - # Turn on buttons when processing is complete - @gr.on(triggers=[result.change], inputs=None, outputs=[use_ai_button, run_button], show_progress="hidden") - def turn_buttons_on(): - return gr.update(visible=True), gr.update(visible=True) - -# @spaces.GPU(duration=12) -@torch.inference_mode() -def process_image( - image, - style_selection, - prompt, - a_prompt, - n_prompt, - num_images, - image_resolution, - preprocess_resolution, - num_steps, - guidance_scale, - seed, - progress=gr.Progress(track_tqdm=True) -): - torch.cuda.synchronize() - preprocess_start = time.time() - print("processing image") - preprocessor.load("NormalBae") - # preprocessor.load("Canny") #20 steps, 9 guidance, 512, 512 - - global compiled - if not compiled: - print("Not Compiled") - compiled = True - - seed = random.randint(0, MAX_SEED) - generator = torch.cuda.manual_seed(seed) - control_image = preprocessor( - image=image, - image_resolution=image_resolution, - detect_resolution=preprocess_resolution, - ) - preprocess_time = time.time() - preprocess_start - if style_selection is not None or style_selection != "None": - prompt = "Photo from Pinterest of " + apply_style(style_selection) + " " + prompt + " " + a_prompt - else: - prompt=str(get_prompt(prompt, a_prompt)) - negative_prompt=str(n_prompt) - print(prompt) - start = time.time() - results = pipe( - prompt=prompt, - negative_prompt=negative_prompt, - guidance_scale=guidance_scale, - num_images_per_prompt=num_images, - num_inference_steps=num_steps, - generator=generator, - image=control_image, - ).images[0] - torch.cuda.synchronize() - torch.cuda.empty_cache() - print(f"\n-------------------------Preprocess done in: {preprocess_time:.2f} seconds-------------------------") - print(f"\n-------------------------Inference done in: {time.time() - start:.2f} seconds-------------------------") - - # timestamp = int(time.time()) - #if not os.path.exists("./outputs"): - # os.makedirs("./outputs") - # img_path = f"./{timestamp}.jpg" - # results_path = f"./{timestamp}_out_{prompt}.jpg" - # imageio.imsave(img_path, image) - # results.save(results_path) - results.save("temp_image.jpg") - - # api.upload_file( - # path_or_fileobj=img_path, - # path_in_repo=img_path, - # repo_id="broyang/anime-ai-outputs", - # repo_type="dataset", - # token=API_KEY, - # run_as_future=True, - # ) - # api.upload_file( - # path_or_fileobj=results_path, - # path_in_repo=results_path, - # repo_id="broyang/anime-ai-outputs", - # repo_type="dataset", - # token=API_KEY, - # run_as_future=True, - # ) - - return results -if prod: - demo.queue(max_size=20).launch(server_name="localhost", server_port=port) -else: +prod = True +port = 8080 +show_options = False +if prod: + port = 8081 + # show_options = False + +import os +import gc +import random +import time +import gradio as gr +import numpy as np +# import imageio +import torch +from PIL import Image +from diffusers import ( + ControlNetModel, + DPMSolverMultistepScheduler, + StableDiffusionControlNetPipeline, + AutoencoderKL, +) +from diffusers.models.attention_processor import AttnProcessor2_0 +from local_preprocess import Preprocessor +MAX_SEED = np.iinfo(np.int32).max +API_KEY = os.environ.get("API_KEY", None) + +print("CUDA version:", torch.version.cuda) +print("loading pipe") +compiled = False + +preprocessor = Preprocessor() +preprocessor.load("NormalBae") + +if gr.NO_RELOAD: + # torch.cuda.max_memory_allocated(device="cuda") + + # Controlnet Normal + model_id = "lllyasviel/control_v11p_sd15_normalbae" + print("initializing controlnet") + controlnet = ControlNetModel.from_pretrained( + model_id, + torch_dtype=torch.float16, + attn_implementation="flash_attention_2", + ).to("cuda") + + # Scheduler + scheduler = DPMSolverMultistepScheduler.from_pretrained( + "stabilityai/stable-diffusion-xl-base-1.0", + subfolder="scheduler", + use_karras_sigmas=True, + # final_sigmas_type="sigma_min", + algorithm_type="sde-dpmsolver++", + # prediction_type="epsilon", + # thresholding=False, + denoise_final=True, + device_map="cuda", + attn_implementation="flash_attention_2", + ) + + # Stable Diffusion Pipeline URL + # base_model_url = "https://huggingface.co/broyang/hentaidigitalart_v20/blob/main/realcartoon3d_v15.safetensors" + base_model_url = "https://huggingface.co/Lykon/AbsoluteReality/blob/main/AbsoluteReality_1.8.1_pruned.safetensors" + base_model_id = "Lykon/absolute-reality-1.81" + vae_url = "https://huggingface.co/stabilityai/sd-vae-ft-mse-original/blob/main/vae-ft-mse-840000-ema-pruned.safetensors" + + vae = AutoencoderKL.from_single_file(vae_url, torch_dtype=torch.float16).to("cuda") + vae.to(memory_format=torch.channels_last) + + pipe = StableDiffusionControlNetPipeline.from_pretrained( + base_model_id, + safety_checker=None, + controlnet=controlnet, + scheduler=scheduler, + vae=vae, + torch_dtype=torch.float16, + ).to("cuda") + + # pipe = StableDiffusionControlNetPipeline.from_single_file( + # base_model_url, + # controlnet=controlnet, + # scheduler=scheduler, + # vae=vae, + # torch_dtype=torch.float16, + # ) + + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="EasyNegativeV2.safetensors", token="EasyNegativeV2",) + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="badhandv4.pt", token="badhandv4") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="fcNeg-neg.pt", token="fcNeg-neg") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Ahegao.pt", token="HDA_Ahegao") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Bondage.pt", token="HDA_Bondage") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_pet_play.pt", token="HDA_pet_play") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_unconventional maid.pt", token="HDA_unconventional_maid") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_NakedHoodie.pt", token="HDA_NakedHoodie") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_NunDress.pt", token="HDA_NunDress") + pipe.load_textual_inversion("broyang/hentaidigitalart_v20", weight_name="HDA_Shibari.pt", token="HDA_Shibari") + pipe.to("cuda") + + # experimental speedup? + # pipe.compile() + # torch.cuda.empty_cache() + # gc.collect() + print("---------------Loaded controlnet pipeline---------------") + + # @spaces.GPU(duration=12) + # pipe.enable_xformers_memory_efficient_attention() + # pipe.unet = torch.compile(pipe.unet, mode="reduce-overhead", fullgraph=True) + # pipe.unet.set_attn_processor(AttnProcessor2_0()) + torch.cuda.empty_cache() + gc.collect() + print("Model Compiled!") + +def randomize_seed_fn(seed: int, randomize_seed: bool) -> int: + if randomize_seed: + seed = random.randint(0, MAX_SEED) + return seed + +def get_additional_prompt(): + prompt = "hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" + top = ["tank top", "blouse", "button up shirt", "sweater", "corset top"] + bottom = ["short skirt", "athletic shorts", "jean shorts", "pleated skirt", "short skirt", "leggings", "high-waisted shorts"] + accessory = ["knee-high boots", "gloves", "Thigh-high stockings", "Garter belt", "choker", "necklace", "headband", "headphones"] + return f"{prompt}, {random.choice(top)}, {random.choice(bottom)}, {random.choice(accessory)}, score_9" + # outfit = ["schoolgirl outfit", "playboy outfit", "red dress", "gala dress", "cheerleader outfit", "nurse outfit", "Kimono"] + +def get_prompt(prompt, additional_prompt): + interior = "design-style interior designed (interior space), captured with a DSLR camera using f/10 aperture, 1/60 sec shutter speed, ISO 400, 20mm focal length, tungsten white balance, (sharp focus), professional photography, high-resolution, 8k, Pulitzer Prize-winning" + default = "hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" + default2 = f"professional 3d model {prompt},octane render,highly detailed,volumetric,dramatic lighting,hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" + randomize = get_additional_prompt() + # nude = "NSFW,((nude)),medium bare breasts,hyperrealistic photography,extremely detailed,(intricate details),unity 8k wallpaper,ultra detailed" + # bodypaint = "((fully naked with no clothes)),nude naked seethroughxray,invisiblebodypaint,rating_newd,NSFW" + lab_girl = "hyperrealistic photography, extremely detailed, shy assistant wearing minidress boots and gloves, laboratory background, score_9, 1girl" + pet_play = "hyperrealistic photography, extremely detailed, playful, blush, glasses, collar, score_9, HDA_pet_play" + bondage = "hyperrealistic photography, extremely detailed, submissive, glasses, score_9, HDA_Bondage" + # ahegao = "((invisible clothing)), hyperrealistic photography,exposed vagina,sexy,nsfw,HDA_Ahegao" + ahegao2 = "(invisiblebodypaint),rating_newd,HDA_Ahegao" + athleisure = "hyperrealistic photography, extremely detailed, 1girl athlete, exhausted embarrassed sweaty,outdoors, ((athleisure clothing)), score_9" + atompunk = "((atompunk world)), hyperrealistic photography, extremely detailed, short hair, bodysuit, glasses, neon cyberpunk background, score_9" + maid = "hyperrealistic photography, extremely detailed, shy, blushing, score_9, pastel background, HDA_unconventional_maid" + nundress = "hyperrealistic photography, extremely detailed, shy, blushing, fantasy background, score_9, HDA_NunDress" + naked_hoodie = "hyperrealistic photography, extremely detailed, medium hair, cityscape, (neon lights), score_9, HDA_NakedHoodie" + abg = "(1girl, asian body covered in words, words on body, tattoos of (words) on body),(masterpiece, best quality),medium breasts,(intricate details),unity 8k wallpaper,ultra detailed,(pastel colors),beautiful and aesthetic,see-through (clothes),detailed,solo" + # shibari = "extremely detailed, hyperrealistic photography, earrings, blushing, lace choker, tattoo, medium hair, score_9, HDA_Shibari" + shibari2 = "octane render, highly detailed, volumetric, HDA_Shibari" + + if prompt == "": + girls = [randomize, pet_play, bondage, lab_girl, athleisure, atompunk, maid, nundress, naked_hoodie, abg, shibari2, ahegao2] + prompts_nsfw = [abg, shibari2, ahegao2] + prompt = f"{random.choice(girls)}" + prompt = f"boho chic" + # print(f"-------------{preset}-------------") + else: + prompt = f"Photo from Pinterest of {prompt} {interior}" + # prompt = default2 + return f"{prompt} f{additional_prompt}" + +style_list = [ + { + "name": "None", + "prompt": "" + }, + { + "name": "Minimalistic", + "prompt": "Minimalistic" + }, + { + "name": "Boho Chic", + "prompt": "boho chic" + }, + { + "name": "Saudi Prince Gold", + "prompt": "saudi prince gold", + }, + { + "name": "Modern Farmhouse", + "prompt": "modern farmhouse", + }, + { + "name": "Neoclassical", + "prompt": "Neoclassical", + }, + { + "name": "Eclectic", + "prompt": "Eclectic", + }, + { + "name": "Parisian White", + "prompt": "Parisian White", + }, + { + "name": "Hollywood Glam", + "prompt": "Hollywood Glam", + }, + { + "name": "Scandinavian", + "prompt": "Scandinavian", + }, + { + "name": "Japanese", + "prompt": "Japanese", + }, + { + "name": "Texas Cowboy", + "prompt": "Texas Cowboy", + }, + { + "name": "Midcentury Modern", + "prompt": "Midcentury Modern", + }, + { + "name": "Beach", + "prompt": "Beach", + }, + { + "name": "The Matrix", + "prompt": "Neon (atompunk world) retro cyberpunk background", + }, +] + +styles = {k["name"]: (k["prompt"]) for k in style_list} +STYLE_NAMES = list(styles.keys()) + +def apply_style(style_name): + if style_name in styles: + p = styles.get(style_name, "boho chic") + return p + + +css = """ +h1 { + text-align: center; + display:block; +} +h2 { + text-align: center; + display:block; +} +h3 { + text-align: center; + display:block; +} +.gradio-container{max-width: 1200px !important} +footer {visibility: hidden} +""" +with gr.Blocks(theme="bethecloud/storj_theme", css=css) as demo: + ############################################################################# + with gr.Row(): + with gr.Accordion("Advanced options", open=show_options, visible=show_options): + num_images = gr.Slider( + label="Images", minimum=1, maximum=4, value=1, step=1 + ) + image_resolution = gr.Slider( + label="Image resolution", + minimum=256, + maximum=1024, + value=512, + step=256, + ) + preprocess_resolution = gr.Slider( + label="Preprocess resolution", + minimum=128, + maximum=1024, + value=512, + step=1, + ) + num_steps = gr.Slider( + label="Number of steps", minimum=1, maximum=100, value=15, step=1 + ) # 20/4.5 or 12 without lora, 4 with lora + guidance_scale = gr.Slider( + label="Guidance scale", minimum=0.1, maximum=30.0, value=5.5, step=0.1 + ) # 5 without lora, 2 with lora + seed = gr.Slider(label="Seed", minimum=0, maximum=MAX_SEED, step=1, value=0) + randomize_seed = gr.Checkbox(label="Randomize seed", value=True) + a_prompt = gr.Textbox( + label="Additional prompt", + value = "design-style interior designed (interior space), captured with a DSLR camera using f/10 aperture, 1/60 sec shutter speed, ISO 400, 20mm focal length, tungsten white balance, (sharp focus), professional photography, high-resolution, 8k, Pulitzer Prize-winning" + ) + n_prompt = gr.Textbox( + label="Negative prompt", + value="EasyNegativeV2, fcNeg, (badhandv4:1.4), (worst quality, low quality, bad quality, normal quality:2.0), (bad hands, missing fingers, extra fingers:2.0)", + ) + ############################################################################# + # input text + with gr.Row(): + gr.Text(label="Interior Design Style Examples", value="Eclectic, Maximalist, Bohemian, Scandinavian, Minimalist, Rustic, Modern Farmhouse, Contemporary, Luxury, Airbnb, Boho Chic, Midcentury Modern, Art Deco, Zen, Beach, Neoclassical, Industrial, Biophilic, Eco-friendly, Hollywood Glam, Parisian White, Saudi Prince Gold, French Country, Monster Energy Drink, Cyberpunk, Vaporwave, Baroque, etc.\n\nPro tip: add a color to customize it! You can also describe the furniture type.") + with gr.Column(): + prompt = gr.Textbox( + label="Custom Prompt", + placeholder="boho chic", + ) + with gr.Row(visible=True): + style_selection = gr.Radio( + show_label=True, + container=True, + interactive=True, + choices=STYLE_NAMES, + value="None", + label="Design Styles", + ) + # input image + with gr.Row(): + with gr.Column(): + image = gr.Image( + label="Input", + sources=["upload"], + show_label=True, + mirror_webcam=True, + format="webp", + ) + # run button + with gr.Column(): + run_button = gr.Button(value="Use this one", size=["lg"], visible=False) + # output image + with gr.Column(): + result = gr.Image( + label="Output", + interactive=False, + format="webp", + show_share_button= False, + ) + # Use this image button + with gr.Column(): + use_ai_button = gr.Button(value="Use this one", size=["lg"], visible=False) + config = [ + image, + style_selection, + prompt, + a_prompt, + n_prompt, + num_images, + image_resolution, + preprocess_resolution, + num_steps, + guidance_scale, + seed, + ] + + with gr.Row(): + helper_text = gr.Markdown("## Tap and hold (on mobile) to save the image.", visible=True) + + # image processing + @gr.on(triggers=[image.upload, prompt.submit, run_button.click], inputs=config, outputs=result, show_progress="minimal") + def auto_process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed, progress=gr.Progress(track_tqdm=True)): + return process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed) + + # AI Image Processing + @gr.on(triggers=[use_ai_button.click], inputs=config, outputs=result, show_progress="minimal") + def submit(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed, progress=gr.Progress(track_tqdm=True)): + return process_image(image, style_selection, prompt, a_prompt, n_prompt, num_images, image_resolution, preprocess_resolution, num_steps, guidance_scale, seed) + + # Change input to result + @gr.on(triggers=[use_ai_button.click], inputs=None, outputs=image, show_progress="hidden") + def update_input(): + try: + print("Updating image to AI Temp Image") + ai_temp_image = Image.open("temp_image.jpg") + return ai_temp_image + except FileNotFoundError: + print("No AI Image Available") + return None + + # Turn off buttons when processing + @gr.on(triggers=[image.upload, use_ai_button.click, run_button.click], inputs=None, outputs=[run_button, use_ai_button], show_progress="hidden") + def turn_buttons_off(): + return gr.update(visible=False), gr.update(visible=False) + + # Turn on buttons when processing is complete + @gr.on(triggers=[result.change], inputs=None, outputs=[use_ai_button, run_button], show_progress="hidden") + def turn_buttons_on(): + return gr.update(visible=True), gr.update(visible=True) + +# @spaces.GPU(duration=12) +@torch.inference_mode() +def process_image( + image, + style_selection, + prompt, + a_prompt, + n_prompt, + num_images, + image_resolution, + preprocess_resolution, + num_steps, + guidance_scale, + seed, + progress=gr.Progress(track_tqdm=True) +): + torch.cuda.synchronize() + preprocess_start = time.time() + print("processing image") + preprocessor.load("NormalBae") + # preprocessor.load("Canny") #20 steps, 9 guidance, 512, 512 + + global compiled + if not compiled: + print("Not Compiled") + compiled = True + + seed = random.randint(0, MAX_SEED) + generator = torch.cuda.manual_seed(seed) + control_image = preprocessor( + image=image, + image_resolution=image_resolution, + detect_resolution=preprocess_resolution, + ) + preprocess_time = time.time() - preprocess_start + if style_selection is not None or style_selection != "None": + prompt = "Photo from Pinterest of " + apply_style(style_selection) + " " + prompt + " " + a_prompt + else: + prompt=str(get_prompt(prompt, a_prompt)) + negative_prompt=str(n_prompt) + print(prompt) + start = time.time() + results = pipe( + prompt=prompt, + negative_prompt=negative_prompt, + guidance_scale=guidance_scale, + num_images_per_prompt=num_images, + num_inference_steps=num_steps, + generator=generator, + image=control_image, + ).images[0] + torch.cuda.synchronize() + torch.cuda.empty_cache() + print(f"\n-------------------------Preprocess done in: {preprocess_time:.2f} seconds-------------------------") + print(f"\n-------------------------Inference done in: {time.time() - start:.2f} seconds-------------------------") + + # timestamp = int(time.time()) + #if not os.path.exists("./outputs"): + # os.makedirs("./outputs") + # img_path = f"./{timestamp}.jpg" + # results_path = f"./{timestamp}_out_{prompt}.jpg" + # imageio.imsave(img_path, image) + # results.save(results_path) + results.save("temp_image.jpg") + + # api.upload_file( + # path_or_fileobj=img_path, + # path_in_repo=img_path, + # repo_id="broyang/anime-ai-outputs", + # repo_type="dataset", + # token=API_KEY, + # run_as_future=True, + # ) + # api.upload_file( + # path_or_fileobj=results_path, + # path_in_repo=results_path, + # repo_id="broyang/anime-ai-outputs", + # repo_type="dataset", + # token=API_KEY, + # run_as_future=True, + # ) + + return results +if prod: + demo.queue(max_size=20).launch(server_name="localhost", server_port=port) +else: demo.queue(api_open=False).launch(show_api=False) \ No newline at end of file diff --git a/local_preprocess.py b/local_preprocess.py index bb8aa77148dbef95f711d38422b53d66a1e95d26..46f8c3d597fa2a10a96bb505583b74a5e3b6103f 100644 --- a/local_preprocess.py +++ b/local_preprocess.py @@ -1,69 +1,69 @@ -# import numpy as np -import PIL.Image -import torch -import gc -# from controlnet_aux_local import NormalBaeDetector#, CannyDetector -from controlnet_aux import NormalBaeDetector - -# from controlnet_aux.util import HWC3 -# import cv2 -# from cv_utils import resize_image - -class Preprocessor: - MODEL_ID = "lllyasviel/Annotators" - - # def resize_image(input_image, resolution, interpolation=None): - # H, W, C = input_image.shape - # H = float(H) - # W = float(W) - # k = float(resolution) / max(H, W) - # H *= k - # W *= k - # H = int(np.round(H / 64.0)) * 64 - # W = int(np.round(W / 64.0)) * 64 - # if interpolation is None: - # interpolation = cv2.INTER_LANCZOS4 if k > 1 else cv2.INTER_AREA - # img = cv2.resize(input_image, (W, H), interpolation=interpolation) - # return img - - - def __init__(self): - self.model = None - self.name = "" - - def load(self, name: str) -> None: - if name == self.name: - return - elif name == "NormalBae": - print("Loading NormalBae") - self.model = NormalBaeDetector.from_pretrained(self.MODEL_ID).to("cuda") - # elif name == "Canny": - # self.model = CannyDetector() - else: - raise ValueError - torch.cuda.empty_cache() - gc.collect() - - self.name = name - - def __call__(self, image: PIL.Image.Image, **kwargs) -> PIL.Image.Image: - # if self.name == "Canny": - # if "detect_resolution" in kwargs: - # detect_resolution = kwargs.pop("detect_resolution") - # image = np.array(image) - # image = HWC3(image) - # image = resize_image(image, resolution=detect_resolution) - # image = self.model(image, **kwargs) - # return PIL.Image.fromarray(image) - # elif self.name == "Midas": - # detect_resolution = kwargs.pop("detect_resolution", 512) - # image_resolution = kwargs.pop("image_resolution", 512) - # image = np.array(image) - # image = HWC3(image) - # image = resize_image(image, resolution=detect_resolution) - # image = self.model(image, **kwargs) - # image = HWC3(image) - # image = resize_image(image, resolution=image_resolution) - # return PIL.Image.fromarray(image) - # else: - return self.model(image, **kwargs) +# import numpy as np +import PIL.Image +import torch +import gc +# from controlnet_aux_local import NormalBaeDetector#, CannyDetector +from controlnet_aux import NormalBaeDetector + +# from controlnet_aux.util import HWC3 +# import cv2 +# from cv_utils import resize_image + +class Preprocessor: + MODEL_ID = "lllyasviel/Annotators" + + # def resize_image(input_image, resolution, interpolation=None): + # H, W, C = input_image.shape + # H = float(H) + # W = float(W) + # k = float(resolution) / max(H, W) + # H *= k + # W *= k + # H = int(np.round(H / 64.0)) * 64 + # W = int(np.round(W / 64.0)) * 64 + # if interpolation is None: + # interpolation = cv2.INTER_LANCZOS4 if k > 1 else cv2.INTER_AREA + # img = cv2.resize(input_image, (W, H), interpolation=interpolation) + # return img + + + def __init__(self): + self.model = None + self.name = "" + + def load(self, name: str) -> None: + if name == self.name: + return + elif name == "NormalBae": + print("Loading NormalBae") + self.model = NormalBaeDetector.from_pretrained(self.MODEL_ID).to("cuda") + # elif name == "Canny": + # self.model = CannyDetector() + else: + raise ValueError + torch.cuda.empty_cache() + gc.collect() + + self.name = name + + def __call__(self, image: PIL.Image.Image, **kwargs) -> PIL.Image.Image: + # if self.name == "Canny": + # if "detect_resolution" in kwargs: + # detect_resolution = kwargs.pop("detect_resolution") + # image = np.array(image) + # image = HWC3(image) + # image = resize_image(image, resolution=detect_resolution) + # image = self.model(image, **kwargs) + # return PIL.Image.fromarray(image) + # elif self.name == "Midas": + # detect_resolution = kwargs.pop("detect_resolution", 512) + # image_resolution = kwargs.pop("image_resolution", 512) + # image = np.array(image) + # image = HWC3(image) + # image = resize_image(image, resolution=detect_resolution) + # image = self.model(image, **kwargs) + # image = HWC3(image) + # image = resize_image(image, resolution=image_resolution) + # return PIL.Image.fromarray(image) + # else: + return self.model(image, **kwargs) diff --git a/requirements-good.txt b/requirements-good.txt deleted file mode 100644 index ea8eb5883e84556f18b3a37cb386dec445e85a89..0000000000000000000000000000000000000000 --- a/requirements-good.txt +++ /dev/null @@ -1,16 +0,0 @@ -torch==2.2.0 -torchvision==0.17.0 -torchaudio==2.2.0 ---extra-index-url https://download.pytorch.org/whl/cu121 -diffusers==0.27.2 -einops==0.6.1 -gradio==4.31.4 -gradio-client==0.16.4 -huggingface-hub==0.22.2 -mediapipe==0.10.1 -opencv-python-headless==4.8.0.74 -safetensors==0.4.2 -transformers==4.39.3 -xformers==0.0.24 -accelerate==0.29.1 -imageio \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index 9f55aa4554e7caa4f329895aa0fbdaf116bfd70c..0443a15cd41fb08e5535434d265f9bed72071683 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9,4 +9,5 @@ safetensors transformers xformers accelerate -imageio \ No newline at end of file +imageio +controlnet-aux \ No newline at end of file diff --git a/win.requirements.txt b/win.requirements.txt index b615abc8a5e984d0a2ef15c8c907a6671e91ee5d..9269ed67c66f4cc734da12750628eafa670a9e4f 100644 --- a/win.requirements.txt +++ b/win.requirements.txt @@ -1,17 +1,17 @@ -torch -torchvision -torchaudio ---index-url https://download.pytorch.org/whl/cu121 - -diffusers -einops -gradio -gradio-client -mediapipe -opencv-python-headless -safetensors -transformers -xformers -accelerate -imageio +torch +torchvision +torchaudio +--index-url https://download.pytorch.org/whl/cu121 + +diffusers +einops +gradio +gradio-client +mediapipe +opencv-python-headless +safetensors +transformers +xformers +accelerate +imageio controlnet_aux \ No newline at end of file