文章目录
- 前言
- python安装
- 安装步骤
- 常见问题及解决方案
- c++安装
- 安装步骤
- 常见问题及解决方案
- 总结
前言
欢迎来到“Open3D学习”系列的第一篇文章:“轻松安装 Open3D”。在这个系列中,我们将一起深入探索 Open3D —— 一个强大的、开源的三维数据处理库,它正在逐渐成为三维视觉和图形领域的热门工具。
Open3D 提供了丰富的功能,包括点云处理、三维重建、几何学分析和三维数据可视化等。无论您是一名研究人员、工程师还是爱好者,只要您对三维数据处理感兴趣,Open3D 都是您不可或缺的工具。
然而,任何一段旅程的开始都可能充满挑战,而对于 Open3D 而言,这个挑战就是安装过程。本文旨在提供一个简明扼要的指南,帮助您顺利完成 Open3D 的安装,为您后续的学习和探索打下坚实的基础。让我们一起迈出这个系列的第一步,开始我们的 Open3D 之旅吧!
python安装
安装步骤
-
确保 Python 环境:
首先,确保您已经安装了 Python。Open3D 需要 Python 3.6 或更高版本。您可以通过在终端或命令提示符中运行 python --version 来检查您的 Python 版本。根据我个我的实践来看,最新的Open3D最好是使用Python3.10或更高版本。 -
使用 pip 安装:
Open3D 可以通过 Python 的包管理器 pip 轻松安装。只需打开您的终端或命令提示符,然后输入以下命令:
pip install open3d
这条命令会自动处理所有的依赖关系,并将 Open3D 安装到您的 Python 环境中。
常见问题及解决方案
尽管安装过程通常很顺利,但有时您可能会遇到一些问题。以下是一些常见问题及其解决方案:
-
版本不兼容:
问题:如果您的 Python 版本较低,尝试安装 Open3D 时可能会出现兼容性问题。
解决方案:升级您的 Python 版本。您可以从 Python 官网 下载最新版本的 Python。 -
pip 版本过旧:
问题:如果您的 pip 版本过旧,可能无法正确安装 Open3D。
解决方案:更新 pip 到最新版本。运行pip install --upgrade pip
。 -
依赖项冲突:
问题:有时,安装 Open3D 可能会与现有的 Python 包发生依赖冲突。特别是在运行Open3D的程序时有时会报Werkzeug库的版本与Flask或Open3D的某些部分不兼容的情况。
解决方案:考虑在虚拟环境中安装 Open3D。这可以通过python -m venv myenv
创建一个新的虚拟环境,然后使用source myenv/bin/activate
(Linux/macOS)或myenv\Scripts\activate
(Windows)激活它。或者conda create -n open3d python=3.10
创建新的 Conda 环境的,然后再用conda activate open3d
来激活这个环境。用conda这个方式是我比较推荐的。
c++安装
安装步骤
- 安装依赖:
在开始之前,确保您的系统安装了所有必要的依赖。打开终端并运行以下命令:
sudo apt-get update
sudo apt-get install build-essential cmake git
这一步根据情况而定,比如可能遇到cmake版本过低的情况,这就需要源码编译安装cmake,具体的方法这里不再详述。
- 克隆 Open3D 仓库:
接下来,克隆 Open3D 的 GitHub 仓库到您的本地机器:
git clone --recursive /intel-isl/Open3D
- 安装配置和编译时的依赖
对于ubuntu系统,运行下面的命令,可以把配置和编译时的依赖安装好,这样不会报错。
cd Open3D
bash util/install_deps_ubuntu.sh
- 编译 Open3D:
在 Open3D 目录中,创建一个构建目录并进入,然后,使用 CMake 来配置项目,并编译安装:
cd Open3D
mkdir build
cd build
cmake ..
# 也可以根据自己的需要改为下面的命令
# cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=${HOME}/open3d_install ..
make -j$(nproc)
sudo make install
这里 make -j$(nproc) 命令将使用所有可用的处理器核心来加速编译过程。
-DBUILD_SHARED_LIBS=ON和-DCMAKE_INSTALL_PREFIX=${HOME}/open3d_install
可根据实际需要设置。我一般是采用cmake -DBUILD_SHARED_LIBS=ON ..
。指定构建共享库(动态库)而不是静态库,安装路径直接默认/usr/local里就可以了。
常见问题及解决方案
在安装过程中,您可能会遇到一些问题。以下是一些常见问题及其解决方案:
-
编译错误:
问题:在编译过程中可能会遇到各种编译错误。
解决方案:确保您的系统满足所有依赖要求。如果错误与特定的依赖项有关,请尝试更新或重新安装这些依赖项。
具体说明我遇到的一个问题就是Open3D的编译工具是clang,而clang的版本过低会导致编译不通过,报错clang: error: unsupported argument 'auto' to option 'flto='
。解决方法就是要源码编译clang。具体方法参考我的另一篇博客ubuntu系统源码编译clang。
另外一个问题是'lib/Release/Python/cpu/-39-x86_64' failed
。这可能是是由于Python版本的问题,c++版本的Open3D在构建过程中也是需要Python的,解决方法就是建立一个新的Python3.10的conda环境。 -
内存不足:
问题:在编译过程中,尤其是在资源有限的机器上,可能会因为内存不足而失败。
解决方案:尝试减少并行编译作业的数量,通过在 make 命令中使用 -j 参数来指定较小的数值,例如make -j2
。 -
libc++版本不匹配:
问题:在尝试编译Open3D时,可能会遇到CMake Error at 3rdparty/find_dependencies.cmake:1357 (message): Cannot find matching libc++ and libc++abi libraries with version >=7.
的错误。
解决方案:确保您的系统中已正确安装并能被CMake识别到符合版本要求的libc++和libc++abi库。这时就需要使用系统的包管理器安装或更新libc++和libc++abi库。例如,在Ubuntu系统上,可以运行:sudo apt-get install libc++-dev libc++abi-dev
一般这样就可以解决问题。
总结
至此,我们已经完成了 Open3D 的安装过程,这标志着您在 Open3D 旅程上的成功起步。通过本文,您不仅学会了如何在不同的操作系统上安装 Open3D,还了解了一些常见问题的解决策略,这将为您在后续的学习和实践中节省宝贵的时间和精力。
随着 Open3D 的安装完成,一个全新的三维数据处理世界正等待着您去探索。无论是点云处理、三维重建,还是复杂的几何分析,Open3D 都将成为您强有力的助手。在接下来的文章中,我们将继续深入探讨 Open3D 的各种功能和应用,帮助您充分利用这个强大的工具。