六、相机标定效果评价

news/2024/11/29 10:00:20/

1. 重投影误差

检测到的二维图像的角点和真实世界三维点的投影点之间的距离。使用标定得到的相机的内外参和畸变参数将三维世界的点投影得到像素像素坐标系中的二维角点,然后和算法检测到的二维图像的角点计算均方误差(RMS), 一般平均重投影误差小于1个像素是可以接受的(根据算法需求而定)。计算每张图的重投影误差,可以筛选去除误差较大的图片。

2. 内参扰动

验证原理:

在标定的时候保存了标定板相对于相机的所有旋转向量、平移向量和重投影点的像素坐标。标定验证时进行仿真,假设有一个虚拟相机的内参与标定结果一致,并拍摄了虚拟的标定板位置得到一系列的投影点,这个时候对相机内参进行扰动,利用solvePnP重新计算新的旋转平移,并得到新的投影点的重投影误差。若新的重投影误差比标定得到的重投影误差要大,则代表标定的误差小于给定的扰动值,即标定通过。反之则不通过。

操作方法

由于无法知道真实的内参且标定的内参总有误差,采用扰动实验来确保标定的主点、焦距的误差控制在指定的阈值百分比以下,具体做法以主点 cx 扰动为例:

  • Step 1:利用输入的内参、2D 角点、3D 靶标点,计算外参 T
  • Step 2:利用标定的内参、外参 T,将 3D 点重投影到图像获得 repro_corner_1,repro_corner_1 和图像上检测到的角点 det_corner 可计算重投影误差 error_1
  • Step 3:假设标定的内外参完全无误差,将 repro_corner_1 作为后续扰动测试的 gt_corner
  • Step 3:对于内参中的 cx 进行扰动,在 -0.3 % ~ 0.3 % 内均匀采样若干次,比如最大扰动量为 0.3 %,即此时扰动完的 cx' = cx * (1 + 0.3%)
  • Step 4:对于每次扰动,利用3D点、扰动后的内参、gt_corner,计算每个图片的 new_T
  • Step 5:利用 new_T、扰动后的内参、3D点,计算重投影角点 repro_corner_2,并与 gt_corner 计算重投影误差 error_2。当扰动为 0 时,error_2 理论上为 0;扰动越大,disturb_repro_error越大
  • Step 6:若从 0% 扰动到 0.3 % 过程中,出现 error_2 > error_1,说明内参标定最大误差在 0.3 % 以内

3. 畸变校正后图像效果(线性度)

利用标定的内参将图像和检测的角点去畸变,以棋盘格标靶为例,每个角点有2条直线经过,分别为靶标上的水平方向和竖直方向,在你和两个方向上的直线之后,计算该点到2条直线的距离作为直线度误差,统计所有角点的平均直线度误差。

注:图例为示意图,具体情况视标定靶标而定

4.三角测量

该方案是Mobileye提出的,具体方案如下:

4.1 方案原理

首先ME内参包含以下参数:

  • 焦距 Focal Length
  • 主点 Principle Point
  • 畸变中心COD
  • 畸变系数 Distorition Model Coefficient

三角验证标靶如下,标靶包含1个角点,标靶距离镜头入瞳的距离为~20m.

测试方案示意图如下:

  • D_between是两个标靶上角点之间的实际距离,要求为~10m(±1m)
  • Z_right(或Z_top),Z_left(或Z_bottom)为相机入瞳距离标靶的距离,要求为~20m(±1m)
  • 标靶和camera必须水平方向对齐,误差不超过±5cm
  • camera必须固定的刚体支架上,保证测试稳定
  • D_between、Z_right(或Z_top),Z_left(或Z_bottom)的测量误差要求小于2mm

 通过旋转或者倾斜camera,获取如下几组图像,包含9组水平方向的图和7组垂直方向的图

 D_between必须保证测量精度,测试过程中测量一次即可,因为这个值是固定的。

Z_right(或Z_top),Z_left(或Z_bottom)每次拍摄都需要重新测量。

每张图片都可以通过算法获取两个角点的坐标,通过三角关系即可计算出这两个角点的测量距离d_between,并获得与实际距离D_between之间的相对误差。

工装误差来源:

  • 入瞳和角点之间距离的测量误差
  • 两个角点之间距离的测量误差
  • 角点检测误差

以一个52°1.3Mp的相机为例:

