《论文阅读21》Equivariant Multi-View Networks

   一、论文

  • 研究领域:计算机视觉 | 多视角数据处理中实现等变性
  • 论文:Equivariant Multi-View Networks
  • ICCV 2019

  • 论文链接
  • 视频链接

二、论文简述

在计算机视觉中,模型在不同视角下对数据(例如,点云、图像等)对数据的变化具有一定的响应性。为了使模型能够更好地适应这种变化,不是仅仅对某个特定视角的数据进行训练,研究人员提出了等变多视角网络的概念。能够同时处理多视角数据,并通过共享权重或其他机制来保持数据的等变性。

三、论文详述

等变多视图网络

  • Abstract

利用在自然图像上预先训练好的深度神经网络独立处理输入图像的多个视图,通过对所有视图进行一轮pooling来实现视图排列不变性。我们认为,这种操作会丢弃重要信息,并导致不合格的全局描述符。在本文中,我们提出了一种多视图聚合的群卷积方法,即在旋转群的离散子群上进行卷积,从而能够以等变(而非不变)的方式对所有视图进行联合推理,直至最后一层。我们进一步发展了这一想法,以便在旋转组中更小的离散同质空间上进行操作,在这里使用极视图表示法,只需输入视图数量的一小部分就能保持等变关系。我们在多个大型三维形状检索任务中确立了新的技术水平,并展示了在全景场景分类中的其他应用。

  • 先前工作:利用在自然图像上预先训练好的深度神经网络独立处理输入图像的多个视图,通过对所有视图进行一轮pooling来实现视图排列不变性

  • 我们工作:我们提出了一种多视图聚合的群卷积方法,即在旋转群的离散子群上进行卷积,从而能够以等变(而非不变)的方式对所有视图进行联合推理,直至最后一层。

 视图排列不变性(Viewpoint Permutation Invariance)是指在处理三维数据(如点云、3D模型)时,模型对不同视角或观察角度的变化具有不变性。在点云处理中,由于点云的点的顺序和排列可能会在不同视角下发生变化,保持对这些排列变化的不变性对于实现稳健的特征提取和分析至关重要。

视图排列不变性对于点云处理中的许多任务非常重要,如点云分类、分割、目标检测等。实现视图排列不变性可以避免模型仅仅学习特定视角下的特征,使得模型能够更好地泛化到不同视角的点云数据。

以下是一些方法和思路,可以帮助实现视图排列不变性

1. 捕捉点云在不同视角下的特征,并保持在球面上的等变性。

2. 设计旋转不变的特征提取方法,确保不同视角下的点云特征保持一致。

3. 在训练时,通过应用随机的旋转变换来增加数据的多样性,帮助模型学习不同视角下的特征。

4. 将从不同视角提取的特征进行融合,以生成更综合的特征表示。

5. **点云对齐**:在训练前对点云进行对齐,使得不同视角下的点对应关系更一致。

多视图聚合:整合多个视角(或多个输入)的信息

Joint Reasoning Over All Views: 这个方法允许在所有视角上进行联合推理,这意味着模型能够考虑来自不同视角的信息,并在处理数据时保持这种多视角的信息。

旋转群(Rotation Group)的一个离散子群是指旋转群中的一个子集,其中包含一组离散的旋转操作。常见的例子是在三维空间中,使用Z轴的离散旋转操作来构成一个离散子群。这意味着我们只考虑绕Z轴旋转一定角度的操作,而不考虑其他轴的旋转。这个子群是离散的,因为我们只考虑一些特定的旋转角度,而不是考虑所有可能的连续旋转。

旋转群是一个连续的、无限的群,包含了所有可能的连续旋转操作。然而,当我们考虑到计算或离散的问题时,有时会使用旋转群的一个子集来简化问题或进行计算。

SO(3) 旋转群由所有保持三维空间中原点不动的旋转操作组成。这些操作可以用三维旋转矩阵表示,其中包括绕任意轴的旋转。旋转群的元素可以表示为一个 3x3 的正交矩阵,具有特殊行列式等于1的性质。

 

  • Introduction

随着大规模物体三维数据集[39, 3]和整个场景数据集[2, 8]的激增,可以对深度学习模型进行训练,生成可用于分类和检索任务的全局描述符

对深度学习模型进行训练,生成可用于分类和检索任务的全局描述符

出现的第一个挑战是如何表示输入。尽管在体积[39, 24]、点云[27, 32]和基于网格[23, 26]的表示方面进行了大量尝试,但使用三维输入的多个视图可以切换到二维域,在二维域中可以直接应用最近所有基于图像的深度学习突破(例如[15]),从而促进最先进的性能[33, 20]。 

