Machine vision classification of pistachio nuts using pattern recognition and neural networks
Ghazanfari Moghaddam, Ahmad
Machine vision-based sorting of agricultural commodities is an alternative to the conventional mechanical and electro-optical sorting methods. This method offers high-speed, multi-category classification by processing multiple-features obtained through image processing algorithms. The purpose of this thesis was to determine an appropriate set of features and to investigate different classification schemes for efficient machine vision-based sorting of pistachio nuts. Kerman cultivar pistachio nuts obtained from California were used in this study. A sample of nuts were weighed and manually sorted into four classes: "Grade One" (G1), "Grade Two" (G2), and "Grade Three" (G3), and "unsplit nuts" (UN). Each class consisted of 260 nuts. Morphological features (area, length, width, perimeter, and roundness), Fourier descriptor (FD's) of the boundary, and gray level histograms were extracted from images of the nuts using a Macintosh-based machine vision system and commercial image processing software. The discrimination power of the individual sets of features for separating the four classes were investigated using Gaussian classifiers. The morphological features and FD's resulted in relatively low classification accuracies. The gray-level histograms yielded an average classification accuracy of 98.5%. Analysis of the classification results indicated that morphological features had a better potential for separating G1, G2, and G3 from each other while the FD's had a higher discrimination power for separating the split nuts from unsplit. Different feature selection methods including forward selection, backward elimination, Fisher criterion, and graphical analysis were applied to select a suitable subset of features. The feature selection results indicated that a combination of seven selected FD's and the area (7FD's & A), or a combination of the frequency of the gray level 56 and the area (GL-56 & A) were suitable for separating the four classes. The selected features were used as input to different classifiers such as Gaussians, decision trees, multi-layer neural networks (MLNN), and multi-structure neural networks (MSNN). A procedure for calculating the computational complexity of the classifiers was developed. The classifiers were compared in term of performance and computational complexity. A decision tree classifier using GL-56 & A resulted in 91.7% classification accuracy. The same features using MLNN and MSNN resulted in 92.4% and 93.2% accuracy, respectively. The GL-56 & A using a Gaussian classifier resulted in an overall classification accuracy of 89.6%. Using 7FD's & A, the classification accuracies were 82.8%, 88.7%, 94.1%, and 95.0% for Gaussian, decision tree, MLNN, and MSNN classifiers, respectively. The decision tree classifiers required the least amount of computational time, but relied heavily on the threshold values supplied by the user. The neural network classifiers, in sequential executions, required higher computational time, but in terms of classification accuracy, were superior to the statistical classification methods. The MSNN classifiers were the most suitable method for this multi-category classification problem. These classifiers learned their input-output mapping faster and were more robust compared to MLNN classifiers.