OpenCV 1.2.0 (2.0 Beta)

Categories:
Uncategorized
Tags:
beta, opencv, source code

Win32 installer

Taken from the changelog:

>>> New functionality, features: <<< – General:
* The brand-new C++ interface for most of OpenCV functionality
(cxcore, cv, highgui) has been introduced.
Generally it means that you will need to do less coding to achieve the same results;
it brings automatic memory management and many other advantages.
See the C++ Reference section in opencv/doc/opencv.pdf and opencv/include/opencv/*.hpp.
The previous interface is retained and still supported.

* The source directory structure has been reogranized; now all the external headers are placed
in the single directory on all platforms.

* The primary build system is CMake, http://www.cmake.org (2.6.x is the preferable version).
+ In Windows package the project files for Visual Studio, makefiles for MSVC,
Borland C++ or MinGW are note supplied anymore; please, generate them using CMake.

+ In MacOSX the users can generate project files for Xcode.

+ In Linux and any other platform the users can generate project files for
cross-platform IDEs, such as Eclipse or Code Blocks,
or makefiles for building OpenCV from a command line.

* OpenCV repository has been converted to Subversion, hosted at SourceForge:
http://opencvlibrary.svn.sourceforge.net/svnroot/opencvlibrary
where the very latest snapshot is at
http://opencvlibrary.svn.sourceforge.net/svnroot/opencvlibrary/trunk,
and the more or less stable version can be found at
http://opencvlibrary.svn.sourceforge.net/svnroot/opencvlibrary/tags/latest_tested_snapshot

– CXCORE, CV, CVAUX:

* CXCORE now uses Lapack (CLapack 3.1.1.1 in OpenCV 2.0) in its various linear algebra functions
(such as solve, invert, SVD, determinant, eigen etc.) and the corresponding old-style functions
(cvSolve, cvInvert etc.)

* Lots of new feature and object detectors and descriptors have been added
(there is no documentation on them yet), see cv.hpp and cvaux.hpp:

+ FAST – the fast corner detector, submitted by Edward Rosten

+ MSER – maximally stable extremal regions, submitted by Liu Liu

+ LDetector – fast circle-based feature detector by V. Lepetit (a.k.a. YAPE)

+ Fern-based point classifier and the planar object detector –
based on the works by M. Ozuysal and V. Lepetit

+ One-way descriptor – a powerful PCA-based feature descriptor,
(S. Hinterstoisser, O. Kutter, N. Navab, P. Fua, and V. Lepetit,
“Real-Time Learning of Accurate Patch Rectification”).
Contributed by Victor Eruhimov

+ Spin Images 3D feature descriptor – based on the A. Johnson PhD thesis;
implemented by Anatoly Baksheev

+ Self-similarity features – contributed by Rainer Leinhart

+ HOG people and object detector – the reimplementation of Navneet Dalal framework
(http://pascal.inrialpes.fr/soft/olt/). Currently, only the detection part is ported,
but it is fully compatible with the original training code.
See cvaux.hpp and opencv/samples/c/peopledetect.cpp.

+ Extended variant of the Haar feature-based object detector – implemented by Maria Dimashova.
It now supports Haar features and LBPs (local binary patterns);
other features can be more or less easily added

+ Adaptive skin detector and the fuzzy meanshift tracker – contributed by Farhad Dadgostar,
see cvaux.hpp and opencv/samples/c/adaptiveskindetector.cpp

* The new traincascade application complementing the new-style HAAR+LBP object detector has been added.
See opencv/apps/traincascade.

* The powerful library for approximate nearest neighbor search FLANN by Marius Muja
is now shipped with OpenCV, and the OpenCV-style interface to the library
is included into cxcore. See cxcore.hpp and opencv/samples/c/find_obj.cpp

* The bundle adjustment engine has been contributed by PhaseSpace; see cvaux.hpp

* Added dense optical flow estimation function (based on the paper
“Two-Frame Motion Estimation Based on Polynomial Expansion” by G. Farnerback).
See cv::calcOpticalFlowFarneback and the C++ documentation

* Image warping operations (resize, remap, warpAffine, warpPerspective)
now all support bicubic and Lanczos interpolation.

* Most of the new linear and non-linear filtering operations (filter2D, sepFilter2D, erode, dilate …)
support arbitrary border modes and can use the valid image pixels outside of the ROI
(i.e. the ROIs are not “isolated” anymore), see the C++ documentation.

* The data can now be saved to and loaded from GZIP-compressed XML/YML files, e.g.:
cvSave(“a.xml.gz”, my_huge_matrix);

– MLL:
* Added the Extremely Random Trees that train super-fast,
comparing to Boosting or Random Trees (by Maria Dimashova).

* The decision tree engine and based on it classes
(Decision Tree itself, Boost, Random Trees)
have been reworked and now:
+ they consume much less memory (up to 200% savings)
+ the training can be run in multiple threads (when OpenCV is built with OpenMP support)
+ the boosting classification on numerical variables is especially
fast because of the specialized low-overhead branch.

* mltest has been added. While far from being complete,
it contains correctness tests for some of the MLL classes.

– HighGUI:
* [Linux] The support for stereo cameras (currently Videre only) has been added.
There is now uniform interface for capturing video from two-, three- … n-head cameras.

* Images can now be compressed to or decompressed from buffers in the memory,
see the C++ HighGUI reference manual

– Documentation:
* The reference manual has been converted from HTML to LaTeX (by James Bowman and Caroline Pantofaru),
so there is now:
+ opencv.pdf for reading offline
+ and the online up-to-date documentation
(as the result of LaTeX->Sphinx->HTML conversion) available at
http://opencv.willowgarage.com/documentation/index.html

– Samples, misc.:
* Better eye detector has been contributed by Shiqi Yu,
see opencv/data/haarcascades/*[lefteye|righteye]*.xml
* sample LBP cascade for the frontal face detection
has been created by Maria Dimashova,
see opencv/data/lbpcascades/lbpcascade_frontalface.xml
* Several high-quality body parts and facial feature detectors
have been contributed by Modesto Castrillon-Santana,
see opencv/data/haarcascades/haarcascade_mcs*.xml

>>> Optimization:
* Many of the basic functions and the image processing operations
(like arithmetic operations, geometric image transformations, filtering etc.)
have got SSE2 optimization, so they are several times faster.

– The model of IPP support has been changed. Now IPP is supposed to be
detected by CMake at the configuration stage and linked against OpenCV.
(In the beta it is not implemented yet though).

* PNG encoder performance improved by factor of 4 by tuning the parameters