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

友思特分享 | 车载同步技术创新:多相机系统如何实现精准数据采集与实时处理?

导读

车载多相机采集系统是智能驾驶技术实际应用中的“眼睛”,友思特车载图像采集和回放系统切实提升了系统的实时同步采集与回放能力,为ADAS等应用的决策系统提供了可靠的核心数据。


视频流同步采集与智驾技术发展

在现代汽车行业中,智能驾驶技术正以惊人的速度发展,引领着交通领域的革新。这一技术的崛起,不仅改变了传统驾驶方式,更在安全性、舒适性和效率方面带来了前所未有的提升。作为智能驾驶技术的核心组成部分,车载多相机系统发挥着举足轻重的作用。它们通过高精度、高速度的图像捕捉与处理,为车辆提供了全方位、无死角的视觉感知能力,从而极大地增强了驾驶过程中的环境感知和决策准确性。

随着科技的不断进步,车载多相机系统也在不断升级和完善,以适应更为复杂多变的驾驶场景。为了实现高级驾驶辅助系统(ADAS)自动驾驶的精准功能,车载多相机系统必须确保视频流的同步采集。车辆上传感器和相机数量的不断增多的现状,对视频流的实时处理和数据融合技术也提出了更为严苛的要求。这种技术的创新,不仅关乎车辆的安全性能,更在自动驾驶的精确感知与决策中发挥着不可或缺的作用。因此,探索先进的同步采集方案,以实现车载多相机系统数据的高效处理,已成为推动智能驾驶技术发展的当务之急。

图片

图1. 车载多相机数采系统

