光流法( Optical Flow Method)

2023-11-16

        在计算机视觉中,光流法即可用于运动目标检测,也可以用于目标跟踪。本文主要介绍光流法在运动目标检测和目标跟踪中的区别与联系。


1、光流与光流场

        光流的概念最初是由 Gibson 于 1950 年首先提出来的。当人的眼睛观察运动物体时,物体的景象在人眼的视网膜上形成一系列连续变化的图像,这一系列连续变化的信息不断“流过”视网膜(即图像平面),好像是一种光的“流”,故称之为光流。光流表达图像的变化,包含目标运动的信息,可用来确定目标的运动。光流三个要素:一是运动速度场,这是形成光流的必要条件;二是带光学特征的部分例如有灰度的象素点,它可以携带运动信息;三是成像投影从场景到图像平面,因而能被观察到。

        定义光流以点为基础,具体来说,设(u, v) 为图像点 (x, y) 的光流,则把 (x, y, u, v) 称为光流点。所有光流点的集合称为光流场。 当带光学特性的物体在三维空间运动时,在图像平面上就形成了相应的图像运动场,或称为图像速度场。在理想情况下,光流场对应于运动场

        总而言之,光流是由图像的亮度变化形成的,因此,光流场近似于运动场。


2、光流场的计算

2.1、光流约束方程

       光流场的计算最初是由 Horn 和 Schunck[1]于 1981 年提出的,而后由 Lueas 和 Kanad[2]提出了改进光流算法。

       光流法的核心就是求解出运动目标的光流,即速度。根据视觉感知原理,客观物体在空间上一般是相对连续运动的,在运动过程中,投射到传感器平面上的图像实际上也是连续变化的。为此可以假设瞬时灰度值不变,即灰度不变性原理。由此可以得到光流基本方程,灰度对时间的变化率等于灰度的空间梯度与光流速度的点积。如下:


       约束方程只有一个,而方程的变量有两个,在这种情况下无法求得 u 和 v 的确切值。这种不确定性称为孔径问题(aperture problem)。此时需要引入另外的约束条件,从不同的角度引入约束条件,导致了不同的光流场计算方法。到目前为止,各种各样的方法和改进方法己不下几十种,这些方法有着很大的差异,对现有方法还缺乏一个系统的分类。这里将光流算法分为以下四大类:

  • 基于梯度的光流计算方法
  • 基于区域的光流计算方法
  • 基于频域的光流计算方法
  • 贝叶斯(Bayesian)光流算法

2.2、基于梯度的光流计算方法

       基于梯度的方法又称为时空梯度法,也称微分法,它是利用图像序列灰度的时空微分(即时空梯度函数)来计算图像上每一像素点的光流。微分法分为:

(1)全局微分法:

               Horn-Schunck算法:假设光流在整个图像上光滑变化,即速度的变化率为零。

(2)局部微分法:

               Lucas-Kanade算法:假设在一个小空间领域上运动矢量保持恒定,使用加权最小二乘法估计光流。


3、光流的应用

3.1、运动目标检测

         给图像中的每个像素点赋予一个速度矢量,这样就形成了一个运动矢量场。根据各个像素点的速度矢量特征,可以对图像进行动态分析。如果图像中没有运动目标,则光流矢量在整个图像区域是连续变化的。当图像中有运动物体时,目标和背景存在着相对运动。运动物体所形成的速度矢量必然和背景的速度矢量有所不同,如此便可以计算出运动物体的位置。需要提醒的是,利用光流法进行运动物体检测时,计算量较大,无法保证实时性和实用性。

3.2、目标跟踪
(1)对一个连续的视频帧序列进行处理;
(2)针对每一个视频序列,利用一定的目标检测方法,检测可能出现的前景目标;
(3)如果某一帧出现了前景目标,找到其具有代表性的关键特征点(可以随机产生,也可以利用角点来做特征点);
(4)对之后的任意两个相邻视频帧而言,寻找上一帧中出现的关键特征点在当前帧中的最佳位置,从而得到前景目标在当前帧中的位置坐标;
(5)如此迭代进行,便可实现目标的跟踪;


