OpenCV学习笔记 - 使用 OpenCV 检测运动的最简单方法

一、运动检测

        运动检测是检测视频序列中移动对象的过程。在计算机视觉中,它是检测视频帧中像素级变化的过程。我们可以用它来发现现实世界中的新对象,甚至执行与类无关的对象检测,这在地理空间分析、客户分析、监视、自治和其他相关领域非常有用。

        如何检测视频中的运动?这里介绍了一些可用于检测运动的基本方法,并展示了如何使用 Python从头开始​​编写每种方法。

        主要技术如下

        第 1 部分 — 帧差分

        第 2 部分 — 光流

        第 3 部分 — 背景扣除

        在这篇文章中,我们首先使用最简单的方法来实现运动检测,它只涉及基本的 opencv 函数。该方法依赖于一种称为“帧差分”的方法,即从前一视频帧中减去当前视频帧并记录差异,这些差异即对应于运动。

        下面是基本步骤,之后我们从头开始用 Python 进行编码。

        1、计算灰度帧差异

        2、对帧差异设置阈值以获得运动蒙版

        3、在运动蒙版中查找轮廓并获取其边界框

        4、对检测到的边界框执行非极大值抑制

        我们对帧差异进行阈值处理以获得运动掩模,该运动掩模提供了有关场景中运动物体的丰富信息。运动掩模是本教程系列中所有方法的精髓。

你可能感兴趣的:(OpenCV从入门到精通,深度学习从入门到精通,数字图像处理从入门到精通,opencv,计算机视觉,运动检测,帧差分,光流算法,背景扣除)