How Can I solve this problem in MATLAB by using a handcrafted image feature method with a classic machine learning approach and a deep learning-based approach, where both features and classifier are learned together (e.g. a Convolutional Neural Network).
Task: Your task is to implement and evaluate classifiers for the automatic classification of bird images from this dataset. Specifically, you are asked to implement (both!):
1. A handcrafted image feature method with a classic machine learning approach (e.g. SIFT features with a Support Vector Machine classifier). Assignment 1 - Computer Vision Concepts Implementation (Matlab) 8890 CVIA PG Version 1.1
2. A deep learning-based approach, where both features and classifier are learned together (e.g. a Convolutional Neural Network).
The choice of specific method/approach is up to you, as are the specific parameters (for example, will you resize the images first (note: strongly recommended!)? How many layers does your DL network have? What is the learning rate?).
The results of the experiments should be described in the performance evaluation report (see below).
Both types of approaches need to be evaluated in two scenarios (both!):
1. The entire images are used as input.
2. Only the image area marked by the bounding box information is used as input.
Consequently, you will need to perform four experiments to evaluate the performance:
Classic handcrafted feature + Deep learning feature and classic ML classifier
1. Whole image as input - Experiment 1
2. Bounding box image area as input - Experiment 2
Performance evaluation here means the class-weighted overall average accuracy and the individual class correct and incorrect recognition rates for the test partition of the data (include a table with these performance measures for all 200 classes).
You will then need to run a fifth experiment that performs fivefold cross-validation on Experiment 2. Assume we partition the data in each class into five parts of 20% each. We can then run the experiment five times with different parts used for training, validation, and test, while maintaining the 60:20:20 split. For example:
Run 1: Parts 1-3 for training, Part 4 for validation, Part 5 for test
Run 2: Parts 2-4 for training, Part 5 for validation, Part 1 for test
Run 3: Parts 3-5 for training, Part 1 for validation, Part 2 for test
Run 4: Parts 4, 5, and 1 for training, Part 2 for validation, Part 3 for test
Run 5: Parts 5, 1, and 2 for training, Part 3 for validation, Part 4 for test