from PIL import Image, ImageFilter
def ImageLoad():
while True:
file_name=input("Введите название изображения (например, image.jpg): ")
if file_name.strip():
image = Image.open(file_name)
return image, file_name
print("Ошибка: файл не найден.")
def ImageSave(image):
while True:
new_name=input("Введите новое имя для изображения (например, edited_image.jpg): ")
if new_name.strip():
image.save(new_name)
print(f"Изображение успешно сохранено как {new_name}")
break
print("Имя файла не может быть пустым.")
print("Ошибка: файл не найден.")
def apply_filter(image):
print("\nДоступные действия:")
print("1. Поворот")
print("2. Поворот, без обрезания углов")
print("3. Фильтр черно-белый цвет")
print("4. фильтр FIND EDGES")
print("5. филтр CONTOUR")
print("6. Фильтр EMBOSS")
print("7. фильтр EDGE ENHANCE")
print("0. Вернуться назад")
choice = input("Выберите фильтр (ведите номер): ")
if choice == "1":
rotate_choice=input("Введите насколько вы хотите повернуть изображение")
return image.rotate(rotate_choice)
elif choice == "2":
rotate_second_choice=input("Введите насколько вы хотите повернуть изображение")
return image.rotate(rotate_second_choice)
elif choice == "3":
return image.сonvert("L")
elif choice == "4":
return image.filter(ImageFilter.FIND_EDGES)
elif choice == "5":
return image.filter(ImageFilter.CONTOUR)
elif choice == "6":
return image.filter(ImageFilter.EMBOSS)
elif choice == "7":
return image.filter(ImageFilter.EDGE_ENHANCE)
elif choice == "0":
return None
else:
print("Ошибка: Некорректное действие.")
return None
def main():
print("Добро пожаловать в консольный фоторедактор!")
image, file_name = ImageLoad()
while True:
print("\nВыберите действия:")
print("1. Изменить изображение")
print("2. Сохранить изображение")
print("3. Повторное выбрать изображение")
print("4. Выйти")
choice = input("Введите номер действия: ")
if choice == "1":
image = apply_filter(image)
print("Фильтр успешно применен.")
elif choice == "2":
ImageSave(image)
elif choice == "3":
image, file_name = ImageLoad()
elif choice == "4":
print("Выход из программы. До свидания!")
break
else:
print("Ошибка: Некорректное действие.")
main()