Murat Tokez (m.tokez2019@gtu.edu.tr)
Ilker Acar (i.acar2020@gtu.edu.tr)
Duygu Zeynep Tuncel (d.tuncel2020@gtu.edu.tr)
Mehmet Salih Turhan (m.turhan2020@gtu.edu.tr)
This project is about running and accelerating vehicle detection and mapping ADAS applications in parking lot using Deep Learning Unit (DPU) on KV260 FPGA board.
- Vitis-AI: High-level libraries and APIs for AI inference with DPU cores.
- Deep Learning Unit (DPUCZDX8G): A configurable computation engine optimized for convolutional neural networks.
- PetaLinux: An embedded Linux SDK targeting FPGA-based SoC designs.
The system includes:
- Kria KV260
- A RPLIDAR A1M8
- A camera
- A rotary encoder and Arduino nano to provide the third axis to the 2D LiDAR, creating a 3D point cloud
- Vivado Project: Create hardware design.
- Linux Project: Integrate hardware with PetaLinux.
- Model Reconstruction: Utilize models from the model zoo.
- Device Tree Overlay: Configure hardware settings.
- Application Deployment: Load and run the application code on the development board.
- I2C pins connected to KV260 Pmod pins
- Necessary pull-up resistors enabled for I2C communication
-
Project Creation:
petalinux-create -t project -s <path_to_bsp_file> --name dpuOS
-
Configuration:
cd dpuOS
petalinux-config --get-hw-description= $PATH_XSA_FILE
- Enable FPGA Manager
- Disable TFTPboot Copy
- *Select EXT4 as Root Filesystem Type
petalinux-config -c kernel
- Enable DPU Driver
- Enable USB-to-Serial Converter Driver
petalinux-config -c rootfs
petalinux-build
Prepare SD card and boot the system.
Generate and compile the device tree overlay to specify hardware configuration.
- Download and install Vitis AI Runtime.
- Optimize DPU for ZynqMP SoCs.
- Install Vitis AI library and model files.
cd ~/examples/vai_runtime/adas_detection
bash -x build.sh
./adas_detection /dev/video0 /usr/share/vitis_ai_library/models/yolov3_adas_pruned_0_9/yolov3_adas_pruned_0_9.xmodel