Spaces:
Runtime error
Runtime error
| import modules.async_worker as worker | |
| import os | |
| import cv2 | |
| import imageio | |
| import numpy as np | |
| import rembg | |
| import torch | |
| import PIL.Image | |
| from PIL import Image | |
| from typing import Any | |
| class pipeline: | |
| def remove_background( | |
| self, | |
| image: PIL.Image.Image, | |
| rembg_session: Any = None, | |
| force: bool = False, | |
| **rembg_kwargs, | |
| ) -> PIL.Image.Image: | |
| do_remove = True | |
| if image.mode == "RGBA" and image.getextrema()[3][0] < 255: | |
| do_remove = False | |
| do_remove = do_remove or force | |
| if do_remove: | |
| image = rembg.remove(image, session=rembg_session, **rembg_kwargs) | |
| return image | |
| pipeline_type = ["rembg"] | |
| model_hash = "" | |
| # Optional function | |
| def parse_gen_data(self, gen_data): | |
| gen_data["original_image_number"] = gen_data["image_number"] | |
| gen_data["image_number"] = 1 | |
| gen_data["show_preview"] = False | |
| return gen_data | |
| def load_base_model(self, name): | |
| return | |
| def load_keywords(self, lora): | |
| return " " | |
| def load_loras(self, loras): | |
| return | |
| def refresh_controlnet(self, name=None): | |
| return | |
| def clean_prompt_cond_caches(self): | |
| return | |
| def process( | |
| self, | |
| gen_data=None, | |
| callback=None, | |
| ): | |
| worker.add_result( | |
| gen_data["task_id"], | |
| "preview", | |
| (-1, f"Removing background ...", None) | |
| ) | |
| rembg_session = rembg.new_session() | |
| image = self.remove_background(gen_data["input_image"], rembg_session) | |
| # Return finished image to preview | |
| if callback is not None: | |
| callback(1, 0, 0, 1, image) | |
| return [image] | |