(图片来源:Solectrix官网 https://solectrix.de/en/)

为了适配智能驾驶技术的数采要求,市场上各色的采集板卡、采集系统和方案层出不穷。首先为了同时采集多路实时视频数据,采集板卡/系统对通道数量进行了拓展,从传统的一两路视频数据,拓展至4/6/8/16路视频数据;在异步的场合,基于先前收集的真实环境数据或仿真的自动驾驶数据,板卡/系统需要回放带有时间戳的视频数据,用于诸如硬件在环(HiL)测试的场合,同时也对通道数量进行了拓展;在同步的场合,采集数据的同时,需要旁通数据,将同样的数据镜像同时分路,用于诸如存储、处理、显示等目的,也同样对通道数量进行了拓展,进一步满足多样化的需求。

a.采集模式:同时最多8个视频流

图片

b.回放模式:同时最多4个视频流

图片

c.TAP模式:同时最多4个视频流输入和输出 

图片

图2. 友思特车载采集卡视频数据采集回放经典配置

多路数据满足多相机实时采集的同时,对硬件性能如带宽、实时性和数据传输协议也提出了高要求。在硬件性能上,息息相关的是最终产品的价格,影响的是产品应用过程中的性能上限;而数据传输协议,则是关乎数据传输实时性准确率、实际传输速率的核心技术点。友思特 proFRAME 车载采集和回放板卡,应用了SerDes技术,为车载多相机的实时采集和记录回放提供了一种可行可靠的技术路线。

SerDes原理结构

SerDes核心包括串行器(Serializer)和解串器(Deserializer),是一种用于高速数据传输的接口技术。它通过将并行数据流转换为串行数据流,从而提高数据传输速率,并在接收端再将串行数据流转换回并行数据流。核心工作原理包括两部分:

串行化:SerDes的发送端(串行器)从本地系统接收并行数据作为输入,通过FIFO传递给内部的编码器、扰码器,然后将其转换为串行数据并将其作为单个数据流,经由均衡器均衡后通过同轴或双绞线电缆等串行传输通道进行传输。这种方式能显著提高数据传输效率。串行化数据时,串行器使用参考时钟的输入作为编码过程的一部分,从而最大限度地减少并行传输中发现的时序问题类型。

反串行化:SerDes的接收端(解串器)接收串行数据作为输入,经由均衡器均衡,通过CDR(时钟恢复)恢复时钟信号,并将其转换恢复为对齐的并行数据流输出,以便进一步处理。

图片

图3. SerDes原理

(图片来源:维基百科https://en.wikipedia.org/wiki/SerDes)

SerDes技术在现代数据传输中发挥了关键作用。它通过将高带宽的并行数据流转换为串行信号,实现了更高的数据传输速率更长的传输距离。此技术有效减少了电路板上的布线复杂性,从而降低了系统成本和功耗,并提升了系统的可靠性。SerDes还支持长距离传输,增强了信号的抗干扰能力,使得数据完整性得以保持。通过优化数据传输路径和提高速率,SerDes技术显著提升了系统性能,广泛应用于通信、计算机和存储领域,为高效、稳定的数据传输提供了重要保障。

友思特车载图像采集和回放系统

为了获取汽车的 360° 全景环视图像,需要在汽车的前后左右各设置一个或多个相机。以分辨率为3840*2160、帧率为60、输出图像数据格式为 RAW10 为例,单路视频数据传输带宽要求 ≥5 Giga bit/s

传输链路①:相机实时获取的视频流数据→车载 ADAS/AD ECU:

前端 GMSL/FPD-Link 相机的 CMOS 图像传感器捕获光信号并转换为电信号,生成原始图像数据。在相机内部经过处理(如去噪、增益、色彩校正等)后通过相机的串行芯片进行串行化,转为 CSI-2 标准的数据格式,通过同轴线缆(Coax)传输到 proFRAME 板卡,经过相机适配器的解串芯片进行解码,将串行数据流恢复成并行的 CSI-2 图像数据格式,传送至板卡的 FPGA 模块进行处理。图像数据经由板卡的 FPGA 模块,同步分出两路数据,一路数据传输至 ADAS 数采设备存储记录,另一路数据重新经过相机适配器的串行化芯片进行串行输出,通过同轴线缆传输到前端的 ECU 设备进行解串,恢复成并行图像数据,用于可视化或其他调试处理目的。

图片

图4. 多相机数采系统数据传输链路

传输链路②:车载 ADAS/AD ECU 的相机控制信号→相机:

ECU 的相机控制信号指令(如I2C和GPIO),通过同轴线缆传输,经由 proFRAME 板卡,多路同时旁通至相机端。I2C 用于设备间的通信,包括配置相机的工作参数(如曝光、增益调整等),GPIO 用于控制相机的行为(如相机的启停、触发拍摄等)。板卡也支持通过同轴线缆给相机供电(PoC)。

友思特 proFRAME 板卡多路图像数据实时采集和回放功能通过其 TAP 模式实现。TAP(Test Access Point)是一种能够从传输网络或系统中分离出数据流并用于其他目的的工具,能够在不干扰主数据流的情况下,提供对数据进行访问和分析的接口。通过 proFRAME 的 TAP 模式,板卡可以旁通(bypass)多种类型的数据,包括携带高精度时间戳的视频流、相机控制信号指令、外部触发信号和 PoC 供电等。

图片

图5.proFRAME旁通ECU的PoC

友思特 proFRAME 板卡提供了3种给相机供电(8V-24V)的方式:

  1. 直接主机给板卡供电,板卡通过稳压器将电压经由Coax传输至前端相机;

  2. 外部电源连接板卡的相机适配器,经由相机适配器的Coax传输至前端相机;

  3. 基于板卡的TAP模式,将ECU提供的PoC旁通至所连接的前端相机。

图片

图6. proFRAME旁通ECU的触发信号

车载场合对于多传感器数据融合以及时间同步的要求非常高,例如要将2D图像和激光雷达的点云图像进行融合、实现对点云数据的颜色渲染;或者基于2D图像识别结果的box框对点云数据进行分割,从而获取目标的三维位姿 cube。友思特 proFRAME 板卡提供了4种向相机发送同步触发信号实现相机同步的方式:

  1. 板卡内部的FPGA生成时钟信号传输至相机;

  2. 外部触发源通过板卡的外部触发信号口传输至FPGA再转送至相机;

  3. 多proFRAME板卡通过Daisy链拓扑结构同步;

  4. ECU发送触发信号,经由板卡的TAP模式,旁通至相机。

图片

图7. 友思特proFRAME图像采集和回放板卡

友思特 proFRAME 板卡采用模块化设计的方式,通过切换不同的相机适配器模块,适配包括 GMSL 1/2/3FPD - Link III/IVGVIF3CSI-2 多种传输协议的接口相机/视频流。板卡支持同轴线缆供电边带通信(I2C和GPIO),可同时进行多路视频数据的采集和回放(多至8路),且采集数据携带纳秒级别的高精度时间戳,并能够以时间戳信息精准同步回放视频流,通过TAP模式旁路各种数据,在ADASEoL测试和 AD的硬件在环测试领域都大有建树。

总结

车载多相机实时同步采集系统在新能源汽车及智能驾驶领域扮演着至关重要的角色。系统通过高精度、高速度的图像数据采集,为车辆的环境感知、行驶状态监测以及驾驶辅助提供了强有力的技术支持。

随着自动驾驶技术的不断深入发展,车载相机系统的要求也日益严苛,不仅需要具备高分辨率广视角的成像能力,还必须在各种复杂环境下保持稳定的性能。面对未来智能驾驶的多元化需求,车载多相机实时同步采集系统将持续融合新兴技术,如深度学习、计算机视觉等AI技术,以提升系统的智能化水平。同时,不断优化相机之间的同步性能和图像处理算法,确保在多变的行车环境中能够实时、准确地捕捉关键信息,为车辆的决策系统提供可靠的数据基础。

从长远来看,智能驾驶技术将是未来交通出行的重要发展方向。车载多相机实时同步采集系统作为智能驾驶的“眼睛”,其技术创新和性能提升将直接推动智能驾驶的发展,助力实现更安全、更高效的绿色出行。同时,随着技术的不断进步和成本的优化,这一系统有望在未来实现更广泛的商业应用,为智能交通和绿色出行贡献重要力量。


了解更多?欢迎探索丰富案例:https://viewsitec.com/proframe-grabber/

相关文章:

友思特分享 | 车载同步技术创新:多相机系统如何实现精准数据采集与实时处理?

导读 车载多相机采集系统是智能驾驶技术实际应用中的“眼睛”,友思特车载图像采集和回放系统切实提升了系统的实时同步采集与回放能力,为ADAS等应用的决策系统提供了可靠的核心数据。 视频流同步采集与智驾技术发展 在现代汽车行业中,智能驾…...

grafana failed to load dashboard from file= ... json error=EOF

问题描述 使用 prometheus-community/kube-prometheus-stack helm chart 部署 prometheus 监控后,查看 grafana pod 有如下报错 logger=provisioning.dashboard type=file name=default t=2024-10-17T06:30:47.937121541Z level=error msg...

【前端学习】AntV G6-09 复杂的自定义边、边动画

课程视频 AntV G6:复杂的自定义边、边动画(上)_哔哩哔哩_bilibili AntV G6:复杂的自定义边、边动画(下)_哔哩哔哩_bilibili 讲义截图 提及链接 https://codesandbox.io/p/sandbox/register-polyline-get…...

极狐GitLab 发布安全补丁版本 17.4.2, 17.3.5, 17.2.9

本分分享极狐GitLab 补丁版本 17.4.2, 17.3.5, 17.2.9 的详细内容。 极狐GitLab 正式推出面向 GitLab 老旧版本免费用户的专业升级服务,为 GitLab 老旧版本进行专业升级,详情可以查看官网 GitLab 专业升级服务指南 今天,极狐GitLab 专业技术…...

MATLAB智能算法 - Immunity Algorithm免疫算法

Immunity Algorithm免疫算法 智能算法是路线规划、深度学习等等一系列领域所使用的优化算法,是算法进阶之路的必备之路。 前言:本文主要围绕解决TSP旅行商问题展开,对于机器人的路线规划以及非线性方程求解的问题等解决方案 对于一些其他智能…...

学习eNSP对提升就业竞争力有多大帮助?

学习eNSP(Enterprise Network Simulation Platform)对提升就业竞争力有显著帮助,具体表现在以下几个方面: 1. **增强专业技能**:通过eNSP,你可以模拟华为的网络设备,进行网络设计、配置和故障排…...

Molmo和PixMo:为最先进的多模态模型提供开放权重和开放数据

摘要 https://arxiv.org/pdf/2409.17146 当今最先进的多模态模型仍然是专有的。性能最强的开源模型严重依赖专有视觉语言模型(Vision-Language Model,简称VLM)的合成数据来获得良好性能,有效地将这些封闭模型提炼为开放模型。因此,业界仍然缺少关于如何从零开始构建高性能…...

day02_计算机常识丶第一个程序丶注释丶关键字丶标识符

计算机常识 计算机如何存储数据 计算机世界中只有二进制。那么在计算机中存储和运算的所有数据都要转为二进制。包括数字、字符、图片、声音、视频等。 进制 进制也就是进位计数制,是人为定义的带进位的计数方法 实例: // 在java 中 可以使用不同…...

【Trick】IOS系统解决“未受信任的企业级开发者”问题

问题: 本人通过扫码下载了一个软件,下载完毕后出现以下提示: 解决方法: 这个主要是操作系统的问题,需要在设置里面更改,具体步骤如下: 【1】打开设置,选择【通用】 【2】选择【VP…...

理解 React 中的 ReactElement、children 和 ReactNode

1. 什么是 ReactElement? ReactElement 是 React 用来描述 UI 界面元素的最基本的对象,是构建虚拟 DOM 的核心元素。 定义:ReactElement 是不可变的对象,表示界面中的某个元素。它包含了用于渲染 UI 所需的信息,如元…...

纯血鸿蒙正式登场,华为这新机给我看傻了

从 vivo 率先开炮 X200 系列,手机的白热化战斗序幕马上也就要揭开了。 就在昨天,骁龙于夏威夷召开骁龙峰会。 性能提升和咱们以往的爆料差距不大。 只是高通又双叒叕给自己改名了。新命名为 Snapdragon 8 Elite,官方翻译是骁龙 8 至尊版。 …...

c语言中的%运算和/运算

在C语言中,%运算和/运算分别表示取模运算和除法运算。以下是它们的详细解释和用法: 1. % 运算(取模运算) 取模运算用于计算两个整数相除后的余数。语法如下: result a % b; a 是被除数。b 是除数。result 是 a 除…...

【MySQL】多表查询——内连接,左/右连接

目录 准备工作 1.多表查询 2.INNER JOIN(内连接) 2.1.笛卡尔积 1.2.笛卡尔积的过滤 1.3.INNER JOIN(显式内连接) 1.4.SELF JOIN(自连接) 3. LEFT JOIN(左连接) 3.1.一个例子…...

Naicat连接本地CentOS 7虚拟机上的MySQL数据库失败解决办法

注意:Navicat主机栏填的是Centos虚拟机的IP地址 一、检查mysql容器 确保网络正常、保证mysql容器处于运行中且用户名、密码和端口正确。 1、查看mysql容器是否运行 docker ps2、查看mysql容器详细信息,可查看端口 docker inspect mysql二、检查防火墙…...

transforms.Normalize((0.4914, 0.4822, 0.4465), (0.2023, 0.1994, 0.2010)的计算过程

cifar10数据集的众多demo中,在数据加载环节,transforms.Normalize((0.4914, 0.4822, 0.4465), (0.2023, 0.1994, 0.2010)这条指令是经常看到的。这是一个 PyTorch 中用于图像数据标准化的函数调用,它将图像的每个通道的值进行标准化处理&…...

Excel表格如何修改“打开密码”,简单几步,轻松搞定

在保护Excel文件的安全性时,设置打开密码是常见且有效的方式。然而,有时我们需要修改已经设置的打开密码,以确保文件安全性或更新密码信息。今天小编来分享一下修改Excel文件打开密码的方法,操作简单,一起来看看吧&…...

pandas 数据分析实战

一、pandas常用数据类型 series,带标签的一维数组。类似于字典,但是键作为索引。 datatimeindex,时间序列。 dataframe,带标签且大小可变的二维表格结构。 panel,带标签且大小可变的三维数组。 1.一维数组与操…...

antd vue 输入框高亮设置关键字

<highlight-textareaplaceholder"请输入主诉"type"textarea"v-model"formModel.mainSuit":highlightKey"schema.componentProps.highlightKey"></highlight-textarea> 参考链接原生input&#xff0c;textarea demo地址 …...

python——扑克牌案列

斗地主发牌程序&#xff1a; 模拟一个斗地主发牌程序&#xff0c;实现对三个玩家进行手牌的派发&#xff0c;实现功能&#xff1a; ********** 欢迎进入 XX 斗地主 ********** 请输入玩家姓名&#xff1a;<用户控制台输入 A> 请输入玩家姓名&#xff1a;<用户控制台输…...

Java最全面试题->Java基础面试题->JavaWeb面试题->Git/SVN面试题

文章目录 Git/SVN面试题Git和SVN有什么区别&#xff1f;SVN优缺点&#xff1f;Git优缺点&#xff1f;说一下Git创建分支的步骤&#xff1f;说一下Git合并的两种方法以及区别&#xff1f;Git如何查看文件的提交历史和分支的提交历史?什么是 git stash&#xff1f;什么是git sta…...

React Native 开发环境搭建(全平台详解)

React Native 开发环境搭建&#xff08;全平台详解&#xff09; 在开始使用 React Native 开发移动应用之前&#xff0c;正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南&#xff0c;涵盖 macOS 和 Windows 平台的配置步骤&#xff0c;如何在 Android 和 iOS…...

从零实现富文本编辑器#5-编辑器选区模型的状态结构表达

先前我们总结了浏览器选区模型的交互策略&#xff0c;并且实现了基本的选区操作&#xff0c;还调研了自绘选区的实现。那么相对的&#xff0c;我们还需要设计编辑器的选区表达&#xff0c;也可以称为模型选区。编辑器中应用变更时的操作范围&#xff0c;就是以模型选区为基准来…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 笔者写过很多次这道题了&#xff0c;不想写题解了&#xff0c;大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述&#xff1a;iview使用table 中type: "index",分页之后 &#xff0c;索引还是从1开始&#xff0c;试过绑定后台返回数据的id, 这种方法可行&#xff0c;就是后台返回数据的每个页面id都不完全是按照从1开始的升序&#xff0c;因此百度了下&#xff0c;找到了…...

Python如何给视频添加音频和字幕

在Python中&#xff0c;给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加&#xff0c;包括必要的代码示例和详细解释。 环境准备 在开始之前&#xff0c;需要安装以下Python库&#xff1a;…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

&#x1f680; C extern 关键字深度解析&#xff1a;跨文件编程的终极指南 &#x1f4c5; 更新时间&#xff1a;2025年6月5日 &#x1f3f7;️ 标签&#xff1a;C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言&#x1f525;一、extern 是什么&#xff1f;&…...

华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建

华为云FlexusDeepSeek征文&#xff5c;DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色&#xff0c;华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型&#xff0c;能助力我们轻松驾驭 DeepSeek-V3/R1&#xff0c;本文中将分享如何…...

网络编程(UDP编程)

思维导图 UDP基础编程&#xff08;单播&#xff09; 1.流程图 服务器&#xff1a;短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

Java数值运算常见陷阱与规避方法

整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...