# Indian Classical Dance Classification from Dance Poses
### Authors:
Aarushi Aiyyar : 203050045  
Bhavesh Yadav : 193050052  
Khyati Oswal : 203050058  
Raj Gite : 203050092  
Smit Gangurde : 203050108  
Yavnika Bhagat : 203050041
### Problem Statement:
Identify the type of Indian dance form from a dance pose image. Use multiple techniques to classify the images and compare the various techniques.  
### Dataset:
 https://www.kaggle.com/somnath796/indian-dance-form-recognition  
 Train Images: 364 | Test Images: 156  
 Number of classes: 8
### Techniques used and their test accuracies:
|Implementation |Test Accuracy  |
--|--
|Custom CNN model|46.79%|
|VGG16 | 48% |
|ResNet152|77.56%|
Implemented Cross Validation.
#### Conclusion: ResNet152 performed the best.
### Running the code:
Python Notebooks along with the necessary code are provided in the repository, in the folder 'Notebooks/'.

 1. Custom CNN notebook:  
Open the notebook, import the 'helpers' directory and run the cells.
 2. VGG16:  
Open the notebook, and run the cells.
 3. ResNet152 using Monk:  
i. You can directly download the ipynb file and run it on kaggle  
ii. Upload dataset with appropriate data structure  
iii. Download the uploaded .py file, according to the numbers given in the file, execute commands on Kaggle notebook.  

### References:

 1. https://www.kaggle.com/singhuday/identifythedanceform/version/1
 2. https://github.com/Tessellate-Imaging/monk_v1
 3. https://clever-noyce-f9d43f.netlify.app/#/introduction
 4. https://www.youtube.com/watch?v=zFA8Cm13Xmk
 5. https://medium.com/@dtuk81/confusion-matrix-visualization-fc31e3f30fea

### Reference paper links:
 1. https://arxiv.org/pdf/1812.05231.pd
 2. https://www.isical.ac.in/~vlrg/sites/default/files/Pulak/wacv2012.pdf
 3. https://ieeexplore.ieee.org/document/9182365

