A guest post by Chris Knorowski, that trigger an action when a person is detected in an image or a keyword is spoken . One common factor for all these applications is the low cost and power usage of the hardware they run on. Sure, we can detect audio and visual wake words or analyze sensor data for predictive maintenance on a desktop computer. But, for a lot of these applications to be viable, the hardware needs to be inexpensive and power efficient (so it can run on batteries for an extended time). Fortunately, the hardware is now getting to the point where running real-time analytics is possible. It is crazy to think about, but the our goal is to empower developers to rapidly add AI to their own edge devices, allowing their applications to autonomously transform raw sensor data into meaningful insight. We have taken years of lessons learned in creating products that rely on edge optimized machine learning and distilled that knowledge into a single framework, the that is capable of recognizing different boxing punches in real-time using the Gyroscope and Accelerometer sensor data from the onboard IMU sensor. The Nano 33 BLE Sense also has a variety of onboard sensors which can be used in your TinyML applications. For this tutorial, we are using the motion sensor which is a 9-axis IMU (accelerometer, gyroscope, magnetometer). For wireless power, we used the Adafruit Li-Ion Battery Pack. If you do not have the battery pack, you can still walk through this tutorial using a suitably long micro USB cable to power the board. Though collecting gesture data is not quite as fun when you are wired. See the images below hooking up the battery to the Nano 33 BLE Sense. For every machine learning project, the quality of the final product depends on the quality of your data set. Time-series data, unlike image and audio, are typically unique to each application. Because of this, you often need to collect and annotate your datasets. The next part of this tutorial will walk you through how to connect to the Nano 33 BLE Sense to stream data wirelessly over BLE as well as label the data so it can be used to train a TensorFlow model. For this project we are going to collect data for 5 different gestures as well as some data for negative cases which we will label as Unknown. The 5 boxing gestures we are going to collect data for are Jab, Overhand, Cross, Hook, and Uppercut. The gateway should now be running on your machine. The gateway will pull the configuration from your device, and be ready to start forwarding sensor data. You can verify it is working by going to the Test Stream tab and clicking the Start Stream button. Now that we can stream data, the next step is to record and label the boxing gestures. To do that we will use the and install the Data Capture Lab to record sensor data. We have created a template project to get you started. The project is prepopulated with the gesture labels and metadata information, along with some pre-recorded example gestures files. To add this project to your account: After uploading the project, you can start capturing sensor data. For this tutorial we will be streaming data to the Data Capture Lab from the gateway over TCP/IP. To connect to the Nano 33 BLE Sense from the Data Capture Lab through the gateway: Now that data is streaming into the Data Capture Lab, we can begin capturing our gesture data set. After you hit stop recording, the captured data will be saved locally and synced with the cloud project. You can view the file by going to the Project Explorer and double-clicking on the newly created file. The Data Capture Lab has two methods for labeling your events: Manual and Auto. In manual mode you can manually drag and drop a segment onto the graph to identify an event in your sensor data. Auto mode uses a segmentation algorithm to automatically detect events based on customizable parameters. For this tutorial, we are going to use a segmentation algorithm in Auto mode. The segmentation algorithms we use for determining events will also be compiled as part of the firmware so that the on-device model will be fed the same segments of data it was trained against. We have already created a segmentation algorithm for this project based on the dataset we have collected so far. To perform automatic event detection on newly captured data file: We are going to use notebook and follow along to train your model. After saving the model, go to the After downloading the library, we will build and upload the firmware to the Nano 33 BLE Sense. For this step, you will need the with the Thematisch verwandte Begriffe: Building, TinyML, Application, with · 6 Treffer Videos werden geladen ... Beiträge werden geladen ... Videos werden geladen ... Beiträge werden geladen ... Videos werden geladen ... Beiträge werden geladen ... Videos werden geladen ... Beiträge werden geladen ... Videos werden geladen ...Building Your Data Set
git clone https://github.com/sensiml/open-gateway
cd open-gateway
pip3 install -r requirements.txt
python3 app.pySetting up the Data Capture Lab Project
Connecting to the Gateway
Building a TinyML Model
Offline Model Validation
Flashing the Firmware
Community-Analysen & Experten-Meinungen 0
Verwandte Story-Cluster & Quellen (Vektor-KI)
Ähnliche Beiträge
Auch interessante Nachrichten Building a TinyML Application with TF Micro and SensiML
How to Build AI Systems That Know When They Don't Know: A Practical Guide
Getting the Most Out of Transformers in Elastic
Exploring the Future of Security with ChatGPT
🎥 Künstliche Intelligenz Videos 🕛 vor 5 Jahren 14 Min Lesezeit
Building a TinyML Application with TF Micro and SensiML
📑 Inhaltsübersicht
- ▸ What you need to get started
- ↳ The Software
- ↳ The Hardware
- ▸ Building Your Data Set
- ↳ Streaming sensor data from the Nano 33 over BLE
- ↳ Setting up the Data Capture Lab Project
- ↳ Connecting to the Gateway
- ↳ Capturing Boxing Gesture Sensor Data
- ▸ Annotating Sensor Data
- ↳ Segmenting in the Data Capture Lab
- ↳ Labeling Events in the Data Capture Lab
- ▸ Building a TinyML Model
- ▸ Offline Model Validation
- ▸ Deploy and Test on the Nano 33 BLE Sense
- ↳ Downloading the model as firmware
- ↳ Flashing the Firmware
- ↳ Viewing Classification Results
- ▸ Conclusion
to handle collecting and annotating sensor data, creating a sensor preprocessing pipeline, and generating the firmware. We will use for inferencing. Before you start, we recommend signing up for SensiML , an open-source python application to stream data from edge devices. We will use the to train our model using TensorFlow Lite for Microcontrollers We will use the with the has an Arm Cortex-M4 microcontroller running at 64 MHz with 1MB Flash memory and 256 KB of RAM. If you are used to working with cloud/mobile this may seem tiny, but many applications can run in such a resource-constrained environment. Switch to the Platform I/O extension tab in VS Code Connect your Nano 33 BLE Sense to your computer using the micro USB cable. Click Upload and Monitor under the nano33ble_with_tensorflow in the PlatformI/O tab. Port 8095 Engine
running on our computer to retrieve the sensor data. To download and launch the gateway open a terminal and run the following commands:
PYTHON
to your Nano 33. This firmware implements the
for troubleshooting. Go to Test Model Tab Select your model from the Model Name dropdown Select one or more of the capture files by clicking on them Click the Compute Accuracy Button to classify the captures using the selected model
. This can be extremely helpful during the annotation phase to help interpret what is happening at a given point in the time-series sensor waveforms.
or the in our documentation. Follow us on with us, we love hearing about all of the amazing TinyML applications the community is working on! ↗ Original-Artikel auf blog.tensorflow.org lesen
Vollständiger Original-Bericht
Ausführliche Details, Code-Beispiele & Hersteller-Stellungnahme auf blog.tensorflow.org.
Wie bewertest du diesen Beitrag?
1 Klick Feedback Teilen mit Netzwerk & Team:
Hat Ihnen dieser Tipp / Anleitung geholfen?
Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf „ Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum 🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Tipp: Mit Pfeiltasten [ ← ] und [ → ] blättern
🔍 Verwandte News
🔧 AI Nachrichten freeCodeCamp Programming Tut
🔧 AI Nachrichten Elastic Security Labs
🔧 AI Nachrichten Elastic Security Labs
Laden...
Laden...
Laden...
Laden...
Laden...
Laden...
Laden...
Laden...
Laden...
SOCIAL SHARE CARD GENERATOR