how to find distance between two points in an image

7 Ansichten (letzte 30 Tage)
sindhu c
sindhu c am 16 Jan. 2016
Kommentiert: Walter Roberson am 29 Mär. 2018
hello! i have an image something like this.
how to obtain the distance between the dot above i and the line in i? the image of i is attached below.
please help me with the code... thank you!
<<
>>

Akzeptierte Antwort

harjeet singh
harjeet singh am 16 Jan. 2016
try to use this
img=imread('i2.png');
figure(1)
imshow(img)
hold on
[lab,num]=bwlabel(img);
[r,c]=find(lab==1);
[r1,c1]=find(lab==2);
D = pdist2([r c],[r1 c1],'euclidean'); % euclidean distance
[r2,c2]=find(D==min(D(:)));
point_1=[r(r2) c(r2)];
point_2=[r1(c2) c1(c2)];
plot([point_1(2) point_2(2)],[point_1(1) point_2(1)],'r')
hold off
distance=sqrt( (point_1(1)-point_2(1)).^2 + (point_1(2)-point_2(2)).^2)
distance =
42.1070
  7 Kommentare
aaditya CHANDEL
aaditya CHANDEL am 29 Mär. 2018
distance unit?
Walter Roberson
Walter Roberson am 29 Mär. 2018
The distance unit is pixels.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 16 Jan. 2016
  1 Kommentar
sindhu c
sindhu c am 16 Jan. 2016
thank you sir! in both of the above links we need to know column and row vectors, how to find the position vectors for dot and line in the above image attached?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Image Processing Toolbox finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by