单目测距和双目测距 bev 3D车道线

单目视觉测距原理

单目视觉测距有两种方式。

第一种,是通过深度神经网络来预测深度,这需要大量的训练数据。训练后的单目视觉摄像头可以认识道路上最典型的参与者——人、汽车、卡车、摩托车,或是其他障碍物(雪糕桶之类),然后对识别到的物体进行距离估计。

第二种,是结合车辆的运动信息,用时序上的相邻帧进行“类双目视觉“的检测,这种方法也被称为motion stereo或structure from motion。

单目摄像头的算法思路是先识别后测距:首先通过图像识别,然后根据图像大小和高度进一步估算障碍物与本车距离。

单目深度估计

双目测距

双目摄像头的算法思路是先测距后识别:首先利用视差直接测量物体与车的距离,然后在识别阶段,双目仍然要利用单目一样利用深度学习算法,进一步识别障碍物到底是什么。

根据双目视觉的测距原理,通常将其实现过程分为五个步骤:相机标定,图像获取,图像预处理,特征提取与立体匹配,三维重构。其中,相机标定是为了得 到相机的内外参数和畸变系数等,可以离线进行;而左右相机图像获取的同步性,图像预处理的质量和一致性,以及立体匹配(获取视差信息)和三维重构(获取距离信息)算法的实时性要求带来的巨大运算量,对在嵌入式平台上实现双目视觉ADAS提出了挑战。

与单目视觉相比,双目视觉测距精度较高。

双目相机需要同步。

立体匹配计算量大。

受光影响大:在大雨天气或者前方强光源的情况下,前视摄像头有可能看不清车道线,环视摄像头斜向下看车道线且可 以提供多个角度,基本不会受到地面积水反光的影响,功能可以比前视做得更稳定。但同时也要考虑侧向 无车灯照射时,摄像头的夜间表现。

左右镜头的光照不同,环境光照过强过弱,不均匀等。

相机间距越小,检测距离越近;相机间距越大,检测距离越远。

遮挡、弱纹理和重复纹理区域、深度不连续区域难以获取高精度和高鲁棒的视差信息,自动标定算法不成熟。

首先,和单目视觉相比双目视觉的成本会更高(无论是多一个摄像头,还是对计算深度图算力的要求),但实话实说还是在可接受的范围内,毕竟和激光雷达比都是小钱,也不需要为单目视觉庞大的训练集买单。

其次,双目视觉本身对于目标的纹理是有要求的,既不能太简单,也不能太复杂。一堵大白墙对于双目视觉来说识别是有风险的,而激光雷达等传感器则可以很好地进行检测。但话说回来,真实场景中也不太可能有一堵大白墙横在路中间,再看看激光雷达的价格,哎,算了吧。

再次,双目视觉对于远距离物体探测的精度是弱于激光雷达的。双目深度的误差是与距离的平方成正比的,而激光雷达的精度基本上和距离无关。

双目立体匹配

PatchMatch SGBM SGM AD-census

【论文阅读】(2023 奥比中光 综述)双目立体视觉研究进展与应用 - 仓颉ZL - 博客园

单目深度估计

zeroDepth 2023

depth-any

单目3D mono

smoke

MonoDLE

CenterNet

Lite-FPN for keypoint-based Monocular 3D object detect

https://www.zhihu.com/question/516518724/answer/3060443825?utm_id=0

qd-3dt

 Complex YOLO

https://zhuanlan.zhihu.com/p/483833539?utm_id=0

MonoDLE

【论文解读】单目3D目标检测 MonoDLE(CVPR2021)-CSDN博客

MonoFlex 2021

【论文解读】单目3D目标检测 MonoFlex(CVPR 2021)-CSDN博客

【单目3D目标检测】MonoFlex论文精读与代码解析-CSDN博客

MonoCD 2024

https://zhuanlan.zhihu.com/p/691322485

朝向预测运动轨迹

添加时序的模型比较大

 

对深度信息的恢复是对3D目标检测最关键的任务

当前case与深度估计所依赖的假设相冲突,所深度估计结果会产生严重的退化。

对一个目标使用多种方法(依赖不同的假设)产生多种深度估计。

