title: How do I get a flood fill algorithm to cope with closed circles?
body: <p>I have an application that accepts images as input and removes the background on which the image was taken.  For example, if you pass in an image of a book on a blanket, the resulting image will be just the book with a transparent background.</p>
  
  <p>The problem I have is when you input an image that has a large empty space in it, e.g. an elastic band.  The floodfill algorithm starts at the corners of the image and removes the background of the picture, but of course it never makes it into the interior of the elastic band.</p>
  
  <p>Is there a way of implementing this such that I can take an image of a closed circle against a background and get back just the loop itself, with no background inside or outside it?</p>