如何访问我的网络摄像机流?
显示标准网络摄像头流的代码是
import cv2
import numpy as np
cap = cv2.VideoCapture(0)
while(True):
ret, frame = cap.read()
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
我如何使用网络摄像机做同样的事情?
我的系统:
- 蟒蛇 2.7.14
- OpenCV 2.4.9
- Teledyne Dalsa Genie Nano XL 相机
您可以使用视频捕获对象作为
camera = cv2.VideoCapture("IP:PORT/video")
原文由 Employee 发布,翻译遵循 CC BY-SA 4.0 许可协议
我回答了我自己的问题报告,因此似乎是在 Python OpenCV 中访问 IP 摄像机的 最全面 的整体过程。
给定一个网络摄像机:
IP
地址port
protocol
(HTTP/RTSP等)然后,如果您的相机受到保护,请继续查找:
username
password
然后使用您的数据运行以下脚本:
注意:在我最初的问题中,我指定要使用 Teledyne Dalsa Genie Nano XL Camera 。不幸的是,对于这种摄像机,这种访问 IP 摄像机视频流的正常方式不起作用,必须使用 Sapera SDK 才能从设备中抓取帧。