Spaces:
Sleeping
Sleeping
""" | |
Source url: https://github.com/OPHoperHPO/image-background-remove-tool | |
Author: Nikita Selin (OPHoperHPO)[https://github.com/OPHoperHPO]. | |
License: Apache License 2.0 | |
""" | |
from pathlib import Path | |
from PIL import Image | |
import warnings | |
from typing import Optional | |
def save_file(output: Optional[Path], input_path: Path, image: Image.Image): | |
""" | |
Saves an image to the file system | |
Args: | |
output: Output path [dir or end file] | |
input_path: Input path of the image | |
image: Image to be saved. | |
""" | |
if isinstance(output, Path) and str(output) != "none": | |
if output.is_dir() and output.exists(): | |
image.save(output.joinpath(input_path.with_suffix(".png").name)) | |
elif output.suffix != "": | |
if output.suffix != ".png": | |
warnings.warn( | |
f"Only export with .png extension is supported! Your {output.suffix}" | |
f" extension will be ignored and replaced with .png!" | |
) | |
image.save(output.with_suffix(".png")) | |
else: | |
raise ValueError("Wrong output path!") | |
elif output is None or str(output) == "none": | |
image.save( | |
input_path.with_name( | |
input_path.stem.split(".")[0] + "_bg_removed" | |
).with_suffix(".png") | |
) | |