Plot concentric circle on an image
41 views (last 30 days)
Show older comments
HAINGKHARRAN GUNASEKARAN
on 9 Jun 2021
Commented: HAINGKHARRAN GUNASEKARAN
on 10 Jun 2021
Hello, I wish to draw concentric circles on an image. The radius of each circle is known. The circles are to be plot on the specific position of picture whereby every circle has the same centre. How may i able to do it? The following syntax below is used to generate the concentric circles. I wish to do that on an image. Plus, the circles should be drawn on image with right scalling. Thank you.
%Syntax for concentric circles
theta = [-pi:pi/36:pi];
hold on;
for r=[5,10,15]
plot(r * cos(theta), r * sin(theta))
end
0 Comments
Accepted Answer
KSSV
on 9 Jun 2021
I = imread('peppers.png') ;
[m,n,p] = size(I) ;
C = round([n m]/2) ; % center of circle
th = linspace(0,2*pi) ;
imshow(I)
hold on
% draw concentric circle
for r = 5:5:50
x = C(1)+r*cos(th) ;
y = C(2)+r*sin(th) ;
plot(x,y)
end
6 Comments
Image Analyst
on 9 Jun 2021
Like
for radius = 5 : 5 : 50
message = sprintf('Click where you want the center to be');
uiwait(helpdlg(message));
[xCenter, yCenter] = ginput(1);
x = radius * cos(th) + xCenter;
y = radius * sin(th) + yCenter;
plot(x, y, '-');
end
More Answers (0)
See Also
Categories
Find more on Formatting and Annotation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!