PointNet 论文阅读

news2024/11/25 4:18:08

论文链接

PointNet


Abstract

  • 对于点云问题,由于其格式不规则,大多数研究人员将此类数据转换为规则的 3D 体素网格或图像集合。然而,这会导致数据不必要地庞大并导致问题
  • 在本文中,我们设计了一种直接消耗点云的新型神经网络,它很好地尊重了输入中点的排列不变性。我们的网络名为 PointNet,为从对象分类、部分分割到场景语义解析等应用提供了统一的架构。

Intro

提出PointNet的原因

由于点云或网格不采用常规格式,因此大多数研究人员通常将此类数据转换为常规 3D 体素网格或图像集合(例如视图),然后再将其输入深度网络架构。这种数据表示转换使生成的数据变得不必要地庞大,同时还引入了可能掩盖数据自然不变性的量化伪影。

简述PointNet怎么做的

将点云作为输入并输出整个输入的类标签或输入的每个点的每个点段/部分标签。关键使用单个对称函数——最大池化

  • 网络学习一组优化函数/标准,用于选择点云中有趣或信息丰富的点,并对它们选择的原因进行编码。
  • 最终全连接层将这些学习到的最佳值聚合到整个形状的全局描述符中,用于形状分类或用于预测每个点标签(形状分割)
  • 我们的输入格式很容易应用刚性或仿射变换,因为每个点都是独立变换的
文章主要贡献
  • 设计了一种新颖的深度网络架构,适合使用三维的无序点集
  • 展示了如何训练这样的网络来执行 3D 形状分类、形状部分分割和场景语义解析任务
  • 对方法的稳定性和效率提供全面的实证和理论分析
  • 展示了网络中选定神经元计算的 3D 特征,并对其性能进行了直观的解释。

Related Work

点云特征
  • 大多数点云特征都是针对特定任务进行设计的

  • 点特征通常对点的某些统计属性进行编码,并被设计为对某些变换不变,这些变换通常被分类为内在或外在两种

    或者也可以分为局部特征和全局特征

基于三维数据的深度学习
  • 基于容积的卷积神经网络(Volumetric CNNs)—— 容积表示受到数据稀疏性和三维卷积的计算成本的限制
  • FPNN 和Vote3D 提出了解决稀疏问题的特殊方法 —— 操作仍然在稀疏体积上,对于处理非常大的点云来说是具有挑战性
  • 多视角CNNs(Multiview CNNs)—— 扩展到场景理解或其他三维任务(如点分类和形状补全)非常困难
  • 谱卷积神经网络(Spectral CNNs)—— 仅限于类似有机物的流形网格,如何将其扩展到非等度形状(如家具)并不明显
  • 基于特征的深度神经网络(Feature-based DNNs)—— 受到提取特征的表示能力的限制
在无序数据集上的深度学习

从数据结构的角度来看,点云是一个无序向量集合。点集上进行的深度学习工作并不多。

Problem Statement

输入:无序数据点集, P i = ( x , y , z ∣ 颜色,法线等 ) P_i=(x,y,z|颜色,法线等) Pi=(x,y,z颜色,法线等)

目标分类任务:深度网络为所有k个候选类别输出k个得分

语义分割任务:输入可以是单个目标用于部分区域分割,或者是从3D场景中的子体积用于目标区域分割

模型会为每个n个点和每个m个语义子类别输出n×m个得分

Deep Learning on Point Sets

R n \mathbb {R}^n Rn 点集性质
  • 点云是一组没有特定顺序的点
  • 点不是孤立的,相邻点形成一个有意义的子集。模型需要能够捕获附近点的局部结构,以及局部结构之间的组合相互作用
  • 作为一个几何对象,学习到的点集表示对于某些变换应该是不变的
PointNet 架构


如上图所示。分类网络以n个点作为输入,应用输入和特征变换,然后通过最大池化聚合点特征。输出是 k 个类别的分类分数。分割网络是分类网络的扩展。它连接全局和局部特征并输出每点分数。 “mlp”代表多层感知器,括号中的数字是层大小。 Batchnorm 用于 ReLU 的所有层。 Dropout 层用于分类网络中的最后一个 MLP

三个关键模块

  • 最大池化层作为对称函数来聚合来自所有点的信息,局部和全局信息组合结构
  • 两个对齐输入点和点特征的联合对齐网络

