如何使用 opencv 使用外部摄像头捕获视频
How to capture video with an external camera using opencv
我正在尝试从我的 pixy2 相机捕捉视频。
我写了这段代码:
import cv2 as cv
vid = cv.VideoCapture(1, cv.CAP_DSHOW)
while (True):
ret, frame = vid.read()
cv.imshow('frame', frame)
if cv.waitKey(1) & 0xFF == ord('q'):
break
vid.release()
cv.destroyAllWindows()
我收到这个错误:
"C:\Users\User\PycharmProjects\OpenCV tutorial\venv\Scripts\python.exe" "C:/Users/User/PycharmProjects/OpenCV tutorial/OpenCV_1.py"
Traceback (most recent call last):
File "C:\Users\User\PycharmProjects\OpenCV tutorial\OpenCV_1.py", line 14, in <module>
cv.imshow('frame', frame)
cv2.error: OpenCV(4.5.3) C:\Users\runneradmin\AppData\Local\Temp\pip-req-build-sn_xpupm\opencv\modules\imgproc\src\color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'
Process finished with exit code 1
任何帮助,请!!
实际上这个错误不是基于您的视频捕获操作。 -正确地将捕获参数设置为 1 -
这里有两个提示,可帮助您确定此错误背后的原因;
- 首先在您的代码
vid = cv.VideoCapture(1, cv.CAP_DSHOW)
这一行之后使用这一行:
vid not cap.isOpened(): print("Cannot open camera") exit()
此代码可帮助您了解您的外部摄像头是打开还是关闭。
- 第二个技巧是关于阅读阶段。
if not ret: print("Can't receive frame (stream end?). Exiting ...") break
你会在 1.st 步或 2.nd 步得到错误,是的!
顺便说一句欢迎 :)
我正在尝试从我的 pixy2 相机捕捉视频。 我写了这段代码:
import cv2 as cv
vid = cv.VideoCapture(1, cv.CAP_DSHOW)
while (True):
ret, frame = vid.read()
cv.imshow('frame', frame)
if cv.waitKey(1) & 0xFF == ord('q'):
break
vid.release()
cv.destroyAllWindows()
我收到这个错误:
"C:\Users\User\PycharmProjects\OpenCV tutorial\venv\Scripts\python.exe" "C:/Users/User/PycharmProjects/OpenCV tutorial/OpenCV_1.py"
Traceback (most recent call last):
File "C:\Users\User\PycharmProjects\OpenCV tutorial\OpenCV_1.py", line 14, in <module>
cv.imshow('frame', frame)
cv2.error: OpenCV(4.5.3) C:\Users\runneradmin\AppData\Local\Temp\pip-req-build-sn_xpupm\opencv\modules\imgproc\src\color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'
Process finished with exit code 1
任何帮助,请!!
实际上这个错误不是基于您的视频捕获操作。 -正确地将捕获参数设置为 1 -
这里有两个提示,可帮助您确定此错误背后的原因;
- 首先在您的代码
vid = cv.VideoCapture(1, cv.CAP_DSHOW)
这一行之后使用这一行:
vid not cap.isOpened(): print("Cannot open camera") exit()
此代码可帮助您了解您的外部摄像头是打开还是关闭。
- 第二个技巧是关于阅读阶段。
if not ret: print("Can't receive frame (stream end?). Exiting ...") break
你会在 1.st 步或 2.nd 步得到错误,是的!
顺便说一句欢迎 :)