3D数据处理的开源库Open3D发布0.19版本更新,并同步推出对应安装包。本版重点更新两项内容:一是新增对Python 3.12和科学计算库NumPy 2的兼容支持,二是将GPU加速支持从原有的CUDA扩展至跨平台方案。
Open3D是一个跨C++与Python的3D数据处理库,提供数据结构、算法与可视化组件,广泛应用于点云处理、网格处理与场景重建等任务。在GitHub平台上,Open3D项目已被约1.4万个公开仓库引用。
Open3D新增基于SYCL开放标准的实验性跨平台GPU支持,目标是让同一套代码可在不同厂商和类型的GPU上运行,包括集成显卡和独立显卡。官方目前已提供适用于Ubuntu 22.04及以上系统的SYCL预览版Python 3.10 wheel文件,并集成采用Intel Embree的GPU加速光线投射(Raycasting)功能,重点提升几何计算等常见负载的性能。SYCL是由Khronos Group制定的规范,旨在使用现代C++编写可在CPU、GPU等异构计算设备上运行的程序,同一份源码同时包含主机端与加速器端的逻辑。
Open3D 0.19版本新增对CUDA 12的支持,并推出同时涵盖ARM64与x86_64架构的macOS通用Python wheel包和C++二进制包,降低跨架构部署的复杂度。对于依赖Python工具链的团队而言,新增Python 3.12与NumPy 2支持,有助于跟上周边库的升级节奏。
Open3D 0.19还新增多项3D数据比较的评估指标,如Chamfer距离、Hausdorff距离与F值(F-Score),同时引入FlyingEdges算法,可从密集3D体数据中提取等值面并生成三角网格,并扩展了材质贴图与采样等功能。
在机器学习生态应用方面,Open3D开始支持PyTorch 2.2与TensorFlow 2.16,但官方提醒,目前Linux平台提供的官方Python wheel包仅包含PyTorch支持,不包含TensorFlow。此外,文件输入输出现在可直接接受Python标准库中的pathlib.Path对象,并优化了Python文档与类型注解。