Because it is dynamic. You need to declare the width and height you want. I wouldn’t recommend doing this on the img itself. You should create a parent element that you want to place the image in so you can control the width and height. Then set overflow to hidden. When you place the image in the element, It will “appear” as a circle.
The image that you are trying to turn into a circle is likely a rectangle, and the radius is just impacting the filleting of the corners.
TL;DR Squares make circles. Rectangles make ovals.
Choices: crop photo to square or follow @Ottomaddix advice. His way you can pick which portion you want in the circle. Also possible to use the same photo twice in a page two different ways.