【论文阅读+代码复现】GSPN:Generative Shape Proposal Network for 3D Instance Segmentation in Point Cloud
Brief这是一篇CVPR18上的文章虽然表示是说的实例分割但是听同组的同学的推荐也可以做定位方面的事情因此加入到了paperlist。AbstructInstead of treating object proposal as a direct bounding box regression problem, we take an analysis-by-synthesis strategy and generate proposals by reconstructing shapes from noisy observations in a scene。通过综合分析的方式获得proposals。是不是可以取代anchor_based的方法。1 introductionIn contrast, we take a different perspective for object proposal which emphasizes more on the geometric understanding.**文章的亮点就在于从场景中分析出candidate objects。好处是双重的1.提出的proposals是具有higher objectness的GSPN生成网络是预先会去学习目标长什么样子再去提出候选框的。2.GSPN对自然物体场景下分布的噪声进行观察编码可以看做是一个实例感知提取的过程。有点迷后续解释结合GSPN提出的proposals作者提出了一个R-Pointnet网络。作者类比为Mask-RCNN.2 related work2.1 Object Detection and Instance Segmentation2D检测发展3D的CNN特别提了一下CVPR18上的第一篇实例分割的文章SGPN学习相似度矩阵的方法。作者表示这种自下而上的聚合策略不能很好的保证proposals具有较高的objectness2.3D Generative Models对于做3D检测的我来说。我觉得在3D中改掉anchor_based的方法才是重点因此这一部分细看。VAE变分自动编码器是经常用于在图像生成和形状生成上经常使用的它通过学习采样的数据x xx来学习一个分布这样不仅仅可以将采样数据解码为原始数据形式。VAE通过学习数据分布并最大拟合其相似分布。然而VAE不能像采样的数据中add controls不太懂先放一下因此一个后续的工作CAVE就此诞生了。因为CAVE和VAE可以学习数据分布的相似性但是GAN不能因此作者选择了VAE。怎么用CVAE生成proposals呢2.3 Deep Learning on Point Cloudpointnetgraph3 Method两个大部分GSPNproposalsR-PointNetinstance segmentationGSPNGSPN的voerview:GSPN采用生成object的方法去生成proposal。通过一个采样点生成一个和采样点编码点原始数据类似的proposals。作者称这个GSPN为CVAE方法。上图由几个子网络组成:prior network和recognition network用于参数化 为一个高斯分布。generation network学习生成表达式center-prediction network用于中心化上下文数据以及提出Location information中心点s ss采用球体结构选择三个尺度的scale进行输入。也就是c 1 , c 2 , c 3 c_1,c_2,c_3c1​,c2​,c3​整个过程都是很明显的就像上图所表示的那样1.首先center_network把三个尺度的信息进行编码融合成t tt作者这里说的是中心点t tt的回归2.将t tt进行translate后得到c ^ \widehat{c}c送入预先训练好的prior nework.再映射为一个高斯先验分布。3.Recognition network和prior network共享输入数据代码这里是 代码前面环境搭建和编译pointnet的操作我就不说了我的环境是py3.5tf1.14因此有些地方是需要改进的下面记录一下需要改进的地方在执行第一步时即python data_prep.py ./data/scannet ./data/scannet_preprocessed在文件data_pre.py的第86行会出现问题如下out_sem sem_label[idx] IndexError: too many indices for array也就是数组越界的问题我也不知道为什么会出现这个问题。如下修改第41和42行源码semLabel np.array(map(int, semLabel)) outGroups np.array(map(int, outGroups))改为semLabel np.array( semLabel) outGroups np.array( outGroups)

相关新闻

Python的标准库,random()

Python的标准库,random()

random()函数产生伪随机数,伪随机数是采用梅森旋转算法生成的(伪)随机序列中的元素,称为随机数基本随机函数:seed()、random()扩展随机函数:ranint()、getrandbits()、uniform()、randrange()、choice()、s…

2026/11/5 6:15:24 阅读更多 →
webpack(前端打包工具)

webpack(前端打包工具)

本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包工具。当 webpack 处理应用程序时,它会在内部构建一个 依赖图(dependency graph),此依赖图会映射项目所需的每个模块,并生成一个或多个 bundle。 官网地址https://we…

2026/10/25 3:45:18 阅读更多 →
leetcode—python  50天刷题  第21题  旋转链表

leetcode—python 50天刷题 第21题 旋转链表

题目描述 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4->5->1->2->3->NULL 解释: 向右旋转 1 步: 5->1->2->3->4->NULL 向右旋转 2 步: 4…

2026/11/5 15:42:36 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/5 12:28:00 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/5 1:08:50 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/5 12:28:01 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/5 12:28:02 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/6 8:08:42 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/5 19:38:59 阅读更多 →

日新闻

周新闻

月新闻