OpenCV中的函数,用于跟踪经过遮挡对象的渐变曲线



OpenCV中是否有函数可以"跟踪"逐渐变化的曲线,而不遵循急剧发散的交叉线?例如:如果一个人试图追踪两个交叉回旋镖的单独轮廓,有没有一种简单的方法可以沿着曲线"穿过"两个回旋镖交叉的交叉点?

这将需要某种惯性分量,当曲线被另一个交叉的回旋镖打断时,该惯性分量将继续一条"虚拟"线,然后在另一侧找到原始线的延续。

这看起来很简单,但在试图解释它时听起来很复杂。:-)这似乎是一种经常发生的场景(试图追踪被遮挡的物体)。也许是第三方图书馆或专业项目的一部分?

我相信我已经找到了解决这个问题的方法。OpenCV的approxPolyDP查找多边形以近似轮廓。跟踪多边形边之间的角度相对容易(与查找曲线的连续切线相反)。当在两个物体相遇的地方发现"内角"时,应该可以与相对侧的相应内角相匹配。

例如:当两个香蕉/回旋镖/任何东西重叠时,轮廓将形成一种十字,有四个点和四个"内角"(>180度)。应该可以匹配四个内角的坐标。如果它们的对应线(重叠前的最后一条已知轨迹)足够接近,可以平行,那么这表明物体重叠,而不是一个更复杂的形状。

approxPolyDP将其简化为几何图形和三角形。这应该是一个比我之前设想的连续贝塞尔曲线和惯性更容易的解决方案。我应该早点想到这个。

相关内容

  • 没有找到相关文章

最新更新