目的是在不使用内置函数进行绘图的情况下使用MATLAB中的中心点和半径绘制圆。黑白图像可以表示为2阶矩阵。一阶用于行,二阶用于列,像素值将基于灰度颜色格式确定像素的颜色。
方法 :
- 给定一个点和半径。令中心点的坐标为(x1,y1),半径为R。
- 我们找到中心点到每个第(i,j)个像素的距离。
dist = sqrt((j-c)^2+(i-r)^2);
- 现在,如果dist = R(即半径),则使该像素变黑。
下面是实现:
% MATLAB code to plot circle using centre and radius.
% create a white image of size 300X600
I=zeros(300, 600)+1;
% Radius of circle
R=50;
% coordinates of centre point
c=300;
r=150;
% accessing every pixel
for i=1:size(I, 1)
for j=1:size(I, 2)
dist=round(sqrt((j-c)^2+(i-r)^2));
if dist==R
I(i, j)=0;
end
end
end
% display the image
figure, imshow(I);
输出 :