【3D目标检测】Pseudo-Stereo for Monocular 3D Object Detection in Autonomous Driving

news2024/11/25 7:32:05

目录

  • 概述
  • 细节
    • 背景与整体流程
    • 图像级别生成
    • 特征级别生成
    • 损失函数
    • 学习深度感知的特征

概述

本文是基于单目图像的3D目标检测方法。
【2021】【MonoDLE】

研究的问题:

  • 能否借助立体图像检测算法提高单目图像检测的效果
  • 如何实现右侧图像的生成

解决的方法:

  • 受启发于伪点云,提出了伪立体图像的概念,将图像转换成立体图像,然后应用立体图像的检测算法
  • 提出两种右侧图像生成的方法,分别是图像级别生成和特征级别生成(基于视差的动态卷积方法)
  • 提出一个观点:学习深度感知的特征有利于提高单目检测的性能,比如作者这边的深度估计以及深度损失。

细节

背景与整体流程

为什么要用Pseudo-Stereo?虽然Pseudo-LiDAR效果很好,但是相对于基于雷达的算法还有很大的差距,并且这个差距来源于图像到点云的转化。因为这个转化过程是跨模态的,误差巨大。而单目图像到立体图像的转换相对而言就简单一点,并且基于立体图像的检测算法也具有不错的效果

思想概述:核心就是转换成立体图像然后应用立体图像的检测算法

算法的关键问题:图像到点云转换过程带来的巨大误差也影响到了伪点云算法的性能,使得基于伪点云的算法与基于点云的算法具有较大的差距。因此,如何减小单目图像到立体图像转换过程中的误差是本文的关键,作者提出了两种方法,图像级生成和特征级生成(特征克隆是特征级生成的特殊情况)

注意:虽然是采用基于立体图像的检测算法,但是作者将基于立体图像的检测算法的特征提取模块换成了自己的,也就是算法的输入是左右图的特征或者说是成本容积

图像级别生成

算法流程:基于左图得到深度图,然后将深度图转换成视差图,接着基于左图和视差图生成右图,然后使用共享参数的ResNet34进行左右图的特征提取,用共享参数的SPP模块分别获得左右图对应的全局特征,构造成本容积,然后送入立体图像检测器LIGA-Stereo中。
在这里插入图片描述
将深度图转换成视差图基于以下的方法:其中 d d d是对应的视差, z z z是估计得到的深度值, f , b f,b f,b分别是相机焦距和两台相机之间的基线距离
在这里插入图片描述
基于左图和视差图生成右图:主要是两个操作,一个是按照下面的公式扭曲左图得到右图,另一个是为了处理边缘模糊等问题对视差图进行了锐化
在这里插入图片描述

特征级别生成

背景:图像级别生成中,用左图+视差图扭曲得到右图非常耗时(相当于是手工做法),所以作者就提出了一种可微分(可学习)的特征变换方法,基于左图特征直接得到右图特征。

算法流程:基于左图得到深度图,然后将深度图转换成视差图,用不共享参数的ResNet34对左图和视差图进行特征提取,然后对左图特征和右图特征作基于视差的卷积(不是计算偏移量)得到右图特征,用共享参数的SPP模块分别获得左右图对应的全局特征,构造成本容积,然后送入立体图像检测器LIGA-Stereo中。

在这里插入图片描述
特殊情况:最简单的方式就是直接复制左图特征作为右图特征,这样不需要深度估计、视差图这些杂七杂八的,泛化性能好,但是检测性能嘛,肯定不行。
在这里插入图片描述

损失函数

损失函数与LIGA-Stereo相同

学习深度感知的特征

作者提到一个观点:学习深度感知的特征有利于提高单目检测的性能。本文的深度感知体现在两个方面,一个是深度估计,另一个是深度损失。两种方法对深度估计的应用差不多,但是深度损失的应用就有差别,前者生成右图是手工的做法,后者是学习的方法,深度损失能够指导右图的生成。

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

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

相关文章

java基于springboot+vue微信小程序的学生健康管理

任何系统都要遵循系统设计的基本流程,本系统也不例外,同样需要经过市场调研,需求分析,概要设计,详细设计,编码,测试这些步骤,基于Java语言、微信小程序技术设计并实现了学生健康管理小程序。系统主要包括系统首页、个人中心、学生管理、健康档案管理、体检报告管理、健康评估管…

案例分享 | 某券商利用AI技术进行告警关联分析(上)

本内容来自公众号“布博士”------(擎创科技资深产品专家)背景:作为大型券商企业之一,某券商对深入数字化转型,以及对应用、网络、主机、操作系统、中间件、用户使用体验等的全面可观测性要求越来越强烈。由于可观测性…

机器学习在预测脊髓型颈椎病中的应用:一项28名参与者的事后初步研究

机器学习在预测脊髓型颈椎病中的应用:一项28名参与者的事后初步研究 Machine Learning for the Prediction of Cervical Spondylotic Myelopathy: A Post Hoc Pilot Study of 28 Participants 简单说:训练了两个模型:1)预测脊髓型颈椎病诊断&#xff0…

音乐 APP 用户争夺战,火山引擎 VeDI 助力用户体验升级!

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,并进入官方交流群 国内数字音乐市场正在保持稳定增长。 根据华经产业研究院数据报告显示,2020 年数字音乐市场规模为 357.3 亿元,到 2022 年市场规模已增长至 482.7 …

2月编程语言排行榜新鲜出炉,谁又摘得桂冠?

