光流定位原理是什么??【转】

2023-05-16

转自:https://www.zhihu.com/question/35980316

Jessie Lee
HIT/控制/无人机
 
 
光流是测速算法,并不是直接定位的。简单理解,光流就是通过检测图像中光点和暗点的移动,来判断图像中像素点相对于飞行器的移动速度。如果地面是静止的,自然就可以得到飞行器相对于地面的移动速度啦。所谓光流定位,其实是利用光流测速再积分定位而已啦。
 
不知王
一步步来
 
 
图像上每个像素可以转换为看到的点在相机坐标系下的射线方向(两个自由度)。光流就是两帧图像之间像素的映射关系,每个点对应一个向量(二维)。光流场和相机运动(六个自由度),环境中点的位置(n*3个自由度,n为点的个数)有关。
一帧图像包含已知了每个点的方向:n*2个已知量,光流场2*n个方程约束了剩下的n+6个未知量。
当然细扣会复杂点,但基本就这样。
 
知乎用户
 
 

光流传感器通过IAS以一定速率连续采集物体表面图像,再由DSP对所产生的图像数字矩阵进行分析。由于相邻的两幅图像总会存在相同的特征通过对比这些特征点的位置变化信息,便可以判断出物体表面特征的平均运动,这个分析结果最终被转换为二维的坐标偏移量,并以像素数形式存储在特定的寄存器中,实现对运动物体的检测。



光流的概念是Gibson在1950年首先提出来的。它是空间运动物体在观察成像平面上的像素运动的瞬时速度,是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。一般而言,光流是由于场景中前景目标本身的移动、相机的运动,或者两者的共同运动所产生的。

当人的眼睛观察运动物体时,物体的景象在人眼的视网膜上形成一系列连续变化的图像,这一系列连续变化的信息不断“流过”视网膜(即图像平面),好像一种光的“流”,故称之为光流(optical flow)。光流表达了图像的变化,由于它包含了目标运动的信息,因此可被观察者用来确定目标的运动情况。

研究光流场的目的就是为了从图片序列中近似得到不能直接得到的运动场。运动场,其实就是物体在三维真实世界中的运动;光流场,是运动场在二维图像平面上(人的眼睛或者摄像头)的投影。

那通俗的讲就是通过一个图片序列,把每张图像中每个像素的运动速度和运动方向找出来就是光流场。那怎么找呢?咱们直观理解肯定是:第t帧的时候A点的位置是(x1, y1),那么我们在第t+1帧的时候再找到A点,假如它的位置是(x2,y2),那么我们就可以确定A点的运动了:(ux, vy) = (x2, y2) - (x1,y1)。
那怎么知道第t+1帧的时候A点的位置呢? 这就存在很多的光流计算方法了。

1981年,Horn和Schunck创造性地将二维速度场与灰度相联系,引入光流约束方程,得到光流计算的基本算法。人们基于不同的理论基础提出各种光流计算方法,算法性能各有不同。Barron等人对多种光流计算技术进行了总结,按照理论基础与数学方法的区别把它们分成四种:基于梯度的方法、基于匹配的方法、基于能量的方法、基于相位的方法。近年来神经动力学方法也颇受学者重视。
--------------------------来自百度
 
ten Qiu
小型空中机器人爱好者
 
 
特征点移动,估算出xy位移的增量
 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

