weixin_57922847
2021-06-05 15:21
采纳率: 100%
浏览 56

python+opencv调用摄像头,本站原封不动拷贝的例程,报错未定义变量,究竟是为什么?

import cv2
import numpy as np
def video_demo():  
    cap = cv2.VideoCapture(0,cv2.CAP_DSHOW)    
while(True):
    ret,frame = cap.read()
    frame = cv2.flip(frame, 1)
    cv2.imshow("capture", frame)
    cv2.imshow("video", frame)
    c = cv2.waitKey(50)
    if c == 27:
        break
video_demo()
cv2.destroyAllWindows()

runfile('C:/Users/Administrator/.spyder-py3/temp.py', wdir='C:/Users/Administrator/.spyder-py3')
Traceback (most recent call last):

  File "C:\Users\Administrator\.spyder-py3\temp.py", line 10, in <module>
    ret,frame = cap.read()

NameError: name 'cap' is not defined

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 答题大神 2021-06-05 15:25
    已采纳
    import cv2
    import numpy as np
    def video_demo():  
        cap = cv2.VideoCapture(0,cv2.CAP_DSHOW)    
        while(True):
            ret,frame = cap.read()
            frame = cv2.flip(frame, 1)
            cv2.imshow("capture", frame)
            cv2.imshow("video", frame)
            c = cv2.waitKey(50)
            if c == 27:
                break
    video_demo()
    cv2.destroyAllWindows()

    你试一下这样可以不,python严格区分缩进。

    点赞 1 打赏 评论
  • 延时等待一下,再执行下面的代码。

    cap = cv2.VideoCapture(0,cv2.CAP_DSHOW)

     

     

    点赞 打赏 评论
  • 有问必答小助手 2021-06-07 15:52

    您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

    如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

    ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

    点赞 打赏 评论

相关推荐 更多相似问题