Effacer les filtres
Effacer les filtres

how to obtain the values of a square matrix inside a circular region of image?

1 vue (au cours des 30 derniers jours)
Suppose we find a circular roi in an image. How to obtain the values of a square matrix or square area inside that circle. give that the x and y coordinates of the circle and its radius
  4 commentaires
Walter Roberson
Walter Roberson le 16 Nov 2013
"Largest" in which sense? The greatest area? If so then in a circle the rectangle with the greatest area is a square.
as825
as825 le 16 Nov 2013
Greatest area.suppose the value of x and y is some value and the radius of circli is 5 . then how to find the greatest area . The aim is to embed image

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 16 Nov 2013
d = r/sqrt(2);
xcoords = [x-d x+d x+d x-d x-d];
ycoords = [y-d y-d y+d y+d y-d];
line(xcoords, ycoords)
Now what you need to deal with is the rounding to integer coordinates. Rounding towards the center is the safest way. I would need to think more to figure out if there are circumstances under which it might then be possible to get a slightly larger area by extending one pixel further in one direction.
  4 commentaires
Walter Roberson
Walter Roberson le 16 Nov 2013
Extracting pixel values:
YourImage(x-d:x+d, y-d:y+d)
In terms of area, Yes, any maximal square inside the circle would do, up to the effects of area reduction due to round-off of non-integers. Circles have no inherent internal orientation, so a square aligned with the axis will have the same area (to within round-off) as a square at (say) 17.29 degrees relative to the origin.
as825
as825 le 22 Jan 2014
What does the d in the code represents?

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by