Ошибка потокового видео с OpenCv - PullRequest
0 голосов
/ 15 мая 2018

У меня есть некоторые проблемы с файлом opencv для потокового видео, которые я не разрешаю.Когда я запускаю команду $ python stream.py, где 'strem.py' - это имя файла, это результат:

andrimig@andrimig-X555LD:~$ python stream.py

ОШИБКА ВИДЕО:

V4L: index 1 is not correct!
Traceback (most recent call last):
  File "stream.py", line 21, in <module>
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.error: OpenCV(4.0.0-pre) /home/andrimig/opencv/modules/imgproc/src/color.hpp:253: error: (-215:Assertion failed) VScn::contains(scn) && VDcn::contains(dcn) && VDepth::contains(depth) in function 'CvtHelper'

Как я могу решить это?Я хочу передавать потоковое видео с внешней камеры, а не с веб-камеры ноутбука.Это мой файл:

import cv2
import numpy as np
import sys

sys.path.append('/home/andrimig/opencv/build/lib')

# Playing video from file:
# cap = cv2.VideoCapture('vtest.avi')
# Capturing video from webcam:
cap = cv2.VideoCapture(1)

currentFrame = 0
while(True):
    # Capture frame-by-frame
    ret, frame = cap.read()

    # Handles the mirroring of the current frame
    frame = cv2.flip(frame,1)

    # Our operations on the frame come here
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    # Saves image of the current frame in jpg file
    # name = 'frame' + str(currentFrame) + '.jpg'
    # cv2.imwrite(name, frame)

    # Display the resulting frame
    cv2.imshow('frame',gray)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

    # To stop duplicate images
    currentFrame += 1

# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()

Это проект для моей диссертации.

...