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

单目测距和双目测距 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%以内

相关文章:

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

单目视觉测距原理 单目视觉测距有两种方式。 第一种,是通过深度神经网络来预测深度,这需要大量的训练数据。训练后的单目视觉摄像头可以认识道路上最典型的参与者——人、汽车、卡车、摩托车,或是其他障碍物(雪糕桶之类&#xf…...

weibo_comment_pc_tool | 我于2025.5月用python开发的评论采集软件,根据帖子链接爬取评论的界面工具

本工具仅限学术交流使用,严格遵循相关法律法规,符合平台内容的合法及合规性,禁止用于任何商业用途! 一、背景分析 1.1 开发背景 微博(以下简称wb)是国内极具影响力的社交媒体平台,具有内容形式…...

ubuntu防火墙命令和放行ssh端口

一、关闭UFW防火墙(Ubuntu默认工具) 1. 临时关闭防火墙 sudo ufw disable sudo ufw status # 显示 Status: inactive 表示已关闭 2. 永久禁用防火墙(禁用系统服务) sudo systemctl stop ufw # 立即停止服务 sudo sy…...

PWM讲解+STM32任意频率、占空比、脉宽生成函数介绍

1.PWM讲解 脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制。 脉宽调制 最开始使用PWM时,是做智能车时使用的舵机打角,电机驱动。这都属于比较浅显,普通的应用。下面和大家简单分享一下PWM的…...

C++23 范围迭代器作为非范围算法的输入 (P2408R5)

文章目录 一、引言二、C23及范围迭代器的背景知识2.1 C23概述2.2 范围迭代器的概念 三、P2408R5提案的内容3.1 提案背景3.2 提案内容 四、范围迭代器作为非范围算法输入的优势4.1 代码简洁性4.2 提高开发效率4.3 更好的兼容性 五、具体的代码示例5.1 使用范围迭代器进行并行计算…...

CVE-2018-1273 漏洞深度分析

漏洞概述 CVE-2018-1273 是 Spring Data Commons 中的一个高危远程代码执行(RCE)漏洞,影响版本为 Spring Data Commons 1.13–1.13.10 和 2.0–2.0.5。攻击者通过构造包含恶意 SpEL表达式的 HTTP 请求参数,触发表达式注入&#x…...

C++23:修正常量迭代器、哨兵和范围

文章目录 引言C20范围库回顾C23之前常量迭代器的问题视图可能不传播const代理对象的复杂性泛型代码中的一致性 P2278R4提案及C23的改进std::views::as_const的工作原理代码示例 浅const视图(如std::span)的改进总结 引言 在C的发展历程中,每…...

【漫话机器学习系列】266.雅可比矩阵(Jacobian Matrix)

雅可比矩阵(Jacobian Matrix)详解 | 多变量函数微积分的基石 在深度学习、计算图、优化算法、机器人控制、流形学习等众多领域中,“雅可比矩阵(Jacobian Matrix)”是一个非常核心的数学工具。 这篇文章将结合一张视觉…...

Leetcode 3551. Minimum Swaps to Sort by Digit Sum

Leetcode 3551. Minimum Swaps to Sort by Digit Sum 1. 解题思路2. 代码实现 题目链接:3551. Minimum Swaps to Sort by Digit Sum 1. 解题思路 这一题思路上我实现的非常暴力,就是先求出正确的排列,然后从头考察每一个元素是否处在其目标…...

西门子1200/1500博图(TIA Portal)寻址方式详解

西门子博图(TIA Portal)是西门子公司推出的自动化工程软件平台,广泛应用于工业自动化领域。在编写PLC程序时,寻址方式是一个非常重要的概念,它决定了如何访问和操作PLC中的数据和资源。本文将详细介绍西门子博图中的寻…...

STK手动建链+matlab联调

在右边场景区选择你要建链的卫星,右键在弹出的选项中选择Access 选择你要建链的卫星,这里我选择3轨10星与4轨8星建链,点击compute后再close就行了 建链完成,这里链路的颜色跟起始卫星的颜色一致,要想改变颜色只需改变卫…...

MATLAB中的Switch语句讲解

MATLAB中的Switch语句:一个简单的控制流工具 在MATLAB中,switch语句是一种多分支控制结构,通常用于根据某个表达式的值选择不同的代码块进行执行。它的作用类似于一系列的if-elseif-else语句,但在处理多个条件时,swit…...

【SpringBoot】✈️整合飞书群机器人发送消息

💥💥✈️✈️欢迎阅读本文章❤️❤️💥💥 🏆本篇文章阅读大约耗时3分钟。 ⛳️motto:不积跬步、无以千里 📋📋📋本文目录如下:🎁🎁&am…...

上位机知识篇---流式Web服务器模式的实现

文章目录 前言 前言 本文简单介绍了流式Web服务器模式的实现。...

Go 语言中的一等公民(First-Class Citizens)

在 Go 语言中,一等公民(First-Class Citizens) 是指语言中可以像普通值一样被自由操作的元素,包括赋值、传递、返回等。Go 虽然不是纯粹的函数式语言,但支持多种一等公民,以下是 Go 中常见的 一等公民及其特…...

python3.13版本降为3.12

目录 一、下载Python 二、安装PyCharm 三、 彩蛋 粗糙理解: PyThon是编译器(也可以在命令行编辑,但是麻烦) PyCharm是编辑器 一、下载Python https://repo.huaweicloud.com/python/3.12.9/python-3.12.9-amd64.exe 点击Insta…...

Ubuntu搭建TFTP服务器的方法

0 工具 Ubuntu 18.041 Ubuntu搭建TFTP服务器的方法 在Ubuntu下搭建TFTP服务器可以让我们下载文件到开发板更加方便,同时也可以实现TFTP加载Linux镜像,方便调试。 1.1 安装tftp-hpa(TFTP客户端)、tftpd-hpa(TFTP服务…...

【AI】Ubuntu 22.04 4060Ti16G 基于SWIFT框架的LoRA微调 模型Qwen3-1.8B 数据集弱智吧 微调笔记

下载Qwen3-1.8B 先更新安装modescope,然后下载模型 pip install -U modelscope modelscope download --model Qwen/Qwen3-1.7B 下载日志 部署模型 参考:【AI】Ubuntu 22.04 4060Ti 16G vllm-api部署Qwen3-8B-FP8_wsl ubantu rtx4060 vllm镜像-CSDN博…...

系分论文《论信息系统缓存的分析和应用》

【摘要】 2023年3月,我作为系统分析师参与了某大型电商平台"云端购物中心"的性能优化项目。该项目日均订单量突破200万,但在促销高峰期频繁出现系统响应迟缓、数据库过载等问题。本项目以构建多级缓存体系为核心,通过系统化分析缓存应用场景和技术选型,重构了平…...

3.4/Q2,Charls最新文章解读

文章题目:Associations between reversible and potentially reversible cognitive frailty and falls in community-dwelling older adults in China: a longitudinal study DOI:10.1186/s12877-025-05872-2 中文标题:中国社区老年人可逆性和…...

Bash fork 炸弹 —— :(){ :|: };:

🧠 什么是 Fork 炸弹? Fork 炸弹是一种拒绝服务(DoS)攻击技术,利用操作系统的 fork() 系统调用不断创建新进程,直到系统资源(如进程表、CPU、内存)被耗尽,从而使系统无法…...

HarmonyOS AVPlayer 音频播放器

鸿蒙文档中心:使用AVPlayer播放视频(ArkTS)文档中心https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/video-playback 这张图描述的是 HarmonyOS AVPlayer 音频播放器的状态流转过程,展示了 AVPlayer 在不同状态之间的切换条件和关键操作…...

symfonos: 2靶场

symfonos: 2 来自 <https://www.vulnhub.com/entry/symfonos-2,331/> 1&#xff0c;将两台虚拟机网络连接都改为NAT模式 2&#xff0c;攻击机上做namp局域网扫描发现靶机 nmap -sn 192.168.23.0/24 那么攻击机IP为192.168.23.182&#xff0c;靶场IP192.168.23.253 3&…...

微服务项目->在线oj系统(Java版 - 2)

相信自己,终会成功 微服务代码: lyyy-oj: 微服务 接口文档定义 响应数据定义: 响应数据格式:通常&#xff0c;HTTP API 的响应数据采用 JSON 格式 例如:成功响应&#xff08;带数据&#xff09; {"code": 200,"message": "查询成功","…...

整理了 2009 - 2025 年的【199 管综真题 + 解析】PDF,全套共 34 份文件

每年真题原卷 ✅ 每年详细解析 ✅ &#x1f4c2;【管综真题 2009-2025】 &#x1f4c2;【管综解析 2009-2025】 目录树&#xff1a; ├── 2009-2025管综真题 PDF │ ├── 2009年199管综真题.pdf │ ├── 2010年199管综真题.pdf │ ├── 2011年199管综真题.pd…...

HarmonyOS 与 OpenHarmony:同根而不同途

HarmonyOS 与 OpenHarmony&#xff1a;同根而不同途 引言 在操作系统领域&#xff0c;HarmonyOS 和 OpenHarmony 这两个名字频繁出现&#xff0c;它们之间既存在着千丝万缕的联系&#xff0c;又有诸多显著的区别。对于开发者和相关从业者而言&#xff0c;深入了解两者的差异点…...

并发编程(4)

final修饰 1. 用final修饰类 当一个类被final修饰时&#xff0c;意味着它不能被其他类继承&#xff0c;也就是该类无法派生出子类。像 Java 中的String类就是典型的final类。 public final class FinalClass {// 类的内容 }// 下面的代码会报错&#xff0c;因为FinalClass不…...

合并K个升序链表

目录 合并 K 个升序链表 解题思路 ListNode 数组方式给出 k 个链表 ArrayList 方式给出 k 个链表 ArrayList常见操作 合并 K 个升序链表 题目描述 给你一个链表数组&#xff0c;每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中&#xff0c;返回合并后…...

UART、SPI、IIC复习总结

一、UART 1、UART和USART的异同&#xff1f; 相同点 基本功能&#xff1a;都是用于串行通信的数据收发设备&#xff0c;能够实现数据在不同设备之间的传输。在异步通信模式下&#xff0c;二者的工作方式相似&#xff0c;都使用起始位、数据位、校验位&#xff08;可选&#…...

【AWS入门】Amazon Bedrock简介

【AWS入门】Amazon Bedrock简介 [AWS Essentials] Brief Introduction Amazon Bedrock By JacksonML 1. 引言 Amazon Bedrock&#xff0c;在AWS官网&#xff0c;映入眼帘的第一句话就是&#xff0c;“使用基础模型构建和扩展生成式人工智能应用程序的最简单方法”。如下图所…...

报告精读:华为2024年知行合一通信行业数据治理实践指南报告【附全文阅读】

《华为 2024 年知行合一通信行业数据治理实践指南报告》聚焦通信行业数据治理&#xff0c;指出在数字化转型背景下&#xff0c;通信行业面临数据量庞大、类型多样、时效要求高、价值密度低、安全要求高等特点与数据质量、汇聚、开放等难点。报告提出通信行业数据治理需构建包含…...

Eigen与OpenCV矩阵操作全面对比:最大值、最小值、平均值

功能对比总表 功能Eigen 方法OpenCV 方法主要区别最大值mat.maxCoeff(&row, &col)cv::minMaxLoc(mat, NULL, &maxVal, NULL, &maxLoc)Eigen需要分开调用&#xff0c;OpenCV一次获取最小值mat.minCoeff(&row, &col)cv::minMaxLoc(mat, &minVal, NU…...

机器学习(12)——LGBM(1)

文章目录 LightGBM算法详解1. 算法背景2. 核心创新2.1 基于直方图的决策树算法2.2 单边梯度采样(GOSS)2.3 互斥特征捆绑(EFB) 3. 算法细节3.1 树生长策略3.2 特征并行与数据并行3.3 类别特征处理 4. 关键参数说明4.1 核心参数4.2 控制速度参数4.3 控制过拟合参数 5. 与XGBoost对…...

深入理解TCP与UDP:协议对比、头部结构与连接管理

一、TCP与UDP的核心区别 特性TCPUDP连接特性面向连接&#xff08;三次握手建立连接&#xff09;无连接&#xff0c;直接传输数据可靠性通过确认重传、排序、流控保证可靠尽力交付&#xff0c;不保证数据到达流量控制支持滑动窗口机制调节发送速率不支持数据分段支持大数据分段…...

Flask快速入门和问答项目源码

Flask基础入门 源码&#xff1a; gitee&#xff1a;我爱白米饭/Flask问答项目 - 码云 目录 1.安装环境2.【debug、host、port】3.【路由params和query】4.【模板】5.【静态文件】6.【数据库连接】6.1.安装模块6.2.创建数据库并测试连接6.3.创建数据表6.4.ORM增删改查 6.5.ORM模…...

python创建flask项目

好的&#xff0c;我会为你提供一个使用 Flask、pg8000 和 Pandas 构建的后台基本框架&#xff0c;用于手机理财产品 App 的报表分析接口。这个框架将包含异常处理、模块化的结构以支持多人协作&#xff0c;以及交易分析和收益分析的示例接口。 项目结构: financial_report_ap…...

Flink 的窗口机制

&#x1fa9f; 1. 基于时间驱动的滚动时间窗口&#xff08;Tumbling Time Window - Time-based&#xff09; ✅ 定义&#xff1a; 每隔固定的时间周期开启一个新的窗口。窗口之间不重叠。 &#x1f552; 示例&#xff1a; DataStream<Tuple2<String, Integer>>…...

STM32 OTA 中断向量表重定向

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

先说爱的人为什么先离开

2025年5月19日&#xff0c;15~23℃&#xff0c;贼好的一天&#xff0c;无事发生 待办&#xff1a; 2024年税务申报 《高等数学2》取消考试资格学生名单 《物理[2]》取消考试资格名单 5月24日、25日监考报名 《高等数学2》备课 《物理[2]》备课 职称申报材料 教学技能大赛PPT 遇…...

OnlyOffice秘籍系列.6-表格保护功能详解-灵活设置单元格的权限

最近很多用户在咨询是否可以提供一个灵活控制表格权限的在线协同编辑表格,这里和大家分享如果用OnlyOffice在线表格实现。 OnlyOffice 是一款功能强大的在线协作办公套件&#xff0c;其表格工具&#xff08;Spreadsheet Editor&#xff09;提供了完善的数据保护机制&#xff0c…...

LLM笔记(八)Transformer学习

文章目录 1. Transformer 整体架构2. 核心组件详解2.1. 输入部分 (Input Embedding & Positional Encoding)2.2. 注意力机制 (Attention Mechanism)2.2.1. Padding Mask (填充掩码)2.2.2. Sequence Mask (Look-ahead Mask / Subsequent Mask / Causal Mask) 2.3. Multi-Hea…...

Vue 3 中使用 md-editor-v3 的完整实例markdown文本

下面我将提供一个完整的 Vue 3 项目中使用 md-editor-v3 的 Markdown 编辑器实现&#xff0c;包含常用功能和最佳实践。 1. 基础实现 安装依赖 npm install md-editor-v3也可以是pnpm安装 pnpm install md-editor-v3基础编辑器组件 (BasicEditor.vue) <template> &l…...

OpenCV-图像分割

实验1 实验内容 上述代码通过使用OpenCV和Matplotlib库来执行以下操作&#xff1a; 读取名为’kt.jpg’的图像文件&#xff0c;并存储在变量img中。将图像img转换为灰度图像&#xff0c;将其存储在变量gray中。使用cv2.threshold函数对灰度图gray进行阈值化处理&#xff0c;…...

Vue-计算属性

计算属性 案例 输入姓、名&#xff0c; 全名称姓名 实现 插值语法 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><title>计算属性与监视</title><!-- 引入Vue --><script type&…...

16. 通用配置文件开发.py

16. 通用配置文件开发.py 一、配置文件架构设计 1.1 模块化结构规划 #mermaid-svg-Iuex47psGWeZj6XQ {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Iuex47psGWeZj6XQ .error-icon{fill:#552222;}#mermaid-svg-Iu…...

Python训练营打卡 Day29

复习日&#xff1a;类的装饰器 知识点回顾 类的装饰器&#xff1a;餐厅升级计划 假设你是一家餐厅的老板&#xff0c;餐厅已经运营了一段时间&#xff0c;但你希望提升服务质量&#xff0c;比如在每道菜上增加一些特别的服务&#xff08;比如日志记录、额外的装饰等&#xff09…...

解决 Tailwind CSS 代码冗余问题

解决 Tailwind CSS 代码冗余问题 Tailwind CSS 确实可能导致 HTML 类名过长和冗余的问题&#xff0c;以下是几种有效的解决方案&#xff1a; 1. 使用 apply 指令提取重复样式 /* 在CSS文件中 */ .btn {apply px-4 py-2 rounded-md font-medium; }.card {apply p-6 bg-white …...

【藏经阁】加密机服务完整解决方案,包含客户端+服务端

前言 你是否存在这样的苦恼&#xff0c;数据需要安全存储&#xff0c;但是每个系统大家自己写&#xff0c;很浪费时间。 encryption-local 一个离线版本的金融敏感信息加解密工具&#xff0c;用于数据库敏感信息存储。 离线版本的加解密好处是非常的方便。不过缺点也比较明显…...

互联网大厂Java求职面试:AI与大模型应用集成及云原生挑战

互联网大厂Java求职面试&#xff1a;AI与大模型应用集成及云原生挑战 面试场景设定 郑薪苦是一位具有搞笑风格但技术潜力巨大的程序员&#xff0c;正在接受一位严肃专业的技术总监面试。 第一轮提问 面试官&#xff1a;在我们公司的短视频平台中&#xff0c;需要处理千万级…...

ffmpeg -vf subtitles添加字幕绝对路径问题的解决方法

今天遇到奇怪的问题&#xff0c;老是报 Unable to parse option value Error applying option original_size to filter subtitles: Invalid argument 踩坑很长时间&#xff0c;记录下 因subtitles需要指定绝对路径&#xff0c; 注意点&#xff1a; 外面要用单引号 不能…...