# Pixel position of circle on image

조회 수: 12(최근 30일)
sangeeta 2013년 3월 21일
How to find and store in list(x1y1, x2y2, x3y3, ...... xnyn)all the pixel positions that a circle would cross, on an image, given only the center point (x,y) and radius of circle. There is no actual circle.

댓글을 달려면 로그인하십시오.

### 답변(2개)

Sven 2013년 3월 21일
편집: Sven 2013년 3월 21일
center = [25 30]; %XY location of circle center
matSize = 50;
[X,Y] = meshgrid(1:matSize,1:matSize);
distFromCenter = sqrt((X-center(1)).^2 + (Y-center(2)).^2);
figure, plot(xPx,yPx,'g.', center(1),center(2),'ro')
axis image
##### 댓글 수: 1표시 없음숨기기 없음
sangeeta 2013년 4월 16일
Thanks Sven for the code, but seems little difficult to grasp for me. I managed to find out pixels using
if true
r = 60;
theta = 0 : (2 * pi / 10000) : (2 * pi);
pline_x = r * cos(theta) + centx;
pline_y = r * sin(theta) + centy;
end

댓글을 달려면 로그인하십시오.

Image Analyst 2013년 5월 19일
The answer to this is given in the FAQ: http://matlab.wikia.com/wiki/FAQ#How_do_I_create_a_circle.3F
xCenter = 12;
yCenter = 10;
theta = 0 : 0.01 : 2*pi;
x = radius * cos(theta) + xCenter;
y = radius * sin(theta) + yCenter;
plot(x, y);
axis square;
xlim([0 20]);
ylim([0 20]);
grid on;

댓글을 달려면 로그인하십시오.

### 범주

Find more on Image Arithmetic 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!

Translated by