news 2026/5/27 2:44:52

【论文精读(二十一)】ASSANet:给PointNet++做个“外科手术”,速度翻倍精度暴涨(NeurIPS 2021)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【论文精读(二十一)】ASSANet:给PointNet++做个“外科手术”,速度翻倍精度暴涨(NeurIPS 2021)

Qian, G., Hammoud, H. A. A. K., Li, G., Thabet, A., & Ghanem, B. (2021). ASSANet: An Anisotropic Separable Set Abstraction for Efficient Point Cloud Representation Learning. NeurIPS.

博主导读
在点云深度学习的江湖里,PointNet++绝对是元老级的存在。虽然现在的 SOTA 榜单上充满了各种图卷积、Transformer,但当你真的要落地部署(特别是搞自动驾驶、手机AR)时,你会发现——还是 PointNet++ 最香。
但是,PointNet++ 也有它的“老年病”:算起来还是有点慢,且 Pooling 操作太粗糙
这篇 NeurIPS 2021 的ASSANet就像一位精通解剖学的“外科医生”,它没有推翻 PointNet++ 重来,而是对它的核心器官——SA (Set Abstraction) 模块——进行了两场精准的“微创手术”。
结果令人惊叹:手术后的 ASSANet 不仅保留了 PointNet++ 的极简风格,而且在精度上吊打了一众复杂的 SOTA,速度更是快得飞起!
论文:ASSANet: An Anisotropic Separable Set Abstraction


1. 问诊:PointNet++ 到底哪儿“虚”?

在动刀之前,我们先给 PointNet++ 做个全身体检。作者通过延迟分解 (Latency Decomposition)发现,PointNet++ 的慢,90% 都是因为计算量大。

具体病灶主要在两个地方:

  1. 计算冗余(虚胖):PointNet++ 在每个局部区域找了K KK个邻居(通常K = 32 K=32K=32),然后对这K KK个邻居的特征分别跑 MLP。
    • 后果:这导致计算量直接翻了K KK倍!其实很多特征提取工作不需要在邻居层面做,在中心点做就够了。
  2. 视力模糊(散光):PointNet++ 最后是用Max Pooling把邻居特征聚合成一个点。
    • 后果:这是一种各向同性 (Isotropic)的操作。它分不清“左边的邻居”和“右边的邻居”,导致丢失了关键的几何方向信息。

ASSANet 的治疗方案

  1. 第一刀(瘦身):把 MLP 拆开,移到点上算 ——Separable SA
  2. 第二刀(矫正):引入位置权重,区分方向 ——Anisotropic Reduction

2. 第一刀:可分离 SA (Separable SA) —— 速度起飞 🚀

这一招的灵感来自于 CV 界的轻量化神作MobileNet(深度可分离卷积)。

  • PointNet++ 的做法 (Vanilla SA)

    • 先找邻居→ \to再对每个邻居跑 MLP。
    • 计算量O ( N × K × C o u t ) O(N \times K \times C_{out})O(N×K×Cout)。太重了!
  • ASSANet 的做法 (Separable SA)

    • 先跑 MLP:在找邻居之前,先对中心点特征做一次 MLP(Point-wise)。
    • 再找邻居:拿着处理好的特征去 Grouping。
    • 后跑 MLP:聚合之后,再做一次 MLP。
    • 计算量O ( N × C o u t ) O(N \times C_{out})O(N×Cout)
    • 效果:直接把计算量里的K KK给消掉了!速度瞬间提升

3. 第二刀:各向异性归约 (Anisotropic Reduction) —— 精度回血 🎯

如果只做第一步瘦身,速度是快了,但精度会掉(因为丢失了邻居间的交互)。为了补回精度,作者对 Pooling 层动了手脚。

  • PointNet++ 的做法 (Isotropic)

    • Max_Pooling([f1, f2, ..., fk])
    • 不管邻居在哪,一视同仁。
  • ASSANet 的做法 (Anisotropic)

    • 利用相对坐标( Δ x , Δ y , Δ z ) (\Delta x, \Delta y, \Delta z)(Δx,Δy,Δz)给特征加权!
    • 操作:把特征f ff分别乘以归一化的Δ x , Δ y , Δ z \Delta x, \Delta y, \Delta zΔx,Δy,Δz
    • 公式
      f n e w = Concat ( f ⋅ Δ x , f ⋅ Δ y , f ⋅ Δ z ) f_{new} = \text{Concat}(f \cdot \Delta x, \quad f \cdot \Delta y, \quad f \cdot \Delta z)fnew=Concat(fΔx,fΔy,fΔz)
    • 效果:这样网络就能知道特征是来自“上方”还是“左方”了。这就把丢失的几何结构信息找回来了。

这就像是给近视眼戴上了眼镜。以前看邻居是一团模糊,现在能看清谁在左边、谁在右边了。虽然多了一步乘法,但因为是在 Reduction 阶段做的,几乎不增加计算负担


4. 合体:ASSANet 与数据流

把 PointNet++ 里所有的 SA 模块都替换成ASSA 模块,就得到了ASSANet

宏观架构

