我找到了一个小数学表达式来找到有序周长的曲率。我使用函数bwboundaries
得到了有序的边界。
要使用它,我开始定义三个坐标p1,p2和p3,它们是列向量x,y。
% the part above extract the three coordinates into row vectors y,x.
% That's why I flip and transpose them.
p1=outlineCoords(i,:);
p2=outlineCoords2;
p3=outlineCoords3;
p1 = fliplr(p1);
p2 = fliplr(p2);
p3 = fliplr(p3);
p1 = p1.';
p2 = p2.';
p3 = p3.';
这是数学表达式:
curVec(i) = 2*det([p1-p3,p2-p1])/(norm(p1-p3)*norm((p2-p1)*norm(p2-p3)));
我不喜欢使用我不理解的东西。我认为对于我的轮廓的每个点,它通过p1,p2和p3拟合一个圆并取半径的倒数但我不明白为什么它给我曲率...
我使用从蓝色到红色的颜色代码绘制曲率。
有人可以帮助我更好地理解我正在处理的事情!?
谢谢!
答案 0 :(得分:1)
在矢量微积分中,曲率与二阶导数有关。第一个是切线。你必须以神秘的方式扭转这个等式,以显示它的推导;这是我做不到的。但是,基于我已经知道的曲率,我已经多次得到那个和其他类似的公式。
以下是关于该主题的微积分说明。你看它与你的等式非常相似: