论文阅读 | Interpolated Convolutional Networks for 3D Point Cloud Understanding

news2025/2/28 20:18:02

前言:ICCV2019点云特征提取点卷积InterpoConv

Interpolated Convolutional Networks for 3D Point Cloud Understanding

引言

点云是不规则、无序、且稀疏的
处理这样的点云数据有两大类方法
第一:voxel化

directly rasterize irregular point clouds into regular voxel grids, and adopts standard 3D convolutions to learn shape features.

缺点:会丢失掉一些几何信息,并且造成计算负担

the transformation of irregular inputs leads to a loss of geometric information, and convolutions on dense voxel grids lead to heavy computational burden.

第二:在欧几里得空间或特征空间建立一个局部图,然后用连续的核作用在每个图的边缘上,来学习到几何特征,这个连续的核的就用MLP来学习
缺点:图的构造不是稀疏不变的,点的密度不同导致图的构造不同
其次,用MLP学习连续核的效果不太好

这篇文章中,提出了一种l Interpolated Convolution operation (InterpConv)方法,用了离散的卷积核和插值方法来学习几何关系和权重坐标。
在这里插入图片描述

方法

离散卷积核
在这里插入图片描述
对不同位置的P‘,有一个对应的权重W(p’),与原有的不同邻点的特征相乘再相加

连续卷积核
在这里插入图片描述
对于一个(pdelat)相对位置,直接用MLP将相对位置映射到高维特征作为这个位置的权重
预测连续的卷积核的缺点在于,并不一定能其效果,预测的参数太多了并且很不高效

因此,我们的方法选择离散核的方式

构建离散核的同时保留距离信息,我们将这个构建的方式拆成两个步骤
空间离散核权重:
是一组长为C的向量
插值函数:核权重向量的坐标和输入邻点坐标
归一化参数Np
InterpConv公式如下在这里插入图片描述
离散核
离散核维一组在3D欧几里得空间的向量,每个向量有一个3D坐标来存储C维向量,这个向量可以被初始化也可以被更新
坐标可以固定也可以被更新
我们在这里用立方体来存储核
在这里插入图片描述
相对坐标作为核的3D位置坐标信息,同时对除以距离L。L表示两个相邻权重向量之间的距离。
距离L的作用,控制感受野,获得更精细的结构信息,当点很密集的时候

It determines the actual 3D size of a kernel in the Euclidean space and is defined to control the receptive field, from which one convolutional kernel can “see” input point clouds. If l is small, the convolutional kernel is able to capture fine-grained local structures, otherwise it encodes more global shape information.

插值函数
插值函数文中介绍了两种,一种是三线性插值,一种是高斯插值
在这里插入图片描述
在这里插入图片描述
归一化项
由于邻点数不固定,因此需要归一化
归一化的第一种方式,加权求和除以邻点数
在这里插入图片描述
第二种,加权求和除以权重的总和
在这里插入图片描述
伪代码
在这里插入图片描述
在所有输入点中采样p个点,对p个点中的每个点
对每个核的核点位置:
对每个邻点:
pdelta记录邻点的相对位置关系,将位置关系在位置核函数中进行插值,得到位置权重向量t
用得到的位置权重向量乘原始特征再相加,得到最终的每个点的聚合特征
得到不同核作用后的特征
用聚合后的特征与卷积核作用,得到卷积后的特征向量

网络

分类网络(采用类似Inception网络模块方法)
在这里插入图片描述
分割网络
在这里插入图片描述

实验

分类效果
在这里插入图片描述
分割效果
在这里插入图片描述

总结

插值函数在点云邻域里用得比较多,有的是直接对规则卷积核插值,这篇文章是对特征插值再应用离散卷积

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

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

相关文章

《Netty》从零开始学netty源码(三十八)之PoolSubPage

PoolSubPage 上一节中我们提到了PooledByteBufAllocator类,先看下netty中有关内存的类关系: 从图中可以看到PoolSubPage为最小单位,所以我们先从最小的开始分析,先看下它的属性值: 为了更好的理解这些属性的意义&…

表情包MD编辑器简单使用

🌷1 表情包 ⭐️(1)常规表情图标 😀 😁 😂 😃 😄 😅 😆 😉 😊 😋 😎 😍 😘 &#x1…

(Deep Learning)交叉验证(Cross Validation)

交叉验证(Cross Validation) 交叉验证(Cross Validation)是一种评估模型泛化性能的统计学方法,它比单次划分训练集和测试集的方法更加稳定、全面。 交叉验证不但可以解决数据集中数据量不够大的问题,也可以…

CSS中flex属性的的使用以及应用场景有哪些

