您的位置:首页 > 运维架构

如何成功配置opencv3 sfm模块?

2017-12-13 06:27 776 查看
一、配置环境

VS2017 + WIN10-64位

二、配置步骤

根据opencv官网上的安装说明,做如下配置

网址:https://docs.opencv.org/trunk/db/db8/tutorial_sfm_installation.html

1、
下载最新版本cmake, opencv3+contrib, glog, gflags, eigen, ceres solver

2、
安装cmake后,按顺序编译:

1)      GFlags 编译后,运行vs2017,运行INSTALL,配置GFalgs到C盘

2)      GLOG 编译时需要添加GFlags的安装路径

编译后,运行vs2017,运行INSTALL,配置GLOG到C盘

3)      Eigen

Eigen 是一个用于线性代数、矩阵向量运算及算法的纯C++模块函数库。

只含有头文件的库。但是我们仍需要cmake编译。

编译后,运行vs2017,运行INSTALL,配置Eigen 到C盘。

其生成的Unsupported 文件在编译opencv时要用到。

4)      Suitesparse

github下载suitesparse;cmake编译,需要什么加什么

其中BLAS和 LAPACK已经编译包含在suitesparse的source中。

5)      Ceres(必须包含suitesparse,否则无法点亮 sfm.hpp 中
CERES_FOUND

Cmake编译ceres时,按照提示添加以上以上所有库的路径。

尤其是添加suitsparse时,需要依次添加suitesparse包中所有依赖库。

注:VS2017需要用管理员权限,即打开管理员权限编译INSTALL。

3、编译opencv

1)      添加contrib的module路径,cmake再次编译---此时无sfm模块

2)      添加eigen的include路径(C盘生成的库文件),再次编译---此时包括sfm模块

添加GLOG的lib路径(C盘生成的库文件),再次编译

3)      点亮 sfm.hpp 中
CERES_FOUND



注:

1.      Cmake编译以上所用软件都使用相同的编译器,

2.      注意点:GFlags 生成的静态lib区分DEBUG 和 RELEASE.

1)    添加cmake命令区分Debug 和 Release

CMAKE 界面Add Entry

Name: CMAKE_DEBUG_POSTFIX

Type: STRING

Value: d

Description: Null

2)    VS 2017 编译opencv

编译debug下的opencv库时,重新先编译GFlags 的debug静态lib;编译release下的opencv库时,重新先编译GFlags 的release静态lib(生成在C盘)。

 

   待解决问题:“CV_DOXYGEN”未能成功编译!如何可使用?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cmake opencv3 sfm eigen ceres