当前位置: 首页 > news >正文

论文阅读:Offboard 3D Object Detection from Point Cloud Sequences

目录

概要

Motivation

整体架构流程

技术细节

3D Auto Labeling Pipeline

The static object auto labeling model

The dynamic object auto labeling model

小结


论文地址:[2103.05073] Offboard 3D Object Detection from Point Cloud Sequences (arxiv.org)

概要

    该论文提出了一种利用点云序列数据进行离线三维物体检测的方法,称为3D Auto Labeling。相比现有的三维物体检测方法,该方法能够更好地满足离线场景下高质量的要求。该方法利用点云序列中不同帧所捕获的物体的互补视角信息,通过多帧物体检测和新颖的物体中心优化模型来利用时间点云。在Waymo公开数据集上的评估结果表明,该方法相比于现有的三维物体检测方法和离线基准有显著提升,甚至可以与人工标签的效果媲美。该方法还具有半监督学习和应用自动标签的能力。

    关键是使用点云序列数据来进行物体检测,并设计了一个新的离线物体检测管道,利用多帧物体检测和新的物体中心检测模型来提高检测准确性。同时,还利用了物体轨迹数据来对物体的运动状态进行分类,并引入了一个动态物体自动标注模型和一个静态物体自动标注模型来生成高质量的自动标注数据。这些自动标注数据可以用于半监督学习,以提高检测性能。

Motivation

  • 由于有限的输入和速度限制,现有的3D目标检测器无法满足机外使用的高质量要求。大多数3D预测研究都集中在实时车载用例上,只考虑来自当前帧或少数历史帧的传感器输入。
  • 4D标注数据内含物体动态行为信息,为高等级自动驾驶的必要输入;
  • 4D人工标注极为耗时,据统计,人工标注25秒10Hz的点云序列中物体4D框,平均需要10小时,成本高,可扩展性差。

整体架构流程

该方法主要运用coarse-to-fine的思想使得检测结果更为准确:

  • 第一阶段通过现有的检测、跟踪方法,生成粗标注;
  • 第二阶段通过汇总跟踪框内的点云,生成精细标注。   

技术细节

    为了充分利用时态点云,摒弃了基于帧的通用输入结构,其中点云的整个帧被合并。转向以目标为中心的设计。首先利用性能最佳的多帧检测器来提供初始目标定位。然后,通过多目标跟踪链接在不同帧中检测到的目标。基于检测box和原始点云序列,可以提取物体的整个跟踪数据,包括其所有传感器数据(点云)和检测box,即4D:3D空间+1D时间。然后,提出了新的深度网络模型来处理这样的4D目标跟踪数据,并输出时间已知且高质量的目标box。

3D Auto Labeling Pipeline

    3D Auto Labeling管道。给定一个点云序列作为输入,管道首先利用3D对象检测器来定位每一帧中的对象。然后跨帧的对象框通过多目标跟踪器链接。为每个对象提取对象跟踪数据(其每帧的点云及其 3D 边界框),然后通过以对象为中心的自动标记(静态和动态轨迹的分而治之)生成最终的“自动标签”,即细化的 3D 边界框。

The static object auto labeling model

    静态对象自动标记模型。将世界坐标中合并的对象点作为输入,模型输出静态对象的单个框。

    先做前景分割,分割出前景背景点.然后用提取前景点,回归物体的目标框.
1)前景分割的网络:PointNet分割网络,MLPx5 -> 1024->maxpool -> concat to 1088(1024 + 64)->预测出2维
2)目标框回归网络:PointNet的变体,输出(3 dim,heading,size,cls)
3)进行级联微调,再让transform过的前景点经过一次目标框回归网络.
两个回归网络共享参数的效果更好。

The dynamic object auto labeling model

    动态对象自动标记模型。以一系列对象点和一系列对象框,模型以滑动窗口方式运行,并为中心帧输出细化的 3D 框。输入点和框颜色表示帧。

    对于点云分支,模型采用目标点云的子序列。向每个点添加时间编码通道后,子序列点通过并集合并,并在中心帧处为检测器box的box坐标。接着有一个基于PointNet的分割网络来对前景点进行分类,然后通过另一个点编码网络将目标点编码为一个embedding。对于长方体序列分支,长方体序列帧将转换为长方体框架处探测器box的坐标。长方体子序列可以比点子序列长,以捕获长的轨迹嵌入,其中每个box是一个具有7维几何和1维时间编码的点。然后,将计算出的目标嵌入和轨迹嵌入连接起来,形成联合嵌入,然后通过一个box回归网络预测帧处的目标box。(参考:Offboard 3D Object Detection From Point Cloud Sequences-CSDN博客)

小结

  1. 制定车载 3D 目标检测问题和特定管道 (3D Auto Labeling) 的提议,该管道利用了我们的多帧检测器和新颖的以对象为中心的自动标记模型;
  2. 在具有挑战性的Waymo开放数据集上实现最先进的3D目标检测性能;
  3. 3D目标检测的人体标签研究,以及人体标签和自动标签之间的比较;
  4. 证明了自动标签对半监督学习的有效性。

