pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/graphics/opencv
Module Name: pkgsrc
Committed By: wiz
Date: Fri Jun 1 20:53:56 UTC 2012
Modified Files:
pkgsrc/graphics/opencv: Makefile PLIST distinfo
pkgsrc/graphics/opencv/patches: patch-CMakeLists.txt
Log Message:
Update to 2.4.1. Now builds with clang. Python option
not tested. New ffmpeg support not enabled in package.
2.4.1
June, 2012
The changes since 2.4.0
The GPU module now supports CUDA 4.1 and CUDA 4.2 and can be
compiled with CUDA 5.0 preview.
Added API for storing OpenCV data structures to text string
and reading them back:
cv::calcOpticalFlowPyrLK now supports precomputed pyramids as
input.
Function signatures in documentation are made consistent with
source code.
Restored python wrappers for SURF and MSER.
45 more bugs in our bug tracker have been fixed
2.4.0
May, 2012
The major changes since 2.4 beta
OpenCV now provides pretty complete build information via
(surprise) cv::getBuildInformation().
reading/writing video via ffmpeg finally works and it's now
available on MacOSX too.
note 1: we now demand reasonably fresh versions of ffmpeg/libav
with libswscale included.
note 2: if possible, do not read or write more than 1 video
simultaneously (even within a single thread) with ffmpeg 0.7.x
or earlier versions, since they seem to use some global structures
that are destroyed by simultaneously executed codecs. Either
build and install a newer ffmpeg (0.10.x is recommended), or
serialize your video i/o, or use parallel processes instead of
threads.
MOG2 background subtraction by Zoran Zivkovic was optimized
using TBB.
The reference manual has been updated to match OpenCV 2.4.0
better (though, not perfectly).
>20 more bugs in our bug tracker have been closed
(http://code.opencv.org/projects/opencv/roadmap).
Asus Xtion is now properly supported for HighGUI. For now, you
have to manually specify this device by using
VideoCapture(CV_CAP_OPENNI_ASUS) instead of
VideoCapture(CV_CAP_OPENNI).
2.4 beta
April, 2012
As usual, we created 2.4 branch in our repository
(http://code.opencv.org/svn/opencv/branches/2.4), where we will
further stabilize the code. You can check this branch periodically,
before as well as after 2.4 release.
Common changes
At the age of 12, OpenCV got its own home! http://code.opencv.org
is now the primary site for OpenCV development and http://opencv.org
(to be launched soon) will be the official OpenCV user site.
Some of the old functionality from the modules imgproc, video,
calib3d, features2d, objdetect has been moved to legacy.
CMake scripts have been substantially modified. Now it's very
easy to add new modules - just put the directory with include,
src, doc and test sub-directories to the modules directory,
create a very simple CMakeLists.txt and your module will be
built as a part of OpenCV. Also, it's possible to exclude
certain modules from build (the CMake variables
"BUILD_opencv_<modulename>" control that).
New functionality
The new very base cv::Algorithm class has been introduced. It's
planned to be the base of all the "non-trivial" OpenCV
functionality. All Algorithm-based classes have the following
features:
"virtual constructor", i.e. an algorithm instance can be created by
name;
there is a list of available algorithms;
one can retrieve and set algorithm parameters by name;
one can save algorithm parameters to XML/YAML file and then load them.
A new ffmpeg wrapper has been created that features multi-threaded
decoding, more robust video positioning etc. It's used with
ffmpeg starting with 0.7.x versions.
features2d API has been cleaned up. There are no more numerous
classes with duplicated functionality. The base classes
FeatureDetector and DescriptorExtractor are now derivatives of
cv::Algorithm. There is also the base Feature2D, using which
you can detect keypoints and compute the descriptors in a single
call. This is also more efficient.
SIFT and SURF have been moved to a separate module named nonfree
to indicate possible legal issues of using those algorithms in
user applications. Also, SIFT performance has been substantially
improved (by factor of 3-4x).
The current state-of-art textureless detection algorithm,
Line-Mod by S. Hinterstoisser, has been contributed by Patrick
Mihelich. See objdetect/objdetect.hpp, class Detector.
3 face recognition algorithms have been contributed by Philipp
Wagner. Please, check opencv/contrib/contrib.hpp, FaceRecognizer
class, and opencv/samples/cpp/facerec_demo.cpp.
2 algorithms for solving PnP problem have been added. Please,
check flags parameter in solvePnP and solvePnPRansac functions.
Enhanced LogPolar implementation (that uses Blind-Spot model)
has been contributed by Fabio Solari and Manuela Chessa, see
opencv/contrib/contrib.hpp, LogPolar_* classes and
opencv/samples/cpp/logpolar_bsm.cpp sample.
A stub module photo has been created to support a quickly
growing "computational photography" area. Currently, it only
contains inpainting algorithm, moved from imgproc, but it's
planned to add much more functionality.
Another module videostab (beta version) has been added that
solves a specific yet very important task of video stabiliion.
The module is under active development. Please, check
opencv/samples/cpp/videostab.cpp sample.
findContours can now find contours on a 32-bit integer image
of labels (not only on a black-and-white 8-bit image). This is
a step towards more convenhich results in better edge maps
Python bindings can now be used within python threads, so one
can write multi-threaded computer vision applications in Python.
OpenCV on GPU
Different Optical Flow algorithms have been added:
Brox (contrtions;
Improved performance.
pyrUp/pyrDown implementations.
Matrix multiplication on GPU (wrapper for the CUBLAS library).
This is optional, user need to compile OpenCV with CUBLAS
support.
OpenGL back-end has been implemented for highgui module, that
allows to display GpuMat directly without downloading them to
CPU.
Performance
A few OpenCV functions, like color conversion, morphology, data
type conversions, brute-force feature mer have been optimized
using TBB and/or SSE intrinisics.
Along with regression tests, now many OpenCV functions have
got performance tests. Now for most modules one can build
opencv_perf_<modulename> executables that run various functions
from the particular module and produce a XML file. Note that
if you want to run those tests, as well as the normal regression
tests, you will need to get (a rather big)
http://code.opencv.org/svn/opencv/trunk/opencv_extra directory
and set environment variable OPENCV_TEST_DATA_PATH to
"<your_copy_of_opencv_extra>/testdata".
Bug fixes
In this version we fixed literally hundreds of bugs. Please,
check http://code.opencv.org/projects/opencv/versions/1 for a
list of fixed bugs.
Known issues
When OpenCV is built statically, dynamically created classes
(via Algorithm::create) can fail because linker excludes the
"unused" object files. To avoid this problem, create classes
explicitly, e.g
1 Ptr<DescriptorExtractor> d = new BriefDescriptorExtractor;
To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 pkgsrc/graphics/opencv/Makefile
cvs rdiff -u -r1.6 -r1.7 pkgsrc/graphics/opencv/PLIST
cvs rdiff -u -r1.10 -r1.11 pkgsrc/graphics/opencv/distinfo
cvs rdiff -u -r1.3 -r1.4 pkgsrc/graphics/opencv/patches/patch-CMakeLists.txt
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index