Superpoint Transformer | 代码复现

前言

Superpoint Transformer 和 Superpoint Graph 的核心区别在于它们的架构设计和数据处理方式。
Superpoint Graph (SPG):

基于图结构:
    将点云划分为超点(superpoints),每个超点表示具有相似几何和语义属性的点集。
    构建超点之间的 图结构,图的节点是超点,边是超点之间的关系(如几何相邻性、相似性等)。
    使用 图神经网络 (GNN) 在超点图上进行推理。

超点分割:
    通过传统的分割算法(如基于欧几里得距离、法向量聚类)对点云进行分割。
    不需要处理所有点,而是通过图节点的稀疏化表示大幅降低计算复杂度。

Superpoint Transformer (SPT):

基于 Transformer:
    将超点看作序列,使用 Transformer 架构 对超点进行推理。
    自注意力机制捕获超点之间的全局依赖关系,无需显式构建图结构。

超点生成:
    类似 SPG,先通过几何特征生成超点,但在超点之间的推理中采用了不同的方法(基于自注意力)。

Superpoint Graph (SPG):

输入表示:
    图结构 G=(V,E)G=(V,E),其中 VV 是超点节点,EE 是节点之间的边。
    每个节点有一个特征向量,表示超点的属性(如大小、平均颜色、几何特性)。

图神经网络 (GNN):
    在图上运行 GNN,例如 Edge Convolution (EdgeConv),用来捕获超点之间的几何关系。
    通过消息传递机制更新节点特征。
    依赖图结构,因此需要预定义超点之间的连接关系。

限制:
    图结构构建可能存在信息丢失,尤其是在点云稀疏或超点划分质量不高的情况下。
    图操作可能对并行性支持不够,特别是在大规模数据上。

Superpoint Transformer (SPT):

输入表示:
    超点序列 S=[s1,s2,...,sn]S=[s1​,s2​,...,sn​],每个超点 sisi​ 是一个特征向量,表示超点的属性。
    不需要构建显式图结构。

Transformer 架构:
    使用 多头自注意力机制 (Multi-head Self-Attention) 计算超点之间的相关性:
    Attention(Q,K,V)=softmax(QK⊤dk)V
    Attention(Q,K,V)=softmax(dk​

​QK⊤​)V 其中 QQ, KK, VV 是超点的特征表示。
每个超点的表示更新时,会考虑所有其他超点的全局关系,适合捕获长距离依赖。

优势:

全局感知能力强,自注意力机制可以捕获远程依赖关系。
支持并行计算,尤其适合 GPU 加速。

github链接🔗 https://github.com/drprojects/superpoint_transformer
在这里插入图片描述

1. 安装依赖

./install.sh

检查安装是否成功
激活环境:

conda activate spt

测试 PyTorch 是否正确安装并支持 GPU:

python -c "import torch; print(torch.cuda.is_available())"

返回 True 表示安装成功。

如果本地cuda环境不匹配,可以在虚拟环境里面安装新的cuda

conda create -n spt python=3.9 -y
conda activate spt
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
python -c "import torch; print(torch.cuda.is_available())"

install.sh 中有硬性 CUDA 检查逻辑,需要跳过它

关键修改点 1:跳过 CUDA 版本检查

在脚本中,CUDA 检查部分会导致问题,因为它检测的是系统 CUDA,而不是虚拟 CUDA。可以直接跳过这部分检查。

找到以下代码:
CUDA_VERSION=`nvcc --version |
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值