Texture feature extraction and classification : a comparative study between traditional methods and deep learning : a thesis presented in partial fulfilment of the requirements for the degree of Master of Information Science in Computer Sciences at Massey University, Auckland, New Zealand

Thumbnail Image
Open Access Location
Journal Title
Journal ISSN
Volume Title
Massey University
The Author
Image classification has always been a core problem of computer vision. With the development of deep learning, it also provides a good solution for us to solve the problem of image feature extraction in image classification. In this thesis we used machine learning and convolutional neural network to study texture feature extraction and classification problems. We implemented a pipeline within the sklearn framework that utilized Local Binary Pattern (LBP) and Haralick as our feature descriptor and various classifiers (namely KNearest Neighbors, Linear Discriminant Analysis, Support Vector Machines, Multilayer Perceptron, Gaussian Naive Bayes, Random Forest, AdaBoost, Logistic Regression and Decision Tree) to evaluate the performance on some popular texture datasets (Brodatz dataset, four extended Outex datasets and VisTex dataset). We also employed Linear Discriminant Analysis as our dimension reduction schema to observe the changes in classification accuracy. We also took advantage of Keras with TensorFlow backend framework and built a pipeline that uses ImageNet-trained convolutional neural network models to train and analyze classifier, extract image feature information and make predictions on test dataset samples. This allowed us to compare the results between traditional methods and CNN based methods. It was found that the classification accuracy has been greatly improved with the CNN based method.
Figure 3.1 (=Kaehler & Bradski, 2017 Fig 1-4, p. 9) was removed for copyright reasons.
Local binary pattern, Haralick texture, Texture extraction, Dimensionality reduction, Support vector machines, Texture classification, Transfer learning, OpenCV, sklearn, Keras, TensorFlow