OpenCV C++,找到描述物体形状的方程

OpenCV C++, find the equation describing the shape of an object

Thresholded Image

BGR Image

Fitted Thresholded Image

大家好。我正在研究一个关于使用 OpenCV for C++ 接口的计算机视觉的项目。我的目的是跟踪一个用彩色胶带标记的移动可变形物体。通过处理视频的每一帧,我能够有效地隔离颜色(正如您在阈值图像中看到的那样)并将其轨迹、运动和形状跟踪到 BGR 图像中。 我的问题是我需要推断一个方程或多项式来描述我的跟踪对象所呈现的当前形状。 有没有有效的方法来做到这一点?我不知道如何解决这个问题。

提前致谢,

干杯!

如果我没理解错的话:

我会开始在你的形状上画一个多边形。一个常用的方法是 alpha-shapes.

您还可以尝试一种非常强大的优化方法,因为您基本上可以根据需要设计成本函数和约束。但它的计算成本非常高(取决于算法)。

看看这个thread:它可能对你有帮助。

如果您的最终目标是以各种形式检测您的形状,我认为您想阅读有关活动形状模型的信息:https://en.wikipedia.org/wiki/Active_shape_model

如果您只想在每个时间实例中获得形状的多项式拟合,我会使用 Cherkesgiller Tural 的建议并阅读有关 2D 曲线拟合的内容。