1、下载OpenCV2.2:http://www.opencv.org.cn/index.php/Download

2、下载后解压缩OpenCV-2.2.0-win.zip;

3、下载CMake:http://www.cmake.org/cmake/resources/software.html

4、安装CMake;

5、运行cmake-gui,在where is the source code中填入刚才(2)中解压缩后的文件路径如D:/OpenCV2.2,在where to build the binaries中填入编译时需要存放的路径如D:/OpenCV2.2/vs2008;

6、点击Configure,在弹出的对话框中选择Visual Studio 9 2008;

7、如果有红色框显示,继续点击Configure;

8、点击Generate;

9、上述步骤完成之后,在vs2008文件夹中,就会看到有OpenCV.sln文件;

10、使用VS2008打开OpenCV.sln文件,在Debug下,选择Solution Explorer里的 Solution OpenCV,点右键,运行"Rebuild Solution";如编译无错误,再选择INSTALL项目,运行"Build";

11、在Release下,选择Solution Explorer里的 Solution OpenCV,点右键,运行"Rebuild Solution";如编译无错误,再选择INSTALL项目,运行"Build";

12、将D:/OpenCV2.2/vs2008/bin加入Windows系统环境变量Path中,重启;

13、为VC++ 2008配置OpenCV环境:

选择菜单 Tools -> Options -> Projects and Solutions -> VC++ Directories

Show directories for选择include files,加入目录 D:/OpenCV2.2/vs2008/include

D:/OpenCV2.2/vs2008/include/opencv2

Show directories for选择library files,加入目录 D:/OpenCV2.2/vc2008/lib

14、新建项目后,需要配置一下属性,在[链接器 LINKER]的[输入INPUT]中:

为项目的Debug配置增加依赖的库:opencv_core220d.lib opencv_imgproc220d.lib opencv_highgui220d.lib

为项目的Release配置增加依赖的库:opencv_core220.lib opencv_imgproc220.lib opencv_highgui220.lib

配置属性-字符集修改为使用“多字节字符集” (由于2008默认是以Unicode字符集编译的)

在OpenCV2.2中,不存在cv.h或highgui.h头文件,取而代之的是#include <opencv.hpp>

///

转自:http://blog.sina.com.cn/s/blog_661159d50100nr29.html

总体修改和改进:

  • opencv_core - core函数库(基本的结构,架构和线性代数,DFT,xml 和yam i/o接口函数等)
  • opencv_imgproc -图像处理函数库(滤波,高斯模糊,形态学膨胀/腐蚀,线性缩放图像大小,图像几何变化,颜色结构变化,计算直方图等)
  • opencv_highgui - GUI,图像和视频接口函数库
  • opencv_ml -统计机器学习模型函数库(SVM,决策树,级联等)
  • opencv_features2d -二维特征检测器和描述子函数库(SURF,FAST 等,包括一种新的特征描述子匹配结构)
  • opencv_video -动态分析和物体追踪函数库(光流法,移动模板,背景消除)
  • opencv_objdetect -图像目标检测函数库(haar小波 & LBP人脸检测和识别,HOG人检测等)
  • opencv_calib3d -摄像头标定,视觉匹配和三维数据处理函数库
  • opencv_flann -近似最近领域搜索库和OpenCV分装器
  • opencv_contrib - 最新贡献但不是很成熟的函数库
  • opencv_legacy -过时代码,为了后续代码兼容性而存在
  • opencv_gpu -用CUDA来加速一些openCV函数的类库(相对不太稳定,但对openCV开发非常有帮助)

如果你用Cmake 或者pkg-config来进行配置openCV,如果没有任何改动,你的源码编译会正常。否则,你需要修改连接参数(修改库名)和更新头文件路径。

仍然支持使用#include <cv.h>等,但是备注修改为 #include “opencv2/imgproc/imgproc.hpp”等等。

