项目简介
本项目是“PartSLIP: Low-Shot Part Segmentation for 3D Point Clouds via Pretrained Image-Language Models”(CVPR2023)的官方实现。它探索了利用预训练图像 - 语言模型(GLIP)进行3D点云低样本部分分割的新方法,能实现出色的零样本3D部分分割,少样本版本超越现有少样本方法,在与全监督方法对比中也有极具竞争力的结果,还可直接应用于真实世界的点云数据。
项目的主要特性和功能
- 零样本和少样本分割:借助预训练的GLIP模型,实现零样本和少样本的3D点云分割,提供语义和实例级别的分割结果。
- 多视角渲染:支持从多个视角渲染点云数据,并保存渲染结果。
- 可视化结果:生成渲染后的点云图像、GLIP预测的边界框、超点、语义分割和实例分割结果的可视化文件。
- 评估功能:提供脚本计算论文中报告的mIoU。
安装使用步骤
安装
- 创建conda环境并安装依赖:
conda env create -f environment.yml conda activate partslip
- 安装PyTorch3D:(此处原文未提供命令,需补充后再操作)
- 安装GLIP:
git submodule update --init cd GLIP python setup.py build develop --user
- 安装cut - pursuit:
CONDAENV=YOUR_CONDA_ENVIRONMENT_LOCATION cd partition/cut - pursuit mkdir build cd build cmake .. -DPYTHON_LIBRARY=$CONDAENV/lib/libpython3.9.so -DPYTHON_INCLUDE_DIR=$CONDAENV/include/python3.9 -DBOOST_INCLUDEDIR=$CONDAENV/include -DEIGEN3_INCLUDE_DIR=$CONDAENV/include/eigen3 make
运行
- 下载预训练模型:
!pip3 install huggingface_hub from huggingface_hub import hf_hub_download for model in ["glip_large_model", "Chair", "Suitcase", "Refrigerator", "Lamp", "Kettle"]: hf_hub_download(repo_id="minghua/PartSLIP", filename="models/%s.pth" % model, repo_type="dataset", local_dir="./", local_dir_use_symlinks=False)
- 推理:项目在
examples/
目录下提供了5个示例点云文件,下载5 + 1个检查点文件后,使用以下命令运行零样本和少样本推理:python3 demo.py
- 评估:使用
sem_seg_eval.py
脚本计算论文中报告的mIoU。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】