CMake+vs2010實現對CMVS-PMVS原始碼的編譯執行,以及實現與bundler之間的相互呼叫
(2) 解壓下載好的TheFrenchLeaf-CMVS-PMVS-41ffa42.zip, 可以看到裡邊有binariesWin-Linux目錄, 這裡放置了CMVS-PMVS2的Linux/Win32/Win64已編譯版本, 可以拿來直接使用, 其輸入就是Bundler的輸出(參見上篇部落格:
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
由於(1)(2)所述,我們首先要將CMVS-PMVS的原始碼轉換成.sln使得程式碼可以在vs上進行編譯連結,但在此之前需要依次安裝以下軟體,以配置環境
注意:依次安裝
VS2010 :軟體地址:http://www.uzzf.com/soft/85581.html
windows SDK 7.1 :下載地址:https://www.microsoft.com/en-us/download/details.aspx?id=8279 (這裡我是下載的中文簡體版)
VS2010 SP1 :https://www.microsoft.com/zh-CN/download/details.aspx?id=4422
(這裡我是下載的中文簡體版)
軟體cmake-2.8.6-win32-x86 稠密重建CMVS-PMVS時想用VS2010對CMVS進行編譯和執行就得使用該軟體
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
如果上面四個軟體其中之一沒有安裝成功,稠密重建CMVS 執行cmake時會出現如下錯誤:
Check for working C compiler using: Visual Studio 10
Check for working C compiler using: Visual Studio 10 -- broken
CMake Error at E:/cmake/CMake 2.8/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake:52 (MESSAGE):
The C compiler "cl" is not able to compile a simple test program.
各個軟體的安裝過程中可能會出現一系列問題,直接搜百度就行
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
(3) 執行CMake(cmake-gui), 如下圖所示, 給出"Where is the source code", 就是原始碼所在根目錄, 也就是頂級CMakeLists.txt所在的目錄; 再給出"Where to build the binaries", 這個目錄將放置生成的VC專案檔案和最終編譯連結後的二進位制檔案
(4) 點選Configure按鈕, 在彈出的對話方塊裡選擇"Visual Studio 9 2008" (當然可以選擇自己的VC版本, 從VC6到VC11都有, 如下圖所示), 再選擇下方的"Use default native compilers", 點選Finish按鈕, 將進行配置
(5) 點選Generate按鈕, 生成CMVS-PMVS2的專案檔案, 其中頂級解決方案檔案CMVS-PMVS2.sln就在指定的"Where to build the binaries"目錄中.
(6) 進入VC步調. 雙擊這個CMVS-PMVS2.sln...編譯...連結...(先重新生成解決方案如下圖,成功後。按ctrl+F5執行,執行會提示資訊,這裡可以忽略)
(7) 這時在D:\CMVS\program\CMake\main\的Release/Debug資料夾下會生成三個控制檯程式: cmvs.exe, genOption.exe, pmvs2.exe, 這三個程式就是上篇文章 (http://blog.csdn.net/baidu_32134295/article/details/53263144#t2)中
CMVS-PMVS的配置:(1) 下載CMVS-PMVS並解壓縮。中所需要的檔案。 這裡可以將這三個exe檔案像(1)中所說那樣放置到相應的資料夾下,(不同的是這裡只需要拷貝這三個exe檔案,而不需要像(1)所說全部拷貝)
(如果想對CMVS-PMVS演算法進行改進,則在程式碼重新編譯執行之前,需要先將(7)步驟中Debug/Release下的三個exe檔案刪除) (8) 執行DOS(cmd.exe), 進入Bundler的輸出所在的目錄(假設為result, 下有pmvs子目錄, 參見上篇部落格: http://blog.csdn.net/baidu_32134295/article/details/53263144#t2), 分別執行三個控制檯程式:x:\...\result> cmvs pmvs/
x:\...\result> genOption pmvs/
x:\...\result> pmvs2 pmvs/ option-0000 (option-0000是pmvs2.exe的選項檔案, 名字可能有所不同)