【点云语义分割】弱监督点云语义分割自适应标签分布

Adaptive Annotation Distribution for Weakly Supervised Point Cloud Semantic Segmentation

摘要:

        弱监督点云语义分割因其能够减轻对点云细粒度注释的严重依赖而备受关注。然而,在实际应用中,稀疏注释通常在点云中呈现出明显的非均匀分布,这给弱监督带来了挑战。为了解决这些问题,我们提出了一种用于弱监督点云语义分割的自适应注释分布方法。具体来说,我们在梯度采样近似分析中引入了概率密度函数,并研究了稀疏注释分布的影响?。在分析的基础上,我们提出了一种标签感知的点云下采样策略,以增加训练阶段的注释比例。此外,我们还设计了乘法动态熵作为梯度校准函数,以减轻非均匀分布的稀疏注释造成的梯度偏差?,并明确减少认识上的不确定性。在没有任何先验限制和附加信息的情况下,我们提出的方法在 S3DIS、ScanNetV2 和 SemanticKITTI 上以不同注释分布的多种标签率实现了全面的性能改进。

介绍:

        现有的弱监督点云语义分割方法依赖于在完全标注的语义分割数据集上通过均匀分布采样来模拟稀疏注释。模拟数据集通过均匀随机抽样或 "一物一键"(One-ThingOne-Click)[19] 保持稀疏注释和完整注释之间的分布一致性。不过,该模拟数据集对注释分布有严格的限制。在实践中,为了提高注释效率,注释通常会在较少的视图下进行,从而导致带有冗余监督信息的稀疏注释。

        注释者倾向于注释更容易注释的类别,从而加剧了长尾分布问题。如图 1 所示,非均匀分布的稀疏注释与完整注释之间存在明显的分布差距,导致依赖均匀采样先验的分割模型性能下降。因此,我们将研究范围扩展到非均匀分布和均匀分布的稀疏注释。

        为了研究非均匀分布标注对弱监督点云语义分割的影响,我们在梯度采样近似分析中引入了概率密度函数[34]。根据中心极限定理,弱监督与完全监督之间的梯度差异服从正态分布,其中分布类型和标注比例分别影响其均值和方差?。基于这一分析,我们提出了一种用于弱监督点云语义分割的自适应注释分布网络(AADNet),它由标签感知下采样策略和乘法动态熵组成。 

        由于计算能力和数据量的限制,降采样对于点云场景至关重要。然而,直接借用全监督进行随机下采样会遗漏训练所需的宝贵注释。相反,如果只对有标注的点进行采样,则会严重牺牲点云重采样的结构信息。因此,我们提出了标签感知点云下采样策略(LaDS),以增加训练阶段中标注点的比例,并在很大程度上保留丰富的结构信息。为此,LaDS 将点云场景划分为体素级和点级。在点级,每个体素内的标注点被优先采样,而在体素级,体素被随机采样?

        为了适应各种注释分布类型,我们设计了具有异步训练功能的乘法动态熵(MDE-AT)。我们证明,校正梯度偏差的理想校正函数应与概率密度成反比。然而,注释分布的概率密度是不可知的。因此,我们利用乘法动态熵作为替代校准函数?。此外,为了明确提高认识确定性,我们采用了异步训练法,通过校准函数迭代施加熵损失和部分交叉熵损失。

相关工作:

        类别激活图(CAMs)因其语义定位能力而被广泛应用于图像级弱监督语义分割任务中。同样,在弱监督点云语义分割中,CAMs 也用于为场景级和子场景级注释提供类别定位信息。为了进一步提高 CAM 的语义定位能力,MPRM[30] 提出了多路径区域挖掘模块来挖掘各种区域信息。Song 等人[28] 利用 CAMs 和几何投影来获取点级伪标签。MILTrans [35]在 CAMs 上采用自适应全局加权池机制,以减轻无关类和噪声点的负面影响。

        扰动一致性。可以利用原始点云和扰动点云的相应特征之间的一致性,在稀疏注释的情况下提供额外的监督。为此,Xu 等人[34] 对点云场景进行了旋转和镜像翻转等扰动,而 PSD [38] 则利用了点云的旋转和点的抖动与属性关注层。MILTrans [35] 可在降采样前后保持一对点云的特征一致性。DAT [32] 和 HybridCR [15] 分别利用自适应梯度和嵌入网络学习动态构建点云副本。最近,RPSC [13] 和 PointMatch [31] 利用伪标签来传递一致的信息。

        标签传播。标签传播算法是自训练中生成高质量伪标签的常用技术。OTOC [19] 和 OTOC++ [20] 提出了关系网来精确测量三维图节点之间的相似性并传播标签信息。Zhang 等人[37]开发了一种以类别原型[27]为指导的稀疏标签传播算法,根据类别原型和特征嵌入之间的相似性构建类别分配矩阵。SSPC-Net [5]基于超点级图拓扑进行标签传播,并引入了一种耦合注意力机制来学习标签超点和伪标签超点之间的上下文特征

        对比学习。在点云中选择锚点,然后有策略地对相应的正点对和负点对施加限制。HybridCR [15] 在转换后的点云对、局部几何对和类别原型对上构建对比学习,而 MILTrans [35] 则利用点云上的交叉注意力转换器实现多实例学习,并在场景中的类别对之间进行对比损失。此外,PointContrast[33]和 Hou 等人[9]等预训练方法利用的是无标签对比学习。这些预训练模型对下游任务具有很高的通用性,只需少量注释也能完成语义分割任务。

