If you already haven't a idea for the circle I can offer you this:
An oval is bordered by two circles. You can detect two nearby points, increase or decrease the angle by 90 (whether you go clockwise or not) and trying to find a point on the other side of the oval. If you do it for each point theoretically you will find a maximum and a minimum value with the associated points, which should staying nearly in a right angle. The crossing point should be the center for the circle with a diameter of the average of the distance values.
If you already haven't a idea for the circle I can offer you this:
An oval is bordered by two circles. You can detect two nearby points, increase or decrease the angle by 90 (whether you go clockwise or not) and trying to find a point on the other side of the oval. If you do it for each point theoretically you will find a maximum and a minimum value with the associated points, which should staying nearly in a right angle. The crossing point should be the center for the circle with a diameter of the average of the distance values.
Just playing with ideas here.