From Edge Impulse

About Edge Impulse

Edge Impulse logo

"Edge Impulse is the leading development platform for machine learning on edge devices, free for developers and trusted by enterprises." You can find the Edge Impulse training platform herearrow-up-right.

Preliminaries

This guide covers how to train a model on the Edge Impulse platformarrow-up-right and deploy it to an edge device using the Nx AI Cloud.

Before you start, make sure you have:

circle-check

Quick overview

This guide walks through four steps:

  1. Train a model on the Edge Impulse platform. Full platform documentation is at https://docs.edgeimpulse.com/docs/arrow-up-right.

  2. Import your Edge Impulse model into Nx AI Cloud. Sync the trained model to your model catalogue.

  3. Deploy and test the model on your edge device. Assign the model to a device via the Nx AI Cloud.

  4. Retrain your model. Collect new training images in the field and repeat the cycle to improve accuracy over time.

Step 1: Model training using the Edge Impulse platform

Start by creating a new project on the Edge Impulse platform:

Edge Impulse platform showing a new project with dataset, impulse, and model training tabs
Edge Impulse project overview — start here to build and train your model

Upload and annotate your training examples, then train an object detection model. A getting started guide is available at https://docs.edgeimpulse.com/docs/tutorials/detect-objects-using-fomoarrow-up-right.

Work through the data acquisition and impulse creation steps to reach the model selection screen:

Edge Impulse model selection screen showing FOMO MobileNetV2 and YOLOv5 options
Select FOMO MobileNetV2 or YOLOv5 — these are the models supported for import into Nx AI Cloud

Select FOMO MobileNetV2 (0.1 or 0.35) or YOLOv5. Click "Start training" and wait for training to finish.

circle-exclamation

Step 2: Coupling your Edge Impulse model with Nx

Open https://admin.sclbl.nxvms.com/arrow-up-right and log in to Nx AI Cloud. Click the + icon in the sidebar and choose Link an Edge Impulse model. The dedicated Edge Impulse wizard opens at step 1: enter your API key and project ID.

Link an edge impulse model wizard showing step 1 with empty API-Key and Project ID
     fields
Step 1: enter your Edge Impulse API key and project ID to link your trained model.

Your Project ID is shown in the project info panel, or as the last number in the URL when you open the project. Your API key is found in the Edge Impulse dashboard under API Keys:

Edge Impulse dashboard showing the API Keys tab with the Copy button next to the API
     key
Edge Impulse API key: found on the dashboard under API Keys.

Paste the API key and project ID into the form, then click Next.

Link an edge impulse model wizard with API key and project ID filled in and the Next
     button active
API key and project ID entered: click Next to continue to owner selection.

The wizard continues through owner selection, catalogue assignment, and hardware support steps. These work the same as the generic upload wizard. On the final step, click Upload to link the model.

Link an edge impulse model wizard showing step 4 Additional hardware support with
     Default ONNX checked
Step 4: choose hardware conversions, then click Upload to import the model.

When the import completes, you are taken to the model detail page with a confirmation notice.

Model detail page showing the Edge impulse Model link successful notification and the
     model name, description, catalogue, and owner information
Model link successful: the Edge Impulse model is now in your library and ready to deploy.

You are now ready to deploy your model to your selected edge device.

Step 3: Deploying and testing your model on your edge device

In Nx Meta, connect to your system and open the plugin page.

Camera Settings Integrations tab showing the Manage device button hover state
Click Manage device to open the model pipeline selector

Click "Manage device" and select the model you created.

Model assignment popup showing the imported Edge Impulse model in the list
Select your Edge Impulse model and click Add to pipeline

Click "Add to pipeline". The model is assigned and you return to the plugin settings.

Activate the Objects tab in the camera view. Detection boxes appear on the video feed:

Camera feed showing bounding boxes drawn over detected objects by the Edge Impulse model
Detection boxes appear on the camera feed once the Objects tab is active

Your Edge Impulse model is now running on your edge device.

Step 4: Retraining your model

After deploying your model, you can improve it over time by collecting new training images in the field.

Set up a postprocessorarrow-up-right from the integration SDK for image uploads. You can set the postprocessor up to send images every N seconds or when the result is below a certain P value.

Let the system run with the postprocessor for a while to collect images.

Navigate back to your Edge Impulse project, label the uploaded images, retrain the model, then re-deploy it. Repeat this cycle to improve accuracy over time.

Last updated