Matvei Popov, Artificial Intelligence Surveillance system, LACSEF


Hello, my name is Matvei Popov I am an 11th grader at Ribet Academy Los Angeles. Today I want to introduce you to my project called Artificial Intelligence Surveillance System The name of the project speaks for itself, this project is a system that utilizes neural networks to assist the users in collecting statistics about specific objects, areas, and subjects recorded by the surveillance cameras over a certain period of time The purpose of this system is to save user’s time and increase their productivity. Right now I am going to make a quick demonstration of the system’s capabilities. This is a demonstration of my screen. Let’s launch my program, so, right away, you can see the program is able to detect the unknown people inside of the frame, however it did not identify these people, let’s make it do so There are two ways we could do it, we could either use the GUI or the Telegram Bot, I will use the Bot I just need to communicate with it And of course, first of all I need to set the area that I want to keep track of Let’s call this area A1 This Area is going to be right here So, now Let’s talk to the bot, and ask it to provide the last person he detected in our area. Now let’s set the name for this person. I will call him with my name, Matvei So, we proceed with that name… Now if we continue to the project, we could see that the system has identified the person inside of the frame and gave him a name As you can see, the name Matvei is here And it also started counting the time time that the person has spent in the area A1, that we have specified Now, let me explain how I built this project This project is built in Python programming language. For the purpose of human detection and identification, I used Keras libraries’ YOLOv3 (algorithm) Convolutional Neural Network But then I decided to switch it to OpenVINO pre-trained model because it performed better than the model that I trained. I also used the Intel OpenVINO pre-trained person redientification model for the purpose of reidentification. As you can see, it works pretty fine After I was done with the task of human detection and redientification, I built a native GUI for my system, using PyQt5 and OpenCV Python frameworks. Lastly, I built a Telegram Bot using pyTelegramBotAPI and connected bot it to my system. After the system was built, I tested on larger groups of people, and collected a bigger time statistics about them Results were astonishing, detection and reidentification processes went smoothly, and the time statistics accurately represented the real world The only bad thing that I found while testing is that the system sometimes struggles to reidentify people who changed their visual characteristics (like clothes), but the telegram bot that I developed became a good solution to that problem. You can see the demonstration of many other abilities of this system and read about the procedure and testing processes in much more detail, in my project report. Finally, the successful test of my system proved that territory surveillance could be easily done with minimum human involvement and effort if we will use neural networks for that purpose. The accuracy of my software is close to the accuracy of a human. This software has the potential to increase humanity’s productivity and safety in the long term The amount of modifications that can be applied to this program is enormous, which is good. I am strongly motivated to keep developing this system, until it makes people’s lives better one day. Thank you for your attention!