配置vscode python3.6的环境我就跳过了,网上都有
1.下载PCL1.9
github:pcl-1.9.1
百度云:PCL-1.9.1-AllInOne-msvc2017-win64提取码adcx
2.安装硬盘任意位置,我是E盘,在安装过程中会弹出openni的安装提示,将它安装路径选择在E:\PCL 1.9.1\3rdParty\OpenNI2,等待安装完成
3.pip先安装这两个库
pip install cython
pip install numpy
然后下载python_pcl-0.3-cp36-cp36m-win_amd64,cd到下载目录,用pip进行安装
pip install python_pcl-0.3-cp36-cp36m-win_amd64
百度云:python_pcl-0.3-cp36-cp36m-win_amd64
4.配置系统环境
此电脑-属性-高级系统设置-环境变量-系统变量 找到Path,添加以下路径
配置完成
打开vscode测试,用以下文件测试
anbo.pcd
import numpy as np
import pcl
import pcl.pcl_visualization
def main():
# 加载点云数据
cloud = pcl.load('E:\\anbo.pcd')
# 将数据居中
centred = cloud - np.mean(cloud, 0)
# 将居中后的点云数据转换为pcl格式
ptcloud_centred = pcl.PointCloud()
ptcloud_centred.from_array(centred)
# 创建CloudViewing对象
visual = pcl.pcl_visualization.CloudViewing()
# 显示点云
visual.ShowMonochromeCloud(ptcloud_centred, b'cloud')
v = True
# 检查是否停止显示
while v:
v = not(visual.WasStopped())
if __name__ == "__main__":
# 主函数
main()
输出
obj模型转bcd
def obj2pcd():
cloud = pcl.load('E:\\anbo.obj') # 从文件中加载点云数据,文件名不支持中文
pcl.save(cloud, 'E:\\anbo.pcd') # 将点云数据保存为pcd格式
visual = pcl.pcl_visualization.CloudViewing() # 创建CloudViewing对象
visual.ShowMonochromeCloud(cloud, b'cloud') # 显示点云
v = True
while v:
v = not(visual.WasStopped()) # 检查是否停止显示
报错解决办法
1.报错AttributeError: module ‘pcl’ has no attribute ‘pcl_visualization’
打开pcl包_init_.py文件,删掉from .pcl_visualization import *前面的注释符