繁体   English   中英

当从凸轮检测到运动时,OpenCv C ++记录视频

[英]OpenCv C++ record video when motion detected from cam

我正在尝试使用简单的运动检测代码来检测摄像机的运动。 我正在使用OpenCV库,并且我有一些代码利用两个框架之间的差异来检测更改。

我的差速器框架工作得很好,没有运动时它是黑色的。

问题是,现在我如何才能检测到该黑度停止记录或没有黑暗开始记录帧。

谢谢大家

一个非常简单的事情是将整个diff图像求和成一个整数。 如果该总和超过阈值,则您可以移动。 然后,您可以使用第二个阈值,并且当总和低于该限制时,您将停止移动。

您也可以使阈值仅在自上一个阈值以来已经过了一段时间才更改程序状态。 即,在检测到运动之后,您将在10秒钟内不检查运动是否不足。

如何在内部存储黑框并使用相同的比较代码呢? 如果新帧与全黑帧不同(超过阈值),则开始录制。

这似乎是最简单的方法,因为您已经降低了图像处理算法的效率。

查看自由软件运动的代码以获取启发性的想法。

要进行可靠的运动检测,需要牢记许多注意事项。 例如,可以忍受太阳旋转带来的缓慢变化。 或者接受瞬时图像故障,这些故障尤其可能来自最便宜的相机。

从我的少量经验来看,我认为比将所有差异相加更好,它可以算出变化超过特定阈值的像素数。

Motion还提供了遮罩,例如,您可以忽略附近道路的运动。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM