I'm currently facing the problem of efficiently detecting (special) ellipses in edge images. These images are given (i.e. previous image processing is impossible) and contain quite some noise. I need to detect those ellipses which are completely contained in another ellipsis. The following images gives a reduced example where the desired ellipsis is marked by the blue arrow. Usually the images contain 30-40 "perfect" small ellipses and only 1-2 which are "overlayed". I also added the image without blue arrow, if you want to try it yourself. Below I added some more examples.
Disclaimer: I'm unsure how to tackle this problem. I'm no expert in computer vision or computational geometry and hope for your help (as well as apologize for using imprecise terms). Also, if you think this topic suits another community better, I'm thankful for suggestions.
My research first led me to the Hough Transform, but due to its complexity of detecting ellipses this seems rather inefficient. Also I have not yet managed to get implementations to work on my images. Maybe I parametrized stuff wrong or am just to stupid to use the frameworks. Can you suggest frameworks and/or configurations able to solve this problem (not relying on MATLAB, if possible)?
Maybe the Hough transform is over the top as it finds all ellipses. As said, I only need to find the completely overlaying ones, if they exist. Are you aware of any approaches which are useful for that? It seems like an interesting algorithmic problem which might have been tackled (in theory or practice) before. Maybe something heading to sweeping lines?
Lastly, as AI is currently a big thing, I also wanted to mention it. But I wouldn't even know where to start. Also, I have no big training or test sets and the problem seems to be more appropriate to "usual" algorithmic approaches. Or am I wrong?
Update:
As requested in the comments, in the following I provide some more examples, with the first one being the most representative.