Spaces:
Sleeping
Sleeping
# Create a list of hashmap key values . | |
import torch | |
import time | |
import gc | |
from io import BytesIO | |
import requests | |
import os | |
from PIL import Image | |
from pathlib import Path | |
image_list = [] | |
# Utility Functions to be called from all modules | |
# Function to return a list of keys of a nested dictionary using it's key value (item or creature) | |
def keys_list(dict, index): | |
keys_list=list(dict.keys()) | |
return keys_list[index] | |
# Function to clear model from VRAM to make space for other model | |
def reclaim_mem(): | |
print(f"Memory before del {torch.cuda.memory_allocated()}") | |
torch.cuda.ipc_collect() | |
gc.collect() | |
torch.cuda.empty_cache() | |
time.sleep(0.01) | |
print(f"Memory after del {torch.cuda.memory_allocated()}") | |
#def del_object(object): | |
# del object | |
# gc.collect() | |
# Create a list of a directory if directory exists | |
def directory_contents(directory_path): | |
if os.path.isdir(directory_path) : | |
contents = os.listdir(directory_path) | |
return contents | |
else : pass | |
# Delete a list of file | |
def delete_files(file_paths): | |
for file_path in file_paths: | |
try: | |
os.remove(f"./image_temp/{file_path}") | |
print(f"Remove : ./image_temp/{file_path}") | |
except OSError as e: | |
print(f"Error: {file_path} : {e.strerror}") | |
file_paths.clear() | |
def open_image_from_url(image_url): | |
response = requests.get(image_url) | |
image_data = BytesIO(response.content) | |
image = Image.open(image_data) | |
return image | |
def receive_upload(image_file): | |
image = Image.open(image_file[0][0]) | |
print(image) | |
return image | |