python-pcl踩坑後記錄完整配置過程
文章目錄
前言
在學習計算機視覺時,學到點雲庫,需要用到視覺化點雲工具,在配置python-pcl過程中踩了“ImportError: DLL load failed: 找不到指定的模組”等多個坑,這裡整理一個配置流程,希望可以幫助你避坑。 文章python使用版本是3.6版本。
一、下載需要的安裝包
1.python-pcl原始碼:https://github.com/strawlab/python-pcl
2.PCL1.9.1的All-In-One Installer :https://github.com/PointCloudLibrary/pcl/releases/
3.Windows Gtk:http://www.tarnyko.net/dl/gtk.htm
二、安裝
1.安裝與調整包
1.雙擊下載好的ALL-In-One Installer進行安裝,安裝過程會彈出安裝OpenNI這個工具,一樣安裝就行。
2.解壓下載好的windows Gtk,將bin目錄下所有檔案複製到python-pcl原始碼目錄下的pkg-config目錄下,同時,在pkg-config目錄下,找到指令碼InstallWindowsGTKPlus.bat,雙擊執行,該指令碼會下載必須的內容,下載完成後會多出這兩個資料夾。
2.安裝必要的python庫
1.cython
2.numpy
python-pcl安裝前要求要有cython和numpy這兩個庫,版本需要跟下載的python-pcl原始碼相對應,開啟python-pc原始碼目錄下的setup.py 可以看到對cython和numpy的版本要求:
在cmd中pip install 下載對應版本就行
我是用的最新版本numpy跟0.26.0的cython
安裝指定版本命令為: pip install cython==0.26.0
可能會出現Microsoft Visual C++ xxx is required導致下載失敗,這是因為需要下載visual studio 2019,點選cmd提示的連線進行下載即可,下載後就能正常下載cython。
3.安裝python的pcl原始碼包
在python-pcl原始碼目錄下開啟cmd
前後輸入:
python setup.py build_ext -i
python setup.py install
4.複製OpenNI2.dll
開啟步驟1安裝OpenNI2時的路徑,在…\OpenNI2\Samples\Bin下找到OpenNI2.dll,將它複製到你的python lib\site-packages\ 下的pcl中
5.配置環境變數
要保證系統變數有以下路徑:
然後編輯Path變數,在path中相對你的安裝路徑加入以下內容:
6.安裝python的pcl庫
pip install pclpy
至此,pcl配置完畢。
三、測試
最後import pcl 不再報錯
測試程式碼:
import numpy as np
import pcl
p = pcl.PointCloud(10)
a = np.asarray(p)
a[:] = 0
print(p[3])
a[:, 0] = 1
print(p[3])
以上就是所有內容,本文僅僅介紹了能夠順利配置python-pcl的過程,有了點雲處理工具,將支援我們學習三維模型。
補充:
1.執行顯示模型時,可能會彈出如下錯誤:
//報錯資訊
Generic Warning: In c:\vtk-8.1.2\rendering\core\vtkrenderwindow.cxx, line 1480
vtkRenderWindow::GetPainterDeviceAdapter was deprecated for VTK 8.1 and will be removed in a future version.
Generic Warning: In c:\vtk-8.1.2\rendering\core\vtkmapper.cxx, line 233
vtkMapper::GetGlobalImmediateModeRendering was deprecated for VTK 8.1 and will be removed in a future version.
Generic Warning: In c:\vtk-8.1.2\rendering\core\vtkrenderwindow.cxx, line 1480
vtkRenderWindow::GetPainterDeviceAdapter was deprecated for VTK 8.1 and will be removed in a future version.
解決方法:下載以下連結中的壓縮包,解壓後將pcl_visualization_release.dll放在路徑“D:\Program Files\PCL 1.9.1\bin”下替換即可。
https://github.com/anelsalas/PCL_1_9_1_prebuild_pcl_visualization_release.dll
2.執行後窗口點雲出不來:
按鍵盤R即能顯示影象: