STS:Surround-view Temporal Stereo for Multi-view 3D Detection——论文笔记

news2024/11/27 23:50:38

参考代码:None

1. 概述

介绍:这篇文章提出的方法是对LSS中深度估计部分进行改进,其改进的点是在深度估计部分引入立体匹配去估计周视相机下的深度信息,其中立体匹配使用前后视频帧进行构建(可以看作是时序信息的使用,只不过只有两帧信息)。此外,引入DORN中的深度采样策略(SID,Spacing-Increasing Discretization)使得近处的采样点不至于过度稀疏,为了弥补在无纹理下立体匹配失效的情况,同时保留原本LSS中的深度估计模块,将其立体匹配估计出的深度进行融合得到最后更准确地深度表达。不过存在需要知道准确帧间 [ R ∣ t ] [R|t] [Rt]的问题,在实际工程化中是较难实现的。

对于从相机中恢复深度信息,其来源可以划分为如下几种情况:
在这里插入图片描述

  • a)给定基线下的双目立体匹配。
  • b)给定多个相机位姿关系的MVS算法。
  • c)使用单个相机从运动中恢复深度,但是需要给出帧与帧之间的位姿变换关系。
  • d)自动驾驶场景下将周视相机作为一个整体,使用类似运动中恢复深度的策略得到各个相机下的深度信息。

2. 方法设计

2.1 整体pipeline

由文章方法构建的BEV检测算法pipeline见下图所示:
在这里插入图片描述
从文中可以看到相比原本的LSS算法,其增加了使用之前帧构建立体匹配(STS,Surround-view Temporal Stereo)去估计深度信息,之后再与原本的深度估计模块结果进行融合。

2.2 STS构建

STS部分的处理流程见下图所示:
在这里插入图片描述
输入的周视图像会被backbone处理抽取图像特征 F i ∈ R C F ∗ H n ∗ W n F_i\in R^{C_F*\frac{H}{n}*\frac{W}{n}} FiRCFnHnW,那么使用当前帧(reference)之前帧(source) 的特征就可以在给定的深度划分( D D D 上计算匹配特征了。但是在这之前需要完成当前帧到之前帧的warp操作(这里会计算source中),这里使用source中 j j j个相机到reference中第 i i i个相机的转换,记为 H i j H_{ij} Hij
H i j ( d ) = K j ⋅ R j ⋅ ( I − ( T i − T j ) ⋅ n 1 T d ) ⋅ R i T ⋅ K i − 1 H_{ij}(d)=K_j\cdot R_j\cdot (I-\frac{(T_i-T_j)\cdot n_{1}^T}{d})\cdot R_i^T\cdot K_i^{-1} Hij(d)=KjRj(Id(TiTj)n1T)RiTKi1
则,reference中的特征到source下的特征转换被描述为:
P i j s o u r c e = H i j ⋅ P i r e f ,   j = 1 , … , N P_{ij}^{source}=H_{ij}\cdot P_i^{ref},\ j=1,\dots,N Pijsource=HijPiref, j=1,,N
完成reference到source的投影之后,对于source中的第 i i i个相机,只会考虑有效的投影点 P i j s o u r c e ^ P_{ij}^{\hat{source}} Pijsource^,这些投影点组成warp之后的特征 V i ∈ R C F ∗ D ′ ∗ H n ∗ W n V_i\in R^{C_F*D^{'}*\frac{H}{n}*\frac{W}{n}} ViRCFDnHnW。之后再与source中的特征进行分组计算cost volume:
S i g = 1 C F / G ⟨ F i ⋅ V i ⟩ S_i^g=\frac{1}{C_F/G}\langle F_i\cdot V_i\rangle Sig=CF/G1FiVi
其中 ⟨ ⋅ ⟩ \langle \cdot \rangle 代表矩阵内积,之后这些特征就会经过几层3D卷积之后被用于去计算stereo matching下的深度预测结果了。

在上面构建cost volume的时候是按照给定的深度进行划分的,通常采用的是深度方向上均匀划分的方案,但是这种方案由于相机的投影过程会导致近处变得稀疏,如下图中中间的效果所示:
在这里插入图片描述
对此,文章采用SID的方法进行投影,在给定最大最小深度值和需要划分的深度bins下其划分准则被描述为:
d k = e x p ( l o g ( D m i n ) + l o g ( D m a x D m i n ) ∗ k C D ) , k = 1 , … , D d_k=exp(log(D_{min})+\frac{log(\frac{D_{max}}{D_{min}})*k}{C_D}), k=1,\dots,D dk=exp(log(Dmin)+CDlog(DminDmax)k),k=1,,D
这里的采样方法对性能带来的影响:
在这里插入图片描述
STS部分输出第 i i i个相机深度估计结果被描述为 D i s t e r e o D_i^{stereo} Distereo

2.3 深度结果融合

在STS中输出 D i s t e r e o D_i^{stereo} Distereo,将其与LSS中原本的深度估计结果 D i m o n o D_i^{mono} Dimono进行融合,其融合策略为:
D i p r e d = σ ( D i s t e r e o + D i m o n o ) D_i^{pred}=\sigma(D_i^{stereo}+D_i^{mono}) Dipred=σ(Distereo+Dimono)
深度估计结果融合之后的深度估计性能表现:
在这里插入图片描述
对于检测性能的影响:
在这里插入图片描述

3. 实验结果

在这里插入图片描述

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

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

相关文章

node-sass安装失败的解决方案

Nodejs 新版安装过程需要安装node-sass模块,开始一直无法安装成功,网上找了很多方法都无法解决,找了很久才找到的解决方案。 1.1 node-sass安装前准备 Option 2: Install dependencies and configuration manually Install Visual C Build E…

Python处理zip压缩文件

文章目录ZipFile对象写入压缩文件读取和解压缩常用属性ZipInfoZipFile对象 顾名思义,zipfile是处理zip文件的模块,其中最重要的类是ZipFile,其构造函数为 ZipFile(file, moder, compressionZIP_STORED, allowZip64True, compresslevelNone,…

使用VGG网络训练发生错误RuntimeError: CUDA out of memory解决方案:

问题在使用VGG网络训练Mnisist数据集时,发生错误RuntimeError: CUDA out of memory. Tried to allocate 392.00 MiB (GPU 0; 2.00 GiB total capacity; 1.45 GiB already allocated; 0 bytes free; 1.47 GiB reserved in total by PyTorch) If reserved memory is &…

发布详解 | Flutter 3.7 稳定版发布

新年伊始,由 Flutter 3.7 正式版来「打头阵」!我们与整个 Flutter 社区成员们继续在 Flutter 3.7 中优化了框架,包括创建自定义菜单栏和层叠式菜单、更好的国际化工具支持、新的调试工具以及其他功能和特性等。新的稳定版里,我们在…

JUC面试(十二)——AQS

AQS juc.locks包下 AbstractQueuedSynchronizer,抽象的队列同步器 aqs是用来构建锁或者其它同步器组件的重量级基础框架及整个JUC体系的基石, 通过内置的FIFO队列来完成资源获取线程的排队工作,并通过一个int类变量表示持有锁的状态&#x…

极限运算法则——“高等数学”

各位CSDN的uu们你们好啊,今天,小雅兰学习的内容是极限运算法则 回顾 无穷小的极限运算法则 定理1:两个无穷小的和是无穷小 定理2:有界函数与无穷小的乘积是无穷小 极限的四则运算法则 定理3 定理4 定理5:极限的保序性…

实现自己的数据库二

一 前言上次数据库支持了一个测试表的插入和查询,但是数据全部保存到磁盘中的,如果程序重启后,数据都会全部丢了,所以需要持久化到磁盘上,像sqlite一样,简单的将数据库的数据保存到一个磁盘文件上。二 实现…

【BBuf的CUDA笔记】六,总结 FasterTransformer Encoder(BERT) 的cuda相关优化技巧

这里总结 FasterTransformer Encoder(BERT) 的cuda相关优化技巧 解读:https://github.com/NVIDIA/FasterTransformer/blob/main/docs/bert_guide.md ,优化点解读之前是翻译了下 Faster Transformer BERT 的文档,然后省略了运行样例等环节&…

【Datewhale一起吃瓜 Task4】啃瓜第五章

支持向量机 任务:找到超平面 在样本空间中,找到最好的超平面把样本分开,即找到正中间的超平面 满足 该超平面 分开了两类该超平面 最大化支持向量间隔该超平面处于 间隔中间,到所有支持向量距离相等 如何找:表示出…

从聚水潭到金蝶云星空通过接口集成数据

从聚水潭到金蝶云星空通过接口集成数据数据源系统:聚水潭聚水潭成立于2014年,创始人兼CEO骆海东拥有近三十年传统及电商ERP的研发和实施部署经验。聚水潭创建之初,以电商SaaSERP切入市场,凭借出色的产品和服务,快速获得市场的肯定…

【论文简述】Attention-Aware Multi-View Stereo(CVPR 2020)

一、论文简述 1. 第一作者:Keyang Luo 2. 发表年份:2020 3. 发表期刊:CVPR 4. 关键词:MVS、代价体、注意力机制、正则化 5. 探索动机: However, the feature matching results from different channels are usual…

仿写Dubbo-MyRpc

基础 在仿写Dubbo之前,需要了解一些技术,像Java反射,Java代理,Java Socket以及Dubbo相关概念。 项目结构 项目gitee地址:https://gitee.com/AGi_R/framework my-common 整个项目的公共资源库。存放一些公共的注解&…

拦截器、过滤器、监听器

目录一、拦截器1. 拦截器是什么?2. 设置拦截器a. 定义拦截器b. 配置加载拦截器c. 新建页面二、过滤器1. 使用原因2. Filter概念图3. Filter编程三、监听器一、拦截器 拦截器:必须保证页面有访问controller的操作,否则拦截不了 1. 拦截器是什么? 概念…

OpenWrt软路由空间扩容

文章目录预备知识OpenWrt系统固件分类EXT4固件扩容方式新建分区扩容操作步骤直接扩容操作步骤SQUASHFS固件扩容方式新建分区扩容直接扩容EFI引导固件的额外操作参考预备知识 OpenWrt系统固件分类 EXT4固件 固件包名称中包含有ext4关键字,可以参考固件分类关键字示意…

设计模式 - 创建型模式_建造者模式

文章目录创建型模式概述Case模拟工程Bad ImplBetter Impl (建造者模式重构代码)小结创建型模式 创建型模式提供创建对象的机制, 能够提升已有代码的灵活性和可复⽤性。 类型实现要点工厂方法定义⼀个创建对象的接⼝,让其⼦类⾃⼰…

编写用户注册用表单

<!-- 需求&#xff1a; 用户注册&#xff1a;用户名、密码、确认密码、性别、兴趣爱好、学历、简介 --> <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>编写用户注册用表单<…

【Linux】Linux和Window下\r与\n的区别、git命令行的使用

作者&#xff1a;小卢 专栏&#xff1a;《Linux》、《Git》 喜欢的话&#xff1a;世间因为少年的挺身而出&#xff0c;而更加瑰丽。 ——《人民日报》 目录 1. 回车换行符在Window下和在Linux下的区别&#xff1a; 1.1回车换行符&#xff1a;…

用友U8和旺店通企业版淘宝奇门单据接口集成

用友U8和旺店通企业奇门单据接口集成对接系统&#xff1a;旺店通企业奇门慧策最先以旺店通ERP切入商家核心管理痛点——订单管理&#xff0c;之后围绕电商经营管理中的核心管理诉求&#xff0c;先后布局流量获取、会员管理、仓库管理等其他重要经营模块。慧策的产品线从旺店通E…

实现宏offsetof()

本期介绍&#x1f356; 主要介绍&#xff1a;什么是offsetof()&#xff0c;offsetof()的用法&#xff0c;如何自己实现这个宏&#x1f440;。 offsetof其实是一个宏&#xff0c;作用是&#xff1a;能够求出指定成员相对于结构体起始地址的偏移量&#xff08;单位&#xff1a;字…

(考研湖科大教书匠计算机网络)第三章数据链路层-第一节:数据链路层概述

文章目录一&#xff1a;数据链路层概述&#xff08;1&#xff09;为什么要有数据链路层&#xff08;2&#xff09;数据链路层定义&#xff08;3&#xff09;点对点信道和广播信道二&#xff1a;数据链路层需要解决的一些问题&#xff08;1&#xff09;三个最基本问题①&#xf…