采纳的回答

darova
darova 2019-5-19
If you have only circle on the image like below
img.png
clc,clear
I = imread('img.png');
I1 = im2bw(I,graythresh(I)); % binarize image (0,1)
[row, col] = find(I1); % find white pixels (1 value)
ix = round( mean(col) ); % mean column
iy = round( mean(row) ); % mean row
imshow(I1)
hold on
plot(ix,iy,'or')
text(ix+10,iy+10,'CircleCenter')
hold off

4 个评论

JoBrr
JoBrr 2019-5-20
Thanks mate, it works, appreciate it a lot. I get a figure window with the image and a circle in the centre.
But do know know how I may display this info in the command window when the script is executed.
Also is the value of the centre in pixels? @darova
You can use disp() or:
% \n - next line (break line)
% %i - insert integer value
sprintf('center coordinates of a circle:\nrow = %i; column = %i;', iy, ix)
And Yes, values are in pixels
JoBrr
JoBrr 2019-5-21
Thank you @darova much appreciated!!
♥

请先登录,再进行评论。

更多回答(0 个)

产品

Community Treasure Hunt

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

Start Hunting!

Translated by