建设一个网站需要注意的事项,怎么做网站软件,保定网站维护公司,wordpress 响应式最近用到opencv人脸识别的代码#xff0c;想进源码看看实现过程#xff0c;大家都知道opencv的源码在opencv/modules下#xff0c;但是光看那么长的源代码实在麻烦#xff0c;要是能在调试的时候按f11直接就能跟进内部代码就好了。说到这里大家会想为什么进不了呢#xff…最近用到opencv人脸识别的代码想进源码看看实现过程大家都知道opencv的源码在opencv/modules下但是光看那么长的源代码实在麻烦要是能在调试的时候按f11直接就能跟进内部代码就好了。说到这里大家会想为什么进不了呢这是因为我们的程序调用opencv的函数使用的是opencv/build/x86/bin下的动态链接库这是opencv为所有windows用户提供的想要跟进代码就必须在本地编译生成链接库等必须文件。
本文参考了文章Win7x64VS2012OpenCV2.4.3CMake2.8.10TBB41重编译OpenCV这里讲的详细但还是有点错误这里我来总结一下避免大家走弯路。 1、工具
下载并安装这几个工具CMake、OpenCV、Visualstudio 下载OpenCVhttp://opencv.org/downloads.html
下载CMakehttp://www.cmake.org/cmake/resources/software.html安装
2、用CMake生成OpenCV的VS2012解决方案
首先按照下图标注①是opencv所在目录②是接下来的工程目录自己新建接下来点configure按钮直到不出现红色然后点Generate 生成工程文件成功的话会在C:/svn/opencvproject下生成工程文件。3、打开opencv工程并编译源代码生成我们所需要的动态链接库
在C:/svn/opencvproject找到Opencv.Sln打开如下图 这里首先点开Debug处的小三角选择配置管理器如果INSTALL未选择则选中然后确定右键ALL_BUILD生成debug版的工程文件10分钟左右完成后切换到Realease右键ALL_BUILD生成。 4、配置Opencv环境变量
注意这里也是跟上述文章不一样的地方估计是因为OpenCV版本不同吧导致配置上有所不同 环境变量path应该添加以下两个路径 C:\svn\opencvproj\bin\Debug 和 C:\svn\opencvproj\bin\Release 注C:\svn\opencvproj\ 是我用CMake生成的VS2012工程的所在目录。 注意之前用的是OpenCV自带编译版本的请注意了应该将原来环境变量删除后再添加。否则调试的时候还是多多少少有些问题 5、修改工程属性
右键你的项目选择属性点中VC目录修改包含目录和库目录1.包含目录设置为C:\svn\opencvproj\install\include ; C:\svn\opencvproj\install\include\opencv ; C:\svn\opencvproj\install\include\opencv2这解释了刚才为什么要勾选INSTALL了否则是找不到install这个目录的,如果还是没有就展开工程CMakeTargets右键INSTALL分别在Debug和Realease下生成2.库目录设置为C:\svn\opencvproj\lib\Debug3.添加附加依赖项,在 链接器-输入-附加依赖项处添加opencv_calib3d246d.lib opencv_contrib246d.lib opencv_core246d.lib opencv_features2d246d.lib opencv_flann246d.lib opencv_gpu246d.lib opencv_highgui246d.lib opencv_imgproc246d.lib opencv_legacy246d.lib opencv_ml246d.lib opencv_nonfree246d.libopencv_objdetect246d.lib opencv_photo246d.lib opencv_stitching246d.lib opencv_video246d.lib opencv_superres246d.lib opencv_ts246d.lib opencv_videostab246d.lib 这里根据自身情况来定不同版本不同项目所需的lib文件可能不一样这里的246d代表opencv版本是2.4.6d代表debug版release是不加d的注意区分到这里我们的所有配置已经完成主要上文区别的地方在环境变量path不同包含的库目录不同。 6.测试项目
到项目中设置断点按f11看能否跳进opencv代码内部