PointRCNN:三维目标检测

2023-05-16

本文在点云时空的连接:
http://www.sohu.com/a/330208095_715754

PointRCNN:3D Object Proposal Generation and Detection from Point Cloud
PointRCNN是CVPR2019录用的一篇三维目标检测论文。

摘要

本文中提出了一种PointRCNN用于原始点云的3D目标检测,整个框架包括两个阶段:第一阶段使用自下而上的3D提案产生,第二阶段用于在规范坐标中修改提案获得最终的检测结果。Stage-1阶段子网络不是从RGB图像或者将点云投影到鸟类视图或者体素中,而是通过将整个场景的点云分割为前景点和背景点,以自下而上的方式直接从点云生成少量高质量的3D提案。Stage-2阶段子网络将每个提案的池化的点转换为规范坐标,更好地学习局部空间特征,这个过程与Stage-1中学习每个点的全局语义特征相结合,用于Box优化和置信度预测。对KITTI数据集的3D检测基准的广泛实验表明,该架构优于只是用点云作为输入具有显著边缘的最先进方法。

论文链接:https://arxiv.org/abs/1812.04244

代码链接:https://github.com/sshaoshuai/PointRCNN

 

主要贡献

作者提出了一种新的三维物体检测器PointRcnn,用于从原始点云中检测三维物体。所提出的Stage-1网络以自下而上的方式直接从点云生成3D方案,比以前的方案生成方法具有更高的召回率。Stage-2网络将语义特征和局部空间特征结合起来,在规范坐标中对提案进行了优化。此外,新提出的基于bin的损失证明了它在三维边界框回归中的有效性。实验表明,在Kitti数据集的3D检测基准上,PointRcnn比以前的先进方法有显著的优势。

 

本文的主要贡献是:

  • 提出一种新颖的自下而上的基于点云的3D边界框提案生成算法,该算法通过将点云分割为前景和 背景对象来生成少量高质量的3D提案。来自分割的学习的点的代表不仅善于生成提案,而且对后面的Box优化也有帮助。
  • 提出的规范3D边界框使用了Stage-1阶段生成的高召回框提案,并在带有高鲁棒性的基于区域的损失的规范坐标中学习优化框坐标。
  • 提出的3D检测框架PointRCNN优于带有显著边缘的最先进的模型,并且在2018年11月16日所有已发表的只使用点云作为输入的方法中,在KITTI的3D检测测试中排名第一。

 

算法框架:

和二维图像的目标检测不同,自动驾驶场景中的三维物体被标注的3D边界框很好地分隔开。也即,用于3D物体检测的数据直接提供用于3D目标分割的语义掩模。这是3D检测和2D检测训练数据之间的差异。在2D目标检测中,边界框只能为语义分割提供弱监督。基于这一观察,作者提出了两阶段的3D目标检测框架—PointRCNN,该框架直接运行在3D点云上,具有高鲁棒性和准确的3D检测性能。如图2所示。

在这里插入图片描述

PointRCNN包括两个阶段,第一阶段旨在以自下而上的方案生成3D边界框提案,基于3D边界框生成真实分割掩模,分割前景点并同时从分割点生成少量边界框提案。这样的策略避免了在整个3D空间中使用大量3D锚框。第二阶段进行规范的3D box优化。在生成3D提案之后,采用点云区域池化操作来“pool”来自Stage-1学到的点表示。与直接估计全局box坐标的方法不同,“pooled”3D点被转换为规范坐标并与“pooled”的点特征以及Stage-1的分割掩模组合完成坐标优化。该策略充分利用了Stage-1的分割和提案子网络提供的信息。

作者还提出基于全区域的3D box回归损失以用于提案生成和优化,收敛更快,有更高的召回率。

一、通过点云分割自下而上生成3D提案