无序输入的对称函数

目的:使模型输入排列不变

策略

  • 将输入排序成规范顺序

  • 将输入视为训练 RNN 的序列,通过排列来扩充数据

  • 通过对称函数来聚合每个点的信息

    对称函数 - 输入:n 个向量 - 输出:一个与输入阶数无关的新向量

不足

  • 在高维空间中实际上不存在稳定的排序,因此,排序并不能完全解决排序问题,并且由于排序问题仍然存在,网络很难学习从输入到输出的一致映射
  • 虽然 RNN 对于小长度(数十个)序列的输入排序具有相对较好的鲁棒性,但很难扩展到数千个输入元素,这是点集的常见大小

解决方案

对集合中的变换元素应用对称函数来近似定义在点集上的通用函数

f ( { x 1 , . . . , x n } ) ≈ g ( ( h ( x 1 ) , . . . , h ( x n ) ) f : 2 R N → R ,    h : R N → R K ,    g : R K × . . . × R K ⏟ n → R f(\{x_1,...,x_n\})\approx g((h(x_1),...,h(x_n)) \\\\ f:2^{\mathbb{R}^N}\rightarrow \mathbb{R},\ \ h:\mathbb{R}^N\rightarrow\mathbb{R}^K,\ \ g:\underbrace{\mathbb{R}^K \times...\times \mathbb{R}^K}_{n} \rightarrow \mathbb{R} f({x1,...,xn})g((h(x1),...,h(xn))f:2RNR,  h:RNRK,  g:n RK×...×RKR

实验证实:通过多层感知器网络来近似 h,通过单变量函数和最大池函数的组合来近似 g

局部与全局信息融合

原因:

无序输入对称函数的输出形成一个向量 [ f 1 , . . , f K ] [f_1,..,f_K] [f1,..,fK]在形状全局特征上训练 SVM 或多层感知器分类器以进行分类但点分割需要局部和全局知识的结合

解决方案:

  • 计算全局点云特征向量后,我们通过将全局特征与每个点特征连接起来将其反馈给每个点特征
  • 根据组合的点特征提取新的每点特征

联合对准网络

**原因:**如果点云经历某些几何变换(例如刚性变换),则点云的语义标记必须保持不变

方案:

  • 通过迷你网络(T-net)预测仿射变换矩阵,并将该变换直接应用于输入点的坐标(迷你网络本身类似于大网络,由点无关特征提取、最大池化和全连接层等基本模块组成)

将该想法扩展到特征空间的对齐

  • 在点特征上插入另一个对齐网络并预测特征转换矩阵以对齐来自不同输入点云的特征

  • 在 softmax 训练损失中添加了一个正则化项,将特征变换矩阵限制为接近正交矩阵
    L r e g = ∣ ∣ I − A A T ∣ ∣ F 2 L_{reg}=||I-AA^T||^2_F Lreg=∣∣IAATF2
    A 是迷你网络预测的特征对齐矩阵,正交变换不会丢失输入中的信息,因此是理想的

理论分析

普遍逼近

假设 f : X → R f: \Chi \rightarrow \mathbb{R} f:XR 是一个关于 Hausdorff 距离 d H ( ⋅ , ⋅ ) d_H(\cdot , \cdot) dH(,) 的连续集合函数,则 ∀ ϵ > 0 \forall \epsilon > 0 ϵ>0 都存在一个连续函数 h 和对称函数 g ( x 1 , . . . , x n ) = γ ∘ M A X g(x_1,...,x_n)=\gamma \circ MAX g(x1,...,xn)=γMAX,对于任意的 S ∈ X S\in \Chi SX 都有下式成立
∣ f ( S ) − γ ( M A X x i ∈ S { h ( x i ) } ) ∣ < ϵ |f(S)-\gamma(\underset {x_i \in S}{MAX}\{h(x_i)\})|<\epsilon f(S)γ(xiSMAX{h(xi)})<ϵ
它将 n 个向量作为输入并返回元素级最大值的新向量。关键思想是,在最坏的情况下,网络可以通过将空间划分为大小相等的体素来学习将点云转换为体积表示

瓶颈维度和稳定性

从理论上和实验上我们发现我们网络的表达能力受到最大池化层的维度的强烈影响。

u = M A X x i ∈ S { h ( x i ) } u=\underset {x_i \in S}{MAX}\{h(x_i)\} u=xiSMAX{h(xi)} f = γ ∘ u f=\gamma\circ u f=γu,则有

a ) ∀ S , ∃ C S , N S ⊆ X , f ( T ) = f ( S )       i f   C S ⊆ T ⊆ N S b ) ∣ C S ∣ ≤ K \begin{aligned} &a) \forall S,\exist C_S,N_S \subseteq \Chi,f(T)=f(S)\ \ \ \ \ if\ C_S\subseteq T\subseteq N_S \\\\ &b)|C_S|\leq K \end{aligned} a)SCSNSXf(T)=f(S)     if CSTNSb)CSK

  • 表示如果 C S C_S CS 中的所有点都被保留,则 f ( S ) f (S) f(S) 在输入损坏之前保持不变;对于高达 N S N_S NS 的额外噪声点,它也保持不变。
  • 表示 C S C_S CS 仅包含有限数量的点,由 K 确定。换句话说, f ( S ) f(S) f(S) 实际上完全由小于或等于K个元素的有限子集 C S ⊆ S C_S ⊆ S CSS 决定

