C++ Development¶
The MLTK contains both Python scripts and C++ Python wrappers, examples, and libraries:
Python Wrappers - Allow for sharing source code between a host PC during model training and an embedded target during model inference
Examples - Demonstrate executing the various libraries on the host PC or on an embedded target
Libraries - Implement algorithms that are used by the wrappers and examples
NOTE: Refer to Supported Hardware for more details which embedded platforms are supported.
Development Modes¶
The MLTK supports three modes of C++ development:
Simplicity Studio - Allows for building C++ applications for Silicon Lab’s embedded targets using Silicon Lab’s Simplicity Studio
Visual Studio Code - Allows for building C++ applications for Windows/Linux or embedded targets using Microsoft VSCode
Command-line - Allows for building C++ applications from the command-line using CMake
Source Code¶
All of the C++ source code may be found on Github at: mltk/cpp
This directory has the following structure:
mltk/cpp/tflite_micro_wrapper - Tensorflow-Lite Micro Python wrapper, this allows for executing the Tensorflow-Lite Micro interpreter from a Python script
mltk/cpp/audio_feature_generator_wrapper - The AudioFeatureGenerator Python wrapper, this allows for executing the spectrogram generation algorithms from a Python script
mltk/cpp/mvp_wrapper - MVP hardware accelerator Python wrapper, this allows for executing the MVP-accelerated Tensorflow-Lite Micro kernels from a Python script
mltk/cpp/shared - All of the C++ libraries and source code
mltk/cpp/shared/apps - Example applications and demos
mltk/cpp/shared/platforms - Supported hardware platforms
mltk/cpp/tools - Tools used by the C++ build scripts
Examples¶
Refer to the Examples documentation for more details about the applications that come with the MLTK.
Python Wrappers¶
Refer to the C++ Python Wrappers documentation for more details about the C++ Python wrappers that come with the MLTK.