0
我想找到一個簡單的方法來找到從一個點(設置在原點)到另一個點的距離(x,y座標) (任意設置)在圖像中。理想情況下,這將是matlab代碼,允許在圖像上點擊兩次以設置原點,然後設置第二個點,然後輸出座標。我會如何去做這件事?使用matlab或其他軟件在圖像中設置一個原點並輸出另一個點的座標
我想找到一個簡單的方法來找到從一個點(設置在原點)到另一個點的距離(x,y座標) (任意設置)在圖像中。理想情況下,這將是matlab代碼,允許在圖像上點擊兩次以設置原點,然後設置第二個點,然後輸出座標。我會如何去做這件事?使用matlab或其他軟件在圖像中設置一個原點並輸出另一個點的座標
圖像座標系的原點位於圖像點(1,1)(不是(0,0))的左上角。無論如何,如果你保留這個點或任何其他點的原點,並假設你的起點爲P1(x1,y1),另一個點P2(x2,y2)。否計算這些點之間的距離,可以使用不同的度量。三個著名的指標有: 三個著名的度量(以計算兩個點之間的距離): 1-曼哈頓距離
d = abs(x1-x2) + abs(y1-y2)
2-歐幾里德距離
d = sqrt((x1-x2)^2 + (y1-y2)^2)
3-閔可夫斯基距離
d = (abs(x1-x2)^c + abs(y1-y2)^c)^(1/c)
在MATLAB中可以使用ginput功能,其提供的選擇像素乘小鼠 因此首先加載圖像,然後可用性選擇點:
I = imread('c:\test.jpg');
imshow(I);
[X,Y] = ginput(2);
2是選擇的數量數據(從採摘圖像像素),那麼你可以使用這樣的事情:
d = ((X(1) - X(2))^2 + (Y(1) - Y(2))^2)^0.5;
,你也可以使用任何其他指標....