Как комбинировать методы в tkinter?
Делаю приложение на tkinter для обработки изображений с помощью Opencv. Нужно скомбинировать несколько методов обработки(в моём случае отзеркаливание и размытие по Гауссу). Но на выходе у меня получается исходное изображение. Как исправить?
Класс Окна
class Window:
def __init__(self, wight, height, title='Курсовой проект', resizable=(False, False), icon=None):
"""Параметры окна"""
self.root = Tk()
self.root.title(title)
self.root.geometry(f"{wight}x{height}")
# self.root.resizable(resizable[0], resizable[1])
if icon:
self.root.iconbitmap(icon)
self.entry = Entry(self.root, width=4) # Поле ввода Маски
self.choice = IntVar(value=0) # Переменная для привязки Radiobutton
self.scale = Scale(self.root,
from_=1,
to=21,
command=self.fix_scale_odd_number,
orient=VERTICAL) # ползунок Размытия
self.image = []
self.changed_image = []
Открытие файла
def open_image(self):
cv.destroyAllWindows()
file_name = fd.askopenfilename(defaultextension=". jpg", filetypes=("* .jpg", "* .png"))
self.image = cv.imread(file_name)
self.changed_image = self.image
cv.imshow('Original image', self.image)
Работа с изображением
def mirror_picture(self):
orient = self.choice.get()
if self.image == []:
mb.showerror(title="Ошибка", message="Файл отсутствует!")
else:
if orient == 0:
cv.imshow("Horizontal mirror", self.changed_image[::-1])
elif orient == 1:
cv.imshow("Vertical mirror", self.changed_image[:, ::-1])
def gaus_blur(self):
mask = self.scale.get()
if self.image == []:
mb.showerror(title="Ошибка", message="Файл отсутствует!")
else:
self.changed_image = self.image
cv.destroyWindow('Blur')
gaus = cv.GaussianBlur(self.changed_image, (mask, mask), 0)
cv.imshow('Blur', gaus)
Вывод изображения со всеми эффектами Здесь, собственно и весь завис*
def show_file(self):
cv.imshow("Changed file", self.changed_image)
