【发布时间】:2019-08-16 07:10:48
【问题描述】:
我正在按照指南开发运动检测安全 Feed,但遇到了问题。教程的作者没有问题,但我有。
'''完整代码可以在这里找到:https://github.com/ncorbuk/Python-Motion-Detection-system/blob/master/motion_detection.py '''
我已经尝试了添加的选项,
" for c in cnt or []: " - 这让我可以进一步运行应用程序,在那里我可以看到摄像头屏幕,但是一旦检测到运动,应用程序就会崩溃并提供以下 numpy 错误:
具有多个元素的数组的真值是不明确的。 使用 a.any() 或 a.all()
for c in cnt:
if (cv2.contourArea(c) > 800):
(x, y, w, h) = cv2.boundingRect(c)
cv2.rectangle(frame, (x,y), (x+w, y+h), (0, 255, 0), 2)
text = 'Occupied'
else:
pass
预期的输出,如果你有一个网络摄像头; 当检测到运动时,一个绿色矩形将跟随运动像素,并实时将模式从 Unoccupied 更改为 Occupied;没有错误。
【问题讨论】:
-
你使用的是什么版本的 OpenCV?
-
@AlexanderReynolds 我正在使用 opencv-python==4.0.0.21
标签: python opencv typeerror nonetype