Implementing LED Drivers and Computer Vision on FPGA
Location
Hager-Lubbers Exhibition Hall
Description
PURPOSE: This study aims to examine and design a system that allows students to control LED matrix with hand gestures using Field Programmable Gate Array (FPGA), OpenCV, and Tensorflow software library. PROCEDURES: The system is comprised of a Raspberry 4 computer, Basys-3 FPGA board, HC-05 Bluetooth modules, webcam, and LED matrix. OpenCV and Tensorflow are open-source software libraries for computer vision and machine learning. However, there is no optimal way for using those libraries with FPGA. One of the solutions is to utilize OpenCV and Tensorflow library indirectly by using a compatible system to process the image and then send data to the FPGA via various communication protocols such as Bluetooth. OUTCOME: The user's hand gesture control can be captured and processed by the Raspberry computer using OpenCV and Tensorflow libraries. Once the process is completed, the control command will transmit to the Basys-3 FPGA board over the Bluetooth signal. A preset image is displayed on the LED matrix according to the command gesture. The total system delay is less than 100ms. IMPACT: Results show the design is feasible and cost-effective to implement for small scale projects where the real-time aspect is not a top priority.
Implementing LED Drivers and Computer Vision on FPGA
Hager-Lubbers Exhibition Hall
PURPOSE: This study aims to examine and design a system that allows students to control LED matrix with hand gestures using Field Programmable Gate Array (FPGA), OpenCV, and Tensorflow software library. PROCEDURES: The system is comprised of a Raspberry 4 computer, Basys-3 FPGA board, HC-05 Bluetooth modules, webcam, and LED matrix. OpenCV and Tensorflow are open-source software libraries for computer vision and machine learning. However, there is no optimal way for using those libraries with FPGA. One of the solutions is to utilize OpenCV and Tensorflow library indirectly by using a compatible system to process the image and then send data to the FPGA via various communication protocols such as Bluetooth. OUTCOME: The user's hand gesture control can be captured and processed by the Raspberry computer using OpenCV and Tensorflow libraries. Once the process is completed, the control command will transmit to the Basys-3 FPGA board over the Bluetooth signal. A preset image is displayed on the LED matrix according to the command gesture. The total system delay is less than 100ms. IMPACT: Results show the design is feasible and cost-effective to implement for small scale projects where the real-time aspect is not a top priority.