参考文献:
[1] Berthold K. P. Horn, Brian G. Schunck. Determining Optical Flow[J]. Artificial Intelligence, 1981: 185-203.
[2] Bruce D. Lucas, Takeo Kanade. An Iterative Image Registration Technique with an Application to Stereo Vision[J]. Proceeding of Imaging Understanding Workshop, 1981: 120-131.

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

光流法( Optical Flow Method) 的相关文章

  • Object Detection(目标检测神文)

    目标检测神文 非常全而且持续在更新 转发自 https handong1587 github io deep learning 2015 10 09 object detection html 如有侵权联系删除 更新时间 20190226
  • [YOLO专题-16]:YOLO V5 - 如何把labelme json训练数据集批量转换成yolo数据集

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 122334367 目录 前言 第1章
  • 目标检测入坑指南3:VGGNet神经网络

    学了蛮久的目标检测了 但是有好多细节总是忘或者模棱两可 感觉有必要写博客记录一下学习笔记和一些心得 既可以加深印象又可以方便他人 博客内容集成自各大学习资源 所以图片也就不加水印了 需要自取 本专栏会详细记录本人在研究目标检测过程中的所学所
  • 人体三维重建——参数化人体方法简述

    三维人体形状指的是以三维网格形式表示的人体几何形状模型 按照 1 中的分类方式 可以将三维人体形状重建粗略的分为参数化方法与非参数化方法 本次先介绍参数化方法 参数化人体形状重建方法依赖于某个基于统计得到的人体参数化模型 仅需一组低维向量
  • IA-YOLO项目中DIP模块的初级解读

    IA YOLO项目源自论文Image Adaptive YOLO for Object Detection in Adverse Weather Conditions 其提出端到端方式联合学习CNN PP和YOLOv3 这确保了CNN PP
  • 【计算机视觉

    文章目录 一 检测相关 11篇 1 1 Perspective aware Convolution for Monocular 3D Object Detection 1 2 SCoRD Subject Conditional Relati
  • yolo v3 fatal : Memory allocation failure

    torch版的 yolov3报错 fatal Memory allocation failure parser add argument n cpu type int default 8 help number of cpu threads
  • 睿智的目标检测60——Tensorflow2 Focal loss详解与在YoloV4当中的实现

    睿智的目标检测60 Tensorflow2 Focal loss详解与在YoloV4当中的实现 学习前言 什么是Focal Loss 一 控制正负样本的权重 二 控制容易分类和难分类样本的权重 三 两种权重控制方法合并 实现方式 学习前言
  • YOLO算法v1-v3原理通俗理解

    YOLO算法v1 v3原理通俗理解 深度学习检测方法简述 我们所使用的目标检测 其实就是让机器在图片找到对应的目标 然后给图片上的目标套上一个框框 并贴上标签 比如如果图片上有人 就把人框起来并标注一个 person 使用深度学习进行目标检
  • 基于深度学习实现实时视频目标检测

    前言 实时视频目标检测是计算机视觉领域的研究热点之一 其应用场景包括智能监控 自动驾驶 机器人视觉等多个领域 深度学习技术的快速发展使得实时视频目标检测变得更加可行和准确 本文提出一种基于深度学习实现的实时视频目标检测系统 使用Python
  • YOLOv8改进开源

    大致介绍一下AI全栈技术社区的相关内容 主要涵盖了YOLO全系列模型的改进 量化 蒸馏 剪枝以及不同工具链的使用 同时也涵盖多目标跟踪 语义分割 3D目标检测 AI模型部署等内容 具体内容小伙伴们可以参考下面的目录部分 所有内容均有答疑服务
  • [人工智能-深度学习-77]:目标检测 - 常见项目、应用

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 122307915 目录 前言 场景一
  • 全网最最最轻量级检测网络 yolo-fastest 快速上手

    文章目录 0x01 Yolo Fastest 0x02 Prepare step1 clone step2 make step3 run darknet 0x03 Train step1 获取权重文件 step2 准备数据集 step3 修
  • 基于ShuffleNetv2-YOLOv4模型的目标检测

    目录 1 引言 摘要 1 1 说明 1 2替换完成的工程请参考gitee 2 网络结构基础 2 1YOLOv3 2 1 YOLOv4算法 2 3 ShuffleNetv2 2 4 替换后的网络结构 3 实验结果 3 1实验环境配置及数据集介
  • RV融合!自动驾驶中基于毫米波雷达视觉融合的3D检测综述

    编辑 汽车人 点击下方 卡片 关注 自动驾驶之心 公众号 ADAS巨卷干货 即可获取 点击进入 自动驾驶之心 多传感器融合 技术交流群 本文只做学术分享 如有侵权 联系删文 自主驾驶在复杂场景下的目标检测任务至关重要 而毫米波雷达和视觉融合
  • yolov5单目测距+速度测量+目标跟踪

    要在YOLOv5中添加测距和测速功能 您需要了解以下两个部分的原理 单目测距算法 单目测距是使用单个摄像头来估计场景中物体的距离 常见的单目测距算法包括基于视差的方法 如立体匹配 和基于深度学习的方法 如神经网络 基于深度学习的方法通常使用
  • 目标检测YOLO实战应用案例100讲-自动驾驶复杂场景下目标检测(续)

    目录 3 2 YOLOv5框架的分析 3 3改进算法的基本思想 3 4改进聚类算法 3 5重构损失函数模型和NMS算法 lt
  • 目标检测YOLO系列从入门到精通技术详解100篇-【目标检测】机器视觉(基础篇)(十三)

    目录 前言 几个高频面试题目 人工智能 机器学习 计算机视觉之间的关系 知识储备 计算机视觉 计算机图像学 图像处理基础知识 光学棱镜
  • 深度学习目标检测全连接层什么意思

    在深度学习目标检测中 通常我们使用卷积神经网络 Convolutional Neural Network CNN 进行特征提取 CNN 的主要结构包括卷积层和池化层 用于从输入图像中提取特征 然而 为了最终输出目标的类别和位置信息 通常在网
  • 3D点云检测神技 | UFO来了!让PointPillars、PV-RCNN统统涨点!

    作者 AI驾驶员 编辑 智驾实验室 点击下方 卡片 关注 自动驾驶之心 公众号 ADAS巨卷干货 即可获取 点击进入 自动驾驶之心 3D目标检测 技术交流群 本文只做学术分享 如有侵权 联系删文 在这篇论文中提出了一个关于在3D点云中检测未

