PMVS算法源程序 VS2008下实现
来源:互联网 发布:淘宝试用平台哪个最好 编辑:程序博客网 时间:2024/06/15 20:16
首先构建一个空的项目pmvs,控制台应用程序,然后加pmvs2下的base下的三个文件夹拷贝到项目下,然后对应头文件及源文件添加到项目中。改写新建项目中的pmvs.cpp,将pmvs2中main里面的pmvs2.cc里面的部分内容添加到pmvs.cpp中,可以改写这个main函数的方法,不然执行的时候要传入参数。具体改写的内容下面附上大家参考。大家酌情更改。
下一步就是在.cc文件最上方添加预编译头#include "stdafx.h",这个东西就是跟名字意思一样,先编译,也是微软特有的,对于MFC之类,include的文件非常多,这样可以加快编译速度。
下面开始编译,这个时候会出现错误,这些错误一一解决。
错误 7 error C2065: “M_PI”: 未声明的标识符 f:\pmvs2\pmvs2\pmvs2\image\camera.cc 316 pmvs2
首先这个错误,这个错误的解决
项目添加一个gsl的库,这个是c语言中的科学计算的库,在项目工具选项中添加。
然后在项目中添加#include <gsl/gsl_math.h>
然后消除了上面的错误之后 再一次编译
下面会出现
好的,下面我们就重点看mylapack.cc这个文件。
float C[M * N];这个在linux直接定义一个数据就可以了。而在windows下要先实例化,或者初始化。改为float *C = new float[M * N];
改完了上面的错误之后再一次编译
好的,下面继续,我们就先看point.cc这个文件
string 类型也要初始化,按照是不是应该给string类型分配一个内存空间,采用了一个迂回的办法
string header;
char str[1024];
istr >> str;
header = string(str);
错误 1 fatal error C1083: 无法打开包括文件:“sys/time.h”: No such file or directory f:\pmvs2\pmvs2\pmvs2\pmvs\seed.cc 5 pmvs2
这个直接注释掉,这个是linux下的库,直接用#include <time.h>
struct timeval tv;
gettimeofday(&tv, NULL);
time_t curtime = tv.tv_sec;
换成clock_t curtime = clock();
再次编译
下面的错误就是这个线程库的问题了pthread这个线程库
这边主要是在linux下面,这个线程的初始化为数组,这边我们改成vector,例如:
//pthread_t threads[m_fm.m_CPU];
vector<pthread_t> threads(m_fm.m_CPU);
这样改好之后,下面编译基本上就没有错误了,主要就是linux下定义数组的时候不初始化,而windows下要初始化,主要这个区别
下面基本上就是链接错误了。
这个主要是这个pmvs程序引用了其他的库,这个时候在链接附加依赖项之后就可以编译通过,运行了。
上面可能不同机子有点问题,要把库添加到项目中。
https://github.com/TheFrenchLeaf/CMVS-PMVS/tree/master/program/thirdParty
- PMVS算法源程序 VS2008下实现
- 不用配置bundler及cygwin,实现直接对稠密重建算法CMVS-PMVS进行研究
- 在 VS2008 下用 CRC32 算法实现程序自校验
- windows7下实现Bundler并通过cygwin编译运行以及pmvs、cmvs的使用(2)
- XXTea算法的实现(vs2008 C# 与linux C下)
- 2007数学建模B题算法与实现源程序
- JAVA实现的DES加密解密算法(源程序)(lp)
- 三维重建(四)PMVS算法 the patch-based MVS algorithm
- linux下使用Bundler + CMVS-PMVS进行三维重建
- linux下使用Bundler + CMVS-PMVS进行三维重建
- Windows下使用VisualSFM + CMVS/PMVS + MeshLab进行三维重建
- linux下使用Bundler + CMVS-PMVS进行三维重建
- Ubuntu 16.04下安装Bunlder和PMVS(CMVS)---很重要
- C++遗传算法源程序
- 迪杰斯特拉算法 源程序
- 神经网络BP算法 源程序
- 抠下VS2008里assert的实现
- 遗传算法的C源程序
- CRC卡
- 项目开发1
- vs2010 opencv配置搞乱了
- 设置cookie的domain属性
- windows 使用pthreads线程库
- PMVS算法源程序 VS2008下实现
- 三维重建学习1
- 特征学习2
- SIFT算法
- CUDA的学习
- 深度学习1-线性回归,逻辑回归
- 深度学习2线性回归,逻辑回归
- 深度学习3线性回归,逻辑回归
- 摘录 操作系统