如何计算视频中的对象
Posted
技术标签:
【中文标题】如何计算视频中的对象【英文标题】:How to count objects in videos 【发布时间】:2018-12-17 16:37:18 【问题描述】:一般来说,关于如何使用视频作为深度学习模型的输入,是否有任何“最佳实践”?我们如何以最有效的方式注释视频?
另外,我有一些鸭子穿过通道的视频。我想数一下通过通道的灰鸭和黄鸭的数量。一只鸭子可以直接通过(最简单的情况),也可以在通道中停留片刻通过,也可以通过一半通道然后返回另一个方向(在这种情况下不应该计算在内)。
我计划使用 Mask-RCNN 对每一帧中的鸭子进行分割,然后查看第 i 帧的掩码和第 i+1 帧的掩码,并制定规则来计算真正通过通道的不同鸭子的数量。 这对我来说似乎不是最佳选择。
有什么想法/帮助/提示吗?
【问题讨论】:
我认为“光流”算法是视频中运动跟踪的最佳方法 【参考方案1】:我想这取决于视频,但一个不错的选择是
-
注释一些“不相似的框架”:http://www.robots.ox.ac.uk/~vgg/software/via/
使用 YOLO 或 Mask-RCNN 等模型在每个对象上找到边界框并对其进行分类。或者使用光流算法。 光流算法也是一种选择,而不是使用深度学习,但我最终决定不使用它,因为有几个可能的结果,从我的角度来看,它不太自动化:*移动的对象,停止并重新开始移动需要特别注意 *具有一种主要颜色的对象可能会被分成两部分(中间像素可能会被视为不移动) *一起通过的对象组可能会被视为一个对象
然后使用跟踪算法,您将能够为每个对象指定一个特定的 ID,从而在它们通过特定线路时进行计数。
【讨论】:
以上是关于如何计算视频中的对象的主要内容,如果未能解决你的问题,请参考以下文章
我如何通过 ip 为匿名用户计算 django 中的视频观看次数