#python #opencv #tkinter #graphics #python-imaging-library
#питон #opencv #tkinter #графика #python-библиотека изображений
Вопрос:
У меня есть задача создать программу, которая создает 3 эффекта перехода между двумя изображениями с помощью Python. Я создал графический интерфейс и tkinter и добавил функцию, позволяющую пользователю открывать два изображения, но я не знаю, как создавать эти эффекты. Я знаю, что мне следует использовать библиотеки celluloid или ffmpeg. Но нет достаточной информации о том, как это сделать и какие функции использовать. Пожалуйста, помогите!!
import tkinter as tk import cv2 from tkinter import * from tkinter import filedialog from PIL import ImageTk, Image from celluloid import Camera from IPython.display import HTML root = tk.Tk() def openfn(): filename = filedialog.askopenfilename(title='open') return filename def open_img(): x = openfn() img = Image.open(x) img = img.resize((150, 150), Image.ANTIALIAS) img = ImageTk.PhotoImage(img) panel = tk.Label(root, image=img) panel.image = img panel.place(x = 100, y = 100) def open_img2(): x = openfn() img = Image.open(x) img = img.resize((150, 150), Image.ANTIALIAS) img = ImageTk.PhotoImage(img) panel = tk.Label(root, image=img) panel.image = img panel.place(x=270, y=100) def swipe() : pass def curtain() : pass def fade() : pass canvas = tk.Canvas(root, height = 700, width = 500, bg = "blue") canvas.pack() frame = tk.Frame(root, bg = 'white') frame.place(relwidth = 0.8, relheight = 0.8, relx = 0.1, rely = 0.1) openFile= tk.Button(root, text = "Open File", padx = 10, pady = 5, fg = "white", bg = 'brown', command = open_img) openFile.place(relx = 0.5,rely = 0.85, anchor = 'center') openFile2 = tk.Button(root, text = "Open 2nd File", padx = 10, pady = 5, fg = "white", bg = 'brown', command = open_img2) openFile2.place(relx = 0.7,rely = 0.85, anchor = 'center') root.mainloop()