The idea is to train my Nano 33 BLE sense so that it will recognize the name of a color.
I took 5000ms samples where 1x the color name is mentioned, in total 4 colors names + 1 background noise (Nano 33 BLE microphone does not give a high output ;-(
Total +/- 5min. data.
The Time series data Window size is set to 1000ms and Windows increase to 500ms
I’ve added Audio (MFCC) processing block and the Neural Network (Keras) learning block
Hi @marco, because you select a 1s. window most of your windows are noise, and thus this won’t separate well. To make keyword spotting work you’ll want the keyword within the 1s window.
Click the three dots next to your sample.
Select ‘Split sample’.
This automatically finds the word and cuts it out:
Tip: you can say the word multiple times in one recording, and the ‘Split sample’ will automatically crop out the samples.
We’ll be putting out a tutorial for dealing with discrete audio events at some point in the near future, but for now you can refer to https://www.youtube.com/watch?v=fNSKWdIxh8o for an example.
Hi @marco, if you export as Arduino library and import in the Arduino IDE you can find the ‘nano_ble33_sense_microphone_continuous’ example.
Here you’ll have the predictions right after // print the predictions and you can do something like:
for (size_t ix = 0; ix < EI_CLASSIFIER_LABEL_COUNT; ix++) {
if (strcmp(result.classification[ix].label, "red") == 0 && result.classification[ix].value > 0.7) {
// turn LED on
}
}