- Dominic Létourneau (@doumdi)
- Simon Brière (@sbriere)
OpenIMU aims to provide an open source and free generic data importer, viewer, manager, processor and exporter for Inertial Measurement Units (IMU) and actimetry data. By using a common sensor data format and structure, data from different sources can be imported and managed in the software. This software was developped with support from INTER.
Common file format (SQLite) managed by OpenIMU, but that can also be opened from other software
Import recorded data from sensors:
- Actigraph GTX3 series
- OpenIMU-MiniLogger
- AppleWatch SensorLogger (Custom research app for data collection)
Transfer data directly from sensors:
- AppleWatch SensorLogger (Custom research app for data collection)
Data organization
- By participants groups
- By participants
- By recordsets
- By results
Data viewing
- Temporal display of recordsets to quickly see when data was recorded
- Sensor graph view plotting with zoom functions
- GPS viewer for GPS data
Data processing
- Processing module, currently supporting:
- Freedson Activity Algorithm (Freedson PS1, Melanson E, Sirard J., Calibration of the Computer Science and Applications, Inc. accelerometer., Med Sci Sports Exerc. 1998 May;30(5):777-81)
- Evenson Activity Alogirhtm (Kelly R. Evenson, Diane J. Catellier, Karminder Gill, Kristin S. Ondrak & Robert G. McMurray (2008) Calibration of two objective measures of physical activity for children, Journal of Sports Sciences, 26:14, 1557-1565, DOI: 10.1080/02640410802334196 )
- Processed results viewer
- Processing module, currently supporting:
Data exporter
- CSV format
- Matlab format
- Data export selector
Available in French and English, and as Windows and Mac OS apps.
Data splitting into sub-recordsets (by time, by day, manually)
More data processing modules
Please follow those steps to setup your development environment.
Make sure you have a valid compiler installed:
- Linux : gcc/g++
- Mac : LLVM through XCode
- Windows: Visual Studio C++ 2017
Install CMake
Install Qt + QtCreator
- Install the latest Desktop distribution fitting your compiling environment (will not be needed in the future)
Install MiniConda3
Install PyCharm Community Edition
- Opening the root CMakeLists.txt will allow to create and build the project
- Build the project using the "python-all" target, it will automatically generate the Python environment in env/python-3.10, PySide6 UI and RCC files.
- All python dependencies will be automatically downloaded
- Once the project is built, you will not need QtCreator until you change or add a resource file or a QtDesigner ui file.
- If you change or add ui or resources files, you need to rebuild the project from QtCreator.
- Using PyCharm, opening the directory "{PROJECT_ROOT}/python"
- Select the existing Python 3.10 environment in "{PROJECT_ROOT}/python/env/python-3.10" in the app menu: PyCharm->Preferences->Project:python->Project Interpreter
Run the OpenIMUApp.py application from PyCharm
Edit the code as you would normally do in a python program.
Run tests in the tests directory
- In a near future, we hope to have everything in the QtCreator IDE. Stay tuned!
Enjoy!