diff --git a/.DS_Store b/.DS_Store
deleted file mode 100644
index 3328393f003be07db01ea0f13d8e82692572ccbf..0000000000000000000000000000000000000000
Binary files a/.DS_Store and /dev/null differ
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..82f927558a3dff0ea8c20858856e70779fd02c93
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,162 @@
+# Byte-compiled / optimized / DLL files
+__pycache__/
+*.py[cod]
+*$py.class
+
+# C extensions
+*.so
+
+# Distribution / packaging
+.Python
+build/
+develop-eggs/
+dist/
+downloads/
+eggs/
+.eggs/
+lib/
+lib64/
+parts/
+sdist/
+var/
+wheels/
+share/python-wheels/
+*.egg-info/
+.installed.cfg
+*.egg
+MANIFEST
+
+# PyInstaller
+# Usually these files are written by a python script from a template
+# before PyInstaller builds the exe, so as to inject date/other infos into it.
+*.manifest
+*.spec
+
+# Installer logs
+pip-log.txt
+pip-delete-this-directory.txt
+
+# Unit test / coverage reports
+htmlcov/
+.tox/
+.nox/
+.coverage
+.coverage.*
+.cache
+nosetests.xml
+coverage.xml
+*.cover
+*.py,cover
+.hypothesis/
+.pytest_cache/
+cover/
+
+# Translations
+*.mo
+*.pot
+
+# Django stuff:
+*.log
+local_settings.py
+db.sqlite3
+db.sqlite3-journal
+
+# Flask stuff:
+instance/
+.webassets-cache
+
+# Scrapy stuff:
+.scrapy
+
+# Sphinx documentation
+docs/_build/
+
+# PyBuilder
+.pybuilder/
+target/
+
+# Jupyter Notebook
+.ipynb_checkpoints
+
+# IPython
+profile_default/
+ipython_config.py
+
+# pyenv
+# For a library or package, you might want to ignore these files since the code is
+# intended to run in multiple environments; otherwise, check them in:
+# .python-version
+
+# pipenv
+# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
+# However, in case of collaboration, if having platform-specific dependencies or dependencies
+# having no cross-platform support, pipenv may install dependencies that don't work, or not
+# install all needed dependencies.
+#Pipfile.lock
+
+# poetry
+# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
+# This is especially recommended for binary packages to ensure reproducibility, and is more
+# commonly ignored for libraries.
+# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
+#poetry.lock
+
+# pdm
+# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
+#pdm.lock
+# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
+# in version control.
+# https://pdm.fming.dev/latest/usage/project/#working-with-version-control
+.pdm.toml
+.pdm-python
+.pdm-build/
+
+# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
+__pypackages__/
+
+# Celery stuff
+celerybeat-schedule
+celerybeat.pid
+
+# SageMath parsed files
+*.sage.py
+
+# Environments
+.env
+.venv
+env/
+venv/
+ENV/
+env.bak/
+venv.bak/
+
+# Spyder project settings
+.spyderproject
+.spyproject
+
+# Rope project settings
+.ropeproject
+
+# mkdocs documentation
+/site
+
+# mypy
+.mypy_cache/
+.dmypy.json
+dmypy.json
+
+# Pyre type checker
+.pyre/
+
+# pytype static type analyzer
+.pytype/
+
+# Cython debug symbols
+cython_debug/
+
+# PyCharm
+# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
+# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
+# and can be added to the global gitignore or merged into this file. For a more nuclear
+# option (not recommended) you can uncomment the following to ignore the entire idea folder.
+#.idea/
diff --git a/__asset__/.DS_Store b/__asset__/.DS_Store
deleted file mode 100644
index 9bc6de3f8adf5670db95a496f5aab69517a8777f..0000000000000000000000000000000000000000
Binary files a/__asset__/.DS_Store and /dev/null differ
diff --git a/__asset__/images/.DS_Store b/__asset__/images/.DS_Store
deleted file mode 100644
index fce37364e609a626cfc1b26330ea784ace67552f..0000000000000000000000000000000000000000
Binary files a/__asset__/images/.DS_Store and /dev/null differ
diff --git a/__asset__/images/camera/.DS_Store b/__asset__/images/camera/.DS_Store
deleted file mode 100644
index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..0000000000000000000000000000000000000000
Binary files a/__asset__/images/camera/.DS_Store and /dev/null differ
diff --git a/__asset__/images/object/.DS_Store b/__asset__/images/object/.DS_Store
deleted file mode 100644
index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..0000000000000000000000000000000000000000
Binary files a/__asset__/images/object/.DS_Store and /dev/null differ
diff --git a/__asset__/trajs/.DS_Store b/__asset__/trajs/.DS_Store
deleted file mode 100644
index fce37364e609a626cfc1b26330ea784ace67552f..0000000000000000000000000000000000000000
Binary files a/__asset__/trajs/.DS_Store and /dev/null differ
diff --git a/__asset__/trajs/camera/.DS_Store b/__asset__/trajs/camera/.DS_Store
deleted file mode 100644
index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..0000000000000000000000000000000000000000
Binary files a/__asset__/trajs/camera/.DS_Store and /dev/null differ
diff --git a/__asset__/trajs/object/.DS_Store b/__asset__/trajs/object/.DS_Store
deleted file mode 100644
index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..0000000000000000000000000000000000000000
Binary files a/__asset__/trajs/object/.DS_Store and /dev/null differ
diff --git a/app.py b/app.py
index f4a08c459d7bf09aefbd50972773604798652ac6..c8f41b9c5072786e20a61f326aaae8b860532254 100644
--- a/app.py
+++ b/app.py
@@ -1,35 +1,35 @@
+import json
import os
-import sys
-
-
-print("Installing correct gradio version...")
-os.system("pip uninstall -y gradio")
-os.system("pip install gradio==4.38.1")
-print("Installing Finished!")
-
+import uuid
+import cv2
import gradio as gr
import numpy as np
-import cv2
-import uuid
+import spaces
import torch
import torchvision
-import json
-import spaces
-
-from PIL import Image
+from diffusers import AutoencoderKL, DDIMScheduler
+from einops import rearrange
+from huggingface_hub import hf_hub_download
from omegaconf import OmegaConf
-from einops import rearrange, repeat
-from torchvision import transforms,utils
+from PIL import Image
+from torchvision import transforms
from transformers import CLIPTextModel, CLIPTokenizer
-from diffusers import AutoencoderKL, DDIMScheduler
-from pipelines.pipeline_imagecoductor import ImageConductorPipeline
from modules.unet import UNet3DConditionFlowModel
-from utils.gradio_utils import ensure_dirname, split_filename, visualize_drag, image2pil
-from utils.utils import create_image_controlnet, create_flow_controlnet, interpolate_trajectory, load_weights, load_model, bivariate_Gaussian, save_videos_grid
+from pipelines.pipeline_imagecoductor import ImageConductorPipeline
+from utils.gradio_utils import ensure_dirname, image2pil, split_filename, visualize_drag
from utils.lora_utils import add_LoRA_to_controlnet
-from utils.visualizer import Visualizer, vis_flow_to_video
+from utils.utils import (
+ bivariate_Gaussian,
+ create_flow_controlnet,
+ create_image_controlnet,
+ interpolate_trajectory,
+ load_model,
+ load_weights,
+)
+from utils.visualizer import vis_flow_to_video
+
#### Description ####
title = r"""
CustomNet: Object Customization with Variable-Viewpoints in Text-to-Image Diffusion Models
"""
@@ -41,7 +41,7 @@ head = r"""
-
+
@@ -49,7 +49,6 @@ head = r"""
"""
-
descriptions = r"""
Official Gradio Demo for Image Conductor: Precision Control for Interactive Video Synthesis.
🧙Image Conductor enables precise, fine-grained control for generating motion-controllable videos from images, advancing the practical application of interactive video synthesis.
@@ -66,7 +65,7 @@ instructions = r"""
"""
citation = r"""
-If Image Conductor is helpful, please help to ⭐ the Github Repo. Thanks!
+If Image Conductor is helpful, please help to ⭐ the Github Repo. Thanks!
[![GitHub Stars](https://img.shields.io/github/stars/liyaowei-stu%2FImageConductor)](https://github.com/liyaowei-stu/ImageConductor)
---
@@ -75,7 +74,7 @@ If Image Conductor is helpful, please help to ⭐ the (b f) c h w")
self.vae.to(device)
- controlnet_images = self.vae.encode(controlnet_images * 2. - 1.).latent_dist.sample() * 0.18215
+ controlnet_images = self.vae.encode(controlnet_images * 2.0 - 1.0).latent_dist.sample() * 0.18215
controlnet_images = rearrange(controlnet_images, "(b f) c h w -> b c f h w", f=num_controlnet_images)
# flow condition
controlnet_flows = points_to_flows(resized_all_points, self.model_length, self.height, self.width)
- for i in range(0, self.model_length-1):
+ for i in range(0, self.model_length - 1):
controlnet_flows[i] = cv2.filter2D(controlnet_flows[i], -1, self.blur_kernel)
- controlnet_flows = np.concatenate([np.zeros_like(controlnet_flows[0])[np.newaxis, ...], controlnet_flows], axis=0) # pad the first frame with zero flow
+ controlnet_flows = np.concatenate(
+ [np.zeros_like(controlnet_flows[0])[np.newaxis, ...], controlnet_flows], axis=0
+ ) # pad the first frame with zero flow
os.makedirs(os.path.join(output_dir, "control_flows"), exist_ok=True)
- trajs_video = vis_flow_to_video(controlnet_flows, num_frames=self.model_length) # T-1 x H x W x 3
- torchvision.io.write_video(f'{output_dir}/control_flows/sample-{id}-train_flow.mp4', trajs_video, fps=8, video_codec='h264', options={'crf': '10'})
- controlnet_flows = torch.from_numpy(controlnet_flows)[None][:, :self.model_length, ...]
- controlnet_flows = rearrange(controlnet_flows, "b f h w c-> b c f h w").float().to(device)
+ trajs_video = vis_flow_to_video(controlnet_flows, num_frames=self.model_length) # T-1 x H x W x 3
+ torchvision.io.write_video(
+ f"{output_dir}/control_flows/sample-{id}-train_flow.mp4",
+ trajs_video,
+ fps=8,
+ video_codec="h264",
+ options={"crf": "10"},
+ )
+ controlnet_flows = torch.from_numpy(controlnet_flows)[None][:, : self.model_length, ...]
+ controlnet_flows = rearrange(controlnet_flows, "b f h w c-> b c f h w").float().to(device)
- dreambooth_model_path = DREAM_BOOTH.get(personalized, '')
- lora_model_path = LORA.get(personalized, '')
+ dreambooth_model_path = DREAM_BOOTH.get(personalized, "")
+ lora_model_path = LORA.get(personalized, "")
lora_alpha = LORA_ALPHA.get(personalized, 0.6)
self.pipeline = load_weights(
self.pipeline,
- dreambooth_model_path = dreambooth_model_path,
- lora_model_path = lora_model_path,
- lora_alpha = lora_alpha,
+ dreambooth_model_path=dreambooth_model_path,
+ lora_model_path=lora_model_path,
+ lora_alpha=lora_alpha,
).to(device)
-
- if NPROMPT.get(personalized, '') != '':
- negative_prompt = NPROMPT.get(personalized)
-
+
+ if NPROMPT.get(personalized, "") != "":
+ negative_prompt = NPROMPT.get(personalized)
+
if randomize_seed:
random_seed = torch.seed()
else:
seed = int(seed)
random_seed = seed
torch.manual_seed(random_seed)
- torch.cuda.manual_seed_all(random_seed)
+ torch.cuda.manual_seed_all(random_seed)
print(f"current seed: {torch.initial_seed()}")
sample = self.pipeline(
- prompt,
- negative_prompt = negative_prompt,
- num_inference_steps = num_inference_steps,
- guidance_scale = guidance_scale,
- width = self.width,
- height = self.height,
- video_length = self.model_length,
- controlnet_images = controlnet_images, # 1 4 1 32 48
- controlnet_image_index = [0],
- controlnet_flows = controlnet_flows,# [1, 2, 16, 256, 384]
- control_mode = drag_mode,
- eval_mode = True,
- ).videos
-
- outputs_path = os.path.join(output_dir, f'output_{i}_{id}.mp4')
- vis_video = (rearrange(sample[0], 'c t h w -> t h w c') * 255.).clip(0, 255)
- torchvision.io.write_video(outputs_path, vis_video, fps=8, video_codec='h264', options={'crf': '10'})
-
+ prompt,
+ negative_prompt=negative_prompt,
+ num_inference_steps=num_inference_steps,
+ guidance_scale=guidance_scale,
+ width=self.width,
+ height=self.height,
+ video_length=self.model_length,
+ controlnet_images=controlnet_images, # 1 4 1 32 48
+ controlnet_image_index=[0],
+ controlnet_flows=controlnet_flows, # [1, 2, 16, 256, 384]
+ control_mode=drag_mode,
+ eval_mode=True,
+ ).videos
+
+ outputs_path = os.path.join(output_dir, f"output_{i}_{id}.mp4")
+ vis_video = (rearrange(sample[0], "c t h w -> t h w c") * 255.0).clip(0, 255)
+ torchvision.io.write_video(outputs_path, vis_video, fps=8, video_codec="h264", options={"crf": "10"})
+
# outputs_path = os.path.join(output_dir, f'output_{i}_{id}.gif')
# save_videos_grid(sample[0][None], outputs_path)
print("Done!")
- return {output_image: visualized_drag, output_video: outputs_path}
+ return visualized_drag, outputs_path
def reset_states(first_frame_path, tracking_points):
- first_frame_path = gr.State()
- tracking_points = gr.State([])
- return {input_image:None, first_frame_path_var: first_frame_path, tracking_points_var: tracking_points}
+ first_frame_path = None
+ tracking_points = []
+ return {input_image: None, first_frame_path_var: first_frame_path, tracking_points_var: tracking_points}
def preprocess_image(image, tracking_points):
image_pil = image2pil(image.name)
raw_w, raw_h = image_pil.size
- resize_ratio = max(384/raw_w, 256/raw_h)
+ resize_ratio = max(384 / raw_w, 256 / raw_h)
image_pil = image_pil.resize((int(raw_w * resize_ratio), int(raw_h * resize_ratio)), Image.BILINEAR)
- image_pil = transforms.CenterCrop((256, 384))(image_pil.convert('RGB'))
+ image_pil = transforms.CenterCrop((256, 384))(image_pil.convert("RGB"))
id = str(uuid.uuid4())[:4]
first_frame_path = os.path.join(output_dir, f"first_frame_{id}.jpg")
image_pil.save(first_frame_path, quality=95)
- tracking_points = gr.State([])
- return {input_image: first_frame_path, first_frame_path_var: first_frame_path, tracking_points_var: tracking_points, personalized:""}
+ tracking_points = []
+ return {
+ input_image: first_frame_path,
+ first_frame_path_var: first_frame_path,
+ tracking_points_var: tracking_points,
+ personalized: "",
+ }
+
+
+def add_tracking_points(
+ tracking_points, first_frame_path, drag_mode, evt: gr.SelectData
+): # SelectData is a subclass of EventData
+ if drag_mode == "object":
+ color = (255, 0, 0, 255)
+ elif drag_mode == "camera":
+ color = (0, 0, 255, 255)
+
+ print(f"You selected {evt.value} at {evt.index} from {evt.target}")
+ if not tracking_points:
+ tracking_points = [[]]
+ tracking_points[-1].append(evt.index)
+
+ transparent_background = Image.open(first_frame_path).convert("RGBA")
+ w, h = transparent_background.size
+ transparent_layer = np.zeros((h, w, 4))
+
+ for track in tracking_points:
+ if len(track) > 1:
+ for i in range(len(track) - 1):
+ start_point = track[i]
+ end_point = track[i + 1]
+ vx = end_point[0] - start_point[0]
+ vy = end_point[1] - start_point[1]
+ arrow_length = np.sqrt(vx**2 + vy**2)
+ if i == len(track) - 2:
+ cv2.arrowedLine(
+ transparent_layer, tuple(start_point), tuple(end_point), color, 2, tipLength=8 / arrow_length
+ )
+ else:
+ cv2.line(
+ transparent_layer,
+ tuple(start_point),
+ tuple(end_point),
+ color,
+ 2,
+ )
+ else:
+ cv2.circle(transparent_layer, tuple(track[0]), 5, color, -1)
+
+ transparent_layer = Image.fromarray(transparent_layer.astype(np.uint8))
+ trajectory_map = Image.alpha_composite(transparent_background, transparent_layer)
+ return {tracking_points_var: tracking_points, input_image: trajectory_map}
+
+def preprocess_example_image(image_path, tracking_points, drag_mode):
+ image_pil = image2pil(image_path)
+ raw_w, raw_h = image_pil.size
+ resize_ratio = max(384 / raw_w, 256 / raw_h)
+ image_pil = image_pil.resize((int(raw_w * resize_ratio), int(raw_h * resize_ratio)), Image.BILINEAR)
+ image_pil = transforms.CenterCrop((256, 384))(image_pil.convert("RGB"))
+ id = str(uuid.uuid4())[:4]
+ first_frame_path = os.path.join(output_dir, f"first_frame_{id}.jpg")
+ image_pil.save(first_frame_path, quality=95)
-def add_tracking_points(tracking_points, first_frame_path, drag_mode, evt: gr.SelectData): # SelectData is a subclass of EventData
- if drag_mode=='object':
+ if drag_mode == "object":
color = (255, 0, 0, 255)
- elif drag_mode=='camera':
+ elif drag_mode == "camera":
color = (0, 0, 255, 255)
- if not isinstance(tracking_points ,list):
- print(f"You selected {evt.value} at {evt.index} from {evt.target}")
- tracking_points.value[-1].append(evt.index)
- print(tracking_points.value)
- tracking_points_values = tracking_points.value
- else:
- try:
- tracking_points[-1].append(evt.index)
- except Exception as e:
- tracking_points.append([])
- tracking_points[-1].append(evt.index)
- print(f"Solved Error: {e}")
-
- tracking_points_values = tracking_points
-
-
- transparent_background = Image.open(first_frame_path).convert('RGBA')
+ transparent_background = Image.open(first_frame_path).convert("RGBA")
w, h = transparent_background.size
transparent_layer = np.zeros((h, w, 4))
-
- for track in tracking_points_values:
+
+ for track in tracking_points:
if len(track) > 1:
- for i in range(len(track)-1):
+ for i in range(len(track) - 1):
start_point = track[i]
- end_point = track[i+1]
+ end_point = track[i + 1]
vx = end_point[0] - start_point[0]
vy = end_point[1] - start_point[1]
arrow_length = np.sqrt(vx**2 + vy**2)
- if i == len(track)-2:
- cv2.arrowedLine(transparent_layer, tuple(start_point), tuple(end_point), color, 2, tipLength=8 / arrow_length)
+ if i == len(track) - 2:
+ cv2.arrowedLine(
+ transparent_layer, tuple(start_point), tuple(end_point), color, 2, tipLength=8 / arrow_length
+ )
else:
- cv2.line(transparent_layer, tuple(start_point), tuple(end_point), color, 2,)
+ cv2.line(
+ transparent_layer,
+ tuple(start_point),
+ tuple(end_point),
+ color,
+ 2,
+ )
else:
cv2.circle(transparent_layer, tuple(track[0]), 5, color, -1)
transparent_layer = Image.fromarray(transparent_layer.astype(np.uint8))
trajectory_map = Image.alpha_composite(transparent_background, transparent_layer)
- return {tracking_points_var: tracking_points, input_image: trajectory_map}
+
+ return trajectory_map, first_frame_path
def add_drag(tracking_points):
- if not isinstance(tracking_points ,list):
- # print("before", tracking_points.value)
- tracking_points.value.append([])
- # print(tracking_points.value)
- else:
+ if not tracking_points or tracking_points[-1]:
tracking_points.append([])
return {tracking_points_var: tracking_points}
-
+
def delete_last_drag(tracking_points, first_frame_path, drag_mode):
- if drag_mode=='object':
+ if drag_mode == "object":
color = (255, 0, 0, 255)
- elif drag_mode=='camera':
+ elif drag_mode == "camera":
color = (0, 0, 255, 255)
- tracking_points.value.pop()
- transparent_background = Image.open(first_frame_path).convert('RGBA')
+ if tracking_points:
+ tracking_points.pop()
+ transparent_background = Image.open(first_frame_path).convert("RGBA")
w, h = transparent_background.size
transparent_layer = np.zeros((h, w, 4))
- for track in tracking_points.value:
+ for track in tracking_points:
if len(track) > 1:
- for i in range(len(track)-1):
+ for i in range(len(track) - 1):
start_point = track[i]
- end_point = track[i+1]
+ end_point = track[i + 1]
vx = end_point[0] - start_point[0]
vy = end_point[1] - start_point[1]
arrow_length = np.sqrt(vx**2 + vy**2)
- if i == len(track)-2:
- cv2.arrowedLine(transparent_layer, tuple(start_point), tuple(end_point), color, 2, tipLength=8 / arrow_length)
+ if i == len(track) - 2:
+ cv2.arrowedLine(
+ transparent_layer, tuple(start_point), tuple(end_point), color, 2, tipLength=8 / arrow_length
+ )
else:
- cv2.line(transparent_layer, tuple(start_point), tuple(end_point), color, 2,)
+ cv2.line(
+ transparent_layer,
+ tuple(start_point),
+ tuple(end_point),
+ color,
+ 2,
+ )
else:
cv2.circle(transparent_layer, tuple(track[0]), 5, color, -1)
transparent_layer = Image.fromarray(transparent_layer.astype(np.uint8))
trajectory_map = Image.alpha_composite(transparent_background, transparent_layer)
return {tracking_points_var: tracking_points, input_image: trajectory_map}
-
+
def delete_last_step(tracking_points, first_frame_path, drag_mode):
- if drag_mode=='object':
+ if drag_mode == "object":
color = (255, 0, 0, 255)
- elif drag_mode=='camera':
+ elif drag_mode == "camera":
color = (0, 0, 255, 255)
- tracking_points.value[-1].pop()
- transparent_background = Image.open(first_frame_path).convert('RGBA')
+ if tracking_points and tracking_points[-1]:
+ tracking_points[-1].pop()
+ transparent_background = Image.open(first_frame_path).convert("RGBA")
w, h = transparent_background.size
transparent_layer = np.zeros((h, w, 4))
- for track in tracking_points.value:
+ for track in tracking_points:
+ if not track:
+ continue
if len(track) > 1:
- for i in range(len(track)-1):
+ for i in range(len(track) - 1):
start_point = track[i]
- end_point = track[i+1]
+ end_point = track[i + 1]
vx = end_point[0] - start_point[0]
vy = end_point[1] - start_point[1]
arrow_length = np.sqrt(vx**2 + vy**2)
- if i == len(track)-2:
- cv2.arrowedLine(transparent_layer, tuple(start_point), tuple(end_point), color, 2, tipLength=8 / arrow_length)
+ if i == len(track) - 2:
+ cv2.arrowedLine(
+ transparent_layer, tuple(start_point), tuple(end_point), color, 2, tipLength=8 / arrow_length
+ )
else:
- cv2.line(transparent_layer, tuple(start_point), tuple(end_point), color, 2,)
+ cv2.line(
+ transparent_layer,
+ tuple(start_point),
+ tuple(end_point),
+ color,
+ 2,
+ )
else:
- cv2.circle(transparent_layer, tuple(track[0]), 5,color, -1)
+ cv2.circle(transparent_layer, tuple(track[0]), 5, color, -1)
transparent_layer = Image.fromarray(transparent_layer.astype(np.uint8))
trajectory_map = Image.alpha_composite(transparent_background, transparent_layer)
return {tracking_points_var: tracking_points, input_image: trajectory_map}
-block = gr.Blocks(
- theme=gr.themes.Soft(
- radius_size=gr.themes.sizes.radius_none,
- text_size=gr.themes.sizes.text_md
- )
- )
+def load_example(drag_mode, examples_type):
+ example_image_path = IMAGE_PATH[examples_type]
+ with open(POINTS[examples_type]) as f:
+ tracking_points = json.load(f)
+ tracking_points = np.round(tracking_points).astype(int).tolist()
+ trajectory_map, first_frame_path = preprocess_example_image(example_image_path, tracking_points, drag_mode)
+ return {input_image: trajectory_map, first_frame_path_var: first_frame_path, tracking_points_var: tracking_points}
+
+
+device = torch.device("cuda") if torch.cuda.is_available() else torch.device("cpu")
+ImageConductor_net = ImageConductor(
+ device=device,
+ unet_path=unet_path,
+ image_controlnet_path=image_controlnet_path,
+ flow_controlnet_path=flow_controlnet_path,
+ height=256,
+ width=384,
+ model_length=16,
+)
+
+block = gr.Blocks(theme=gr.themes.Soft(radius_size=gr.themes.sizes.radius_none, text_size=gr.themes.sizes.text_md))
with block:
with gr.Row():
with gr.Column():
@@ -557,66 +637,58 @@ with block:
with gr.Accordion(label="🛠️ Instructions:", open=True, elem_id="accordion"):
with gr.Row(equal_height=True):
- gr.Markdown(instructions)
-
-
- # device = torch.device("cuda") if torch.cuda.is_available() else torch.device("cpu")
- device = torch.device("cuda")
- unet_path = 'models/unet.ckpt'
- image_controlnet_path = 'models/image_controlnet.ckpt'
- flow_controlnet_path = 'models/flow_controlnet.ckpt'
- ImageConductor_net = ImageConductor(device=device,
- unet_path=unet_path,
- image_controlnet_path=image_controlnet_path,
- flow_controlnet_path=flow_controlnet_path,
- height=256,
- width=384,
- model_length=16
- )
- first_frame_path_var = gr.State(value=None)
+ gr.Markdown(instructions)
+
+ first_frame_path_var = gr.State()
tracking_points_var = gr.State([])
with gr.Row():
with gr.Column(scale=1):
- image_upload_button = gr.UploadButton(label="Upload Image",file_types=["image"])
+ image_upload_button = gr.UploadButton(label="Upload Image", file_types=["image"])
add_drag_button = gr.Button(value="Add Drag")
reset_button = gr.Button(value="Reset")
delete_last_drag_button = gr.Button(value="Delete last drag")
delete_last_step_button = gr.Button(value="Delete last step")
-
-
with gr.Column(scale=7):
with gr.Row():
with gr.Column(scale=6):
- input_image = gr.Image(label="Input Image",
- interactive=True,
- height=300,
- width=384,)
+ input_image = gr.Image(
+ label="Input Image",
+ interactive=True,
+ height=300,
+ width=384,
+ )
with gr.Column(scale=6):
- output_image = gr.Image(label="Motion Path",
- interactive=False,
- height=256,
- width=384,)
+ output_image = gr.Image(
+ label="Motion Path",
+ interactive=False,
+ height=256,
+ width=384,
+ )
with gr.Row():
with gr.Column(scale=1):
- prompt = gr.Textbox(value="a wonderful elf.", label="Prompt (highly-recommended)", interactive=True, visible=True)
+ prompt = gr.Textbox(
+ value="a wonderful elf.",
+ label="Prompt (highly-recommended)",
+ interactive=True,
+ visible=True,
+ )
negative_prompt = gr.Text(
- label="Negative Prompt",
- max_lines=5,
- placeholder="Please input your negative prompt",
- value='worst quality, low quality, letterboxed',lines=1
- )
- drag_mode = gr.Radio(['camera', 'object'], label='Drag mode: ', value='object', scale=2)
+ label="Negative Prompt",
+ max_lines=5,
+ placeholder="Please input your negative prompt",
+ value="worst quality, low quality, letterboxed",
+ lines=1,
+ )
+ drag_mode = gr.Radio(["camera", "object"], label="Drag mode: ", value="object", scale=2)
run_button = gr.Button(value="Run")
with gr.Accordion("More input params", open=False, elem_id="accordion1"):
with gr.Group():
- seed = gr.Textbox(
- label="Seed: ", value=561793204,
- )
+ seed = gr.Textbox(label="Seed: ", value=561793204)
randomize_seed = gr.Checkbox(label="Randomize seed", value=False)
-
+
with gr.Group():
with gr.Row():
guidance_scale = gr.Slider(
@@ -633,24 +705,15 @@ with block:
step=1,
value=25,
)
-
+
with gr.Group():
- personalized = gr.Dropdown(label="Personalized", choices=["", 'HelloObject', 'TUSUN'], value="")
- examples_type = gr.Textbox(label="Examples Type (Ignore) ", value="", visible=False)
+ personalized = gr.Dropdown(label="Personalized", choices=["", "HelloObject", "TUSUN"], value="")
+ examples_type = gr.Textbox(label="Examples Type (Ignore) ", value="", visible=False)
with gr.Column(scale=7):
- output_video = gr.Video(
- label="Output Video",
- width=384,
- height=256)
- # output_video = gr.Image(label="Output Video",
- # height=256,
- # width=384,)
-
-
- with gr.Row():
-
+ output_video = gr.Video(label="Output Video", width=384, height=256)
+ with gr.Row():
example = gr.Examples(
label="Input Example",
examples=image_examples,
@@ -658,26 +721,65 @@ with block:
examples_per_page=10,
cache_examples=False,
)
-
-
+
with gr.Row():
gr.Markdown(citation)
-
- image_upload_button.upload(preprocess_image, [image_upload_button, tracking_points_var], [input_image, first_frame_path_var, tracking_points_var, personalized])
+ image_upload_button.upload(
+ preprocess_image,
+ [image_upload_button, tracking_points_var],
+ [input_image, first_frame_path_var, tracking_points_var, personalized],
+ )
add_drag_button.click(add_drag, tracking_points_var, tracking_points_var)
- delete_last_drag_button.click(delete_last_drag, [tracking_points_var, first_frame_path_var, drag_mode], [tracking_points_var, input_image])
-
- delete_last_step_button.click(delete_last_step, [tracking_points_var, first_frame_path_var, drag_mode], [tracking_points_var, input_image])
-
- reset_button.click(reset_states, [first_frame_path_var, tracking_points_var], [input_image, first_frame_path_var, tracking_points_var])
-
- input_image.select(add_tracking_points, [tracking_points_var, first_frame_path_var, drag_mode], [tracking_points_var, input_image])
-
- run_button.click(ImageConductor_net.run, [first_frame_path_var, tracking_points_var, prompt, drag_mode,
- negative_prompt, seed, randomize_seed, guidance_scale, num_inference_steps, personalized, examples_type],
- [output_image, output_video])
+ delete_last_drag_button.click(
+ delete_last_drag,
+ [tracking_points_var, first_frame_path_var, drag_mode],
+ [tracking_points_var, input_image],
+ )
+
+ delete_last_step_button.click(
+ delete_last_step,
+ [tracking_points_var, first_frame_path_var, drag_mode],
+ [tracking_points_var, input_image],
+ )
+
+ reset_button.click(
+ reset_states,
+ [first_frame_path_var, tracking_points_var],
+ [input_image, first_frame_path_var, tracking_points_var],
+ )
+
+ input_image.select(
+ add_tracking_points,
+ [tracking_points_var, first_frame_path_var, drag_mode],
+ [tracking_points_var, input_image],
+ )
+
+ run_button.click(
+ ImageConductor_net.run,
+ [
+ first_frame_path_var,
+ tracking_points_var,
+ prompt,
+ drag_mode,
+ negative_prompt,
+ seed,
+ randomize_seed,
+ guidance_scale,
+ num_inference_steps,
+ personalized,
+ ],
+ [output_image, output_video],
+ )
+
+ examples_type.change(
+ fn=load_example,
+ inputs=[drag_mode, examples_type],
+ outputs=[input_image, first_frame_path_var, tracking_points_var],
+ api_name=False,
+ queue=False,
+ )
block.queue().launch()
diff --git a/configs/.DS_Store b/configs/.DS_Store
deleted file mode 100644
index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..0000000000000000000000000000000000000000
Binary files a/configs/.DS_Store and /dev/null differ
diff --git a/models/.DS_Store b/models/.DS_Store
deleted file mode 100644
index 71a30893823876826ad4987d58e9ce4b41291cea..0000000000000000000000000000000000000000
Binary files a/models/.DS_Store and /dev/null differ
diff --git a/modules/__pycache__/attention.cpython-310.pyc b/modules/__pycache__/attention.cpython-310.pyc
deleted file mode 100644
index 95b780a82fdc5cdeafc7e567c3a86d4a43efe2ab..0000000000000000000000000000000000000000
Binary files a/modules/__pycache__/attention.cpython-310.pyc and /dev/null differ
diff --git a/modules/__pycache__/flow_controlnet.cpython-310.pyc b/modules/__pycache__/flow_controlnet.cpython-310.pyc
deleted file mode 100644
index c35d216cd0d7baef8196beb2c2446afa2eb20e2c..0000000000000000000000000000000000000000
Binary files a/modules/__pycache__/flow_controlnet.cpython-310.pyc and /dev/null differ
diff --git a/modules/__pycache__/image_controlnet.cpython-310.pyc b/modules/__pycache__/image_controlnet.cpython-310.pyc
deleted file mode 100644
index 6dd72a42170af585e9828058717f46e2abd0c5ce..0000000000000000000000000000000000000000
Binary files a/modules/__pycache__/image_controlnet.cpython-310.pyc and /dev/null differ
diff --git a/modules/__pycache__/motion_module.cpython-310.pyc b/modules/__pycache__/motion_module.cpython-310.pyc
deleted file mode 100644
index 02d724ed29e82bf76b28920ea94f9327127dd4e2..0000000000000000000000000000000000000000
Binary files a/modules/__pycache__/motion_module.cpython-310.pyc and /dev/null differ
diff --git a/modules/__pycache__/resnet.cpython-310.pyc b/modules/__pycache__/resnet.cpython-310.pyc
deleted file mode 100644
index 1b875ec156c21364e2018dd36c2bf05af2909104..0000000000000000000000000000000000000000
Binary files a/modules/__pycache__/resnet.cpython-310.pyc and /dev/null differ
diff --git a/modules/__pycache__/unet.cpython-310.pyc b/modules/__pycache__/unet.cpython-310.pyc
deleted file mode 100644
index d777c33c68db0a708e791a9f7024e9994148cc59..0000000000000000000000000000000000000000
Binary files a/modules/__pycache__/unet.cpython-310.pyc and /dev/null differ
diff --git a/modules/__pycache__/unet_blocks.cpython-310.pyc b/modules/__pycache__/unet_blocks.cpython-310.pyc
deleted file mode 100644
index c2abde7953e12c1b9ffbed93ba9d69a90f256bd3..0000000000000000000000000000000000000000
Binary files a/modules/__pycache__/unet_blocks.cpython-310.pyc and /dev/null differ
diff --git a/peft/__pycache__/__init__.cpython-310.pyc b/peft/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 7519f40da950b0df55e6d8ab2df9a18221f646d1..0000000000000000000000000000000000000000
Binary files a/peft/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/__pycache__/auto.cpython-310.pyc b/peft/__pycache__/auto.cpython-310.pyc
deleted file mode 100644
index a48eb8ac284e9b03f0ae25bafb43fc79f89bb62c..0000000000000000000000000000000000000000
Binary files a/peft/__pycache__/auto.cpython-310.pyc and /dev/null differ
diff --git a/peft/__pycache__/config.cpython-310.pyc b/peft/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index e99f10e8e6c7b24206a42261d9ec24fd2491118d..0000000000000000000000000000000000000000
Binary files a/peft/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/__pycache__/import_utils.cpython-310.pyc b/peft/__pycache__/import_utils.cpython-310.pyc
deleted file mode 100644
index 97e87072c428137738955a011d3a9837b637ac69..0000000000000000000000000000000000000000
Binary files a/peft/__pycache__/import_utils.cpython-310.pyc and /dev/null differ
diff --git a/peft/__pycache__/mapping.cpython-310.pyc b/peft/__pycache__/mapping.cpython-310.pyc
deleted file mode 100644
index 9cb5ce2a074f407bccad18aab353b0455dab5c09..0000000000000000000000000000000000000000
Binary files a/peft/__pycache__/mapping.cpython-310.pyc and /dev/null differ
diff --git a/peft/__pycache__/mixed_model.cpython-310.pyc b/peft/__pycache__/mixed_model.cpython-310.pyc
deleted file mode 100644
index 70be307653d0608f4d50ed009e1421c006257ec5..0000000000000000000000000000000000000000
Binary files a/peft/__pycache__/mixed_model.cpython-310.pyc and /dev/null differ
diff --git a/peft/__pycache__/peft_model.cpython-310.pyc b/peft/__pycache__/peft_model.cpython-310.pyc
deleted file mode 100644
index 973f687480ed9ffb5e31ba346b787e6ff25b27ac..0000000000000000000000000000000000000000
Binary files a/peft/__pycache__/peft_model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/__pycache__/__init__.cpython-310.pyc b/peft/tuners/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 5098f1277fe52e8efd665799040a2005cf2a006f..0000000000000000000000000000000000000000
Binary files a/peft/tuners/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/__pycache__/lycoris_utils.cpython-310.pyc b/peft/tuners/__pycache__/lycoris_utils.cpython-310.pyc
deleted file mode 100644
index e41938019e5dd37b2f3254d5a8ebff0ea8aaa9e0..0000000000000000000000000000000000000000
Binary files a/peft/tuners/__pycache__/lycoris_utils.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/__pycache__/tuners_utils.cpython-310.pyc b/peft/tuners/__pycache__/tuners_utils.cpython-310.pyc
deleted file mode 100644
index 2a6a0b9a02d7ac8b8938dbf5b3ed05bc3914b58b..0000000000000000000000000000000000000000
Binary files a/peft/tuners/__pycache__/tuners_utils.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/adalora/__pycache__/__init__.cpython-310.pyc b/peft/tuners/adalora/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 2c7d3299fbcbd7e7585de0a16fda2527ce97c073..0000000000000000000000000000000000000000
Binary files a/peft/tuners/adalora/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/adalora/__pycache__/bnb.cpython-310.pyc b/peft/tuners/adalora/__pycache__/bnb.cpython-310.pyc
deleted file mode 100644
index 21ab08756f2efaf08bf91569fa6c84f7da6931ad..0000000000000000000000000000000000000000
Binary files a/peft/tuners/adalora/__pycache__/bnb.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/adalora/__pycache__/config.cpython-310.pyc b/peft/tuners/adalora/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index b3754e90ab061cd911b5736f22b667832701ec75..0000000000000000000000000000000000000000
Binary files a/peft/tuners/adalora/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/adalora/__pycache__/gptq.cpython-310.pyc b/peft/tuners/adalora/__pycache__/gptq.cpython-310.pyc
deleted file mode 100644
index f335b6eebf80c203177a76c433e07fa90830f355..0000000000000000000000000000000000000000
Binary files a/peft/tuners/adalora/__pycache__/gptq.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/adalora/__pycache__/layer.cpython-310.pyc b/peft/tuners/adalora/__pycache__/layer.cpython-310.pyc
deleted file mode 100644
index f6e29b4d5825e2f2d415b3b3c7102b77eb02d8be..0000000000000000000000000000000000000000
Binary files a/peft/tuners/adalora/__pycache__/layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/adalora/__pycache__/model.cpython-310.pyc b/peft/tuners/adalora/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index 7f2021bb5753a376680ecf6e525756e213ab2008..0000000000000000000000000000000000000000
Binary files a/peft/tuners/adalora/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/adaption_prompt/__pycache__/__init__.cpython-310.pyc b/peft/tuners/adaption_prompt/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 184e90af87162a9f665e28c4ce774bcf3879c776..0000000000000000000000000000000000000000
Binary files a/peft/tuners/adaption_prompt/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/adaption_prompt/__pycache__/config.cpython-310.pyc b/peft/tuners/adaption_prompt/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index 5620960991c740728e640fbaba0b3ee37f715927..0000000000000000000000000000000000000000
Binary files a/peft/tuners/adaption_prompt/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/adaption_prompt/__pycache__/layer.cpython-310.pyc b/peft/tuners/adaption_prompt/__pycache__/layer.cpython-310.pyc
deleted file mode 100644
index fe8e680a78703597eb2451a156f935c0d6c95ba9..0000000000000000000000000000000000000000
Binary files a/peft/tuners/adaption_prompt/__pycache__/layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/adaption_prompt/__pycache__/model.cpython-310.pyc b/peft/tuners/adaption_prompt/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index eff23c789c1c4ec8306c200348ee2597665cc557..0000000000000000000000000000000000000000
Binary files a/peft/tuners/adaption_prompt/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/adaption_prompt/__pycache__/utils.cpython-310.pyc b/peft/tuners/adaption_prompt/__pycache__/utils.cpython-310.pyc
deleted file mode 100644
index a22d07f40ff74cd01df24cb784a37c2ee8c6fa0b..0000000000000000000000000000000000000000
Binary files a/peft/tuners/adaption_prompt/__pycache__/utils.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/boft/__pycache__/__init__.cpython-310.pyc b/peft/tuners/boft/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index bed15547e805fd2ab33a4f69fe4532967c755e03..0000000000000000000000000000000000000000
Binary files a/peft/tuners/boft/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/boft/__pycache__/config.cpython-310.pyc b/peft/tuners/boft/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index f6ec82042dfbdd8e67f0523e2bc9ea38c413d095..0000000000000000000000000000000000000000
Binary files a/peft/tuners/boft/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/boft/__pycache__/layer.cpython-310.pyc b/peft/tuners/boft/__pycache__/layer.cpython-310.pyc
deleted file mode 100644
index f9d713c6337c46706eb8bd26b8a98d7be3c27aeb..0000000000000000000000000000000000000000
Binary files a/peft/tuners/boft/__pycache__/layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/boft/__pycache__/model.cpython-310.pyc b/peft/tuners/boft/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index 6996580a894f7debd0972e5751a797b61c43ea78..0000000000000000000000000000000000000000
Binary files a/peft/tuners/boft/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/boft/fbd/__pycache__/__init__.cpython-310.pyc b/peft/tuners/boft/fbd/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 4700c2c398aeb4ff3698a416b027cbf92c93f50c..0000000000000000000000000000000000000000
Binary files a/peft/tuners/boft/fbd/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/ia3/__pycache__/__init__.cpython-310.pyc b/peft/tuners/ia3/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 7cabe4d57af91d6b3d2a94c96772dacc56328cdc..0000000000000000000000000000000000000000
Binary files a/peft/tuners/ia3/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/ia3/__pycache__/bnb.cpython-310.pyc b/peft/tuners/ia3/__pycache__/bnb.cpython-310.pyc
deleted file mode 100644
index ae41aba8b97dab2fcefa5fbb42ef6829f66f950d..0000000000000000000000000000000000000000
Binary files a/peft/tuners/ia3/__pycache__/bnb.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/ia3/__pycache__/config.cpython-310.pyc b/peft/tuners/ia3/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index f08a4bf2e09958a999b53be0d1e5a26ee6575d3e..0000000000000000000000000000000000000000
Binary files a/peft/tuners/ia3/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/ia3/__pycache__/layer.cpython-310.pyc b/peft/tuners/ia3/__pycache__/layer.cpython-310.pyc
deleted file mode 100644
index e5ea0fd2db957b8e920124aa1d7c26f355e0c79c..0000000000000000000000000000000000000000
Binary files a/peft/tuners/ia3/__pycache__/layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/ia3/__pycache__/model.cpython-310.pyc b/peft/tuners/ia3/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index db19e5da9ebe37b266d23f3ab7066ddba7882ba2..0000000000000000000000000000000000000000
Binary files a/peft/tuners/ia3/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/ln_tuning/__pycache__/__init__.cpython-310.pyc b/peft/tuners/ln_tuning/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index d0fcffe94d3a9219a294589746659365cb8e295c..0000000000000000000000000000000000000000
Binary files a/peft/tuners/ln_tuning/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/ln_tuning/__pycache__/config.cpython-310.pyc b/peft/tuners/ln_tuning/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index 0b823aa03d6464630e53452985c14909b529f480..0000000000000000000000000000000000000000
Binary files a/peft/tuners/ln_tuning/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/ln_tuning/__pycache__/layer.cpython-310.pyc b/peft/tuners/ln_tuning/__pycache__/layer.cpython-310.pyc
deleted file mode 100644
index 875ac9422c2dc26b69c13d09200829f56b42d092..0000000000000000000000000000000000000000
Binary files a/peft/tuners/ln_tuning/__pycache__/layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/ln_tuning/__pycache__/model.cpython-310.pyc b/peft/tuners/ln_tuning/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index db5bd3931933c11436191e35203fbd8aff28c035..0000000000000000000000000000000000000000
Binary files a/peft/tuners/ln_tuning/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/loha/__pycache__/__init__.cpython-310.pyc b/peft/tuners/loha/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 38f9e7b827d56cdeaeddd2063d4aad14c17dd330..0000000000000000000000000000000000000000
Binary files a/peft/tuners/loha/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/loha/__pycache__/config.cpython-310.pyc b/peft/tuners/loha/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index 8a0e96c2544adb484e03dfb5261aff7d09196135..0000000000000000000000000000000000000000
Binary files a/peft/tuners/loha/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/loha/__pycache__/layer.cpython-310.pyc b/peft/tuners/loha/__pycache__/layer.cpython-310.pyc
deleted file mode 100644
index 38d21cd45886c8a6b64bb74180f7dd283bbcfc11..0000000000000000000000000000000000000000
Binary files a/peft/tuners/loha/__pycache__/layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/loha/__pycache__/model.cpython-310.pyc b/peft/tuners/loha/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index 1a6946f6fb2c3971c0f5a6b3782b5d92380726cb..0000000000000000000000000000000000000000
Binary files a/peft/tuners/loha/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lokr/__pycache__/__init__.cpython-310.pyc b/peft/tuners/lokr/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 7b10a867a213b29ff420823e1b1c62d2ab2bc429..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lokr/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lokr/__pycache__/config.cpython-310.pyc b/peft/tuners/lokr/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index 0c9391e426b7d6130279aa192a4472074f06b02e..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lokr/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lokr/__pycache__/layer.cpython-310.pyc b/peft/tuners/lokr/__pycache__/layer.cpython-310.pyc
deleted file mode 100644
index f8243263de1845d3e276214e42027fbf341222ee..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lokr/__pycache__/layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lokr/__pycache__/model.cpython-310.pyc b/peft/tuners/lokr/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index 589c95fb409d59443f4eaf0e65824824527c8b6e..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lokr/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lora/__pycache__/__init__.cpython-310.pyc b/peft/tuners/lora/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 43066fb91b9eadf1383ba47951994f20e2d39ebe..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lora/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lora/__pycache__/aqlm.cpython-310.pyc b/peft/tuners/lora/__pycache__/aqlm.cpython-310.pyc
deleted file mode 100644
index 6b59d028a4488cbcae29e3a77b7d661436db436b..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lora/__pycache__/aqlm.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lora/__pycache__/awq.cpython-310.pyc b/peft/tuners/lora/__pycache__/awq.cpython-310.pyc
deleted file mode 100644
index 053a6d09147a23d30304bb5fef5197befccd6bcc..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lora/__pycache__/awq.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lora/__pycache__/bnb.cpython-310.pyc b/peft/tuners/lora/__pycache__/bnb.cpython-310.pyc
deleted file mode 100644
index b9fd73ad08603f81003f37e15d5ceead1bf4856c..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lora/__pycache__/bnb.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lora/__pycache__/config.cpython-310.pyc b/peft/tuners/lora/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index 57c08959f8d6993f9d72d225d1cdd628e1a3db71..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lora/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lora/__pycache__/eetq.cpython-310.pyc b/peft/tuners/lora/__pycache__/eetq.cpython-310.pyc
deleted file mode 100644
index 3a06827872f2a6ed7c5a77caedf48bf8a33a8d42..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lora/__pycache__/eetq.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lora/__pycache__/gptq.cpython-310.pyc b/peft/tuners/lora/__pycache__/gptq.cpython-310.pyc
deleted file mode 100644
index 9e5810cc1116a71af71f58eb379add607fa68605..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lora/__pycache__/gptq.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lora/__pycache__/hqq.cpython-310.pyc b/peft/tuners/lora/__pycache__/hqq.cpython-310.pyc
deleted file mode 100644
index 8177da62bb7d826672a032fbb1a11729e5cfb976..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lora/__pycache__/hqq.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lora/__pycache__/layer.cpython-310.pyc b/peft/tuners/lora/__pycache__/layer.cpython-310.pyc
deleted file mode 100644
index fceffa4daff88aa6fd925ae12722183e8e47388b..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lora/__pycache__/layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lora/__pycache__/model.cpython-310.pyc b/peft/tuners/lora/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index 8c1956d00d5eab0679f5bf25ddbb69720abc4297..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lora/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/lora/__pycache__/tp_layer.cpython-310.pyc b/peft/tuners/lora/__pycache__/tp_layer.cpython-310.pyc
deleted file mode 100644
index 881b5359c888dc05903ae134f1c7213b7b23d374..0000000000000000000000000000000000000000
Binary files a/peft/tuners/lora/__pycache__/tp_layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/mixed/__pycache__/__init__.cpython-310.pyc b/peft/tuners/mixed/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 434f0a0afa3e450f9a81fae0c2646177ad31e28b..0000000000000000000000000000000000000000
Binary files a/peft/tuners/mixed/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/mixed/__pycache__/model.cpython-310.pyc b/peft/tuners/mixed/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index 6af9320b2768cd109102bfa54778cf2fca1147d3..0000000000000000000000000000000000000000
Binary files a/peft/tuners/mixed/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/multitask_prompt_tuning/__pycache__/__init__.cpython-310.pyc b/peft/tuners/multitask_prompt_tuning/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 3c70362a684b92008a222000a7b82f3d250b5932..0000000000000000000000000000000000000000
Binary files a/peft/tuners/multitask_prompt_tuning/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/multitask_prompt_tuning/__pycache__/config.cpython-310.pyc b/peft/tuners/multitask_prompt_tuning/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index fe3dd0bc44bc0f6d8cd38cea2faec86a9965700b..0000000000000000000000000000000000000000
Binary files a/peft/tuners/multitask_prompt_tuning/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/multitask_prompt_tuning/__pycache__/model.cpython-310.pyc b/peft/tuners/multitask_prompt_tuning/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index 0031da8fb1055866a6be8e70886a8cb1df880e5f..0000000000000000000000000000000000000000
Binary files a/peft/tuners/multitask_prompt_tuning/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/oft/__pycache__/__init__.cpython-310.pyc b/peft/tuners/oft/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index dd40ffc99e05acbdce560604801f65856d3e8a55..0000000000000000000000000000000000000000
Binary files a/peft/tuners/oft/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/oft/__pycache__/config.cpython-310.pyc b/peft/tuners/oft/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index 067776feff3a353cdd0c9531c68b674918405fb2..0000000000000000000000000000000000000000
Binary files a/peft/tuners/oft/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/oft/__pycache__/layer.cpython-310.pyc b/peft/tuners/oft/__pycache__/layer.cpython-310.pyc
deleted file mode 100644
index b6394092daea9cb9c1f27e8a5d3137d86ae1a70c..0000000000000000000000000000000000000000
Binary files a/peft/tuners/oft/__pycache__/layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/oft/__pycache__/model.cpython-310.pyc b/peft/tuners/oft/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index 4e0bccb0d4a10e525210462ee1be022816ab63f3..0000000000000000000000000000000000000000
Binary files a/peft/tuners/oft/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/p_tuning/__pycache__/__init__.cpython-310.pyc b/peft/tuners/p_tuning/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index c1c324a0bf1c8673da68e2a63a8509b0df16c476..0000000000000000000000000000000000000000
Binary files a/peft/tuners/p_tuning/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/p_tuning/__pycache__/config.cpython-310.pyc b/peft/tuners/p_tuning/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index a95dc0c3c6ea52c33a2eca8e1be1c28f9ad9bf3a..0000000000000000000000000000000000000000
Binary files a/peft/tuners/p_tuning/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/p_tuning/__pycache__/model.cpython-310.pyc b/peft/tuners/p_tuning/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index 334098e141cec92cf1e431fb9e4f2329ed766218..0000000000000000000000000000000000000000
Binary files a/peft/tuners/p_tuning/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/poly/__pycache__/__init__.cpython-310.pyc b/peft/tuners/poly/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index b5cae1fca5c0a71e744b407516795e939543abbd..0000000000000000000000000000000000000000
Binary files a/peft/tuners/poly/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/poly/__pycache__/config.cpython-310.pyc b/peft/tuners/poly/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index 6bbd45c0a12c26bebee972bd81825a019a63f517..0000000000000000000000000000000000000000
Binary files a/peft/tuners/poly/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/poly/__pycache__/layer.cpython-310.pyc b/peft/tuners/poly/__pycache__/layer.cpython-310.pyc
deleted file mode 100644
index 540089adc2af803e75a0770eba8aadb507aa2298..0000000000000000000000000000000000000000
Binary files a/peft/tuners/poly/__pycache__/layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/poly/__pycache__/model.cpython-310.pyc b/peft/tuners/poly/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index c04f570b472a334507220c2124eb2ff705505f5a..0000000000000000000000000000000000000000
Binary files a/peft/tuners/poly/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/poly/__pycache__/router.cpython-310.pyc b/peft/tuners/poly/__pycache__/router.cpython-310.pyc
deleted file mode 100644
index 8c45e551f21b88093299f44e189b2a82e1cbaa71..0000000000000000000000000000000000000000
Binary files a/peft/tuners/poly/__pycache__/router.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/prefix_tuning/__pycache__/__init__.cpython-310.pyc b/peft/tuners/prefix_tuning/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 3ce5ca54fd323aa906e2ef6843a3c0099b5efc94..0000000000000000000000000000000000000000
Binary files a/peft/tuners/prefix_tuning/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/prefix_tuning/__pycache__/config.cpython-310.pyc b/peft/tuners/prefix_tuning/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index 7065dab677330f2f55a47c7915c1b0960c824d90..0000000000000000000000000000000000000000
Binary files a/peft/tuners/prefix_tuning/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/prefix_tuning/__pycache__/model.cpython-310.pyc b/peft/tuners/prefix_tuning/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index 76eb57d16b6ba10c7f816708adee9308832baea4..0000000000000000000000000000000000000000
Binary files a/peft/tuners/prefix_tuning/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/prompt_tuning/__pycache__/__init__.cpython-310.pyc b/peft/tuners/prompt_tuning/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index fdd772ea0a8b961a34d6b2f7af1d187b537a5739..0000000000000000000000000000000000000000
Binary files a/peft/tuners/prompt_tuning/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/prompt_tuning/__pycache__/config.cpython-310.pyc b/peft/tuners/prompt_tuning/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index cc31497e99ce70f7d18b2e18ec17dd62d009e95e..0000000000000000000000000000000000000000
Binary files a/peft/tuners/prompt_tuning/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/prompt_tuning/__pycache__/model.cpython-310.pyc b/peft/tuners/prompt_tuning/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index 0096fe7a5c97927a1b124419bdf920fca8aa9840..0000000000000000000000000000000000000000
Binary files a/peft/tuners/prompt_tuning/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/vera/__pycache__/__init__.cpython-310.pyc b/peft/tuners/vera/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index e98bb1fc671c6aee8f8399772dc0a778d63c8d03..0000000000000000000000000000000000000000
Binary files a/peft/tuners/vera/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/vera/__pycache__/buffer_dict.cpython-310.pyc b/peft/tuners/vera/__pycache__/buffer_dict.cpython-310.pyc
deleted file mode 100644
index 30ed9f2b7aad142f0f80a3dcc7cd0500ed83f4c8..0000000000000000000000000000000000000000
Binary files a/peft/tuners/vera/__pycache__/buffer_dict.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/vera/__pycache__/config.cpython-310.pyc b/peft/tuners/vera/__pycache__/config.cpython-310.pyc
deleted file mode 100644
index 46a6cb46cab34fa5ba742595ce48f4921348b2bb..0000000000000000000000000000000000000000
Binary files a/peft/tuners/vera/__pycache__/config.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/vera/__pycache__/layer.cpython-310.pyc b/peft/tuners/vera/__pycache__/layer.cpython-310.pyc
deleted file mode 100644
index 0e80108e0d094dc75bdf37ba20b272c931d6272f..0000000000000000000000000000000000000000
Binary files a/peft/tuners/vera/__pycache__/layer.cpython-310.pyc and /dev/null differ
diff --git a/peft/tuners/vera/__pycache__/model.cpython-310.pyc b/peft/tuners/vera/__pycache__/model.cpython-310.pyc
deleted file mode 100644
index eb93e9e45be0353a8291755bfe4e5ee395f26eac..0000000000000000000000000000000000000000
Binary files a/peft/tuners/vera/__pycache__/model.cpython-310.pyc and /dev/null differ
diff --git a/peft/utils/__pycache__/__init__.cpython-310.pyc b/peft/utils/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 9d6be355c8b5f487c5b51e1b52907443c9d8ed3f..0000000000000000000000000000000000000000
Binary files a/peft/utils/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/peft/utils/__pycache__/constants.cpython-310.pyc b/peft/utils/__pycache__/constants.cpython-310.pyc
deleted file mode 100644
index 2c88b9505331e5fdc88bd0f94f3301c5ce07e4d8..0000000000000000000000000000000000000000
Binary files a/peft/utils/__pycache__/constants.cpython-310.pyc and /dev/null differ
diff --git a/peft/utils/__pycache__/integrations.cpython-310.pyc b/peft/utils/__pycache__/integrations.cpython-310.pyc
deleted file mode 100644
index 22f34689aa7dc1dc47b17de541b76a2c08c42cc3..0000000000000000000000000000000000000000
Binary files a/peft/utils/__pycache__/integrations.cpython-310.pyc and /dev/null differ
diff --git a/peft/utils/__pycache__/loftq_utils.cpython-310.pyc b/peft/utils/__pycache__/loftq_utils.cpython-310.pyc
deleted file mode 100644
index 40add20f2681b0668f5bbcc8415e8d2046f8820a..0000000000000000000000000000000000000000
Binary files a/peft/utils/__pycache__/loftq_utils.cpython-310.pyc and /dev/null differ
diff --git a/peft/utils/__pycache__/merge_utils.cpython-310.pyc b/peft/utils/__pycache__/merge_utils.cpython-310.pyc
deleted file mode 100644
index c8be9fd55f3de55880a37922719d27d8f50fe02f..0000000000000000000000000000000000000000
Binary files a/peft/utils/__pycache__/merge_utils.cpython-310.pyc and /dev/null differ
diff --git a/peft/utils/__pycache__/other.cpython-310.pyc b/peft/utils/__pycache__/other.cpython-310.pyc
deleted file mode 100644
index 7665a0977730ebff9edcb1d3bf5ed2f82aaf243c..0000000000000000000000000000000000000000
Binary files a/peft/utils/__pycache__/other.cpython-310.pyc and /dev/null differ
diff --git a/peft/utils/__pycache__/peft_types.cpython-310.pyc b/peft/utils/__pycache__/peft_types.cpython-310.pyc
deleted file mode 100644
index 466ea91521aa922489526a91729886436cee5818..0000000000000000000000000000000000000000
Binary files a/peft/utils/__pycache__/peft_types.cpython-310.pyc and /dev/null differ
diff --git a/peft/utils/__pycache__/save_and_load.cpython-310.pyc b/peft/utils/__pycache__/save_and_load.cpython-310.pyc
deleted file mode 100644
index e7baa51dc5f10e4629c2bce8ecbd49eaf7b6b140..0000000000000000000000000000000000000000
Binary files a/peft/utils/__pycache__/save_and_load.cpython-310.pyc and /dev/null differ
diff --git a/pipelines/__pycache__/pipeline_imagecoductor.cpython-310.pyc b/pipelines/__pycache__/pipeline_imagecoductor.cpython-310.pyc
deleted file mode 100644
index bfa7a0da04273f420859de00b9956270fa57e1e6..0000000000000000000000000000000000000000
Binary files a/pipelines/__pycache__/pipeline_imagecoductor.cpython-310.pyc and /dev/null differ
diff --git a/requirements.txt b/requirements.txt
index 9d7deab7dfee802a3d835c766de41f8381a8243a..eb8d8719c4ce3d7864d6580c215262483dc76538 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,29 +1,28 @@
-torch
-torchvision
-torchaudio
-transformers==4.32.1
-gradio==4.38.1
-ftfy
-tensorboard
-datasets
-Pillow==9.5.0
-opencv-python
-imgaug
accelerate==0.23.0
-image-reward
-hpsv2
-torchmetrics
-open-clip-torch
-clip
av2
-peft
-imageio-ffmpeg
-scipy
-tqdm
-einops
+clip
+datasets
diffusers==0.28.0
+einops
+ftfy
+gradio==4.38.1
+hpsv2
+image-reward
+imageio-ffmpeg
+imgaug
+numpy==1.26.2
omegaconf
+open-clip-torch
+opencv-python
+peft
+Pillow==9.5.0
scikit-image
scikit-learn
-numpy==1.26.2
-
+scipy
+tensorboard
+torch
+torchaudio
+torchmetrics
+torchvision
+tqdm
+transformers==4.32.1
diff --git a/utils/__pycache__/convert_from_ckpt.cpython-310.pyc b/utils/__pycache__/convert_from_ckpt.cpython-310.pyc
deleted file mode 100644
index 35988a572bebdcec2da2830e79889488975df453..0000000000000000000000000000000000000000
Binary files a/utils/__pycache__/convert_from_ckpt.cpython-310.pyc and /dev/null differ
diff --git a/utils/__pycache__/convert_lora_safetensor_to_diffusers.cpython-310.pyc b/utils/__pycache__/convert_lora_safetensor_to_diffusers.cpython-310.pyc
deleted file mode 100644
index 2536faa654441e074aa6a9204301c62d838c1a62..0000000000000000000000000000000000000000
Binary files a/utils/__pycache__/convert_lora_safetensor_to_diffusers.cpython-310.pyc and /dev/null differ
diff --git a/utils/__pycache__/gradio_utils.cpython-310.pyc b/utils/__pycache__/gradio_utils.cpython-310.pyc
deleted file mode 100644
index 5be6755314c372cc0c0bb37bb65ad18b55d27bab..0000000000000000000000000000000000000000
Binary files a/utils/__pycache__/gradio_utils.cpython-310.pyc and /dev/null differ
diff --git a/utils/__pycache__/lora_utils.cpython-310.pyc b/utils/__pycache__/lora_utils.cpython-310.pyc
deleted file mode 100644
index 8e4a21a4c4815e943ad916d86d9aef9522422373..0000000000000000000000000000000000000000
Binary files a/utils/__pycache__/lora_utils.cpython-310.pyc and /dev/null differ
diff --git a/utils/__pycache__/utils.cpython-310.pyc b/utils/__pycache__/utils.cpython-310.pyc
deleted file mode 100644
index 3097d1c3d5ecd5a0c7091c30feea10450d844c55..0000000000000000000000000000000000000000
Binary files a/utils/__pycache__/utils.cpython-310.pyc and /dev/null differ
diff --git a/utils/__pycache__/visualizer.cpython-310.pyc b/utils/__pycache__/visualizer.cpython-310.pyc
deleted file mode 100644
index d25e81cafb1edbab61053bbf2f483cdfe26f3398..0000000000000000000000000000000000000000
Binary files a/utils/__pycache__/visualizer.cpython-310.pyc and /dev/null differ