MonoDLE

单目3D目标检测——MonoDLE 模型训练 | 模型推理-CSDN博客

使用预训练权重推理

 首先下载预训练权重:

https://drive.google.com/file/d/1jaGdvu_XFn5woX0eJ5I2R6wIcBLVMJV6/view

下载好的权重名称为:checkpoint_epoch_140.pth,新建一个文件夹monocon-pytorch-main/checkpoints/,存放权重

然后修改配置文件experiments/example/kitti_example.yaml

tester:

type: *dataset_type

mode: single # 'single' or 'all'

checkpoint: '../../checkpoints/checkpoint_epoch_140.pth' # for 'single' mode

checkpoints_dir: '../../checkpoints' # for 'all' model

threshold: 0.2 # confidence filter

python ../../tools/train_val.py --config kitti_example.yaml --e

推理完成后,结果存放在experiments/example/outputs/data

生成的结果,和kitii标签格式是一致的。

先将kitti 原始数据testing中label_2备份,将新生成的标签experiments/example/outputs/data复制到kitti 原始数据testing中label_2中,然后可视化。

单目3D检测入门!从图像角度分析3D目标检测场景:MonoDLE-CSDN博客

【论文解读】单目3D目标检测 MonoDLE(CVPR2021)-CSDN博客

https://zhuanlan.zhihu.com/p/452886061

查看工业界 https://www.zhihu.com/question/516518724/answer/3381421318

3D车道线

bev感知算法

Depth-anything v2 深度估计

BEVDepth首次将纯视觉与激光雷达的差距缩到10%以内

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

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

相关文章

C语言链表的操作