光流定位原理是什么??【转】 的相关文章

  • 计算机视觉基础(三)——对极几何中的基本矩阵F和本质矩阵E

    计算机视觉中 xff0c 尤其是双视图几何中 xff0c 基本矩阵F和本质矩阵E扮演着重要角色 xff0c 今天我们就来简单了解一下它们吧 由于公式比较多 xff0c 所以直接在word中编辑好后整个截图过来了 xff08 参考书目 计算机
  • 使用docker搭建开发环境

    我的主力机是windows windows下面有太多提升效率的软件 但是开发的时候不得不使用linux 就单单开发而言 我还是喜欢使用linux 所以就造成了我得在windows下面使用虚拟机 这是最开始的办法 后面得知有vagrant这个
  • ROS的单线程Spinning和多线程Spinning

    单线程Spinning ros spin 是最简单的单线程自旋 它会一直调用直到结束 用法 ros spin 另一个单线程spinning是ros spinOnce 它定期调用等待在那个点上的所有回调 用法 ros spinOnce 简单的
  • antd 的form 表单怎么回显数据_antd Form表单的initialValue问题

    在initial中是有初始值的 xff0c 但是却不显示初始值 xff0c 请大佬解答一下这个问题 const formItem 61 type 3 label 39 柜子编号 39 name 39 ID 39 width 39 150px
  • echarts 与 highcharts

    一 xff0e 简介 echarts echarts是百度公司前端开发的一个图表库 xff0c 2013年发布第一版 xff0c 主要采用canvas画图 xff0c 目前版本3 8 4 xff1b 完全免费 xff1b highchart
  • c语言不同源文件变量,我在哪里可以在c程序中声明全局变量,无论是在头文件还是源文件中...

    本问题已经有最佳答案 xff0c 请猛点这里访问 嗨 xff0c 我是一个C 43 43 开发者 xff0c 现在我正在做C编程 我的问题是 xff0c 在C程序中 xff0c 哪个地方更好地声明全局变量 头文件或源文件 如果我的全局变量未
  • ***网址大全

    网址大全 最全的 国内 基地 http www hackbase com 帝国 http www darkup com 中国 联盟 http www chinahacker com起点 网络 http www qdhack com 边缘 h
  • 监控硬盘容量计算

    如何快速的计算摄像头一天存储量 摄像机的码流即监控视频流的带宽 xff0c 分为主码流和子码流 xff0c 主码流用来存储 xff0c 子码流一般用来预览 xff0c 所以录像回放时大家看到的视频质量要高于预览时看到的 在不同分辨率 帧率以
  • 【原】Hadoop伪分布模式的安装

    Hadoop伪分布模式的安装 环境参数 1 Host OS xff1a Win7 64bit 2 IDE xff1a Eclipse Version Luna Service Release 2 4 4 2 3 虚拟机 xff1a VMwa
  • 背景建模技术(四):视频分析(VideoAnalysis)模块

    视频分析模块主要包含两个函数 xff0c 一个是VideoAnalysis setup xff08 xff09 xff0c 其主要功能就是确定测试的视频是视频文件或摄像头输入亦或是采用命令行参数 xff1b 第二个函数是VideoAnaly
  • ubuntu 安装docker + seagull实现图形化管理

    环境 xff1a ubuntu 14 04 server 通过Docker源安装最新版本 要安装最新的 Docker 版本 xff0c 首先需要安装 apt transport https 支持 xff0c 之后通过添加源来安装 sudo
  • Ethzasl MSF源码阅读(1):程序入口和主题订阅

    关于IMU融合知乎上的一篇问答 xff1a 有哪些开源项目是关于单目 43 imu做slam的 xff1f Ethz的Stephen Weiss的工作 xff0c 是一个IMU松耦合的方法 1 程序入口 xff1a ethzasl msf
  • 自动化运维的5大好处

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 努力解决企业IT日益增长的运维挑战 xff0c 大多数运维团队面临的最核心问题在于 如何用更少的资源完成更多工作 自动化运维则是这一问题的理想解决方案 xff0c 特别是在
  • UP Board 串口使用心得

    前言 原创文章 xff0c 转载引用务必注明链接 本文使用Markdown写成 xff0c 为获得更好的阅读体验和正常的图片 链接 xff0c 请访问我的博客 xff1a http www cnblogs com sjqlwy p up s
  • [转]Linux守护进程基础

    为什么80 的码农都做不了架构师 xff1f gt gt gt 1 守护进程中涉及到的基本概念 1 1进程组 1 1 1 进程组基本概念 进程组是一个或多个进程的集合 xff0c 可以接收来自同一个终端的各种信号 每运行一个程序或是命令都将
  • Spring Cloud核心组件详解

    转自 xff1a 作者 xff1a 石杉的架构笔记 链接 xff1a https juejin im post 5be13b83f265da6116393fc7 来源 xff1a 掘金 著作权归作者所有 商业转载请联系作者获得授权 xff0
  • unity 3d开发的大型网络游戏

    unity 3d开发的大型网络游戏 一 总结 1 unity的官网 上面应该有游戏列表 2 unity3D是很好的3d游戏引擎 xff0c 也支持2d xff0c 也能做很多画面精良的3A级游戏 3 范围 xff1a 电脑游戏 xff0c
  • 多系统电脑切换系统操作步骤

    1 电脑搜索栏输 msconfig 会出现下图 2 点引导 xff0c 多个系统的话 xff0c 引导这里显示的是多条信息 3 切换系统 在引导框中选中自己要切换的系统 xff0c 然后点击设为默认值 xff0c 再点应用 xff0c 再确
  • STM32标准外设库、 HAL库、LL库

    工作以来一直使用ST的STM32系列芯片 xff0c ST为开发者提供了非常方便的开发库 到目前为止 xff0c 有标准外设库 STD库 HAL库 LL库 三种 前两者都是常用的库 xff0c 后面的LL库是ST最近才添加 xff0c 目前
  • 图形算法可视化

    最近看了一些和图形 算法可视化相关的文章和代码 xff0c 挺有意思 xff0c 于是自己也学着做了些东西 迷宫生成算法 迷宫小时候玩过 xff0c 但从来没琢磨过迷宫是怎么设计的 xff0c 以为就是有人慢慢画出来的 看过网上这篇文章后

