采纳的回答

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 个)

类别

帮助中心File Exchange 中查找有关 Convert Image Type 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by