TransWikia.com

Could one predict from power data whether a cyclist is standing or sitting?

Bicycles Asked on June 18, 2021

I was wondering about this machine learning problem: Take a large sample of data from rides that includes whether a cyclist was standing, what the cadence, power, (or perhaps even torque?) and gradient are. Is it possible to predict using machine learning (ML) techniques whether a cyclist is standing or not? I would assume that this would be of some use for Zwift or other racing apps to show whether a cyclist is standing or sitting (and perhaps even determine air resistance based on that). Right now their algorithm is a bit too simplistic (with a fixed gradient/cadence rule).

My idea is roughly that the power distribution over a single stroke should look different for a standing cyclist and a sitting cyclist. Of course this would all need to be conditioned on personal variables of the rider (weight, trainer model, power meter) but those are issues that ML is really good at. But I wonder if there are any reasons why this would be completely impossible (for example, if power meters can only measure power over 1 second at sufficient precision).

Update: Indeed most power meters measure torque at a higher frequency and transmit this data to the cycling computer/trainer app/etc.. However, these cycling computers usually only provide files at a data frequency of one datapoint per second. Therefore it seems that only cycling computer specific solutions would be possible.

2 Answers

A few thoughts on the feasibility and reliability.

  1. Placement of sensors. As the key characteristic of "sitting" is using a surface to sit on, it only makes sense to put the sensor into the seat. The farther away the sensor placement is from the saddle (handlebars, pedals, tires etc.), the more work it is to tell the outcomes apart and more noise of unrelated nature to deal with. It may require having and simultaneously analyzing multiple sensors (incline, acceleration etc.) to make up for the suboptimal placement of the main sensor. For example, you can use a videocamera in a car riding alongside the cyclist and filming the ride as a sensor. Then you are tasked with classifying the human's posture from the recording, which is a lot of data to process.

  2. Fuzzy border between activities. While there are situations clearly described by humans and potentially detectable by computers as "sitting" or "standing", whatever machinery and algorithms are used, there will always be a grey zone of "don't know". There are always transitions from sitting to standing and back. There are also times of incompletely or skewedly loading the saddle, not even touching the bike etc. Compared to the two "positive" situations, how much of the "unknown" state will be present in the data for an average ride? Ultimately, it depends on the intended usage of such data. For some applications having the "don't know" answer 5% of the time would be unacceptable, while in other cases even 50% of unclassified input would be tolerable as long as the remaining 50% of the time is correctly classified into the two categories.

  3. Individual calibration. Regardless of the approach, it will require some (or a lot) tuning of its algorithmic parameters to tell the outcomes apart. Finesse in this strongly affects the quality of the results. For example, for a single saddle pressure sensor, the calibration process may be limited to finding a single pressure threshold to cut the most of the noise. For a machine learning algorithm, you'll have to feed it thousands of manually marked-up traces of trainings in a hope to teach it something, but not too much. For more classic algorithmic approaches, you will most likely have to provide several numbers describing specific cyclist's and used bicycle geometry and weight characteristics.

Answered by Grigory Rechistov on June 18, 2021

There is a problem here in that there is currently no sensor on the market (that i'm aware of) to measure sitting/standing. And unless i'm misunderstanding ML, we would need that input into our data for it to learn how this correlates to the cyclists power/cadence etc.

However, i'll ignore that and look at a couple of options that might give promising results.

  1. Power curve analysis: Maple Panda suggested in comments that no-one does 1000W in the saddle, and whilst this isn't true (track sprinters), it may be fair to say that if a user is within 20% of their peak 1s power then they are out of the saddle. This wouldn't translate to zwift very well though since riders are very rarely hitting these very high powers.

  2. Power phase analysis: Some power meters transmit phase data. This tells us how much torque is being applied at different parts of the pedal stroke. In general when people get out of the saddle, the pedal stroke becomes less 'round' with more pronounced dead spots. The problem with this approach is that I don't believe all power meters support this data.

Answered by Andy P on June 18, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP