win7/win10+vs2015+pcl1.8.0配置方案詳解
一、下載相關(guān)文件
1.下載PCL-1.8.0-AllInOne-msvc2015-win64.exe、屬性表和PDB和測試pcd文件rabbit.pcd,其中,屬性表可以不下載。
鏈接: https://pan.baidu.com/s/1aDvkLxAcvOdVQWqXu1pPlA?pwd=27fa
提取碼: 27fa
二、Windows7下安裝步驟:
1.點(diǎn)擊PCL-1.8.0-AllInOne-msvc2015-win64.exe一鍵安裝,可以默認(rèn)也可以自己選擇安裝路徑,如本文所選擇的路徑為默認(rèn)安裝路徑C:\Program Files;
2.在安裝過程中,OpenNI2在安裝時(shí)會彈出界面,選擇目錄C:\Program Files\PCL 1.8.0\3rdParty\OpenNI2;
3.等待一段時(shí)間,則安裝完成。
注意事項(xiàng):在安裝點(diǎn)擊“我接收(I)”之后彈出來的對話框中一定要選擇第二項(xiàng)AddPCL to the system PATH for all users:(如圖)

三、系統(tǒng)配置步驟
1.點(diǎn)擊win7的控制面板->系統(tǒng)->高級系統(tǒng)設(shè)置->在系統(tǒng)屬性的“高級選項(xiàng)”卡下點(diǎn)擊“環(huán)境變量”;
2.在系統(tǒng)子菜單里面找到“Path”,如圖:

3.點(diǎn)擊編輯,添加如下:
C:\Program Files\PCL 1.8.0\bin;C:\Program Files\PCL 1.8.0\3rdParty\FLANN\bin;C:\Program Files\PCL 1.8.0\3rdParty\Qhull\bin;C:\Program Files\PCL 1.8.0\3rdParty\OpenNI2\Tools;C:\Program Files\PCL 1.8.0\3rdParty\VTK\bin
注意這里的“ ; ”分號;
注意,第一項(xiàng)在“一鍵安裝”時(shí)就已經(jīng)添加。
4.重啟電腦
四、VS2015工程配置步驟
1.打開VS2015,創(chuàng)建新的win32控制臺工程,建好后將平臺改成X64;
2.點(diǎn)擊項(xiàng)目菜單的屬性,如圖:

3.在彈出的對話框中,

①點(diǎn)擊“包含目錄”下拉箭頭->編輯,添加文件路徑:

完成后點(diǎn)擊確定;
②點(diǎn)擊“庫目錄”下拉箭頭->編輯,添加文件路徑:

完成后點(diǎn)擊確定;
4.點(diǎn)擊連接器->輸入->附加依賴項(xiàng):

點(diǎn)擊下拉箭頭->編輯,添加下列文件:
pcl_common_release.lib
pcl_features_release.lib
pcl_filters_release.lib
pcl_io_ply_release.lib
pcl_io_release.lib
pcl_kdtree_release.lib
pcl_keypoints_release.lib
pcl_ml_release.lib
pcl_octree_release.lib
pcl_outofcore_release.lib
pcl_people_release.lib
pcl_recognition_release.lib
pcl_registration_release.lib
pcl_sample_consensus_release.lib
pcl_search_release.lib
pcl_segmentation_release.lib
pcl_stereo_release.lib
pcl_surface_release.lib
pcl_tracking_release.lib
pcl_visualization_release.lib
libboost_atomic-vc140-mt-1_61.lib
libboost_chrono-vc140-mt-1_61.lib
libboost_container-vc140-mt-1_61.lib
libboost_context-vc140-mt-1_61.lib
libboost_coroutine-vc140-mt-1_61.lib
libboost_date_time-vc140-mt-1_61.lib
libboost_exception-vc140-mt-1_61.lib
libboost_filesystem-vc140-mt-1_61.lib
libboost_graph-vc140-mt-1_61.lib
libboost_iostreams-vc140-mt-1_61.lib
libboost_locale-vc140-mt-1_61.lib
libboost_log-vc140-mt-1_61.lib
libboost_log_setup-vc140-mt-1_61.lib
libboost_math_c99-vc140-mt-1_61.lib
libboost_math_c99f-vc140-mt-1_61.lib
libboost_math_c99l-vc140-mt-1_61.lib
libboost_math_tr1-vc140-mt-1_61.lib
libboost_math_tr1f-vc140-mt-1_61.lib
libboost_math_tr1l-vc140-mt-1_61.lib
libboost_mpi-vc140-mt-1_61.lib
libboost_prg_exec_monitor-vc140-mt-1_61.lib
libboost_program_options-vc140-mt-1_61.lib
libboost_random-vc140-mt-1_61.lib
libboost_regex-vc140-mt-1_61.lib
libboost_serialization-vc140-mt-1_61.lib
libboost_signals-vc140-mt-1_61.lib
libboost_system-vc140-mt-1_61.lib
libboost_test_exec_monitor-vc140-mt-1_61.lib
libboost_thread-vc140-mt-1_61.lib
libboost_timer-vc140-mt-1_61.lib
libboost_unit_test_framework-vc140-mt-1_61.lib
libboost_wave-vc140-mt-1_61.lib
libboost_wserialization-vc140-mt-1_61.lib
flann.lib
flann_s.lib
flann-gd.lib
flann_cpp_s.lib
flann_cpp_s-gd.lib
flann_s-gd.lib
qhull.lib
qhull_d.lib
qhullcpp_d.lib
qhullstatic.lib
qhullstatic_d.lib
qhullstatic_r.lib
qhullstatic_r_d.lib
qhull_p.lib
qhull_p_d.lib
qhull_r.lib
qhull_r_d.lib
vtkalglib-7.0.lib
vtkChartsCore-7.0.lib
vtkCommonColor-7.0.lib
vtkCommonComputationalGeometry-7.0.lib
vtkCommonCore-7.0.lib
vtkCommonDataModel-7.0.lib
vtkCommonExecutionModel-7.0.lib
vtkCommonMath-7.0.lib
vtkCommonMisc-7.0.lib
vtkCommonSystem-7.0.lib
vtkCommonTransforms-7.0.lib
vtkDICOMParser-7.0.lib
vtkDomainsChemistry-7.0.lib
vtkexoIIc-7.0.lib
vtkexpat-7.0.lib
vtkFiltersAMR-7.0.lib
vtkFiltersCore-7.0.lib
vtkFiltersExtraction-7.0.lib
vtkFiltersFlowPaths-7.0.lib
vtkFiltersGeneral-7.0.lib
vtkFiltersGeneric-7.0.lib
vtkFiltersGeometry-7.0.lib
vtkFiltersHybrid-7.0.lib
vtkFiltersHyperTree-7.0.lib
vtkFiltersImaging-7.0.lib
vtkFiltersModeling-7.0.lib
vtkFiltersParallel-7.0.lib
vtkFiltersParallelImaging-7.0.lib
vtkFiltersProgrammable-7.0.lib
vtkFiltersSelection-7.0.lib
vtkFiltersSMP-7.0.lib
vtkFiltersSources-7.0.lib
vtkFiltersStatistics-7.0.lib
vtkFiltersTexture-7.0.lib
vtkFiltersVerdict-7.0.lib
vtkfreetype-7.0.lib
vtkGeovisCore-7.0.lib
vtkhdf5-7.0.lib
vtkhdf5_hl-7.0.lib
vtkImagingColor-7.0.lib
vtkImagingCore-7.0.lib
vtkImagingFourier-7.0.lib
vtkImagingGeneral-7.0.lib
vtkImagingHybrid-7.0.lib
vtkImagingMath-7.0.lib
vtkImagingMorphological-7.0.lib
vtkImagingSources-7.0.lib
vtkImagingStatistics-7.0.lib
vtkImagingStencil-7.0.lib
vtkInfovisCore-7.0.lib
vtkInfovisLayout-7.0.lib
vtkInteractionImage-7.0.lib
vtkInteractionStyle-7.0.lib
vtkInteractionWidgets-7.0.lib
vtkIOAMR-7.0.lib
vtkIOCore-7.0.lib
vtkIOEnSight-7.0.lib
vtkIOExodus-7.0.lib
vtkIOExport-7.0.lib
vtkIOGeometry-7.0.lib
vtkIOImage-7.0.lib
vtkIOImport-7.0.lib
vtkIOInfovis-7.0.lib
vtkIOLegacy-7.0.lib
vtkIOLSDyna-7.0.lib
vtkIOMINC-7.0.lib
vtkIOMovie-7.0.lib
vtkIONetCDF-7.0.lib
vtkIOParallel-7.0.lib
vtkIOParallelXML-7.0.lib
vtkIOPLY-7.0.lib
vtkIOSQL-7.0.lib
vtkIOVideo-7.0.lib
vtkIOXML-7.0.lib
vtkIOXMLParser-7.0.lib
vtkjpeg-7.0.lib
vtkjsoncpp-7.0.lib
vtklibxml2-7.0.lib
vtkmetaio-7.0.lib
vtkNetCDF-7.0.lib
vtkNetCDF_cxx-7.0.lib
vtkoggtheora-7.0.lib
vtkParallelCore-7.0.lib
vtkpng-7.0.lib
vtkproj4-7.0.lib
vtkRenderingAnnotation-7.0.lib
vtkRenderingContext2D-7.0.lib
vtkRenderingContextOpenGL-7.0.lib
vtkRenderingCore-7.0.lib
vtkRenderingFreeType-7.0.lib
vtkRenderingImage-7.0.lib
vtkRenderingLabel-7.0.lib
vtkRenderingLOD-7.0.lib
vtkRenderingOpenGL-7.0.lib
vtkRenderingVolume-7.0.lib
vtkRenderingVolumeOpenGL-7.0.lib
vtksqlite-7.0.lib
vtksys-7.0.lib
vtktiff-7.0.lib
vtkverdict-7.0.lib
vtkViewsContext2D-7.0.lib
vtkViewsCore-7.0.lib
vtkViewsInfovis-7.0.lib
vtkzlib-7.0.lib
完成后點(diǎn)擊確定;
注意:上面為在release下運(yùn)行的文件,如果想在debug下運(yùn)行,則將其中的release改成debug;
5.點(diǎn)擊配置屬性下的調(diào)試,右邊有個(gè)環(huán)境項(xiàng),把值設(shè)置為
PATH=$(PCL_ROOT)bin;$(PCL_ROOT)3rdPartyFLANNbin;$(PCL_ROOT)3rdPartyVTKbin;$(PCL_ROOT)Qhullbin;$(PCL_ROOT)3rdPartyOpenNI2Tools;$(PATH)

