Frustum PointNets for 3D Object Detection from RGB-D Data

article/2025/3/17 9:39:53

Frustum PointNets for 3D Object Detection from RGB-D Data

1.背景

3D的运用以及逐渐广泛,但是之前大多数的工作是将3D书转化为2D的数据或者对3D数据进行体素化处理,这样就失去了3D数据的一些空间特征以及其他的特性。
参考之前2D的工作,可以通过检测框的移动从而来进测出目标物体的位置。但是对于3D数据而言检测框这样移动检测所带来得计算量是巨大的。因此本文利用成熟的2D检测技术,通过2D检测器检测出物体位置在进行投影,然后再对投影后的进行分割和目标检测。

2.模型介绍

模型主要分为三个部分:frustum proposal、3D instance segmentation和3D amodal bounding box estimation。
在这里插入图片描述
首先利用2D CNN物体探测器来提出2D区域并对其内容进行分类。然后通过投影矩阵将2D区域提升到3D。给定平截头体中的点云( n × c n \times c n×c,具有 n n n个点和 x x x个通道的 X Y Z XYZ XYZ,每个点强度等),同每个点的二元分类来对对象实例进行分段。基于分割的对象点云( m × c m\times c m×c),轻量级回归PointNet(T-Net)通过平移进行点的对齐,使得质心接近中心。最后进行amodal 3D边框估计。

2.1 frustum proposal

在这里插入图片描述
利用已知的相机投影矩阵,可以将2D的边界框提升到平截头体,然后对提升的平截头体中的点云进行收集形成平截头体点云。如上图Figure 4 所示,,平截头体可以朝向不同的方向,导致点云的放置的方向对于检测的干扰是极大的。因此可以通过平截头体朝向中心视图来进行归一化处理,使得平截头体的中心轴线与图像平面正交。

2.2 3D instance segmentation

给定2D的图像区域以及对应的3D平截头体,可以使用几种方法来获得对象的3D位置:
在这里插入图片描述

  1. 使用2D直接从深度图回归到3D对象位置。但是由于可能存在前置遮挡物原因,会严重影响分割的准确度。而由于物体在空间中是自然分离的,因此在3D中对物体进行分割是更加自然和容易的。
  2. 在3D点云进行实例分割。网络在平截头体中采用点云并且预测每个点的概率分数,该分数表示该点属于感兴趣对象的可能性。而在论文中规定每个视锥体仅包含一个感兴趣的对象。并且在向量尾部加上热向量编码,补充说明具体体系结构的细节。
    在进行3D实例分割之后,提取被分类为感兴趣的点,随后对其进行进一步的标准化来增强算法的平移不变性。并且在这一过程中不进行点云缩放(部分点云的边界球大小会受到视点的极大影响,并且点云实际大小有助于估计框大小)。

2.3 3D amodal bounding box estimation

在这里插入图片描述

在得到分割的对象点之后,利用PiontNet和变换网络来估计3D对象的边界框。而预测的数据为中心( c x , c y , c z c_x,c_y,c_z cx,cy,cz),尺寸( h , w , l h,w,l h,w,l)和航向角( θ \theta θ)。
首先利用T-Net进行3D质心居中化,使得预测的中心成为原点。对于盒子的大小和航向角度,使用分类和回归公式的混合。接着通过Box Estimation输出的最终bounding box的维度为3+4xNS+2xNH。其中3代表中心点的残差回归,是接在T-Net回归之后的;NS代表不同size的archor个数,每一个archor有四个维度;NH代表不同朝向的archor,每一个archor有两个参数,分别为置信度和朝向角。

2.4 loss function

损失函数由三个网络构成:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结

本文主要采用了一个新的角度,从2D层面上对3D进行分析,先用已经成熟的2D进行目标对象的定位,再采用平截头体进行3D点云点数据的采集,最后通过PoinNet网络进行目标对象的语义分割和目标检测。


http://chatgpt.dhexx.cn/article/wcwZf48a.shtml

相关文章

翻译-Frustum PointNets for 3D Object Detection from RGB-D Data

Frustum PointNets for 3D Object Detection from RGB-D Data 摘要介绍相关工作从RGB-D数据中检测三维物体基于前视图图像的方法:基于鸟瞰图的方法:基于3D的方法: 点云的深度学习 问题定义三维检测与截锥体PointNets截锥体提出3d 语义分割三维实例分割PointNet 规范…

Screen position out of view frustum

Screen position out of view frustum (screen pos 1155.000000, 650.000000, 5000.000000) (Camera rect 0 0 1155 650) unity 在使用的时候报错如上。 前提:Projection:Perspective 原因分析:切割面最近和最远的值误差太大,一般不超过10…

【3D目标检测】Frustum PointNets

《Frustum PointNets for 3D Object Detection from RGB-D Data》论文笔记 一、论文思路二、模型介绍2.1 模型结构2.2 实现细节2.2.1 Frustum Proposal2.2.2 3D Instance Segmentation2.2.3 Amodal 3D Box Estimation2.2.4 模型结构2.2.5 损失函数 三、实验结果 代码 论文 一、…

【3D目标检测】Frustum PointNets for 3D Object Detection from RGB-D Data

目录 概述细节网络结构视锥候选框3D实例分割边界框参数回归损失函数 概述 首先本文是基于图像和点云的,属于早期的模态融合的成果,是串行的算法,而非并行的,更多的是考虑如何根据图像和点云这两个模态的数据进行3D目标检测。 提出…

frustum-pointnets复现过程+遇到的问题+解决方法

