Win10系統PCL + VS2019的安裝
系統環境:win10 64位,VS2019已安裝 anaconda virtualenv python3.7 等已安裝。
現需要安裝 PCL,但因系統裡安裝的是VS2019,因此要選擇合適的PCL版本。
現在匹配的版本:VS2019 + PCL1.11.1
1. 下載安裝C++版本的PCL
本機VS2019,在 https://github.com/PointCloudLibrary/pcl/releases/ 上選擇支援的版本為1.11.1。
下載完畢,安裝即可。注意裡面有一個選項要選為所有使用者新增path。
安裝完以後會讓安裝一個第三方的庫,直接預設安裝即可。
安裝到最後的時候會彈出安裝OpenNI的提示(如果沒有彈出,則到 PCL 1.11.1\3rdParty\ 目錄下找到OpenNI-Windows-x64-2.2.msi 進行安裝),此時也會選擇安裝路徑,預設是C盤。但此前安裝已經在pcl的安裝目錄下的3rdParty資料夾中已經有了空的OpenNI2資料夾,建議將OpenNI安裝路徑改到此資料夾下,即安裝路徑為“C:\Program Files\PCL 1.11.1\3rdParty\OpenNI2”
解壓“pcl-1.11.1-pdb-msvc2019-win64.zip”,將解壓得到的資料夾中的內容新增“…\PCL 1.11.0\bin”中。
pcl庫安裝完成,接下來配置環境變數,在系統環境變數中,確認新增以下路徑:
C:\Program Files\PCL 1.11.1\bin
C:\Program Files\PCL 1.11.1\3rdParty\VTK\bin
C:\Program Files\PCL 1.11.1\3rdParty\OpenNI2\Redist
否則後面可能會報錯“由於找不到OpenNI2.dll,無法繼續執行程式碼。重新安裝程式可能會解決此問題”。
配置完環境變數後,重啟電腦即可生效。
2. VS2019中配置pcl1.11.1
1)在VS中新建一個VC++空專案,編譯環境改為X64,Release版本。
2)開啟專案的屬性管理器,在 Release | X64 屬性下 右鍵選擇新增新專案屬性表。
命名:PCL1_11_X64,然後新增,則可以看到新生成的 PCL1_11_X64.props。
3)開啟PCL1_11_X64屬性表,修改VC++目錄的包含目錄:
C:\Program Files\PCL 1.11.1\include\pcl-1.11
C:\Program Files\PCL 1.11.1\3rdParty\Boost\include\boost-1_74
C:\Program Files\PCL 1.11.1\3rdParty\Eigen\eigen3
C:\Program Files\PCL 1.11.1\3rdParty\FLANN\include
C:\Program Files\PCL 1.11.1\3rdParty\Qhull\include
C:\Program Files\PCL 1.11.1\3rdParty\VTK\include\vtk-8.2
C:\Program Files\PCL 1.11.1\3rdParty\OpenNI2\Include
vc++目錄->庫目錄 中新增以下6個目錄:
C:\Program Files\PCL 1.11.1\lib
C:\Program Files\PCL 1.11.1\3rdParty\Boost\lib
C:\Program Files\PCL 1.11.1\3rdParty\FLANN\lib
C:\Program Files\PCL 1.11.1\3rdParty\Qhull\lib
C:\Program Files\PCL 1.11.1\3rdParty\VTK\lib
C:\Program Files\PCL 1.11.1\3rdParty\OpenNI2\Lib
C/C++—>前處理器—>前處理器定義:
BOOST_USE_WINDOWS_H
NOMINMAX
_CRT_SECURE_NO_DEPRECATE
C/C++ ->所有選項->SDL檢查 改為否。
上面這個是在屬性頁裡改的,最好在專案屬性裡,也把SDL檢查改為“否”,有的時候會報錯。
專案->屬性->C/C++ ->所有選項->SDL檢查
連結器—>輸入—>附加的依賴項:
將 PCL 1.11.1\3rdParty\VTK\lib 和 PCL 1.11.1\lib 這兩個資料夾下的lib檔案的release版本新增到附加依賴項中。
因上述lib目錄下的檔案太多,為了方便,可以通過批處理把資料夾中的檔名寫入到一個txt中。
//win+r調出“執行”視窗並輸出cmd
//(填自己的路徑)
cd /d D:\programming\PCL 1.11.0\lib
dir /b *.lib *>0.txt
因為我安裝在 C 盤,使用cmd是許可權不夠,必須要用帶管理員許可權的power shell。輸出檔案可能需要用記事本編輯一下才可以使用。
輸入到屬性表裡邊的時候必須一行對應一個lib。
處理 vtk 的lib後,裡面包含了 debug 和 release 兩種版本,需要區分開,帶有 d 或者 gd 的為debug版本。
可以採用以下程式碼處理:
#include <iostream>
#include <string>
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
ifstream txtfile;//開啟讀取的檔案
ofstream txt01;//儲存的檔案
ofstream txt02;//儲存的檔案
string temp;
int index = 0;//用於判斷奇偶
txtfile.open("0.txt", ios::in);
while (!txtfile.eof()) // 若未到檔案結束一直迴圈
{
getline(txtfile, temp);//一行一行讀取
if (index % 2 == 0)//判斷除以2的餘數,即為奇偶的判斷
{
txt01.open("1.txt", ios::app);
txt01 << temp;
txt01 << endl;
txt01.close();
}
else
{
txt02.open("2.txt", ios::app);
txt02 << temp;
txt02 << endl;
txt02.close();
}
index++;
}
txtfile.close(); //關閉檔案
txtfile.close();
txt01.close();
txt02.close();
return 0;
}
到此為止,環境基本配置完畢。
3. 測試程式碼
#include <iostream>
#include <pcl/io/pcd_io.h>
#include <pcl/point_types.h>
int main(int argc, char** argv)
{
pcl::PointCloud<pcl::PointXYZ> cloud; // Fill in the cloud data
cloud.width = 5;
cloud.height = 1;
cloud.is_dense = false;
cloud.points.resize(cloud.width * cloud.height);
for (std::size_t i = 0; i < cloud.points.size(); ++i)
{
cloud.points[i].x = 1024 * rand() / (RAND_MAX + 1.0f);
cloud.points[i].y = 1024 * rand() / (RAND_MAX + 1.0f);
cloud.points[i].z = 1024 * rand() / (RAND_MAX + 1.0f);
}
pcl::io::savePCDFileASCII("test_pcd.pcd", cloud);
std::cerr << "Saved " << cloud.points.size() << " data points to test_pcd.pcd." << std::endl;
for (std::size_t i = 0; i < cloud.points.size(); ++i)
std::cerr << " " << cloud.points[i].x << " " << cloud.points[i].y << " " << cloud.points[i].z << std::endl;
return (0);
}
輸出下圖(數字可能不同),則表示安裝成功!
參考連結:
https://www.jb51.net/article/190710.htm
https://blog.csdn.net/weixin_42059276/article/details/106149359
相關文章
- 怎麼安裝win10系統?Win10系統安裝教程Win10
- ubuntu編譯安裝pcl教程。Ubuntu編譯
- 電腦系統安裝win10教程_怎麼安裝win10系統Win10
- win10系統fortran怎麼安裝_win10系統fortran安裝教程Win10
- win10系統markdown安裝教程_win10系統markdown安裝步驟Win10
- win10 msdn系統安裝教程_win10 msdn系統怎麼安裝Win10
- 怎麼安裝正版win10系統 如何安裝原版win10系統Win10
- win10系統如何解除安裝影子系統_win10裝了影子系統怎麼解除安裝Win10
- 新手怎樣安裝win10系統?win10系統安裝教程解讀Win10
- ubuntu18.04安裝python-pclUbuntuPython
- 怎麼樣純淨安裝win10系統_純淨安裝win10系統的方法Win10
- win10安裝Ubuntu系統的方法Win10Ubuntu
- u盤如何安裝ghost win10系統_用U盤裝安裝ghost win10系統的步驟Win10
- 如何安裝ghost win10系統_硬碟裝ghost win10系統的步驟Win10硬碟
- Win10怎麼安裝linux雙系統?win10安裝linux雙系統教程Win10Linux
- win10系統tortoisegit安裝詳解_win10系統tortoisegit安裝教程【圖文】Win10Git
- Win10系統怎麼安裝VS2010 win10系統安裝VS2010的方法Win10
- 虛擬機器安裝教程win10安裝步驟 win10系統如何安裝虛擬系統虛擬機Win10
- win10如何檢視系統安裝的時間_win10檢視系統安裝時間的方法Win10
- windows系統安裝時間修改,win10修改系統安裝時間WindowsWin10
- u盤如何安裝ghost win10系統_用隨身碟裝安裝ghost win10系統的步驟Win10
- 如何一鍵安裝win10系統|一鍵安裝win10系統教程步驟Win10
- win10系統autodesk怎麼解除安裝_win10系統autodesk如何解除安裝Win10
- win10系統notepad安裝詳細教程_win10系統notepad++怎麼安裝Win10
- WIN10 安裝 Ubuntu子系統Win10Ubuntu
- win10系統norton security怎麼解除安裝_win10系統norton security解除安裝方法Win10
- win10系統odbc驅動怎麼安裝_win10系統odbc驅動如何安裝Win10
- win10系統fine reader怎麼安裝_win10系統fine reader安裝教程【圖文】Win10
- win10解除安裝系統元件怎麼操作 win10怎樣解除安裝系統元件Win10元件
- 如何線上安裝win10系統_線上安裝系統win10圖文詳解Win10
- 1909版win10系統vmware怎麼解除安裝_1909版win10系統vmware解除安裝的方法Win10
- 安裝win10系統安裝官方原版映象的方法【圖文教程】Win10
- win10系統itunes解除安裝後安裝不了的解決方法Win10
- win10和ubuntu雙系統如何解除安裝ubuntu win10雙系統怎麼解除安裝ubuntu系統Win10Ubuntu
- win10系統批次安裝新字型的方法Win10
- Win10系統下安裝ps字型的方法Win10
- Win10系統安裝cisco anyconnect client的方法Win10client
- mac裝win10雙系統的方法_如何安裝macos蘋果和win10雙系統MacWin10蘋果