C S C_S CS 称为 S 的临界点集,将 K 称为 f 的瓶颈维度。

Experiment

应用领域

3D 目标分类

  • 在 ModelNet40 形状分类基准上评估我们的模型。有来自 40 个人造物体类别的 12,311 个 CAD 模型,分为 9,843 个用于训练和 2,468 个用于测试。

  • 我们的模型在基于 3D 输入(体积和点云)的方法中实现了最先进的性能。仅通过全连接层和最大池化,我们的网络在推理速度方面取得了领先优势,并且也可以轻松地在 CPU 中并行化。我们的方法和基于多视图的方法(MVCNN)之间仍然存在很小的差距,我们认为这是由于渲染图像可以捕获的精细几何细节的丢失造成的。

3D 对象部分分割

  • 部分分割是一项具有挑战性的细粒度 3D 识别任务。给定 3D 扫描或网格模型,任务是将零件类别标签(例如椅子腿、杯子手柄)分配给每个点或面

  • 我们对ShapeNet 零件数据集进行评估,该数据集包含来自 16 个类别的 16,881 个形状,总共注释了 50 个零件

  • 评估指标是点上的 mIoU。对于类别 C 的每个形状 S,计算形状的 mIoU

  • 我们观察到平均 IoU 提高了 2.3%,并且我们的网络在大多数类别中都优于基线方法

  • 测试这些方法的稳健性,仅损失了 5.3% 的平均 IoU

场景中的语义分割

  • 部分分割网络可以轻松扩展到语义场景分割,其中点标签成为语义对象类而不是对象部分标签。

  • 在斯坦福 3D 语义解析数据集上进行实验。该数据集包含 Matterport 扫描仪对 6 个区域(包括 271 个房间)的 3D 扫描结果。扫描中的每个点都用来自 13 个类别(椅子、桌子、地板、墙壁等以及杂乱)的语义标签之一进行注释

架构设计分析

与其他顺序不变方法的比较

  • 我们比较的基线(如图 5 所示)包括将未排序和排序点作为 n×3 数组的多层感知器、将输入点视为序列的 RNN 模型以及基于对称函数的模型
  • 本文实验的对称操作包括最大池化、平均池化和基于注意力的加权和
  • 从每个点特征预测标量分数,然后通过计算 softmax 跨点对分数进行归一化。然后根据归一化分数和点特征计算加权和

输入和特征转换的有效性

  • 最基本的架构已经取得了相当合理的结果。使用输入转换可将性能提升 0.8%

鲁棒性测试

  • 我们使用与图 5 的最大池化网络相同的架构。输入点被标准化为单位球体
  • 当缺失 50% 的点时,准确率仅下降 2.4% 和 3.8%
  • 如果网络在训练期间发现了异常点,那么它对异常点也具有鲁棒性
  • 评估两种模型:一种在具有 (x, y, z) 坐标的点上进行训练;另一种在具有 (x, y, z) 坐标的点上进行训练加上点密度

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《黑客帝国:破解编程密码》——探索编程世界的奥秘

