top of page

Our Project

Object detection is an important and developing technology that can tend to be rather intensive in computing power. Normal computers cannot handle real time detection as fast as a FPGA. Using an FPGA, we will try to run object detection software in real time to process input videos and return the video with bounding box data and detection results.

predictions.jpg

To start of, we had to familiarize ourselves with the task at hand. What is an FPGA? A Field Programmable Gate Array is a silicon chip that can be directed with a hardware description language, cutting out extra layers in the middle. This and parallel processing contributes to the speed of the chip.

​

To achieve object detection implementation, we utilized Xilinx's own suite of ML and AI accelerated tools to encode the Alveo U200 FPGA. These tools use the Deep Learning Processor Unit (DPU) on the card to cut down run time and complexity of neural networks to deliver faster load times in object detection.

Our first step into the project was learning how Verilog works, a hardware description language for components like FPGA's. We modeled basic AND and OR gates using input and output parameters. From there, we used Python to familiarize ourselves with Machine Learning and how it plays an important role in the project. We learned about neural networks and specifically, YoloV3 (You only look once), a fast and accurate machine learning algorithm for detection.

 

By understanding the input, hidden, and output layers, we were able to extract bounding box information and create a scratch program to do object detection. Our first test is shown on the right using dash cam footage from online.

bottom of page