6.點(diǎn)擊配置屬性下的CC++,點(diǎn)擊它的子項(xiàng)預(yù)處理器,右邊有個(gè)預(yù)處理器定義,添加上_SCL_SECURE_NO_WARNINGS 和 _CRT_SECURE_NO_WARNINGS。

7.點(diǎn)擊配置屬性下的CC++,常規(guī)

在附加包含目錄中添加:C:\Program Files\PCL 1.8.0\3rdParty\Boost\include\boost-1_61

8.在屬性管理器里點(diǎn)擊項(xiàng)目,展開子項(xiàng)。

如果安裝的是32位,點(diǎn)擊選中開頭為Debug的子項(xiàng)里右鍵,點(diǎn)擊添加現(xiàn)有屬性表,然后找到你下載的文件夾里的PCLDebug.props,添加上。點(diǎn)擊選中開頭為Release的子項(xiàng)里右鍵,點(diǎn)擊添加現(xiàn)有屬性表,然后找到你下載的文件夾里的PCLRelease.props,添加上。
如果安裝的是64位,點(diǎn)擊選中開頭為Debug的子項(xiàng)里右鍵,點(diǎn)擊添加現(xiàn)有屬性表,然后找到你下載的文件夾里的PCLDebug.props,添加上。點(diǎn)擊選中開頭為Release的子項(xiàng)里右鍵,點(diǎn)擊添加現(xiàn)有屬性表,然后找到你下載的文件夾里的PCLRelease.props,添加上。
注意在這里,64位的會有2個(gè)開頭為Debug的子項(xiàng),都要添加上PCLDebug.props,并且2個(gè)開頭為Release的子項(xiàng),也要添加上PCLRelease.props。

