大家好,写tkinter的时候有如下疑问 opencv和python的问题 我定义了两个按钮com

大家好,写tkinter的时候有如下疑问 opencv和python的问题 我定义了两个按钮command,一个按钮是打开摄像头显示实时画面。另一个按钮我想调用第一个command函数的实时画面,在他的基础上进行画面的实时处理。但是好像我返回值返的是一帧不会动的,是不是要把每一帧存到数组里作为返回值呀[疑问]要怎么改改呀~ 最终显示原实时画面和hsv实时画面 谁可以帮我这一段呀或者改一改,有偿[face]monkey2:019.png[/face][face]monkey2:019.png[/face][face]monkey2:018.png[/face]

tkinter没用过,不过我只是按照正常的opencv操作写了个思路仅供参考。

import cv2
class camara():
    def __init__(self,windowName="1"):
        self.cap=cv2.VideoCapture(0)
        self.windowName=windowName

    def opencamara(self):
        while self.cap.isOpened():
            self.ret, self.frame = self.cap.read()
            cv2.imshow(self.windowName,self.frame)
            if cv2.waitKey(1)==27:#模拟按键按下第二个按钮
                #cv2.destroyAllWindows()
                #如果不需要再开一个窗,那就先把这个窗关掉,或者,将windowname传递过去
                self.dealwith(windowNmae=self.windowName)
                break
        self.cap.release()
        cv2.destroyAllWindows()


    def dealwith(self,windowNmae="2"):
        while self.cap.isOpened():
            self.ret, self.frame = self.cap.read()
            hsv = cv2.cvtColor(self.frame, cv2.COLOR_RGB2HSV)
            cv2.imshow(windowNmae, hsv)
            if cv2.waitKey(1)==27:
                #self.cap.release()
                break
        self.cap.release()
        cv2.destroyAllWindows()

test=camara()
test.opencamara()
#test.dealwith()