【发布时间】:2015-10-31 04:53:57
【问题描述】:
我有一个预定义的参考视频帧,我想在大量视频文件中检测它。我根据参考帧测试每个视频帧,但我不确定什么是最好的算法。
目前我正在使用 matchTemplate / TM_CCOEFF,它有点工作,但有点奇怪。这是一个 1:1 的匹配,所以我得到一个 1x1 的结果,其中的数字非常大(大于 MAX 整数)。很难设置任何阈值(我需要容忍质量较差的视频),因为这个数字是任意的。
我想知道是否有更好的方法,或者我只是以错误的方式使用它?
// 编辑 OK,我认为阈值的问题是我对双精度值的错误解释,TM_CCOEFF_NORMED 返回 0.0-1.0 值。
【问题讨论】:
-
框架一模一样吗?如果是这样,只需将参考帧与其他帧的绝对差值相加即可。价值 0 胜!
-
嗯,这就是框架不完全一样的东西。候选视频可能会受到压缩伪影的污染,甚至可能稍作修改(少量像素裁剪等)
-
如果大小相同,我仍然会尝试这种简单的方法。现在最低值获胜.. :D
-
我会试一试。你知道是否有一个函数可以总结图像中的所有像素。同样在类似的注释中,是否有一个函数可以获取矩形中的像素总和?
-
标量 s = sum(img(rect));
标签: opencv