文章目录一. flex属性?(虚假的) --- 这里主要是回顾1.1 flex-grow1.2 flex-shrink1.3 flex-basis二. flex属性 ! (真正的!!!)三. flex一些常见的值, 以及使用场景3.1 flex:initial 使用场景3.2 flex:0 和 flex:node 适用场景3.3 flex:1 和 flex:auto3.4 总结一. flex属性?(虚…

54 openEuler搭建Mariadb数据库服务器-Mariadb介绍

文章目录54 openEuler搭建Mariadb数据库服务器-Mariadb介绍54.1 MariaDB的架构54.2 MariaDB的存储引擎54 openEuler搭建Mariadb数据库服务器-Mariadb介绍 MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。MariaDB的目的…

零售数据分析操作篇14:利用内存计算做销售筛选分析

各位数据的朋友,大家好,我是老周道数据,和你一起,用常人思维数据分析,通过数据讲故事。 上一讲讲了图表间联动的应用场景,即当我们点击某个图表时,会影响其他图表一起变化,而变化背…

Vue3 Element-plus el-menu无限级菜单组件封装

对于element中提供给我们的el-menu组件最多可以实现三层嵌套,如果多一层数据只能自己通过变量去加一层,如果加了两层、三层这种往往是行不通的,所以只能进行封装 效果图一、定义数据 MenuData.ts export default [{id: "1",name:…

spring boot 访问HTML

HTML整合spring boot简介默认文件路径访问自定义文件路径访问或通过Controller控制器层跳转访问简介 SpringBoot默认的页面映射路径(即模板文件存放的位置)为“classpath:/templates/*.html”。静态文件路径为“classpath:/static/”,其中可…

三菱FX3U PLC计米轮功能块(完整ST代码)

计米轮功能块(wheel_FB)详细计米、测速原理请参看下面的博客: PLC高速脉冲输入计米轮模块(编码器测速/计米详细讲解)_RXXW_Dor的博客-CSDN博客线缆行业单绞机PLC控制算法详细解读可以参看下面的文章链接:线缆行业单绞机控制算法(详细图解+代码)_RXXW_Dor的博客-CSDN博客在…

大佬入局AI,职场人有新机会了?

卸任搜狗CEO一年半后,王小川宣布在AI大模型领域创业,与前搜狗COO茹立云联合成立人工智能公司百川智能,打造中国版的OpenAI,并对媒体表示:“追上ChatGPT水平,我觉得今年内可能就能够实现,但对于G…

第六天 CUDA内存管理

操作内存分配和数据复制过程概述 在gpu上开辟一块空间,并把地址记录在mem_device上在cpu上开辟一块空间,并把地址记录在mem_host上,并修改了该地址所指区域的第二个值把mem_host所指区域的数据都复制到mem_device的所指区域在cpu上开辟一块空…

面试代码——排序算法【建议收藏】

最近家里小朋友准备计算机类的研究生复试,可能会考到常见的排序算法,于是帮助整理一波,顺带复习下相关知识,考验下自己的编码能力; 关于排序算法,网上关于排序算法的帖子和代码也比较多,有的帖…

万字长文介绍R package “vegan”——入门学习与重复文献数据

vegan介绍与入门 vegan是一个用于群落生态学(community ecology)分析的包,可以进行排序、多样性和差异性分析(ordination, diversity and dissimilarity)。 vegan包含了多样性分析、排序方法和差异性分析的工具。 示…

L2-043 龙龙送外卖

L2-043 龙龙送外卖 题目描述: 给你n个点,m次询问,n个点构成一棵树 给出n个点,每个点的父节点 你现在在根结点,对于每次询问i,你都要回答,从根结点出发,至少经历1到i次询问的每个点1…

构建用户画像完整版

01 画像平台产品架构 上图是基于快看数据中台画像平台产品的理解和定位整理出来的产品架构。 画像平台首先是服务于业务的,运营可以基于画像平台对单个用户或者人群包做画像的洞察,平台服务的业务应用层包含: (1)个…

【C++初阶】(入门)命名空间

在C/C中,变量、函数和后面要学到的类都是大量存在的,这些变量、函数和类的名称将都存在于全局作用域中,可能会导致很多冲突。使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突或名字污染,namespace关键字…

【文章学习系列之模型】FEDformer

本章内容文章概况模型流程主要结构Frequency Enhanced Decomposition Architecture(频率增强分解结构)Fourier enhanced blocks and Wavelet enhanced blocks(傅里叶增强模块和小波增强模块)Fourier Enhanced Structure&#xff0…

基于Segment anything的实例分割半自动标注

介绍 使用Meta AI的SAM,并添加了一个基本界面来标记图像,并保存COCO格式的掩码。 源码 https://github.com/anuragxel/salt 安装 安装SAM;创建conda虚拟环境,使用conda env create -f environment.yaml;安装coco-viewer来快速可视化标注结果。使用方法 1、将图片放入到…

WSL下的Kafka开发容器:Docker搭建、API、整合

背景介绍 Kafka是一个分布式流处理平台,可以处理大规模数据流并支持实时数据流的处理。 本文介绍了如何在WSL下使用Docker搭建Kafka容器,并使用Python的kafka-python库和FastAPI框架实现了一个简单的API。同时,还将该服务整合到一个整体的d…

ssm异常处理

ssm异常处理 类上和方法上都要有注解: 类上的注解: 异常处理用到的注解,里面包含了其他的一些必须的注解,详解看下图 方法上的注解: 上面的要懂打配合 现在创建一个处理异常的工具类,加上前面提到的注…