How to find euclidean distance

171 views (last 30 days)
aarti sawant
aarti sawant on 20 Jan 2014
Commented: William on 19 May 2023
Plz help me to find euclidean distance between two pixels within same image without using direct matlab command
  2 Comments
Walter Roberson
Walter Roberson on 20 Jan 2014
What is a "direct MATLAB command"? Even
3 + 5
is considered a command and invokes a MATLAB function ("plus")
Fahim Ahmed
Fahim Ahmed on 23 Feb 2020
i guess he meant a matlab in-built command

Sign in to comment.

Accepted Answer

David Sanchez
David Sanchez on 20 Jan 2014
pix_1 = [p11,p12];
pix_2 = [p21,p22];
distance = sqrt( (p21-p11)^2 + (p22-p12)^2 );
  10 Comments
Walter Roberson
Walter Roberson on 21 Jan 2014
bwdist() does not compute distance between millions of points. bwdist() finds the points that are not part of objects, and calculates the distance from each point to the closest point that is part of some object.
If you want to operate on multiple points, then the small change to the formula already given is
distance = sqrt( (p21-p11).^2 + (p22-p12).^2 );
where the variables given there are all vectors.
If you want to calculate the distance of each point to every other point then you can use pdist() from the Stats toolbox.
William
William on 19 May 2023
Doesn't the dist(W,P) function also help with this?

Sign in to comment.

More Answers (1)

Geetika
Geetika on 21 Jan 2014
if you have two vectors with any number of point, for instance, x1=[1 2 3 4 5] and x2=[2 3 4 5 6], then Euc_dist = norm( x1 - x2 ) ;

Community Treasure Hunt

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

Start Hunting!