NeuralSPOT includes a port of EdgeImpulse's generic C++ library, making it easy to integrate AI projects generated by NeuralSPOT. See here for a detailed walkthrough of how we used Nests to integrate EdgeImpulse models.
These projects started as a Nest, which was modified to remove duplicated components such as Tensorflow and CMSIS-DSP and to include EdgeImpulse's SDK. Those modifications are captured in projects/edgeimpulse/makefile
.
$> cd .../edgeimpulse-examples
$> make PROJECT=yes_no
$> make deploy
$> make view
Each of these projects include all needed NeuralSPOT components plus the EdgeImpulse SDK and the exported EdgeImpulse model. To upgrade NeuralSPOT, use the nest make target. Nothing else is needed unless the new version requires NeuralSPOT API changes in the main model file.
To upgrade all of neuralSPOT in a project (in this example, ei_yes_no):
$> cd neuralSPOT
$> make clean # if needed
$> make # build neuralSPOT
$> make NESTDIR=.../edgeimpulse-examples/yes_no nest
To upgrade a single neuralSPOT component (in this example, ns-audio):
$> cd neuralSPOT
$> make clean # if needed
$> make # build neuralSPOT
$> make NESTDIR=p.../edgeimpulse-examples/yes_no NESTCOMP=ns-audio nestcomponent
Project | Description |
---|---|
basic_example | Shows how to integrate an EdgeImpulse model exported as generic C++ to NeuralSPOT |
anomaly_detection | Shows a practical fan speed anomaly detector built in EdgeImpulse and using MPU6050 data collected using our MPU data collector. |
yes_no | Shows a continuous inference audio model detecting whether 'yes' or 'no' was spoken, built in EdgeImpulse and using NeuralSPOT's libraries including low powerAUDADC audio sampling. |
hello_ambiq | Shows a continuous inference audio model detecting whether 'hello Ambiq' was spoken, built in EdgeImpulse using transfer learning and using NeuralSPOT's libraries including AUDADC audio sampling. |