如何使用python计算opencv中由3D点组成的圆弧的弧长?
我用离散点采样了一条曲线。 这不是一条闭合曲线。 我想计算弧长。 在opencv中,arclength函数获取2D点 有什么想法吗如何使用python计算opencv中由3D点组成的圆弧的弧长?,python,opencv,Python,Opencv,我用离散点采样了一条曲线。 这不是一条闭合曲线。 我想计算弧长。 在opencv中,arclength函数获取2D点 有什么想法吗 非常感谢请记住,取离散点这将是一个估计值,但计算弧长的粗略方法是将后续点之间的弧长求和。因此,如果x是闭合曲线上采样2D点的有序列表: sum( magnitude(x[i]-x[i+1]) for i in range(len(points)-1) ) 如果你知道曲线的一些其他属性,你也许可以更准确地计算它 同样的技术也适用于更高维度的向量,您可以使用以下通用
非常感谢请记住,取离散点这将是一个估计值,但计算弧长的粗略方法是将后续点之间的弧长求和。因此,如果
x
是闭合曲线上采样2D点的有序列表:
sum( magnitude(x[i]-x[i+1]) for i in range(len(points)-1) )
如果你知道曲线的一些其他属性,你也许可以更准确地计算它
同样的技术也适用于更高维度的向量,您可以使用以下通用公式:
def dist(X,Y):
return math.sqrt(
sum( (X[i] - Y[i])**2 for i in len(range(X)) )
)
sum( dist(x[i],x[i+1]) for i in range(len(points)-1) )
@Shan我错了,
震级
只适用于2D向量,所以你需要概括一下-我更新了我的答案,将其纳入其中。