PyTorch for deep object detectiοn exercise

Artificial Intelligence & Information Analysis

Topic: Object detection is a two-fold task: object image classification (e.g., assign a class label to an image) and object bounding box regression on the image plane. Recently, Convolutional Neural Networks (CNNs) have been used for the task of object detection with great results, notably RCNN, Faster RCNN, R-FCN, YOLO v1/2/3/4 or SSD Lightweight detector architectures. Various architectures and settings can examined to facilitate the use of CNN-based object detectors on embedded computing platforms with limited computational capabilities, e.g., on drone.

Exercise: The goal of this exercise is to understand the core functionalities of a Deep Learning (DL) based Object Detector, using the Single Shot Detector (SSD) paradigm. Although only the exercises focuses on the SSD architecture, many of its concepts are shared amongst other DL-based detectors, such as YOLO, Faster R-CNN and other more recently proposed algorithms.

Instructions: To achieve this, you will begin to build the entire SSD algorithm step-by-step, including developing and understanding the base network, the detection head network, the priors (or anchors or default boxes), the dataset and data processing methods, as well as the final training, detection and evaluation methods.

You will follow the code from https://github.com/sgrvinod/a-PyTorch-Tutorial-to-Object-Detection/.

Material for better understanding: A lecture on visual object detection, e.g., from: https://icarus.csd.auth.gr/deep-object-detection-lecture/

Knowledge Assessment questionnaire: https://aiia.csd.auth.gr/gr/cvml-knowledge-self-assessment/

For the solutions to the exercises, please contact koroniioanna@csd.auth.gr