IP Library Granted Patent US 9,709,408
Granted Patent B2
US 9,709,408 · App. 14/629,425 · Granted Jul 18, 2017

Segment validation

Inventors: Davis Kitchel (Norwich, VT); Brian Riordan (Norwich, VT)
Assignee: Strava, Inc.
G01C21/32G01C21/00G01C21/20G01S19/19G01S19/39G01S19/40G06F17/30348G06F17/30371
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,709,408
App. No.
14/629,425
Granted
Jul 18, 2017
Kind
B2
Abstract

Validating a segment is disclosed, including: determining that a stored segment meets a validation criterion; and adjusting GPS data associated with the stored segment using aggregated GPS data.

Claims (42)

1. A system, comprising:

one or more processors configured to:

determine that a stored segment meets a validation criterion;

obtain aggregated GPS data associated with a plurality of efforts that has been determined to match the stored segment, wherein the aggregated GPS data is received from a plurality of GPS-enabled devices;

select an effort from the plurality of efforts;

generate a set of new GPS points corresponding to at least a subset of a set of GPS points associated with the effort including by determining a new GPS point that is computed using the aggregated GPS data associated with the plurality of efforts based on a GPS point of the at least the subset of the set of GPS points associated with the effort, wherein the new GPS point comprises a centroid or an average; and

generate a new version of the stored segment based at least in part on the set of new GPS points, wherein the new version of the stored segment is determined based at least in part on the centroid; and

one or more memories coupled to the one or more processors and configured to store the new version of the stored segment.

2. The system of claim 1 , wherein the validation criterion comprises one or more of the following: a predetermined period of time has passed since the stored segment has been created or last validated, a predetermined number of efforts has been determined to match the stored segment, less than a predetermined threshold of efforts has been determined to match the stored segment since the segment has been created or last validated, and receipt of an indication of a user selection to initiate a validation process.

3. The system of claim 1 , wherein the plurality of efforts that has been determined to match the stored segment is each recorded with a selected GPS-enabled device.

4. The system of claim 1 , wherein the new version of the stored segment is further determined based at least in part on the average.

5. The system of claim 1 , wherein to select the effort from the plurality of efforts comprises to:

determine for each GPS point of the set of GPS points associated with the effort a quantity of GPS points associated with the plurality of efforts within a predetermined radius from the GPS point;

determine a sum based at least in part on quantities of GPS points corresponding to respective ones of the set of GPS points associated with the effort; and

determine a score associated with the effort based at least in part on the sum, wherein the effort is selected based at least in part on the score.

6. The system of claim 1 , wherein the plurality of efforts comprises a first plurality of efforts and wherein the one or more processors are further configured to determine a second plurality of efforts that matches the new version of the stored segment.

7. The system of claim 1 , wherein determining the new GPS point comprises selecting a portion of the aggregated GPS data associated with the plurality of efforts that is within a predetermined distance from the GPS point associated with the effort.

8. The system of claim 7 , wherein selecting the portion of the aggregated GPS data associated with the plurality of efforts that is within the predetermined distance from the GPS point associated with the effort comprises selecting GPS data associated with a subset of the plurality of efforts that are each recorded with a selected GPS-enabled device.

9. A method, comprising:

determining that a stored segment meets a validation criterion;

obtaining aggregated GPS data associated with a plurality of efforts that has been determined to match the stored segment, wherein the aggregated GPS data is received from a plurality of GPS-enabled devices;

selecting an effort from the plurality of efforts;

generating a set of new GPS points corresponding to at least a subset of a set of GPS points associated with the effort including by determining a new GPS point that is computed using the aggregated GPS data associated with the plurality of efforts based on a GPS point of the at least the subset of the set of GPS points associated with the effort, wherein the new GPS point comprises a centroid or an average; and

generating a new version of the stored segment based at least in part on the set of new GPS points, wherein the new version of the stored segment is determined based at least in part on the centroid.

10. The method of claim 9 , wherein the validation criterion comprises one or more of the following: a predetermined period of time has passed since the stored segment has been created or last validated, a predetermined number of efforts has been determined to match the stored segment, less than a predetermined threshold of efforts has been determined to match the stored segment since the segment has been created or last validated, and receipt of an indication of a user selection to initiate a validation process.

11. The method of claim 9 , wherein the plurality of efforts that has been determined to match the stored segment is each recorded with a selected GPS-enabled device.

12. The method of claim 9 , wherein the new version of the stored segment is further determined based at least in part on the average.

13. The method of claim 9 , wherein selecting the effort from the plurality of efforts comprises:

determining for each GPS point of the set of GPS points associated with the effort a quantity of GPS points associated with the plurality of efforts within a predetermined radius from the GPS point;

determining a sum based at least in part on quantities of GPS points corresponding to respective ones of the set of GPS points associated with the effort; and

determining a score associated with the effort based at least in part on the sum, wherein the effort is selected based at least in part on the score.

14. The method of claim 9 , wherein the plurality of efforts comprises a first plurality of efforts and further comprising determining a second plurality of efforts that matches the new version of the stored segment.

15. The method of claim 9 , wherein determining the new GPS point comprises selecting a portion of the aggregated GPS data associated with the plurality of efforts that is within a predetermined distance from the GPS point associated with the effort.

16. The method of claim 15 , wherein selecting the portion of the aggregated GPS data associated with the plurality of efforts that is within the predetermined distance from the GPS point associated with the effort comprises selecting GPS data associated with a subset of the plurality of efforts that are each recorded with a selected GPS-enabled device.

17. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

determining that a stored segment meets a validation criterion;

obtaining aggregated GPS data associated with a plurality of efforts that has been determined to match the stored segment, wherein the aggregated GPS data is received from a plurality of GPS-enabled devices;

selecting an effort from the plurality of efforts;

generating a set of new GPS points corresponding to at least a subset of a set of GPS points associated with the effort including by determining a new GPS point that is computed using the aggregated GPS data associated with the plurality of efforts based on a GPS point of the at least the subset of the set of GPS points associated with the effort, wherein the new GPS point comprises a centroid or an average; and

generating a new version of the stored segment based at least in part on the set of new GPS points, wherein the new version of the stored segment is determined based at least in part on the centroid.

18. The computer program product of claim 17 , wherein determining the new GPS point comprises selecting a portion of the aggregated GPS data associated with the plurality of efforts that is within a predetermined distance from the GPS point associated with the effort.

19. The computer program product of claim 18 , wherein selecting the portion of the aggregated GPS data associated with the plurality of efforts that is within the predetermined distance from the GPS point associated with the effort comprises selecting GPS data associated with a subset of the plurality of efforts that are each recorded with a selected GPS-enabled device.

Assignments (1)
SECURITY INTEREST Recorded Apr 15, 2025
From: STRAVA, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 070843/0054 →
Continuity (3)
Continuation 13788392 · Mar 7, 2013
Provisional Application 61609847 · Mar 12, 2012
Related Publication 20150211869A1 · Jul 30, 2015