1
我想从IP CAM(sony snc p1)拍摄图像,用于使用opencv java进行运动检测。该流为mjpeg格式,我使用opencv的VideoCapture尝试检索图像。我可以使用视频捕捉从视频文件中抓取图像,但是当我尝试打开相机不起作用时。我可以在vlc上查看流,但该ip地址在opencv上不起作用。这是我使用的代码:索尼IP摄像头opencv Java
while (true){
VideoCapture camera1=newVideoCapture("http://192.168.0.101/mjpeg");
if (!camera1.isOpened())
System.out.println("Cannot open file");
}
您不应该在while循环中反复实例化新的VideoCapture实例:在while循环之前执行一次。你在使用什么操作系统?你用VLC进行测试很好。你有什么视频支持OpenCV内置?先尝试直接打开IP摄像机。例如,如果您使用支持FFMPEG的OpenCV,请先从FFMPEG中直接打开相机(对于GStreamer,V4L等)。如果在那里不起作用,那不是OpenCV相关的。如果确实如此,请仔细检查OpenCV是否使用相同的视频支持。 HTH –
最糟糕的情况,从实用的角度来看,看看是否有另一个IP Camera Java库,如果是的话,它可能会允许你以'BufferedImage'的形式访问流, –