如何解决基于旋转的涡流检测和编号
问题陈述:我有一个 video 的 ANSYS 模拟 vortices 是由于平板下沉而形成的。该视频包含漩涡(简单来说是斑点),它们根据旋转(基于红色或蓝色)进行区分。
目的:需要根据旋涡的旋转来识别和标记旋涡。例如,顺时针旋转(红色)的涡旋标记为 R1、R2、R3 等,逆时针旋转(蓝色)的涡旋标记为 B1、B2、B3 等。
问题:我已经能够使用轮廓检测将涡旋识别为顺时针和逆时针,但主要问题是编号。当识别出的 blob 超出框架时,标签被破坏,即。如果漩涡有一个标签 A1 并且现在离开框架,这个标签会被分配给框架中的另一个漩涡,从而失去唯一性。
解决方法
所以你的问题是跟踪?
-
跟踪“对象”及其位置。我可以称它们为漩涡,但我会保持一般性。
-
在新框架中,找到斑点
-
然后将这些 blob 中的每一个分配给空间上最近的对象(在一定距离内)。检查以确保您没有将多个 blob 与同一个对象匹配……或者至少注意这种可能性。如果在一定距离内没有现有对象,则为此 blob 创建一个新对象。
-
从其分配的 blob 的当前位置更新每个对象的位置
-
注意剔除消失的对象(即没有赋值)。
这是按分配跟踪。
这可以任意复杂化。
您应该跟踪对象的颜色,以免将红色斑点与蓝色对象(漩涡)相匹配。
您可以仅使用质心来表示您的对象。或者您可以使用轮廓来表示它们。那么“距离”可能涉及计算重叠甚至形状(查找傅立叶描述符,它们是轮廓的极坐标表示的傅立叶变换)。
您可以为对象分配(并更新)速度,并线性预测其下一个位置,然后使用它也许获得更稳定的预测。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。