提出一种的基于全场景点云分割的精确、鲁棒的三维提案生成算法作为第一阶段子网络。 3D场景中的目标是自然分离的,彼此不重叠。所有三维目标的分割掩模都可以通过3D边界框注释直接获得,即3D框内的3D点被视为前景点。因此,我们建议以自下而上的方式生成3D提案。具体来说,我们逐点学习点的特征、分割原始点云,同时从分割的前景点生成3D提案。基于这种自下而上的策略,避免在3D空间中使用大量预定义的3D框,并且显著限制了生成的3D提案的搜索空间。并且,作者的3D box提案方法比基于3D锚点的提案生成方法有更高的召回率。

  • 点云的表示使用带有msg(multi-scale grouping)的pointnet++作为backbone,也可以使用VoxelNet等。
  • 前景点分割:作者的三维提案生成方法直接从前景点生成3D box 提案,同时完成前景分割和三维预测框生成。经backbone处理后的每个点的特征,分别经过前景掩模预测分支和三维提案框回归分支完成相应任务。点分割的真实掩模由3D边界框提供。并且使用focal loss来解决室外场景中,由前景点过少带来的类别不平衡问题。
  • 基于bin的三维边界框生成:边界回归分支使用前景点回归生成三维提案(要注意,背景点也参与了提案的生成)。为了约束三维提案,作者提出了基于bin的回归损失估计目标的三维边界框。预测3D边界框需要预测中心位置、目标方向与目标尺寸。详见P4。

二、点云区域池化

在获得三维边界框方案后,根据之前生成的框提案来优化框的位置和方向。根据每个3D提案的位置,对每个点及其特征进行池化。稍稍放大后的边界框内的点及其特征将被保留。然后使用分割掩模区分稍微放大框内的前景、背景点。没有内部点的提案将会被消除。

三、规范3D边界框优化

如图2(b)所示,“pooled”点及其相关特征都被送入Stage-2子网络,以优化3D box的位置和前景目标的可信度。经过图4所示的规范坐标转换,更好地学习每个提案的局部空间特征。

在这里插入图片描述

之后优化子网络将转换后的局部空间点和Stage-1阶段的全局语义特征结合优化框和置信度。在这里,作者在强度和掩模的基础上,增加了深度信息,经全连接层后,“catenate”全局特征送入网络。同样采用类似基于bin回归的损失用于提案优化。Stage-2的loss整体为:

在这里插入图片描述

主要结果:

作者给出了PointRCNN在KITTI数据集上的评估效果。在Sec. 4.1给出了PointRCNN的实施细节,在Sec. 4.2给出了与SOTA的比较,在Sec. 4.3给出了PointRCNN的消融实验分析。详见P6-P8。

作者在KITTI 3D检测标准的测试服务器上提交了PointRCNN的结果,见表1.尤其在汽车和自行车手的检测上有显著的优势。在行人检测方面,比以往只使用激光烈大输入的方法有更好的结果,但是比多传感器的效果较差。

在这里插入图片描述

作者在表2中,给出了关于车类别在验证集上与其他previous SOTA的比较。发现在“hard difficulty”,平均精度有8.28%的提升。

在这里插入图片描述

表3使用召回率评估了在不同提案数目和3D IoU阈值的情况下提案子网络的性能。虽然提案的召回率与最终的3D物体检测性能有着松散的联系,但出色的召回率仍然表明提案生成网络的稳健性和准确性。

在这里插入图片描述

最后的消融实验也分别证明了规范坐标转换的必要性,发现了将提案框扩大1m时精度最高,也证明了基于bin的三维边界框回归损失的有效性。详见Sec.4.3。

Abstract

In this paper, we propose PointRCNN for 3D object detection from raw point cloud. The whole framework is composed of two stages: stage-1 for the bottom-up 3D proposal generation and stage-2 for refining proposals in the canonical coordinates to obtain the final detection results. Instead of generating proposals from  RGB  image or projecting point cloud to bird’s view or voxels as previous methods do, our stage-1 sub-network directly generates a small number of high-quality 3D proposals from point cloud in a bottom-up manner via segmenting the point cloud of the whole scene into foreground points and back- ground. The stage-2 sub-network transforms the pooled points of each proposal to canonical coordinates to learn better local spatial features, which is combined with global semantic features of each point learned in stage-1 for ac- curate box refinement and confidence prediction. Extensive experiments on the 3D detection benchmark of KITTI dataset show that our proposed architecture outperforms state-of-the-art methods with remarkable margins by using only point cloud as input. The code is available at https://github.com/sshaoshuai/PointRCNN.

 