文章目录 前言黑客帝国代码雨UbuntuLinux世界的奥秘如何在Ubuntu中查看系统信息科普推荐书籍后记 前言 在电影《黑客帝国》问世后&#xff0c;它不仅带来了震撼视觉体验&#xff0c;更在技术和编程领域产生了深远的影响。这部电影&#xff0c;让人们对计算机和编程的认识进一步…

【TS篇一】TypeScript介绍、使用场景、环境搭建、类和接口

文章目录 一、TypeScript 介绍1. TypeScript 是什么1.2 静态类型和动态类型1.3 Why TypeScript1.4 TypeScript 使用场景1.5 TypeScript 不仅仅用于开发 Angular 应用1.6 前置知识 二、如何学习 TypeScript2.1 相关链接 三、起步3.1 搭建 TypeScript 开发环境3.2 编辑器的选择3.…

Spring启示录

2023.11.3 今天正式开始Spring的学习。这一章主要学习一些开发中的原则和思想&#xff0c;以此引出接下来要学的Spring框架。 OCP开闭原则 在软件开发过程中应当对扩展开放&#xff0c;对修改关闭。也就是说&#xff0c;如果在进行功能扩展的时候&#xff0c;添加额外的类是没问…

美国市场11大类目热销榜公开!哪些商品遥遥领先?

TikTok美国市场9月GMV远超市场预期&#xff0c;凸显出强劲的消费需求。 但10月战绩梅开二度了&#xff01;为什么怎么说&#xff1f; 据超店有数平台数据监测&#xff0c;TikTok美国市场10月销售额大幅增长42%&#xff0c;商品数增长43%&#xff0c;商品销量增长43%&#xff…

深度学习_8_对Softmax回归的理解

回归问题&#xff0c;例如之前做房子价格预测的线性回归问题 而softmax回归是一个分类问题,即给定一个图片&#xff0c;从猫狗两种动物类别中选出最可靠的那种答案&#xff0c;这个是两类分类问题&#xff0c;因为狗和猫是两类 上述多个输出可以这样理解&#xff0c;假设一个图…

JDBC 操作BLOB类型的数据

1 操作BLOB类型字段 1.1 MySQL BLOB类型 MySQL中&#xff0c;BLOB是一个二进制大型对象&#xff0c;是一个可以存储大量数据的容器&#xff0c;它能容纳不同大小的数据。 插入BLOB类型的数据必须使用PreparedStatement&#xff0c;因为BLOB类型的数据无法使用字符串拼接写的。…

300万美元!澳大利亚昆士兰州投资当地首家量子公司AQC

澳大利亚模拟量子电路公司&#xff08;AQC&#xff09;联合创始人 Tom Stace 教授和 Arkady Federov 副教授&#xff08;图片来源&#xff1a;网络&#xff09; 澳大利亚风险投资基金会Uniseed为澳大利亚昆士兰大学的两名教授提供了300万美元的资金&#xff0c;资助他们创办了…

Linux内核input子系统详解

目录 1 input子系统整体架构 2 input子系统驱动框架分析 2.1 怎么添加input_dev 2.2 input_dev和input_handler匹配后&#xff0c;connec函数做了什么 3 input子系统读数据流程 3.1 open输入设备流程 3.2 read读取输入事件流程 4 应用程序读取的输入数据是怎样的 4.1 …

支付宝AI布局: 新产品助力小程序智能化,未来持续投入加速创新

支付宝是全球领先的独立第三方支付平台&#xff0c;致力于为广大用户提供安全快速的电子支付/网上支付/安全支付/手机支付体验&#xff0c;及转账收款/水电煤缴费/信用卡还款/AA收款等生活服务应用。 支付宝不仅是一个支付工具&#xff0c;也是一个数字生活平台&#xff0c;通过…

cplex基础入门(三)之运行调试debug

聊聊题外话&#xff0c;你用cplex进行代码编写&#xff0c;其实你也可以相当于在编程一样&#xff0c;那对于编程&#xff0c;有一项非常核心的能力就是代码调试以及debug的能力&#xff0c;那你运行以及编写cplex也是一样&#xff0c;同样需要你会使用调试的方式&#xff0c;来…

如何去除视频水印?三种简便有效的方法解决视频水印问题

