Systems and method for synchronizing exercise with music
Image recognition and motion capture technology synchronize user movements with music tempo, enhancing workout engagement and efficiency by adjusting exercise device resistance or speed to match the target tempo.
Patent Information
- Authority / Receiving Office
- US · United States
- Patent Type
- Applications(United States)
- Current Assignee / Owner
- RADOW SCOTT B
- Filing Date
- 2025-10-29
- Publication Date
- 2026-05-07
AI Technical Summary
Existing exercise devices lack the ability to synchronize user movement with the tempo of music, leading to suboptimal workout experiences and potential inefficiencies.
Utilizing image recognition and motion capture technology to determine a user's oscillation rate and compare it to the tempo of music, providing real-time feedback to adjust movements in sync with the music, and adjusting resistance or speed of the exercise device to match the target tempo.
Enhances workout synchronization with music, improving user engagement and efficiency by ensuring movements align with the beat, thereby optimizing exercise performance.
Smart Images

Figure US20260124500A1-D00000_ABST
Abstract
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to and the benefit under 35 U.S.C. § 119(e) of U.S. Provisional Ser. No. 63 / 715,866, filed on Nov. 4, 2024, entitled SYSTEMS AND METHOD FOR SYNCHRONIZING EXERCISE WITH MUSIC, and of U.S. Provisional Ser. No. 63 / 821,576, filed on Jun. 11, 2025, entitled SYSTEMS AND METHOD FOR SYNCHRONIZING EXERCISE WITH MUSIC, the entire disclosure of which is hereby incorporated herein by reference.BACKGROUND OF THE DISCLOSURE
[0002] Various types of stationary exercise devices have been developed. Examples include stationary bikes, bike trainers, rowing machines, stair climbers, elliptical machines, cross trainers, alternative motion machines, etc. Known devices may control the resistance force experienced by a user based on one or more inputs such as velocity and user-selected difficulty or resistance.SUMMARY OF THE DISCLOSURE
[0003] An aspect of the present disclosure is a method of providing a user with information concerning the user's movement during exercise to facilitate synchronization of the user's movement with the tempo of music provided to the user during exercise. The method may include utilizing image recognition to determine positions of the user while exercising and determining an oscillation rate (OR) of the user based, at least in part, on the positions of the user. The method further includes providing the user with information concerning differences between the user's OR and a target OR, wherein the target OR is based, at least in part, on the tempo (e.g. beats per minute) of music provided to the user while the user is exercising. The oscillation rate (OR) may comprise oscillations per minute, steps per minute, or other rates of movement of the user during exercise. The tempo of the music may comprise a beat frequency such as beats per minute (BPM).
[0004] Another aspect of the present disclosure is a method of providing a user with an oscillation rate of the user during exercise. The method includes utilizing a motion capture system of a portable electronic device to determine movement of a user's face or other body part during exercise. The method further includes initializing the motion capture system for oscillating movement comprising a selected one of step, stroke, or stride capture, whereby the motion capture system utilizes criteria that is specific to the selected one of step, stroke, or stride capture. The method further includes repeatedly determining the position of the user's face and associating each position with a time stamp to thereby capture motion of the user's face. A distance threshold is utilized to determine if a movement constitutes a step, stroke, or stride. The distance threshold may comprise a predefined distance that is specific to the selected one of step, stroke, or stride capture. The method includes determining the time to complete an oscillating movement or a portion of an oscillating movement to determine an oscillation rate (OR). The OR of at least three sequential oscillations may be averaged to provide a rolling average OR, and the rolling average OR may be displayed on a display screen of the portable electronic device while the user is exercising.
[0005] These and other features, advantages, and objects of the present disclosure will be further understood and appreciated by those skilled in the art by reference to the following specification, claims, and appended drawings.BRIEF DESCRIPTION OF THE DRAWINGS
[0006] FIG. 1 is a partially schematic view of an exercise device that may be utilized in accordance with an aspect of the present disclosure;
[0007] FIG. 2 is a flow chart showing an aspect of the present disclosure;
[0008] FIG. 3 is a schematic showing a graphical user interface according to an aspect of the present disclosure;
[0009] FIG. 4 is a schematic showing a graphical user interface according to another aspect of the present disclosure;
[0010] FIG. 5 is a schematic showing a graphical user interface according to another aspect of the present disclosure;
[0011] FIG. 6A is a flowchart showing another aspect of the present disclosure;
[0012] FIG. 6B is a continuation of the flowchart of FIG. 6A showing another aspect of the present disclosure;
[0013] FIG. 7 is a schematic showing another aspect of the present disclosure;
[0014] FIG. 8 is a schematic showing another aspect of the present disclosure;
[0015] FIG. 9 is a schematic showing another aspect of the present disclosure;
[0016] FIG. 10 is a schematic showing another aspect of the present disclosure; and
[0017] FIG. 11 is a schematic showing a graphical user interface according to another aspect of the present disclosure.DETAILED DESCRIPTION
[0018] For purposes of description herein, the terms “upper,”“lower,”“right,”“left,”“rear,”“front,”“vertical,”“horizontal,” and derivatives thereof shall relate to the invention as oriented in FIG. 1 However, it is to be understood that the invention may assume various alternative orientations and step sequences, except where expressly specified to the contrary. It is also to be understood that the specific devices and processes illustrated in the attached drawings, and described in the following specification, are simply exemplary embodiments of the inventive concepts defined in the appended claims. Hence, specific dimensions and other physical characteristics relating to the embodiments disclosed herein are not to be considered as limiting, unless the claims expressly state otherwise.
[0019] As discussed in more detail below, an aspect of the present disclosure is the use of a sensor such as a camera 14 (FIG. 1) of a suitable device such as a smartphone 10 and image recognition software to determine periodic movements of a user exercising on an exercise device 1 (FIG. 1) and provide audio and / or visual feedback to a user concerning the degree to which their movements during exercise are synchronized to the beat of music that the user is listening to during exercise. This feedback enables a user to adjust their movements during exercise to synchronize their movements to the beat of music. The music and image recognition may be included in a program (e.g. an “App”) on smartphone 10 or the like. As discussed in more detail below, smartphone 10 may be positioned on various types of exercise devices such as stationary bike 8 (FIG. 1), an elliptical machine 70 (FIG. 7), a variable stride machine 80 (FIG. 9), a rowing machine 85 (FIG. 10), or other exercise device such as a common treadmill.
[0020] The present disclosure is not, however, limited to stationery exercise devices. For example, a smartphone 10 may be positioned in a boat while user is rowing to provide feedback to the user to assist the user in synchronizing rowing movements with the beat of music. The present disclosure also contemplates providing visual and / or audio feedback to a user via, for example, an augmented reality (AR) device (e.g. AR glasses) while a user is running or biking whereby the user can see the ground and other objects through the lenses of the AR device, and also see messages and / or graphics on the AR device indicating that the user needs to speed up or slow down to synchronize movements with the beat of music provided to the user during exercise.
[0021] The image recognition feature may recognize a user's face, torso, or other body part or parts, and track movement of the user's face or body part in X, Y, and Z coordinates. A user's oscillation rate (OR) may comprise oscillations per minute (OPM) (e.g. steps or strides per minute), and may be determined from position data captured by the image recognition feature and the measured OR may be compared to the tempo of Beat Rate (BR) which may be expressed as Beats per Minute (BPM) of music being played by the smartphone 10 to determine if a user's OR matches the BPM of the music. As discussed in more detail below, a phase of a user's movements may also be compared to an optimum phase to determine if a user's movements are in phase with a music beat. For example, on a stationary bike, an optimum phase may require a user to move each pedal downwardly in time with the beat of the music. As also discussed below, device 10 may be configured to prompt a user to input a desired music BPM or range of music BPM, and device 10 may be configured to select (curate) songs having the desired BPM. For example, device 10 may be configured to provide the user with playlists of songs having the desired BPM, wherein each playlist comprises a plurality of songs of a genre (e.g. country music, pop music, rock music, rap music, hip hop music, etc.). A user may then select a desired playlist using the touch screen or other GUI of the device 10. It will be understood that, as used herein, Beats per Minute (BPM) broadly refers to the tempo or frequency of music beats.
[0022] Although various criteria may be utilized, a user may be in phase with music according to predefined criteria if, for example, a maximum force (acceleration) occurs at a music beat. A user may be provided with feedback in the form of graphics (e.g. on display 11 of smartphone 10), audio signals using a speaker(s) of smartphone 10, or other suitable means. In general, the feedback notifies a user if the user's current OPM is too fast or too slow relative to the BPM of the music being provided to the user. For example, if a song has 120 BPM and a user is exercising at 100 OPM, the smartphone 10 may be configured to inform the user that their OPM is too low. Conversely, if a song has 120 BPM and a user is exercising at 140 OPM, smartphone 10 may be configured to inform the user that their OPM is too high. Smartphone 10 may also be configured to provide a user with graphic or audio feedback (information) concerning the user's phase (e.g. pedal position) relative to an optimum phase for the specific exercise being performed by the user. It will be understood that the feedback to the user may include speed error information only, phase error information only, or a combination of speed error and phase error information.
[0023] Referring again to FIG. 1, an exercise device 1 such as stationary bike 8 may include user inputs 2 (e.g. pedals) whereby user 3 can apply force to the inputs 2 during use of the exercise device 1 (e.g. bike 8). Device 1 may include a force-generating device 5 that provides a resistance force to the user inputs 2. The force-generating device 5 may be adjustable whereby a user can selectively increase the force required to move the inputs 2. A controller 6 may be operably connected to the force-generating device 5, and to a user interface 7. The user interface may include a touch screen or the like that allows a user to select an exercise program, control a force required to move the inputs 2. The user interface 7 may also provide a user with information concerning the rate at which the user is moving the inputs 2 (e.g. RPM of stationary bike pedals), a duration exercise, and other information.
[0024] A device such as smartphone 10 may be positioned on exercise device 1 utilizing an optional clip or bracket 12. Smartphone 10 may have a camera 14 that may be positioned to capture images of a user 3 while the user is exercising on the exercise device 1.
[0025] The device 10 may be programmed or configured (e.g. utilizing an “App”) to capture a plurality of images of at least a portion of the user's body in use. For example, the camera 14 may capture a plurality of images of a user's face and / or upper body and / or shoulders 15 at short time intervals (e.g. 0.1 seconds, 0.01 seconds, 0.001 seconds). For example, device 10 may be configured to capture images 5 times per second. 10 times per second, 20 times per second, 30 times per second, etc. It will be understood, however, that virtually any suitable frequency of image capture at higher or lower rates than these examples may be utilized.
[0026] Device 10 may also be configured to recognize at least a portion of user 3 and to determine the position of user 3 in, for example, X, Y and Z coordinates at small increments of time. The movement (velocity) of user 3 may also be determined based on changes in position between captured images. In general, the velocity may comprise change in position between sequential captured images divided by the time interval between the sequential captured images (i.e. a numerical first derivative of position with respect to time). Similarly, changes in velocity between sequential captured images divided by the time interval between the sequential captured images can be utilized to determine acceleration of the user (a numerical second derivative of position with respect to time). Thus, the speed and acceleration of a user or a portion 15 of a user can be determined by device 10 using the positions determined from image capture and the time intervals between the captured images. It will be understood that the present disclosure is not limited to capturing images of a specific portion of a user 3, and device 10 may be configured to capture movement of other portions of a user 3 such as the lower torso and / or legs 16. Furthermore, device 10 does not need to be located in a specific position. For example, device 10 may be positioned alongside exercise device 1 (e.g. offset along the Y axis). Still further, camera 14 and user feedback features such as display 11 and / or audio speakers do not necessarily need to comprise part of a single device 10. For example, camera 14 and / or display 11 could comprise “built in”features that are integrated into exercise device 1.
[0027] Referring again to FIG. 1, in use users may tend to apply maximum force to the pedals 2 of an exercise bike at an angle corresponding to line 16, wherein line 16 is at about a 90-degree position which may generally correspond to a 3 o'clock position of a conventional clock face. This pedal position may comprise a predefined optimum or target phase whereby pedals are at line 16 at music downbeats. It will be understood, however, that the target phase (line 16) does not have to be at the 3 o'clock position, and various predefined target phase criteria may be utilized depending on characteristics or preferences of users, the type of exercise equipment being utilized by the user, etc. As discussed in more detail below, device 10 may be configured to compare a user's estimated (measured) pedal position (e.g. corresponding to lines 16A and 16B) to determine if the measured pedal position is in phase with a music beat. If a user's pedal position corresponds to line 16A, the phase of the pedal is “behind” the target position 16 by an error “E1.” Similarly, if the measured or estimated pedal position 16B is “ahead” of the target position 16 an error “E2” may be determined by the device 10. Furthermore, device 10 may be configured to utilize movements of the user to determine oscillations per minute (OPM) to determine if a user is operating device 10 whereby the user's OPM matches (within predefined limits) the Beats Per Minute (BPM) of music.
[0028] The movement of a user captured by camera 14 of device 10 may comprise movement in X, Y, and / or Z axes. Various users may have somewhat different movements when using an exercise device. However, the movement is generally in the form of oscillations corresponding to movement of user inputs such as pedals 2, whereby the oscillation rate corresponds to the rate at which a user is moving. For example, in the case of a stationary exercise bike 1, the oscillations may correspond to the RPM of the pedals 2. In general, changes in direction may correspond with strokes of right or left legs on bikes, ellipticals, steppers, revolving staircases, rowing machines, alternative movement machines, and the like. The device 10 may be configured to determine which of the user's legs is being used during each oscillation, and this information may be utilized to analyze aspects of each user's leg. For example, acceleration and speed data may be used to determine if a leg is injured, weak, or healing from an injury. For example, if the bilateral acceleration is symmetric, this may be indicative that both legs are relatively healthy, a rehabilitation has been successful, etc. However, if the oscillations associated with the left and right legs are not consistent (e.g. the oscillations have significantly different positions, velocities, or accelerations), this may be indicative that one leg is injured, or other differences exist.
[0029] Device 10 may be configured (e.g. programmed) to utilize machine learning to analyze the position data captured by the camera 14, and the program may determine what type of exercise machine is being utilized by a given user. Initially, it may be necessary for a user to select a device type during training of the machine learning program. These inputs may be utilized by the machine learning program in connection with captured oscillation data to determine correlations between the oscillation data and the type of exercise device, whereby the program is able to determine the type of exercise device utilizing captured oscillation data. In addition to determining the type of exercise device, machine learning of data in the database mentioned herein may be used to correlate oscillations of various users to given songs with given BPM's to determine step tracks. Thus, position data (e.g. XYZ position data) may be collected from users and this data may be utilized to determine where the downbeats are in each song. For example, machine learning may be utilized to determine where the downbeats are in given songs from that data. The data concerning the timing of downbeats based on user's measurements may be utilized to create step tracks based, at least in part, on the comparison of users'step data (e.g. XYZ position data) to downbeats of music. These step or beat tracks may be utilized for the phase analysis (phase error) described herein, and the step or beat tracks are therefore not limited to use for comparison of SPM or OPM to BPM. Thus, an aspect of the present disclosure is a novel way to determine beat tracks utilizing measured step tracks of specific users. “Expert” users (e.g. professional dancers) having strong natural ability to synchronize body movement with music beats may be selected for measuring step timing and to develop step and beat tracks.
[0030] The image recognition and tracking feature may comprise a Graphical Position Comparator that is configured to determine acceleration and oscillations per minute (OPM's) back-to-front, and / or side to side, and / or up and down from X, Y, and Z position data obtained from a camera 14 on device 10. Beat tracks and spacing for beat markers within beat tracks can be determined by tracking and recording the position and / or velocity and / or acceleration and OPM's of users (e.g. “expert” users) on exercise machines. The beat markers may be displayed in the form of vertical lines that indicate the precise location (time) of each beat within the waveform of the music (wherein the horizontal axis is time). Spacing between those markers represents the tempo or beats per minute (BPM) (time) of the song. The acceleration and OPM's of expert users typically corresponds to their downstrokes, steps, strokes, etc. In general, expert users tend to be on-beat within low and finite amounts of variance, typically tens of milliseconds, and their accelerations and OPM's correspond to the position of beat markers and related spacing of music.
[0031] The accelerations and OPM's of expert users may be stored in a database, and the accelerations and OPM's may be exported in beat track / grid format. In general, the accelerations and OPM's of several expert users maybe combined to provide average values of the expert users motion that are stored in a database. It will be understood that a variety of suitable file types are possible, which may be saved locally on a phone or other device 10 and uploaded to a database or cloud for future distribution to other users. As the beat tracks / grids represent rhythmic beats within a song and show location and timing of each beat, they can be started at the same time as the same song on other user's phones or computers such that the beat markers within particular beat tracks / grids will be synchronized with downbeats of music within that particular song. The beat markers and related spacing may form a beat track, which can be used for user feedback (e.g. “speed up” or “slow down”) and / or for control purposes in exercise machines (e.g. the speed and / or resistance of an exercise machine may be varied or controlled based, at least in part, on beat markers).
[0032] By recording a skilled user's motion on exercise machines using the OPM process described herein, related data can be collected and stored in a computer file, which may be utilized to provide movement tracks, wherein the movement tracks comprise ideal or target movements. By analyzing sufficient numbers of movement tracks machine learning technology, which is a branch of artificial intelligence that can learn patterns from data, movement tracks can be created automatically, as opposed to manually. For example, device 10 may be configured to display differences between the movement of a user and ideal or target movement. The movement tracks may then be used by additional / other users on additional exercise machines. Given that machine learning is a subset of artificial intelligence, narrow or focused version of artificial intelligence may be employed to automatically create movement tracks from the aforementioned data.
[0033] The positional data of user position during use of an exercise device may be streamed into a software App to meter and use the data in real time and / or to store the data in a database for later analysis.
[0034] Metering of the positional data captured by camera 14 of device 10 may include display of the data in digital format to include, for example, steps per minute, RPM, strokes per minute, calculated distance, etc. The App (software) may also be configured to display heart rate if the user 3 is wearing an appropriate sensor. Furthermore, the App (software) may also be configured to display watts (power) if the exercise device is capable of detecting and reporting power.
[0035] The measured user oscillations per minute (OPM) may be compared to the Beat Per Minute (BPM) of music to determine errors (e.g. deviations) of a user in real-time. As discussed in more detail below in connection with FIGS. 3 and 4, the errors / deviations may include deviations in speed (e.g. RPM or Steps Per Minute) relative to music beats and / or phase errors (e.g. pedals 2 are not at maximum acceleration line 16 of FIG. 1 at the time of the music downbeat).
[0036] With further reference to FIG. 2, a process 20 according to an aspect of the present disclosure includes a start 22 that may comprise user input to an interactive display 11 of device 10. At step 24, velocity error is determined utilizing a difference between a measured velocity and a music Beats Per Minute (BPM). The App of device 10 may be configured to utilize a predetermined beat track for music that is being played by the device 10, or the App may be utilized to determine the number of Beats Per Minute while the music is playing. For a stationary bike, a rider may pedal at various rates (RPM). For example, typical cadences may be in the range of about 40-120 RPM. If the music being played by device 10 to the user 3 has 80 Beats Per Minute (BPM), the target RPM may be set at 80 RPM such that there is one musical beat (e.g. a downbeat) for each revolution of the pedals of a stationary bike. In this example, if the measured velocity (RPM) as determined by the user's oscillations (e.g. image capture) is above 80 RPMs the user would be pedaling at a rate that is faster than the target RPM. However, if the user's speed (RPM) is less than 80 RPM, the user's speed would be too slow relative to the target RPM. Alternatively, the target RPM may comprise a multiple of the BPM, or a fraction of the BPM. For example, the target RPM may be selected to provide 2 beats during each full revolution of the pedals of a stationary bike, whereby the left and right leg down strokes of the user occur when a music beat is played If the user's movement is synchronized with the beats of the music.
[0037] It will be understood that the target speed or velocity may be different for different types of exercise devices. For example, if exercise device 1 comprises an elliptical machine, the velocity may comprise a predefined (selected) number of cycles per minute, wherein each cycle comprises movement of each leg from a starting position to an intermediate position, and back to the starting position. Similarly, if the device comprises a stair climber the speed or velocity may comprise a predefined (selected) number of steps per minute (e.g. the number of steps of both the right and left leg, or a number of steps of one leg). For a treadmill, the speed may comprise a predefined (selected) number of strides per minute. If the exercise device comprises a rowing machine, the speed or velocity may comprise a predefined (selected) number of strokes per minute. The target speed may be adjusted to account for differences in different types of exercise. For example, if device 1 comprises a rowing machine, the target velocity may be 30 strokes per minute. In this example, if the music has 60 BPM, the target of 30 strokes per minute may be based on every other beat of the music whereby there are two beats for each stroke when a user is at the target velocity. If the exercise device comprises a treadmill and the user is running, the user may run at, for example, 120 strides per minute. If the music has 60 BPM, the target velocity may comprise two beats for each stride. If the exercise device is a stair climber and a user desires to train at 60 steps per minute, and the music has 60 BPM, the target velocity may be 60 steps per minute whereby there is one beat per step.
[0038] If a user is running on a treadmill, it is noted that the treadmill may shake and vibrate such that data captured by the image recognition feature mentioned above may not be accurate or possible. In this circumstance, the accelerometer feature of the smart phone or other device may measure OPM's based, at least in part, on the frequency of the vibrations Of the treadmill, which may be compared to the Beats per Minute (BPM) of music being played by the smartphone to determine if a user's OPM matches the BPM of the music. Similarly, accelerometer data may be related to the App by a watch worn by a user if the watch includes an accelerometer.
[0039] Device 10 may be configured to prompt a user to input a desired speed or velocity to meet the user's training goals, and the device 10 may, via the App, prompt a user to select music having a suitable BPM. For example, if a user desires to train at 60 steps per minute on a stair climbing machine, the user may enter a velocity of 60 steps per minute, and the program may provide (play) music having 60 BPM or 120 BPM whereby one or two beats per step can be provided. Similarly, device 10 may be configured to prompt a user to input multiple desired speeds or velocities over several efforts or intervals to meet the user's training goals, and the device 10 may, via the App, prompt a user to select music having multiple suitable BPM's. For example, if a user desires to train at 60 steps per minute on a stair climbing machine for a certain amount of time, the user may enter a velocity of 60 steps per minute, and the program may provide music having 60 BPM or 120 BPM for the amount of time specified by the user whereby one or two beats per step can be provided, and then if a user desires to train at 80 steps per minute on a stair climbing machine for an additional amount of time, the user may enter a velocity of 80 steps per minute, and the program may provide music having 80 BPM or 160 BPM for the additional amount of time specified by the user, whereby one or two beats per step can be provided, and so on.
[0040] Referring again to FIG. 2, after the velocity error is determined at step 24, process 20 proceeds to step 26, and the velocity error is communicated to a user via a user interface such as display 11 of device 10. The velocity error may be communicated utilizing graphics, audio, or other suitable form of communication. The velocity error may comprise a message as “speed up!” or “slow down!” or “your speed is on target!” As discussed in more detail below in connection with FIGS. 3 and 4, various graphics may also be utilized to communicate velocity errors to a user.
[0041] At step 28, phase error is determined. As discussed above, if the exercise device comprises a stationary bike, a user may have maximum acceleration and / or force when a pedal reaches the 4 o'clock position corresponding to line 16. Device 10 may be configured to determine or estimate the position of pedals 2 based on oscillations of the user 3 and image capture. The target phase may comprise pedals 2 being at the 4 o'clock position (line 16) at each downbeat of the music. The phase error is determined at step 28 based on the difference between a measured or estimated pedal position at the downbeat of the music. For example, if a user is “behind” the target phase such that the pedals 2 are at a position corresponding to line 16A in FIG. 1, the error is “E1.” However, if a user 3 is “ahead” of the beat whereby the pedals 2 are at a position corresponding to line 16B at the time of the music downbeat, the phase error is “E2.” In general, the target phase may vary depending on the exercise and / or user. For example, some users may find that the 4 o'clock position (line 16, FIG. 1) is not optimal. Thus, device 10 may be configured to allow a user to adjust the target phase to suit an individual user whereby the phase error is determined based on differences between measured phase and a user's target phase. Also, the target phase may vary for stair climbing machines, elliptical machines, rowing machines, treadmills, and other exercises. For example, if the exercise device comprises a stair climber, the target phase may comprise a user positioning a foot on a step at the start of downward movement, or the target phase may comprise the end of the downward movement (e.g. just before a user lifts a foot off a step). Alternatively, the target phase may comprise a point during the downward motion of the foot between the start and end of downward movement of the foot. If the exercise device comprises a treadmill, the target phase may comprise landing a foot on the treadmill, lifting a foot from the treadmill, or a point in between. If the exercise device comprises a rowing machine, the target phase may comprise, for example, a start of rearward movement of the handle, a completion of rearward movement of the handle, or a point in between. Similarly, the target phase may be based on force applied by a user's feet, or movement of a seat of the rowing machine during each rowing stroke (e.g. initial rearward movement of the seat, the end of rearward movement of the seat, or a point in between).
[0042] In the case of a stationary bike, the 3 o'clock position (line 16, FIG. 1) generally corresponds to maximum acceleration of the pedals 2, or maximum force on the pedals 2, or maximum torque at the crankshaft 4. Thus, the target phase may comprise a point of maximum acceleration, force, or torque during movement of an exercise. However, the target phase may not correspond to maximum acceleration, force, or torque for all users and exercises. For example, if a user experiences maximum acceleration or force on a stair climber at the start of downward movement of a foot, the user may nevertheless prefer to time the downbeat of the music to occur at the end of the downward movement or near the downward movement of a foot. Thus, although it may be preferred in some cases to have a target phase that is based on maximum acceleration force, or torque during downward movement of a user's feet, the target phase may be selected based on a particular user's preferences and / or more natural correspondence with movements of a user during different exercises.
[0043] Referring again to FIG. 2, after determining the phase error at step 28, the process continues to step 30, and the phase error is communicated to a user via a user interface. The user interface may comprise graphics, audio, or other suitable communications. At step 32, the user has stopped using the machine or entered a stop command, the process ends at 34. If a user is not stopped at step 32, the process returns to step 24, and the velocity error is then determined.
[0044] In the example of FIG. 2, process 20 includes determining and displaying velocity error (steps 24 and 26), and also includes determining and communicating phase error (steps 28 and 30). However, the process may include only velocity error (steps 24 and 26), or only phase error (steps 28 and 30). For example, if the process only includes velocity error determination and communication (steps 24 and 26), a user may respond to the velocity error information and utilize a phase of their own choosing. Similarly, if the process only includes phase error determination and communication (steps 28 and 30), a user may utilize the phase error information to match phase. In general, if the target phase is matched by a user, the target velocity will also normally be achieved. Optionally, if phase error is communicated to a user, the error may consist of a “behind” or “speed up” communication if the velocity is below the target velocity. For example, with reference to FIG. 1, if the measured pedal position corresponds to line 16B, but the measured velocity (e.g. RPM) is below the target velocity, a “speed up” communication may be provided to the user even though the pedal phase is ahead of the target phase by an error “E2.” In this example, speed and phase error may be combined into a single “speed up” or “slow down”communication to a user.
[0045] With reference to FIG. 3, display 11 of device 10 may be configured to display graphical data 40 in the form of measured data 42 and target information 44. In the illustrated example, the measured data may comprise position data (e.g. corresponding to pedals 2 of device 1) and the target line or data 44 may comprise a target position that is determined based on the BPM of music being played by device 10. The measured position data 42 may be based on oscillations of user 3 (oscillations per minute or OPM), and the data may be curve-fitted to form sign waves having peaks 46A and 46B as discussed above, if a user is exercising on a stationary bike the measured OPM corresponds to a user's RPM because the user (shoulders and upper body 15) oscillate at a rate that directly corresponds to the foot movement of the user and the RPM of the stationary bike. Thus, the user's oscillations derive from captured images can be curve fit or mapped to form a line 42 including a velocity of sign waves 42A, 42B etc. Similarly, the target line 44, which is based on the BPM of the music, may be utilized to generate target sign waves 44A, 44B, etc.
[0046] In the illustrated example, the time T1 represents a prior cycle, the time T2 represents the present cycle, and T3 represents a future cycle. In the illustrated example, the measured position at peak 46A occurs before target peak 48A, resulting in a time error A1. At the present time T2, the measured peak 46B lags the target peak 48B by a time “A2.” The device may also be configured to predict a future peak 46C and display a target future peak 48C, whereby a predicted future time difference is A3. It will be understood that the device does not necessarily provide a predicted measured position, and line 42 may not extend past time T2. Also, device 10 may be configured to display a single measured sign wave and a single target sign wave (e.g. the sign waves with peaks 46B and 48B). Also, it will be understood that FIG. 3 is merely an example of a condition in which the measured position is “behind” the target position. If the measured position is ahead of the target position (phase), the peak 46B of the measured position would be to the right of the target position 48B.
[0047] Also, in the example of FIG. 3 the vertical axis is the estimated or measured position of, for example, pedals 2 of a stationary bike (FIG. 1). However, the position for other types of exercise devices may also be displayed in a similar manner. For example, the measured OPM of a user for a stair climber may be measured, and the OPM data may be curve fit to form sign waves 42A, 42B, etc. Similarly, the target position for a stair climber may be utilized to generate sign waves 44A, 44B, etc. based on the beats per minute of music thus, even if the motion of a user does not precisely follow a sign pattern, the OPM data may be curve-fitted to form sign waves, and the beats per minute of the music may also be utilized to generate target sign waves. In the case of a stationary bike, the target peaks 48A, 48B, etc. may correspond to a 4 o'clock position (line 16, FIG. 1), and the sign waves 44A, 44B, etc. of the measured position data may be adjusted so that the peaks 46A, 46B, etc. correspond to the 4 o'clock (line 16, FIG. 1).
[0048] It will be understood that measured position data for a user may be utilized to determine velocity and acceleration of a user by taking time derivatives of the position data. In the example of FIG. 3, line 42 represents position as a function of time. However, line 42 may comprise velocity or acceleration, and target line 44 may also comprise velocity or acceleration.
[0049] With further reference to FIG. 4, device 10 may also be configured to provide graphical information 50 on display 11. In the illustrated example, a rider 52 is on a surface 54 between walls or barriers 56 and 58. If the rider's speed (RPM or OPM) is at the target speed, the image 52 of the rider may be at a central position 60 that is midway between walls 56 and 58. However, if the rider's speed is below the target speed, the image 52 may shift to a position 60A that is closer to the rear wall 60. Similarly, if the users measured speed exceeds the target speed, image 52 may move to a position 60B closer to front wall 58. Walls 56 and 58 may comprise, for example, flaming walls to convey to a user that the walls 56 and 58 are to be avoided. Also, it will be understood that FIG. 4 is merely an example of one way to convey speed information and errors in speed relative to target speed to a user. For example, speed error information may also be conveyed to a user in the form of audio messages (e.g. “speed up!” or “slow down!”) and / or increases and / or decreases in sound volume (e.g. the volume of music being played, whereby the volume of the music increases or decreases if the measured speed is above or below the target speed).
[0050] Also, the measured speed and / or phase data and the target speed and / or phase data may be utilized to generate games. The game may, for example, depict a runner, cyclist, or other avatar moving between walls as shown in FIG. 4, between bodies of water, or the like. Also, the barriers could be above and below a character or avatar rather than horizontally positioned in front of and in back of the avatar image as shown in FIG. 4.
[0051] Also, the comparison (error) between measured and target position and / or phase may be utilized to control music volume, wherein the volume is louder if a user gets ahead of a beat of a music (or the speed is above the target speed). This provides auditory feedback whereby the user would need to speed up or slow down in order to synchronize movement with the music beat. It will be understood that a user may adjust a resistance of the force-generating device 5 (FIG. 1) to enable a user to maintain the proper (target) speed by lowering resistance, or the user may increase resistance if the user's speed is consistently above the target speed and the user desires a more vigorous workout.
[0052] In general, device 10 may be configured to provide comparative data and interfaces whereby a user is instructed and / or guided to incrementally change his or her speed or resistance on exercise machines manually, and / or change his or pedal stroke force input, in order to synchronize his or her down stroke with the downbeats of the music being played by the device 10.
[0053] As discussed above, the device 10 may be configured to utilize camera 14 to capture images of a user 3 (FIG. 1) in use to determine a user's oscillations per minute (OPM), and the OPM data can be utilized to estimate or determine a user's speed (e.g. RPM if the user is exercising on a stationary bike, or SPM if a user is exercising on an elliptical machine or stairclimbing machine). The device 10 may also be configured to estimate position and phase based on the OPM. For example, empirical data for numerous users of stationary exercise machines (e.g. stationary bikes) can be gathered, and correlations between the oscillations of the users and pedal positions can be determined. These correlations may be utilized to predict or estimate positions of user inputs such as pedals 2 for new users (e.g. users that are outside the group used to gather empirical data). Empirical data for other exercise devices (e.g. stair climbers, rowers, elliptical machines, treadmills, etc.) may also be gathered to determine correlations between the captured movement (e.g. OPM) and positions of a user's feet and / or hands and / or other body parts during exercise on different devices. These empirical correlations may be utilized to predict the positions of user's feet and / or hands on similar devices based on the measured OPM data. As noted herein, step tracks can be used to determine beat tracks, which may be utilized for various purposes.
[0054] Also, as discussed above, the captured movement data can be compared to target movement data to provide a user with error information concerning speed and / or phase whereby the user can adjust his or her exercise in order to match the user's measured OPM to a target OPM that is based on the BPM of music that is being listened to by the user during exercise. In general, this may also relate to step tracks that can used to determine beat tracks, and then the error here may comprise how far off the beat track (e.g. derived from the step track) was or is for a user. However, the measured data based on image capture of camera 14 may also be utilized as an input to control force or resistance during exercise. For example, with reference to FIG. 1, device 11 may be configured to communicate with controller 6 of exercise device 1 whereby controller 6 adjusts the resistance provided by the force-generating device 5 based on position and / or phase error. For example, if a user is not maintaining a BPM-based target speed (OCM or RPM), controller 6 may reduce resistance of force-generating device 5 to enable a user to increase his or her speed whereby the user can match his or her speed to the target speed. Similarly, if a user is moving at a rate that is above the BPM-based target rate, controller 6 may increase resistance utilizing force-generating device 5 to make it more difficult for a user to continue exercising at a velocity that exceeds the BPM-based target velocity. In this way, the controller and force-generating device 5 can “assist” a user 3 in maintaining a speed (e.g. RPM) that is substantially the same as the target speed (RPM). It will be understood that this type of resistance variation may be utilized in connection with virtually any exercise device that utilizes a variable resistance force.
[0055] On a speed controlled exercise device such as a treadmill or stairclimbing machine, if a user is not maintaining a BPM-based target speed (OCM or RPM), the controller may reduce the speed of the device, which in turn will cause a user to increase his or her speed whereby the user can match his or her speed to the target speed, in which case the user would “move slower” on the exercise machine but increase their stride rate or frequency such that they would maintain their BPM-based target speed (OCM or SPM) (e.g. users can change their stride frequency). Similarly, if a user is moving at a rate that is above the BPM-based target rate, the controller may increase the speed of the treadmill to make it more difficult for a user to continue exercising at a velocity that exceeds the BPM-based target velocity, in which case the user would “move faster” on the exercise machine but decrease their stride rate or frequency such that they would maintain their BPM-based target speed (OCM or SPM). In this way, the controller and speed controlling device can “assist” a user 3 in maintaining a speed (e.g. SPM or RPM) that is substantially the same as the target speed (RPM). It will be understood that this type of speed variation may be utilized in connection with virtually any speed-controlled exercise device (e.g. treadmill, stairclimbing machine, etc.).
[0056] Furthermore, controller 6 may be configured to adjust a force generated by the force-generating device 5 to assist the user in maintaining a phase that matches (is equal to) the target phase. For example, if a user's pedals 2 are at a position 16A or 16B rather than the target position or phase 16, controller 6 may increase or decrease the force generated by device 5 during a portion of the pedal movement to assist a user in maintaining the proper phase. As discussed above, a step track may be developed based on measuring movements of one or more users (optionally an “expert” user), or a large group of regular users, and the step track may be used to determine the best or optimal “phase” relative to the beat markers in the beat track. Optimal may comprise a point of maximum acceleration or other suitable criteria. The point of maximum acceleration could be determined utilizing the motion capture system and the X, Y, and Z data (e.g. by taking first and second derivatives of position with respect to time). In general, step tracks of expert users may be compared to the step tracks of other users to determine if a user is at the target determined based on measurements of expert user(s) conducting the same exercise.
[0057] For example, controller 6 may reduce force somewhat during movement between lines 16A and 16 (FIG. 1), and increase force somewhat between lines 16B and 16, thereby assisting a user in positioning pedals at the proper phase (line 16). Thus, the force about the target phase (line 16) may comprise a U or V shape about the target phase 16 to assist the user in maintaining the proper phase. It will be understood that other exercise devices such as elliptical machines, rowing machines, or the like may also include force-generating devices, and the controllers of these exercise machines may also be configured to vary the force to assist a user in maintaining the proper speed and / or phase.
[0058] With further reference to FIG. 5, device 10 may optionally comprise a smart phone including a display 11, a speaker 13, and a camera 14. Device 10 may be configured to activate a program (e.g. an App) whereby device 10 can be placed on an exercise device with the camera 14 facing a user 3. The device 10, via the App, may then generate data that may correspond to an image 61 of the user or a portion of the user, and an image capture feature of the App may optionally generate a graphic 62 including portions 63A and 63B that move with a user's eyes. Graphic 62 generally communicates to a user to let the user know that the facial recognition and tracking feature is active. As a user moves his or her head 9, and / or shoulders, and / or torso, and / or arms, the graphic 62 moves with a portion of the user's body (e.g. head 9) on display 11, thereby indicating to the user that the (facial) recognition and tracking feature is active. The App may optionally include an input feature (not shown) that allows a user to select a preferred rate of movement or a preferred range of rates of movement(e.g. oscillations per minute or steps per minute, or ranges thereof), and the App may then provide the user with a list of suggested music having a BPM in the range of oscillations or steps per minute selected by the user. The user may then be prompted to begin exercising, and the App may then display an image 61 of the user as noted above. It will be understood, however, that the App does not necessarily provide an image 61 of the user, and numerous alternative graphics may be provided. Also, the present disclosure is not limited to facial recognition and tracking, and device 10 may be configured to determine and track the positions of other body parts to determine a user's OCM during exercise. For example, if a user's head remains stationary or moves small amounts during exercise (e.g. when using a stationary bike), the device 10 may be configured to recognize a user's body part (e.g. torso, and / or shoulder, and / or neck, and / or knee) that does move significantly and determine a user's OCM based on movement of the user's knees and / or other body part(s).
[0059] Referring again to FIG. 5, during exercise, the device 10 (e.g. via an App) may be configured to provide a graphic display 67 on display screen 11 of device 10. For example, the user's measured steps per minute (SPM) 67A may be displayed on screen 11, and the beats per minute (BPM) 67B of the music may also be shown. In general, the device 10 may be configured to play (provide) music using speakers 13. Arrows or other indicators 68A and 68B may also be provided on screen 11. For example, the indicators 68A may change color if a user's SPM 67A is greater than the music BPM 67B to thereby indicate that the user should reduce his or her steps per minute (SPM) if the user is to synchronize his / her movements with the beats of the music. Conversely, if a user's SPM 67A is less than the BPM 67B of the music, the indicators 68B may change color to indicate to a user that the user should increase the SPM to match the BPM of the music to synchronize movement with the music.
[0060] The App may optionally be configured to display a user's X, Y, and Z positions as determined by the facial image recognition and tracking feature. In the illustrated example, the X, Y, and Z position displays are designated 64, 65, and 66, respectively. The user's position may also be displayed in the form of lines 64A, 65A, and 66A whereby a user can see the X, Y, and Z data 64, 65, and 66, respectively, in the form of lines 64A, 65A, and 66A, respectively. It will be understood that in some cases only one (or two) of the user's X, Y, and Z positions may be used in determining a user's OPM. For example, if most movement during a particular exercise is in the Z direction, the device 10 may be configured to use only Z axis position data in determining a user's positions.
[0061] As discussed above, the music selected by the App may be based, at least in part, on a user's desired SPM. For example, the App may prompt a user (e.g. via a display or audio) to select a desired BPM or OPM (or ranges thereof), and the App may select music having a BPM that matches a user's desired SPM (e.g. within a predefined range) or range of SPM. The App may also provide a user with choices of music that have the user's desired BPM or OPM, whereby the user can select country, dance, rock, pop, hip hop, rap, etc. and the App may be configured to generate and display a playlist of music of the desired genre having the desired BPM or OPM. The device 10 (via the App) may also be configured to provide audio feedback to a user utilizing speaker 13. For example, the music may become louder if a user's SPM is below a BPM-based target SPM, and the volume of the music may be reduced if a user's SPM is greater than the BPM-based target SPM. Device 10 (via the App) may also be configured to provide audio direction or commands such as “faster” and “slower” utilizing the speaker 13 if a user's SPM does not match the target SPM, wherein the target SPM is based on the BPM of the music. Device 10 (via the App) may also be configured to provide data 69 concerning prior steps of a user.
[0062] With further reference to FIGS. 6A and 6B, a process 100 according to an aspect of the present disclosure may include a process 100A to determine if a user has taken a step (e.g. an oscillation has occurred), and a process 100B to determine oscillations per minute (OPM) or steps per minute (SPM). As discussed above, OPM may comprise virtually any oscillating movement, whereas SPM may generally refer to steps (or strides) in exercise or other bipedal movement. Although FIGS. 6A and 6B generally refer to steps and SPM, it will be understood that process 100 applies to virtually any oscillating movement and the references to steps and SPM are merely an example of a type of oscillating movement.
[0063] When a user is moving in an oscillating manner, the user will tend to move between maximum upward positions and maximum downward positions in a periodic manner. Steps 104-110 of process 100 generally determine if a user has reached a maximum upward position, and steps 112-118 generally determine if a user has reached a maximum downward position. Steps 104-110 may be implemented in parallel with steps 112-118.
[0064] With reference to FIG. 6A, process 100A for determining if a step or oscillation has occurred begins at step 102. At step 102, the value of the user (Face) Position variable is set to 0, the value of the Last Triggered Position variable is set to 0, the Threshold is set to 10, and flags relating to maximum and minimum points and maximum and minimum thresholds are set to false. As discussed below, process 100A may be configured to utilize the image position data to determine if a user's position has reached a minimum point, a maximum point, a minimum threshold, and a maximum threshold.
[0065] At step 104, the program determines if the value of the Current Position variable (e.g. Face Position Variable) is greater than the Last Triggered Position plus a threshold value. If yes, the process continues to step 106. A “no” at step 104 (not specifically shown) generally indicates that the process is proceeding with steps 112, 114, 116, and 118 to determine if a downward maximum position has been reached. At step 106, the “Has Reached Max Threshold” flag is set to true, and the value of the Last Triggered Position variable is set equal to the Face Position (e.g. the most recent measured Face Position).
[0066] Process 100A then proceeds to step 108. If the most recent Face Position is greater than the Last Triggered Position, the process then proceeds to step 110. A “no” (not specifically shown) at step 108 generally indicates that the process is proceeding with steps 112, 114, 116, and 118.
[0067] At step 110, the Has Reached Maximum Point flag is set to true, and the Last Triggered Position is set equal to the most recent measured Face Position, and the process then proceeds to step 120.
[0068] As discussed above, process 100A may implement steps 104, 106, 108, and 110 in parallel with (e.g. simultaneously with) steps 112, 114, 116, and 118. At step 112, the program determines if the Face Position is less than the Last Triggered Position minus a Threshold. If yes, the process 100A then proceeds to step 114. A “no” (not specifically shown) at step 112 generally means that the process is implementing steps 104, 106, 108, and 110.
[0069] At step 114, process 100A sets the Has Reached Min Threshold flag to true, and the value of the Last Triggered Position is set equal to the most recent measured Face Position.
[0070] The process then continues at step 116. At step 116, the program determines if the most recent Face Position is less than the Last Triggered Position. If yes, the process then proceeds to step 118 (a “no” occurs if steps 104, 106, 108, and 110 are being implemented).
[0071] At step 118, the program sets the Has Reached Minimum Point flag to true, and the value of the Last Triggered Position variable is set equal to the most recent measured Face Position, and process 100A then continues to step 120.
[0072] At step 120, the program sets the flags to true, and a step is added to the step count at 122 (FIG. 6B).
[0073] The process 100B of FIG. 6B determines the OPM (e.g. SPM) of a user. Process 100B starts at step 126 and proceeds to step 128. The values of the variables used in process 100B are set to 0 at step 128, and the process then continues to step 130.
[0074] At step 130, process 100B sets the Previous Step Time equal to the Current Step Time. In general, the Current Step Time may comprise a length of time between each added step as shown at step 122.
[0075] At step 132, process 100B obtains the Current Step Time utilizing the adding step data from step 122 of process 100A.
[0076] Process 100B then proceeds to step 134, and the Current Step Time is added to the SPM list. At step 136, the program determines if the value of the SPM list count is greater than 2. If the SPM list count is not greater than 2, the process returns to step 130. However, if the SPM list count is greater than 2, the process proceeds to step 138. In general, step 136 may be utilized to prevent process 100B from proceeding to step 138 until after at least two steps have occurred (e.g. when a user starts using the App during exercising).
[0077] Following step 136, the process then proceeds to step 138, and the current steps per minute (SPM) are calculated. In general, the SPM may be equal to the inverse of a difference between the Current Step Time and the Previous Step Time multiplied by 60 to convert the Step Rate from seconds to minutes. At step 140, process 100B determines if the game or exercise session is over. If not, the process returns to step 130. If the game or exercise session is over, the process proceeds to step 142, and process 100B ends.
[0078] With further reference to FIGS. 7-10, device 10 may also be configured to determine a user's oscillations per minute when a user is exercising on an elliptical machine 70 (FIG. 7), a stair climbing machine 75 (FIG. 8), a variable stride machine 80 (FIG. 9), or a rowing machine 85 (FIG. 10). In general, a user will tend to move his or her head in an oscillating manner when exercising on the devices of FIGS. 7-10, and the device 10 may be configured to provide a user with feedback in a substantially similar manner as discussed above in connection with FIG. 5. The exercise devices of FIGS. 7-10 include user inputs 2A-2D, and a user applies a force to the user inputs while exercising. Also, other devices (FIGS. 7-10) such as treadmills may include force or speed control features or devices 5A-5D that control a resistance force and / or speed of the user inputs 2A-2D. The force or speed control features or devices 5A-5D may be adjustable whereby a user can selectively increase or decrease the force and / or speed of the inputs 2A-2D. A controller 6A-6D may be operably connected to force or speed control features or devices 5A-5D and to a user interface 7A-7D. The user interface may include a touch screen or the like that allows a user to select an exercise program, control a speed required to move the inputs 2A-2D. The user interface 7A-7D may also provide a user with information concerning the rate at which the user is moving on the inputs 2A-2D (e.g. the belt of a treadmill), a duration of exercise, and / or other information.
[0079] Revolving staircase exercise machines are typically isokinetic (constant velocity) and may have at least somewhat limited speed control whereby precise control of speed may not be possible in some machines (e.g., in contrast, treadmills may provide more precise speed control whereby the speed of the treadmill can be adjusted to every 1 / 10th of a MPH). In general, the speed of staircase exercise machines may be measured in SPM, and a user may select a SPM whereby the machine operates at the selected SPM. Device 10 may be configured to provide a user input feature whereby a user can select a music BPM corresponding to the SPM selected by the user and input into the staircase device. Thus, in general, a user will need to maintain the selected SPM and the BPM of the music will generally match the SPM of the device. However, staircase exercise machines may not accurately provide the user-selected SPM whereby the BPM of the music does not match the SPM of the staircase exercise machines. However, the device 10 may be configured to utilize images (or acceleration data) to determine a user's actual SPM, which may be significantly different than the nominal SPM selected by a user. Device 10 may be configured to utilize the measure SPM to curate songs having BPMs that match the user's measured SPM.
[0080] The following is an example of one possible scenario:
[0081] A user selects a level in staircase machine (e.g. 5).
[0082] Device 10 may provide a message to a user prompting the user to exercise for an initial period of time to permit the device to measure the SPM (e.g. “Please step at this level for X seconds so we can select appropriate songs for you.”)
[0083] A user tests (uses the staircase machine) for 30 or 60 seconds at level 5.
[0084] The motion capture feature of device 10 determines the user's SPM during the initial test period.
[0085] Device 10 curates (selects) songs at that SPM, e.g. 53 BPM, or a multiple such as 106 BPM. The selection of songs may be based, at least on part, on a user's “genre preferences”.
[0086] Device 10 may optionally ask the user (e.g. via and on screen message) for “genre preferences” after the SPM is determined, or the user may have already made a selection based on a prompt by device 10
[0087] User starts workout.
[0088] Device 10 may continuously determine a user's SPMs as the user steps. This may result in detection of variations during use. For example, brake heat of the machine could affect efficiency, which could change the resistance a brake applies during use, which could in turn affect actual SPMs.
[0089] Curated music may be updated to actual (measured) SPMs.
[0090] Device 10 may also be configured to provide a “free ride” (automatic mode) whereby a user may be prompted to begin exercising. Device 10 may then determine a user's OPM (e.g. SPM), and device 10 may then select and play music having a BPM that matches the measured OPM or SPM. Device 10 may be configured to prompt a user to select from music playlists of various music genres having BPMs determined from the measured OPM or SPM.
[0091] Rowing machine 85 may include a seat 86 that moves to provide a user input 2D, and the rowing machine 85 may also include a handle 87 that is moved by a user when exercising. This may result in movement of the user's head and / or other body parts, and the device 10 may be configured to utilize facial tracking recognition as discussed above to determine the oscillations per minute while exercising using any of the devices of FIGS. 7-10. In general, the motion of a user's head and / or other body parts may vary depending on the type of exercise equipment being utilized. Nevertheless, at least one body part will tend to move in an oscillating manner that can be recognized and tracked by the image recognition tracking software of the App of device 10 to generate time-stamped position data. This position data can then be utilized to determine a user's oscillations per minute. If the oscillations per minute are above or below a target that is based, at least on part on BPM of music, the user can be provided with feedback (information) to inform the user that their current oscillations per minute are above or below the BPM-based target OPM.
[0092] In some cases, the target OPM (SPM) may be equal to the BPM of the music. For example, a user of an elliptical machine may select a target SPM of 120, and the App may provide music having 120 BPM. However, the BPM-based target OPM may be greater than or less than the BPM. For example, a use of a rowing machine may desire to row at 20 strokes per minute, which corresponds to 20 OCM. If the user selects “Rowing” in the App and inputs 20 strokes per minute, the App may select music having 120 BPM and set the target OCM to be 20. In this case, the App may instruct the user to increase speed if the measured OPM is below 20, and the App may instruct the user to slow down if the measured OPM is above 20. Thus, although there are multiple beats per oscillation in this example, the target oscillation rate (OPM) and user feedback may still be tied to the BPM. Conversely, if an exercise has a very high OPM, the target OPM may be based on, for example, having 2, 3, 4, or more oscillations for each beat of the music.
[0093] It will be understood that virtually any suitable device may be utilized in connection with the present disclosure, and smartphone 10 is merely an example of a suitable device. For example, a watch may also be utilized to measure (determine) movement of a user, either by itself or in connection with facial recognition features that utilize a camera to capture images of a user while exercising. The watch or other device may comprise an accelerometer, whereby movement of the user while wearing the device generates data that can be utilized to determine a user's OPM or SPM. In general, the OPM (or SPM) may be determined directly from the accelerometer data. For example, during oscillating movement a user will generally tend to have acceleration peaks and valleys associated with each oscillation and the measured acceleration data mya therefore be utilized to determine the number of oscillations and time for each oscillation (step). If a watch is utilized, the watch may be operably connected to a smartphone or other device (e.g. via BLUETOOTH® or a “hard” line), which other device may in turn display feedback / instructions to the user and / or provide audio user feedback / instructions. A watch or other device having an accelerometer or other sensor capable of detecting motion could be used as a standalone device without a smartphone whereby the watch or other device (e.g. worn by a user during exercise) may provide feedback to a user in the form of audio feedback / instructions, a screen display, a vibration signal, etc. Furthermore, the smartphone, watch or other device may be configured to provide control signals to a controller of an exercise machine directly to control, for example, a resistance force of the exercise device wherein the control of the resistance force is based, at least in part, on BPM of music, accelerometer data and / or OPM data determined from the accelerometer data. According to this aspect of the present disclosure, the smartphone, watch, or other device may optionally be configured to provide the control signals to the exercise device without utilizing feedback (e.g. images or the like) to the user using the graphical user interface (GUI) of the smartphone, watch, or other device.
[0094] If a user is wearing augmented reality (AR) glasses or other AR device during outdoor running or other exercise that does not involve a stationary exercise machine, the user's movements may be determined by accelerometers or other suitable sensors of a device (e.g. a smartphone, a watch, and / or the AR device itself (etc.) that the user is wearing. Also, graphical data and / or information 40, 50, 67, or the like may be displayed on the lenses of the AR glasses whereby a user can see the ground surface and objects through the lenses and simultaneously see data and / or graphical information on the AR lenses / display. In general, the data and graphical information displayed on the AR glasses may be similar to the graphics provided on display screen 11 of a smartphone 10 or the like.
[0095] Some exercise machines may typically, in use, provide a cyclical rate (steps, strides, or strokes per minute) (SPM) that is significantly less (“slower”) than the beats per minute (MPB) of music that may be preferred by a user or users. Thus, in order to increase (e.g. maximize) the number of songs available for each type of exercise machine, a method of scaling BPM (beats per minute) values of songs may be utilized to permit songs with greater (“faster”) BPMs (e.g. 120 for dance) to be used with machines having, in use, slower SPM (steps, strides, or strokes per minute) ranges. Typically, popular songs may have around 100 to 130 BPM. In order for these songs to be utilized in connection with exercise machines that have SPM ranges that are slower than the BMP of a song or songs, the BPMs of the song(s) may be scaled or counted (adjusted) such that every 2nd, 3rd, 4th, or 5th beat, etc., is used or counted to create “slower” adjusted BPMs to match exercise machines with SPMs that may be slower, (e.g. rowers using rowing machines, which may have around 30 SPMs when used by typical users). As discussed below, the “slower” BPM may comprise a target BPM that is utilized to determine if a user's movements are synchronized with the BPM of the music. However, the actual BPM of the music is not altered.
[0096] A rower in the above example of 30 SPMs could use a song with 120 BPMs if every 4th beat of the song is counted towards a stroke, if each time the rower completes a cycle (e.g. comes to forward most position) is counted as a stroke. Or, the rower in the above example of 30 SPMs could also use a song with 120 BPMs if every 2nd beat of the song is counted for a stroke provided that each time the rower changes direction, fore and aft, is counted as a stroke.
[0097] As another example, a song may have a BPM value of 90 BPM. In order for the song to match a value of 30 SPM, the BPM value may be reduced by one third to produce an adjusted (target) beat track of 30 BPM. Thus, the target beat track could be generated by counting every third beat to create the 30 BPM beat track. In this example, the App may be configured to display a list of suggested songs having 90 BPM as 30 BPM if a user indicates that he or she is using a rower machine.
[0098] In many cases a beat track (BPM) is divisible by even numbers. For example, if a song has 120 BPM, the App may be configured to interpret every 4th beat to create a 30 BPM target track. However, for songs having 150 BPM the App may be configured to count every 5th beat to produce a 30 BPM beat track.
[0099] Revolving staircase machines may utilize (or attempt to utilize) a constant velocity control scheme, such that the revolving staircase moves at a constant velocity associated with an exercise level (e.g. 1-10). A step count test may be utilized to determine which songs would best match the user's movement. For example, a user may set a staircase machine to a preferred exercise level to perform a step test for a predefined relatively short time period. The user may then step continuously for the predefined test time to determine their SPM, which may be determined by the App (e.g. by dividing the number of steps by the time of the test). After the step test is completed, the App may cause the resulting SPM value to be displayed on screen 11 of smartphone 10. For example, if a user sets their staircase machine to level 5, the test may result in a step count of 54 SPM. However, the SPM from the test may vary depending on different controllers in different staircase machines, users'weights, and other factors. To increase the number of songs to display for a user stepping at 54 SPMs, as there are few songs with 54 BPMs, every second beat of 108 BPM songs may be counted to provide a target BPM that matches the slower SPMs of a given revolving staircase machine.
[0100] The invention contemplates determining the SPM associated with each selectable level on such isokinetic staircase machines and using these values as the basis for synchronization with music. In some embodiments, the application may also send a control signal to the exercise machine such that the BPM of particular songs selected by the user, within safe speed ranges determined for each machine, defines the isokinetic speed or SPM at which the user exercises. Instead of the controller strictly dictating the SPM per preset level, the selected music can set the machine speed so the steps per minute match the musical tempo (e.g., SPM=BPM ÷2). Alternatively, the application may identify the machine's current SPM at a given level and then select or recommend songs whose BPMs support synchronization for an optimal user experience. Through this bi-directional communication, the app can dynamically adjust either the SPM or the selected music, providing enhanced motivation, engagement, and safety tailored to the operational characteristics of isokinetic staircase machines.
[0101] Matching BPMs with SPMs according to the present disclosure may include accurately displaying the BPMs of the songs to accurately reflect the beats being counted. Thus, in the example above if a rower is listening to a song having 120 BPM, the process may include dividing the BPM of the song by 4 in order to arrive at 30 BPMs, which may then be displayed on display 11 as the BPMs of the song whereby the GUI can compare the 30 SPM target to the measured SPM of a rower. As discussed above, a typical rower may row at 30 SPMs such that 30 SPM is a reasonable, natural target. It will be understood, however, that an individual may prefer a different target SPM (e.g. 24, 26, 28, 32, 34, 36, etc.), in which case songs having BPMs that are greater or less than 120 BPMs may be selected and adjusted (e.g. divided by four) as required to provide the desired target SPM. This may be utilized to provide accurate feedback to the user so that the user can adjust his or her stroke rate (SPM) and / or physical effort to match the beat and rhythm of the song or other music provided to the user by the App during exercise.
[0102] A device (e.g. smartphone with a camera and display screen) that is configured to operate a program (e.g. an “App”) according to an aspect of the present disclosure may include one or more “selfie” features relating to the user's image displayed on the device. For example, the App may optionally include a “selfie” camera mode, wherein at least one lens of the camera is positioned to face the user to provide motion tracking (e.g. to obtain XYZ positional data using camera image data). The selfie mode and view may also be used to assist a user in camera placement on an exercise machine. For example, the user may be instructed to place the device (e.g. smartphone) on a space (surface) of the exercise equipment or display panel or on an easel if the exercise machine is not so equipped. The image of the user's face displayed on the screen of the device (e.g. smartphone) may include an augmented reality (AR) element to inform the user that their face can be detected by tracking software for positional data. The user may then be instructed to place the mobile device / phone in such a manner that their face can be detected by the camera / mobile device / phone when they are moving on the machine in the machine's prescribed manner so that the motion tracker can accurately obtain XYZ positional data.
[0103] The app may also include social media features. For example, the App may be configured to provide users with the option of recording video clips of their exercise sessions and posting them to social media or sending them to other people via text or email or other suitable means for social engagement.
[0104] The app may also be configured to provide vanity items. For example, the default AR element of the App may comprise a logo, which may appear as a set of glasses, which are placed on the user's face. The App may be configured utilize other vanity items by allowing the user to change their appearance on the display of the device (smartphone) using AR hats glasses, clothing, masks, face stickers, or other augmentations or images that appear on screen if a user prefers.
[0105] The App may optionally be configured to provide level settings (Beginner, Intermediate, and Expert), to enable a user to start with appropriate levels of music synchronization consistent with the user's ability to stay on beat (e.g. keep their movements (SPM) in synch with music beat (BPM). For example, the App may include level options that the user can select within a GUI displayed on the screen of the smartphone or other device.
[0106] The Beginner, Intermediate, and Expert levels may represent a margin of error that may comprise a maximum variance in percent a user can be off the beat and still be considered “on the beat” for GUI (user feedback) purposes. In general, the margin of error may be highest (largest) at the Beginner level and lowest (smallest) at the Expert level.
[0107] For example, on an elliptical machine, if the beginner level is selected, the percentage margin of error may be 10% SPM (steps per minute) compared to the BPM (beats per minute of the song) and still be considered on the beat. In this example, if the BPM is 100, a user can be as slow as 90 SPM or as fast as 110 SPM and still be considered on the beat (e.g. the GUI of the device may indicate that a user is on beat if the user's SPM are in the range of 90-110 SPM). In this manner, the user can practice, get better rhythm over time, and then select the next level (e.g. intermediate) when the user is achieving good or reasonable scores at the end of workouts to signify that they are ready for a next level.
[0108] The margin of error on the next level, Intermediate, on ellipticals may be 8%, and the margin of error on the subsequent level, Expert, may be 6%. It will be understood that the present disclosure is not limited to these examples.
[0109] These percentage variances for the various skill levels may vary depending on the type of machine in order to provide the most intuitive user experience.
[0110] After a user has completed a workout, a summary (results) of the workout may be displayed on the display of the device (e.g. smartphone) in an ending or final screen (FIG. 11). The results may be in the form of graphic images and / or text. The results may display what the user has achieved over the course of a workout relative to predefined goals such as: 1) The percentage of beats that a user was on beat according to predefined criteria; and / or: 2) The total number of steps; and / or 3) The time completed (e.g. the total workout time).
[0111] For example, with reference to FIG. 11, the rings adjacent to the top of the image may represent the % completion of the three workout goals, whereby a ring is closed (e.g. it extends 360 degrees) if the goal corresponding to the ring is reached 100%. A ring may include a gap if a user does not complete the goal. For example, if a user chooses to skip to the end of a 7 min long song halfway through the song (e.g. at 3.5 minutes), this may result in 50% completion with regards to time (goal 3), whereby the ring for this goal extends 180 degrees (50% of 360 degrees).
[0112] Skipping a song before completion may also result in fewer steps completed compared to the number of beats in the song, and the ring representing the percentage of the step goal completed may therefore include a gap.
[0113] A method of step counting according to the present disclosure may utilize a face recognition and tracking feature to analyze the movement of a user's face in, for example, X, Y, and Z directions. The method may include the following steps:
[0114] Initialize the motion capture system for step, stroke, or stride capture.
[0115] Identify the current position of the user's face.
[0116] Let the primary axis of movement be x, y, or z.
[0117] A threshold distance (e.g. in millimeters) may be established to determine how much movement constitutes a step, stroke, or stride on each exercise machine.
[0118] Let the movement threshold be, for example, 10 mm or other suitable number
[0119] The resulting movements may be measured (e.g. in milliseconds) to determine the SPM (steps, strokes, or strides per minute).
[0120] Let the total steps be initialized as 0 (the system may be configured to always start at zero for a new exercise session).
[0121] Let the SPM list be the list of steps taken by the user with their timestamp. Each step may have a time stamp associated with it, and the time stamps may then be used to measure the number of milliseconds it took to perform each step. The SPM may be continuously updated based on the timestamps as each new step is detected.
[0122] For example, if a step takes 500 milliseconds (ms) to complete, then there are two steps per second, and the SPM=120. This is because there are 1000 ms in 1 second, and 500 ms is half a second, so there are two steps per second and 120 steps in a minute. Thus, counting steps may be based, at least in art, on counting half steps. Half steps may be utilized to ensure that the system “knows” (can determine) if a full step has been completed. In general, the system (program) may be configured to utilize a plurality of points in a step to enable accurate determination of step completion. For example, 5 points (or intervals) of a step may be utilized, including: 1) the initial starting point of the step; 2) a threshold amount of this step; 3) a maximum point of this step; 4) a second point or time at which a user crosses the threshold; and: 5) a return to starting point of the step. The measurements may be based on a position of the user's face or other body part.
[0123] In this example, a whole step is counted when the user returns to the starting point (e.g. the user's face or head returns to the starting point or position). When a user moves in the direction of the primary axis (e.g. Y axis), and in the downward direction (e.g. at the movement threshold value from above), this may be considered a half step. In this manner, total steps may be incremented by 0.5. In the SPM list of steps, the step taken may be recorded with a timestamp, as mentioned above. The SPM may be averaged according to a preset number of past steps (e.g. 3) to provide the user with a stable visual view of SPM on the display screen of the device (using the App).
[0124] The average SPM shown on the screen of the device may optionally update, for example, every 3 steps (e.g. the display may comprise a 3-step average). This is, however, merely an example and the average could be based more or fewer steps, depending on the type of exercise machine being used, and readability of the GUI on the screen of the device. In general, numbers which change too fast on the GUI maybe you were called to read. Thus, the updates to the display may occur at a rate that does not interfere with a user's ability to read the display.
[0125] The App may be configured to provide an SPM number (or graph) that is displayed on the GUI (e.g. a screen of a smartphone) that does not have excessive lag (e.g. is not too slow to update), and the SPM display can be adjusted to ensure that the SPM number is readable by users (humans) in that the SPM display does not change too fast.
[0126] In general, the raw camera data capture rate of a device may be related to the capture rate of the camera. Different cameras (e.g. smartphone cameras) may have different capture rates in frames per second (FPS) for AR (augmented reality). In general, for any given device, the capture rate (FPS) for AR may be different than the capture rate (FPS) for video. For example, AR capture rates for existing smartphone cameras may be between 30 and 60 FPS. However, the capture rates for AR and video may improve (increase) over time as the technology improves. A method / App according to the present disclosure may be configured to enable a wide range of camera capture rates, including AR capture rates above 60 FPS.
[0127] Step counting according to the present disclosure may involve configuring the App (or other program) to take into account the capabilities and limitations of smartphones or other devices, such as camera capture rates, augmented reality (AR) capture rates, and other technical features and capabilities.
[0128] Commercially available devices (e.g. smartphone models) may have varying camera capabilities, including different frame rates (FPS) for video and AR purposes. In general, a higher FPS means that more images are captured per second, which may permit more precise motion tracking. When using a smartphone camera to count (determine) steps per minute (SPM), the accuracy of the SPM determination may be influenced by the camera's capture rate. A higher FPS may provide more data points for step detection processes (algorithms).
[0129] With regards to video capture rates, existing smartphones may be capable of capturing video at 30 or 60 FPS or more. With regards to AR capture, known AR applications typically operate at 30 to 60 FPS, depending on the device's capabilities and the AR framework being used. However, AR capture rates may differ from video capture rates due to the additional processing that may be required for AR features such as environment tracking and object recognition. Thus, video capture rates and AR capture rates of a device may not be equal.
[0130] Existing software tools for App development may allow developers to create AR applications for multiple platforms, and may provide for control of various camera parameters, including the capture rate. Existing software tools may also permit setting the camera capture rate in the App to the maximum supported by the device. This may be, for example, 30 or 60 FPS for existing smartphones. However, as discussed above, the FPS for future smartphones and other suitable devices may be greater than 60 FPS. Although higher capture rates (e.g. 60 FPS vs. 30 FPS) may potentially provide more precise data for step detection (counting) higher frame rates may require more processing power, which may adversely affect battery life and overall performance of the App. Thus, the App may in some cases, be configured to utilize a somewhat lower capture rate.
[0131] For example, a step counting process according to an aspect of the present disclosure may involve balancing the advantages of high-precision data with hardware and battery life limitations of devices such as smartphones. For example, the camera capture rate may optionally be set to the maximum rate supported by the smartphone or other device if it is determined that this will not result in unacceptable reductions in processing speed or battery life.
[0132] It is anticipated that improvements in camera capture rates and processing capabilities will likely occur, potentially leading to more accurate and / or more efficient step counting according to the present disclosure using AR and camera technology.
[0133] It will be understood that the present disclosure is not limited to an “App” configured for use on a smartphone, tablet, or other such device. Thus, an App is merely an example according to an aspect of the present disclosure.
[0134] A system according to an aspect of the present disclosure may comprise a controller that is operably connected to a force-generating device of an exercise machine. The controller may be configured to receive position and / or phase error information from an external device and to automatically adjust a resistance provided by the force-generating device in response to the detected error.
[0135] An app, according to another aspect of the present disclosure, allows users to create workout summary videos and / or images and share them directly to social media, including, for example, synchronization scores, music overlays, and workout achievements.
[0136] A system according to another aspect of the present disclosure may be configured to provide an augmented reality game mode in which an avatar representing the user moves through a virtual environment. The avatar progress of the avatar and obstacles may change based on how well movements of a user match the beat of music. The system maybe configured to permit performance results to be posted to social networks.
[0137] A system according to another aspect of the present disclosure may be configured to utilize a machine learning algorithm to: 1) determine the type of exercise device being used, and / or 2) optimize synchronization feedback.
[0138] A system according to another aspect of the present disclosure may be configured to utilize a neural network model to analyze captured movement data to: 1) produce phase error estimates, and / or 2) produce personalized optimal phase targets
[0139] A system according to another aspect of the present disclosure may be configured to utilize Artificial Intelligence (AI) and / or machine learning algorithms to analyze and / or store user exercise data to determine which songs most effectively motivate users. The AI model may evaluate real-time data and historical metrics such as the user's synchronization accuracy to musical beats, degree of sustained mental attention to rhythm, measured power output (if the machine allows or estimates can be used), heart rate patterns, and estimated or measured caloric expenditure. The system may be configured to correlate these physiological and performance indicators with the music's tempo, genre, and beat structure, and the system may be configured to dynamically identify songs and playlists that provide increased or maximized user engagement and / or effort. Over time, the model may refine its recommendations, enabling the system to adapt music selection to optimize physical performance and / or motivational response.
[0140] A method of optimizing exercise motivation using AI according to another aspect of the present disclosure may include collecting user exercise data including movement synchronization accuracy with music beats, power output, heart rate, and caloric expenditure. The method may include analyzing the data utilizing a trained machine learning model to identify correlations between user motivation levels and music tempo and / or genre. The method may further include automatically selecting songs or playlists that are predicted to enhance user engagement and / or performance based on the identified correlations.
[0141] A method according to another aspect of the present disclosure includes receiving music from a user-selected source, wherein the source is a local library, a streaming service, artificially generated music, or an application-curated playlist. The method includes selecting songs whose tempo and genre correspond to a user's chosen exercise rate, exercise machine, and / or preferences, and playing the selected songs (music) during an exercise session. The method may further include monitoring user movement and physiologic performance during playback, and adjusting subsequent music selection based on detected performance metrics and synchronization accuracy.
[0142] A system according to another aspect of the present disclosure is configured to provide adaptive exercise feedback. The system includes a device that is configured to capture user motion and / or physiological data during exercise; and a controller that is configured to: 1) establish configurable skill levels based on user experience and / or training objectives, 2) determine personalized workout metrics including synchronization accuracy, power output, heart rate, and caloric expenditure, 3) generate historical performance records to track changes in user performance over time, and 4) render visual feedback on a display or augmented reality interface, wherein the visual feedback includes one or more vanity features superimposed on the user's image. The vanity features may optionally comprise virtual apparel, virtual accessories, and / or indicators of achievement. The system may be configured to dynamically adjust: 1) feedback style and / or 2) challenge intensity, and / or: 3) visual presentation. The dynamic adjustment may, optionally, be based on a skill level selected by a user and / or prior performance history of the user.
[0143] A system according to another aspect of the present disclosure is configured to provide coordinated exercise monitoring and feedback. The system may include a mobile device that is configured to execute an exercise application, and at least one peripheral sensor. The peripheral sensor(s) may comprise at least one sensor selected from the group comprising smartwatches, augmented-reality (AR) glasses, or another wearable accessory, wherein the peripheral sensor(s) is configured to detect user motion and / or orientation and / or physiological data. The system may further include a communication module that is configured to synchronize data streams from the peripheral sensor(s) with the mobile device in real time, and a controller that is configured to fuse data received from the sensor(s) to determine composite movement metrics and / or synchronization accuracy with music beats and / or user exertion parameters. The system may further include an output subsystem or feature that is configured to deliver coordinated visual or auditory feedback across the sensor(s) and the mobile device, and wherein the controller is configured to: 1) dynamically adjust displayed feedback and / or audio feedback based, at least in part, on the combined data, and: 2) maintain alignment between wearable devices for consistent user tracking and / or feedback.
[0144] A mobile device or system according to another aspect of the present disclosure may include, or be in communication with, one or more implantable devices, neural links, brain-computer interfaces, or other systems configured to interact with or be implanted in human neural tissue. Such integrated systems may enable direct recording or stimulation of neural signals to facilitate interactive feedback, movement tracking, or music synchronization based on brain activity. These implementations are contemplated as alternatives or adjuncts to conventional external devices such as smartphones, wearables, or AR glasses.
[0145] A system according to another aspect of the present disclosure includes a mobile device that is configured to communicate with one or more sensors or interfaces, wherein the one or more sensors or interfaces include at least one of an implantable device, a neural link, or a brain-computer interface configured to interact with or be implanted in neural tissue of a user. The mobile device may include a controller (e.g. a processor) that is configured (e.g. programmed) to receive, analyze, and interpret neural activity signals from the one or more sensors or interfaces. The system may include a feedback module that is configured to use the interpreted neural signals to generate interactive feedback, movement tracking, and / or music synchronization based on detected brain activity. The mobile device may be configured to operate in conjunction with one or more external accessories. The external accessories may comprise one or more of smartphones, wearable sensors, and / or augmented reality glasses, to thereby provide hybrid neuro-responsive exercise monitoring or training.
[0146] It is to be understood that variations and modifications can be made on the aforementioned structure without departing from the concepts of the present invention, and further it is to be understood that such concepts are intended to be covered by the following claims unless these claims by their language expressly state otherwise.
Claims
1. A method of providing a user with information concerning movement of the user during exercise to facilitate synchronization of movement of the user with music provided to the user during exercise, the method comprising:utilizing image recognition to determine positions of the user while exercising;determining an oscillation rate (OR) of the user based, at least in part, on the positions of the user; and:providing the user with information concerning differences between the OR of the user and a target OR, wherein the target OR is based, at least in part, on the tempo of music provided to the user while the user is exercising.
2. The method of claim 1, wherein:the user is engaged in an exercise involving alternating applications of force by left and right legs of the user whereby each oscillation corresponds to an application of force by a leg of the user; and:the OR of the user comprises steps per minute (SPM).
3. The method of claim 1, including:configuring an electronic device to capture data corresponding to positions of the upper body and / or shoulders and / or face of the user while the user is exercising;utilizing the electronic device to provide the user with music while the user is exercising; and:utilizing a display of the electronic device to provide a user with visual information concerning differences between the OR of the user and a target OR, wherein the target OR is based, at least in part, on the tempo of music provided to the user by the electronic device while the user is exercising.
4. The method of claim 3, wherein:the electronic device comprises a smart phone.
5. The method of claim 4, including:configuring the smart phone to capture image data corresponding to positions of the user's face.
6. The method of claim 3, including:configuring the electronic device to provide a user with an input feature whereby the user can select a target OR and / or a tempo of music provided to the user.
7. The method of claim 6, including:configuring the electronic device to provide music having a beats per minute (BPM), wherein the BPM is: 1) within a predefined range relative to a target OR selected by the user, and / or: 2) music that is within predefined range relative to an integer multiple of a target OPM selected by the user.
8. The method of claim 1, wherein:the user is provided with information concerning differences between the OR of the user and a target OR while the user is exercising on a stationary exercise device.
9. The method of claim 8, wherein:the stationary exercise device is selected from the group consisting of: a stationary exercise bike, a road bike in combination with a stationary trainer, a stair climbing machine, a revolving staircase exercise machine, an elliptical machine, a variable stride machine, a treadmill, and a rowing machine.
10. The method of claim 1, wherein:the position of a user varies between maximum and minimum positions;determining the OR of the user includes repeatedly determining the position of the user and comparing the position to one or more prior positions of the user to determine if the position of the user has reached one of a maximum or a minimum;the OR of the user is determined, at least in part, utilizing time between: 1) one or more maximum positions and / or: 2 one or more minimum positions and / or: 3) maximum and minimum positions.
11. The method of claim 1, including:determining if a user is in phase relative to target motion by determining a difference between the position of the user and a predefined target position;wherein the predefined target position is based, at least in part, on measured motion of prior users.
12. The method of claim 1, including:configuring the electronic device to provide the user with a playlist of songs selected from a plurality of playlists of songs, wherein each song in a first playlist of songs has a BPM within a first range of BPMs, and wherein each song in a second playlist of songs has a BPM within a second range of BPMs, and wherein the first range of BPMs is not equal to the second range of BPMs.
13. The method of claim 1, including:configuring an electronic device to provide an image indicating that: 1) the user needs to speed up if the OR of the user is less than the target OR, and: 2) the user needs to slow down if the OR of the user is greater than the target OR.
14. The method of claim 13, wherein:the electronic device comprises a smart phone, and including:configuring the smart phone to instruct the user to position the smart phone with a camera of the smart phone facing the user such that an image of the user is displayed on the smart phone while the user is exercising.
15. The method of claim 14, including:configuring the smart phone to: 1) superimpose an image onto a user's face, and: 2) cause the image to move with the user's face to thereby communicate to the user that the smart phone is tracking the position of the user during exercise.
16. The method of claim 3, including:configuring the electronic device to provide at least two skill levels whereby a user can select a first skill level or a second skill level;wherein the first skill level requires the OR of the user to be within a first predefined margin of error of the target OR to satisfy a first predefined synchronization criteria, and the second skill level requires the OR of the user to be within a second predefined margin of error of the target OR to satisfy a second predefined synchronization criteria; and wherein:the first predefined margin of error is greater than the second predefined margin of error.
17. The method of claim 16, including:configuring the electronic device to provide a user with information concerning the synchronization performance of the user based, at least in part, on an extent to which the OR of the user satisfied the first or second predefined synchronization criteria.
18. The method of claim 3, including:configuring the electronic device to communicate a workout summary to the user after the user stops exercising, wherein the workout summary comprises: 1) a percentage of the OR of the user that were within a predefined margin of error relative to the target OR, and / or: 2) a total number of user oscillations, and / or: 3) a length of time the user exercised.
19. A method of providing a user with an oscillation rate (OR) of the user during exercise, the method comprising:utilizing a motion capture system of a portable electronic device to determine movement of a user's face during exercise;initializing the motion capture system for oscillating movement comprising a selected one of step, stroke, or stride capture, whereby the motion capture system utilizes criteria that is specific to the selected one of step, stroke, or stride capture;repeatedly determining a position of the user's face and associating each position with a time stamp to thereby capture motion of the user's face;utilizing a distance threshold to determine if a movement constitutes a step, stroke, or stride, wherein the distance threshold comprises a predefined distance that is specific to the selected one of step, stroke, or stride capture;determining an OR utilizing a time to complete an oscillating movement or a portion of an oscillating movement;averaging the OR of at least three oscillations to provide a rolling average OR; and:displaying the rolling average OR on a display screen of the portable electronic device while the user is exercising.
20. The method of claim 14, wherein:the portable electronic device comprises a smartphone having an augmented reality (AR) image capture rate; and:the position of the user's face is determined at a rate that is equal to the AR image capture rate or a multiple of the AR image capture rate.