OS Specific Stuff
Linux Version
In beta 5, test programs are not built by default. To build, run "make check" (see CxTest for more information on running and writing tests).
The current distribution of OpenCV (0.9.7 beta 5) does *NOT* work with GCC 4.0 or 4.1. Before compiling, you will have to run the configure script as follows: CXXFLAGS=-fno-strict-aliasing ./configure . GCC 4.0 will *NOT* (but 4.1 will) give *ANY* warning whatsoever that something is wrong (it is a bug of GCC 4.0), but it will *NOT* work, so you have been warned. If this option is not used with GCC 4.0 or 4.1, the resulting library has lots of errors as evidenced by failed tests in the test programs and the test programs segfaulting. Alternatively, you can also use the CVS version. The aliasing bugs are fixed in the CVS version.
Building will fail on x86_64 platforms and GCC 4.0.2 using the beta 5 release with errors about various SSE things like "'__m128d' was not declared" . Since GCC 4 and beta 5 are broken anyway, use the CVS version. GCC 3.2.3 may also work.
Sometimes the configure script may generate a bad makefile for your system if it was generated by a version of autoconf/automake/etc that is too old for your system. For example, you may get linking errors for the library files on x86_64. To fix this, run autoreconf in the root opencv directory (where configure is) to regenerate the scripts. Then run make distclean and run the newly generated configure to generate new makefiles.
Linux OpenCV Camera Compatibility
For some cameras (e.g. Quickcam Express) try running "v4lctl -c /dev/video0 setinput X" to get a valid list of inputs and then set it appropriately with the same command.
Camera |
Type |
Driver |
Tested On |
Tested By |
OpenCV version |
Comments |
|
ieee1394 |
video1394 |
i686 Linux 2.6 |
from 0.9.6 |
Format7 tested in selfmade code |
|||
ieee1394 |
video1394 |
i686 Linux 2.6 |
from 0.9.6 |
Format7 tested in selfmade code |
|||
PCI Video Grabber |
i686 Linux 2.6 |
CVS, 0.97 |
Calibrated rig with hardware accelerated stereo |
|
|||
USB |
i686 Linux 2.6 |
CVS, 0.9.7 |
|
||||
USB |
x86_64 Linux 2.6 |
CVS |
|
||||
USB |
i686 Linux 2.6.8 |
0.9.7 |
|
||||
USB |
i686 Linux 2.6 |
CVS |
|
||||
USB |
x86_64 Linux 2.6 |
CVS |
|
||||
USB |
x86_64 Linux 2.6 |
1.0.0 |
Test date: 2007-03-20 |
||||
Acer Crystal Eye |
USB |
x86_64 Linux 2.6 |
Learner |
1.0.0 |
With a 25 frm/s frame rate, 640*480 resolution |
||
USB |
i686 Linux 2.6 |
Benjamin Dosch |
CVS |
|
|||
ieee1394 |
video1394 |
i686 Linux 2.6 |
CVS |
|
|||
ieee1394 |
video1394 |
x86_64 Linux 2.6 |
CVS |
|
|||
USB |
i686 Linux 2.6 |
CVS |
Test date: 2006-01-22 |
||||
ieee1394 |
video1394 |
x86_64 Linux 2.6 and i686 Linux 2.6 |
Jose Rui Simoes |
CVS, 0.9.7 |
|
||
ieee1394 |
video1394 |
i686 Linux 2.6 |
1.0 |
|
|||
GigE |
Prosilica GigE SDK |
i686 Linux 2.6 |
1.0 |
|
|||
USB |
spca5xx (v4l) |
i686 Linux 2.6 |
CVS,0.9.7 |
Test date: 2006-03-29 |
|||
USB |
spca5xx (v4l) |
i686 Linux 2.6 |
CVS |
Test date: 03/23/2006 |
|||
USB |
i686 Linux 2.6 |
CVS |
Test date: 03/23/2006 |
||||
USB |
i686 Linux 2.6 |
CVS |
Test date: 03/23/2006 |
||||
USB |
qc-usb-messenger (v4l) or quickcam_messenger (since 2.6.18) |
i686 Linux 2.6 |
CVS |
Test date: 03/23/2006 |
|||
USB |
spca5xx (v4l) |
i686 Linux 2.6 |
CVS |
Test date: 03/23/2006 |
|||
Philips Semiconductors SAA7130 |
PCI Video Grabber |
Linux 2.6.15 i686 |
0.9.6, 0.9.7 |
The card works well with kernel 2.6.* and OpenCV |
|||
USB |
pwc (v4l) |
i686 Linux 2.6 |
CVS |
Test date: 03/24/2006 |
|||
Philips PCVC740K Toucam Pro |
USB |
pwc (v4l) |
i686 Linux 2.6 |
CVS |
Test date: 03/24/2006 |
||
bt848 based TV/Video Grabber |
PCI TV/Video Grabber |
bttv driver from stock kernel (v4l2) |
i686 Linux 2.6 |
CVS |
Test date: 2006-03-29 |
||
bt878 rev 2 based TV/Video Grabber |
PCI TV/Video Grabber |
bttv driver from stock kernel (v4l2) |
i686 Linux 2.6 |
CVS+patch |
Test date: 2006-03-29, patch from OlivierBornet but not yet commited to anonymous access |
||
USB |
i686 Linux 2.6 |
Benjamin Dosch |
CVS |
|
|||
LG LIC-300 |
USB |
i686 Linux 2.6 |
Jose Luis Múgica |
1.0.0 |
Test date 2007-05-09 |
||
Bluesky BW200 (Similar to Q-Tec 100) |
USB |
i686 Linux 2.6 |
Jose Luis Múgica |
1.0.0 |
Test date 2007-05-17 |
||
Dynex 1.3 MP Webcam |
USB |
i686 Linux 2.6 |
Bernie Elayda |
1.1pre1 |
Test date 2009-08-09 |
||
Logitech, Inc. QuickCam Pro 9000 |
USB |
uvcvideo |
i686 Linux 2.6.28-15-generic |
1.0.0 |
Test date: 2009-10-25, Ubuntu 9.04, uvcvideo module comes with default installation, whole procedure is rather Plug&Play |
||
Playstation 3 Eye camera |
USB |
gspca_ov534 |
i686 Linux 2.6.25.20-0.5-pae and 2.6.27.29-0.1-pae |
2.0.0 |
Test date: 2009-10-15, OpenSuse 11.0 and 11.1 - compiled latest version of v4l/dvb from http://linuxtv.org/hg/v4l-dvb/ (*) |
||
Playstation 3 Eye camera |
USB |
gspca_ov534 |
i686 Linux 2.6.31.5-0.1 |
2.0.0 |
Test date: 2009-11-13, OpenSuse 11.2 - works out of the box (*) |
||
Logitech, Inc. QuickCam E1000 |
USB |
gspca_zc3xx |
i686 Linux 2.6.27.29-0.1-pae |
2.0.0 |
Test date: 2009-10-27, OpenSuse 11.1, compiled latest version of v4l/dvb from http://linuxtv.org/hg/v4l-dvb/ |
||
Logitech, Inc. QuickCam E1000 |
USB |
gspca_zc3xx |
i686 Linux 2.6.31.5-0.1 |
2.0.0 |
Test date: 2009-11-13, OpenSuse 11.2 - works out of the box |
||
Logitech, Inc. QuickCam Pro 9000 |
USB |
uvcvideo |
2.6.26-2-686 #1 SMP |
2.0.0 |
Test date: 2010-03-15, Debian Lenny, Plug&Play |
||
Logitech Webcam C120 |
USB |
uvcvideo |
i686 Linux 2.6.32-24-generic |
Ralph Glass |
2.1.0 |
Test date: 2010-08-07, Ubuntu 10.04, manual ffmpeg&openCV compile necessary |
(*) If you have problems with synchronization while using cvQueryFrame using PS3Eye please contact me: there's a workaround
MacOS X Version
OpenCV 2.0 for Mac/Linux/Unix is available on the files section of SourceForge.
Until the next release of OpenCV, there is now a pre-built version (universal binary Private Framework, together with a demo application). Have a look at the PrivateFramework page or download it from http://www.ient.rwth-aachen.de/cms/software/opencv/.
Additional information on building and on the current state of development can be found on the Mac_OS_X_OpenCV_Port page.
MacOS X Compatible Cameras
Camera |
Type |
Driver |
Tested On |
Tested By |
OpenCV version |
Comments |
ieee1394 |
video1394 |
MacOS X 10.4.8 |
CVS, 1.0 |
Test date: 2006-11-07 |
||
USB |
uvc |
MacOS X 10.4.8 |
Roman Stanchak |
1.0 |
|
|
USB |
MacOS X 10.4.7 |
CVS |
Test date: 2006-08-09 |
|||
USB |
UVC |
MacOS X 10.6.3 |
2.1.1, SVN |
Date: 2010-07-09. r3304. Horizontally flipped. |
Windows Version
Windows Compatible Cameras
Camera |
Type |
Driver |
Tested On |
Tested By |
OpenCV version |
Comments |
PCI Video Grabber |
Windows XP |
Beta5 |
Calibrated rig with hardware accelerated stereo |
|||
USB |
Windows XP |
Beta5 |
|
|||
USB |
Windows XP |
Beta5 |
Stereo capture with 2 cameras OK |
|||
USB |
DirectX |
Windows XP |
Beta5 |
Cameras OK |
||
IEEE-1394a |
Windows 2000 Pro/XP |
1.0 |
|
|||
GigE Vision |
Windows 2000 Pro/XP |
1.0 |
|
|||
USB |
DirectX |
Windows XP |
1.0 |
Camera OK, Problems with camera selection in stereo configuration |
||
Bluesky BW200 (Similar to Q-Tec 100) |
USB |
Windows XP |
Jose Luis Múgica |
1.0 |
Works perfect. Test date 2007-05-18 |
|
USB |
Windows XP/Vista |
1.0 |
Camera OK. Test date 2008-07-15 |
|||
USB |
Windows XP |
1.0 |
camera OK. Test date 2009-02-02 |
|||
USB |
Windows XP |
1.0 |
camera OK. Test date 2009-02-02 |
|||
USB |
Downloadable only with registered product |
Windows 7 (32-bit) |
2.1 |
Vertically flipped. Avoid 2.x driver. Date: 2010-06-04 |
||
USB |
Windows 7 (32-bit) |
2.0, SVN |
Plug&Play. Horizontally flipped. Date: 2010-04-03 |
|||
USB |
Windows XP |
2.0 (bundled with Emgu 2.0.1.0) |
Plug&Play. Date: 2010-03-01 |
|||
USB |
Windows XP/Vista/7 |
2.1 |
Plug&Play. Be careful of Codecs, YUV works well. Date: 2010-08-26 |
|||
USB |
Windows XP |
2.1 |
Plug&Play. Date: 2010-09-06 |
DirectShow without the hassle
You can use the video input library at http://muonics.net/school/spring05/videoInput/ to avoid the messiness of dealing with DirectShow. It even works for direct capture to the imageData field of an IPL image, though I found that the result was upsidedown and had red and blue switched. (Note from author of videoInput: new version out! With option to have RGB or BGR pixels and loads of other features)
Firewire 1394 cameras without Direct X
You can install the CMU 1394 driver for your camera and then use the API of this driver to capture video from the camera. In this way, you can avoid the use of DirectX. See example for details.
VC Smart Cameras
OpenCV can run on VC Smart Cameras now. Vision Components + OpenCV
Leutron Vision PicSight Smart GigE cameras
OpenCV runs on PicSight Smart GigE Cameras. PicSight Smart GigE & OpenCV