从PointNet到PointMamba:聊聊这几年点云处理那些‘门派’的兴衰与融合

张开发
2026/4/13 6:53:25 15 分钟阅读

分享文章

从PointNet到PointMamba:聊聊这几年点云处理那些‘门派’的兴衰与融合
从PointNet到PointMamba点云处理技术的江湖风云录在三维视觉的武林中点云处理技术犹如各大门派争奇斗艳各领风骚数载。从早期笨拙的体素化尝试到如今优雅的端到端学习这场技术演进堪称一场精彩绝伦的武林大会。本文将带您穿越时空见证点云处理从外家功夫到内功心法的蜕变历程剖析各派武学的核心要义与兴衰密码。1. 武林初现点云处理的混沌年代2014-2017当深度学习在二维图像领域大放异彩时三维点云处理还处于石器时代。早期的探索者们尝试用最直接的方式——将图像处理方法强行移植到三维空间。体素派的开山之作VoxNet2015如同少林派的刚猛拳法将点云粗暴地划分为规则网格# 典型的体素化处理流程 def voxelize(points, grid_size32): voxels np.zeros((grid_size, grid_size, grid_size)) for x,y,z in points: i,j,k quantize_coordinates(x,y,z, grid_size) voxels[i,j,k] 1 # 简单二值化 return voxels这种方法虽然结构规整却面临两大致命伤信息损失精细结构在量化过程中支离破碎计算爆炸O(N³)的复杂度让硬件不堪重负与此同时2.5D派另辟蹊径将三维问题降维至二维处理投影方式代表方法优势缺陷鸟瞰图(BEV)MV3D保留空间布局高度信息丢失球面投影SqueezeSeg符合LiDAR采集特性远距离分辨率低多视角渲染MVCNN利用成熟图像网络视角选择敏感这段混沌时期的技术如同江湖中的外家功夫虽有一定威力却未能触及点云本质。2. 剑走偏锋点集门派的横空出世2017年PointNet的问世犹如独孤九剑出鞘彻底颠覆了点云处理的游戏规则。这套剑法精妙之处在于核心心法共享MLP处理每个点招式精纯对称函数max pooling保证置换不变性无招胜有招T-Net实现空间对齐以气御剑class PointNet(nn.Module): def __init__(self): super().__init__() self.mlp nn.Sequential( nn.Linear(3, 64), nn.ReLU(), nn.Linear(64, 128) # 点特征升维 ) self.tnet TNet(k3) # 空间变换网络 def forward(self, x): x self.tnet(x) point_feats self.mlp(x) # 逐点特征 global_feat torch.max(point_feats, dim1)[0] # 对称聚合 return global_feat然而这套剑法也有破绽——缺乏局部细节感知。次年PointNet的推出弥补了这一缺陷引入了层次化点集抽象Set Abstraction层的三重境界采样最远点采样确定关键点分组球查询构建局部邻域特征提取迷你PointNet处理局部区域点集门派的崛起催生了一系列变种DGCNN动态图卷积邻域关系随特征演化PointCNN引入χ-变换处理排列不变性PointTransformer自注意力机制建模长程依赖3. 体素派的涅槃重生就当众人以为体素派将退出江湖时两记绝地反击使其重焕生机VoxelNet的三重突破VFE层Voxel Feature Encoding体素内保留原始点云结构多层感知机提取局部特征体素间3D CNN捕获空间上下文稀疏卷积的革命性创新# 稀疏卷积的伪实现 def sparse_conv(input_coords, input_feats, kernel): active_sites find_active_voxels(input_coords) output_feats torch.zeros_like(input_feats) for (i,j,k) in active_sites: # 仅计算非空体素 neighborhood get_neighbors(i,j,k, kernel_size) if neighborhood_not_empty(neighborhood): output_feats[i,j,k] apply_conv(neighborhood, kernel) return output_featsMinkowskiEngine将这一思想推向极致支持4D时空卷积为动态点云处理铺平道路。体素派如今的代表功法包括功法核心创新适用场景SECOND稀疏卷积锚框优化自动驾驶检测CenterPoint基于中心点的BEV检测范式大规模场景VoxelNeXt纯稀疏卷积的轻量化架构边缘设备部署4. 新锐势力的崛起与融合近年来点云江湖又涌现出几股新生力量Transformer派的PointTransformer将自注意力机制引入点云位置编码保留几何信息局部注意力降低计算复杂度层次化结构构建多尺度表征状态空间模型的最新代表PointMamba2025线性复杂度处理长序列选择性状态机制动态建模重要点媲美Transformer的性能计算更高效融合派的典型架构PV-RCNN则博采众长体素分支高效提取粗粒度特征点分支保留精细几何细节RoI池化融合多尺度信息# PV-RCNN的特征融合示例 class PV_RCNN(nn.Module): def __init__(self): self.voxel_net SparseCNN() # 体素分支 self.point_net PointNet() # 点分支 def forward(self, points): voxel_feats self.voxel_net(voxelize(points)) key_points farthest_point_sample(points, 2048) point_feats self.point_net(points, key_points) fused_feats roi_align(voxel_feats, point_feats) # 特征融合 return fused_feats5. 江湖的未来趋势与挑战当前点云处理技术呈现三大演进方向效率革命稀疏化计算成为标配状态空间模型挑战Transformer神经表示替代显式处理多模态融合graph LR LiDAR --|几何精度| Fusion Camera --|纹理色彩| Fusion Radar --|速度信息| Fusion IMU --|运动先验| Fusion Fusion -- Unified_Representation大模型时代点云预训练范式逐渐成熟提示学习适应下游任务三维生成模型崭露头角在实际项目中技术选型需考虑精度需求竞赛级还是工业级实时性要求云端还是边缘计算数据特性室内精细扫描还是户外稀疏点云我曾在一个自动驾驶项目中对比过多种方案在同等计算预算下VoxelNet系列始终是baseline的首选而当我们引入PointNet作为辅助分支后小物体检测精度提升了17%。这个案例印证了融合策略的价值——没有最好的门派只有最合适的组合。

更多文章