Analysing Cricket: Shot Recognition & Similarity
Overview
This project classifies cricket batting shots from video into distinct categories and explores the similarities between them. A CNN-based EfficientNet feature extractor is applied in a time-distributed block to preserve temporal information across frames, condensed by global average pooling, then passed to GRU units that capture motion and sequence before dense softmax classification. Beyond labels, features from the convolutional block are mapped to compact vectors and compared by cosine distance to measure shot-to-shot similarity.
Evaluation
| Backbone | Test acc. | Precision | Recall | F1 |
|---|---|---|---|---|
| EfficientNetB0 | 94% | 94% | 94% | 94% |
| EfficientNetV2B0 | 81% | 82% | 81% | 81% |
| EfficientNetB4 | 74% | 75% | 74% | 74% |
The EfficientNetB0 backbone led at 94% test accuracy. A genetic-algorithm hyperparameter search (tournament selection over learning rate and epochs, with a stagnation limit to prevent overfitting and conserve compute) was used to tune the models.