基于多视图(MV)的方法需要某种形式的视图池化,它可以是

(1)在一些中间卷积层上的逐像素池化[33],

(2)在最终的1D视图描述符上池化[34],

(3)组合最终的logits [20],这可以被视为独立投票。这些操作对于查看排列通常是不变的。

 

我们的主要观点是,传统的视图池化是在对视图集进行任何联合处理之前进行的,不可避免地会丢弃有用的特征,从而导致描述符不合格。为了解决这个问题,我们首先认识到,每个视图都可以与旋转群 SO(3) 的一个元素相关联,因此将多个视图组合起来的自然方法就是将其作为旋转群上的一个函数

  • 传统的视图池化是在对视图集进行任何联合处理之前进行的,不可避免地会丢弃有用的特征,从而导致描述符不合格
  • 每个视图都可以与旋转群 SO(3) 的一个元素相关联,因此将多个视图组合起来的自然方法就是将其作为旋转群上的一个函数

我们采用传统的 CNN 来获取组成该函数的视图描述符。我们设计了一个组卷积网络(G-CNN,灵感来自文献[5])来学习对组的变换具有等变性的表征。我们通过对最后一个 G-CNN 层进行池化,获得了对分类和检索有用的不变描述符。我们的 G-CNN 在组上具有局部支持的描述符,并且随着层数的增加和感受域的扩大,可以学习到更复杂的分层描述符。

我们利用了多视图的有限性,并考虑了二十面体等有限旋转群,这与 [6, 10] 在连续群上的操作不同。为了减少处理每个群元素一个视图的计算成本,我们证明,通过考虑与平面内扩张旋转群(对数极坐标)有关的典型坐标视图,我们可以大大减少视图的数量,并获得同质空间(H 空间)上的初始表示,该表示可以通过相关性提升,同时保持等差关系。 

我们专注于3D形状,但我们的模型适用于任何任务,多个视图可以表示输入,如全景场景的实验所示。

等变特征(Equivariant Features)指的是在输入数据的某种变换下,特征在一定的方式下也进行相应的变换。在计算机视觉和深度学习中,等变性是一种重要的性质,特别是在处理具有变换对称性的数据时,如图像、点云和三维模型等。

等变特征对于保持输入数据的变换性质非常有用,因为它们能够更好地捕捉数据的关键特征,从而提高模型的泛化能力和性能。例如,对于三维点云数据,等变特征可以在数据进行旋转、平移等操作时,保持相应的特征变化,从而使模型更好地适应不同的视角和变换。

在点云处理中,等变特征的实现涉及到了一些专门的方法和技术,例如:

1. **旋转等变性**:通过设计神经网络架构,使得网络在输入数据旋转时,特征也相应地进行旋转,从而实现旋转等变性。

2. **球面卷积神经网络(Spherical CNNs)**:用于处理球面数据(如球面点云)的网络,能够在球面上保持旋转等变性,从而在点云的不同视角下提取有意义的特征。

3. **基于变换矩阵的操作**:使用变换矩阵来定义点云的变换,然后在神经网络中将这些变换操作纳入,以捕捉等变特征。

4. **群卷积神经网络(Group CNNs)**:设计网络结构,使其在特定的群(如旋转群)变换下具有等变性,从而能够处理变换对称性数据。

实现等变特征通常需要深入的数学和几何知识,以确保模型在数据变换时能够正确地捕捉和表示特征。这在处理点云等不规则数据时尤其重要,因为这些数据没有像图像那样的固定结构,需要特殊的处理方法来实现等变性。

组卷积(Group Convolution)是一种卷积神经网络(CNN)中的操作,用于处理具有一定对称性或结构的数据。组卷积在一定程度上保持输入数据的特定对称性,从而可以更有效地捕获数据的特征。

在组卷积中,卷积核被分成多个组(groups),每个组内的卷积核只与对应组内的输入通道进行卷积操作。这种分组操作有助于实现特定的等变性,使模型能够更好地处理具有变换对称性的数据。

例如,在处理RGB图像时,可以将三个颜色通道(红、绿、蓝)分成不同的组,然后在每个组内分别进行卷积操作。这种操作保持了颜色通道之间的对称性,从而有助于提取有关颜色特征的信息。

在点云处理中,组卷积也可以应用。如果点云数据有一定的结构或对称性,可以将点云分成不同的组,然后在每个组内应用卷积操作,以保持数据的等变性。

