康谋方案 | BEV感知技术:多相机数据采集与高精度时间同步方案
随着自动驾驶技术的快速发展,车辆准确感知周围环境的能力变得至关重要。BEV(Bird's-Eye-View,鸟瞰图)感知技术,以其独特的视角和强大的数据处理能力,正成为自动驾驶领域的一大研究热点。
一、BEV感知技术概述
BEV感知技术,是一种从鸟瞰图视角(俯视图)出发的环境感知方法。与传统的正视图相比,BEV视角具有尺度变化小、视角遮挡少的显著优势,有助于网络对目标特征的一致性表达。基于这样的优势,可以更有效的对车辆周围环境进行感知。
图1:BEV 感知图
因此,在自动驾驶感知任务中,BEV感知算法通常包括分类、检测、分割、跟踪、预测、计划和控制等多个子任务,共同构建起一个完整的感知框架。
BEV感知算法的数据输入主要有图像和点云两种形式。根据数据源不同,BEV算法主要分为BEV Camera(纯视觉)、BEV LiDAR(基于激光雷达)和BEV Fusion(多模态融合)三类。其中,图像数据具有纹理丰富、成本低的优势,此外,基于图像的任务、基础模型相对成熟和完善,比较容易扩展到 BEV 感知算法中。
为了更好的训练BEV Camera感知算法,往往需要先搭建一个高质量的数据集。而搭建一套BEV感知数据采集系统,通常包括以下几个关键环节:
1. 硬件选型与集成:选合适的摄像头和计算采集平台,集成稳定系统。
2. 数据采集:在实际环境中采集图像数据,覆盖不同场景、光照和天气。
3. 时间同步:确保不同传感器数据时间精确同步,是后续算法训练的必要前提。
4. 系统调试和部署:调试系统确保组件协同工作,部署到实际应用环境。
因此,在实际搭建过程中,常会遇到技术复杂性高、成本投入大、数据质量与时间同步实现难、系统稳定性与可靠性要求高等挑战。针对这些问题,康谋推出一套BEV Camera数据采集方案,能高效搭建高质量的BEV感知数据集,加速算法研发和训练。
二、BEV Camera数据采集系统方案
BEV Camera数据系统采集方案以BRICKplus为核心系统平台,通过扩展PCIe Slot ETH6000模块连接6个iDS相机,利用GPS接收模块获取卫星时钟信号,提供XTSS时间同步服务,并支持13路(g)PTP以太网接口,确保高精度时间同步。
BRICKplus搭载BRICK STORAGEplus硬盘,提供大容量高速存储,满足高带宽数据采集需求,确保数据的完整性和可靠性。
图2:系统集成
三、数据采集
在BEV Camera数据采集方案中,难点在于如何同步多相机的采集动作、确保数据的高精度时间同步以及高效传输。因此,在整个软件方面,我们采用ROS+PEAK SDK方案进行深度集成,实现了多相机的参数配置、数据采集与传输。
为了更灵活应对实际采集环境需求,对相机(如曝光时间、帧率和分辨率等)参数进行了统一管理和存储,这些参数可在节点启动时通过配置文件动态加载,为相机的初始化提供了灵活性。
图3:相机参数配置
为实现多相机的同步采集和高效传输,我们利用了ROS的多线程和节点管理功能。通过为每个相机创建独立的采集线程,并启动采集循环,确保了每个相机的采集过程独立且高效。引入全局控制信号与信号处理机制,确保了统一管理所有相机的采集和同步结束状态。
图4:相机实时可视化
四、时间同步
为了实现多相机的时间同步,一般有两种方式:软时间同步和硬件时间同步。软时间同步主要依赖于软件层面的算法和协议来实现时间同步。其精度通常在微秒级别,适用于对时间同步精度要求不是较高的场景。
图5:多相机软件时间同步
为了应对时间同步精度要求较高的采集场景,如自动驾驶和高精度测量等。在BEV Camera数据采集方案中,进一步支持相机进行硬件时间同步。通过XTSS软件可以有效管理数采平台的时间同步功能,能够快速轻便配备各个传感器的时间同步配置。
图6:XTSS 时间同步管理
通过GPS模块提供高精度的时间基准,并利用支持硬件时间戳的以太网接口直接捕获数据包的时间戳。其时间同步精度可以达到纳秒级别,具备高稳定性,不受软件和网络延迟影响。
图7:多相机硬件时间同步
五、总结
在自动驾驶技术的快速发展中,BEV Camera数据采集系统的构建至关重要。通过采用BRICKplus平台,结合PCIe Slot ETH6000模块和iDS相机,我们实现了多相机的高效数据采集和存储。通过ROS+PEAK SDK的深度集成,实现了多相机的参数配置、数据采集与传输。利用GPS接收模块和XTSS时间同步服务,确保了多相机的高精度时间同步。
康谋的BEV Camera数据采集方案有效解决了多相机同步采集和高精度时间同步的难题,还提供了灵活的相机参数配置和高效的数据传输,能够满足自动驾驶和高精度测量等场景的需求。
我是分析自动驾驶技术的康谋
期待与您的进一步交流。
时间同步方案 - 高精度时间同步方案 | (g)PTP以太网时间同步方案 | 高精度硬件晶振时间同步 | 康谋科技https://keymotek.com/solution_time-synchronization/
相关文章:

康谋方案 | BEV感知技术:多相机数据采集与高精度时间同步方案
随着自动驾驶技术的快速发展,车辆准确感知周围环境的能力变得至关重要。BEV(Birds-Eye-View,鸟瞰图)感知技术,以其独特的视角和强大的数据处理能力,正成为自动驾驶领域的一大研究热点。 一、BEV感知技术概…...

【重新认识C语言----结构体篇】
目录 -----------------------------------------begin------------------------------------- 引言 1. 结构体的基本概念 1.1 为什么需要结构体? 1.2 结构体的定义 2. 结构体变量的声明与初始化 2.1 声明结构体变量 2.2 初始化结构体变量 3. 结构体成员的访…...

#渗透测试#批量漏洞挖掘#Splunk Enterprise for Windows 任意文件读取漏洞( CVE-2024-36991)
免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停…...
苹果公司宣布正式开源 Xcode 引擎 Swift Build145
2025 年 2 月 1 日,苹果公司宣布正式开源 Xcode 引擎 Swift Build145。 Swift 是苹果公司于 2014 年推出的一种开源编程语言,用于开发 iOS、iPadOS、macOS、watchOS 和 tvOS 等平台的应用程序。 发展历程 诞生:2014 年,苹果在全球…...

7.list
本篇博客梳理C的STL中的list容器 一、list的基本结构与使用 1.list的介绍 list的底层是带头循环双向链表 带头:含哨兵位 循环:尾节点的next指针指向哨兵位 双向:每个节点具有两个指针域,一个指针指向前一个结点 2…...

Qt+海康虚拟相机的调试
做机器视觉项目的时候,在没有相机或需要把现场采集的图片在本地跑一下做测试时,可以使用海康的虚拟相机调试。以下是设置步骤: 1.安装好海康MVS软件,在菜单栏->工具选择虚拟相机工具,如下图: 2.打开虚拟…...
数据库基础练习4(有关索引,视图完整解答)
建立需要的表 学生表 mysql> create table studnet(sno int primary key auto_increment,sname varchar(30) not null unique,ssex varchar(2) check (ssex男 or ssex女) not null ,sage int not null,sdept varchar(10) default 计算机 not null); Query OK, 0 rows affe…...

实操给触摸一体机接入大模型语音交互
本文以CSK6 大模型开发板串口触摸屏为例,实操讲解触摸一体机怎样快速增加大模型语音交互功能,使用户能够通过语音在一体机上查询信息、获取智能回答及实现更多互动功能等。 在本文方案中通过CSK6大模型语音开发板采集用户语音,将语音数据传输…...
Excel中对单列数据进行去重筛选
在Excel中对单列数据进行去重筛选,可以按照以下步骤操作: 方法一:使用“删除重复项”功能 选择数据列:点击要处理的列头(如A列)。打开“删除重复项”: Excel 2007及以后版本:点击“…...
K8s —基础指南(K8s - Basic Guide)
K8s —基础指南 K8s 是云上部署容器化应用的事实标准。它作为容器的强大编排器,管理容器重启、负载均衡等任务。 理解 Kubernetes 架构 Kubernetes 的关键功能之一是为访问 Pod 提供稳定的端点,尽管 Pod 本身是短暂的。Kubernetes 服务有效地弥补了这…...
ABAP开发中的前导零和末尾零
前导零和末尾零是指分别出现在数字序列中第一个非零数字之前和最后一个非零数字之后的任何零数字。 关于前导 0 在 SAP 系统中,大多数字母数字字段在数据库中存储时都带前导零,完全占用字段的定义长度。但是,当字段显示给最终用户时&#x…...

Baklib赋能数字内容体验个性化推荐提升用户体验的未来之路
内容概要 随着数字化时代的不断发展,用户对内容消费的需求日益多样化,个性化推荐成为提升用户体验的重要手段。Baklib以其先进的技术手段,在数字内容领域内积极推动个性化推荐的实施,从而满足用户在信息获取和内容消费中的独特需…...

关于Redis的持久化
目录 RDB 1.手动触发 2.自动触发 AOF aof的重写机制 Redis虽然是一个内存数据库,但是也是可以将数据存储到硬盘中的,也就是持久化。硬盘的数据是在Redis重启的时候,用来恢复内存中的数据的,即对数据做了一个备份。Redis实现持…...

【C语言标准库函数】指数与对数函数:exp(), log(), log10()
目录 一、头文件 二、函数简介 2.1. exp(double x) 2.2. log(double x) 2.3. log10(double x) 三、函数实现(概念性) 3.1. exp(double x) 的模拟实现 3.2. log(double x) 和 log10(double x) 的模拟实现 四、注意事项 4.1. exp(double x) 的注…...
2024美团春招硬件开发笔试真题及答案解析
目录 一、选择题 1、在 Linux,有一个名为 file 的文件,内容如下所示: 2、在 Linux 中,关于虚拟内存相关的说法正确的是() 3、AT89S52单片机中,在外部中断响应的期间,中断请求标志位查询占用了()。 4、下列关于8051单片机的结构与功能,说法不正确的是()? 5、…...
Python内置函数map(), list(), len(), iter(), hex(), hash()的详细解析,包括功能、语法、示例及注意事项
1. map(function, iterable, ...) 功能:对可迭代对象中的每个元素应用指定函数,返回一个迭代器。 参数: function:要执行的函数(可以是lambda表达式)。 iterable:一个或多个可迭代对象&#x…...

[LVGL] 在VC_MFC中移植LVGL
前言: 0. 在MFC中开发LVGL的优点是可以用多个Window界面做辅助扩展【类似GUIguider】 1.本文基于VC2022-MFC单文档框架移植lvgl8 2. gitee上下载lvgl8.3 源码,并将其文件夹改名为lvgl lvgl: LVGL 是一个开源图形库,提供您创建具有易于使用…...

MySQL视图索引操作
创建学生表; mysql> create table Student(-> Sno int primary key auto_increment,-> Sname varchar(30) not null unique,-> Ssex char(2) check (Ssex男 or Ssex女) not null,-> Sage int not null,-> Sdept varchar(10) default 计算机 not …...

一次奇怪的空指针问题分析:事务、死锁与隐式回滚
最近我们在排查一个诡异的 空指针异常,整个分析过程可以说是跌宕起伏,最终的结论也颇具隐蔽性。今天就把这个问题分享出来,希望对大家有所帮助。 问题现象 在系统中,我们有 单据 B,它通过一个 关联 ID 字段与 上级单…...

解决aspose将Excel转成PDF中文变成方框的乱码问题
原文网址:解决aspose将Excel转成PDF中文变成方框的乱码问题_IT利刃出鞘的博客-CSDN博客 简介 本文介绍如何解决aspose将Excel转成PDF中文变成方框的乱码问题。 问题描述 用aspose将word、excel等转成PDF后,英文展示正常,但中文全部变成了…...

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

376. Wiggle Subsequence
376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...

用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...

【VLNs篇】07:NavRL—在动态环境中学习安全飞行
项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战,克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...

人机融合智能 | “人智交互”跨学科新领域
本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...

无人机侦测与反制技术的进展与应用
国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机(无人驾驶飞行器,UAV)技术的快速发展,其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统,无人机的“黑飞”&…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配
目录 一、C 内存的基本概念 1.1 内存的物理与逻辑结构 1.2 C 程序的内存区域划分 二、栈内存分配 2.1 栈内存的特点 2.2 栈内存分配示例 三、堆内存分配 3.1 new和delete操作符 4.2 内存泄漏与悬空指针问题 4.3 new和delete的重载 四、智能指针…...

Razor编程中@Html的方法使用大全
文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...
OD 算法题 B卷【正整数到Excel编号之间的转换】
文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的:a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...