关于FPV图传系统时延讨论

news/2024/5/9 14:25:30/文章来源:https://blog.csdn.net/lida2003/article/details/130314113

关于FPV图传系统时延讨论

  • 1. 源由
  • 2. 时延测试方法
  • 3. 时延测试资料
  • 4. 关于模拟图传
  • 5. 关于FPV时延感受
    • 5.1 静态时延
    • 5.2 动态时延
  • 6. 参考资料
  • 7. 附录 DJI 图传系统

1. 源由

视频图传系统最重要的几个指标:

  1. 分辨率
  2. 视角
  3. 帧率
  4. 时延
  5. 传输距离

目前高清图传主要规则:分辨率720P;视角摄像头光学系统决定;帧率60~120FPS;传输距离取决于射频发射功率、接受灵敏度以及传输环境;

因此,之前在对开源wfb_ng做了简单的验证过程重点测试的是720P下的时延情况。

【1】模拟FPV-肥鲨HDO2+无牙仔2+熊猫VT5804ML1+Foxeer野火 时延测试
【2】FPV Camera(RPI3+V2.1) | wfb_ng Release 23.01 | ubuntu20.04 gnome软解测试
【3】FPV Camera(RPI3+V2.1) | wfb_ng Release 23.01 | Ubuntu 20.04 xfce软解测试
【4】FPV Camera(RPI 3B+/Zero W+V2.1) | wfb_ng Release 23.01 | H264硬解测试

鉴于手中被测设备和测试工具的限制,不能做的非常详尽,但是还是期望能够了解当前技术瓶颈,以及现行产品的极限性能。

2. 时延测试方法

  1. 秒表测试法 //不准确,感性认识
  2. 高速相机拍照 //准确,精准量化

关于秒表测试方法就不做介绍了,高速相机拍照采用点亮LED(ns级同步速度),相对于ms级时延系统来说,可以忽略LED点亮的同步时间误差。

整个逻辑步骤:

  1. 当按下按钮,“光速”触发LED点亮
  2. 高速相机记录到相机前的LED灯点亮(此时,图传系统摄像头前端的LED也被点亮)
  3. 摄像头CCD光电效应检测到图像,通过图传压缩传输
  4. 眼镜接收到RF图传信号,解压压缩图像,刷新到显示缓存
  5. 显示缓存刷新到LCD/OLED屏幕
  6. 高速相机记录LCD/OLED屏幕信息(看到LED被点亮)
    在这里插入图片描述

3. 时延测试资料

这里整理了一下网络资料,通过高速相机拍摄的测试结果如下:

在这里插入图片描述
从测试数据看,HDZero和DJI 120 fps(DJI Google V2 + O3) 是比较好的高清图传,性能在30ms左右。

Walksnail Avatar Latency Testing vs DJI, HDZero and Analog!

4. 关于模拟图传

当然这也不是说模拟图传已经被淘汰。

  1. 当关闭模拟摄像头WDR功能,模拟演示在20ms以下
  2. 很多场景并非一定需要高清,比如:远航功能测试等
  3. 毕竟性价比在那里

在这里插入图片描述
下面就是模拟摄像头WDR引入的16.7ms的额外时延,去掉后35ms - 16.7ms 大约 19 ms左右,这里显然就会比高清数字图传时延更优了。
在这里插入图片描述

5. 关于FPV时延感受

5.1 静态时延

人对于外界相应的时延大约在200ms左右,相较于整个控制系统回路来说,30ms左右的视频时延差距并不是主要的耗时。当然从数据的角度来说,系统时延越小当然越实时。

在这里插入图片描述

5.2 动态时延

从动态的角度来说,个人认为存在两种场景:

  1. FPV动态飞行过程,突然出现一个障碍物。个人认为,对于这种“鬼探头”,这种额外的30ms时延很难解决问题。只能类似考虑“主动防御性”飞行来规避。
  2. FPV在复杂障碍物中穿越飞行,这个额外延时一定会对操控人员造成实时性的影响(尤其是非熟悉的环境)。

针对第二点,想表明的一个立场是,如果是一个熟悉的赛道,经过训练,反复试飞,即使30ms的延时,人可以通过学习做出预判。但是非熟悉环境,这种预判的准确性就会降低,局限了预判提前时间。因此,实时性就非常重要。

注:大家可以体会下下面视频给出的一些感受。

You should care about FPV latency. Here's why

6. 参考资料

【1】An Average Human Reaction Time
【2】How Fast is Real-Time? Human Perception and Technology

7. 附录 DJI 图传系统

DJI Google V2 + O3 120FPS能达到一个比较优秀的时延。

在这里插入图片描述

When is 120fps NOT 120fps? //DJI O3 Air Unit 4k120 latency and refresh rate test

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_479121.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

uni-app apk出现打包时未添加push模块

打包的apk安装在手机打开后出现如下图的提示: 解决方法:如果你的包中没有使用这个模块,就在uni-app中中的mainifest.json文件打开源码视图文件,CtrlF搜索push,可以发现打包ios时配置了这个模块,直接注释或者…

博客积分上六千了

博客积分上六千了 记录自己学习的过程,也是一种学习的动力。

C++函数适配器和函数包装器:让你的函数更灵活

📖作者介绍:22级树莓人(计算机专业),热爱编程<目前在c++阶段>——目标Windows,MySQL,Qt,数据结构与算法,Linux,多线程&…

【越早知道越好】的道理——能够提高效率的【快捷键】

文章目录 1️⃣虚拟桌面⚜️第一步:打开任务视图⚜️第二步:创建桌面⚜️第三步:桌面切换⚜️第四步:桌面删除 2️⃣窗口切换3️⃣桌面分屏⚜️如何分屏 前言🧑‍🎤:作为程序员👨‍&…

