MATLAB Answers

Is there an automatic way to find the centre of this circularly-symmetric pattern?

11 views (last 30 days)
teeeeee on 12 Mar 2020
Commented: J. Alex Lee on 13 Mar 2020
I have the following captured image (a spoke pattern for characterising optical systems), which is in the form a double type matrix, with integer values that range from 75 to 246. I would like an automatic way to extract the pixel position of the centre of the spoke pattern.
I have tried using imfindcircles() to detect the dark concentric rings, but had no luck. Maybe because these rings are discontinuous? Attached is also the workspace file M.mat which contains the image. Thanks!


Sign in to comment.

Answers (1)

J. Alex Lee
J. Alex Lee on 12 Mar 2020
This would be not at all efficient and maybe not robust, but you could pose a minimization problem:
Find the coordinates (Xc,Yc) such that, when taking the surrounding pixels within some radius (must be enough to capture the pattern, but circle can never go outside the image), the center of gravity of the selected pixels is closest to (Xc,Yc).

Sign in to answer this question.




Translated by