初学 初学C语言时,对于链表节点的定义一般是这样的: typedef struct node {int data;struct node *next; } Node; 向链表中添加节点: void addNode(Node **head, int data) {Node *newNode (Node*)malloc(sizeof(Node));newNode->dat…

STM32 OTA 中断向量表重定向

在STM32的OTA(Over-the-Air)升级中,​中断向量表重定向是关键技术需求,其核心原因在于STM32的硬件架构和固件运行机制。以下从原理、实现方式及必要性三个角度详细分析: 一、中断向量表的作用与默认机制 ​中断向量表的…

Win11上安装docker

Win11上安装docker 一、安装WSL(Windows Subsystem for Linux)二、安装docker到D盘三、启动docker四、测试启动容器 一、安装WSL(Windows Subsystem for Linux) 以管理员身份打开cmd 更新WSL wsl --update3. 安装WSL wsl --ins…

Vue3+ElementPlus 开箱即用后台管理系统,支持白天黑夜主题切换,通用管理组件,

Vue3ElementPlus后台管理系统,支持白天黑夜主题切换,专为教育管理场景设计。主要功能包括用户管理(管理员、教师、学生)、课件资源管理(课件列表、下载中心)和数据统计(使用情况、教学效率等&am…

java云原生实战之graalvm 环境安装

windows环境安装 在Windows环境下安装GraalVM并启用原生镜像功能时,需要Visual Studio的组件支持。具体要点如下: 核心依赖: 需要安装Visual Studio 2022或更新版本,并确保勾选以下组件: "使用C的桌面开发"…

Flask-SQLAlchemy_数据库配置

1、基本概念(SQLAlchemy与Flask-SQLAlchemy) SQLAlchemy 是 Python 生态中最具影响力的 ORM(对象关系映射)库,其设计理念强调 “框架无关性”,支持在各类 Python 项目中独立使用,包括 Flask、D…

MySQL高可用架构:复制与集群实战指南

引言 各位数据库爱好者们好!今天我们要深入探讨MySQL高可用架构的核心技术——复制与集群 🏗️。在现代互联网应用中,数据库的高可用性就像建筑物的抗震设计一样重要,直接决定了系统的稳定性和可靠性。本教程将从主从复制原理讲起…

【物联网】基于树莓派的物联网开发【6】——汉化+字体库输入法安装

树莓派系统默认是英文,面向智能设备控制终端或物联网开发场景,需支持中文日志显示与本地化交互。 系统汉化 (1)输入命令sudo raspi-config,然后选择 Localisation 回车 (2)选择 locale 回车 &#xff0…

python新手学习笔记①

本笔记是根据Bilibili里的【3小时超快速入门Python | 动画教学【2025新版】【自学Python教程】【零基础Python】【计算机二级Python】【Python期末速成】】 https://www.bilibili.com/video/BV1Jgf6YvE8e/这个视频合集制作的代码笔记! 1.字符串连接 运行结果 2.…

当通过PHP在线修改文件数组遇到不能及时生效问题

当你通过PHP在线修改文件中的数组(比如配置文件、缓存文件等)后,发现修改不能及时生效,常见原因和解决办法如下: 1. 缓存未刷新 问题描述:PHP应用通常会对配置、数据等做缓存(如Redis、Memcached、OPcache、文件缓存等),导致你修改了文件但实际运行时还是旧内容。解决…

LLaMA-Adapter

一、技术背景与问题 1.1 传统方法的数学局限 二、LLaMA-Adapter 核心技术细节 2.1 Learnable Adaption Prompts 的设计哲学 这种零初始化注意力机制的目的是在训练初期稳定梯度,避免由于随机初始化的适配提示带来的不稳定因素。通过门控因子gl​的自适应调整,在训…

以太联Intellinet带您深度解析PoE交换机的上行链路端口(Uplink Ports)

在当今网络技术日新月异的时代,以太网供电(PoE)交换机已然成为现代网络连接解决方案中不可或缺的“利器”。它不仅能够出色地完成数据传输任务,还能为所连接的设备提供电力支持,彻底摆脱了单独电源适配器的束缚,让网络部署更加简洁…

Linux服务器安全如何加固?禁用不必要的服务与端口如何操作?

保护Linux服务器的安全性对于确保系统的稳定性和数据的保密性至关重要。加固Linux服务器的安全性包括禁用不必要的服务和端口,以减少潜在的攻击面。本文将探讨如何加固Linux服务器的安全性,具体介绍如何禁用不必要的服务和端口,从而提高服务器…

RabbitMQ的核心原理及应用

在分布式系统架构中,消息中间件是实现服务解耦、流量缓冲的关键组件。RabbitMQ 作为基于 AMQP 协议的开源消息代理,凭借高可靠性、灵活路由和跨平台特性,被广泛应用于企业级开发和微服务架构中。本文将系统梳理 RabbitMQ 的核心知识&#xff…

WPF MVVM Community Toolkit. Mvvm 社区框架

Community Toolkit. Mvvm 社区框架 微软官方文档 主要内容:CommunityToolkit.Mvvm 框架 概念,安装,使用(重要API:ObservableObject,RelayCommand)源生成器([ObservableProperty]&…

Mcu_Bsdiff_Upgrade

系统架构 概述 MCU BSDiff 升级系统通过使用二进制差分技术,提供了一种在资源受限的微控制器上进行高效固件更新的机制。系统不传输和存储完整的固件映像,而是只处理固件版本之间的差异,从而显著缩小更新包并降低带宽要求。 该架构遵循一个…

vscode连接WSL卡住

原因:打开防火墙 解决: 使用sudo ufw disable关闭防火墙

FreeSWITCH rtcp-mux 测试

rtcp 跟 rtp 占用同一个端口,这就是 rtcp 复用 Fs 呼出是这样的: originate [rtcp_muxtrue][rtcp_audio_interval_msec5000]user/1001 &echo 需要同时指定 rtcp_audio_interval_msec,否则 rtcp_mux 不能生效 Fs 呼入不需要配置&#xf…

CI/CD的演进之路

CI/CD的演进之路 一、CI/CD的成长演变 早期起源与初步实践:CI/CD的概念可以追溯到软件开发的早期阶段,但真正开始受到关注是在敏捷开发方法兴起之后。在传统的瀑布模型开发模式下,软件开发周期长、发布频率低,更新往往需要数月甚…

Docker 镜像打包到本地

保存镜像 使用 docker save 命令将镜像保存为一个 tar 文件。命令格式如下: docker save [options] IMAGE [IMAGE...]示例:docker save -o centos.tar centos:latest--output 或 -o:将输出保存到指定的文件中。 加载镜像 如果需要在其他机器…