• opencv各版本之间区别


    opencv各版本之间区别

    Opencv 1.0 以前的历史忽略...

    1.0

    (2006年 10月)

    新功能/特征

    1. General :

         ☆  Windows 安装包中加入了预编译的Python 模块

         ☆ Borland C++(v5.6+) 新增了makefiles (参考 _make\make_all_bc.mak)

    2. CV:

         ☆ 添加了Inpainting,参考  samplse/c/inpaint.cpp

    3. MLL:

         ☆  添加了Boosted 树分类器, 详见 参考手册 MLL 部分

    4 HighGUI:

         ☆ 在highgui通过使用JasPer 和OpenEXR ,支持Jpeg2000 和 EXR  格式的文件 。在windows中 OpenEXR 不是默认内置到highgui                  中的。 参考 otherlib/_graphics/readme.txt

         ☆ 支持 大于8_bit 图像(PNG,Jpeg2000 以及 OPenEXR)的输入/输出。

         ☆ 更新了 CMU camera wrapper.

         ☆ 改进和修正了 一些 V4L2 

    5 New Samples (opencv/samples ):

         ☆ 摄像机标定的例子:calibrate,cpp

         ☆ 图像修复的例子 :inpaint.cpp

         ☆ 根据已有数据,使用随机树 ,boosted 树以及神经网络等方法训练学习来进行字母识别:leter_recog.cpp

         ☆ 一些新的Python 例子

    6 Tests:

         ☆ 大部分旧的 cv tests 已经被重写/修改成 使用cxts 替代了 trs,在tests中TRS 不再使用。

    Bug fixes:

          ★  cvFindFundamentalMat 总错误的归一化(SF # 1550855)

          ★  cvGetQuadrangleSubPix 的偶然崩溃 (SF # 1549168)

          ★  cvCalcOpticalFlowPyrLK 的偶然崩溃 ()

          ★ 在cvFloor/cvCeil 出现内部GCC 3.X错误(SF # 1546657)

          ★ 一些和Python 相关的bug (SF #1570109 ,SF# 1572800,,SF #1543593 )

          ★  轮廓处理/渲染 出现的bugs(SF # 1550889)

          ★ x86-64 相关的bugs(SF #1526133 ,SF #1527997)

          ★ cvFitEllipse ,cvFitLine,cvHoughCircles 在某些情况下出现不正确的结果。

          ★ 。。。。

    已知问题 :

          ★ 一些tests在IA64(Itanium)可能失败。例如  gaussian filter ,fundamental matrix estimation, chessboard detector.

    1.1 prel1

    (2008 年10月)

    新功能/特征

          1 General :

                ☆ 增加了Octave bindings 。参考 interfaces/swig/octave (迄今为止只有 Linux)

                ☆ 【windows】 opencv 支持 VS2005, 同时也包括支持 OpenMP.

                ☆ 【windows】 更新到Python2.6

                ☆ 【windows】删掉了 cvcam (因为highgui现在支持 videoInput)。

         2  CXCORE, CV,CVAUX :

                ☆ 增加了SUFR(speeded_up Robust Features)算法 ,参考  samples/c/find_obj.cpp 以及 文档 opencvref_cv.htm

                ☆  摄像机标定增加了许多改进

                           ■   添加了摄像机的立体标定: cvStereoCalibrate,cvStereoRectify 等。

                           ■  使用Levenberg-Marquardt 方法进行单摄像机标定,同时支持 额外的标志 来进行控制摄像机各个参数优化的开关。

                           ■  在 每一个涉及到 标定相关的函数中 用到了径向畸变的第三个 参数 ((k3*r^6).

                 ☆  提供了更好的homograph 估计算法 (RANSAC 以及 LEMDs).

                 ☆  添加了新的 C++ 模板图像处理类 参考 opencv/cxcore/include /cvwimae.h

                 ☆  添加了快速近似的紧邻搜索

                 ☆ 添加了背景/前景分割 的Codebook 算法

                 ☆ 添加了排序函数

                 ☆ 【OpenCV+IPP】人脸检测(cvHaarDetectObjects)速度加快(达到2倍)  使用 IPP 5.3 或者更高的版本.

                 ☆ 添加了cvRemap中  更快(4 倍)的定点变化运算。

    3 MLL;

                ☆ MLL 中添加了Python 绑定。 现在没有具体的例子。

    4 HighGUI:

                ☆ 【windows ,32bit】添加了支持videoInput 的类库,因此,cvcam几乎不再需要。

                ☆ 【windows ,32bit】通过 ffopencv*.dll ,FFMGEG现在支持视频的解码/编码

                ☆ 【linux】 添加了支持unicap的功能

                ☆ 改进了内部视频的捕捉以及视频编码的 APIs.

    5 Documentation:

                ☆ 出版了 OpenCV 书。

    6. New samples (opencv/samples):
                ☆ 许多 Octave 例子

                ☆ find_obj.cpp (SURF),bgfg_codebook.cpp(Codebook BG/FG 分割),stereo_calib.cpp (立体校准 和立体匹配)

    Bug fixes:

                  省略....

    已知问题:

               ☆ 不支持 Borland 编译器(有可能工作)

               ☆ 不支持64位windows(有可能工作)

               ☆  SF bug跟踪器仍然包括 50多个bug记录 。在下面版本中解决他们。

    2.0 beta 

    (2009 年9月)

    新功能,特征:

             1. General :

                      ☆ 引进了崭新的C++接口,支持大部分OpenCV函数功能(cxcore,cv ,highgui).也就意味着你可以用较少的编码完成同样的结果;                        同时,它能够自动进行内存管理和其他一些优点。

                                ■  查看opencv中的C++参考章节:/doc/opencv.pdf 和 opencv/include/opencv/*.hpp .

                                      ■ 先前的接口仍然保留并继续支持。

                       ☆  源目录结果重新组织;现在所有的外部头文件放置在所有平台的单目录里面。

                       ☆ 主要的编译系统是CMake,

                               ■ http://www.cmake.org(2.6.x 是相当好的版本).

                                         ■  在Windows 包里Visual studio 里面的项目文件,MSVC 中的makefiles, Borland c++ 或者 MinGW 不再提供。请                                          用 CMake 产生它们。

                                         ■ 在 MacOSX, 使用者可以产生Xcode项目文件。

                                         ■ 在linux 和其他平台上,用户通过命令行编译OpenCV,可以在交叉平台的IDEs上产生项目文件,例如 Eclipse 或者                                           Code Blocks ,或者makefiles。

                        ☆ Opencv 的库已经转换到Subversion,发布在 SourceForge:

                              ■ http://opencvlibrary.svn.sourceforge.net/svnroot/opencvlibrary

                              ■  最新的snapshot 在 http://opencvlibrary.svn.sourceforge.net/svnroot/opencvlibrary/trunk,

                              ■ 差不多稳定的版本在 http://opencvlibrary.svn.sourceforge.net/svnroot/opencvlibrary/tags/latest_tested_snapshot

                2. CXCORE, CV,CVAUX:

                         ☆ CXCORE 在各种线性代数函数中使用 Lapack (OpenCV 2.0中CLapack 3.1.1.1 ) 例如 solve,invert,SVD,determinant,等。                         ☆ 增添了 许多新特征以及 物体检测和描述符。参见 cv.hpp ,cvaux.hpp:

                                   ■ FASE--快速角检测。

                                   ■ MSER-- 极值地方最稳定

                                   ■ LDetector- 快速基于圆特征检测器

                                   ■ 基于Fern 的点分类器 和 平面物体探测器

                                   ■ 旋转图像三维特征描述

                                   ■ 自相似特征(Self-similarity features)

                                   ■ HOG people 和物体检测

                                   ■ LBP 特征(局部二值特征)

                                   ■ Haar 特征的扩展变种。现在支持 Haar 特征和LBPs,其他特征可以用同样的方式添加。

                                   ■ 自适应皮肤检测和模糊meanshift 跟踪 ,参见:cvaux.hpp 以及 opencv/samples/c/adaptiveskindetector.cpp

                          ☆  添加与 新式的HAAR+LBP相互补的新的 traincascade应用的描述符。参见 opencv/apps/traincascade.

                          ☆ opencv中添加了近似近邻搜索算法 FLANN 的强大类库,类库的接口在cxcore中。参见 cxcore.hpp 以及                                                       opencv/samples/c/find_obj.cpp

                          ☆ 根据论文添加了浓密的光流估计算法。("Two-Frame Motion Estimation Based on Polynomial Expansion" by G.                                          Farnerback.)

                           ☆ 图像扭曲操作(resize,remap,warpAffine,warpPerspective)现在全部支持 bicubic 和Lanczos interpolation。

                           ☆ 大部分新的线性或者非线性滤波操作(filter2D,sepFilter2D,errod ,dilate ....)支持任意边界模式。

                           ☆ 数据现在可以保存或者加载GZIP格式压缩的文件 XMl/YML .eg: cvSave("a.xml.gz",my_huge_matrix);

               3 MLL:

                           ☆ 添加了极限随机树,同Boosting 或者 Random Trees 相比,使训练速度超快。(by Maria Dimashova)

                           ☆ 决策树引擎和基于它的类别(决策树自己 ,Boost, Random Trees) 被重做:

                                    ■ 它们消耗更少的内存(接近节省 200% )

                                    ■  训练过程可以在多线程中运行。(当opencv 支持 OPenMP)

                                    ■  boosting 分类对于数值变量相当快,因为有专门的低开销分支。

                            ☆ 添加了mltest。

                 4. HighGUI:

                             ☆ 【linux】 添加了对立体相机的支持。

                             ☆  现在有捕捉视频的统一的接口,不管是2个,3个还是n个摄像头。

                             ☆  图像可以在内存缓冲区中进行压缩或者解压缩。参见 C++ HighGUI 参考手册。

                  5 Documentation:

                             ☆ 参考手册从HTML格式装换成 LaTeX格式。http://opencv.willowgarage.com/documentation/index.html

                   6 Samples, misc.:

                             ☆ 更好的眼睛检测例子,参见 opencv/data/haarcascades/*[lefteye|righteye]*.xml

                             ☆ 基于LBP级联的正面面部检测。 参见 opencv/data/lbpcascdes/lbpcascade_frontalface.xml

                             ☆ 几个高质量的身体部分和面部特征检测。参见 opencv/data/haarcascades/haarcascade_mcs*.xml

    优化:

                  1. 许多基本函数以及图像的处理操作(arithmetic operations, geometric image transformations, filtering等)经过SSE2优化,所以                       它们快好几倍。

                  2. IPP模型支持已经改变。现在的IPP的支持能够用CMake检测到,主要是 在配置阶段和关联opencv的时候。(在测试版本还没有实                   现)。

                  3.PNG编码性能增加通过调节参数因子4.

    Bug fixes:

             参见 http://sourceforge.net/tracker/?group_id=22870&atid=376677 of the list of the closed and still opened bugs.

    已知问题:

               1. 基于configure和autotools 的编译方式已经坏掉,请使用 CMake编译

               2. OpenCV 中bug跟踪器在SF 仍然有150多个开放的bug。

               3. 不支持 IPP。在2.0 gold 版本中将支持。

               4. 参考文档已经更新和改进了多次,但仍需要修改。

               5.新式的Python 版本还没有包括进来。

    2.0

    (2009年9月)

           新功能,特征:

               1.General:

                      ☆ Windows安装包已修好,MinGW 用来预编译代码

                      ☆ 基于autotools编译已经修好

                      ☆ 新的Python 接口正式加入。

               2 .MLL:

                      ☆ 添加了新式类的别名(例如:cv::SVM~CvSVM)和训练/预测方法,将cv::Mat 排除在Cvmat中。现在MLL可以无缝的使用剩下                            的改变风格的OpenCV。

    bug修订:

             在 2.0 beta 版本中的很多bug已经被修好,参考 OpenCV bug 跟踪器。 http://sourceforge.net/tracker/?group_id=22870&atid=376677

    待续..........

    详细参考       http://opencv.willowgarage.com/wiki/OpenCV%20Change%20Logs

  • 相关阅读:
    Ubuntu开机自动挂载Windows分区
    Ubuntu 修改hosts
    线程安全
    可重入
    java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addServlet问题
    两数相加
    2017-2018 ACM-ICPC, Central Europe Regional Contest (CERC 17)
    Anniversary party
    k倍区间
    算法训练 素因子去重
  • 原文地址:https://www.cnblogs.com/freedesert/p/2774218.html
Copyright © 2020-2023  润新知