Проблема с чтением видео с использованием opencv - PullRequest
0 голосов
/ 08 мая 2020

В этом коде отображается все видео в виде кадра, но в конце он также возвращает None для последнего кадра?

cap = cv2.VideoCapture("demo.mp4")
while(cap.isOpened()):
  status, frame = cap.read()
  gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
  cv2_imshow(gray)
  if cv2.waitKey(1) & 0xFF == ord('q'):
    break

cap.release()
cv2.destroyAllWindows()



error: OpenCV(4.1.2) /io/opencv/modules/imgproc/src/color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cvtColor'

Это отображается как ошибка.

1 Ответ

1 голос
/ 09 мая 2020

Это можно решить, немного изменив код следующим образом, убедившись, что фрейм не пустой:

cap = cv2.VideoCapture("demo.mp4")
while(cap.isOpened()):
  status, frame = cap.read()
  if status:
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    cv2_imshow(gray)
    if cv2.waitKey(1) & 0xFF == ord('q'):
      break
  else:
    break

cap.release()
cv2.destroyAllWindows()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...