rows, cols, _ = frame.shape AttributeError: 'tuple' object has no attribute 'shape'

rows, cols, _ = frame.shape AttributeError: 'tuple' object has no attribute 'shape'

我正在尝试 运行 一个代码,但它给我这个错误:

rows, cols, _ = frame.shape AttributeError: 'tuple' 对象没有属性 'shape'

我正在使用 OpenCV 和 python 3.6,我也安装了 NumPy。该应用程序使用相机获取帧并检测眼睛。 错误在这里

  import cv2
  import numpy as np
  import dlib
  cap = cv2.VideoCapture(0)

 while True:

frame = cap.read()
#frame = cv2.resize(frame, None, fx=0.8, fy=0.8)
rows, cols, _ = frame.shape
keyboard[:] = (26, 26, 26)
frames += 1
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

你能帮帮我吗?

谢谢

cap.read() returns 两个值的元组。根据读取的帧 correctly/not,第一个值将是 True/False,第二个值是帧数组。在您的情况下,您将不得不使用 frame = cap.read()[1]