请查看新的c和c++例子文件,你会发现,这样样例的头文件都采用了新的引用格式。如:https://code.ros.org/svn/opencv/trunk/opencv/samples/c/blobtrack_sample.cpp(这是我自己加的,原文没有,便于大家查看)

  • 新格式的分装器覆盖了更多的opencv2.x API,文档和例子将在后面加上。为了采用额外的函数库,你需要numpy

SWIG-不在包含Python分装器

  • OpenCV现在支持Android开发(GSoC 2010 工程),一些样例可以在http://opencv.willowgarage.com/wiki/Android 找到
  • 完整全新的opencv_gpu加速器模块由NVidida开发支持,详细请看下面。

新的函数,特征集

  • core:
    • cv::Matx<T, m, n> 可以增加给定类型,给定大小矩阵

Vec<T, n> 由 Matx<T, n, 1>派生,此类可被用于cv::Mat开销过大时的小矩阵。此操作子可实现Matx 和 Mat相互转换。

    • cv::Mat ,cv::MatND 是同一类型: typedef cv::Mat cv::MatND. 考虑到很多函数没有检查矩阵维数,在用openCV处理3维,4维等高维矩阵时要小心。
    • 实验支持支持2.x/3.x特征 (在Cmake参数选择WITH_EIGEN2). 同时,可以实现Eigen2 matrices 和cv::Mat相互转换。详情查看modules/core/include/opencv2/core/eigen.hpp.
    • cv::Mat 支持"<<"操作。详情查看  opencv/samples/cpp/cout_mat.cpp.
    • cv::exp ,cv::log由于SSE2的优化,速度更快
  • imgproc:
    • 颜色转换函数被重写;
      • RGB->Lab & RGB->Luv 得到明显改善。函数假设sRGB输入颜色空间(比如,gamma=2.2),如果你想要原始线性RGB->L**转换 ,采用CV_LBGR2LAB
      • VNG 算法增加了Bayer->RGB。虽然比简单迭代算法慢了很多,但是更详细的图像信息
      • 对8位图增加了RGB->HSV/HLS 转换函数 ,这里H通道采用完整的 0..255 区域,而不是原来的0..179区域。转换代码为CV_RGB2HSV_FULL等。
    • initUndistortRectifyMap为多角度摄像头增添了专用变量: initWideAngleProjMap()
  • features2d:
    • 引入关键点检测,计算描述子和匹配的统一架构。先前的一些可用和新的监测子和描述子,比如SURF,Fast, StarDetector 等,被分装在这个架构中。这个架构的关键的特点(除了为不同检测子和描述子统一的API)是他为图像匹配和基于纹理的物体检查提供了高层工具,详情请看http://opencv.willowgarage.com/documentation/cpp/features2d_common_interfaces_of_feature_detectors.html

C++样例:

      • descriptor_extractor_matcher.cpp –采用关键点和描述子 从场景中查找物体
      • generic_descriptor_matcher.cpp – 在物体上采用变动,可以使描述子计算不必太精确。
      • bagofwords_classification.cpp –一个用这种架构处理VOC下载的数据的例子,VOC数据集: http://pascallin.ecs.soton.ac.uk/challenges/VOC/
    • Ethan Rublee集成了由Michael Calonder提出的最新更快的关键点描述子BRIEF。例子请查看 opencv/samples/cpp/video_homography.cpp
    • SURF 关键点检测子采用TBB (此模块由 imahon 和yvo2m开发)进行并行计算
  • objdetect:
    • LatentSVM 物体检查子,应用于P. Felzenszwalb的算法,由Nizhniy Novgorod State University (NNSU) team开发.详情请查看opencv/samples/c/latentsvmdetect.cpp
  • calib3d:
    • 一种新的合理的标定模型:

x' = x*(1 + k1*r2 + k2*r4 + k3*r6)/(1 + k4*r2 + k5*r4 + k6*r6) + <tangential_distortion for x>,

y' = y*(1 + k1*r2 + k2*r4 + k3*r6)/(1 + k4*r2 + k5*r4 + k6*r6) + <tangential_distortion for y>

