发布时间:2025-12-09 19:20:16 浏览次数:4
Open3D是Intel开源的一个支持快速开发处理3D数据的软件库,提供C++和Python接口,目前已经应用到越来越多的项目中。本文将介绍如何在Ubuntu16.04系统上安装Open3D。
如果是Ubuntu18.04及以上版本的系统,那么可以直接通过pip命令就可以安装Open3D。在Ubuntu16.04的系统上,虽然可以通过pip命令安装成功,但是运行的时候会报下面的错误:
Error: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.27'如果想要在Ubuntu16.04的系统上使用Open3D该怎么办呢?可以通过编译源码的方式进行安装:
切换到v0.6.0版本
git checkout v0.6.0再下载子模块的代码
git submodule update --init --recursive这一步是下载子模块3rdparty的代码,如果下载的比较慢,同样可以先把仓库导入到gitee,再把.gitmodules文件中的url修改为gitee中的仓库地址即可。
编译成功后,会在lib/python_package/pip_package/目录下生成对应Python版本的.whl包,用pip命令安装一下就可以了。
pip3 install lib/python_package/pip_package/open3d-0.6.0.0-cp37-cp37m-linux_x86_64.whl安装成功后可以再验证一下:
python3 -c "import open3d"如果没有输出错误,就说明已经可以用了。
Open3D的一个简单应用是对点云进行可视化,下面的例子展示了如何通过几行代码对Modelnet40数据集中的点云数据进行可视化。Modelnet40数据集总共有40个类别,每个样本的点云数据存放在一个.txt文件中,每行的前3个数据代表一个点的xyz坐标。
import open3d as o3dimport numpy as npdef main():points_data = np.loadtxt("airplane_0001.txt", delimiter=",", dtype=np.float32)pcd = o3d.geometry.PointCloud()pcd.points = o3d.utility.Vector3dVector(points_data[:, :3])o3d.visualization.draw_geometries([pcd])if __name__ == '__main__':main()Open3D显示的是3D效果,可以拖动鼠标来转换显示的视角,下面是我截取的两个不同视角下的显示结果: