opencv2 NameError: name 'output' is not defined

opencv2 NameError: name 'output' is not defined

** Python cv2 opencv2 live cam打不开界面只显示灰图界面...这个是打开camera界面但不是live video.........**

import cv2

    def main():
        windowName = "Live video Feed"
        cv2.namedWindow(windowName)
        cap = cv2.VideoCapture(0)

        if cap.isOpened():
            ret, frame = cap.read()
        else:
            ret = False

        while ret:
            ret, frame = cap.read()

            cv2.imshow("Gray", output)
            cv2.imshow(windowName, frame)
            if cv2.waitKey(1) == 27:
                break

        cv2.destroyAllWindow()


        cap.release()


    if __name__== "__main__":
        main() 

呃……

Traceback (most recent call last):
      File "C:\Users\Lenovo\Desktop\live webcame pro.py", line 32, in <module>
        main()
      File "C:\Users\Lenovo\Desktop\live webcame pro.py", line 20, in main
        cv2.imshow("Gray", output)
    NameError: name 'output' is not defined
    >>> 
while ret:
    ret, frame = cap.read()

之间添加这个脚本
    output = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) 

之间

    cv2.imshow("Gray", output)
    cv2.imshow(windowName, frame)
    if cv2.waitKey(1) == 27:
        break
while ret:
            ret, frame = cap.read()

仅在下一行后添加此内容。

output = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)