python 3.x tkinter,将来自 opencv cv2 的帧整合到 tkinter window
python 3.x tkinter, integrating frames from opencv cv2 into tkinter window
我有一个问题,如何将 tkinter 与 cv2 集成,我的意思是我可以创建一个充满对象的 tkinter window 并且我可以在一个框架中打开我的笔记本电脑相机,但我想集成它"frame" 从 openCV cv2 到 tkinter window,在其他对象旁边,我该怎么做?
我正在使用,Python 3.4,OpenCV,Numpy,Scipy,Windows 8
这是我的代码
import time, serial, sys, os, cv2
import tkinter as tk
from tkinter import *
from cv2 import *
from scipy import *
from numpy import array
from tkinter import ttk
try:
import Tkinter
import ttk
except ImportError:
import tkinter as Tkinter
import tkinter.ttk as ttk
mGui = Tk()
mGui.geometry('120x67+0+0')
mGui.configure(background="Sky Blue")
cap = cv2.VideoCapture(0)
ret, frame = cap.read()
cv2.imshow("Camera's View", frame)
mGui.mainloop()
谢谢
我明白了,如果你也拉我起来
我必须
- 创建框架
- 在框架内创建一个标签
- 获取相机的视图并将其转换为图像
- 读取图像并赋值给一个变量
- 为标签(图片)创建一个新的属性
- 将红色图像分配给 属性
- 配置标签显示图片
现在很清楚,很明显
这是代码(包括以前的库)
from PIL import Image, ImageTk (add library)
mGui = Tk()
mGui.geometry('600x600+0+0')
mGui.configure(background="Sky Blue")
fframe = Frame(mGui, width=500, height=500)
fframe.place(x=50, y=50)
cap = cv2.VideoCapture(0)
ret, frame = cap.read()
v1 = Label(fframe, text="fchgvjvjhb")
v1.place(x=0, y=10)
v2 = Label(fframe, text="ajajajaja")
v2.place(x=300, y=10)
def dddd():
ret, frame = cap.read()
img = Image.fromarray(frame)
nimg = ImageTk.PhotoImage(image=img)
v1.n_img = nimg
v1.configure(image=nimg)
gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
gimg = Image.fromarray(gray)
gnimg = ImageTk.PhotoImage(image=gimg)
v2.ng_img = gnimg
v2.configure(image=gnimg)
mGui.after(10, dddd)
dddd()
mGui.mainloop()
我有一个问题,如何将 tkinter 与 cv2 集成,我的意思是我可以创建一个充满对象的 tkinter window 并且我可以在一个框架中打开我的笔记本电脑相机,但我想集成它"frame" 从 openCV cv2 到 tkinter window,在其他对象旁边,我该怎么做?
我正在使用,Python 3.4,OpenCV,Numpy,Scipy,Windows 8
这是我的代码
import time, serial, sys, os, cv2
import tkinter as tk
from tkinter import *
from cv2 import *
from scipy import *
from numpy import array
from tkinter import ttk
try:
import Tkinter
import ttk
except ImportError:
import tkinter as Tkinter
import tkinter.ttk as ttk
mGui = Tk()
mGui.geometry('120x67+0+0')
mGui.configure(background="Sky Blue")
cap = cv2.VideoCapture(0)
ret, frame = cap.read()
cv2.imshow("Camera's View", frame)
mGui.mainloop()
谢谢
我明白了,如果你也拉我起来
我必须
- 创建框架
- 在框架内创建一个标签
- 获取相机的视图并将其转换为图像
- 读取图像并赋值给一个变量
- 为标签(图片)创建一个新的属性
- 将红色图像分配给 属性
- 配置标签显示图片
现在很清楚,很明显
这是代码(包括以前的库)
from PIL import Image, ImageTk (add library)
mGui = Tk()
mGui.geometry('600x600+0+0')
mGui.configure(background="Sky Blue")
fframe = Frame(mGui, width=500, height=500)
fframe.place(x=50, y=50)
cap = cv2.VideoCapture(0)
ret, frame = cap.read()
v1 = Label(fframe, text="fchgvjvjhb")
v1.place(x=0, y=10)
v2 = Label(fframe, text="ajajajaja")
v2.place(x=300, y=10)
def dddd():
ret, frame = cap.read()
img = Image.fromarray(frame)
nimg = ImageTk.PhotoImage(image=img)
v1.n_img = nimg
v1.configure(image=nimg)
gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
gimg = Image.fromarray(gray)
gnimg = ImageTk.PhotoImage(image=gimg)
v2.ng_img = gnimg
v2.configure(image=gnimg)
mGui.after(10, dddd)
dddd()
mGui.mainloop()