您现在的位置是:首页 >技术教程 >vscode python3.6配置pcl点云库 obj3d模型转pcd点云图网站首页技术教程

vscode python3.6配置pcl点云库 obj3d模型转pcd点云图

暗碳 2023-06-09 04:00:02
简介vscode python3.6配置pcl点云库 obj3d模型转pcd点云图

在这里插入图片描述
配置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.13rdPartyOpenNI2,等待安装完成
这里选第一个,因为选添加到系统环境一般会报错

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 *前面的注释符
在这里插入图片描述

在这里插入图片描述

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。