This thesis addresses keyword spotting on an embedded system using machine
learning methods. We designed and implemented a complete system for
recognizing six spoken commands (“left”, “right”, “up”, “down”, “stop”, “go”)
on the STM32H750B-DK development board. The model was trained on the
Google Speech Commands dataset using a depthwise separable convolutional
neural network (DS-CNN), with input features computed using the MFCC
(Mel-Frequency Cepstral Coefficients) method. To achieve a suitable model
size and execution speed on the embedded target, the model was quantized
to INT8 and converted to C source code using the X-CUBE-AI tool. On the
embedded system, we implemented the complete audio processing pipeline
– from signal acquisition via the audio interface, filtering and resampling,
MFCC feature computation in C, to model inference and result display on
the LCD screen. The trained model achieved 93.07 % accuracy on the test
set, and 92.90 % after quantization, confirming that the accuracy loss due
to quantization is negligible. The results show that the proposed solution is
suitable for real-time keyword spotting on embedded systems with limited
computational resources.
|