MATLAB Answers

finding number of pixels inside each circle

20 views (last 30 days)
i am drawing circles of different radius on a jpg image. how to find the number of pixels in each circle. i have to compare the pixel distribution ratio in each circle
  3 Comments
Dhandapani.S
Dhandapani.S on 21 Jan 2015
say, for inner most circle, there may be 20% of the total pixels of the jpeg image. the next immediate outer circle may contain 40 % of the total jpeg image pixels. this is a kind of segmentation i think. please give me a solution. thank you in advance.

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 26 Jan 2015
I'm pretty sure I gave you the answer in your other question: http://www.mathworks.com/matlabcentral/answers/169093#comment_261946 How is this any different than that?
  3 Comments
Dhandapani.S
Dhandapani.S on 1 Feb 2015
dear image analyst, you have made the work with concentric circles and i got good results. i am trying with triangles, rectangles and spheres.but cannot accomplish. iget the error with bwboundaries. since bwboundaries is 2d i cannot make it up to sphere. please help me in rectangle and triangle.

Sign in to comment.

More Answers (1)

Thorsten
Thorsten on 21 Jan 2015
A well-known "approximation" is :-)
N = round(radius^2*pi)
You could also create a circle and count the pixels:
radius = 100;
x = [-radius: radius];
[X, Y] = meshgrid(x, x);
R = sqrt(X.^2 + Y.^2);
N = numel(find(R<=radius));
Both values are almost the same.
  2 Comments
Thorsten
Thorsten on 26 Jan 2015
You can just use any other value for the radius, like
radius = 50;
and then compute the N to count the pixels in the circle of radius 50. Or what else do you need?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!