mpu6050 z轴校准_技术科普丨TOF标定校准知多少?

2023-05-16

近年来,手机摄像头很大的一项技术革新是3D技术,而很大部分的3D技术依托于TOF摄像头模组。

关于TOF模组的原理和应用,之前科普文有很多介绍,此处不予赘述。

今天我们来聊聊TOF的校准标定

TOF怎么做出3D图像

传统手机摄像头拍下来是张二维图片,只有X/Y两轴,3D摄像头在其中增加了Z轴,也就是距离轴。

同样在拍摄马路车辆的场景,TOF模组可以产生距离信息。为了更直观地显示不同距离,可以采用不同颜色表示物体距离远近(伪彩图)。距离信息可以还原到三维象限,生成点云图。

将可见光拍摄得到的带颜色信息的二维图像,与TOF生成的深度信息相融合,作为最终的3D应用。

深度的准确性,需要校准标定来保证

当你在河边欣赏美景,睡莲可能与你只相隔咫尺▼

而当你拿出手机拍照,图片可能会是这样▼

你所计算得到的距离,并不是物体的实际距离,甚至还相去甚远,比如物体距离摄像头是50cm,而你测得的甚至可能会是2米以上。

那是为什么呢?

可能是你没有做标定校准!

1

温度标定校准

前面说到过,目前常用的相位式TOF采用相位差来计算深度。

理想中波形是这样的

波形方正没有任何变形,相位差就是绝对的相位差,深度计算也很精准。

横坐标是时间轴

而实际电路中的波形却可能是这样的

TOF芯片和VCSEL驱动芯片的温度,直接影响了波形的表现。

那么问题来了,波形已经变形成这样,相位差测不准,怎么办?可能需要一个温度补偿。

比如统计一大批模组的相位差表现,和TOF芯片温度及驱动芯片温度之间的关系,求出其补偿系数。

2

Lens标定校准

◆光心偏移

当模组对准物体中心拍摄,理论上物体的中心会成像在模组的中心;

然而,由于模组组装等的误差,实际成像并没有在模组的中心,而是会产生一定的偏移,我们定义为光心偏移。

◆畸变

摄像头在拍摄物体时,或多或少会出现一定的形变,比如

投射模组和接收模组之间的位置关系,也会影响最终的计算结果,主要包括旋转和平移等,位置关系也需要做标定校准。

除此之外,Lens校准还包括f焦距部分等,整个Lens校准是以下其他校准的基石。

3

FPPN标定校准

FPPN(Fixed Pattern Pixel Noise),或也有称之为Pixel dependent Offset,简单来说,由于TOF芯片上每个像素点所处的位置不一样,由于快门延迟等原因,导致像素点计算得到的相位差有误差。

这就直接导致了深度结果的误差。

比如你拍摄的是某一距离下的一张大白板,理论上能得到一个平整的深度平面,因为每个像素点拍摄的都是同一距离。

而实际上得到的是个曲面,如下图,右下角的深度误差是最大的。

FPPN便是标定校准了此类误差。

4

Wiggling标定校准

Wiggling标定校准也有称之为Cyclic error calibration,是距离信息相关的循环误差标定校准。

和温度校准一样,由于实际的激光投射脉冲和理想情况有一定差异,导致测量得到的相位差,与理想的相位差之间,呈现一定的变化规律。

理论相位和实测相位之间,理论上是呈现线性变化,见红色斜线,而实测值是有一定偏差的,见蓝色曲线。

而Wiggling即补偿该误差值。

