news 2026/2/11 10:51:07

【论文精读(二十一)】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/2/9 17:39:07

virtual serial port driver数据传输延迟优化策略

如何让虚拟串口“飞”起来?——深度优化 virtual serial port driver 的实时性能 你有没有遇到过这种情况:明明是跑在本地内存里的通信链路,数据却像被“卡住”了一样,延迟动辄几十毫秒?尤其是在做机器人控制、工业仿真…

作者头像 李华
网站建设 2026/2/10 4:28:14

自动化测试开发规范

以下是为您整理的一份详细的《自动化测试开发规范》文档,您可以直接将其复制到Word中,并根据您团队的实际情况进行调整和填充。自动化测试开发规范 V1.0文档版本​修订日期​修订内容​修订人​审核人​V1.02023-10-27初始创建[您的姓名/部门][审核人姓名…

作者头像 李华
网站建设 2026/2/10 15:10:08

QRadioButton方法大全

⭐ QRadioButton 方法大全1. *QRadioButton::QRadioButton(const QString &text, QWidget parent nullptr)构造函数,用指定文本创建一个单选按钮。示例QRadioButton* radio new QRadioButton("选项 A", this);2. *QRadioButton::QRadioButton(QWidg…

作者头像 李华
网站建设 2026/2/10 16:40:24

将GLM-4.6V-Flash-WEB接入企业微信/钉钉机器人的技术路径

将 GLM-4.6V-Flash-WEB 接入企业微信/钉钉机器人的技术路径 在企业协作平台中,一张截图往往胜过千言万语。无论是财务人员上传的发票、运维工程师拍下的报错界面,还是现场员工发来的施工照片,图像已成为日常沟通的核心载体。然而,…

作者头像 李华
网站建设 2026/2/10 14:06:45

MidJourney如何用AI重新定义数字艺术创作

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 使用MidJourney的AI模型,根据用户提供的文本描述自动生成高质量的数字艺术作品。输入可以是简单的关键词或详细的场景描述,输出为多种风格的艺术图像&#…

作者头像 李华
网站建设 2026/2/8 2:26:55

用Thymeleaf快速搭建管理后台原型

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 快速开发一个博客管理后台原型,包含:1) 仪表盘 2) 文章列表 3) 文章编辑 4) 评论管理。使用Thymeleaf模板和模拟数据实现,不要求完整功能&#…

作者头像 李华