Find intersecting points in a image

9 visualizzazioni (ultimi 30 giorni)
mathru
mathru il 2 Feb 2021
Commentato: mathru il 2 Feb 2021
How can I extract the boundary points of the first image. How can I plot it? How can I fiit a polynomical on the image boundary?
In the bottom image, after fitting a polynomial on the image boundary how an I find the intersecting points of the line and fitted polynomial ?

Risposte (1)

KSSV
KSSV il 2 Feb 2021
I = imread('myimage') ; % give your image
[y,x] = find(I==0) ; % white pixel value;
idx = boundary(x,y) ;
bnd = [x(idx) y(idx)] ; % boundary points data
Now you have boundary data points in hand. Make your line for which you want to get the intersection points with boundary. And then use https://in.mathworks.com/matlabcentral/fileexchange/22441-curve-intersections
Also there are other ways to get the intersection points without using the above. Read about knnsearch.
  1 Commento
mathru
mathru il 2 Feb 2021
While running the code using your commands, getting the following error:
Index in position 2 exceeds array bounds (must not exceed 2).

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by