在当今社交媒体时代&#xff0c;视频分享已成为一种流行趋势。然而&#xff0c;很多人在分享自己的作品时却苦于视频上存在的水印&#xff0c;水印通常是出于版权保护或品牌推广的目的而添加到视频中的&#xff0c;但有时它们可能会对用户体验造成负面影响。 如果您正在寻找如何…

同步盘选型指南:如何选择最适合你的同步盘?

同步盘是一种文件协同工具&#xff0c;它可以将数据信息实时同步至不同的设备上&#xff0c;不用担心电脑不在&#xff0c;就无法查看文件。本文调研了多位同步盘用户的真实体验&#xff0c;为大家总结了一份同步盘选型指南&#xff0c;助您找到更适合自己的同步盘工具。 如何挑…

《python深度学习》笔记(二十):神经网络的解释方法之CAM、Grad-CAM、Grad-CAM++、LayerCAM

原理优点缺点GAP将多维特征映射降维为一个固定长度的特征向量①减少了模型的参数量&#xff1b;②保留更多的空间位置信息&#xff1b;③可并行计算&#xff0c;计算效率高&#xff1b;④具有一定程度的不变性①可能导致信息的损失&#xff1b;②忽略不同尺度的空间信息CAM利用…

hadoop配置文件自检查(解决常见报错问题,超级详细!)

本篇文章主要的内容就是检查配置文件&#xff0c;还有一些常见的报错问题解决方法&#xff0c;希望能够帮助到大家。 一、以下是大家可能会遇到的常见问题&#xff1a; 1.是否遗漏了前置准备的相关操作配置&#xff1f; 2.是否遗的将文件夹(Hadoop安装文件夹&#xff0c;/dat…

【后端开发】手写一个简单的线程池

半同步半异步线程池 半同步半异步线程池分为三层&#xff1a; 同步服务层 —— 处理来自上层的任务请求&#xff0c;将它们加入到排队层中等待处理。 同步排队层 —— 实际上是一个“同步队列”&#xff0c;允许多线程添加/取出任务&#xff0c;并保证线程安全。 异步服务层…

Windows环境下使用VLC获取到大疆无人机的RTMP直播推流

1.环境准备 1.安装nginx 1.7.11.3 Gryphon 下载地址&#xff1a;http://nginx-win.ecsds.eu/download/ 下载nginx 1.7.11.3 Gryphon.zip&#xff0c;解压后修改文件夹名称为nginx-1.7.11.3-Gryphon&#xff1b; 2.安装nginx-rtmp-module 下载地址&#xff1a;GitHub - arut…

实用-----七牛云绑定自定义域名

实用-----七牛云绑定自定义域名&#xff08;无废话 无尿点&#xff09; 1.打开七牛云 点击自己需要绑定的实例 https://portal.qiniu.com/kodo/bucket 2. 点击域名管理 3.点击添加域名 输入你要绑定的域名 4. 配置 CACHE 复制 CACHE 码 访问腾讯云 CDN 官网 https://console.…

Minium:专业的小程序自动化工具

小程序架构上分为渲染层和逻辑层&#xff0c;尽管各平台的运行环境十分相似&#xff0c;但是还是有些许的区别&#xff08;如下图&#xff09;&#xff0c;比如说JavaScript 语法和 API 支持不一致&#xff0c;WXSS 渲染表现也有不同&#xff0c;所以不论是手工测试&#xff0c…

3D模型格式转换工具HOOPS Exchange:模型的几何数据获取!

3D CAD数据在制造、工程和设计等各个领域都扮演着重要的角色。为了促进不同软件应用程序之间的协作和互操作性&#xff0c;它通常以不同的格式进行交换。HOOPS Exchange是一个强大的软件开发工具包&#xff0c;提供了处理和将3D CAD数据从一种格式转换为另一种格式的解决方案。…

京东商品评论API接口(评论内容|日期|买家昵称|追评内容|评论图片|评论视频..)

京东商品评论API接口是京东开放平台提供的一套API接口&#xff0c;用于获取京东商城商品评论数据。通过该接口&#xff0c;您可以获取到商品评论的详细信息&#xff0c;包括评论内容、评论时间、评论者信息等。 要使用京东商品评论API接口&#xff0c;您需要完成以下步骤&…