### robust countour fitting

The above image shows a light table, with 3 liquidfilled vessels on top. The camera is approx. 30cm apart from the table, and one can see the parallactic effect on the left and right vessel, which is disturbing. Also disturbing are the little wires on each vessel.

One goal is to find the middlepoint (in terms of image coordinate) of the upper rims of each vessel, in the presence of all these disturbances. What I would like to do, is to especially search for circular contours, and so to speak "fit" closed circles to the noisy contours. How can this be done in python?
First I need a kind of model for a circle of variable radius and middlepoint. I think a minimal radius has to be specified, in order to prevent the program from fitting little circles to little noisy spots.
The number of vessels doesnt have to be necessarily three. So somehow the program has to detect the number of circles needed.

I appreciate any idea or suggestion.