Have you read [3] yet? It can add to your understanding of both SVM and relevant features you might want to use on each image point. For each image point if you generate features on a neighbourhood around given point you should be able to distinguish between eg grass, gravel and tarmac. This will be computationally expensive though.
Other things I can think of is to use some edge detection algorithm, eg convolve the image with Sobel kernels to get X and Y gradients, prewitt or canny. Also try out different blob detection algorithms. After that you can use the hough transform[1,2] to find curves with different parameters (polynomials or splines perhaps).
In the hough space graph you would probably find curves matching road edges and lines in the middle of the road.
I recommend you read the book "Pattern Recognition and Machine Learning" by C. M. Bishop, Springer, 2007 and a book on computer vision of which I'm not the right person to suggest.
Weka is good to test different machine learning algorithms. For production use I recommend libSVM.
Please improve this question with references and be more specific on what you aim to accomplish.
There can be lots of stuff on/in a road.
I'm sorry for the formatting, it's written on my phone.
Duda, R. O. and P. E. Hart, "Use of the Hough Transformation to Detect Lines and Curves in Pictures," Comm. ACM, Vol. 15, pp. 11–15 (January, 1972)
D.H. Ballard, "Generalizing the Hough Transform to Detect Arbitrary Shapes", Pattern Recognition, Vol.13, No.2, p.111-122, 1981
http://www.cs.utexas.edu/~dana/HoughT.pdf
Abenius, Tobias, "Classification of Cell Images Using MPEG-7-influenced Descriptors and Support Vector Machines in Cell Morphology", 2008
http://arxiv.org/abs/0812.2309