frustum-pointnets复现过程遇到的问题解决方法 系统Ubuntu16.04 1.下载KITTI数据集: 并按照README中的格式解压并重组数据集: 2.运行环境配置: 在复现KPConv的环境(‘python3’)下继续,首先安装一些包&a…

视锥体剔除(Frustum Culling)算法详解-透视投影矩阵直接推导

前言 本文章介绍了如何从投影矩阵(ProjectionMatrix)推导,得到视锥体(Frustum)的六个面的面方程,并且判断一个**点(point)是否在视锥体范围内,或者包围球(Bo…

OpenGL中frustum投影矩阵的推导

OpenGL中,有一个函数叫frustum,字面的意思是截锥体,也就是一个去掉头部的锥体,如下图所示, 看了一下《计算机图形学》(英文名Computer Graphics with OpenGL)的透视投影推导过程,比较…

UE Gameplay入门51(相机视锥空间的计算方法推导)

非常感谢匿名大哥一直对我的支持,本文内容由他赞助 #1. 视锥(Frustum)是什么 在相机的近裁剪面和远裁剪面之间的渲染范围内的空间叫做视锥空间(Frustum),通常情况下我们是不需要处理,但 当下比…

怎样用计算机才能更快,如何让网速变快,详细教您怎么让电脑网速变快

电脑的用户会遇到网速变慢的情况,不足为奇,其原因是多方面的,必须逐一进行解决。不过对于新手来说,该方法将不可取。别依赖技术人员,那么怎么让电脑网速变快?下面,小编跟大家介绍让电脑网速变快…

台式计算机运行慢怎么样能提高速度,如何提高电脑的运行速度,让电脑快起来!...

原标题:如何提高电脑的运行速度,让电脑快起来! 本人的笔记本电脑的已经使用了5年多了,经常出现卡顿,运行速度非常慢的情况,有时速度慢到无法忍受。以下是总结的解决电脑运行慢的几个方法,让自己…

电脑速度变快优化

1.加快系统启动速度  WindowsXP的启动速度比Windows2000要快30%左右,但相对于Windows98仍然要慢了不少,不过,我们可以通过优化设置,来大大提高WindowsXP的启动速度。加快系统启动速度主要有以下方法:尽量减少系统在启…

如何用计算机直接连接秒开服务器上网,三种方法让你实现电脑秒开!提升电脑开机速度就是这么简单!-怎么让电脑速度变快...

不少朋友常常抱怨自己的电脑开机速度太慢了,看着朋友或同事的电脑开机提示:开机用时XX秒,击败了全国百分之几的电脑用户,再看看自己的电脑光是开机就得几分钟,是不是砸了换新电脑的心情都有。 那么有没有办法让自己的电…

台式计算机运行慢怎么样能提高速度,怎么让电脑速度变快win7,win7运行速度提高90%的方法...

电脑的运行速度不仅跟电脑硬件配置高低有关,跟电脑系统也有一定的关联。那么怎样让电脑速度变快呢?下面分享的几条提升电脑速度的方法,有兴趣的朋友可以尝试下: 怎样让电脑速度变快? 1、加大运行内存: 如果你发现,你…

计算机网络速度怎么改,怎么让电脑网速变快? 公用网络怎么变快

【导读】怎么让电脑网速变快相关问题,下面191路由网小编为大家详细解答。 电脑在使用一段时间以后,上网速度就会明显变慢,有时甚至连网页都打不开。其实导致网速变慢的原因是多方面的,即有操作系统本身的原因,也有人为…

怎样让计算机加快速度,六大招教你把旧电脑恢复如新,速度提升N倍!-怎么让电脑速度变快...

旧电脑用久了难免会有点卡, 打开一个网页要等待很久, 操作的过程中出现卡顿, 导致数据丢失的情况也时常发生, 可能连打开office办公软件都非常慢! 这其实是电脑垃圾太多了! 电脑是我们的各种资料、信息生活…

笔记本计算机运行程序,这几招让你的笔记本电脑运行速度变快 必学技巧

很多电脑用户一直都被电脑慢的问题困扰着,而电脑大神根本不把电脑慢当做电脑问题,因为让电脑变快的方法有很多,而且操作都巨简单。提高电脑速度的方法也能很多而且很容易操作,一切的难,只是来源于你没有学过而已&#…

计算机如何配置速度快,怎么设置速度,教您怎么可以让电脑速度变快

在使用电脑的过程中,我们难免会需要使用电脑下载资源的情况,但是有用户发现在电脑在下载网上的时候,明明网络良好的情况下,却发现下载的速度依然很慢,那么这到底是怎么回事呢?该怎么去解决呢?下…

怎么样很快的速度锁定计算机,怎样让电脑速度变快

电脑的运行速度不仅跟电脑硬件配置高低有关,跟电脑系统也有一定的关联。那么怎样让电脑速度变快呢?下面分享的几条提升电脑速度的方法,有兴趣的朋友可以尝试下: 怎样让电脑速度变快? 1、加大运行内存: 如果你发现,你…

电脑开机太慢!怎么让电脑开机速度变快?

电脑刚买来的时候,开机速度很快,用了一段时间后,开机速度越来越慢,甚至要等上好几分钟,这实在是太让人苦恼了!电脑开机太慢,怎么让电脑开机速度变快?其实想要解决这个问题很简单,我们…

计算机网络速度怎么改,教你调网速让电脑速度更快-怎么让电脑速度变快

你是不是会经常为自己的电脑运行卡慢而感受生气么?你是不是经常羡慕别人的电脑为什么可以飞速的运行呢?你是不是经常会为自己的网速为什么这么慢而感到疑惑呢?对于电脑系统比较不懂的你是不是觉得需要很专业的代码或者需要重新换台好一点的电…