Skip to content

Latest commit

 

History

History
45 lines (32 loc) · 1.97 KB

README.md

File metadata and controls

45 lines (32 loc) · 1.97 KB

Image Category Classification

This is the final project for course Introduction to Artificial Intelligence(CST,Tsinghua,Instructor:Jianmi Li). We experiment on the Caltech 101 data set.

The project is divided into two part.

  1. Feature Extraction
  2. Classification
For __Feature Extraction__, the __Bag of Words__ algorithm is applied. Two feature descriptors, Speeded-up Robust Features (SURF) and Histogram of Oriented Gradients (HOG) are used. Besides frequency of occurrence as the features, we try a kernel PCA method combined with earth mover's distance(EMD).

For Classification, we would like to try the following algorithms,

  • Support Vector Machine
  • Naive Bayesian Classification
  • Neural Network

Attn:

Download Caltech 101 here.

I utilize some third party toolboxes.

The rootFolder needs changing to fit the location of the Caltech101 data set.

The classes can be chosen arbitrarily by tuning ClassIndices. In the demo, I choose 6 classes 'BACKGROUND_Google',Faces','Leopards','airplanes','watch' and 'Motorbikes'.

The current package has 4 demos,

  1. demo6_svm_hog.m : HOG + SVM
  2. demo6_svm_hog_emd.m : HOG + EMD-KPCA + SVM
  3. demo6_svm_surf.m : SURF + SVM
  4. demo6_svm_surf_emd.m : SURF + EMD+KPCA + SVM

demo6_fillyourclassifier_hog.m and demo6_fillyourclassifier_surf.m are two scripts containing the classification frame, but you need to configure your classifier in them. hog and surf represent two feature descriptors.

Matlab R2014B, Windows 7 OS* 64-bit.