随机推荐

  • C/C++变量命名规则

    变量命名规则是为了增强代码的可读性和容易维护性 以下为C 43 43 必须遵守的变量命名规则 xff1a 1 变量名只能是字母 xff08 A Z xff0c a z xff09 和数字 xff08 0 9 xff09 或者下划线 xff0
  • 会议论文重新投稿算不算侵权?这肯定是所多人都遇到过的问题。

  • ubutu使用apt-get 安装报:Err http://security.ubuntu.com precise-security InRelease 等

    今天安装了下ubutu xff0c 安装完后按照教程使用apt get install 安装相关软件 xff0c 报错 复制错误百度了很久 xff0c 基本都是说源了问题 更换了好几个源 xff0c 还是没有成功 最后看见这个帖子 xff0
  • [追加评论]三款SDR平台对比:HackRF,bladeRF和USRP

    这三个月 xff0c 有幸把3种板子都用到了 说说使用体会 我用过其中的HackRF xff0c bladeRF x115 xff0c USRP B210 我并没有仔细的测量各种板子的射频指标什么的 xff0c 只是做各种实验的时候用到它们
  • linux zip

    zip r myfile zip 将当前目录下的所有文件和文件夹全部压缩成myfile zip文件 xff0d r表示递归压缩子目录下所有文件 2 unzip unzip o d home sunny myfile zip 把myfile
  • Eclipse中文注释乱码解决

    将别人的项目或JAVA文件导入到自己的Eclipse中时 xff0c 常常会出现JAVA文件的中文注释变成乱码的情况 xff0c 主要原因就是别人的IDE编码格式和自己的Eclipse编码格式不同 总结网上的建议和自己的体会 xff0c 可
  • H3C子接口配置要点及实例说明

    xfeff xfeff 类型一 xff1a 以太网子接口配置要点 单臂路由 第一步 xff1a 在路由器对端的交换机上配置好vlan信息 xff08 如vlan10 vlan20 xff09 第二步 xff1a 将交换机上与路由器直接相连的
  • 常用的SQL聚合函数:

    AVG 返回集合的平均值 COUNT 返回集合中的项目数 MAX 返回集合中的最大值 MIN 返回集合中的最小值 SUM 返回集合中所有或不同值的总和 GROUP BY 将结果按照指定的列进行分组 HAVING 过滤分组后的结果 聚合函数不
  • int型除以int型

    int型除以int型得到的还是int型 就算你是这样的 xff1a float a 61 5 3 xff0c 虽然你定义的a是float型 xff0c 但a得到的结果依旧是1 0000而不是1 66666 5 3先得到1 xff0c 然后再
  • Keepalived两节点出现双VIP情况及解决方法【原创】

    1 故障现象 俩台服务器keepalived的vip在俩台服务器同时出现 A xff1a 10 70 12 72 B xff1a 10 70 12 73 2 问题分析 1 xff09 先分析那台服务器在提供服务 A xff1a 10 70
  • 10款值得推荐的论坛系统源码

    无论您是一个技术娴熟的站长朋友 xff0c 还是初入互联网并致力于在这片领土发展的准站长 xff0c 或者您只是一个还未毕业的学生 xff0c 在为了毕业设计 课程设计不停的搜集资料 xff0c 只要您需要的是社区论坛系统的源码 xff0c
  • make[1]: *** [storage/perfschema/unittest/CMakeFiles/pfs_connect_attr-t.dir/all] 错误 2 解决方法...

    make 2 storage perfschema unittest pfs connect attr t 错误 1 make 1 storage perfschema unittest CMakeFiles pfs connect att
  • Yii2 中cookie的用法(1)

    Yii使用 yii web Cookie对象来代表每个cookie xff0c yii web Request 和 yii web Response 通过名为 cookies 的属性维护一个cookie集合 xff0c 前者的cookie
  • 修改.srt格式字幕文件

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 正文前 xff1a 20160821104107 下载了 惊天魔盗团2 电影来看 xff0c 发现字幕只有英文没有中文 打开 srt文件 xff0c 随便改了一下 xff0
  • VC6.0+MSDN 下载(含链接)安装 全教程

    Microsoft Visual Studio 6 0 简体中文企业版 下载路径显示不出 xff0c 这个软件比较好下载 xff0c 主要是MSDN MSDN CD1 http ftp sdshiyan cn soft program DN
  • Dynamic Drop Down(Translate Values)

    This code i have got Ittool box com It is very usefull we usually have requirement when we want to hide some translate v
  • Windbg实用手册

    摘要 Windbg的命令分为标准命令 xff0c 原命令和扩展命令 xff0c 输入问号 可以显示所有的标准命令的帮助信息 元命令以一个点 开始 xff0c 输入 help可以显示所有的原命令的帮助信息 扩展命令以叹号 开始 阅读全文 Ri
  • Spring注解@Component、@Repository、@Service、@Controller区别 .

    Spring 2 5 中除了提供 64 Component 注释外 xff0c 还定义了几个拥有特殊语义的注释 xff0c 它们分别是 xff1a 64 Repository 64 Service 和 64 Controller 在目前的
  • sql 语句中如何写判断

    当ID为26时 xff0c 查询的result是ok span class token keyword select span name span class token punctuation span span class token
  • 光流定位原理是什么??【转】

    转自 xff1a https www zhihu com question 35980316 Jessie Lee HIT 控制 无人机 光流是测速算法 xff0c 并不是直接定位的 简单理解 xff0c 光流就是通过检测图像中光点和暗点的