Fit ventilation and exhlation rates on CO2 sensor data

Open Nicolas Mounet requested to merge feature/CO2_fit into master

Goal is to provide a tool to fit the ventilation profile and exhalation rate on data provided by a CO2 sensor.

The CO2 fitting algorithm methods were introduced in the back-end within a new class CO2DataModel, targeted to return the fitted parameters

  • Developed a second model generator (co2_model_generator) to handle CO2 related methods - re-used most of the methods related to occupational and ventilation profiles, discarding all the others.

The front-end was developed as an add-on to the form in a modal format (screenshot below):

  • Added a fourth option on "Ventilation data" - "from fitting" where the modal is triggered and users can upload CO2 data and visualize the results.
  • Indicative plots were generated with Matplotlib and then injected in the front-end.
  • A state-change prediction method was developed using the Pelt algorithm to indicate the possible ventilation state changes.
  • Data tables to visualize the results.
  • Handle back-and-forward navigation form-report-form with fitted data.
  • Data validation on both ends.

Script to obtain results shown at CAiMIRA meeting on 09/05/2023:


[TEST in the UI]

Edited by Luis Aleixo

Merge request reports