组卷积的优点包括:

1. **减少参数和计算量**:由于卷积核被分组,组卷积可以降低参数的数量和计算量,从而在一定程度上加快训练和推理的速度。

2. **保持特定的对称性**:组卷积可以帮助模型捕捉输入数据特定的对称性或结构,从而提高模型的性能。

3. **降低过拟合**:分组操作可以限制每个组内的参数共享,有助于减少过拟合的风险。

需要注意的是,组卷积适用于一些具有特定对称性或结构的数据,但不是适用于所有情况。在设计网络架构时,需要根据数据的特点和任务的要求来决定是否使用组卷积。

 

图1展示了我们的模型。我们的贡献是: 

  • 我们引入了一种新颖的方法来聚合多个视图,无论是三维形状的 "由外而内 "视图,还是全景视图的 "由内而外 "视图。我们的模型利用了底层组结构,从而产生了等变特征,这些特征是旋转组的函数。
  • 我们介绍了一种既能减少视图数量又能保持等差性的方法,即通过平面内旋转转换为典型坐标,然后进行同质空间卷积。
  • 我们探索了有限旋转群和齐次空间,并在迄今为止最大的群--二十面体群上提出了一个离散的G-CNN模型。我们进一步探讨这个组的过滤器本地化的概念。
  • 我们在多个形状检索基准上实现了最先进的性能,无论是在规范的姿势和旋转扰动,并显示应用于全景场景分类

 

图 1:我们的等变多视图网络将多个视图聚合为旋转组上的函数,并通过组卷积进行处理。这保证了三维旋转的等方差性,并允许对所有视图进行联合推理,从而获得卓越的形状描述符。二十面体组上的矢量值函数显示在五面十二面体上,相应的同质空间(H 空间)上的函数显示在十二面体和二十面体上。每个视图首先由一个 CNN 进行处理,由此产生的描述符与一个组(或 H 空间)元素相关联。当视图被识别为一个 H 空间时,第一个操作就是将特征提升到组的相关性。一旦我们有了组的初始表示,就可以应用组 CNN。

  • Related work

3D形状分析

3D形状分析的性能在很大程度上取决于输入表示。主要的表示是体积、点云和多视图。

体积方法的早期示例是[3],其引入了ModelNet数据集并使用基于体素表示的深度置信网络训练了3D形状分类器;和[24],其提出了具有3D卷积层和全连接层的标准架构。

Su等人[33]意识到,通过渲染3D输入的多个视图,可以将基于图像的CNN的能力转移到3D任务。他们表明,即使只使用输入的单个视图,传统的CNN也可以优于体积方法,而多视图(MV)模型进一步提高了分类准确性。

Qi等人[28]研究了体积和多视图方法,并提出了对两者的改进; Kanezaki等人[20]引入了一种MV方法,该方法通过联合预测类别和姿态来实现最先进的分类性能,但没有显式的姿态监督。

GVCNN [12]试图学习如何联合收割机不同的视图描述符以获得视图组形状表示;它们将特征的任意组合称为“组”。这与我们使用的术语“群”是代数定义的不同

基于点云的方法[27]实现了体积和多视图之间的中间性能,但在计算上更高效。虽然网格可以说是最自然的表示,并广泛用于计算机图形学,但直接在网格上操作的学习模型只取得了有限的成功[23,26]。

为了更好地比较3D形状描述符,我们将专注于检索性能。最近的方法在检索方面显示了显著的改进:You等人。[41]结合了点云和MV表示; Yavartanoo等人[40]介绍了多视点赤平投影;和Han et al.[14]实现了一种递归MV方法。

我们还考虑了旋转ModelNet和包含旋转形状的SHREC'17 [29]检索挑战上更具挑战性的任务。任意旋转的存在激发了等变表示的使用。

等变表示

为了处理任意方向的三维形状,已经引入了许多变通方法。典型的例子包括训练时间旋转增强和/或测试时间投票[28],以及学习初始旋转到标准姿势[27]。文献[33]中的视图池对输入视图集的排列是不变的。

处理旋转的原则性方法是使用设计为等变的表示。将等方差嵌入CNN的方法主要有三种。

第一种方式是约束滤波器结构,这类似于基于Lie生成器的方法[30,17]。Worral等人[38]利用圆谐波将平移和2D旋转等方差都引入CNN。类似地,托马斯et al.[35]引入张量场以保持3D点云的平移和旋转等变性。

