X-LINUX-AI Tool

Revision as of 09:41, 12 April 2024 by Registered User

This article aims to give general information about the x-linux-ai tool. (il faut developper encore un petit peu)

1. Description[edit source]

1.1. What is X-LINUX-AI Tool ?[edit source]

The X-LINUX-AI tool is a software designed to verify the current version of X-Linux-AI and to display a comprehensive list of all the available features and applications. The feature set provided is specifically designed for the development of artificial intelligence applications, offering a comprehensive suite of tools and frameworks. This includes TensorFlow™ Lite with the XNNPACK delegate for optimized performance, native support for the Coral Edge TPU™ accelerator, and ONNX Runtime™ with XNNPACK for executing ONNX models. OpenCV 4.7.x enhances image processing capabilities. Support for the Sony™ IMX335 5Mpx sensor and access to the AI package repository of OpenSTLinux round out this robust offering, allowing for easy integration and management of AI components.

The X-LINUX-AI version is synchronized with the OpenSTLinux version, evolving based on the alterations made throughout the development cycle. Major changes prompt an update to the middle digit in the version number, following the pattern 5.x.0, where 'x' is indicative of the sequence of significant updates. For minor improvements , the last digit is increased, according to the 5.0.x format. The initial '5' denotes the current version of OpenSTLinux.

2. X-LINUX-AI Tool installation[edit source]

Warning white.png Warning
The software package is provided AS IS, and by downloading it, you agree to be bound to the terms of the software license agreement (SLA0048). The detailed content licenses can be found here.

After having configured the AI OpenSTLinux package you can install the X-LINUX-AI components.

    apt-get install x-linux-ai-tool

3. How to use X-LINUX-AI Tool:[edit source]

Info white.png Information
The x-linux-ai binary tool can be found in the /usr/bin directory.
Usage:	x-linux-ai -[option]

-v --version	:  Show X-LINUX-AI current version if it is installed
-f --supported-features	: Print all supported frameworks in this X-LINUX-AI version
-h --help	:     Show this help

3.1. Usage Example[edit source]

The following command can be used to show the version of x-linux-ai:

    x-linux-ai -v
X-LINUX-AI version: v5.0.0
For displaying the features of x-linux-ai, refer to the command provided below:
    {{Board$}} x-linux-ai -f
root@stm32mp1:/usr/local/demo-ai# x-linux-ai -f

Features:
 * TensorFlow™ Lite 2.11.0 with XNNPACK delegate activated 
 * Coral Edge TPU™ accelerator native support 
   * libedgetpu 2.0.0 (Grouper) aligned with TensorFlow™ Lite 2.11.0 
   * libcoral 2.0.0 (Grouper) aligned with TensorFlow™ Lite 2.11.0 
   * PyCoral 2.0.0 (Grouper) aligned with TensorFlow™ Lite 2.11.0 
 * ONNX Runtime™  1.14.0 with XNNPACK execution engine activated 
 * OpenCV 4.7.x 
 * Python™ 3.11.x 
 * Support of Sony™ IMX335 5Mpx sensor with use of DCMIPP and internal ISP 
 * Support for the OpenSTLinux AI package repository allowing the installation of a prebuilt package using apt-* utilities 
 * Application  : 
   * Image Classification : 
       * C++ / Python™ example using TensorFlow™ Lite based on the MobileNet v3 quantized model 
       * C++ / Python™ example using Coral Edge TPU™ based on the MobileNet v1 quantized model and compiled for the Edge TPU™ 
       * Python™ example using ONNX Runtime based on the MobileNet v3 quantized model 
       * C++  example using Network Binary Graph based on MobileNet v3 quantized model 
   * Object Detection : 
     * C++ example using TensorFlow™ Lite based on the COCO SSD MobileNet v1 quantized model 
     * Python™ example using TensorFlow™ Lite based on the YoloV4-tiny quantized model 
     * C++ / Python™ example using Coral Edge TPU™ based on the COCO SSD MobileNet v1 quantized model and compiled for the Edge TPU™ 
     * C++ / Python™ example using ONNX Runtime based on the COCO SSD MobileNet v1 quantized model 
   * Face Recognition : 
     * C++ example using proprietary model capable of recognizing the face of a known (enrolled) user. Contact the local STMicroelectronics support for more information about this application or send a request to edge.ai@st.com 
   * Human Pose Estimation 
     * Python™ example using TensorFlow™ Lite based on Movenet SinglePose Lightning quantized model 
   * Semantic Segmentation 
     * Python™ example using TensorFlow™ Lite based on DeepLabV3 quantized model 
 * Application support for the 1080p, 720p, 480p, and 272p display configurations 
 * X-LINUX-AI SDK add-on extending the OpenSTLinux SDK with AI functionality to develop and build an AI application easily. The X-LINUX-AI SDK add-on provides support for all the above frameworks. It is available from the [X-LINUX-AI] STM32MP25-beta repository 
  
 ## Further information on how to install and how to use X-LINUX-AI Starter package 
 <https://wiki.st.com/stm32mp25-beta-v5/wiki/X-LINUX-AI_Starter_package> 
  
 ## Further information on how to install and how to use X-LINUX-AI Developer package 
 <https://wiki.st.com/stm32mp25-beta-v5/wiki/X-LINUX-AI_Developer_package> 
  
 ## Further information on how to install and how to use X-LINUX-AI Distribution package 
 <https://wiki.st.com/stm32mp25-beta-v5/wiki/X-LINUX-AI_Distribution_package> 
  
 ## Application samples

Find more information on the wiki page: https://wiki.st.com/stm32mpu/wiki/X-LINUX-AI_OpenSTLinux_Expansion_Package