相关文章:

论文阅读:Offboard 3D Object Detection from Point Cloud Sequences

目录 概要 Motivation 整体架构流程 技术细节 3D Auto Labeling Pipeline The static object auto labeling model The dynamic object auto labeling model 小结 论文地址:[2103.05073] Offboard 3D Object Detection from Point Cloud Sequences (arxiv.o…...

Python学习基础笔记六十八——循环

循环是编程语言常见的流程控制。 Python语句要让计算机反复地做一些事情,就要用到循环语句。 有While和for循环。 while循环: command input("请输入命令:") while command ! exit:print(f输入的命令是{command})command input("请输…...

部署k8s dashboard(这里使用Kubepi)

9. 部署k8s dashboard(这里使用Kubepi) Kubepi是一个简单高效的k8s集群图形化管理工具,方便日常管理K8S集群,高效快速的查询日志定位问题的工具 部署KubePI(随便在哪个节点部署,我这里在主节点部署&#…...

Java Lambda表达式的使用

我们了解了 java Lambda 的概念并可以在匿名类的场合使用 Lambda 语法进行简单替换。本节主要介绍在 Java 中如何使用 Lambda 表达式。 作为参数使用Lambda表达式 Lambda 表达式一种常见的用途就是作为参数传递给方法,这需要声明参数的类型声明为函数式接口类型。…...

【初始C语言8】详细讲解初阶结构体的知识

前言 💓作者简介: 加油,旭杏,目前大二,正在学习C,数据结构等👀 💓作者主页:加油,旭杏的主页👀 ⏩本文收录在:再识C进阶的专栏&#x1…...

<C++> IO流

C语言的输入与输出 在C语言当中,我们使用最频繁的输入输出方式就是scanf与printf: scanf: 从标准输入设备(键盘)读取数据,并将读取到的值存放到某一指定变量当中。printf: 将指定的数据输出到…...

基于单目相机的2D测量(工件尺寸和物体尺寸)

目录 1.简介 2.基于单目相机的2D测量 2.1 想法: 2.2 代码思路 2.2 主函数部分 1.简介 基于单目相机的2D测量技术在许多领域中具有重要的背景和意义。 工业制造:在工业制造过程中,精确测量是确保产品质量和一致性的关键。基于单目相机的2…...

23面向对象案例1

目录 1、计算连续表达式的一个过程 2、优化后的代码 为什么不能return resultn? 3、用面向对象的方法可以解决冗余的问题,但是还是不能解决result的值可以被随意修改的问题 4、解决不能被随意修改的问题,可以将类属性改成私有变量吗&…...

go语言基础之常量与itoa

视频学习地址:Go零基础入门_在线视频教程-CSDN程序员研修院 一. 常量 定义:常量是一个简单值的标识符,在程序运行时,不会被修改的量。注意:常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数…...

民宿酒店订房房态商城小程序的作用是什么

外出旅游出差,酒店民宿总是很好的选择,随着经济复苏,各地旅游及外出办公人次增多,酒店成绩随之增加,市场呈现多品牌酒店经营形式。 区别于以前,如今互联网深入各个行业,酒店经营也面临着困境。…...

acwing算法基础之数据结构--栈和队列

目录 1 知识点2 模板 1 知识点 栈:先进后出。先进的就是栈底,后进的就是栈顶。后进先出嘛,所以在栈顶弹出元素。 队列:先进先出。先进的就是队头,后进的就是队尾。先进先出嘛,所以在队头弹出元素。 单调…...

关于导出的Excel文件的本质

上篇文章中提到关于xlsx改造冻结窗格的代码,我是怎么知道要加pane的呢,加下来就把我的心路历程记录一下。 我改造之前也是没有头绪的,我网上查了很多,只告诉我如何使用,但源码里没有针对!freeze的处理,所以…...

Rust中FnOnce如何传递给一个约束Fn的回调

Rust中FnOnce如何传递给一个约束Fn的回调 下面的代码&#xff0c;set_cb(func);会报错&#xff0c;如何包装能够做到这样的效果&#xff1a; fn set_cb<F: Fn() static>(handler: F) {handler(); }fn main() {let join_handle std::thread::spawn(|| {});let func |…...

【JUC】线程通信与等待唤醒机制

文章目录 1. 线程通信2. Object类中的wait和notify方法实现等待和唤醒3. Condition接口中的await和signal方法实现等待和唤醒4. LockSupport实现等待和唤醒4.1 优点 1. 线程通信 多个线程在处理同一个资源&#xff0c;但是处理的动作&#xff08;线程的任务&#xff09;却不相…...

C#面对对象(英雄联盟人物管理系统)

目录 英雄信息类 因为要在两个窗体里面调用字典&#xff0c;所以要写两个类来构建全局变量 添加功能 查询功能 英雄信息类 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace WindowsFormsApp…...

2023年中国分布式光纤传感产量、需求量及行业市场规模分析[图]

分布式光纤传感器中的光纤能够集传感、传输功能于一体&#xff0c;能够完成在整条光纤长度上环境参量的空间、时间多维连续测量&#xff0c;具有结构简单、易于布设、性价比高、易实现长距离等独特优点&#xff0c;常用的分布式光纤传感器有光时域反射仪、布里渊分析仪、喇曼反…...

B2R Raven: 2靶机渗透

B2R Raven: 2靶机渗透 视频参考&#xff1a;ajest &#xff1a;https://www.zhihu.com/zvideo/1547357583714775040?utm_id0 原文参考&#xff1a;ajest &#xff1a;https://zhuanlan.zhihu.com/p/270343652 文章目录 B2R Raven: 2靶机渗透1 启动靶机&#xff0c;查看后网卡…...

SpringBoot-黑马程序员-学习笔记(六)

目录 76.常用计量单位使用 77.bean属性校验 81.测试表现层 82.发送虚拟请求 94.springboot读写redis的客户端 100.ElasticSearch&#xff08;简称ES&#xff09; 一个分布式全文搜索引擎 76.常用计量单位使用 Data Component ConfigurationProperties(prefix "serve…...

unity2022版本 实现手机虚拟操作杆

简介 在许多移动游戏中&#xff0c;虚拟操纵杆是一个重要的用户界面元素&#xff0c;用于控制角色或物体的移动。本文将介绍如何在Unity中实现虚拟操纵杆&#xff0c;提供了一段用于移动控制的代码。我们将讨论不同类型的虚拟操纵杆&#xff0c;如固定和跟随&#xff0c;以及如…...

『GitHub Actions』部署静态博客指南

前言 之前博主是使用的 Jenkins 实现 vuepress 博客的自动部署与持续交付&#xff0c;但是因为现在迁移服务器到海外&#xff0c;并且服务器配置降低。现在经常出现服务器的 Jenkins 构建过程中 CPU 占用率过高&#xff0c;导致服务器卡死 然后我想的话既然只是部署静态博客&…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

谷歌浏览器插件

项目中有时候会用到插件 sync-cookie-extension1.0.0&#xff1a;开发环境同步测试 cookie 至 localhost&#xff0c;便于本地请求服务携带 cookie 参考地址&#xff1a;https://juejin.cn/post/7139354571712757767 里面有源码下载下来&#xff0c;加在到扩展即可使用FeHelp…...

linux之kylin系统nginx的安装

一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源&#xff08;HTML/CSS/图片等&#xff09;&#xff0c;响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址&#xff0c;提高安全性 3.负载均衡服务器 支持多种策略分发流量…...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...

ubuntu22.04有线网络无法连接,图标也没了

今天突然无法有线网络无法连接任何设备&#xff0c;并且图标都没了 错误案例 往上一顿搜索&#xff0c;试了很多博客都不行&#xff0c;比如 Ubuntu22.04右上角网络图标消失 最后解决的办法 下载网卡驱动&#xff0c;重新安装 操作步骤 查看自己网卡的型号 lspci | gre…...

【Linux】Linux安装并配置RabbitMQ

目录 1. 安装 Erlang 2. 安装 RabbitMQ 2.1.添加 RabbitMQ 仓库 2.2.安装 RabbitMQ 3.配置 3.1.启动和管理服务 4. 访问管理界面 5.安装问题 6.修改密码 7.修改端口 7.1.找到文件 7.2.修改文件 1. 安装 Erlang 由于 RabbitMQ 是用 Erlang 编写的&#xff0c;需要先安…...

react更新页面数据,操作页面,双向数据绑定

// 路由不是组件的直接跳转use client&#xff0c;useEffect&#xff0c;useRouter&#xff0c;需3个结合&#xff0c; use client表示客户端 use client; import { Button,Card, Space,Tag,Table,message,Input } from antd; import { useEffect,useState } from react; impor…...

Pandas 可视化集成:数据科学家的高效绘图指南

为什么选择 Pandas 进行数据可视化&#xff1f; 在数据科学和分析领域&#xff0c;可视化是理解数据、发现模式和传达见解的关键步骤。Python 生态系统提供了多种可视化工具&#xff0c;如 Matplotlib、Seaborn、Plotly 等&#xff0c;但 Pandas 内置的可视化功能因其与数据结…...

深入理解 C++ 左值右值、std::move 与函数重载中的参数传递

在 C 编程中&#xff0c;左值和右值的概念以及std::move的使用&#xff0c;常常让开发者感到困惑。特别是在函数重载场景下&#xff0c;如何合理利用这些特性来优化代码性能、确保语义正确&#xff0c;更是一个值得深入探讨的话题。 在开始之前&#xff0c;先提出几个问题&…...

AI书签管理工具开发全记录(十八):书签导入导出

文章目录 AI书签管理工具开发全记录&#xff08;十八&#xff09;&#xff1a;书签导入导出1.前言 &#x1f4dd;2.书签结构分析 &#x1f4d6;3.书签示例 &#x1f4d1;4.书签文件结构定义描述 &#x1f523;4.1. ​整体文档结构​​4.2. ​核心元素类型​​4.3. ​层级关系4.…...