第二种方式是通过坐标的改变;[11,18]对输入进行对数极坐标变换,并将关于单个点的旋转和缩放等方差转换为平移等方差。

第三种方法是利用等变过滤轨道。Cohen 和 Welling 利用正方形旋转组提出了组卷积(G-CNNs)[5],后来又扩展到六边形[19]。Worrall 和 Brostow [37] 在三维体素化数据上使用克莱因四组提出了 CubeNet。Winkels 等人[36]在八面体对称群上对容积 CT 图像实施了三维群卷积。Cohen 等人[7]最近考虑了二十面体上的函数,但他们的卷积是在循环群上,而不是像我们一样在二十面体上。Esteves 等人[10]和 Cohen 等人[6]则侧重于无限群 SO(3),并使用球面谐波变换来精确实现球面卷积或相关。这些方法的主要问题是,输入的球面表示无法捕捉物体形状的复杂性;而且效率较低,面临带宽挑战。

  • Preliminaries

我们寻求利用数据中的对称性。对称性是一种保留对象的某些结构的操作。如果对象是一个没有附加结构的离散集合,则每个操作都可以被视为其元素的排列。 

术语群用于集合的经典代数定义,其运算满足闭包、结合性、恒等式和反演性质。像置换这样的变换群是“抽象群和对称概念之间缺失的环节”[25]。

我们将视图称为从定向相机拍摄的图像。这不同于参考光轴方向的视点,对于指向固定对象的移动相机而言,从外向内,或者对于指向不同方向的固定相机而言,从内向外。可以从同一视点拍摄多个视图;它们通过平面内旋转相关。

从外向内:对于指向不同方向的固定相机

从内向外:从同一视点拍摄多个视图 

Equivariance

通过设计等变的表示是利用对称性的有效方法。 考虑一个集合X和一个变换群G。考虑一个集合X和一个变换群G。

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

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

相关文章

【C++笔记】C++之类与对象(下)

【C笔记】C之类与对象(下) 1、再看构造函数1.1、构造函数的初始化列表1.2、C支持单参数的构造函数的隐式类型转换1.3、匿名对象 2、Static成员2.1、为什么要有静态成员变量?2.2、一个类的静态成员变量属于这个类的所有对象2.3、静态成员函数 3、友元3.1、…

MPI之虚拟进程拓扑

什么是虚拟进程拓扑 在很多并行应用进程中,进程的线性排列不能充分的反映进程间在逻辑上的通信模型,通常由问题几何和所用的算法决定,进程经常被排列成二维或者三维网络形式的拓扑模型而通常用一个图来描述逻辑进程排列,此种逻辑…

SpringBoot入门篇3 - 整合junit、整合mybatis、基于SpringBoot实现ssm整合

目录 1.整合JUnit Spring整合JUnit SpringBoot整合JUnit 测试类注解:SpringBootTest 作用:设置JUnit加载的SpringBoot启动类 2.整合mybatis ①使用spring initializr初始化项目的时候,添加依赖。 ②设置数据源application.yml spring:d…

第 112 场 LeetCode 双周赛题解