D_between=10m±2mm,测量误差为±0.02%

Z_left=20m±2mm,测量误差为±0.01%

Z_right =20m±2mm,测量误差为±0.01%

角点检测误差=±0.1pixel, 有两个角点,故两个角点相对误差为±0.2pixel, 假设半图像宽度为600pixel,则角点检测误差为±0.2/600=0.03%

考虑以上所有因素,总的测量误差为±0.07%

校验流程

  • 固定相机
  • 调整相机,使得标靶位于position1的位置
  • 测量入瞳到角点的距离Z
  • 拍摄图像
  • 重复上述步骤获取所有的16张图
  • 计算每次拍摄得到的d_between,计算与D_between的相对误差。

Mobileye要求的精度要求如下:

d_between与D_between之间的相对误差要求小于0.15%

-0.15%<Epair=(D_between-d_between)/D_between<0.15%

所有的相对误差之间的差异小于0.25%

Emax = max Epair - min Epair <0.25%

 当然三角测量主要是针对小孔模型而言,对于fisheye camera不适用

 


http://www.ppmy.cn/news/726146.html

相关文章

相机与IMU联合标定

相机与IMU联合标定 1 imu_utils 标定IMU的内参1.1 安装环境1.2 录制IMU数据集 2 kalibr 标定工具2.1 安装2.2 校准相机的内外参2.3 校准相机与IMU外参 总结参考资料 1、 imu_utils标定IMU的内参&#xff0c;可以校准IMU的噪声密度和随机游走噪声 2、kalibr包标定相机的内外参数…

温暖人像LR预设(含lr预设导入教程)

这是一套专业的温暖人像LR预设&#xff0c;专为艺术肖像编辑器而设计。此套温暖人像LR预设包含ACR预设&#xff0c;PS动作以及多种不同效果类型的Lightroom预设&#xff0c;经过精心校准以保留自然肤色的美丽温暖色彩来增强它们&#xff0c;让您可以轻松调整您喜欢的色彩&#…

二叉树 — 给定二叉树中某个节点,返回该节点的后继节点

后继节点定义&#xff1a; 二叉树以中序的方式进行遍历打印&#xff0c;节点X的下一个节点&#xff0c;就是X的后继节点。 假设二叉树如下图所示&#xff1a;则中序遍历的后打印出来的就是 4 -> 2 -> 5 -> 1 -> 6 -> 3 -> 7。如果X 3&#xff0c;则X的后继节…

安全 --- http报文包详解及burp简单使用

HTTP HTTP&#xff08;超文本传输协议&#xff09;是今天所有web应用程序使用的通信协议。最初HTTP只是一个为了获取基本文本的静态资源而开发的简单协议&#xff0c;后来对其进行扩展和利用&#xff0c;使其发展为能够支持如今常见的复杂分布式应用程序。 &#xff08;1&…

镁客网每周硬科技领域投融资汇总(1.27-1.31),英特尔拟大手笔收购以色列芯片制造商...

1月份&#xff0c;国内航空航天已知融资事件达到了3起。 本周硬科技领域投融资事件一共29起&#xff0c;人工智能领域发生12起融资事件&#xff0c;占比42%&#xff1b;生物医药领域发生9起融资事件&#xff0c;占比32%&#xff1b;区块链领域发生3起融资事件&#xff0c;分别…

Java Web(2)-jQuery下

一、jQuery的属性操作 html() 它可以设置和获取起始标签和结束标签中的内容&#xff0c;跟 dom 属性 innerHTML 一样。text() 它可以设置和获取起始标签和结束标签中的文本&#xff0c; 跟 dom 属性 innerText 一样。val() 它可以设置和获取表单项的 value 属性值&#xff0c; …

计算机图形学 相机_如何将照片从相机无线传输到计算机

计算机图形学 相机 If you’re a prolific shutterbug, you know what a hassle it is to constantly pull the SD card from your camera, plug it into your computer, and transfer the files to get to the snapshots you just took. Here’s how to add Wi-Fi based photo…

jQuery笔记

1.jQuery语法 1.$是jQuery核心函数 1.1当传入参数为函数时 表示页面加载完成后&#xff0c;相当于window.οnlοadfunction&#xff08;&#xff09;{} <script type"text/javascript" src"../script/jquery-1.7.2.js"></script> <scri…