请各位关注公众号。更多的文章可以关注公众号查看。
  这里写图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PointRCNN:三维目标检测 的相关文章

  • 树莓派操作及搭建frp实现内网穿透

    买了个树莓派4b xff0c 折腾玩玩 一 安装 安装方法都一样 xff0c 下载镜像 xff0c 烧录到内存卡 xff0c 将内存卡插入树莓派 xff0c 启动即可 我试过的有ubuntu xff0c centos8 xff0c 树莓派官
  • MSF学习之旅之初识MSF

    0x00 前言 emmmm刚接触Metasploit还有点懵 xff0c 记录一下学习过程 参考了 Metasploit渗透测试指南 一书 0x01 启动MSF终端 Kali无需安装 xff0c 自带 两种方法 xff1a 方法一 xff1
  • 记一次Nginx服务器CPU100%故障

    描述 周五请假外出 xff0c 突然收到监控报警提示Nginx服务器的CPU使用率100 xff0c 另外用户也反应服务不可用 xff0c 同事登录服务器后发现Nginx的进程的CPU使用率100 xff0c 且后端应用有大量的服务调用网络
  • 嵌入式软件开发的难点

    软件开发本身就存在自由度大 关联性高的问题 嵌入式软件除了继承软件开发的难点之外 xff0c 在如下方面有自身的 独特的难点 xff1a 1 xff0c 内存有限 xff0c 螺蛳壳里做道场 xff1b 2 xff0c 处理能力有限 xff
  • FreeRTOS怎么定义systick中断处理?

    1 xff0c 在FreeRTOSConfig h里 xff0c 定义如下 xff1a define xPortSysTickHandler SysTick Handler 2 xff0c 在启动代码里 xff08 s或者 asm xff0
  • 开关中断与cpsid/cpsie指令

    在汇编代码中 xff0c CPSID CPSIE 用于快速的开关中断 xfeff xfeff CPSID I PRIMASK 61 1 xff0c 关中断 CPSIE I PRIMASK 61 0 xff0c 开中断 CPSID CPSIE
  • 通过安装VNC服务器x11vnc(或vnc4server)和配置x11vnc.service实现远程通过VNC-Viewer访问VNC服务器。

    1 Xshell的下载 xff1a 通过Xshell官网 xff08 链接 xff1a XShell 下载 softonic com xff09 下载Xshell 图 2 Xshell的下载 下载完成后安装 xff0c 安装成功后打开Xsh
  • 移动互联网,浮华还是盛宴—— 2011年中国移动开发者大会

    参会第一天 2011年11月3日早晨 xff0c 把女儿送到幼儿园之后 xff0c 驱车直奔移动开发者大会现场 虽然北京的堵车一如既往 xff0c 不过这次大会安排在了国家会议中心 xff0c 这是北京为数不多的在早晚高峰不堵车的地方 xf
  • 汇编LDMIA ,STMDB指令等

    LDMIA 中的 I 是bai increase 的缩写 xff0c A 是 after 的缩小 xff0c LD加载 load 的意思 R1后面的感叹du号 xff01 表示会自动调节 R1里面zhi存的指dao针 所以整句话意思是任务栈
  • 到底什么是模型预测控制MPC(一)

    1 为什么使用MPC控制 在浏览文章的时候 xff0c 很多文章都是基于MPC来做的 那么究竟什么是模型预测呢 xff1f 模型预测也可以说是一种我们熟悉的反馈控制算法 xff0c 其目的就是预测出未来的输出 以一个生活中的例子引入 xff
  • Linux访问报Input/output error处理步骤一例

    背景 xff1a redhat7 4版本操作系统 xff0c 收到磁盘告警 更换磁盘后检查系统 xff0c 发现 opt无法查看内容 1 先尝试保存metadata xff0c 不行则继续下一步 如果磁盘很大 xff0c 那metadata
  • 四旋翼电池、电机、螺旋桨选型与搭配

    电池 电机 螺旋桨搭配 1 电机 1 电机KV值 xff1a 大KV配小桨 xff0c 小KV配大桨 KV值是每1V的电压下电机每分钟空转的转速 xff0c 例如KV800 在1V的电压下空转转速是800转每分钟 10V的电压下是8000转
  • jetsonNX刷机步骤

    图为T503盒子 1 取消ssd为系统盘 nbsp sudo mount nbsp dev mmcblk0p1 mnt nbsp cd mnt etc nbsp sudo rm setssdroot conf nbsp reboot 2 格
  • MT7603/MT7610/MT7612/MT7632/MT7662/RT3070 WiFi模块选型参考

    MT7603 MT7610 MT7612 MT7632 MT7662 RT3070 rt5572系列wifi模块选型参考 RT3070是2 4G单通道 xff0c 最大传输速率可以150Mbps xff0c 目前基本上是一些dongle类产
  • 联发科RT2880/RT3052/RT3883/RT5350/RT3352无线路由器wifi芯片介绍

    RT3052 SOC结合了mediaTek Ralink 的802 11n草案 xff0c 兼容2T2R MAC BBP RF 高性能的384MHz MIPS24KEc CPU内核 5端口集成10 100以太网交换机 PHY USB OTG
  • MT7628处理器介绍,MT7628芯片原理图资料

    MT7628处理器 xff1a MT7628芯片上路由器包括802 11n MAC和基带 2 4GHz无线电和FEM 575 580 MHz MIPS 24KCPU核 5端口10 100快速以太网交换机 MT7628包括所有需要的东西 从单
  • MT7628 wifi模块,MTK路由器芯片介绍

    MT7628处理器 xff1a MT7628nn mt7628an 系列产品是新一代2T2R 802 11n Wi Fi AP 路由器 系统单芯片 MT7628可提升射频效能表现 减低功耗 xff0c 并将整体物料清单 BOM 成本优化 x
  • MT7621A路由器芯片参数/处理器资料(原理图/CPB)介绍

    MT7621A支持高级别AP 路由器的要求 xff0c 以及大量的接口以及巨大的最大RAM容量 feature MT7621A CPU MIPS1004Kc 880 MHz I Cache D Cache 32 KB 32 KB L2 Ca
  • 《大数据时代》读书总结

    这本书从以下几个方面阐述了我们所处的时代是如何展现 大数据 的 xff1a 1 首先是大数据时代的思维变革 思维为什么需要变革 xff1f 怎样变革 xff1f 思维需要变革的第一个原因是 xff0c 这个时代获取和处理数据的方式更加多元

