This is a computer vision problem, I suggest you use openCV and play around with the image a bit. Canny will find the edges for you. Or you can fill the whole image with the som waterhed algorithm, so there will be different areas, the small one can be an ellipse.
source
to share