import gradio as gr import tensorflow as tf import numpy as np from PIL import Image # загрузка модели model = tf.keras.models.load_model("path/to/your/model") def apply_filter(image_path, filter_name): # загрузка изображения image = Image.open(image_path) # конвертируем изображение в формат RGB image = image.convert('RGB') # изменяем размер изображения до 224x224 image = image.resize((224, 224)) # конвертируем изображение в массив numpy image = np.array(image) # нормализуем значения пикселей изображения image = image / 255.0 # применяем модель к изображению result = model.predict(np.array([image])) # преобразуем результат в изображение result_image = Image.fromarray(np.uint8(result[0] * 255)) return result_image # определяем интерфейс пользователя inputs = [ gr.inputs.Image(label="Выберите изображение", type="file"), gr.inputs.Dropdown(label="Фильтр", choices=["фильтр 1", "фильтр 2", "фильтр 3"]) ] outputs = gr.outputs.Image(label="Обработанное изображение") # создаем веб-интерфейс для фоторедактора gr.Interface(fn=apply_filter, inputs=inputs, outputs=outputs, title="Фоторедактор с использованием искусственного интеллекта").launch()