Application Demos
This chapter describes how to set up a test environment and to run the application demos. There are two application demos provided within the Vitis™ AI Library. Here, we take ZCU102 board as the test platform.
Demo Overview
There are two application demos provided within the Vitis AI Library. They use the Vitis AI Library to build their applications. The codes are stored in Vitis-AI/demo/Vitis-AI-Library/apps/segs_and_roadline_detect and Vitis-AI/demo/Vitis-AI-Library/apps/seg_and_pose_detect.
segs_and_roadline_detect is a demo that includes multi-task segmentation network processing, vehicle detection and road line detection. It simultaneously performs 4-channel segmentation and vehicle detection and 1-channel road lane detection.
seg_and_pose_detect is a demo that includes multi-task segmentation network processing and pose detection. It simultaneously performs 1-channel segmentation process and 1-channel pose detection.
Demo Platform and Setup
Demo Platform
- Hardware
-
- 1 x ZCU102 Prod Silicon https://www.xilinx.com/products/boards-and-kits/ek-u1-zcu102-g.html
- 1 x Windows 7/10 laptop
- 1 x 16 GB SD card
- 1 x Ethernet cables
- 1 x DP 1080P compatible monitor
- 1 x DP cable
- Software
-
- ZCU102 board image https://www.xilinx.com/products/design-tools/ai-inference/ai-developer-hub.html#edge
- Vitis AI Library
- Images and video files
- Terminal software like MobaXterm, Putty
DPU Configuration & Dev Tool Used
- 3xB4096 @281 MHz
- Vivado 2021.1, Vitis AI Library v1.4
Demo Setup Illustration
Demo 1: Multi-Task Segmentation + Car Detection and Road Line Detection
Target Application
ADAS/AD
AI Model, Performance, and Power
- FPN
- 512x288, 4ch, 20fp
- VPGNET
- 640x480, 1ch, 56fps
- 20W @ ZU9EG
Build and Run the Demo
Build the demo in the host and copy the program to the target board.
cd Vitis-AI/demo/Vitis-AI-Library/apps/segs_and_roadline_detect
bash -x build.sh
scp segs_and_roadline_detect_x segs_and_roadline_detect_drm root@IP_OF_BOARD:~/
To use OpenCV display, run the following command:
./segs_and_roadline_detect_x seg_512_288.avi seg_512_288.avi seg_512_288.aviseg_512_288.avi lane_640_480.avi -t 2 -t 2 -t 2 -t 2 -t 3 >/dev/null 2>&1
If you want to use DRM display, please connect to the board using SSH and run the following command:
./segs_and_roadline_detect_drm seg_512_288.avi seg_512_288.avi seg_512_288.avi
seg_512_288.avi lane_640_480.avi -t 2 -t 2 -t 2 -t 2 -t 3 >/dev/null 2>&1
- The video files are in the vitis_ai_library_r1.4.0_video.tar.gz. Download the package from here.
- Due to limitations of the Docker environment, the Multi-task demos cannot run in the DRM mode on Cloud devices.
Demo Picture
Demo 2: Multi-Task Segmentation+Car Detection and Pose Detection
Target Application
- ADAS/AD
- Smartcity
AI Model, Performance, and Power
- FPN
- 960x540, 1ch, 30fps
- Openpose
- 960x540, 1ch, 30fps
- 20W @ ZU9EG
Build and Run the Demo
Build the demo in the host and copy the program to the target board.
cd Vitis-AI/demo/Vitis-AI-Library/apps/seg_and_pose_detect
bash -x build.sh
scp seg_and_pose_detect_x seg_and_pose_detect_drm root@IP_OF_BOARD:~/
To use OpenCV display, run the following command:
#./seg_and_pose_detect_x seg_960_540.avi pose_960_540.avi -t 4 -t 4 >/dev/null 2>&1
If
you want to use DRM display, please connect to the board using SSH, and run the
following
command:#./seg_and_pose_detect_drm seg_960_540.avi pose_960_540.avi -t 4 -t 4 >/dev/null 2>&1
- The video files are in the vitis_ai_library_r1.4.0_video.tar.gz. Download the package from here.
- Due to limitations of the Docker environment, the Multi-task demos cannot run in the DRM mode on Cloud devices.