为什么摄像头捕获在opencv中使用python后会崩溃?

时间:2016-01-03 10:44:41

标签: python opencv python-3.x

使用python的OpenCV(MAC OS X EL Capitan)

我正在尝试使用openCV在python中实现简单的颜色检测代码。

以下是我的颜色检测代码示例。

hsvTracker.py

import numpy as np
import cv2 as cv

cap = cv.VideoCapture(0)

while (1):
    #take each frame
    _, frame = cap.read()

    #Convert BGR to HSV
    hsv = cv.cvtColor(frame, cv.COLOR_BGR2HSV)

    #define range of blue color in hsv
    lower_blue = np.array([110,100,100])
    upper_blue = np.array([130,255,255])

    #Threshold the HSV image to get only blue colors
    mask = cv.inRange(hsv, lower_blue, upper_blue)

    #Bitwise-AND mask to the original image will give us tracked object
    res = cv.bitwise_and(frame,frame,mask=mask)

    cv.imshow('Frame',frame)
    cv.imshow('mask',mask)
    cv.imshow('res',res)
    k=cv.waitKey(7) & 0xFF
    if k == 27:
        break
cv.destroyAllWindows()

当我运行此代码时,它正常工作,并检测到蓝色对象。但过了一段时间后,这会突然崩溃,并提供以下异常堆栈。它是否真的与相机捕捉问题有关,还是与代码中的其他内容有关?

first image of stack trace

second image of stack trace

询问我是否需要更多详细信息。

0 个答案:

没有答案