被引入。对广角镜头的摄像头标定很有用,因为增加的参数可以优化你所提供数据和增加估计这些数据的鲁棒性。 或者可以简单的初始化畸变向量为0,并且CV_CALIB_RATIONAL_MODEL to enable the new model + CV_CALIB_FIX_K3 + CV_CALIB_FIX_K4 + CV_CALIB_FIX_K5 或者其他连接去选择去增强或者取消一些系数

    • 增加校正三目摄像头(三目在同一水平线上),详情请查看 samples/cpp/3calibration.cpp
  • ml:
    • 引入由NNSU工作组开发的梯度级联树模型
  • highgui:
    • 增加支持 Qt 后台开发,源于由Yannick Verdie完成的GSoC 2010工程。后台开发有一些新特征没有体现,如采用TTF字体的文字翻译 ,独立的控制面板,包括滚动条,按钮,单选按钮,复选按钮,大小变化,图像显示区,highgui 窗体, "保存"等等。详情请看Yannick在youtube视频演示新特征: http://www.youtube.com/user/MrFrenchCookie#p/u
    • 新的API被引入: http://opencv.willowgarage.com/documentation/cpp/highgui_qt_new_functions.html ,如果你机器上有 Qt SDK (或者 libqt4 开发包),可以采用新的API,并且采用QT编译OpenCV (pass -DWITH_QT=ON to CMake; 注意结果,确认Qt为GUI后台编译)
    • 支持16位和LZW-压缩TIFFs
    • 支持Linux环境下IEEE1394 模式的摄像头
  • contrib:
    • 增加Marius Muja,Antonella Cascitelli, Marco Di Stefano ,Stefano Fabri开发的斜面匹配算法. 详情查看 samples/cpp/chamfer.cpp
  • gpu:
    • 这一部分是OpenCV的全新部分,由NVidia开发并支持。注意,此开发包处于测试阶段,所以在开发时请注意和关注OpenCV SVN 的更新。

在采用gpu,需要安装最新的 NVidia CUDA SDK ,并且采用CUDA 编译OpenCV (-DWITH_CUDA=ON CMake flag).所有函数采用cv::gpu namespace命名空间。完整的函数和类在opencv/modules/gpu/include/opencv2/gpu/gpu.hpp,下面是 API中一些主要组成部分:

    • 图像计算,滤波操作,形态学,几何变换,直方图计算
    • 立体视觉匹配算法:块匹配, Belief Propagation 和Constant-Space Belief Propagation.
    • 基于HOG物体检查子。It runs more than order of magnitude faster than the CPU version!
      • See opencv/samples/gpu
  • python bindings:
    • 大量 OpenCV 2.x 函数被转换为Python 语言。

