Hints on this computer vision / machine learning problem I've been working for a while on a pet problem. The task is to identify and segment out the dark lines and possibly the wiggly ones too.
I'm not looking for anyone to solve this problem for me...I'm just at the point where I feel I'm losing my footing and could benefit from some ideas!
I've so far focussed on neural networks with varying degrees of not-super-success. The nns haven't given much more success than some threshholding. I have tried edge detection but the results look messy. A shrink, laplace, expand showed some promise. Hough transforms...it seems they should work but not yet(for me, anyway).
thanks.
 A: Those are nice long and straight lines, so with the right pre-processing I'm confident the Hough transform will find them. I think the key is the pre-processing step - you'll want to enhance line-like structures at a local level. 
One option would be to use Gabor filters. At each location, apply a bank of filters at different orientations, and keep the strongest result (this will occur when the filter is aligned with the line). Next, apply a global threshold. The output should have good coverage for line pixels, and noise scattered pretty randomly everywhere else. Now you're ready to apply the Hough transform. Hope that helps.
A: Autoencoder is a model using Neural Networks to extract features. However it is a unsupervised learning algorithm, we cannot sure what feature could be found. It is possible for it to find a line to be an valuable feature if the line is obvious and clear, or appear in many pictures.
I have no experience in filters, but I think what @NGY mentioned are more important.
A: In retinal images there is an issue that is detecting vessels. One of the used approaches is the use of a matched filter (basically a filter with a kernel similar to structure that you want to detect). Maybe this filter can be used as preprocessing. 
Another idea based on vessel segmentation is the use of a top-hat filtering with a linear structure.
You can look in to both of these ideas in here (the top hat in this case is in a binary image, but can use it in a greyscale image):
http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3046669/pdf/10278_2009_Article_9246.pdf
A: I ran this through Grompone von Gioi's Line Segment Detector and got this:

Of course, the segment detector returns the coordinates of the segments, so you could run a simple RANSAC filter on the data, and you should get a decent result. If your feeling lazy, you could run a Hough filter on this output image and get a reasonable result, though that's a bit of a hack. As mentioned, reprocessing will return a much better result. Perhaps with some sort of steerable filter.
ref: http://www.ipol.im/pub/art/2012/gjmr-lsd/