随机推荐

  • 联发科RT3573无线wifi路由器模块芯片介绍

    RT3573是联发科推出的一款高效能又具成本效益的802 11n WiFi 传输器 dongle 解决方案平台 RT3573是一款高度整合式WiFi单芯片 xff0c 支持450 Mbps PHY速率 它完全符合IEEE 802 11n及I
  • K8S svc暴露的服务内部调用方法

    现象 xff1a 在Kubernetes集群内业务是通过ClusterIP或者服务名访问 k8s 的ingress nginx controller存在缺陷 xff0c 只有Ingress的Pod所在节点上 xff0c Pod才能访问通过I
  • CMake构建OpenCV项目

    文章目录 前言一 基本概念二 操作步骤1 创建OpenCV程序2 创建CMake文件3 编译项目4 运行项目 总结 前言 CMake是个一个开源的跨平台自动化建构系统 xff0c 用来管理软件建置的程序 xff0c 并不依赖于某特定编译器
  • 在立创商城上快速制作PCB原理图库

    以可调降压电源芯片TPS62130为例 xff1a 1 打开立创商城 xff0c 搜索元器件 2 点击 下载文件 3 出现下图 xff0c 点击 立即使用 4 保存原理图文件 5 保存完 xff0c 导出 6 打开导出文件 7 生成原理图库
  • 串口通信(232,485,422)及一些常见问题

    本文转载自21ic电子网 xff1a https www sohu com a 197785266 464086 本人对此文章进行了优化 xff0c 如有侵权 xff0c 请联系删除 xff01 并行通信与串行通信 与串行通信相对的是并行通
  • 运维排查篇 | 大量后台进程占用CPU资源怎么办?

    目录 案例现象定位问题解决问题pstree 案例现象 今天早上打开虚拟机终端 xff0c 发现一直有进程往我的 1 txt 文件里写东西 xff0c 删除之后又重新生成 而且 1 txt 大小已经五百多M了 使用 top 命令查看一下 xf
  • VTOL-垂起4+2构型电机电调校准(小白自用

    我也是个小白 有不对的地方欢迎指出 xff0c 有啥可以在评论区讨论 目录 VTOL 垂起4 43 2构型电机电调校准 xff08 小白自用参考链接 xff0c 感谢前辈博主前期准备校准四旋翼四轴电机电调双发电调校准 一些可能会出现的问题以
  • 理解浮点数的二进制表示

    目录 二进制的科学计数法 浮点数的二进制表示 符号位 尾数和指数 xff08 以64位浮点数为例 xff09 0 规约数和非规约数 无穷大和空值NaN 二进制的科学计数法 浮点数在电脑中用二进制储存 xff0c 约定以二进制的科学计数法来进
  • 最新版 如何获取OSS配置获取AccessKeyId、AccessKeySecret

    1 首先第一步 登录阿里云官网 https www aliyun com spm 61 5176 12901015 2 0 0 3c89525ce8lmgE 2 注册账号 可以直接使用 支付宝扫码登录 自动注册完成 3 注册成功后登录 可以
  • 消息邮箱和消息队列

    邮箱是一个通过在系统共享存储区内传递消息来实现同步和通信的对象 每个邮箱包含一个用于发送消息的消息队列和一个用来接受消息的消息队列 由于是在共享存储区域 xff0c 因此它对每个任务都是可见的 而一般的消息队列 xff0c 还可用来处理任务
  • git clone到本地之后切换分支

    Lenovo 64 DESKTOP GOJ0H91 MINGW64 d GitHub u boot khadas vims nougat git checkout 检查属于哪个分支 Your branch is up to date wit
  • win10开启自带移动热点以及解决无法设置移动热点,请打开WLAN问题

    1 选择Windows设置里的 网络和Internet 2 选择移动热点 xff0c 点击开 如果这一步显示 无法设置移动热点 xff0c 请打开WLAN 解决方法 xff1a 右键单击计算机 管理 设备管理器 xff0c 然后点击菜单栏的
  • 深度分析Java的枚举类型—-枚举的线程安全性及序列化问题

    写在前面 xff1a Java SE5提供了一种新的类型 Java的枚举类型 xff0c 关键字enum可以将一组具名的值的有限集合创建为一种新的类型 xff0c 而这些具名的值可以作为常规的程序组件使用 xff0c 这是一种非常有用的功能
  • excel截取前、中、后几个字符串的方法

    在对字符串进行处理时 xff0c 我们经常会用到取出某个单元格数据的前几位数 xff0c 中间几位数 xff0c 或者后几位数 xff0c 比如要取出省市区中的市 xff0c 该怎么办呢 xff1f 一 left函数用法 xff1a lef
  • Pixhawk6c编译

    以前一直用pixhawk4以及4mini xff0c 版本1 11 xff0c 这两款目前停产 xff0c 6x也快停产 xff0c 没什么货源了 只能试试6c 一 xff1a 下载 流程 xff1a 按照官网的流程 xff0c 先git
  • 结构体对齐详解

    1 结构体基础知识 a 认识结构体 结构体是一些值的集合 这些值称为成员变量 结构体的每个成员可以是不同类型的变量 声明一个结构体类型 声明一个学生类型 Stu就是你对这个结构体的称呼 struct Stu char name 20 cha
  • Jetson Xavier NX/TX2/Nano更换源(清华源/中科大源)(arm64架构)

    因为jetson系列的源都是国外的 xff0c 下载中途经常断线且很慢 所以要换源 xff0c 换为国内源后 xff0c 下载速度更快 而清华大学的源可以在jetson上完美使用 所以可以更换为清华大学的源 注意使用的是ubuntu18 0
  • 常用的17个运维监控系统(必备知识)

    1 Zabbix Zabbix 作为企业级的网络监控工具 xff0c 通过从服务器 xff0c 虚拟机和网络设备收集的数据提供实时监控 xff0c 自动发现 xff0c 映射和可扩展等功能 Zabbix的企业级监控软件为用户提供内置的Jav
  • 为什么学习Rust,Rust、Java、C、C++对比(leetcode平台)

    经常有朋友问我你为什么要研究Rust这个小众又难学的语言 xff0c 以下是Rust Java C C 43 43 一个简单算法的时间 amp 空间结果对比及源码 xff08 leetcode平台 xff09 废话不多说 xff0c 先上结
  • PointRCNN:三维目标检测

    本文在点云时空的连接 xff1a http www sohu com a 330208095 715754 PointRCNN xff1a 3D Object Proposal Generation and Detection from P