A 判断通过操作能否让字符串相等 I s 1 s1 s1和 s 2 s2 s2第 1 1 1、 2 2 2位若同位置不等,则 s 1 s1 s1交换对应的 i i i和 j j j位置,之后判断 s 1 s1 s1和 s 2 s2 s2是否相当 class Solution { public:bool canBeEqual(string s1, string s2) {for (i…

低代码与低代码平台的概念解析

随着数字化转型和软件需求的不断增长,传统的手写代码开发方式已经无法满足迅速推出应用程序的需求。为了加快软件开发的速度并降低技术门槛,低代码开发模式应运而生。本文将介绍低代码的概念,探讨什么是低代码什么是低代码平台? 一…

8.react18并发模式与startTransition(搜索高亮思路)

React 18 之前,渲染是一个单一的,不间断的,同步的事务,一旦渲染开始,就不能被中断 React 18引入并发模式,它允许你将标记更新作为一个transitions,这会告诉React他们可以被中断执行.这样可以将紧急任务先更新,不紧急任务后更新. 将任务给紧急任务先执行, 优先级低的任务后执行…

JavaScript原型链污染

JavaScript原型链污染 一、什么是原型链污染(JS)二、前置知识2.1 JS对象2.11 通过类创建2.12 字面量模式创建2.13构造函数模式创建 2.2 默认属性 三、污染利用 一、什么是原型链污染(JS) 原型链污染(Prototype Pollution)是一种安全漏洞,在 …

零基础搭建个人影音媒体平台,实现远程访问Jellyfin播放器的简易方法

文章目录 1. 前言2. Jellyfin服务网站搭建2.1. Jellyfin下载和安装2.2. Jellyfin网页测试 3.本地网页发布3.1 cpolar的安装和注册3.2 Cpolar云端设置3.3 Cpolar本地设置 4.公网访问测试5. 结语 1. 前言 随着移动智能设备的普及,各种各样的使用需求也被开发出来&…

VBA中如何将if写到一行

在VBA中,可以使用以下两种方式来编写一行if语句: 使用三元运算符: Dim result As String result "Yes" If True Else "No"在这个例子中,如果条件为真,则result变量的值为"Yes"&#…

抖音小程序开发教学系列(1)- 抖音小程序简介

章节一:抖音小程序简介 1.1 抖音小程序的背景和概述 抖音小程序的发展背景和市场趋势: 抖音作为一款热门的短视频社交平台,用户群体庞大,社交共享的特性也为小程序的发展提供了广阔的空间。抖音小程序作为抖音在社交和用户粘性…

质谱技术对蛋白质进行鉴定

参考B站教学视频: 质谱如何鉴定蛋白质_哔哩哔哩_bilibili 针对该视频,别人的 笔记 质谱是一台体重秤,称的不是人,而是分子、原子的体重 不同分子有不同分子量是质谱仪工作的底层逻辑 图片来自:【蛋白组】蛋白质组定量技术的原理和…

HTML+JavaScript+CSS DIY 分隔条splitter

一、需求分析 现在电脑的屏幕越来越大,为了利用好宽屏,我们在设计系统UI时喜欢在左侧放个菜单或选项面板,在右边显示与菜单或选项对应的内容,两者之间用分隔条splitter来间隔,并可以通过拖动分隔条splitter来动态调研…

GaussDB数据库SQL系列-行列转换

一、前言 二、简述 1、行转列概念 2、列转行概念 三、GaussDB数据库的行列转行实验示例 1、行转列示例 1)创建实验表(行存表) 2)静态行转列 3)行转列(结果值:拼接式) 4&…

maven部署

一、下载Maven 地址:Maven – Download Apache Maven 二、解压缩,设置环境变量 tar -xvf apache-maven-3.8.8-bin.tar.gz export MAVEN_HOME/opt/apache-maven-3.8.8 export PATH$MAVEN_HOME/bin:$PATH echo $MAVEN_HOME echo $PATH mvn -v

Android AGP版本

做个记录: Android AGP版本 https://developer.android.com/studio/releases/gradle-plugin?hlzh-cn

mac idea启动没反应 无法启动

遇到的问题如下: 启动idea,没反应 无法启动,不论破解还是别的原因,总之无法启动了 应用程序–找到idea–右击显示包内容–Contents–MacOS–打开idea 弹出框提示如下: 双击这个idea可执行文件 1)先查看日志…

Kafka3.0.0版本——Leader故障处理细节原理

目录 一、服务器信息二、服务器基本信息及相关概念2.1、服务器基本信息2.2、LEO的概念2.3、HW的概念 三、Leader故障处理细节 一、服务器信息 三台服务器 原始服务器名称原始服务器ip节点centos7虚拟机1192.168.136.27broker0centos7虚拟机2192.168.136.28broker1centos7虚拟机…

docker安装grafana,prometheus,exporter以及springboot整合详细教程(GPE)

springboot项目ip:192.168.168.1 测试服务器ip:192.168.168.81 文章来自互联网,自己略微整理下,更容易上手,方便自己,方便大家 最终效果: node springboot 1.下载镜像 docker pull prom/node-exporter docker pull prom/mysqld-exporter docker pull google/cadvisor dock…

「黄钊的AI日报·第一季」免费试读!最后5天,早鸟价60元~

1、每天5条AI内容点:不是常见的新闻汇总模式,而是站在AI产品经理的视角,把每篇AI干货的最核心内容,直接拎出来、甚至用自己的话来描述,是在展示“what I see”,和原文已经不是一个东西了! 2、已…

MIT6.824 Spring2021 Lab 1: MapReduce

文章目录 0x00 准备0x01 MapReduce简介0x02 RPC0x03 调试0x04 代码coordinator.gorpc.goworker.go 0x00 准备 阅读MapReduce论文配置GO环境 因为之前没用过GO,所以 先在网上学了一下语法A Tour of Go 感觉Go的接口和方法的语法和C挺不一样, 并发编程也挺有意思 0x01 MapRed…