Spaces:
Configuration error
Configuration error
from huggingface_hub import from_pretrained_keras | |
from tensorflow import keras | |
from PIL import Image | |
import numpy as np | |
import io | |
def create_model() -> keras.Model: | |
return from_pretrained_keras("keras-io/lowlight-enhance-mirnet") | |
def run_model(image_bytes: io.BytesIO, model: keras.Model) -> Image.Image: | |
image: Image.Image = Image.open(image_bytes) | |
width: int | |
height: int | |
width, height = image.size | |
image: Image.Image = image.resize((960, 640)) | |
image_array: np.ndarray = keras.utils.img_to_array(image) | |
image_array: np.ndarray = image_array.astype("float32") / 255.0 | |
image_array: np.ndarray = np.expand_dims(image_array, axis=0) | |
output: np.ndarray = model.predict(image_array) | |
output_image_array: np.ndarray = output[0] * 255.0 | |
output_image_array: np.ndarray = output_image_array.clip(0, 255) | |
output_image_array: np.ndarray = output_image_array.reshape( | |
(np.shape(output_image_array)[0], np.shape(output_image_array)[1], 3) | |
) | |
output_image_array: np.ndarray = np.uint32(output_image_array) | |
output_image_array: np.ndarray = output_image_array.astype(np.uint8) | |
output_image: Image.Image = Image.fromarray(output_image_array) | |
output_image: Image.Image = output_image.resize((width, height)) | |
# Uncomment if necessary: | |
# output_image.save("user_data/output.jpg") | |
return output_image | |