近日,TIOBE公布了2023年2月编程语言排行榜,本月各个语言表现如何?谁又摘得桂冠?一起来看看吧! TIOBE 2月Top15编程语言: 详细榜单查看TIOBE官网 https://www.tiobe.com/tiobe-index/ 关注IT行业的小伙伴…

LabVIEW中的软件定时应用可以达到怎样的精度

LabVIEW中的软件定时应用可以达到怎样的精度有一个基于软件定时的数据采集应用。采集任务在一个循环结构中完成,使用LabVIEW的定时函数。每次循环间的间隔应该是一个常量,但没有得到优于1ms的定时分辨率。解答:LabVIEW 或LabWindows/CVI定时函数使用的是…

PHP如何实现HTTP服务器

一般来讲,PHP很少谈到“实现HTTP服务”的说法,因为从早期的CGI到后来的PHP-FPM,官方已经给出了最稳定的HTTP解决方案,你只要配合一个Apache或Nginx类的服务器就能实现稳定的HTTP服务。 但PHP并非不能实现HTTP服务,一般…

知识付费小程序怎么做_分享知识付费小程序的作用

在线知识付费产业的主要业务逻辑是基于用户的主动学习需求,为其提供以跨领域基础知识与技能为核心的在线知识服务,提升其达到求知目的的效率。公众号和小程序的迅速发展,又为知识付费提供了技术支持,从而促进了行业的进一步发展。…

UE 虚幻引擎 【DT Subsystem】 插件说明

在虚幻中自带有子系统,可能实现自动实例化。 但是子系统只能在C中继承实现,本插件的目的则是可以直接在蓝图中创建并使用子系统。 官方子系统说明参考: 虚幻引擎编程子系统 | 虚幻引擎5.1文档 (unrealengine.com)https://docs.unrealengine…

Studio 3T 2023.1.1 (macOS, Linux, Windows) - MongoDB 的专业 GUI、IDE 和 客户端

The professional GUI, IDE and client for MongoDB 请访问原文链接:https://sysin.org/blog/studio-3t-2023/,查看最新版。原创作品,转载请保留出处。 作者主页:www.sysin.org Studio 3T,MongoDB 的专业 GUI、IDE 和…

桌面电脑如何快速体验DataEase?

DataEase是一款人人可用的数据可视化分析工具,致力于帮助用户快速分析数据并洞察业务趋势,从而实现业务的改进与优化。但有一些用户提出,目前大部分的部署场景都是将DataEase部署在服务器中,自己只有一台桌面电脑,是不…

初始C++(五):

文章目录一.auto关键字1.1auto关键字用法1.2auto关键字的小细节1.3h获取变量类型二.范围for(语法糖)三.nullptr和NULL一.auto关键字 1.1auto关键字用法 auto这个关键字其实非常简单,用处就是能自动帮你去匹配类型,像下面这段代码: int mai…

Jetpack技术Hilt【实现解耦 】

Hilt是什么? Hilt 是基于 Dagger2 的针对 Android场景定制化 的框架。 这有点像什么? RxAndroid 是 RxJava 的Android平台定制化扩展。Andorid虽然由Java、Kotlin构成,但是它有很多平台的特性,比如它有 Java开发 所不知道的 Cont…

嵌入式开发:AI和Chat GPT改变嵌入式系统的3种方式

嵌入式软件开发是一个已经发展了很多年的领域,它已经见证了许多技术进步。然而,ChatGPT和其他人工智能技术的引入将以前所未有的方式彻底改变该领域。在这篇博文中,我们将探索ChatGPT和AI将改变嵌入式开发的三种方式。方式1 —— CHATGPT/AI自…

Redis之搭建一主多从

搭建redis一主多从的过程 1.在相应位置创建一个文件夹存放redis配置文件 mkdir myredis2.复制redis配置文件到此文件夹中 cp /opt/redis/redis/bin/redis.conf /opt/myredis/redis.conf3.新建三个配置文件 touch redis6379.conf touch redis6380.conf touch redis6381.conf4…

测试开发之Django实战示例 第九章 扩展商店功能

第九章 扩展商店功能在上一章里,为电商站点集成了支付功能,然后可以生成PDF发票发送给用户。在本章,我们将为商店添加优惠码功能。此外,还会学习国际化和本地化的设置和建立一个推荐商品的系统。本章涵盖如下要点:建立…

基于JAVA+SpringBoot+Vue+ElementUI中学化学实验室耗材管理系统

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目背景介绍: 当前,中学…

【js文字大小自适应】原生js实现文字大小自适应(附完整源码)

目录1、先睹为快2、代码实现第一步、搭建页面第二步、设置样式第三步、JS实现字体自适应3、源码直通车(百度云下载)【写在前面】之前写过一个大屏的项目,其中里面最头疼的应该是图片,文字,图表(echarts&…

分布式事务解决方案——TCC

TCC是Try、Confirm、Cancel三个词语的缩写,TCC要求每个分支事务实现三个操作:预处理Try、确认Confirm、撤销Cancel。1、Try 阶段是做业务检查(一致性)及资源预留(隔离),此阶段仅是一个初步操作,它和后续的Confirm一起才能真正构成…

Win11系统如何安装Ubuntu20.04(WSL版本)并安装docker

终于还是下定决心去换电脑了……这次采用轻量级的WSL,发现虽然没有占内存的GUI界面,但是编码和阅读文档还是非常nice的 1、首先开启Win11的虚拟机服务 2、下载你期望的Ubuntu服务器(这里以20.04为例) 安装成功后,发现…