Upon popular request we've added support for importing CSV data into Edge Impulse through both the upload functionality in the Studio (in your project go to Data acquisition, and select the ‘upload’ icon), and in the Edge Impulse CLI. This makes it trivial to bring existing sensor data into Edge Impulse, without the need to convert your data into the Edge Impulse Data Acquisition format yourself.
To start, create a single CSV file per sample, write a header with the sensor axes, and then add a single line per reading. For example, this is data from a three-axis accelerometer at 100Hz:
timestamp,accX,accY,accZ 0,4.220828473773600,1.8800472920291100,-16.89228981323240 10,4.471770735278730,2.0017025177553300,-17.887080018505500 20,4.31928972478658,2.4953566802978500,-18.926163539013300 30,4.648792312787470,2.958335718591510,-18.5336641043514 40,4.773739711926880,2.719663740594690,-18.800019623565700 50,4.653879991315310,2.6865938301637800,-19.98305510341230
If you want to you can add the label (e.g. ‘fault state 1’) to the file name, and the label will be automatically picked up (e.g. call this file
faultstate1.sample1.csv). Or, you can specify the label when uploading data.
Sounds simple? It is! You're now ready to use your existing datasets to build the next generation of intelligent devices through embedded machine learning. Any questions? Please let us know on the forums!
Jan Jongboom is the CTO and cofounder of Edge Impulse. He has parsed many CSV files in his life.