目录
- 基础概念
- 1. 缩略语
- 2. 为什么需要外参标定
- 3. 基于使用场景的标定分类
- 4. 基于方法的分类
- 5. 基础坐标系
- 6. 超差
- EOL标定
- 1.EOL特点
- 2. EOL标定流程
- 3. EOL标定软件约束
- 4. EOL标定软件流程
- 5. 算法设计原则
- 6. 算法基本原理
- 背景式标定
- 1.背景式标定的特点
- 2. 背景式标定运行流程
- 3. 背景式标定软件约束
- 4.背景式标定软件流程
- 5. 算法设计准则
- 6.算法基本原理
- 7. 标定指标
- 售后标定
- 1. 售后标定的特点
- 2. 售后标定运行流程
- 3. 售后标定软件约束
- 4. 标定指标
基础概念
1. 缩略语
VCS:Vehicle Coordinate System 自车坐标系
CAN:Controller Area Network 控制器局域网络
EOL:End of Line 车辆下线,一般指工厂标定
2. 为什么需要外参标定
在汽车设计的时候,结构工程师会提供设计的参数,用来安装传感器,所以初始外参在汽车被设计完成的时候就被基本固定。
但是有两个因素会导致外参变化:
- 安装过程有安装误差
- 汽车在行驶过程中由于胎压,载荷,形变等改变,导致外参的变化
3. 基于使用场景的标定分类
名称 | 使用场景 | 方法 | 初始参数 |
---|---|---|---|
EOL标定 | 车辆生产时,在产线中的一个工位,基于诊断仪触发标定,标定传感器外参,初始化域控制器内部参数,及诊断车辆的软硬件基本状况 | 基于标定间的方法 | 车辆设计参数 |
售后标定 | 车辆售出后,由于外部问题返修,更换域控制器,或者调整,更换传感器后,重新标定传感器的参数 | 基于标定间或在线数据 | 车辆设计参数 |
背景式标定 | 车辆在使用过程中,由于载荷变化,胎压变化,车体形变等原因,传感器的外参会有微小的变化,所以需要在软件的后台,进行一组标定进程,用于实时计算传感器外参,并刷新之前在售后或者EOL阶段写入的外参 | 基于在线数据的方法 | 上一次标定落盘的参数 |
4. 基于方法的分类
- 基于标定间的方法
建立标定间,在标定间布局一定数量的标靶,标靶形式包含但不限于棋盘格,AprilTag,品字格等。精确测量标靶关键点的位置信息输入给标定算法模块,同时输出传感器的初始外参数据。 - 基于在线数据的方法
在车辆运行过程中,基于实时观测到的数据(包含但不限于的语义分割,目标检测,特征点检测,里程计,GNSS等),通过对齐传感器与车辆底盘之间,传感器之间的观测一致性,实现对于外参的精确修正。
5. 基础坐标系
- vcs坐标系
右手系,原点位于后轴中心的地面投影点,
X,Y,Z分别为车辆的前、左、上方向 - camera坐标系
原点为相机光心,x朝前,y朝左,z朝上
6. 超差
一般基于传感器的功能,对传感器的角度有一定的阈值要求,比如不可超过设计角度2°以上。
传感器工厂/4S店安装过程中,或者车辆使用过程中,传感器的外参与设计外参的差有一定概率超过阈值。此时,标定就算可以标出这个具体的角度值,也需要在系统内报错,以告知当前角度超过了可以正常开启功能的范围。这个错误称为“超差”。
EOL标定
1.EOL特点
EOL标定的会在每辆车下线时执行,用于在车辆前初始化,车辆的外参等初始参数,检查传感器安装角度误差是否符合要求。
- 功能发布时间早
在车辆下线时,ECU就需要具备完整稳定的EOL标定功能,因此,EOL功能的开发和测试需要完成的时间非常早。需要有严格的开发周期管控。基本在产线试产车开始前,就要完成开发和测试工作,发布稳定版本,然后在产线持续一个月左右的产线试车测试。 - 版本稳定性要求高
- 链路长,涉面广
标定涉及从工厂诊断仪,到MCU,到SOC内的系统软件,状态机,感知软件,应用软件,算法等诸多开发模块,开发测试链路长,协作的功能模块多,且这些链路可能有多家供应商及OEM协作完成。总体联调复杂度高 - 与OEM及工厂耦合度高
EOL标定依赖了工厂的标定间基础设置,功能开发过程中,需要对标定间可用性,标定间的设计,标定间设备验收严格把关。
EOL标定可能需要一个软件版本支持多个标定间,多个车型等情况,与OEM车型,工厂设施等耦合。需要在标定算法上做好兼容设计。
2. EOL标定流程
- 驾驶员驾驶完成四轮定位及胎压匹配车辆进入标定工位,准备产线标定
- 产线操作员操作OBD接口连接诊断仪,通过诊断仪下发命令进入标定数据(需考虑车辆在有驾驶员以及空载、满载等不同负载条件下的车辆数据,如底盘高度数据,悬架数据)
2.1 诊断仪完成和车辆域控制器的连接(通过MCU)
2.2 诊断仪完成和上位机的连接(可通过WIFI) - 产线操作员通过车辆VIN码关联车辆信息
- 上位机控制标定间设备进入产线标定要求位置;
- 上位机给诊断仪下发产线标定任务
- 诊断仪给车辆域控制器下发产线标定任务;
- 车辆域控制器通过DTC/DID返回产线标定状态结果给诊断仪
- 诊断仪上传产线标定状态结果到上位机,产线标定结束
3. EOL标定软件约束
- 算力
EOL阶段,自动驾驶功能未开启,可以占用SOC的大部分计算资源 - 时间
由产线生产标定流程及软件执行效率共同决定,一般会被约束在1分钟以内 - 精度指标
由于标定间标靶位置误差或者整齐误差,工厂标定精度一般等于或者低于背景式标定精度,基本达到下游功能要求的精度指标
4. EOL标定软件流程
5. 算法设计原则
- 需要支持多车型和多标定间
- 不同的项目需要支持不同的标靶配置
- 简单有效的算法设计
考虑到产线测试资源和调整时间优先,EOL算法需要尽量在保证精度的前提下做的简单,降低出错的风险
6. 算法基本原理
针对相机类sensor,EOL标定算法原理基本类似,首先摆正器定位车辆在标定间中的位置,再通过相机检测到Ariltag、棋盘格等标志物,提取图像中的角点像素信息,已知相机内参以及角点在车体坐标系(后轴中心或者其他位置)中的3D坐标,通过3D-2D姿态求解算法计算相机与车体坐标的相对位姿。
6.1 标定流程
6.2 标定状态与诊断
- 角点提取失败
- 检测失败,检测到的标定板不符合预期
- 内参校验失败(过大或接近0)
- 重投影误差过大(棋盘格位置移动)
- 标定出的rpy超差
- 标定超时
背景式标定
1.背景式标定的特点
背景式标定的会在车辆行驶时执行,用于在车辆标定参数的更新,车辆的初始外参的检查,同时检查传感器安装角度误差是否符合要求,以及对软硬件功能个做初步的诊断,其具有一下特点:
- 功能常驻后台
在车辆上电时,背景式标定功能就随着系统的启动而被开启了。在车辆的运行过程中,背景式标定始终在运行与处理数据,因此对于它的CPU与内存占用提出了严格的要求。同时它会在后台不断检查传感器的参数与安装状态,确保车辆功能安全。 - 稳定性
- 精度要求好
- 连续性
背景式标定需要持续运行,在下电时,需要保存当前背景式标定的中间结果,以便下次上电继续基于这个断点运行。
2. 背景式标定运行流程
背景式标定全程实现自动化处理,无需进行人为干预;
软件流程:
- 标定软件检查各个依赖数据是否满足。在观测数据都满足条件后进入算法处理
- 当车辆在平坦直道上行驶把,算法会收集当下的观测数据
- 在观测数据满足一定数量限制是,算法会停止收集数据
- 此时软件会启动求解线程。对收集到的数据进行解算,得到一组外参标定值,
- 算法会对此次计算的外参标定值进行验证,若外参标定值超过传感器设计安装角度时,会触发错误警告。
- 当外参计算值符合标定要求时,软件会保存当次计算结果
- 软件等待车辆下电信号,在车辆下电时,将最新的外参标定值进行参数落盘
3. 背景式标定软件约束
- 算力
背景式标定一般占用SOC的小部分计算资源 - 时间
由车辆行驶环境决定,一般会被约束在30分钟以内完成一次背景式标定 - 精度指标
一般等于或略高于EOL标定的精度指标,基本达到下游功能要求的精度指标
4.背景式标定软件流程
5. 算法设计准则
- 常驻后台标定
因此需要算法有足够少的cpu占用,有足够稳定的运行性能 - 准确性与精度
6.算法基本原理
原理:
数据检查:检查输入数据是否异常,
数据处理:根据算法的需要,过滤输入的数据,例如将车道线轮廓点降采样,利用极限约束特征点的离群点
特征匹配:传感器间进行特征匹配,构建共视约束关系
求解:利用传感器间的约束关系,求解相机外参
统计分布:数据统计模块接受不同时间段的求解结果,统计他们的均值与方差,当方差满足一定要求后则认为外参收敛
状态管理:接收各个算法子模块的错误码,将错误码发送到标定服务
7. 标定指标
绝对精度: 0.2°~0.3°
绝对精度是指测量值与真值之差的绝对值,其中真值来源于基于lidar或者人工选择的
重复精度:约0.1°
标定时长:30min
售后标定
1. 售后标定的特点
售后标定标定会在车辆出售后,由于外部问题返修中更换域控制器,以及调整或者更换传感器后执行,用于重新标定传感器的参数,检查传感器安装角度是否符合要求,以及对软硬件功能做初步诊断,其功能特点与EOL标定类似。
售后标定分为基于标定间的方法和基于在线数据的方法,基于在线数据的方法包含以下特点:
- 版本稳定性要求高
- 链路长,涉面广
标定设计从诊断仪,到MCU,到SOC内的系统软件,状态机,感知软件,应用软件,算法等诸多模块,开发测试链路长,协作的功能模块多,且这些链路可能由多家供应商及OEM协作完成。总体联调复杂度高。 - 对标定时间与场景有限制
对标定场景有一定限制,需要在较为空旷和结构化(多车道要求)场景下进行,同时为了保证标定效率也对标定时间做出了限制。
对收敛时间要求高,若标定无法在标准时间内收敛,则会影响使用体验,及增加车辆卖出前的行驶里程。
2. 售后标定运行流程
- 驾驶员驾驶胎压匹配车辆进入售后标定道路环境,准备售后标定
- 售后标定操作操作员通过OBD接口连接诊断仪,诊断仪完成和车辆域控制器的连接(通过MCU)
- 通过诊断仪下发命令进入标定模式,一般情况下,车辆是静止状态才能下发诊断命令
- 操作员按照售后诊断仪屏幕上的提示进行操作,然后驾驶车辆到标定道路上。
- 车辆域控制器将标定结果与标定进度发送到诊断仪
- 可以通过诊断仪实时看到标定进度,当标定进度达到100%,停下车辆到安全区域。
- 诊断仪通过诊断命令读取售后标定结果,显示在屏幕上,如果显示“标定成功”,售后标定结束
3. 售后标定软件约束
- 算力
售后标定阶段,自动驾驶功能未开启,可以占用SOC的大部分计算资源 - 时间
在符合售后标定需求的场景下,一般会被约束在20分钟内 - 进度指标
一般等于EOL标定的精度指标,基本达到了下游功能要求的精度指标。
4. 标定指标
绝对精度:0.3°~0.6°
重复精度:约0.3°
重复精度是指在相似环境下进行多次标定,得到的测量值之间的差异,它可以用来衡量测量值的稳定性和可靠性。
标定时长:10min
标定时长是指标定系统完成一次标定需要的时间