1
我發現了一個小數學表達式來找到沿有序周長的曲率。我使用功能bwboundaries
獲得了有序的周長。Matlab - 沿着有序的周長計算曲率
要使用它,我開始定義三個座標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適合一個圓並取半徑的倒數,但我不明白爲什麼它給了我曲率...
我畫曲率從藍色到紅色的顏色代碼。
有人可以幫助我更好地理解了什麼我處理!?
謝謝!
什麼是P1 P2和P3?他們在邊界只是3個連續點嗎? –
「我發現了一點數學表達式」在哪裏?無論你在哪裏找到它,它都有一個很好的解釋。 –
p1,p2和p3是邊界中的3個連續點是!不,沒有任何解釋;這就是爲什麼我問。 –