模型方法:

Gradient Sampling Approximation Analysis 梯度采样近似分析 

        对于具有相同结构和初始化参数的两个网络,假定梯度越接近,它们对相同输入的预测结果越有可能趋于一致。交叉熵∇L 和部分交叉熵∇Lp 的梯度公式为:

        其中,g(ˆ yi) =∇l(yi, ˆ yi) 表示 xi 处的损失梯度弱监督学习可以看作是对梯度进行 M 次采样的完全监督学习,M 次采样的平均梯度值等于 ∇Lp。假设 g(ˆ yi) 满足独立同分布,则均匀分布的采样 s(g(ˆ yi)) 遵循分布 Du(Eu, Vu)。期望 Eu = Exi ∼D [pi g ( ˆ yi)] = P i 1 N g(ˆ yi) =∇L 其中 D 是点的分布,pi = 1 N 表示均匀分布采样的概率密度函数。根据中心极限定理,在均匀分布抽样条件下可得到以下收敛分布(详见补充材料): 

        完整注释与均匀稀疏注释之间的梯度差服从期望为 0、方差为 Vu / M 的正态分布。公式 3 表明,当标签率变大时,均匀稀疏注释的平均梯度更有可能与完整注释的平均梯度相似。 

        基于前面的假设,在适当的标签率下,由均匀稀疏注释监督的模型的预测结果与完全监督的语义分割模型的预测结果是一致的。然而,这一推论对于非均匀分布的稀疏注释并不通用。我们假设非均匀采样梯度 sn(g(ˆ yi))服从分布 Dn(En,Vn)。期望 En = Exi∼D [p′ ig(ˆ yi)] = P i p′ ig(ˆ yi) = ∇L+∆,其中 p′ i 表示非均匀采样分布的概率密度函数,偏差 ∆ = P i(p′ i - pi)g(ˆ yi)。同样,根据中心极限定理,我们可以得到以下非均匀分布采样下的收敛分布:

         在非均匀分布的稀疏注释情况下,即使标签率很大,平均梯度仍相差 ∆。因此,弱监督的性能不仅与标签率有关,还与注释分布类型有关。在没有其他先验的情况下,均匀分布稀疏标注是最优的稀疏标注。(这段证明部分涉及统计学,可直接记住结论即可)

Label-aware Downsampling Strategy 标签感知下采样策略 

        下采样策略在后续网络训练中起着至关重要的作用,因为它决定了感受野的上限和场景结构信息的多样性[10]。然而,完全监督所使用的随机下采样策略不适用于稀疏标注场景因为随机下采样会对标注点和未标注点一视同仁这将大大削弱采样点云的语义监督信息。一种直观的替代方法是优先选择所有标注点。虽然这种方法可以在下采样后极大地保留标记点,但在对点云进行重复采样时,会损害结构信息的多样性。因此,我们提出了一种标签感知下采样策略,以同时保留标签点和丰富的结构拓扑。 

        

        标签感知点云下采样策略如图 2 所示。首先,我们对整个点云场景进行体素划分,然后将下采样分解为点级下采样和体素级下采样。在点级,对于包含标签点云的体素,在体素内的标注点中随机选择一个标注点,对于不包含任何标注点的体素,则在体素内随机选择一个点。虽然在点级标签优先采样中存在结构多样性损失的风险,但这几乎可以忽略不计,因为采样是在体素的较小范围内进行的,而且后续数据增强中的点抖动能够弥补这种拓扑损失。而在体素级,我们保留了传统的随机下采样策略。与体素级标签优先下采样相比,体素级随机下采样只牺牲了一小部分标签率,但在不同的训练期重复采样时,却能获得多种场景结构信息。图 3 展示了体素级标签优先向下采样和体素级随机向下采样的采样策略对比。

        总之,LaDS 是一种与注释分布无关的采样策略,可对任意稀疏注释分布无差别地保留注释。LaDS 简单而有效,在标签率为 0.01% 的数据集上,它能将训练标签率提高 2 到甚至 10 倍。

Multiplicative Dynamic Entropy 乘法动态熵 ?

        根据第 3.2 节中的方法分析,我们建议在 Lp 上施加梯度校正函数 φ,以抵消非均匀分布的稀疏注释对梯度期望值的影响。理想情况下,使用乘法校正函数 φi = pi / p′ i,校正后的梯度期望值满足以下条件 :

        梯度偏差 ∆ 由 φ 修正。与理想的加法校准函数 ψi = (p′ i -pi)g(ˆ yi) 相比,乘法校准函数 φ 与梯度无关,更容易估算。

        然而,理想 φ 中非均匀分布采样的概率密度函数 p′ i 是不可知的。由于注释者和点云数据集的相关性,我们根据以下两个标准谨慎选择乘法校准函数:(1) 由于固定权重 φ 无法针对不同的点云场景进行自适应校正,因此在训练阶段,φ 应该是一个与稀疏标注场景相关的动态函数。(2) 点的分类难度反映了标注难度。因此,以标注难度与标注概率 p′ i 之间的负相关关系为准则,我们利用熵函数作为动态校准函数,即 φi = Ent(ˆ yi) = P cˆ yiclog(ˆ yic),其中 c 表示类别指数。值得注意的是,虽然 φ 是一个关于预测值 ˆ Y 的函数,但它不会在训练过程中产生梯度,而只是用于动态加权部分交叉熵损失。 

        为了使熵更准确地反映点分类的难度,降低弱监督下网络的表观不确定性,我们进一步将熵作为损失项。但是,如果让熵函数同时反向传播梯度来降低表观不确定性,就会改变网络的优化目标,使部分交叉熵损失无法收敛。因此,我们利用异步训练来明确降低认识不确定性。第 k 个训练期的总损失函数 Lk AAD 定义为:

         其中,1(-) 表示指示函数,λ 是预定义的平衡权重,τ 表示异步训练的步长间隔。为了提高学习效率,AADNet 在对 Ent(ˆ yi) 进行学习时仍会造成部分交叉熵损失。

实验:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/560742.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Table表格(关于个人介绍与图片)

展开行&#xff1a; <el-table :data"gainData" :border"gainParentBorder" style"width: 100%"><el-table-column type"expand"><template #default"props"><div m"4"><h3>工作经…

封装个js分页插件

// 分页插件类 class PaginationPlugin {constructor(fetchDataURL, options {}) {this.fetchDataURL fetchDataURL;this.options {containerId: options.containerId || paginationContainer,dataSizeAttr: options.dataSizeAttr || toatalsize, // 修改为实际API返回的数据…

Flutter 的 showDialog 和 showCupertinoDialog 有什么区别?

我将我的 App 里用的 Flutter 升级到了 3.19&#xff0c;没想到&#xff0c;以前我用 showDialog 和 AlertDialog 组合创建的二次确认框&#xff0c;变得无敌难看了&#xff0c;大幅度增加了整个框的圆角和里面默认按钮的圆角。不得已&#xff0c;我必须修改一下&#xff0c;以…

51.基于SpringBoot + Vue实现的前后端分离-校园志愿者管理系统(项目 + 论文)

项目介绍 本站是一个B/S模式系统&#xff0c;采用SpringBoot Vue框架&#xff0c;MYSQL数据库设计开发&#xff0c;充分保证系统的稳定性。系统具有界面清晰、操作简单&#xff0c;功能齐全的特点&#xff0c;使得基于SpringBoot Vue技术的校园志愿者管理系统设计与实现管理工…

偏微分方程算法之二维初边值问题(紧交替方向隐格式)

目录 一、研究对象 二、理论推导 2.1 二维紧差分格式 2.2 紧交替方向格式 2.2.1 紧Peaceman-Rachford格式 2.2.2 紧D’Yakonov格式 2.2.3 紧Douglas格式 三、算例实现 四、结论 一、研究对象 继续以二维抛物型方程初边值问题为研究对象: 为了确保连续性,公式…

Vue.extend()和我的两米大砍刀

Vue.extends是什么&#xff1f; 一个全局API,用于注册并挂载组件。 传统的引用组件的方式是使用import直接引入&#xff0c;但是使用Vue.extends()也可以实现。 使用规则 <div id"mount-point"></div>// 创建构造器 var Profile Vue.extend({templat…

PyCharm,终端conda环境无法切换的问题(二个解决方案)

问题 PyCharm终端&#xff0c;环境切换无效&#xff0c;默认始终为base 解决一 Settings->Tools->Terminal->ShellPath&#xff0c;将powershell修改为cmd.exe 解决二 conda config --show在输出中找到 auto_activate_base 的行&#xff0c;发现被设置为 true&#x…

R语言中的execl数据转plink

