Прозрачный холст на видео OpenCV - PullRequest
0 голосов
/ 26 июня 2019

Можно ли создать прозрачный холст в tkinter для видео opencv?Я хочу нарисовать некоторые вещи на видео в приложении tkinter.

Я пытался с этим кодом:

#Graphics window
mainWindow = tk.Tk()
mainWindow.configure(bg=lightBlue2)
mainWindow.geometry('%dx%d+%d+%d' % (maxWidth,maxHeight,0,0))
mainWindow.resizable(0,0)
# mainWindow.overrideredirect(1)
c = Canvas(mainWindow, width=640, height=480, bd=0, highlightthickness=0)
c.create_line(0,240,640,240, fill='blue')
c.pack()
mainFrame = Frame(mainWindow)
mainFrame.place(x=20, y=20)                

#Capture video frames
lmain = tk.Label(mainFrame)
lmain.grid(row=0, column=0)

cap = cv2.VideoCapture('foot.mp4')

def show_frame():
    ret, frame = cap.read()

    cv2image   = cv2.cvtColor(frame, cv2.COLOR_BGR2RGBA)

    img   = Image.fromarray(cv2image).resize((760, 400))
    imgtk = ImageTk.PhotoImage(image = img)
    lmain.imgtk = imgtk
    lmain.configure(image=imgtk)
    lmain.after(10, show_frame)

closeButton = Button(mainWindow, text = "CLOSE", font = fontButtons, bg =             white, width = 20, height= 1)
closeButton.configure(command= lambda: mainWindow.destroy())              
closeButton.place(x=270,y=430)  

show_frame()  #Display
mainWindow.mainloop()  #Starts GUI

, но холст всегда находится внизу на видео или вверху

1 Ответ

0 голосов
/ 26 июня 2019

В tkinter невозможно сделать прозрачный холст, но можно сделать прозрачным winodw.Вам нужно сделать что-то еще

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...