Explore Different Implementations of the Sobel Filter: Hand-Coded vs. Vitis Vision Library

In this section, we will focus on implementing an optimized hand-coded version of the Sobel operator in HLS and comparing its performance with the Sobel operator from the Vitis Vision Library. The first challenge we will encounter is the installation and configuration of the Vitis Vision Library, with all installation details provided in this document. Next, we will deploy the different versions of the Sobel HLS kernel onto the board and test the hardware acceleration performance within the PYNQ framework. A comparison of different implementations of the Sobel operator shows that using the Vitis Vision Library is more than three times faster than the Hand-Coded Sobel acceleration kernel when run on the same device and interface. Therefore, we need to master not only the design process and optimization techniques for HLS kernels but also learn to implement suitable operators using the existing Vitis Acceleration library.

Comparison

The advantages and disadvantages of the two methods are as follows:

Method Advantages Disadvantages
Hand-Coded Sobel Highly customizable Time-consuming to develop and optimize
  Potential for tailored optimization for specific needs Requires deep knowledge of HLS and algorithm intricacies
Vitis Vision Library Faster development time Less flexibility in customization
  Pre-optimized for performance Dependent on library updates
  Easier to implement  

Content

Part Topic Description Environment
1 Software Implementation Software Implementation with OpenCV-Python Library Jupyter Notebook
2 HLS Kernel Programming Hand-Coded Sobel HLS Kernel to Extract Image edges AMD Vitis HLS 2023.2
Using Sobel in Vitis Vision Library to Extract Image Edges
3 System-level Integration Create the kernel Graph and the test bench Jupyter Notebook
Load the overlay and run the application on the PYNQ framework
Visualize the results and analyze the performance

Installation and Deployment Steps


Copyright© 2024 Advanced Micro Devices