文章目录 带出外部连接的方式添加列的方式从列表中选出对应的数据信息查看变量信息没有成功 带出外部连接的方式 点击这个黄色的按钮就可以弹出外部链接的方式 添加列的方式 创建一个数据框的方式 我们创建一个三行三列的数据方式 df <- data.frame(name c("Alice&…

嵌入式linux中利用QT控制蜂鸣器方法

大家好,今天给大家分享一下,如何控制开发板上的蜂鸣器。 第一:开发板原理图 从原理图中可以得出,当引脚输出低电平的时候,对应的蜂鸣器发出响声。 第二:QT代码详细实现 设置一个按钮,点击即可控制BEEP状态发生反转。 #ifndef MAINWINDOW_H #define MAINWINDOW_H#in…

【网络编程】TCP流套接字编程(TCP实现回显服务器)

一.TCP流套字节相关API. Socket(既能给客户端使用,也能给服务器使用) 构造方法 基本方法: ServerSocket(只能给服务器使用) 构造方法: 基本方法: 二.TCP实现回显服务器. 客户端代码示例: package Demo2;import java.io.IOException; import java.io.InputStream; import j…

【飞桨AI实战】人体姿态估计:零基础入门,从模型训练到应用开发

前言 本次分享将带领大家从 0 到 1 完成一个人体姿态估计任务&#xff0c;覆盖数据准备、模型训练、推理部署和应用开发的全流程&#xff0c;项目将采用以PaddlePaddle为核心的飞桨深度学习框架进行开发&#xff0c;并总结开发过程中踩过的一些坑&#xff0c;希望能为有类似项…

(C语言)sscanf 与 sprintf详解

目录 1.sprintf函数详解 2. sscanf函数详解 1.sprintf函数详解 头文件&#xff1a;stdio.h 作用&#xff1a;将格式化的数据写入字符串里&#xff0c;也就是将格式化的数据转变为字符串。 演示&#xff1a; #include <stdio.h> struct S {char name[10];int height;…

【Gradle如何安装配置及使用的教程】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

【笔记】应对Chrome更新导致Chromedriver失效的解决方案:Chrome For Test

随着网络应用和网站的不断发展&#xff0c;自动化测试变得越来越重要&#xff0c;而Selenium成为了许多开发者和测试人员的首选工具之一。然而&#xff0c;对于使用Selenium来进行网站测试的人来说&#xff0c;Chrome浏览器的频繁更新可能会成为一个头疼的问题。每当Chrome更新…

有的爆炸,有的爆冷!盘点那些爆冷的985院校

今年计算机普遍很炸&#xff0c;专硕学硕分都很高。大热门&#xff0b;非常多跨考。 不管是自命题还是408&#xff0c;大家考完都说难&#xff0c;但是一出分&#xff0c;个个350&#xff0c;非常卷。 报中下211&#xff0c;专硕分数要要330才稳一点&#xff0c;中上211则直逼3…

MySQL数据库外键约束打开与关闭 ️

MySQL数据库外键约束打开与关闭 &#x1f6e0;️ MySQL数据库外键约束打开与关闭 &#x1f6e0;️摘要 &#x1f4dd;引言 &#x1f680;正文内容&#xff08;详细介绍&#xff09; &#x1f4a1;关闭外键约束检查外键约束检查关闭的作用风险与最佳实践建议 &#x1f914; QA环…

Java数据结构-堆和优先级队列

目录 1. 相关概念2. PriorityQueue的实现2.0 搭建整体框架2.1 堆的创建和调整2.2 插入元素2.3 出堆顶元素 3. 全部代码&#xff08;包含大根堆和小根堆&#xff09;4. PriorityQueue的使用5. Top-K问题 之前我们学习的二叉树的存储方式是链式存储&#xff0c;&#xff08;不清楚…

idm线程越多越好吗 idm线程数多少合适

IDM&#xff08;Internet Download Manager&#xff09;是一款流行的下载管理软件&#xff0c;它支持多线程下载&#xff0c;这意味着它可以同时建立多个连接来下载文件的不同部分&#xff0c;从而提高下载速度。我们在使用IDM的时候总是有很多疑问&#xff0c;今天我们学习IDM…

LeetCode刷题实战5:最长回文子串

题目内容 给你一个字符串 s&#xff0c;找到 s 中最长的回文子串。 如果字符串的反序与原始字符串相同&#xff0c;则该字符串称为回文字符串。 示例 1&#xff1a; 输入&#xff1a;s "babad" 输出&#xff1a;"bab" 解释&#xff1a;"aba"…

【刷题】 二分查找进阶

送给大家一句话&#xff1a; 你向神求助是因为相信神&#xff0c;神没有回应你是因为神相信你 ε≡٩(๑>₃<)۶ &#xfeff;ε≡٩(๑>₃<)۶ &#xfeff;ε≡٩(๑>₃<)۶ 一心向学 二分查找进阶 1 前言Leetcode 852. 山脉数组的峰顶索引题目描述算法思…