Find intersecting points in a image

16 Ansichten (letzte 30 Tage)
mathru
mathru am 2 Feb. 2021
Kommentiert: mathru am 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 ?

Antworten (1)

KSSV
KSSV am 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 Kommentar
mathru
mathru am 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).

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by