点云 3D 数据 读取、保存 - pypcd 包
创始人
2024-02-20 15:33:19

点云 3D 数据 读取、保存 - pypcd 包

  • 1. 点云 3D 数据
  • 2. Python 下 pypcd 库安装
    • 2.1 在 Python 2.* 下安装 pypcd
    • 2.2 在 Python 3.* 下安装 pypcd
  • 3. 点云 3D 数据 的读取、保存
    • 3.1 ".pcd" 格式
    • 3.2 ".bin" 格式

1. 点云 3D 数据

点云 3D 数据 离线状况 通常以 “.pcd”、“.bin” 等格式存储,其中 “.pcd” 文件在 Ubuntu 下可以方便的使用 pcl_viewer 命令查看;而 “.bin” 格式 则可 以最少的 库依赖 完成对点云的读取保存。

2. Python 下 pypcd 库安装

  • pypcd 网址:https://github.com/dimatura/pypcd

当前默认支持的是 python 2.* 环境, python 3.* 下的安装需要适配版本,不然使用过程中会报错

2.1 在 Python 2.* 下安装 pypcd

pip install pypcd

2.2 在 Python 3.* 下安装 pypcd

git clone https://github.com/dimatura/pypcd
cd pypcdgit fetch origin pull/9/head:python3git checkout python3python3 setup.py install

3. 点云 3D 数据 的读取、保存

3.1 “.pcd” 格式

import numpy as np
from pypcd import pypcdfile_path = "/home/hjw/point_cloud/test.pcd"# read data
pcd = pypcd.PointCloud.from_path(file_path)
point_cloud = np.zeros((pcd.points, len(pcd.fields)), dtype=np.float32)for i, field in enumerate(pcd.fields):point_cloud[:, i] = np.transpose(pcd.pc_data[field])# x, y, z, intensity
point_cloud = point_cloud[:, 0:4]# store_path = "/home/hjw/point_cloud/test_save.pcd"# # save as binary compressed
# pcd.save_pcd(store_path , compression='binary_compressed')

3.2 “.bin” 格式

import numpy as npfile_path = "/home/hjw/point_cloud/test.bin"# read data
point_cloud = np.fromfile(file_path , dtype=np.float32)
point_cloud = point_cloud.reshape((-1, 4))# x, y, z, intensity
point_cloud = point_cloud[:, 0:4]# store_path = "/home/hjw/point_cloud/test_save.bin"# # save data
# point_cloud.tofile(store_path)

上一篇:Java DbUtils实用

下一篇:信息标准化介绍

相关内容

热门资讯

玩家必知教程!hhpoker作... 玩家必知教程!hhpoker作弊码(辅助挂)果然真的有挂(真实有挂)1、每一步都需要思考,不同水平的...
六分钟了解!pokemmo辅助... 六分钟了解!pokemmo辅助器(辅助挂)一贯是真的有挂(真的有挂)1、在pokemmo辅助器插件功...
普及知识!哈糖大菠萝有挂吗5个... 普及知识!哈糖大菠萝有挂吗5个常用方法(辅助挂)其实是真的有挂(有挂头条)1、哈糖大菠萝有挂吗5个常...
玩家必看分享!wepoker手... 玩家必看分享!wepoker手机版辅助(辅助挂)一贯真的是有挂(有挂头条)玩家必看分享!wepoke...
必看攻略!wepoker买钻石... 必看攻略!wepoker买钻石有用吗(辅助挂)切实有挂(有挂功能)所有人都在同一条线上,像星星一样排...