发布于: 2024-7-10最后更新: 2024-7-16字数 00 分钟

type
status
date
slug
summary
tags
category
icon
password
光流主要是捕捉像素和像素之间的对应关系,基本操作单位是像素。
应用场景:对应物体的像素强度(光照)、视点不会改变;相邻像素向量有相似的运动。

基本光流公式

假设 表示图像位于处在 时刻的像素值,则表示为时刻后对应像素点的位置,其变化到了处,即前后两帧对应的像素点有:
等式右边进行泰勒展开,则有:
忽略二阶无穷小项,左右两边减去有:
其中表示了图像的梯度,即表示随时间的梯度。 ,代表了光流分别沿X轴和Y轴的变化率。
约束方程只有一个,而方程有两个未知量,因此需要进行估计 。常见的有Lucas-Kanade光流估计、密集光流估计,这是从图像梯度出发去估计光流。
💡
此外还有基于匹配、能量、相位、神经动力学等方法去进行光流估计。

Lucas-Kanade(稀疏光流)

核心计算

LK光流假设①亮度不变;②像素周围8个点都有相同运动(即3x3的窗口大小),通过这9个点的变量方程,采用最小二乘法去估计,如下所示:
公式中要求可逆,即选取的像素点需要是一些亮度变化明显的角点。

问题

  1. 只能处理小范围变化,大范围变化不能跟踪?
 

LK优化之金字塔

当物体运动幅度很大,在图像里变化很快。金字塔分层优化的LK(以下简称PyLK)核心思想是 缩小图像尺寸 。使得原本大运动的物体,在小分辨率下也保持区域内相同运动。

算法流程

  1. TODO
 
左:LK算法;右:使用对极几何辅助的LK算法
左:LK算法;右:使用对极几何辅助的LK算法

opencv实现代码

此代码不会检查下一个关键点的正确性。因此,即使任何特征点在图像中消失,光流也有可能找到看起来接近它的下一个点。因此实际上对于稳健的跟踪,角点OpenCV 样本提供了这样一个样本,它每 5 帧查找特征点,它还对光流点进行向后检查,以仅选择好的样本
notion image

密集光流

计算帧中所有点的光流。Opencv里的代码是基于Gunnar Farneback算法(2003),其特点是基于多项式展开的双帧运动估计。

核心计算

  1. 假设图像输入是二维矩阵(即灰度矩阵),像素点位置为,像素值为 ,则其多项式展开为:
    1. 其中 是2x2的对称矩阵(通过像素的邻域信息的最小二乘加权拟合得到的,权重系数与邻域的像素大小和位置有关),是2x1矩阵,是偏置项
  1. 以上公式右侧展开:
    1. 将原有图像的二维信号空间,转换到以 (1,𝑥,𝑦,𝑥2,𝑦2,𝑥𝑦)作为基函数的空间
    1. TODO :最小二乘、权重的选择
     

    opencv实现代码

    其中cv2.calcOpticalFlowFarneback() 中参数及其含义如下
    • prev:前一帧图像
    • next: 后一帧图像
    • flow: 输出的光流矩阵。矩阵大小同输入的图像一样大,但是矩阵中的每一个元素可不是一个值,而是两个值,分别表示这个点在x方向与y方向的运动量(偏移量)。
    • pyr_scale: 金字塔上下两层之间的尺度关系
    • levels: 金字塔层数
    • winsize: 均值窗口大小,越大越能denoise并且能够检测快速移动目标,但会引起模糊运动区域
    • iterations: 迭代次数
    • poly_n: 像素领域大小,一般为5,7等
    • poly_sigma: 高斯标注差,一般为1-1.5
    • flags: 计算方法
     
     

    参考

     
     

    Loading...
    Anomalib异常检测(二):PatchCore

    Anomalib异常检测(二):PatchCore

    Patchcore—基于xx


    Anomalib异常检测(一):Padim

    Anomalib异常检测(一):Padim

    Padim——基于补丁分布建模的异常识别框架


    公告
    🎉Wtoy 全新博客已上线 🎉
    -- 未来发展 ---
    https://blog.wtoy.top 打算长期发展成为一个高质量的博客论坛,涵盖计算机、人工智能、生活杂记等方面的内容。本人尽力去更新这个博客,恕本人能力有限,博文中会有些许不足之处,恳请大家批评指正,多多包涵!

    -- TODO ---
    ⭐评论区
    自定义样式(瞎搞
    友链
    越来越多质(guan)量(shui)文章
    ⚠️
    声明:本站内容均为个人原创,若有抄袭、侵权等行为,请及时用邮箱联系我。此外,本站所有内容不保证绝对正确性,若因引用本站内容而导致的问题,本站概不负责。