问题描述
外部摄像机正在http://localhost:3000/index.html
上输出视频流。
我想让我可以将此流用于opencv人脸检测和其他算法。
到目前为止,我已经尝试过:
import cv2
import warnings
warnings.filterwarnings('ignore')
cap = cv2.VideoCapture("http://localhost:3000/index.html")
while True:
ret,frame = cap.read()
cv2.imshow('video',frame)
k = cv2.waitKey(30) & 0xff
if k == 27: # press 'ESC' to quit
break
这将返回以下错误:
[ERROR:0] global C:\projects\opencv-python\opencv\modules\videoio\src\cap.cpp (116) cv::VideoCapture::open VIDEOIO(CV_IMAGES): raised OpenCV exception:
OpenCV(4.1.2) C:\projects\opencv-python\opencv\modules\videoio\src\cap_images.cpp:253: error: (-5:Bad argument) CAP_IMAGES: can't find starting number (in the name of file): http://localhost:3000/ in function 'cv::icvExtractPattern'
Traceback (most recent call last):
File "C:/Users/void_/PycharmProjects/aimL/Computer Vision/app3.py",line 18,in <module>
cv2.imshow('video',frame)
cv2.error: OpenCV(4.1.2) C:\projects\opencv-python\opencv\modules\highgui\src\window.cpp:376: error: (-215:Assertion Failed) size.width>0 && size.height>0 in function 'cv::imshow'
我已经在系统上安装了FFMpeg。我如何继续使用本地服务器http://localhost:3000/index.html
上的视频流?
下图显示了实时供稿的一部分以及正在运行流的终端窗口。
解决方法
这个问题我已经解决了。
我正在尝试从正在输出到localhost:3000 / index.html的Web浏览器上的输出中提取提要。这是从源头输出的。因此,要获取提要,我需要访问提要的源而不是UDP端口。
# Fake data
var1<-sample(c('A','B','C'),replace = T,size=100)
var2<-sample(c(0,1),size=100,replace=T)
var3<-rnorm(100,mean=10,sd=2)
#Turn into a data frame
df<-data.frame(var1,var2,var3)
#make multinomial models
library(nnet)
m1<-multinom(var1~var2,data=df)
m2<-multinom(var1~var3,data=df)
m3<-multinom(var1~var2+var3,data=df)
#
summary(m1)$coefficients
summary(m2)$coefficients
#This doesn't work,but I thought it would
stargazer(m3,type="text",coef=list(summary(m1)$coefficients[,2],summary(m2)$coefficients[,2]))
流开始了!