Aim : To develop a deep learning-based solution that can classify aerial images into two categories Bird or Drone and optionally perform object detection (YOLO) to locate and label these objects in real-world scenes.
- Deep Learning
- Computer Vision
- Image Classification & Object Detection
- Python
- TensorFlow/Keras
- Data Preprocessing & Augmentation
- YOLOv8
- Model Evaluation
- Streamlit Deployment
- Image Classification Training (Custom and Transfer Learning Model) Aerial_Object_Detection.ipynb
-
Used cv2 to show an example on Data augmentation
-
Used ImageDataGenerator library to create augmented data in training_data
- Resize, rotation, zoom, horizontal view, vertical view
-
Data Preprocessing
- Resize images to (224,224) pixels
-
Custom Training from Scratch
-
Introducing Transfer Learning with 3 different pre-trained applications from tensorflow.keras.applications
-
Model Evaluation
-
Chose the best model among the 4 and saved the model for future use.
- Image Detection Training (YOLO Model) YoloModel.ipynb
- Data Preperation
- Yolo requires the training images to be in an particular folder dir with train,validation and test data split in labels and images folders seperately.
- Creating data.yaml file for model training data.yaml
- Model Training
- Model Evaluation
- Saving Model
- Streamlit Application streamlit.py
- Side bar to upload data and select a model to view result.
- In main content the left side shows original image and right side with the predicted output.
- Created an download button to download YOLO detected image