Developing with Vitis AI API_0 - 1.4.1 English

Vitis AI Library User Guide (UG1354)

Document ID
UG1354
Release Date
2021-12-11
Version
1.4.1 English
  1. Install the cross-compilation system on the host side, refer to Installation.
  2. Download the model that you want to use, such as resnet50, and copy it to the board using scp.
  3. Install the model on the target side.
    tar -xzvf <model>.tar.gz
    cp -r <model> /usr/share/vitis_ai_library/models
    By default, we put the models under /usr/share/vitis_ai_library/models directory on the target side.
    Note: You do not need to install the Xilinx model packet if you want to use your own model.
  4. Git clone the corresponding Vitis AI Library from https://github.com/Xilinx/Vitis-AI.
  5. Create a folder under your workspace, using classification as an example.
    mkdir classification
  6. Create the demo_classification.cpp source file. The main flow is shown in the following figure. See Vitis-AI/demo/VART/resnet50/src/main.cc for a complete code example.
    Figure 1. Flow for Developing with Vitis AI API_0

  7. Create a build.sh file as shown below, or copy one from the Vitis AI library demo and modify it.
    #/bin/sh
    CXX=${CXX:-g++}
    $CXX -O2 -fno-inline -I. -o demo_classification demo_classification.cpp -lopencv_core -lopencv_video -lopencv_videoio -lopencv_imgproc -lopencv_imgcodecs -lopencv_highgui -lglog -lxir -lunilog -lpthread -lvart-runner
  8. Cross compile the program.
    sh -x build.sh
  9. Copy the executable program to the target board using scp.
    scp demo_classification root@IP_OF_BOARD:~/
  10. Execute the program on the target board. Before running the program, make sure the target board has the Vitis AI Library installed, and prepare the images you want to test.
    ./demo_classification /usr/share/vitis_ai_library/models/resnet50/resnet50.xmodel resnet50_0 demo_classification.jpg