mark-p-thomas : Activity Auto-classification

Sections

Introduction

Activities can be classified by a variety of means, which are discussed below. Some of the broadest classifications are Mechanism and Location. Further independent classification can be done with Deduction. These classifications tend to correlate with how people use GPS in them.

Additionally, an intersection of the two can help narrow down the list of potential activity, especially when using an activity hierarchy classification. With enough certainty, this can automate activity classification. With less certainty, a user can at least be prompted to select from fewer options. This also allows for automation of Track cleanup operations, such as distinguishing when an activity has changed in the same recording.

Mechanism

The two main mechanisms of interest are motorized vs non-motorized activities. These can usually be distinguished by a coarse consideration of speed profiles, where motorized activities tend to have higher max & average speeds, and potentially more consistent speeds.

Location

Location can be determined by GPS Points/coordinates combined with elevation data or geographic feature polylines such as rivers, lakes, and coastlines. Location can also be determined by correlation to a user-defined polyline that has the relevant activities associated with it.

Sea vs. Land

This can be determined by checking if a Point lies on a known body of land. This is easy enough to do on a large scale using bounding box intersections to trigger a more efficient intersection check with an actual polyline/polygon of the the coast.

However, when near a varied coast or many small islands, this may not be very accurate or practical in terms of computational efficiency/feasibility or what is available in the app dataset.

Lake/River vs. Land

This can be determined by checking if a Point lies on or close enough to a polyline indicating a river, or within a polygon of a lake.

Air vs. Land

This can be determined by checking if a Point altitude correlates closely enough with the elevation at the same coordinate.

Deduction

Based on the typical characteristics of speed magnitudes & variability, an activity can be deduced by comparing Track data to a predetermined Speed Profile. Where some differing activities may overlap too much to distinguish them, location can be determinative. For example, swimming and walking have very similar speed profiles, but if one occurs on sea/river/lake, we know that it is swimming. As another example, paragliding and driving may look similar, but by locating one in the air, we know to rule out driving.