【UAV】光流模块、测量速度、快速入门及安装使用

简介

当目标物体在摄像机前运动或者摄像机在环境中移动时,目标图像是在发生变化的,图像灰度模式的表面运动就称为光流。简单理解,光流就是通过检测图像中光点和暗点的移动,来判断图像中像素点相对于飞行器的移动速度

举个例子,当我们做火车时,可以看到窗外的树在不断地向后“流动”,通过树向后流动的速度,我们可以估计当前火车的速度。光流模块就是基于这个原理,检测两帧图像中“树”的相对位置,由于拍摄两帧图片的时间差是固定的,便可以计算出像素点的移动速度。若我们知道“树”和相机的距离,便可以计算当前的实际速度

测距:对速度进行积分就可以得到位移。

定点:利用光流模块返回的位置信息或者速度信息,形成一个闭环控制,即可实现定点。

在光流理论中,前提是下面两个假设成立:

  1. 摄像头采集到的两帧图像之间的像素灰度不变;
  2. 相邻的两帧像素具有相对运动;

在这里插入图片描述

光流是测速算法,并不是直接定位的。简单理解,光流就是通过检测图像中光点和暗点的移动,来判断图像中像素点相对于飞行器的移动速度。如果地面是静止的,自然就可以得到飞行器相对于地面的移动速度啦。所谓光流定位,其实是利用光流测速再积分定位而已啦。

实物接线图

在这里插入图片描述

数据分析

通信方式为串口通信,数据特性:

  • 8 位数据位、无校验位、1 位停止位、波特率 19200bps
  • 通信频率:约 66fps 帧速率向主机发送数据
  • 其他:如果连续两帧位移太小,会输出 0,然后再足够位移时再输出数据
    在这里插入图片描述

数据说明:

  1. 包头为固定的两个字节:0xFE(包头)、0x04(字节数);
  2. DATA0、DATA1 是 flow_x 的低八位和高八位,即 flow_x = (int16_t)(DATA1<<8)|(DATA0);
  3. DATA2、DATA3 是 flow_y 的低八位和高八位,即 flow_y = (int16_t)(DATA3<<8)|(DATA2);
  4. 倒数第三个字节为校验字节,是 DATA0~DATA3 四个字节的累加值,即 SUM=DATA0+DATA1+DATA2+DATA3
  5. 倒数第二个字节为地面环境质量,数值越大表示地面环境质量越高;
  6. 最后一个字节是包结束标识符:1)常规模式下固定是 0xAA(Y 引脚高电平);2)偏航模式下固定是 0xBB(Y引脚低电平)。

在这里插入图片描述

机械特性

在这里插入图片描述

测试

下图为串口打印出来的直接读取数据

静止不动

在这里插入图片描述

0xFE0x04DATA0DATA1DATA2DATA3SUMSQUAL0xAA/BB
254400000111170

移动

在这里插入图片描述

0xFE0x04DATA0DATA1DATA2DATA3SUMSQUAL0xAA/BB
254400255255254154170

Ref:

  1. 迷你光流传感器 定点悬停 室内正常灯光瓷砖地板上也可使用
  2. 光流模块:小模块,大作用
  3. 光流定位原理是什么?? - 知乎
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zhao-Jichao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值