A Matlab code is written to classify 7 different classes of soils namely 'Clay','Clayey Peat','Clayey Sand', 'Humus Clay', 'Peat','Sandy Clay', and 'Silty Sand'. The code uses a multiclass SVM classifier (one vs. all).
How to run ??
1. Place the Soil Detection_Code folder in the Matlab path, and add all the subfolders into that path
2. Run SoilDetect_GUI.m
3. In the GUI click on Load Image and load the image from Manu's Soil Dataset, enhance contrast. Click on classification results. Then measure accuracy (in this case clay vs others).
The code is loosely based on the paper included, please cite the below and give credit to the authors:
 Bhattacharya, Biswanath, and Dimitri P. Solomatine. "Machine learning in soil classification." Neural Networks 19.2 (2006): 186-195.
 Multiclass SVM link: http://www.mathworks.com/matlabcentral/fileexchange/33170-multi-class-support-vector-machine
Comments and suggestions are always welcome
Thanks in advance,
Manu BN (2021). Soil Classification using a Multiclass SVM (https://www.mathworks.com/matlabcentral/fileexchange/55096-soil-classification-using-a-multiclass-svm), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!