我们在NDI的帮助下获得了来自摄像机的视频流。我们如何在OpenCV中获得它?
import cv2
cap = cv2.VideoCapture("tcp://192.168.1.69")
while cap.isOpened():
_, frame = cap.read()
# frame processing
我们尝试了字符串的以下变体:
tcp://192.168.1.69
tcp://192.168.1.69:8080
http://192.168.1.69
http://192.168.1.69:8080
udp://192.168.1.69:8080
但是我们每次都会出错。使用NDI流的正确字符串是什么?
答案 0 :(得分:1)
有点晚了,我确定您可能已经遇到了解决方案。您还没有说明平台要求。因此,目前我的解决方案仅是Windows。
“ NDI虚拟输入”驱动程序允许将NDI网络流视为网络摄像头源。因此,您只需将视频捕获源设置为设备的ID。这要求将驱动程序安装在客户端系统上
import cv2
cap = cv2.VideoCapture(1) # Could be any number, it's system specific, but it's u=usually 0, 1 etc.
while cap.isOpened():
_, frame = cap.read()
# frame processing
答案 1 :(得分:0)
看看PyNDI-我在那里添加了一些示例,向您展示了如何将NDI引入openCV。
SimpleSourceViewer是基于命令行的,GUIExample使用TKInter为您提供一个界面。