Pointcept数据集准备详解:ScanNet、S3DIS等8大主流数据集完整指南

张开发
2026/4/12 9:10:06 15 分钟阅读

分享文章

Pointcept数据集准备详解:ScanNet、S3DIS等8大主流数据集完整指南
Pointcept数据集准备详解ScanNet、S3DIS等8大主流数据集完整指南【免费下载链接】PointceptPointcept: Perceive the world with sparse points, a codebase for point cloud perception research. Latest works: Utonia, Concerto (NeurIPS25), Sonata (CVPR25 Highlight), PTv3 (CVPR24 Oral)项目地址: https://gitcode.com/gh_mirrors/po/PointceptPointcept是一个功能强大的点云感知研究代码库支持多种主流3D数据集。对于想要快速上手点云分割、分类和检测的研究者和开发者来说掌握Pointcept的数据集准备流程是成功的第一步。本文将详细介绍Pointcept支持的8大主流数据集准备方法包括ScanNet、ScanNet、S3DIS、Structured3D、Matterport3D、SemanticKITTI、nuScenes和Waymo帮助您快速构建点云感知实验环境。 Pointcept支持的8大点云数据集概览Pointcept代码库为多种室内外点云数据集提供了一致的预处理接口和训练框架。以下是支持的数据集列表室内场景数据集ScanNet / ScanNet200 / ScanNet Data EfficientScanNet最新高精度室内数据集S3DISStanford 3D Indoor SpacesStructured3D合成室内场景Matterport3D真实室内场景ArkitScenesARKit室内场景室外场景数据集SemanticKITTI自动驾驶场景nuScenes多传感器自动驾驶Waymo大规模自动驾驶物体级数据集ModelNet403D形状分类ShapeNetPart部件分割️ 数据集预处理核心流程所有数据集的预处理都遵循相似的流程主要步骤包括1. 数据下载与授权每个数据集都需要从其官方网站下载并同意相应的使用协议。Pointcept提供了详细的下载指引和预处理脚本。2. 预处理脚本执行每个数据集都有对应的预处理脚本位于pointcept/datasets/preprocessing/目录下ScanNet:preprocess_scannet.pyScanNet:preprocess_scannetpp.pyS3DIS:preprocess_s3dis.pyStructured3D:preprocess_structured3d.pyMatterport3D:preprocess_matterport3d_mesh.pynuScenes:preprocess_nuscenes_info.pyWaymo:preprocess_waymo.py3. 数据格式标准化Pointcept将所有数据集转换为统一的.pth格式包含以下关键字段coord: 点云坐标 (N×3)color: RGB颜色 (N×3)normal: 法向量 (N×3)segment: 语义标签 (N×1)instance: 实例标签 (N×1)上图展示了Pointcept中点云批处理的核心概念——**偏移量Offset与批次索引Batch**的转换机制。在处理多个不同大小的点云时这种机制确保了高效的内存使用和计算并行化。 详细数据集准备步骤ScanNet数据集准备ScanNet是室内3D语义分割的基准数据集包含1513个扫描场景。步骤1下载原始数据# 访问ScanNet官网获取下载权限 # 下载ScanNet v2数据集步骤2运行预处理脚本python pointcept/datasets/preprocessing/scannet/preprocess_scannet.py \ --dataset_root ${RAW_SCANNET_DIR} \ --output_root ${PROCESSED_SCANNET_DIR}步骤3链接到代码库mkdir -p data/scannet ln -s ${PROCESSED_SCANNET_DIR} data/scannet/trainS3DIS数据集准备S3DIS包含6个大型室内区域的3D扫描总面积超过6000平方米。步骤1申请数据访问填写Google表单获取Stanford3dDataset_v1.2.zip可选下载2D-3D语义数据集用于法向量计算步骤2预处理命令# 基本预处理无对齐角度 python pointcept/datasets/preprocessing/s3dis/preprocess_s3dis.py \ --dataset_root ${S3DIS_DIR} \ --output_root ${PROCESSED_S3DIS_DIR} # 带法向量解析需要更多内存 python pointcept/datasets/preprocessing/s3dis/preprocess_s3dis.py \ --dataset_root ${S3DIS_DIR} \ --raw_s3dis_dir ${RAW_S3DIS_DIR} \ --output_root ${PROCESSED_S3DIS_DIR} \ --parse_normalScanNet数据集准备ScanNet是ScanNet的升级版提供更高精度的扫描数据。特殊处理数据分块由于ScanNet数据量巨大需要进行分块处理# 数据分块处理 python pointcept/datasets/preprocessing/sampling_chunking_data.py \ --dataset_root ${PROCESSED_SCANNETPP_DIR} \ --grid_size 0.01 \ --chunk_range 6 6 \ --chunk_stride 3 3 \ --split train \ --num_workers ${NUM_WORKERS}室外数据集特殊处理SemanticKITTI需要下载序列00-10的训练数据和序列11-21的测试数据使用KITTI的校准文件进行坐标转换nuScenes需要下载完整nuScenes数据集约300GB使用OpenPCDet格式的信息预处理支持多传感器融合Waymo下载Waymo Open Dataset v1.4.3按照官方目录结构组织包含完整的传感器数据激光雷达、相机 快速开始一键预处理脚本对于想要快速验证的研究者Pointcept提供了预处理的替代方案下载预处理的HuggingFace数据# ScanNet预处理数据 # 访问https://huggingface.co/datasets/Pointcept/scannet-compressed # ScanNet预处理数据 # 访问https://huggingface.co/datasets/Pointcept/scannetpp-compressed # 其他数据集也有相应的预处理版本使用预训练模型快速验证Pointcept在HuggingFace上提供了多种预训练模型可以直接用于推理和微调。 项目目录结构解析了解Pointcept的目录结构有助于更好地使用数据集pointcept/datasets/ ├── preprocessing/ # 所有数据集的预处理脚本 │ ├── scannet/ # ScanNet预处理 │ ├── s3dis/ # S3DIS预处理 │ ├── scannetpp/ # ScanNet预处理 │ ├── nuscenes/ # nuScenes预处理 │ └── waymo/ # Waymo预处理 ├── scannet.py # ScanNet数据集类 ├── s3dis.py # S3DIS数据集类 ├── scannetpp.py # ScanNet数据集类 ├── nuscenes.py # nuScenes数据集类 ├── waymo.py # Waymo数据集类 └── defaults.py # 默认数据集配置 实用技巧与注意事项内存优化技巧分批处理对于大型数据集如Waymo、nuScenes使用--num_workers参数控制并行度磁盘空间预处理后的数据通常比原始数据大2-3倍确保有足够存储空间缓存机制Pointcept使用共享字典缓存加速数据加载常见问题解决权限问题确保对下载的数据有读取权限路径问题使用绝对路径或正确配置符号链接版本兼容性检查数据集版本与代码兼容性性能优化建议使用SSD存储加速数据读取为大型数据集配置足够的内存合理设置数据加载的工作进程数 数据集配置示例每个数据集都有对应的配置文件位于configs/目录下ScanNet:configs/scannet/semseg-pt-v3m1-0-base.pyS3DIS:configs/s3dis/semseg-pt-v3m1-0-base.pySemanticKITTI:configs/semantic_kitti/semseg-pt-v2m2-0-base.py配置文件包含了数据路径、训练参数、模型架构等完整设置。 数据集统计与比较数据集场景数量点云数量类别数主要用途ScanNet1,513~2.5M/场景20/200室内语义分割ScanNet1,061~10M/场景28高精度室内S3DIS6区域2.15亿点13室内场景分割Structured3D3,500合成场景20合成数据预训练SemanticKITTI22序列4.5亿点19自动驾驶nuScenes1,000场景多传感器16多模态感知Waymo1,150序列大规模22大规模自动驾驶 资源与下一步完成数据集准备后您可以开始训练使用提供的训练脚本开始模型训练评估模型使用测试脚本评估模型性能自定义数据集参考现有数据集类实现自己的数据集参与社区在GitHub上报告问题和贡献代码通过本文的详细指南您应该能够顺利完成Pointcept所有主流数据集的准备工作。正确的数据准备是成功进行点云感知研究的基础祝您在3D视觉研究中取得丰硕成果温馨提示在实际使用中请务必遵守各数据集的许可协议并正确引用相关论文。Pointcept社区欢迎您的反馈和贡献共同推动点云感知技术的发展。【免费下载链接】PointceptPointcept: Perceive the world with sparse points, a codebase for point cloud perception research. Latest works: Utonia, Concerto (NeurIPS25), Sonata (CVPR25 Highlight), PTv3 (CVPR24 Oral)项目地址: https://gitcode.com/gh_mirrors/po/Pointcept创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

更多文章