1. 前言
之前所谓的"一些准备"其实就是这个接口问题。
OpenCV本身并没有媒体接口,所以本质上应该都是利用ffmpeg了。
2. OpenCV + IP Camera
发现这里算是说的最清除的了。copy一下
Option1 : Using opencv, libcurl and libjpeg
其实也就是一些准备里那个链接里用的方法,只是做了一个wrapper
Option2: Using gstreamer (no opencv)
Option3: Using gstreamer, Named Pipe and opencv
3. Examples
3.1 WiFi IP
Using your IP Camera with OpenCV
这里把ffmpeg, x264, gstreamer, v4l甚至xine全部装上了。应该没必要。至少我的opencv 2.4.6.1 没有包括xine和v4l(但是有v4l2)还有gstreamer。实际上configure就没找着后两个
3.2 Axis
试了四种型号:223M, 233D,Q1755, Q6034-E
URL是关键Axis IP camera URL。只试了MJPEG。发现有两种格式
http://IPADDRESS/axis-cgi/mjpg/video.cgi
http://IPADDRESS/mjpg/video.mjpg
VLC两种都能打开。OpenCV只认第2种
4. 其他
C++ code Capturing image from IP / Ethernet Cameras (AXIS Cam)