它依然保持了经典的Encoder-Decoder结构:

  1. Encoder:4 个阶段,通过 ASSA 模块不断下采样、提取特征。
  2. Decoder:通过 FP 模块上采样,并与 Encoder 特征进行 Skip Connection 拼接。
  3. Head:接全连接层输出分类或分割结果。

性能怪兽

作者还研究了如何把模型做大做强 (Scaling)

  • ASSANet-L (Large):加宽通道、加深层数。
  • 即便如此,它依然比那些复杂的图卷积网络要快得多。

5. 实验:吊打全场 (Experiments) 📊

作者在三大经典任务上验证了疗效。

5.1 场景分割 (S3DIS Area 5)

这是最硬核的指标。

  • PointNet++:55.6 mIoU。
  • ASSANet63.0 mIoU
    • 提升+7.4 mIoU
    • 速度:快了1.6 倍
  • ASSANet-L66.8 mIoU
    • 对比 KPConv (65.4 mIoU),精度更高,且速度快了54 倍!这是什么概念?这是降维打击!

5.2 消融实验

作者一步步证明了这两刀的价值(见 Table 4):

  1. 只做瘦身 (PreConv):速度快了,但精度崩了 (48.7 mIoU)。
  2. 加残差 (Separable):精度回血一点 (52.4 mIoU)。
  3. 加各向异性 (ASSA)精度直接封神 (63.0 mIoU),且速度几乎没掉。

6. 总结 (Conclusion)

ASSANet 给了我们一个极其重要的启示:
不要盲目迷信复杂的算子。

PointNet++ 这种经典架构,只要稍加改造,优化掉它的计算瓶颈(Separable),弥补掉它的几何缺陷(Anisotropic),就能焕发出惊人的生命力。

  • 对于学术界:这是一个“极简主义”战胜“堆砌主义”的经典案例。
  • 对于工业界:如果你要在手机、嵌入式设备上跑点云算法,ASSANet 绝对是目前性价比最高的选择之一。

📚 参考文献

[1] Qian, G., et al. (2021). ASSANet: An Anisotropic Separable Set Abstraction for Efficient Point Cloud Representation Learning. NeurIPS.


💬 互动话题:

  1. 关于轻量化:你觉得未来的点云网络会往哪个方向卷?是继续设计复杂的 Transformer,还是像 ASSANet 这样回归极简高效?
  2. 关于 PointNet++:你现在的项目里还在用 PointNet++ 吗?有没有遇到速度瓶颈?欢迎在评论区吐槽!

📚 附录:点云网络系列导航

🔥欢迎订阅专栏:【点云特征分析_顶会论文代码硬核拆解】持续更新中…

本文为 CSDN 专栏【点云特征分析_顶会论文代码硬核拆解】原创内容,转载请注明出处。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/24 15:24:17

创建复选框控件

复选框控件(QCheckBox)一、控件介绍QCheckBox 是 Qt 框架提供的标准复选框控件,用于在用户界面中提供一个可选择的方框。用户可以通过点击来切换其状态,状态通常分为“选中”和“未选中”。 此外,QCheckBox 还支持“三…

作者头像 李华
网站建设 2026/5/4 6:35:38

Git commit规范检查新思路:结合GLM-4.6V-Flash-WEB图像日志分析

Git commit规范检查新思路:结合GLM-4.6V-Flash-WEB图像日志分析 在现代软件开发中,一次看似普通的 git push 操作背后,可能隐藏着远超代码变更本身的丰富上下文——调试截图、错误弹窗、监控图表……这些视觉信息本应是理解修改意图的关键线索…

作者头像 李华
网站建设 2026/5/24 13:51:27

MLP开发效率革命:传统编码vsAI生成对比

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 生成两个对比项目:1. 传统方式手写的MLP数字识别代码 2. AI生成的优化版本。要求:1. 相同MNIST数据集 2. 相同网络结构(2个隐藏层) 3. 包含性能对比报告 4.…

作者头像 李华
网站建设 2026/5/21 23:53:20

IDEA官网新手指南:如何用AI插件提升开发效率

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个基于IntelliJ IDEA的AI辅助开发插件,支持代码自动补全、错误检测和智能重构。插件应集成GitHub Copilot和Tabnine的功能,提供实时建议,…

作者头像 李华
网站建设 2026/5/1 9:02:13

使用Docker容器部署GLM-4.6V-Flash-WEB时的资源限制策略

使用Docker容器部署GLM-4.6V-Flash-WEB时的资源限制策略 在当前多模态AI应用快速落地的背景下,如何将视觉语言模型(VLM)稳定、高效地部署到生产环境,已经成为开发者面临的核心挑战之一。尤其是像图像问答、内容审核、智能客服这类…

作者头像 李华
网站建设 2026/5/21 17:04:08

电感封装与地平面设计:降低电磁干扰的核心要点

电感与地平面的隐秘战争:如何打赢EMI这场硬仗? 你有没有遇到过这样的场景? 电路功能一切正常,波形干净,负载响应迅速——结果一进EMC实验室,辐射超标十几dB,30MHz到100MHz像坐了火箭一样冲顶限…

作者头像 李华