Skip to main content
The gst-ai-classification sample application demonstrates hardware-accelerated image classification on a video stream. The pipeline receives input from a camera, file source, Real-Time Streaming Protocol (RTSP) stream or USB camera, performs preprocessing, runs inference on the AI hardware, and displays the results on screen. gst-ai-classification pipeline diagram The gst-ai-classification application is part of the Qualcomm Intelligent Multimedia (QIM) SDK and is available on the device after flashing. You must push the model and label files to the device before running the application.

Download model and label files

  1. Enable Wi-Fi and SSH on the device. The device requires an internet connection to download the artifacts needed to run sample applications. If SSH and Wi-Fi are already configured, skip this step. Follow Setup an SSH connection to enable Wi-Fi and SSH on the device.
  2. On the host computer, set the user environment variable:
  3. Sign in to the target device using SSH:
  4. On the target device, download and run the download_artifacts.sh script to download the model and label files:
  5. (Optional) Download the YOLOv8 model, which is not included in the default download. Use one of the following methods:
    1. Create a Qualcomm AI Hub account.
    2. Go to Settings in the upper right corner and copy your API key.
    3. Run the following commands on the host computer:
      Replace <API_KEY> with your API key:
      The models are downloaded to the export_assets directory.
    4. Copy the model to the /etc/models/ directory on the device:

Run the sample application

  1. On the host computer, set the user environment variable:
  2. Sign in to the device using SSH:
  3. Run the sample application:
    For more information about the configuration fields or available options, use the help command:
The application overlays classified object labels and confidence scores on the video stream and displays the results on the configured output. To stop the application, press Ctrl+C.

Configure the application

This section uses the following default file locations:
  • /etc/models/ — model files
  • /etc/labels/ — label files
  • /etc/media/ — video files
  • /etc/configs/ — configuration files
Edit the /etc/configs/config_classification.json file to specify your model, input source, and output preferences. Configuration template:
Example configuration — LiteRT model on a video file using the DSP runtime:
JSON configuration field descriptions

Notes

  • To stop the application, press Ctrl+C.
  • To enable GStreamer debug logging, set the GST_DEBUG environment variable. For example, to log all warnings:
    For more troubleshooting options, see Troubleshooting.