随机推荐

  • vi的复制粘贴命令

    vi编辑器有3种模式 命令模式 输入模式 末行模式 掌握这三种模式十分重要 命令模式 vi启动后默认进入的是命令模式 从这个模式使用命令可以切换到另外两种模式 同时无论在任何模式下只要按一下 Esc 键都可以返回命令模式 在命令模式中输入字
  • SpringBoot多数据源导致mybatis驼峰映射配置失效

    SpringBoot多数据源导致mybatis驼峰映射配置失效 1 正常情况下 直接配置即可生效 比如 开启驼峰映射 开启示例 properties文件中配置 mybatis configuration map underscore to
  • 踩了大坑 : go json.Marshal时,结构体字段需要大写

    go中根据首字母的大小写来确定可以访问的权限 如果首字母大写 作用域则可以被其他的包访问 如果首字母小写 作用域则只能在本包中使用 包括接口 类型 函数和变量等 可以简单的理解成 首字母大写是公有的 首字母小写是私有的 出现问题 需要将js
  • 数据结构——图的两种遍历方法

    遍历定义 从已给的图中某一顶点出发 沿着一些边 访遍图中所有的顶点 且使每个顶点仅被访问一次 就叫做图的遍历 遍历实质 找每个顶点的邻接点的过程 图的特点 图中可能存在回路 且图的任一顶点都可能与其它顶点相通 在访问完某个顶点之后可能会沿着
  • gzip text html,Vue gzip压缩导致js无法解析 Content-Type: text/html(JS内容)(压缩完成是xxx.js.gz)...

    压缩配置 Vue config js 插件compression webpack plugin gzip压缩config plugin compressionPlugin use 代码混淆 new CompressionWebpackPlu
  • 识别操作系统的常用方式

    识别操作系统的方式 一 windows系统对大小写区分不是很明显 判断修改路径大小写后正常windows 报错linux 1 eg 大小写修改之后页面回显正常说明网站系统为windows 2 eg 可以判断该服务器系统为linux 二 通过
  • 计算机总线仲裁详解

    文章目录 总线仲裁 一 关于总线仲裁 二 总线仲裁的分类 1 集中仲裁方式 1 链式查询方式 2 计数器定时查询方式 3 独立请求方式 2 分布仲裁方式 总线仲裁 一 关于总线仲裁 总线仲裁来由 我们按照对总线有无控制功能将总线上所连接的各
  • SELinux深入理解

    1 简介 SELinux带给Linux的主要价值是 提供了一个灵活的 可配置的MAC机制 Security Enhanced Linux SELinux 由以下两部分组成 1 Kernel SELinux模块 kernel security
  • 中国古代数学问题——鸡兔同笼解析

    中国古代数学问题 鸡兔同笼解析 鸡兔同笼是一道古代数学问题 通过计算鸡和兔的总数量和腿的总数来求解鸡和兔的个体数量 这个问题在数学教育中经常被用来培养学生的问题解决能力和逻辑思维 下面 我们将对鸡兔同笼问题进行详细的解析 并附上相应的源代码
  • 三进制计算机_计算机数学原理之二进制

    上一节我们了解了曲线的矩形逼近 以及由此代表的模拟量的数位表示 基于以上知识 这节课我们可以开始学习二进制了 计算机原理之 二进制 对数值的数位表示 我们可以很自然的想起十进制 即所有的数字都用10个基本的符号表示 基本符号是0到9十个数字
  • c#复制一个文件到指定文件夹

    c 复制一个文件到指定文件夹 path 指定文件夹From www uzhanbao com fileName指定文件的完整路径 public void CopyFile string path string fileName FileIn
  • mybatis-plus+druid配置多套数据源

    这里我使用的是mysql和postgresql进行配置 详细讲讲会遇到的问题 1 首先引入需要用到的依赖
  • 期货开户关于基本面量化

    一 库存 供求矛盾看库存 东西没有了 缺了 就会涨价 不缺 一般不会涨 所以 一定要注意库存 去库存快的品种 特别是库存低 价格低的品种 要重点关注 库存有一点要特别注意 要是 有效去库存 通过降价让下游买货 这种 去库存 不是根本 因为库
  • 【Python】fetchone()和fetchall()

    fetchone 返回单个的元组 也就是一条记录 row 如果没有结果 则返回 None cu execute select user password from user where user s name arr cur fetchon
  • 【多目标优化算法】多目标蚱蜢优化算法(Matlab代码实现)

    个人主页 研学社的博客 欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码及详细文章讲解 1 概述
  • LeetCode 剑指 Offer 10- I. 斐波那契数列

    LeetCode 剑指 Offer 10 I 斐波那契数列 题目描述 写一个函数 输入 n 求斐波那契 Fibonacci 数列的第 n 项 即 F N 斐波那契数列的定义如下 F 0 0 F 1 1 F N F N 1 F N 2 其中
  • 用户画像统计标签(年龄段,消费周期,常用支付方式)

    年龄段 import bean HBaseMeta import org apache spark SparkContext import org apache spark sql 关联 不仅仅是一个相同的 可以 一个与两个之间 objec
  • 11.6.1:综合技巧练习 - 配置和测试网络

    实验ip分配如下 学习目标 创建 测试并配置整个实验网络 综合运用整套课程中学到的技巧 分析请求网页所涉及的事件 DNS ARP HTTP TCP IP Ethernet HDLC 分析在跟踪到 Web 服务器的路由时所涉及的事件 DNS
  • Nokogiri的使用 抓取csdn博客內容 rails

    Nokogiri 锯 使使用 Ruby 中的 XML 和 HTML 变得轻松而轻松 提供了一个明智的 易于理解的 API 阅读 编写 修改 和 查询 文档 它依赖于 libxml2 CRuby 和 xerces JRuby 等原生解析器 速
  • 光流法( Optical Flow Method)

    在计算机视觉中 光流法即可用于运动目标检测 也可以用于目标跟踪 本文主要介绍光流法在运动目标检测和目标跟踪中的区别与联系 1 光流与光流场 光流的概念最初是由 Gibson 于 1950 年首先提出来的 当人的眼睛观察运动物体时 物体的景象