Find intersecting points in a image

10 次查看(过去 30 天)
mathru
mathru 2021-2-2
评论: mathru 2021-2-2
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 ?

回答(1 个)

KSSV
KSSV 2021-2-2
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 个评论
mathru
mathru 2021-2-2
While running the code using your commands, getting the following error:
Index in position 2 exceeds array bounds (must not exceed 2).

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by