Circularity not as expected

Hello All.

I have created a trial image containing circles and squares. The idea of this is to trial imageJ for shape calculates. However, I have noticed that the results from the Analyze Particles function does not return a circularity of 1 for the circle but returns 0.9.

When I zoom into the shapes, it is clear that the resolution of the image has been reduced with the circle edges becoming blocky compared to the original image. I assume the area and perimeters are off due to the blockiness and therefore leaving an unexpected circularity.

If there any way I can improve this?

Not really. Circularity of 1 is an ideal value in continuous space. In a discrete lattice that ideal cannot be achieved.