Implementation of a content based image classifier using the bag of visual words model in Python.
Weak Features, M = 2500, Single, Level 0 (1x1),Linear SVM(C=100.0)
Strong Feature, M = 600, Single, Level 0 (1x1),Linear SVM(C=200.0 and 250.0)
Google Colab link : https://colab.research.google.com/drive/1_URYuLjPFqQGQ_-bWpwYIAV1NdV9rPl6
Google Drive Link for Download .pkl files
Click Google Colab Link -> Runtime type change (GPU) -> Variable run_all_process = True -> Run all
1. Prepare Dataset : Caltech-101 Dataset
2. feature extraction : SIFT descriptors - Opencv Version(3.4.2.16) Downgrade for SIFT Features
3. clustering and build codebook : K-means clustering algorithm
4. Image representation(making the histogram of features) : Vector Quantization
5. classifier learning and recognition : SVM Classifier
BoW Process:https://github.com/CyrusChiu/Image-recognition
K-Means Clustering using GPU : https://github.com/ilyaraz/pytorch_kmeans
Multi-class Linear SVM using GPU : https://github.com/murtazajafferji/svm-gpu
Porting by glee1228@naver.com