这些新的分装需要安装numpy (请查看http://opencv.willowgarage.com/wiki/InstallGuide).

同理,C++ API,在python环境下,不需要定位输出数组,他们会自动由相互函数创建,下面是一个小例子:

import cv

在例子中, a和 b 是普通 numpy 数组,所以OpenCV 函数完全支持numpy 和 scipy

a=cv.imread(“lena.jpg”,0)

b=cv.canny(a, 50, 100, apertureSize=3)

cv.imshow(“test”,b)

cv.waitKey(0)

在vs2008中配置OpenCV2.2相关推荐

  1. visual studio 2013 中配置OpenCV2.4.13 姿势

    首先在path中添加 "C:\OpenCV\opencv\build\x64\vc12\bin"   (地址随实际变化) 注:添加的都是*86不使用*64 在visualstudi ...

  2. vs中imshow函数报错_Win7下VS2010中配置Opencv2.4.4的方法(32位和64位都有效)(亲测成功)...

    在vs2010下配置opencv是件痛苦的事情,一点点错误可能就会导致莫名其妙的报错,各种error让人郁闷不已,这里提供给大家一篇vs2010下配置opencv2.4.4的方法,我是64位的win7 ...

  3. 在C++Builder2010中配置OpenCV2.2

    1.使用官方2.2_vs2010版本. 2.在lib下建立bcb目录,然后用coff2omf生成bcb专用lib     for %f in (*.lib) do coff2omf %f bcb\%f ...

  4. vs2008 下配置 opencv2.0 的总结,以及 vc6 下配置 opencv1.0 的转帖

    详细的配置方法可见 http://www.opencv.org.cn/index.php/VC_2008_Express%E4%B8%8B%E5%AE%89%E8%A3%85OpenCV2.0 总结起 ...

  5. Windows XP下vs2010中配置OpenCV2.4.3

    1.  从http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.3/下载OpenCV2.4.3: 2.  将OpenCV ...

  6. 在vs2010或者vs2008中配置PC-lint9.0版

    第一步: 可以到http://download.csdn.net/detail/zhenliangqiu/3250717下载Gimpel_PC_Lint_9.zip免注册版,下载完后点击pclint9 ...

  7. VS2008中配置 Windows SDK v7

    VS2008默认的为Windows SDK6.0A,如果要使用SDK v7的API须配置让VS2008使用SDK v7,否则编译出错这是毫无疑问的. 在网上找了半天没找到,最后发现配置方法超级简单,简 ...

  8. Windows7 64位下vs2008配置OpenCV2.3.1

    1.下载OpenCV2.3.1:http://www.opencv.org.cn/index.php/Download: 2.下载后解压缩:OpenCV-2.3.1-win-superpack.exe ...

  9. VS2008中的“解决方案配置”和“解决方案平台”不见了(Release和Debug)的解决方法...

    VS2008中的"解决方案配置"和"解决方案平台"不见了(Release和Debug)的解决方法 1.视图->工具栏->自定义 中->命令,选 ...

最新文章

  1. mysql 以数组的形式插入更新表
  2. DNS服务器详解--------基础篇
  3. [Leedcode][JAVA][第999题][直接考虑题意]
  4. step 3 socket
  5. 在Windows上搭建Redis集群环境教程
  6. 容器大小_C++复习篇(7)序列式容器vector
  7. 3dmax 2022卸载方法,怎么完全彻底卸载删除清理干净3dmax 2022各种残留注册表和文件?
  8. 各大厂商防火墙Firewall
  9. 【供应链架构day8】履约系统的架构长什么样子:从需求开始讲起
  10. 为什么pdf文件在一个计算机上能打开,拷贝到别的计算机上就打不开,显示文件已损坏?,pdf文件在电脑上打不开怎么办...
  11. java生成excel表格
  12. XP电脑桌面图标文字带上颜色不透明 解决办法
  13. matlab学习之旅1——钢琴音频
  14. 5号字对应的数字字号_请问在WORD文档里,字体大小所对应的用数字表示是多少...
  15. Java数组实现:一群人围成一圈从123报数 如果报到3就退出该圈中 直到最后一个人留下来!问其位置
  16. 智能制造数字化工厂的关键技术特点
  17. MTK Android software Tools工具的说明
  18. python内置函数有哪些_Python 中的内置函数(一)
  19. 正则匹配电话号码 固定电话号码
  20. 显示硬件发展与视频开发系列(6)----显示标注与视频处理单元(1):显示标准

热门文章

  1. LabVIEW彩色图像分割(基础篇—14)
  2. 数据结构与算法(5)字符串(BF算法、KMP算法及KMP算法优化)
  3. Keras输出网络结构图
  4. UE4创建第一人称射击游戏学习教程 Unreal Engine 4: Create Your Own First-Person Shooter
  5. HGOI 20190709 题解
  6. String拼接字符串效率低,你知道原因吗?
  7. 【poj3420】 Quad Tiling
  8. 4566: [Haoi2016]找相同字符 SAM
  9. 【OpenCV】图像代数运算:平均值去噪,减去背景
  10. 雷观(七):靠谱的程序员,不是随便一个码农就可以做到的