關(guān)于PCLRelease.props文件和PCLDebug.props文件在網(wǎng)盤的鏈接里面有;
9.注意:如果出現(xiàn)以下這種問題:

解決方案:



從上圖中的箭頭中,將問題中提示的.lib文件刪除即可;
五、程序?qū)嶋H測試
將rabbit.pcd(在網(wǎng)盤中)放到與工程中的主.cpp同一位置的文件夾下(工程文件夾)
程序代碼:
#include<pcl/visualization/cloud_viewer.h>
#include<iostream>//標(biāo)準(zhǔn)C++庫中的輸入輸出類相關(guān)頭文件。
#include<pcl/io/io.h>
#include<pcl/io/pcd_io.h>//pcd 讀寫類相關(guān)的頭文件。
#include<pcl/io/ply_io.h>
#include<pcl/point_types.h> //PCL中支持的點(diǎn)類型頭文件。
int user_data;
using std::cout;
void viewerOneOff(pcl::visualization::PCLVisualizer& viewer) {
viewer.setBackgroundColor(1.0, 0.5, 1.0); //設(shè)置背景顏色
}
int main() {
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);
char strfilepath[256] = "rabbit.pcd";
if (-1 == pcl::io::loadPCDFile(strfilepath, *cloud)) {
cout << "error input!" << endl;
return -1;
}
cout << cloud->points.size() << endl;
pcl::visualization::CloudViewer viewer("Cloud Viewer"); //創(chuàng)建viewer對象
viewer.showCloud(cloud);
viewer.runOnVisualizationThreadOnce(viewerOneOff);
system("pause");
return 0;效果圖:

到此這篇關(guān)于win7/win10+vs2015+pcl1.8.0詳細(xì)配置方案的文章就介紹到這了,更多相關(guān)win10 vs2015 pcl1.8.0配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Application,Session,Cookies對象應(yīng)用介紹
Application,Session,Cookies對象比較,對于客戶端保存登錄信息的朋友可以參考下。2011-05-05
將Sublime?Text?設(shè)置成中文版的完整教程
這篇文章主要介紹了將Sublime?Text?設(shè)置成中文版的完整教程,需要自己添加之后才會有這一項(xiàng),對Sublime?Text中文版設(shè)置方法感興趣的朋友一起看看吧2022-01-01
快速設(shè)置IDEA代碼風(fēng)格為Google風(fēng)格
這篇文章主要介紹了快速設(shè)置IDEA代碼風(fēng)格為Google風(fēng)格,使用Google風(fēng)格format的圖文教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-11-11
Scratch3.0二次開發(fā)之windows環(huán)境下打包成exe的流程
今天通過本文給大家分享Scratch3.0二次開發(fā)之windows環(huán)境下打包成exe的詳細(xì)流程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-08-08
Eclipse 格式化代碼時(shí)不換行與自動換行的實(shí)現(xiàn)方法
每次用Eclipse自帶的Ctrl+shift+f格式化代碼時(shí),如果原來的一行代碼大于80列,Eclipse就會自動換為多行,這點(diǎn)個(gè)人感覺不是很舒服,簡單試了一下,通過以下方式可以修改2009-05-05