3D TOF产品是个复杂的系统,深度的生成需要软件算法上的环环相扣,而校准参数的应用,是其中不可或缺的一个环节。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mpu6050 z轴校准_技术科普丨TOF标定校准知多少? 的相关文章

  • Time of flight cameras(TOF carmeras)

    TOF cameras Time Of flight 新型3D图像传感器 xff0c 该传感器使用红外线或者光脉冲来估计光线从发射到检测到的时间延迟来测量距离
  • mpu6050角度滤波

    文章 xff1a https www cnblogs com we1238 articles 7562028 html 输入量 通过mup6050姿态传感器 xff0c 我们可以分别得到X Y Z轴三个方向的加速度和角速度分量 输出量 我们
  • 正点原子mpu6050数据读取失败问题

    如果下载他们官方的程序都读不出来的话 看看你买的是stm32f407的V3版本吗 xff1f 这个版本是只有磁力计的官方代码 你用V3板跑他们的mpu的代码就会读不出来 xff0c 那个mpu6050的代码是已经停产的V2板子的
  • MPU6050介绍及姿态解算

    1 介绍 xff1a MPU6050 是 InvenSense 公司推出的全球首款整合性 6 轴运动处理组件 xff0c 相较于多组件方案 xff0c 免除了组合陀螺仪与加速器时之轴间差的问题 xff0c 减少了安装空间 xff08 1 x
  • MPU6050

    简介 xff1a MPU6050是InvenSense 公司的 MPU6050 作为主芯片 xff0c 能同时检测三轴加速度 三轴陀螺仪 三轴角速度 的运动数据以及温度数据 利用 MPU6050 芯片内部的 DMP 模块 xff08 Dig
  • MPU6050-扫盲

    文章部分内容转载于 https blog csdn net zmjames2000 article details 88379640 管脚名称说明VCC3 3 5V xff08 内部有稳压芯片 xff09 GND地线SCLMPU6050作为
  • MPU6050的一些问题及解决办法

    最近做的项目要用到MPU6050 xff0c 出现了以下这些问题 xff1a 当然 xff0c 也有一些奇怪的事 xff0c 我是在淘宝上买的现成的模块 xff0c 那个ADO无论接地还是高电平 xff0c MPU的地址都是用0xD0 xf
  • DSP28系列—MPU6050漂移补偿方案的探索

    说在前面的话 xff1a 大家都知道 xff0c 陀螺仪是一种能测量角速度的器件 xff0c 是姿态解算 角度测量等任务中无法缺少的工具 单轴的陀螺仪配合单轴的加速度计 xff0c 就能结算出一个姿态角 在平衡车的应用中 xff0c 一维的
  • Jetson nano i2c教程(MPU6050 + PCA9685)

    首先介绍nano板子上的i2c相关的硬件信息 xff1a 安装所需要的i2c库 sudo apt get install l y i2c tools 完成nano中io与i2c设备的硬件接线 本次案例使用的是PCA9685和MPU6050
  • MPU6050误差分析

    MPU6050模块 xff0c 如图 1所示 该模块集成了一片MPU6050芯片和一片STM8S003F3P6单片机 xff0c 具有串口和I2C接口 MPU6050中的DMP xff08 数字运动处理器 xff09 对姿态进行融合 xff
  • arduino 自平衡小车3\对mpu6050获得的X轴角度和角速度进行卡尔曼滤波

    对mpu6050获得的X轴角度和角速度进行卡尔曼滤波 mpu6050得到的角度值有些值的偏差较大 xff0c 为了使平衡小车更加稳定 xff0c 需要对获得的角度进行优化 xff0c 使用 卡尔曼滤波 xff0c 代码如下 xff1a in
  • ROS读取MPU6050数据

    上一篇讲到使用I2C连接Jetson Nano和MPU6050并使用python读取 xff0c 本次基于roscpp连接读取IMU数据 RTIMULib RTIMULib是本次使用的IMU库 xff0c 支持多种常见的IMU模块 xff0
  • MPU6050在ROS中应用

    arduino下读取MPU6050数据 参考 xff1a http diyhacking com arduino mpu 6050 imu sensor tutorial 硬件 arduino uno或arduino mega2560mpu
  • Arduino操作MPU6050模块

    MPU6050是集成三轴陀螺仪 xff0c 三轴加速度计 xff0c 温度传感器于一体的模块 本文档基于Adafruit MPU6050实现MPU6050模块基本操作 Adafruit MPU6050库 xff1a https github
  • MPU6050 - 陀螺仪 - 技术总结

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • MPU6050介绍及姿态解算

    1 介绍 xff1a MPU6050 是 InvenSense 公司推出的全球首款整合性 6 轴运动处理组件 xff0c 相较于多组件方案 xff0c 免除了组合陀螺仪与加速器时之轴间差的问题 xff0c 减少了安装空间 xff08 1 x
  • MPU6050温度计算公式

    Tem为16位数据 Tem 43 12412 340 61 Tem 340 43 36 5 Tem每340对应1摄氏度 12412代表0摄氏度
  • Micropython——九轴传感器(MPU6050)的使用及算法(二)

    前言 xff1a 在上篇文章中 xff0c 简单地实现了九轴传感器 xff08 MPU6050 xff09 的获取加速度 角速度以及温度的数值 但是 xff0c 我们知道 xff0c 对于MPU6050来说 xff0c 其提供的数据会夹杂有
  • MPU6050 获取角度理论推导(二)---6轴融合算法

    接着上篇文章 https mp csdn net postedit 101777018 姿态角解算 互补滤波算法及理论推导 一般在程序中 姿态解算的方式有两种 一种是欧拉角法 一种是四元数法 这里不介绍欧拉角法 只介绍四元数法 互补滤波算法
  • MPU6050使用心得(简单分享一下)

    前言 选用MPU6050做 倾斜检测 功能 前期准备 开发板 正点原子STM32F103 精英版 STM32F103ZET6 模块 GY 521 MPU6050 其他 杜邦线若干 烧录线 FlyMcu Keil5 正点原子开发板配套的套件

随机推荐