Using Object Detection to Identify Human Movement

Lawrence Walker


Supervised by Charith Perera; Moderated by Oktay Karakus

The idea of my project is to test the capabilities of small computing power. I will use a Coral Development Board, connected to three Coral Cameras, to identify objects in a small lab environment. The Coral Development board will contain datasets that I have researched to help it identify a human or object that moves past a camera. The cameras will be placed in three different areas in the same lab, so that each camera's ability can be tested on how well it detects a human in the picture. The goal of my findings is to mimic what this type of setup could look like across a house, for example, where multiple people live and may have different smart devices they are looking for (e.g., a smart speaker). Seeing how well my Coral Development Board can be trained with different datasets and pretrained data models will help to understand how object detection can be achieved with small computing power available. If my findings are positive, this can lead to more possibilities using fewer resources and less cost on high-end technology.

To ensure each camera can be easily identity, I want to create a catalogue 'search engine' system where the cameras can be identified by name and location. For example, each of the three cameras will have a different name, so that the user can tell what activity is occurring with each separate device. The catalogue will also show which camera is currently in use, as well as what is going on within it. With other aims being reached, an additional task is to see "who" is using the camera.

This project is a heavily research-based project, where I will use various datasets to train pretrained data models (such as YOLOv4, Deep SORT and TensorFlow) alongside the Python programming language (to edit which objects I want the data models to recognise). The data models will be trained up to identify humans and be able to detect them, so that the cameras can be used with the trained data models. This will be a major test for the small amount of computing power that the Coral Development Board has to offer. Another aim of the project is to do object tracing. The idea of this is if a person was to walk from one area of the lab environment to another (with a camera at each point the person walks to) the cameras would be able to identify the same person has moved between said locations.

Once these previous targets have been achieved, I will see how my system deals with anomalies that can occur. An example of this is if a person was to spill a cup of coffee, I want to train the system to identify a liquid on the floor alongside the cup and the person. This will be a great test with the limited computing-power that I have available.

Initial Plan (06/02/2023) [Zip Archive]

Final Report (19/05/2023) [Zip Archive]

Publication Form