检测视频中的更改

时间:2011-08-02 02:00:54

标签: video autoit motion-detection

我有一个朋友,他的工作是观看视频并记下屏幕上发生某些事情的时间。大部分时间它只是一个蓝色/白色屏幕,因此几乎没有变化。这是一个外部视频,因此颜色会随着时间的推移而变化。它也是一个雪域,所以天空和地面之间几乎没有区别。

我想知道是否有一种方法可以轻松找到屏幕上发生的事情,而无需坐下来完全观看。我想到了两种方法。

  1. 视频编码为H.264,使用增量压缩。 是否有工具可以显示特定数据的使用量 帧?比特率的峰值将表明视频的活动。 这有助于在快速扫描中找到每个活动点。

  2. 其次,可以使用AutoIt等脚本程序 查看框架并获得平均颜色,然后发出警报 一定数量的像素落在“公差等级”附近 平均颜色。视频仍然需要开始播放 结束,但没有必要注意这件事。

  3. #1有这样的工具吗?如果有必要,我可以为#2编写代码,我以为我会看到可用的资源。

2 个答案:

答案 0 :(得分:1)

您可以使用autoIt对屏幕的多个像素进行采样并返回颜色。然后跟踪它是否发生了巨大变化也许在一个人大小的盒子里。它完全支持从屏幕捕获和解码屏幕元素。然后可以发送电子邮件或短信提醒。

答案 1 :(得分:1)

检查AutoIt中的PixelGetColor(单个像素)或PixelSearch(扫描矩形)。 您可以使用PixelGetColor保存像素颜色,并每秒检查相同的位置。如果新值与旧值不同,则会发生一些事情。为了增加检测变化的几率,您当然应该检查多个像素。

如果您知道要搜索的颜色,请使用PixelSearch。 PixelSearch能够扫描整个矩形。 它甚至还有一个“阴影变化”参数,您可以在其中指定搜索特定颜色时想要的容差。