distance line from a point
Show older comments
Hi all, lets say i have a binary image, and i want to find the distance of a line (the one with the blue) from my mesh which is pictured in the above image.

The red points are the "aces" on the image. The values with 1 in my binary image

Any help?
Answers (1)
darova
on 8 May 2019
But you already have those pixels/points:
n = 100; % number of pixels
x0 = round( linspace(min(x),max(x),n) ); % coordinates/columns of points/pixels
y0 = round( linspace(min(y),max(y),n) ); % coordinates/rows of points/pixels
Please look at the picture, because i did my best

Perpendicular vector p:
Then use equation of a line from two points:
We have to find x,y then distance:
Accept the answer please if i helped you
5 Comments
pasta pontikaki
on 9 May 2019
darova
on 9 May 2019
I lied to you on the first picture. (x1,y1) and (x2,y2) are first and last points
I used min() and max() to indicate first and last points and build a line

Above code can be written as:
x1 = min(x);
x2 = max(x);
y1 = min(y);
y2 = max(y);
n = 100;
x0 = linspace(x1,x2,n);
x0 = round(x0); % rounding because pixels position must be integer
y0 = linspace(y1,y2,n);
y0 = round(y0);
pasta pontikaki
on 11 May 2019
Edited: pasta pontikaki
on 11 May 2019
darova
on 11 May 2019
You are right
Can you please unaccept my answer so other peaple can help you?
pasta pontikaki
on 11 May 2019
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
