在 3D 视觉、自动驾驶、机器人感知、工业检测等领域,点云是核心环境数据载体。传统 PCL 库仅能实现基础点云分割与分类,规则依赖人工定义,开发成本高、鲁棒性差,难以应对复杂无序点云与密度不均场景。PointNet/PointNet++ 作为点云深度学习里程碑算法,可直接处理无序点云、捕捉局部结构、保持变换不变性,适用于 Ubuntu 环境下的点云智能识别、分割、分类任务,为机器人三维感知、自动驾驶环境理解、工业零件检测提供高效解决方案,是从传统点云处理迈向深度学习智能分析的关键技术。
项目在 Ubuntu 环境下基于 PyTorch 复现 PointNet 点云分割与分类全流程。首先配置依赖环境,搭建 PyTorch 与 PointNet 工程框架;使用 CloudCompare 对自定义点云进行分割、标注、合并,保存为带标签数据,通过 Python 脚本将点云与标签分离,生成标准化数据集;构建 PointNetDenseCls 模型,设计数据集加载器,完成随机采样、归一化、标签映射等预处理,设置 Adam 优化器与 NLLLoss 损失函数,开启 GPU 训练并保存最优模型;推理阶段加载模型与标签映射文件,对输入点云预处理后预测逐点类别,通过 Matplotlib 实现 3D 点云分割结果可视化,验证算法有效性,完成从环境配置、数据制作、模型训练到部署推理的完整落地。