Ich habe einen kleinen mathematischen Ausdruck gefunden, um die Krümmung entlang eines geordneten Umfangs zu finden. Ich bekomme diesen geordneten Umfang mit der Funktion bwboundaries
.Matlab - Berechnung der Krümmung entlang eines geordneten Umfangs
Um es zu verwenden, beginne ich, drei Koordinaten p1, p2 und p3 zu definieren, die Spaltenvektoren x, y sind.
% 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.';
Hier ist der mathematische Ausdruck:
curVec(i) = 2*det([p1-p3,p2-p1])/(norm(p1-p3)*norm((p2-p1)*norm(p2-p3)));
Ich mag keine Dinge verwenden, die ich nicht verstehe. Ich denke, dass für jeden Punkt meiner Kontur passt es einen Kreis durch p1, p2 und p3 und die Umkehrung des Radius, aber ich verstehe nicht, warum es mir die Krümmung gibt ...
Ich zeichne die Krümmung mit ein Farbcode von blau nach rot.
Jemand könnte mir helfen, besser zu verstehen, was mit mir zu tun habe!?
Vielen Dank!
was p1 p2 und p3 sind? Sind sie nur 3 zusammenhängende Punkte in der Grenze? –
"Ich fand einen kleinen mathematischen Ausdruck" wo? Wahrscheinlich hat es eine gute Erklärung, wo immer du es gefunden hast. –
p1, p2 und p3 sind 3 zusammenhängende Punkte in der Grenze ja! Und nein, es gibt überhaupt keine Erklärung ... Deshalb habe ich gefragt. –