• Opencv2.4 Beta is out


    加了line-mode,比较有吸引力。

    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
    • 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::Algorithmclass 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 andDescriptorExtractor 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 andopencv/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 stabilization. The module is under active development. Please, checkopencv/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 convenient connected component analysis.
    • Canny edge detector can now be run on color images, which 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 (contributed by NVidia)
      • PyrLK – both Dense and Sparse variations
      • Farneback
    • New feature detectors and descriptors:
      • GoodFeaturesToTrack
      • FAST/ORB which is patent free replacement of SURF.
    • Overall GPU module enhancements:
      • The module now requires CUDA 4.1 or later;
      • Improved similarity of results between CPU and GPU;
      • Added border extrapolation support for many functions;
      • 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.

    OpenCV4Android

    See the Android Release Notes.

    Performance
    • A few OpenCV functions, like color conversion, morphology, data type conversions, brute-force feature matcher 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

    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;
  • 相关阅读:
    EasyUI中页面必须刷新才显示tree组件最新数据的BUG解决方案
    tp2.2.2新特点
    easyui添加自定义验证规则
    TP第一天路由解析
    负载均衡和冗余技术
    smarty缓存控制
    smarty中section遍历数组
    鬼谷子绝学
    Python的Django框架中的URL配置与松耦合
    Python的Django框架中的URL配置与松耦合
  • 原文地址:https://www.cnblogs.com/CVArt/p/2478562.html
Copyright © 2020-2023  润新知