Logstash学习

一、Logstash基础 1、什么是Logstash logstash是一个数据抽取工具,将数据从一个地方转移到另一个地方。下载地址:https://www.elastic.co/cn/downloads/logstash logstash之所以功能强大和流行,还与其丰富的过滤器插件是分不开的&#xff…

公司为什么禁止SpringBoot项目使用Tomcat?

前言 在SpringBoot框架中,我们使用最多的是Tomcat,这是SpringBoot默认的容器技术,而且是内嵌式的Tomcat。 同时,SpringBoot也支持Undertow容器,我们可以很方便的用Undertow替换Tomcat,而Undertow的性能和…

SAP KANBAN 从入门到放弃系列之调拨模式

之前已经有三篇文章写了后台配置相关的介绍,这里不赘述。详见: PP-KANBAN-看板概述 SAP KANBAN 从入门到放弃系列之生产补货模式 SAP KANBAN 从入门到放弃系列之采购补货模式 第一步:补货策略-转库。不同的补充策略的控制类型有不同的作用…

利用ArcGIS软件赋予tif影像空间参考坐标系

问题: 在处理数据时有一幅没有任何空间参考坐标信息的tif影像,实质上为一个照片。现在需要将其与一个有空间地理参考坐标信息的shp文件叠加在一起。如何解决这个问题呢? 已知信息: shp文件的空间地理参考 shp文件的边界与tif影像的…

开放原子训练营(第一季)铜锁探密:基于铜锁构建在线在线加密工具箱

基于铜锁构建Web在线加密工具库 搭建运行环境 实验⼿册中的实验都是以 docker 和 docker-compose 环境为主,基于 Ubuntu 20.04 容器镜像。 初始化项目 首先利用 IDE 创建一个 tongsuo_web 的空项目,接下来我们所有的文件都会创建在该项目中&#xff0…

【Atlas500】华为500小站预配置

目录 基础配置解决配置能力项未开启问题 基础配置 1.网线连接盒子 2.1口IP:192.168.2.111 2口IP:192.168.3.111 3.登临网页https://192.168.2.111 输入用户名和密码(管理端用户)。 ● 默认用户名:admin ● 默认密码:H…

【Scala入门】scala基础语法:类和对象,变量和常量

上一篇请移步【Scala入门】Scala下载及安装(Windows)以及Idea创建第一个scala项目_水w的博客-CSDN博客 目录 一、Scala 二、Scala基础语法 2.1 注释与标识符规范 2.2 变量与常量 【案例:变量声明和赋值】 2.3 object 【案例&#xff1…

2023年数据治理工程师证书有哪些值得考?DAMA-CDGA/CDGP

DAMA认证为数据管理专业人士提供职业目标晋升规划,彰显了职业发展里程碑及发展阶梯定义,帮助数据管理从业人士获得企业数字化转型战略下的必备职业能力,促进开展工作实践应用及实际问题解决,形成企业所需的新数字经济下的核心职业…

【音视频】国际双向对讲方案

语音对讲的的整体流程为: 先拉流播放设备的视频;使用WebRTC推送语音流到ZLM服务;使用SIP协议下发Broadcast指令给设备;接收到设备的OK指令后,请求ZLM的startSendRtp接口,TCP协议请求startSendRtpPassive接口…

C/C++每日一练(20230423)

目录 1. 多组输入求和 ※ 2. 螺旋矩阵 II 🌟🌟 3. 路径交叉 🌟🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏 1. 多组…

直播软件app开发:如何开发一个可以免费打扑克的直播应用?

作为一个技术开发人员,我深知直播软件app开发的重要性。在这个数字化时代,越来越多的人选择使用直播软件来分享自己的生活和与朋友互动。而随着技术的发展,直播软件也不断更新和改进,为用户提供更好的体验和功能。 对于开发者来说…

供需两端催化口腔医疗服务市场增长 未来将呈现线上化、智能化、品质化三大趋势

一、口腔医疗服务行业概述 口腔由唇、颊、舌、腭、涎腺、牙和颌骨等部分组成。口腔疾病种类繁多,伴随人全生命周期,常见疾病有龋病、牙周疾病、牙髓病、根尖周病、牙齿缺损、错颌畸形等,多数口腔疾病的发病率高,诊疗需求大。除此…

java 实现对称加密的方法

对称加密是一种加密算法,它和非对称加密的区别在于:加密和解密使用不同的密钥,对称加密使用同一个密钥对数据进行加密和解密。 今天我们来学习下对称加密的实现方法,不需要使用到私钥,只需要用到公钥。 首先我们来看下…

leetcode328. 奇偶链表

给定单链表的头节点 head ,将所有索引为奇数的节点和索引为偶数的节点分别组合在一起,然后返回重新排序的列表。 第一个节点的索引被认为是 奇数 , 第二个节点的索引为 偶数 ,以此类推。 请注意,偶数组和奇数组内部的相…

022:Mapbox GL 加载geojson数据,形成热力图,自定义样式

第022个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+mapbox中加载geojson数据,形成热力图. paint设置的参数:heatmap-color,heatmap-intensity,heatmap-opacity,heatmap-radius,heatmap-weight,visibility,具体请参考下面的api链接。 直接复制下面的 vue+mapbox源代…

Java编译器插件Manifold(流形)

流形 文天祥正气歌中有云:“天地有正气,杂然赋流形”。 流形是一种抽象而又具体的事务,要研究一个事务就要格物,不格物就不能知道事物的具体描绘形式。流形大多数情况下是一种数学计算方式,可以将一个复杂的模型抽象…