Detecting Trail in Forest Images Is anyone aware of any research/papers/software for identifying a trail (as a line or point-to-point curve) in an image of a forest scene (from the perspective of the camera standing somewhere along the trail)?
I'm trying to find an algorithm that could take an image like:


and produce a mask, identifying a likely &quot;trail&quot;, such as:


As you can see, the original image is a bit blurry, which is purposeful. The image source can't guarantee perfect focus, so I need to be able to handle a reasonable amount of noise and blurriness.
My first thought was to apply a Gaussian blur, and segment the image into blocks, comparing adjacent blocks looking for sharp color differences (indicating a trail &quot;edge&quot;). However, I quickly realized that shadows and other changes in lighting easily throws that off.
I was thinking about extracting SURF features, but I've only had success with SURF/SIFT when the image is perfectly clear and with consistent lighting.
I've also tried scaling the images and masks down to much smaller sizes (e.g. 100x75), converting them into 1xN vectors, and using them to train a FANN-based neural network (where the image is the input and the mask is the desired output). Even at such a small size, with 1 hidden layer with 75% the size of the input vector, it took 6 hours to train, and still couldn't predict any masks in the testing set.
Can anyone suggest any other methods or papers on the subject?
It may not be sufficient by itself, but since one of the problems has to do with lighting variations, a shadow removal pre-processing step may help.  The technique I'm thinking of is described in the following paper:


  "On the Removal of Shadows From Images", G. D. Finlayson, S. D.
  Hordley, C. Lu, and M. S. Drew, IEEE Pattern Analysis and Machine
  Intelligence (PAMI), Vol.28, No.1, Jan, 2006, pp.59-68.
  http://www.cs.sfu.ca/~mark/ftp/Pami06/pami06.pdf


The first part of the process produces an illumination invariant grayscale image, which is probably what you want in this case.  Here's a shot of the example they give in the paper:


(source: datageist.com)  

In fact, taking the process one step further to produce a "chromaticity" image may be what you need to cleanly distinguish between the live and dead leaves.  Once again, an example from the paper:


(source: datageist.com)  

The catch, however, is that the camera needs to be calibrated first.  Assuming that's possible, some combination of the representations they describe will probably make the other methods you're using more effective.