The 62322 new scene recognition system uses Yolo v3 object detection model as feature extractor and MLP as scene classifier. Evalution is conducted via k-fold validation method.
Yolo v3 is an algorithm that uses deep convolutional neural networks to detect objects.
This project is written in Python 3.7 using Tensorflow 2.0 (deep learning), NumPy (numerical computing), Pillow (image processing), OpenCV (computer vision) and seaborn (visualization) packages.
pip install -r requirements.txt
Download database (folders images3, images4) from Ong_62322_database folder
For Linux: Let's download official weights pretrained on COCO dataset.
wget -P weights https://pjreddie.com/media/files/yolov3.weights
For Windows: You can download the yolov3 weights by clicking here and adding them to the weights folder.
Get the info in README_YOLO.md
Get the info in README_YOLO.md
Get the info in README_YOLO.md
- Finish migration to full TF 2.0 (remove tf.compat.v1)
- Run 62322_fyp2.ipynb for Yolo v3 object detection
- Numbers in console indicates progress
Get the info in README_YOLO.md
Multilayer perceptron (MLP) is a simple artificial neural network (ANN) model that is capable of carrying out classifications.
- Make sure that ./detections/detection.csv is saved with [80 attributes][1 scene label]
- Run mlp.ipynb for MLP model training and testing
Images sources
Experiment 1 image input
Experiment 2 image input
Grid search cv method that helps find the best parameters among all classifier