The present disclosure relates to systems for interactive video delivery, and more specifically, to multiplexed voice and visual communications facilitated by smart mirrors.
Exercise is an important part of maintaining an individual's health and wellbeing. For many people, exercising is an activity that typically involves going to a gymnasium where they partake in a workout guided by an instructor (e.g., a fitness instructor, a personal trainer). However, dedicating a regular period of time to exercise at a gym can be a challenging endeavor due to other commitments in one's daily life (e.g., a person's job, family obligations). Oftentimes, a gym may be located at an inconvenient location and/or an instructor's availability is limited to certain periods of time during the day, thus limiting a person's ability to attend a workout at the gym. This inconvenience may also be detrimental to the instructor whose clientele may be restricted to people who are able to attend their workout at the gym at the prescribed period of time.
In some embodiments, a user of a smart mirror schedules a rebroadcast of a previously recorded fitness class, to be displayed concurrently via multiple smart mirrors associated with multiple multiplexed geographically remote users who are “invitees” to the rebroadcast. Non-invitees can be blocked from accessing the rebroadcast. During the rebroadcast, invitees and the user can view live video feeds of one another, and can communicate with one another using voice, text, and/or graphic symbols (e.g., emojis). The voice communications can occur via the microphones/speakers of the mirrors, and the text and/or graphic symbols can be displayed via the mirrors. Optionally, real-time biometric data of the user can be displayed via the user's smart mirror and/or via smart mirrors of other invitees.
The demand for home fitness products has been increasing for years, and in the midst of widespread public health concerns arising from Covid-19, forcing many to self-quarantine, such demand, in particular for “interactive” home fitness products, has been further enhanced. Known approaches to interactive fitness, however, typically involve a user interacting with a software application running on a smartphone, making it difficult to coordinate movements with the ability to clearly view the instruction rendered via the smartphone screen. In addition, many known approaches to streaming fitness content (e.g., via smart televisions) are not interactive (i.e., they involve one-way delivery of streamable content to viewers), and can exhibit low and/or inconsistent video resolution/quality, bandwidth limitations, latency issues, reliability issues (e.g., video dropout) buffering delays, video stream stuttering, device incompatibilities, etc. Embodiments set forth herein overcome the foregoing limitations of known approaches to delivering fitness content in a variety of ways, as discussed in the sections that follow.
A “smart mirror,” as used herein, refers to a two-way mirror (e.g., comprising glass) and an electronic display that is at least partially aligned with (and disposed behind, from the point of view of a user) the two-way mirror, such that the user can simultaneously view his/her own reflection and the imagery/video presented via the electronic display during operation of the smart mirror.
In some embodiments, the smart mirror 100 also includes one or more additional components not shown in
Smart mirrors of the present disclosure may be positioned or mounted within an environment (e.g., a user's home, a fitness studio) in a variety of ways.
Video Rebroadcasting Sessions with Multiplexed Smart Mirror Communications (“Sweat Dates”)
In some embodiments, a previously-recorded (“archived”) video including fitness content is made available (e.g., via a cloud-based server) to, or is accessible by, a networked plurality of smart mirrors. The previously-recorded video can be a previously-aired or previously broadcast class from a library of classes stored in the cloud-based server or other storage repository. The previously-recorded video may have been captured “live” via a smart mirror camera, or may have been recorded offline (e.g., in a fitness recording studio). One or more users (“scheduler(s)”) of the smart mirrors can schedule a broadcasting or rebroadcasting “session” (hereinafter “video rebroadcasting session”) of the previously-recorded video during a specified time interval, and invite other smart mirror users from a selected group of other smart mirror users (invitees) to join the session and watch the broadcast/rebroadcast simultaneously during the specified time interval. By interacting with a software application (“app”) running on a mobile device (e.g., a smartphone) and/or a smart mirror, the scheduler(s) can specify one or more of the following parameters for the video rebroadcasting session (“session data”): a start date, a start time, an end date, an end time, identifiers of user(s) that are invited to participate in the video rebroadcasting session (“invitees”), overlays to be presented to the invitees during the video rebroadcasting session, etc. The invitees can include all subscribers or users of smart mirrors within a networked community of smart mirrors, or a subset thereof. In some implementations, non-invitee smart mirror users are blocked from joining the video rebroadcasting session (e.g., by setting a “rule” that is stored in the cloud-based server or another repository accessible by and used by the app).
During the video rebroadcasting session, the scheduler and the invitees position themselves near their respective smart mirrors and view the previously-recorded video, which is displayed concurrently on the smart mirrors of all invitees, while simultaneously viewing “live” (i.e., real-time or substantially real-time) video of themselves and, optionally, the scheduler and/or one or more other invitees. Also during the video rebroadcasting session, the scheduler and the invitee(s) can interact with one another via their respective smart mirrors, e.g., visually (e.g., by gesturing within the field of view of the cameras of their respective smart mirrors, the gestures being viewable via the smart mirror(s) or one or more invitees), images (e.g., causing display of photos/images on smart mirrors of one or more invitees), voice (e.g., via the microphone(s) and speaker(s) of their respective smart mirrors), and/or by inputting feedback via the app (e.g., via a graphical user interface (GUI) of the app running on their smart mirror and/or via a GUI of the app running on their smartphone). As such, the smart mirrors, the scheduler, and the invitees (some or all of which are geographically remote from one another), as well as their communications with one another, are multiplexed within a networked system (e.g., as shown and discussed with reference to
According to some embodiments, prior to scheduling a video rebroadcasting session, one or more videos 315 (optionally recorded via the camera 305 of the studio compute device by an instructor user of the studio compute device 301) are sent to the server 310, via the network N, from the studio compute device 301. The one or more videos 315 can be stored in a memory of the server 310 for later retrieval by one or more users of the smart mirrors 300A, 300B, 300C and 300D. The users of the smart mirrors 300A, 300B, 300C and 300D can also browse the one or more videos 315 stored in the memory of the server 310 via the shared app 304 on their respective smart mirrors and/or via instances of the shared app 304 running on their respective smart phones or other mobile compute device(s). Although the one or more videos 315 are shown and described, with reference to
As shown in
If the smart mirror 300B receives a session acknowledgment message 322 indicating that the video rebroadcasting session has not been scheduled, one or more session requests 320 may be sent from the smart mirror 300B to the server 310, in response to one or more of: a user selection of new session details made via the shared app, a user selection of a suggested alternative scheduling made via the shared app, or an automatic instruction generated by the smart mirror 300B based on a rule within the settings 304B of the smart mirror 300B.
If the session acknowledgment message 322 indicates that the video rebroadcasting session has been scheduled, the server 310 (and/or the smart mirror 300B or a mobile device operably coupled thereto) can send, either subsequently to or concurrently with sending the session acknowledgment message 322, invitation messages to smart mirrors associated with users that are invited to the scheduled video rebroadcasting session (e.g., as specified by the session request 320). In this case, invitations 324A, 324B and 324C are sent to smart mirrors 300A, 300C and 300D, respectively. Once received at the respective smart mirrors, the invitations can trigger the display, via the shared app 304A of the smart mirrors and/or via the shared app 304A of mobile devices (optionally operably coupled to the smart mirrors), a user-selectable option to accept an invitation to join the scheduled video rebroadcasting session. Response messages 325A, 325B and 325C are generated based on the users' selections, and sent back to the server 310 which, in turn, can update the new data record associated with the video rebroadcasting session, to indicate a participation status (e.g., “accepted” or “declined”) for each of the users and/or smart mirrors. At the scheduled session start time, the server 310 can initiate and transmit a session feed (e.g., session feeds 326A, 326B, 326C and/or 326D), or a streamed version of the video(s) associated with the one or more video identifiers of the session request, to each smart mirror associated with an “accepted” participation status. Note that in some implementations, the scheduler(s) is automatically assigned an “accepted” participation status and sent the session feed during the video rebroadcasting session, while in other implementations the scheduler(s) is not automatically assigned an “accepted” participation status and/or the session request 320 includes a representation of a participation status for the scheduler(s). During the video rebroadcasting session, the session feeds 326A, 326B, 326C and/or 326D cause display of the video(s) associated with the one or more video identifiers of the session request via the associated smart mirrors 300A, 300C, 300D and/or 300B. Also during the video rebroadcasting session, users of the smart mirrors 300A, 300C, 300D and/or 300B can send feedback (328A, 328B, 328C and/or 328D, respectively) to the smart mirror(s) of one or more other invitees, optionally subject to settings 304B and/or permissions 304F of the smart mirror(s) of one or more other invitees. The feedback can include text, images, graphics (e.g., emojis), voice and/or video that is displayed or otherwise delivered via the smart mirror(s) (and/or associated mobile device(s)) of the recipient(s). Optionally, feedback that is sent or exchanged during the video rebroadcasting session is stored in the feedback archive(s) 304E by the smart mirror(s) of one or more smart mirrors (300A, 300C and/or 300D) of the invitees. The feedback can be stored in the feedback archive(s) 304E in the form of records that include feedback date/time data, sender data, recipient data, session data and/or other data associated with the feedback, such that the feedback can subsequently be retrieved, viewed and/or displayed. The sender data can include sender identifier(s), sender biometric data, sender location data, sender fitness level data, etc. Similarly, the recipient data can include recipient identifier(s), recipient biometric data, recipient location data, recipient fitness level data, etc.
In a second embodiment, shown in
In some embodiments, a live video/camera feed of a first smart mirror (e.g., smart mirror 100 of
In some embodiments, during a workout session, a video rebroadcasting session, and/or a “locker room” session (discussed further below), smart mirror users can cause the display of encouragement messages (e.g., including text, images, video, graphics (e.g., emojis), gestures, voice, animation, etc.) to be displayed in the smart mirrors and/or mobile compute devices (e.g., via a GUI of a shared app running thereon) of other smart mirror users within a networked plurality of smart mirrors. The encouragement messages can be generated and sent from a sender compute device (e.g., smart mirror, app, or smartphone) in response to an input or interaction of a user of a given smart mirror via a shared app running on that smart mirror and/or via an instance of the shared app 304 running on a smart phone or other mobile compute device of the user. Encouragement messages can be sent between individual users (i.e., one-to-one), for example between workout session participants and/or between an instructor and a workout session participant, or from a single user to multiple users, up to the entire community of users (i.e., one-to-many). Encouragement messages can be stored in memory, e.g., in the form of records that include feedback date/time data, sender data, recipient data, session data, workout data, maliciousness score(s), offensiveness score(s), sentiment score(s), and/or other data associated with the encouragement messages, such that the encouragement messages can subsequently be retrieved, viewed and/or displayed. The encouragement messages can be stored automatically, according to a user-defined rule, and/or in response to a user request. The encouragement messages can be stored in a memory of one or more smart mirrors, one or more remote servers (e.g., cloud servers), and/or one or more mobile compute devices.
Encouragement messages, once received at smart mirrors and/or mobile compute devices, may first be inspected, and a determination may be made as to whether the sender, a smart mirror or mobile compute device of the sender (i.e., a sender device), and/or the message contents are sufficiently permissioned or have previously been “whitelisted” such that they may be delivered or presented to the intended recipient. For example, the smart mirror and/or mobile compute device, via a processor thereof and/or via a shared app, can perform one or more of the following inspections/checks: analyze the message contents to determine a maliciousness score, analyze the message contents to determine an offensiveness score, analyze the message contents to determine a sentiment score, evaluate the message contents based on a set of rules or permissions, compare a sender identifier to stored sender data to determine whether the associated sender has been whitelisted, blacklisted, or has one or more associated permissions, compare a sender device identifier to stored device data to determine whether the associated sender device has been whitelisted, blacklisted, or has one or more associated permissions, etc. After the inspections/checks have been performed, the smart mirror and/or mobile compute device, via a processor thereof and/or via a shared app, can perform one or more of the following remediation actions: block delivery of the encouragement message to the recipient (e.g., prevent display of the encouragement message), send a reply message to the sender to indicate that the encouragement message has not been delivered, etc. The remediation actions can be performed in response to one or more triggers, which can include, but are not limited to: a maliciousness score exceeding a predefined, user-customizable threshold, detecting that the sender is has been blacklisted, detecting that the sender device has been blacklisted, detecting a rule that prevents delivery of messages from the sender, detecting a rule that prevents delivery of messages from the sender device, detecting a rule that prevents delivery of messages containing one or more predefined, user-customizable keywords, detecting a rule that prevents delivery of messages containing profanity, etc.
As used herein, a maliciousness score can be a numerical score that is generated using a machine learning algorithm configured to detect malware, spyware, spam and other unwanted messages. As used herein, an offensiveness score can refer to a numerical score that is generated based on one or more of: a linguistic model, one or more previous ratings assigned by the intended recipient user, a user-customizable sensitivity score associated with the intended recipient user, etc. As used herein, a sentiment score can refer to a numerical score (including positive values and negative values) generated by a machine learning model, the numerical score representing an overall sentiment or tone (e.g., angry, menacing, passive-aggressive, sarcastic, encouraging, happy, etc.) of an input message.
In some embodiments, encouragement messages are sent after a sender-specified time delay or at a sender-specified scheduled date/time or period (e.g., during a class scheduled for the next day). Alternatively or in addition, the display of encouragement messages received at a smart mirror (or app thereof) of a recipient may be delayed by, or blocked for, a recipient-defined period of time or until a user-defined event occurs or has transpired (e.g., after class to avoid distraction).
In some embodiments, encouragement messages are sent automatically to a first smart mirror (e.g., from a server and/or from one or more other smart mirrors), in response to detecting that one or more predefined conditions have been meet and/or that one or more rules have been satisfied. Examples of rules can include, but are not limited to: a rule to send encouragement messages to recipients that are friends and that that have set a new record within a predetermined preceding time period; a rule to send an encouragement message to a recipient in response to detecting that a performance metric (e.g., heart rate, intensity, breathing rate, cadence, power, etc.) of the recipient has reduced by at least a predetermined percentage within a predetermined period of time; a rule to send an encouragement message to a recipient in response to detecting that a workout session in which the recipient is participating is within a predetermined of time of an end time of the workout session (e.g., nearing the end of the workout session or a high-intensity portion thereof), a rule to randomly send encouragement messages (e.g., the timing, recipient and/or contents of the encouragement messages can be randomly selected), etc. Examples of conditions can include, but are not limited to: the existence of a friend relationship between the sender and the receiver; the existence of one or multiple social media connections between the sender and the receiver; fewer than a predetermined number of encouragement messages sent within a preceding predetermined period of time, etc.
In some embodiments, encouragement messages can be configured to “persist” within a GUI of the recipient (e.g., in the smart mirror of the recipient and/or in a smartphone or other mobile device of the recipient). As used herein, “persist” can refer to the continuous display for a predetermined extended period of time (e.g., greater than one minute, greater than five minutes, greater than ten minutes, for the duration of a workout session, until the smart mirror is turned off, or indefinitely) and/or until closed or minimized by the recipient. For example, in some such embodiments, an encouragement message is configured to display as a banner having at least one dimension that is the same as a width or a height of the smart mirror and/or having at least one dimension that is the same as a width or a height of the display panel of the smart mirror. In some such implementations, an encouragement message (e.g., in the form of a banner) persists within a portion of a display panel of a smart mirror when the remainder of the display panel is no longer displaying video (i.e., the remainder of the display panel has a mirror appearance).
In some embodiments, a smart mirror (or an app thereof) is configured to convert one or more encouragement messages, received from a sender from a first, as-received format, to a user-defined (i.e., recipient-defined) format that is different from the as-received format, either based on one or more rules stored in memory or based on an input received at the smart mirror and/or via the app from the user/recipient. Examples of as-received formats and user-defined formats include, but are not limited to: text, image, bitmap (e.g., Graphics Interchange Format (“GIF”)), animated GIF, video, audio, haptic/vibration feedback, Adobe Flash, watermark, etc. In some such embodiments, the rules stored in memory and/or the input from the user/recipient include instructions to present the encouragement messages using one of a display panel or a speaker of the smart mirror, or to cause communication of the encouragement messages to a recipient using an antenna of the smart mirror (e.g., by transmitting a signal to one or more compute devices, apps, or smart accessories in network communication with the smart mirror).
As a first example, a received encouragement message including a visual hand clap emoji can be converted to an audio hand clap that is played via the left speaker and/or the right speaker of the smart mirror. As a second example, a received encouragement message including a text message can be converted to a graphic image that is displayed via the display panel of the smart mirror. As a third example, a received encouragement message including an audio file (e.g., including a representation of speech or of sounds such as clapping) can be converted to text that is displayed via the display panel of the smart mirror. As a fourth example, a received encouragement message including image data can be converted to a GIF that is displayed via the display panel of the smart mirror. As a fifth example, a received encouragement message including graphic image data (e.g., an emoji) can be converted to a signal that is sent, via an antenna of the smart mirror, to an app running on a smart phone of the recipient, to cause display of a reduced-size image based on the graphic image data. As a sixth example, a received encouragement message including a text message can be converted to a signal that is sent, via an antenna of the smart mirror, to a wearable electronic accessory of the recipient (e.g., a bracelet) to cause a vibration (e.g., in a predefined pattern, with a predefined intensity, etc.) of the wearable electronic accessory. As a seventh example, a received encouragement message including a text message can be converted to a log file that is stored within a memory of the smart mirror (or in a remote server communicatively coupled to the smart mirror), for later retrieval/viewing. As an eighth example, a received encouragement message including a text image and/or image file can be converted into a social media post that is sent, via an app, for posting on one or multiple social media platforms (e.g., according to one or more predefined rules, which may specify privacy settings, post timing, automatic caption generation, rules for tagging other social media users, etc.).
In some embodiments, the smart mirror, app and/or mobile compute device associated with the smart mirror is configured to automatically generate and send a reply message (e.g., including another encouragement message, acknowledging receipt of the encouragement message, expressing gratitude for the encouragement message, etc.) to the sender compute device associated with the encouragement message.
In some embodiments, the smart mirror, app and/or mobile compute device stores rules or filters configured to block delivery, display, or presentation of an encouragement message in response to determining that a sentiment score, calculated for the encouragement message, is associated with an overall sentiment or tone of for example angry, menacing, passive-aggressive, or sarcastic.
In some embodiments, a smart mirror, app and/or mobile compute device can store rules or filters configured to block sending, delivery, display, or presentation of an encouragement message in response to detecting one or more predefined recipient conditions, which may include (but are not limited to): poor performance in a workout (e.g., a performance metric, optionally correlated to one or more biometric data values, such as speed, range of motion, muscle activation, etc. being below a predefined threshold value), injury (e.g., during a workout), distress, heart rate above a predefined threshold, etc. The one or more predefined recipient conditions can be detected based on live video data associated with the recipient (e.g., gathered via the smart mirror and/or the mobile compute device), sensor data gathered by one or more wearable electronic accessories (e.g., received at the smart mirror and/or the mobile compute device), etc.
In some embodiments, an instructor provides input to his/her smart mirror and/or mobile compute device (e.g., via voice, video gesturing, touch interaction with a graphical user interface, etc.) to cause display, within a display panel or GUI of a plurality of smart mirrors and/or mobile compute devices of a subset of workout participants, a request or suggestion for the subset of workout participants to send encouragement messages to at least one other workout participant not included in the subset of workout participants.
In some embodiments, encouragement messages received for a given recipient user of a smart mirror can be stored (e.g., in memory of the smart mirror and/or in a memory of a cloud server or other remote compute device communicably coupled with the smart mirror, app and/or mobile compute device of the user), as “encouragement data,” and tracked over time. The encouragement data can be compared to other real-time and/or stored data associated with the user, such as sensor data, workout performance data, workout data (e.g., type, intensity, instructor, number of participants, targeted muscle groups, etc.), social media data, biometric data, etc. to determine the effectiveness of the (historical) encouragement messages. Based on the determined effectiveness of the historical encouragement messages, the smart mirror and/or app (optionally using one or more artificial intelligence (AI) (e.g., machine learning) algorithms) can determine encouragement message types and/or encouragement message delivery timing that are deemed to be most effective in helping/encouraging the recipient user.
In some embodiments, a first user of a first smart mirror in a first location can send a “challenge” request (e.g., by interacting with a GUI of the first smart mirror or by interacting with a GUI of a first mobile compute device of the first user) to a second user of a second smart mirror in a second location (the second smart mirror being different from the first smart mirror and the first location being different from the second location). The challenge request is then displayed via a GUI of the second smart mirror (and/or via a GUI of a second mobile compute device of the second user), and the second user can accept or deny the challenge request via the same GUI(s). If the second user denies the challenge request, a “denied” response is sent back to the first smart mirror and/or the first mobile compute device. If the second user accepts the challenge request, an “accepted” response is sent back to the first smart mirror and/or the first mobile compute device, and a challenge workout (e.g., selected by the first user, as part of the challenge request generation) is simultaneously or substantially simultaneously displayed via both the first smart mirror and the second smart mirror, optionally at a mutually agreed later time.
During the challenge workout, video of the first user, obtained via one or more video cameras of the first smart mirror and/or via camera(s) of the first mobile compute device, and/or audio of the first user, obtained via one or more microphones of the first smart mirror and/or via microphone(s) first mobile compute device, are live streamed to the second smart mirror and displayed via the display panel of the second smart mirror. Similarly, during the challenge workout, video of the second user, obtained via one or more video cameras of the second smart mirror, and/or audio of the first user, obtained via one or more microphones of the first smart mirror, are live streamed to the first smart mirror and displayed via the display panel of the first smart mirror. As such, during the challenge workout, the first user and the second user can see themselves and their challenger (i.e., the other user) in their respective smart mirrors. Also during the workout, each of the first smart mirror and the second smart mirror (e.g., via the app running on the smart mirror) can: analyze and/or record video of the first user, analyze and/or record video of the second user, receive (and, optionally, analyze) biometric data from one or more wearable electronic accessories of the first user, and/or receive (and, optionally, analyze) biometric data from one or more wearable electronic accessories of the second user, to determine scores for the first user and the second user, and to identify a winner of the challenge workout based on the scores. In some embodiments, the scores can include numeric values that are associated with, or calculated based on, the biometric data, but that do not include the biometric data itself. For example, a heartrate within a first range may be assigned a score of “1,” whereas a heartrate within a second range may be assigned a score of “2.” In other embodiments, the scores can include non-numeric values (e.g., letters, characters, symbols, graphics, images, etc.). For example, a breathing rate within a first range may be assigned a score of “A,” whereas a breathing rate within a second range may be assigned a score of “B.” The winner of the challenge workout can be displayed (as text, image(s) and/or audio output) via a GUI of the first smart mirror (and/or the first mobile compute device), displayed (as text, image(s) and/or audio output) via the second smart mirror (and/or the first mobile compute device), and saved in at least one memory (e.g., of the first smart mirror, the second smart mirror, a cloud-based server or other remote server, etc.) for later retrieval and viewing.
In other embodiments, a first user and a second user of a common (single) smart mirror in common (single) location can select a challenge workout (e.g., by interacting with a GUI of the first smart mirror or by interacting with a GUI of a first mobile compute device of the first user). In response to selecting the challenge workout, the smart mirror displays a challenge workout (e.g., selected by the first user and/or the second user, as part of the challenge workout selection). During the challenge workout, live video of the first user and the second user, obtained via one or more video cameras of the smart mirror, is displayed via the smart mirror display panel.
In other embodiments, a user of a smart mirror in a given location can select a challenge workout (e.g., by interacting with a GUI of the smart mirror or by interacting with a GUI of a mobile compute device of the user), where the challenge workout includes a previously-recorded video of the user performing a desired workout (and, optionally, including an overlay of numeric and/or non-numeric scores calculated at the time of the previous recording). In response to selecting the challenge workout, the smart mirror displays (“replays”) the challenge workout, such that the user can “face off” against his/her own previous performance of the workout. During the challenge workout, live video of the user, obtained via one or more video cameras of the smart mirror, is displayed via the smart mirror display panel, along with the challenge workout (with optional score overlay(s)) and, optionally, with an additional overlay of numeric and/or non-numeric scores based on the user's performance during the replay of the challenge workout. For example, in some such embodiments, the user can view both his/her score(s) from the previously-recorded video and his/her score(s) calculated during the replay, so that he/she can compare them and be motivated by them. The score(s) may change over time, throughout the duration of the challenge workout. In some embodiments, rather than displaying the scores from the previously-recorded video and the scores calculated during the replay individually, a numeric or non-numeric representation of the difference between the scores from the previously-recorded video and the scores calculated during the replay may be generated and displayed (e.g., a graphic, such as a thermometer, that shows a user (for example, via a color of the graphic, a length of the graphic, etc.) whether he/she is performing better or worse than he/she did during the previously-recorded workout, at any given time). In other words, the graphic can represent the user's “relative” performance, as compared with the previously-recorded workout.
In still other embodiments, a first user of a first smart mirror in a first location and a second user of a second smart mirror in a second location (the second smart mirror being different from the first smart mirror and the first location being different from the second location) can be selected automatically (referred to herein as a “face-off pairing”), by the app, based on a competitive compatibility score generated using a competitive compatibility algorithm. The competitive compatibility algorithm can use some or all of the following data to determine face-off pairings: historical biometric data, current biometric data, historical sensor data, current sensor data, historical workouts, historical workout performance, current workout and exercise, user preferences, and user demographics. Upon automatic selection of a face-off pairing, the app can send challenge requests to the smart mirror(s) of the first user and the second user, for display via a GUI thereof, such that the first user and the second user can accept or deny the challenge request. If both the first user and the second user (if associated with different smart mirrors in different locations) or one of the first user or the second user (if associated with the same common smart mirror) accept the challenge request, a challenge workout (e.g., selected by the app, optionally also based on the competitive compatibility algorithm) is displayed, via both smart mirrors simultaneously, or via the common smart mirror, respectively.
In some embodiments, the app uses AI to automatically identify face-off pairings that are predicted to promote increased future user engagement. For example, AI can be used to target predefined outcomes, by selecting a specified user having a higher predicted likelihood of winning certain challenges, and/or by selecting a specified user having a higher predicted likelihood of losing certain challenges. In some such embodiments, AI may select face-off pairings such that a user that has been exercising less frequently is predicted to lose automatically identified face-off pairings more frequently, and/or such that a user that has been exercising more frequently is predicted to win automatically identified face-off pairings more frequently.
In some embodiments, a networked plurality of smart mirrors can be configured (e.g., via a shared app, optionally also running on one or more mobile compute devices of users of the smart mirrors) to host a ladder tournament competition including a plurality of face-off pairings. Each face-off pairing can be broadcast via the networked plurality of smart mirrors to spectator users, participant users, and/or competitor users within the tournament (e.g., who have signed up for the tournament via the app). The app can automatically update a user listing within a ladder (which may be displayed in each mirror of the networked plurality of mirrors) in real-time or at a various times as the ladder tournament progresses.
In some embodiments, face-off pairings can be between two “teams” of smart mirror users, with each team including two or more competitors. During the face-off workouts, each team member within a given face-off pairing can view, via his/her smart mirror, the video and/or performance metrics (e.g., scores) of the other three team members, as well as the current point totals for each team. The teams can compete with each other in parallel or in series.
In some embodiments, face-off pairings of individual users can be implemented in a “tag team” format, such that a first user competes with a second user one-on-one, and when one of the users (e.g., the second user) tires out, a third user (e.g., viewing the face-off workout) can “tag” in and take the place of the second user, to continue the tag team face-off workout (with the third user's being captured by the smart mirror of the third user and displayed via the smart mirror of the first user) in a continuous manner. Similarly, face-off pairings of individual users can be implemented in a “relay race” format, such that a first user competes with a second user one-on-one, and when each of the first user and the second user reaches a particular/predetermined stage (e.g., distance, time, etc.), a third user and a fourth user, take over for the first user and the second user, respectively, to continue the relay face-off workout in a continuous manner.
In some embodiments, a plurality of users, each with his/her own smart mirror, participates, in parallel, in a common workout presented via their smart mirrors. During the workout, a “spotlight” display (e.g., including text, graphics, images and/or animation) can be applied to or associated with one or more selected users, and the spotlight display can be presented (e.g., as an overlay on a representation of the selected user(s)), via the smart mirrors of the participant users. The spotlight display can be transient (e.g., configured to be displayed for a predetermined period of time). The user(s) selected to be “spotlighted” can be selected automatically (e.g., by the app, using an algorithm, rule(s) and/or schedule) or can be selected by one or more of the participant users. For example, a user who is celebrating a birthday on the day of the workout can be automatically chosen for a spotlight, in response to determining (e.g., based on a calendar) that it is his/her birthday.
In some embodiments, a spotlight display is generated, selected and/or displayed (e.g., by a smart mirror, an app running on the smart mirror, a remote server communicably coupled to the smart mirror, a mobile compute device communicably coupled to the smart mirror, and/or an app running on the mobile compute device) using one or more AI algorithms. For example, an AI algorithm can identify, e.g., based on biometric data of one or more users from the plurality of users collected within a predefined period of time, one or more users from the plurality of users that are determined to need, or to be most in need of, encouragement, inspiration, or motivation (e.g., based on a detected decline in intensity, power, etc.). In some such embodiments, where more than a predetermined threshold number of users from the plurality of users are identified as needing encouragement, the AI algorithm and/or the app can down-select a subgroup of users from those identified as needing encouragement, such that spotlight displays are only displayed for those users within the subgroup (e.g., to avoid visually crowding/overwhelming the display, diluting the message, etc.). Similarly and more generally, in other embodiments, where more than a predetermined threshold number of users from the plurality of users are identified as candidates to be “spotlighted,” for example because they have birthdays or anniversaries, the AI algorithm and/or the app can down-select a subgroup of users from those candidates, such that spotlight displays are only displayed for those users within the subgroup (e.g., to avoid visually crowding/overwhelming the display, diluting the message, etc.).
In some embodiments, a first user of a first smart mirror can “invite” at least a second user of a second smart mirror to become a friend via a “double-opt-in” process (i.e., both the first user and the second user agree to friend each other). A number of “friends” of the first user who have previously completed a workout or attended a class, or who are actively participating in an ongoing instance of the workout, may be displayed and/or highlighted (optionally with prioritization) within the GUI of the given user's smart mirror during the workout or prior to the workout. Alternatively or in addition, live video of one or more friends of the first user may be displayed and/or highlighted (optionally with prioritization) during the workout, and/or icons, images, text, or other representations of the one or more friends of the first user may be displayed and/or highlighted (optionally with prioritization) during the workout.
In some embodiments, a smart mirror of a first user displays (e.g., during a workout) an activity feed that is viewable by the first user and, optionally, by friends of the first user (e.g., via their respective smart mirror). The activity feed can include data associated with the first user and with friends of the first user, including (but not limited to) one or more of: name, username, location, online status, workout log, biometric data (e.g., heart rate data), images, videos, accomplishments, milestones, etc. A first user may interact with an activity feed of a friended user, e.g., by posting text, emojis, videos, images, etc. in the activity feed.
In some embodiments, a smart mirror of a first user displays (e.g., during a workout) a leaderboard of all friended users, a subset of friended users, or users from the entire networked smart mirror community. Positioning of users within the leaderboard can be based on any or all of the following metrics: workouts completed, biometric data (e.g., heart rate data), points earned during competitive (e.g., “challenge”) workouts, and values calculated based on the foregoing data (e.g., most improved user(s)). The leaderboard can include a “podium” section (e.g., at the top of the leaderboard) that includes a predefined number (e.g., two, three, four, or five) of the highest-ranked users.
In some embodiments, workouts that are “trending” in a predefined community or subset of the community (e.g., a subset of the community that includes users similar to a first user) can be displayed via a smart mirror to the first user. As used herein, “trending” can refer to the condition of having a high overall rating, a high recent rating (e.g., within a predefined preceding period of time), a high overall usage, a high recent usage (e.g., within a predefined preceding period of time), etc. Trends can be defined and/or identified using one or more AI algorithms. For example, AI can be used to determine a desirable time window over which to identify trends (e.g., day, week, month, season) and/or a desirable geographic region within which to identify trends (e.g., country, state, county, city) and/or a desirable subset of users among which to identify trends (e.g., demographics, fitness level, workout frequency, user preferences, user settings, friends, etc.), such that a predicted level of user engagement resulting from the trending displays is higher/highest. Trends can be associated with a particular exercise type (e.g., yoga, running, boxing).
In some embodiments, a plurality of users, each with his/her own smart mirror, participates, in parallel, in a common workout presented via their smart mirrors. During, before and/or after the workout, one or more “milestones” (e.g., notable events) can be displayed or otherwise presented via one or more smart mirrors (e.g., as text, audio, video, graphics, images, GIFs, etc.). A milestone can be identified (e.g., by a server, by one or more of the smart mirrors, an app running on one or more of the smart mirrors and/or an app running on one or more mobile compute devices) based, for example, on one or more of: class performance (e.g., based on data gathered during a workout, such as video data and biometric data), exercise performance (e.g., based on data gathered while performing the exercise, such as video data and biometric data), class attendance, performance across workouts (e.g., based on data gathered during a workout, such as video data and biometric data), calendar events (e.g., anniversary of signing up via the smart mirror, birthday, friend anniversaries), and smart mirror community or social interactions. Milestones can be displayed according to a predefined schedule, and thus may expected by the user(s). Alternatively, milestones can be surprise and/or unexpected achievements, such that the user(s) are not expecting to see them. AI can be used to determine one of the following, with regard to milestones: time(s)/date(s) for presenting surprise achievement milestones having the highest predicted likelihood of promoting/triggering future user engagement, types of surprise achievement milestones predicted to “delight” or be welcomed by a particular user, timing of the presentation of surprise achievement milestones during a workout, such that the user has a favorable response (rather than a negative response) to the milestone, a maximum frequency at which milestones may be displayed, such that a predicted likelihood of promoting/triggering future user engagement is highest, etc.
In some embodiments, a smart mirror app is configured to simulate an interactive “locker room” environment before and/or after a workout.
During a second time interval (Time Interval 2—scheduled workout), an instructor 401 and users A, B, C, and F are active (e.g., they are in front of their respective smart mirrors, optionally with their video cameras on). During a third time interval (Time Interval 3—second virtual locker room), users D, B, and F are active (e.g., they are in front of their respective smart mirrors, optionally with their video cameras on, or have their app open on their mobile compute device(s)). Users B and F participated in the preceding workout (during the second time interval), whereas user D did not. During the third time interval (similar to during the first time interval), the users B, D, and F can see and communicate with each other via voice, video, and/or chat (e.g., including text, image, emojis, GIFs (e.g., virtual towel snap GIF), etc.). Also during the third time interval, a user-selected background (e.g., an image uploaded by each user) can be displayed within the smart mirror of each of users A, E, and F. From the point of view of, for example, user B, other active users D and F can be “seen” via live video stream and/or via other representations, such as avatars, images, text, etc. In some embodiments, the visual/displayed appearance (e.g., including the background) of the first virtual locker room automatically changes as different users talk (e.g., concurrent with the current speaker being featured/enlarged within the viewable area). In some embodiments, an animation is displayed, to participants of the second virtual locker room and during the third time interval, of people doing post-workout activities (e.g., taking off shoes, cooling down, etc.).
In some embodiments, during the first virtual locker room and/or the second virtual locker room, the smart mirror displays of all participants are synchronized such that they display the same events occurring at the same time (e.g., users entering and exiting the virtual locker room). For example, if three users are in the virtual locker room, and a fourth user enters the locker room, the three users can simultaneously view that fourth user entering. As the fourth user enters, he/she sees the three friends already there in the virtual locker room.
Any of the foregoing background(s) can further include an identifier of the associated user, which may include text, a photograph, an avatar, etc. Alternatively or in addition, the background(s) can include a depiction of a natural environment (e.g., terrain). Alternatively or in addition, the background(s) can include a depiction of at least one product for promotion. The at least one product can be selected (e.g., by a software app, the smart mirror, or a remote server) based on a workout type associated with the workout video. Optionally, the depiction of the at least one product for promotion can be interactive (e.g., hyperlinked or otherwise functionalized) such that if a user interacts with the depiction of the at least one product for promotion, the user may be “redirected” via the user's smart mirror (or other compute device in communication with that user's smart mirror, such as a smartphone) for purchase of the at least one product, or a representation of the at least product may be added to a digital/electronic shopping cart for subsequent purchase. The digital/electronic shopping cart may be stored at the user's smart mirror, sent to and stored at a remote server, and/or sent to and stored at a compute device of the user.
The method 410 also includes causing display, at 414, during a second time period following and mutually exclusive of the first time period, and via each smart mirror from a second subset of at least two smart mirrors from the networked plurality of smart mirrors, of: (1) a workout video including a depiction of a workout instructor, and (2) a representation of at least one user from a second plurality of users associated with the second subset of smart mirrors.
The method 410 also includes causing display, at 416, during a third time period following and mutually exclusive of the second time period, and via each smart mirror from a third subset of at least two smart mirrors from the networked plurality of smart mirrors, of live video depicting at least one user from a third plurality of users associated with the third subset of smart mirrors. The second time period can follow the first time period without an intervening time period, and/or the third time period can follow the second time period without an intervening time period. The method 410 optionally also includes causing display, during the third time period and via each smart mirror from the first subset of smart mirrors from the networked plurality of smart mirrors, of at least one user-selected background and/or of at least one background automatically selected by a software application associated with the first subset of smart mirrors. The at least one user-selected background and/or automatically selected background (collectively, “background(s)”) can have a “locker room” type appearance (e.g., an interior of a locker room), which may include graphics or other representations of any of the following non-exhaustive list of items: lockers, doors, tile flooring, carpeting, benches, towels, water bottles, water fountains, shoes, clothing, hangers, hampers, hair dryers, scales, waste baskets, free weights, etc. Alternatively or in addition, the background(s) can include an identifier of the associated user, which may include text, a photograph, an avatar, etc. (optionally in lieu of providing video of that user) Alternatively or in addition, the background(s) can include a depiction of a natural environment (e.g., terrain). Alternatively or in addition, the background(s) can include a depiction of at least one product for promotion. The at least one product can be selected (e.g., by a software app, the smart mirror, or a remote server) based on a workout type associated with the workout video. Optionally, the depiction of the at least one product for promotion can be interactive (e.g., hyperlinked or otherwise functionalized) such that if a user interacts with the depiction of the at least one product for promotion, the user may be “redirected” via the user's smart mirror (or other compute device in communication with that user's smart mirror, such as a smartphone) for purchase of the at least one product, or a representation of the at least product may be added to a digital/electronic shopping cart for subsequent purchase. The digital/electronic shopping cart may be stored at the user's smart mirror, sent to and stored at a remote server, and/or sent to and stored at a compute device of the user.
In some embodiments, the background(s) displayed during the first time period is the same as the background(s) displayed during the third time period. In other embodiments, the background(s) displayed during the first time period is different from the background(s) displayed during the third time period.
In some embodiments, the first subset of smart mirrors and/or the third subset of smart mirrors is configured such that users from the first plurality of users and/or users from the third plurality of users can communicate with one another during the first time period via at least one of: voice, video, text, emojis, animation, or imagery.
In some embodiments, the method 410 also includes modifying an appearance of the live video during the first time period and/or during the third time period, in response to detecting that one of the users from the first plurality of users is speaking.
In some embodiments, the first plurality of users and the second plurality of users have at least one user in common, and/or the second plurality of users and the third plurality of users have at least one user in common, and/or the first plurality of users and the third plurality of users have at least one user in common.
The method 420 also includes, at 424, causing display, during a second time period following and mutually exclusive of the first time period, and via each compute device from a second subset of at least two compute devices from the networked plurality of compute devices, of (1) a workout video including a depiction of a workout instructor, and (2) a representation of at least one user from a second plurality of users associated with the second subset of compute devices
The method 420 also includes, at 426, causing display, during a third time period following and mutually exclusive of the second time period, and via each compute device from a third subset of at least two compute devices from the networked plurality of compute devices, of live video depicting at least one user from a third plurality of users associated with the third subset of compute devices, without displaying a video of the workout instructor or any compute device outside the third plurality of compute devices.
In some embodiments, the second time period follows the first time period without an intervening time period, and/or the third time period follows the second time period without an intervening time period.
In some embodiments, the first subset of compute devices and the second subset of compute devices have at least one compute device in common and/or the second subset of compute devices and the third subset of compute devices have at least one compute device in common and/or the first subset of compute devices and the third subset of compute devices have at least one compute device in common.
In some embodiments, each of the first subset of compute devices, the second subset of compute devices, and the third subset of compute devices includes a combination of at least one smart mirror and at least one mobile compute device such as a smartphone, for multiple different users.
In some embodiments, at least one of the first subset of compute devices or the third subset of compute devices is configured such that users from the first plurality of users and/or users from the third plurality of users can communicate with one another during the first time period and/or during the third time period via at least one of: voice, video, text, emojis, animation, or imagery. The voice, text, emojis, animation, or imagery can optionally be presented/output in lieu of a video representation of one or more users from the first plurality of users and/or the third plurality of users. In some embodiments, live video can be streamed from a remote compute device (e.g., a compute device at a broadcast studio and/or a compute device of a non-user (i.e., a person not included in the first plurality of users and/or the third plurality of users)) to compute device(s) of one or more users from the first plurality of users during the first time period and/or to compute device(s) of one or more users from the third plurality of users during the third time period, for display thereon. For example, the live video can include video of a guest speaker (e.g., a trainer, a nutritionist, etc.) and can be streamed substantially in real time as part of a question-and-answer session, such that the one or more users from the first plurality of users and/or the one or more users from the third plurality of users can ask questions (e.g., by sending one or more of live video data, pre-recorded video data, live audio data, pre-recorded video data, or text data to the remote compute device) of the guest speaker and view the replies given by the guest speaker via the live video stream when displayed.
In some embodiments, the method 420 also includes causing display, during the first time period and via each compute device from the first subset of compute devices from the networked plurality of compute devices, of at least one user-selected background and/or at least one background automatically selected by a software application (collectively, “background(s),” as discussed above with reference to
In some embodiments, the method 420 also includes modifying an appearance of the live video during the first time period, in response to detecting that one of the users from the first plurality of users is speaking. Modifying the appearance of the live video can include one or more of: increasing a size of a representation of the user that is speaking, increasing a prominence of the representation of the user that is speaking, adding a halo-effect, highlight, or other border around the representation of the user that is speaking (e.g., around a displayed video tile), changing a color of the representation of the user that is speaking, changing a font of the representation of the user that is speaking, changing a contrast of the representation of the user that is speaking, increasing a volume level associated with the user that is speaking (and/or decreasing a volume level associated with non-speaking users), changing a brightness level of the representation of the user that is speaking, etc.
In some embodiments, the first plurality of users and the second plurality of users have at least one user in common. Alternatively or in addition, the second plurality of users and the third plurality of users can have at least one user in common. Alternatively or in addition, the first plurality of users and the third plurality of users can have at least one user in common.
In some embodiments, a method of hosting a locker room session includes causing display, during at least one of a first time period or a third time period, and via each compute device from a first group of at least two compute devices from a networked plurality of compute devices, of a representation of at least one user from a first plurality of users associated with the first group of compute devices, without displaying a workout video including a depiction of a workout instructor. The networked plurality of compute devices includes at least one smart mirror and at least one mobile communication device. The method also includes causing display, during a second time period and via each compute device from a second group of at least two compute devices from the networked plurality of compute devices, of: (1) a workout video including a depiction of a workout instructor, and (2) a representation of at least one user from a second plurality of users associated with the second group of compute devices, the second time period following and mutually exclusive of the first time period, and the third time period following and mutually exclusive of the second time period.
In some embodiments, at least one of the representation of the at least one user from the first plurality of users or the representation of the at least one user from the second plurality of users includes one of live video or an avatar.
In some embodiments, at least one of the representation of the at least one user from the first plurality of users or the representation of the at least one user from the second plurality of users includes a user-selected avatar.
In some embodiments, the workout video is a first workout video, each user from the first plurality of users at least one of: associated with a common friend group, registered to view the first workout video during the second time period, or registered to view, during the second time period, a second workout video different from the first workout video.
In some embodiments, the method also includes ceasing display of the representation of the at least one user from the first plurality of users when the at least one of the first time period or the third time period has ended.
In some embodiments, the method also includes causing display, during the at least one of the first time period or the third time period, and via a subset of compute devices from the first group of at least two compute devices, of a representation of at least two users from a subset of users from the first plurality of users, without displaying a workout video including a depiction of a workout instructor and without displaying a representation of any remaining user from the subset of users from the first plurality of users.
In some embodiments, each user from the first plurality of users is associated with a common friend group, and the method also includes (1) causing a message representing an invitation to be sent to an additional user not associated with the friend group in response to a request from a user from the first plurality of users, and (2) causing display, during the at least one of the first time period or the third time period, of a representation of the additional user in response to the additional user accepting the invitation.
Although described in
In some embodiments (not shown), the smart mirror is configured such that, when a locker room environment is displayed and the user U is using the smart mirror, the user U is unable to see his/her own reflection in the mirror (e.g., the reflective feature is reduced or eliminated), thereby simulating an in-person locker room setting. The reflective feature of the smart mirror can be reduced, for example, by one or more of: digital compensation within the smart mirror display based on live video imagery captured by the camera of the smart mirror and/or position data detected by one or more sensors operably coupled to the smart mirror, activation of one or more light sources positioned to direct light onto a back surface or front surface of the smart mirror, or an electronic modification of a surface roughness of the smart mirror such that the reflectivity of the surface of the smart mirror is reduced. In some such embodiments, the locker room environment includes a representation of a simulated mirror (e.g., on a wall next to a set of lockers), and when the camera of the user U's smart mirror or smartphone detects a predefined positioning of the user U, a live video or reflected image of the user U appears in the simulated mirror of the locker room environment but does not appear outside the simulated mirror within the locker room environment. In some embodiments, one or more smart mirror surfaces are manufactured to have a predefined level of transmittance (e.g., between 35% and 85%) and a predefined level of reflectance (e.g., between 65% and 15%) such that the smart mirror surface(s) can appear to be fully reflective, partially reflective, or fully transparent, dependent upon an amount and/or intensity of light that is directed toward the one or more smart mirror surfaces.
In some embodiments (not shown), the smart mirror and/or a mobile compute device of the user U is configured such that, when a locker room environment is displayed and the user U is using the smart mirror and/or the mobile compute device, no representation of the user U is presented in the display of the smart mirror and/or the mobile compute device of the user U. In other words, no live video, avatar, or other representation of the user U is presented to the user U via the smart mirror and/or the mobile compute device, however one or more representations of the user U may be presented to some or all of the other invitees/participants of the locker room session, via their associated smart mirrors and/or the mobile compute devices.
Also shown in
In some embodiments, during a locker room session, a subset of invitees/participants that are actively engaged in discussion (e.g., as determined based on one or more microphone voice detection, motion detection, and/or speech recognition via the smart mirrors and/or mobile compute devices of the associated users) are moved to and/or presented within a foreground of the simulated locker room, and invitees/participants that are not actively engaged in discussion (e.g., as determined based on one or more microphone voice detection, motion detection, and/or speech recognition via the smart mirrors and/or mobile compute devices of the associated users) are moved to and/or presented within a background of the simulated locker room, or are moved behind the invitees/participants that are in the foreground, or are removed from the visual presentation of the locker room (but optionally still able to listen to and view the locker room session), and may be displayed within the simulated locker room once again upon initiation of voice communication and/or movement. Such reorganization and dynamic down-selection of invitees/participants can result in a less crowded appearance, which can enhance the experience of viewing the locker room session, particularly when on a mobile device.
In some embodiments, a locker room session is accessible only by invitees (and, optionally, a coordinating user), and is not accessible by non-invitees. In other embodiments, a locker room session is initially accessible only by invitees (and, optionally, a coordinating user), and an invitee may invite one or more additional users (“new invitees”) to join the in-progress locker room session, for example by sending a push notification to the one or more additional users, or by causing the generation and posting of a social media notification targeting the one or more additional users. Upon acceptance by the one or more additional users of the invitation to join the in-progress locker room session, the one or more additional users may be presented, via a smart mirror and/or mobile device of the one or more additional users, with an interactive graphical feature or weblink via which they can join (e.g., navigate to or cause display of) the in-progress locker room session. In still other embodiments, a locker room session is accessible by any user, without any invitations being sent, without any acceptances being received, and without any invitee status being assigned to any user. Such locker room sessions may be referred to as “waiting room” sessions. During a waiting room session, a representation of each user that joins the waiting room session is displayed via the display(s) of compute devices (e.g., smart mirror(s) and/or mobile compute devices) of each other user that joins the waiting room session during a period of time associated with the waiting room session. A waiting room session may be initiated by one or more users (e.g., by making a selection via, or interacting with, his/her compute device), or may be automatically initiated by a software application associated with a smart mirror or other compute device from a networked plurality of compute devices including the compute devices of the users. The waiting room session may precede in time, or follow in time, a workout session, and the waiting room session may not include the display of workout content depicting an instructor. As described elsewhere herein, users that virtually “congregate” as part of a waiting room session may view depictions of, and/or communicate with, one another using streamed live video, recorded video, voice, text and/or graphical images such as emojis.
In other embodiments, a locker room session is initially accessible only by invitees (and, optionally, a coordinating user), and a non-invitee may submit a request to join the in-progress locker room session. A representation of the request to join may be rendered within the display during the in-progress locker room session, for presentation to one or more of the user U (e.g., the coordinating user) and/or the invitees. One or more of the user U and/or the invitees may accept or decline the request from the non-invitee to join the in-progress locker room session. In some embodiments, acceptance of the request from the non-invitee to join the in-progress locker room session may be completed when only one of the user U or one of the invitees accepts the request. In other embodiments, acceptance of the request from the non-invitee to join the in-progress locker room session is completed when a majority of the current participants in the in-progress locker room session accepts the request. In still other embodiments, acceptance of the request from the non-invitee to join the in-progress locker room session is completed when all of the current participants in the in-progress locker room session accepts the request. In some embodiments, a conflict resolution process may be triggered when two or more current participants in the in-progress locker room session submit conflicting accept/decline indications in response to the request to join.
In some embodiments, live video feeds from locker room session invitees are synchronized during an initialization step and/or iteratively throughout the locker room session. The video synchronization can include aligning timestamps of the live video feeds with one another and/or adjusting a timing relationship between two or more of the live video feeds. The video synchronization can be performed based on one or more header files associated with (e.g., transmitted with) the live video feeds. The video synchronization can be performed at a centralized location (e.g., in a remote server) prior to delivery/distribution of the video feeds to each smart mirrors and/or mobile compute device associated with the locker room session. Alternatively, the video synchronization can be performed at one or more of the smart mirrors and/or mobile compute device associated with the locker room session.
In some embodiments, representations of invitees can vary over the course of the locker room session, switching between live video of the invitees and avatar (or other graphic and/or text based) representations of the invites, in either direction, one or multiple times. The switching between live video and avatar (or vice-versa) can be based on one or more of: predefined invitee preferences, a calculated participation level of the invitee(s), a detected level of movement of the invitee(s), detected gesture(s) of movement of the invitee(s), a detected positioning of the invitee(s) within the field of view of the camera of the invitee(s)'s smart mirror or mobile compute device, etc. For example, when an invitee is not within the field of view of the camera of his/her smart mirror (i.e., is “off-camera”), but had joined the locker room session, an avatar or other representation of that invitee may be displayed via that invitee's smart mirror and/or via smart mirrors and/or mobile compute devices of the other invitees of the locker room session. Subsequently, when that invitee moves into the field of view of the camera of his/her smart mirror (i.e., is “on-camera”), the avatar or other representation of that invitee may cease to be displayed, and instead live video of the invitee may be displayed via that invitee's smart mirror and/or via smart mirrors and/or mobile compute devices of the other invitees of the locker room session. By replacing live video with an avatar during portions of the locker room session, the network traffic associated with the locker room session can be reduced. Alternatively or in addition, a common background can be stored on at least one of a smart mirror or a mobile compute device of each invitee, and can be retrieved locally for display during the locker room session, thereby reducing network traffic.
In some embodiments, a transition display(s) is presented (1) to invitees of a first locker room session that precedes a workout session, during a time period that includes an end portion of the first locker room session and a beginning portion of the workout session, and/or (2) to invitees of a second locker room session that is subsequent to the workout session, during a time period that includes an end portion of the workout session and a beginning portion of the second locker room session. As discussed above, each of the first locker room session and the second locker room session can include the display of an associated plurality of invitees without displaying a workout video depicting an instructor, while the workout session can include display of a workout video depicting an instructor as well as representations of workout participants. The workout participants may include some, none, or all of the invitees of the first locker room, and may include some or all of the invitees of the second locker room. In some embodiments, a first transition display is presented to invitees of a first locker room session that precedes a workout session and a second transition display is presented to invitees of a second locker room session that is subsequent to the workout session. The first transition display can be the same as, or different from, the second transition display. Transition displays can include a digital effect such as one or more of the following: a fade in, a fade out, a wash out, a jump cut, a mix, a cross dissolve, a ripple dissolve, a cutaway, an iris in, an iris out, a crossfade, or a wipe. For example, a transition display can include a linear fade out of the locker room session, a linear fade out of the workout session, a linear fade in of the locker room session, a linear fade in of the workout session.
In some embodiments, invitees of a locker room session can send communications directly to other invitees (“direct communications”), with or without also notifying the other invitees of the locker room session and with or without causing display of the communication to the other invitees of the locker room. The direct communications can include audio, video, text, and/or graphical (non-video) communications. Graphical communications can include animations, graphical images, icons, emojis, sequences of emojis, avatars, or sequences of avatars that are displayed via a display of a smart device and/or mobile compute device of the recipient invitee (and, optionally, other invitees of the locker room session). Examples of graphical communications include, but are not limited to, high-fives, hand claps, passing of virtual objects (e.g., towels, water bottles), etc. Direct communications can be initiated by an invitee in response to that invitee's interaction with a touchscreen of his/her smart mirror or mobile compute device (e.g., a display or GUI thereof), or in response to an audio command spoken by that invitee and detected by a microphone of that invitee's smart mirror or mobile compute device, or in response to a movement (e.g., a gesture) of that invitee detected by a camera or sensor of that invitee's smart mirror or mobile compute device. Similarly, the selection of a type of direct communication and/or the selection of a recipient invitee may be performed by the invitee's interaction with the touchscreen of his/her smart mirror or mobile compute device (e.g., a display or GUI thereof), or in response to an audio command spoken by that invitee and detected by a microphone of that invitee's smart mirror or mobile compute device, or in response to a movement (e.g., a gesture) of that invitee detected by a camera or sensor of that invitee's smart mirror or mobile compute device. In an example embodiment, an invitee may elect to a “towel snap” another invitee (“recipient invitee”) via one or more of the foregoing initiation and/or selection techniques discussed above. In response to the invitee's election of the towel snap operation, a towel snap sequence, including an animation, sequence of avatars, or sequence of graphical images, can be triggered for presentation to the recipient invitee (and, optionally, to other invitees of the locker room session) via his/her smart mirror display and/or via his/her mobile compute device GUI. The recipient invitee and optional other invitees of the locker room session may be collectively referred to as the “viewers.” The towel snap sequence can include a representation of a rapidly moving towel that is moving along a trajectory and then changing direction back along the same or a similar trajectory (i.e., snapping back). Optionally, the towel snap sequence can include causing an audio snapping noise to play on a speaker of the smart mirror and/or mobile compute device of the recipient invitee (and, optionally, to play on speaker of the smart mirrors and/or mobile compute devices of other invitees of the locker room session), for example coinciding with the display of the changing of direction of the representation of the moving towel. Optionally, the towel snap sequence is performed such that the representation of the moving towel appears to interact with or move toward a representation of the recipient invitee within the display of the viewers.
In some embodiments, the representation of an invitee of a locker room session, when not including live video, may change over the course of the locker room session, and/or may have a first appearance during a first locker room session that precedes a workout session and a second appearance different from the first appearance during a second locker room session that follows (or occurs after) a workout session. For example, an invitee's avatar may have a normal or refreshed appearance during the first locker room session, and may have a tired appearance during the second locker room session (e.g., if that invitee has participated in the intervening workout session). In still other embodiments, an appearance of a representation of an invitee of a locker room session (e.g., of an avatar) may be selected and/or modified in response to one or more detected biometric parameters, such as heart rate, temperature, respiration rate, pulse, etc.
In some embodiments, a biometric “connector” apparatus is sized and shaped to connect to, attach to, or be embedded within, at least one of exercise equipment, apparel, footwear (e.g., one shoe or both shoes), or the body of a user, and contains a microcontroller communicably coupled to a plurality of sensors (optionally including at least one “onboard” sensor). The plurality of sensors includes sensors for detecting data that directly measures, or is used in the calculation of, one or more of the following non-exhaustive list of biometric data: position (e.g., via a global positioning system (GPS) sensor, altimeter, etc.), orientation or rotation (e.g., via a gyroscope, magnetometer, etc.), acceleration (e.g., via 3-axis accelerometer(s)), speed/velocity (e.g., limb speed, running speed, etc.), cadence, pace, gait, vibration, muscle activation (i.e., which muscle(s) are being activated, and to what degree) (e.g., using a stretch sensor, vibration sensor, etc.), temperature, humidity, oxygen levels (e.g., blood oxygen level, blood oxygen saturation, etc.), salinity, breathing rate, heart rate (e.g. via a bioimpedance sensor, optical sensor, photoplethysmography (PPS) sensor, etc.), muscle twitch response, heart rate recovery, perspiration rate, intensity, linear force, linear movement, rotational force, rotational movement, power (e.g., running power), repetition counts such as steps (e.g., via a pedometer), range of motion, movement patterns/trajectories, gestures, facial features (e.g., via facial recognition sensors), flexibility, endurance, strength, body fat, and hydration level. A biometric connector apparatus can include a connected weight (or “smart weight”), such as the connected weight 610 of
In some embodiments, a biometric connector system includes one or more biometric connector sensors, each configured to communicate (e.g., via Bluetooth® or other wireless network communications protocol) with one or more smart mirrors. During use (e.g., during a workout), the biometric connector sensor(s) detect biometric data for a user performing the workout, optionally store the biometric data locally (within the biometric connector sensor(s)), and generate and transmit signals representing the biometric data to the smart mirror (and/or to an app running on the smart mirror, and/or to a mobile compute device of the user). Once received, one or more of the following actions can be performed: the biometric data can be stored in memory, a representation of the biometric data (e.g., in text, graphic, and/or audio form) can be presented to the user via the smart mirror and/or via the mobile compute device), an alert can be generated based on the biometric data and presented to the user (e.g., in text, graphic, and/or audio form) via the smart mirror and/or via the mobile compute device), one or more recommendations (e.g., to correct form, to reduce intensity, to begin cool down, to increase intensity, to hydrate, to change to a different workout, etc.) can be generated based on the biometric data (e.g., according to one or more predetermined rules and/or based on one or more algorithms) and presented to the user (e.g., in text, graphic, and/or audio form) via the smart mirror and/or via the mobile compute device), etc.
In some embodiments, a biometric connector system includes one or more biometric connector sensors, each configured to communicate (e.g., via Bluetooth® or other wireless network communications protocol) with one or more smart mirrors (and/or with any other wall-mounted or freestanding appliance (including, but not limited to, other types of exercise equipment) having a display monitor/screen). During use (e.g., during a workout), the biometric connector sensor(s) detect biometric data for a user performing the workout, optionally store the biometric data locally (within the biometric connector sensor(s)), transform (e.g., via a microcontroller or processor thereof) the biometric data based on one or more algorithms to produce transformed biometric data (optionally having a non-numeric format, such as a graphical representation(s), sound(s) of varying intensity, color(s) of varying intensity, vibration(s) of varying intensity, or other sensory output(s)), and generate and transmit signals representing the transformed biometric data to the smart mirror (and/or an app running on the smart mirror, and/or a mobile compute device of the user) for presentation. The one or more algorithms can include one or more of: machine learning algorithms, statistical algorithms, unit conversion algorithms, biometric algorithms, encryption algorithms, and data compression algorithms. The transformed biometric data can include one or more of: compressed data, encrypted data, converted data, and modified data. Once received, one or more of the following actions can be performed: the transformed biometric data can be stored in memory, a representation of the transformed biometric data (e.g., in text, graphic, and/or audio form) can be presented to the user via the smart mirror and/or via the mobile compute device), an alert can be generated based on the transformed biometric data and presented to the user (e.g., in text, graphic, and/or audio form) via the smart mirror and/or via the mobile compute device, one or more recommendations (e.g., to correct form, to reduce intensity, to begin cool down, to increase intensity, to hydrate, to change to a different workout, etc.) can be generated based on the transformed biometric data (e.g., according to one or more predetermined rules and/or based on one or more algorithms) and presented to the user (e.g., in text, graphic, and/or audio form) via the smart mirror and/or via the mobile compute device), etc.
In some embodiments, a biometric connector system includes multiple biometric connector sensors, each configured to communicate (e.g., via Bluetooth® or other wireless network communications protocol) with one or more smart mirrors (and/or with any other wall-mounted or freestanding appliance (including, but not limited to, other types of exercise equipment) having a display monitor/screen). At least one biometric connector sensor from the multiple biometric connector sensors is attached to, embedded in, or otherwise associated with another type of exercise equipment, such as a treadmill, elliptical trainer, stationary bicycle, stair-stepper, rowing machine, cross-country ski machine, etc. The one or more smart mirrors (and/or an app running on the smart mirror(s), and/or mobile compute device(s) of the user(s)), upon receipt of biometric data from the other exercise equipment, may detect a type of exercise equipment associated with the biometric data, and select an algorithm and/or rule set for interpreting the biometric data based on the detected type of exercise equipment.
In addition to, or alternatively to, the sensors and detection techniques described herein, vibration, muscle activation, and other biometric data can be generated by one or more sensors and/or techniques described in U.S. Pat. No. 8,912,909, issued Dec. 16, 2014 and titled “Noninvasive Multi-Parameter Patient Monitor”; U.S. Patent Application Publication Number 2018/0271409, published Sep. 27, 2018 and titled “Body Part Motion Analysis with Wearable Sensors”; and U.S. Patent Application Publication Number 2019/0022388, published Jan. 24, 2019 and titled “Device and System to Measure and Assess Superficial Muscle Contractile Characteristics,” the entire contents of each of which are herein incorporated by reference in their entireties for all purposes.
In some embodiments, biometric data is gathered, over time, from each of a plurality of networked smart mirrors (and/or from any other wall-mounted or freestanding appliance (including, but not limited to, other types of exercise equipment) having a display monitor/screen) and for each of a plurality of smart mirror users, and stored in a centralized repository (e.g., a cloud server). One or more machine learning models can be trained using the stored biometric data, to produce one or more trained machine learning models. The one or more trained machine learning models can detect, optionally adaptively over time (by retraining the one or more trained machine learning models based on additional biometric data gathered since the previous machine learning training), trends among subgroups of smart mirror users, such as: workout popularity, low performance statistics for individual workouts, high performance statistics for individual workouts, high interaction with other users during certain time periods, high interaction with other users during certain workouts, high interaction with other users on certain days, high interaction with other users for certain instructors, etc.
In some embodiments, biometric data is gathered, over time, from each of a plurality of networked smart mirrors (and/or from any other wall-mounted or freestanding appliance (including, but not limited to, other types of exercise equipment) having a display monitor/screen) and for each of a plurality of smart mirror users, and stored in a centralized repository (e.g., a cloud server). One or more machine learning models can be trained using a subset of the stored biometric data, the subset of the stored biometric data being selected based on one or more properties of a given user (e.g., biometric data, age, gender, height, weight, workout preferences, past workout performance, fitness level, etc.) to produce one or more trained machine learning models. The one or more trained machine learning models can then generate, optionally adaptively over time (by retraining the one or more trained machine learning models based on additional biometric data gathered since the previous machine learning training), recommendations for the user, including one or more of (but not limited to): recommended modifications to form (e.g., body positioning), workout recommendations, instructor recommendations, “friend” (i.e., other smart mirror user) recommendations, etc. The recommendations can also be based, in part, on one or more predefined user-customizable goals. For example, the trained machine learning model(s) can generate recommendations that are predicted to result in the user moving closer to his/her goal(s). Examples of user-customizable goals can include metrics such as (but not limited to): fitness level, mastery score (discussed further below), sport-specific fitness level (e.g., specific to yoga, running, calisthenics, cycling, biometric data (e.g., during the performance of one or more specified workouts), sport-specific form, sport-specific performance, workout-specific form, workout-specific performance, exercise-specific form, or exercise-specific performance. In some implementations, a first user can customize his/her goals by inputting (via a GUI of the smart mirror or mobile compute device) a name or identifier of one or more other smart mirror users, along with the metric(s) of that other smart mirror user that the first user would like to attain or progress toward.
In some embodiments, a biometric connector system includes one or more “connected weights.” As used herein, a connected weight can refer to exercise equipment that (1) includes or is combined with one or more sensors, and (2) is configured to communicate with one or more smart mirrors and/or compute devices (e.g., to transmit/send sensor data generated by the one or more sensors). The communication can be via Bluetooth® or any other wireless network communications protocol. The one or more sensors (and, optionally, additional electronics such as a power supply, a transceiver, a transmitter, an antenna, a processor (e.g., a microprocessor), and/or a memory) can include one or more sensors positioned within the exercise equipment (e.g., within an external housing, coating (e.g., neoprene or rubber), or layer thereof), one or more sensors positioned on or around at least an exterior portion of the exercise equipment (e.g., mechanically clamped thereto, adhered thereto via an adhesive, secured thereto using a fastener such as a hook-and-loop fastener, engaged therewith via a screw-thread engagement, connected thereto via a friction fit fastener, etc.), and/or one or more sensors that are embedded in or formed integrally with the external housing, coating, or layer of the exercise equipment. The one or more sensors and optional electronics can be co-located within a housing or on a common substrate of the exercise equipment, and the sensors, optional electronics, and housing or substrate can collectively be referred to as a “connector sensor” (the term “connector” referring to the wireless communication connectivity established between the connected weight and the one or more smart mirrors and/or compute devices with which the connected weight can communicate). The connector sensor can have a form factor such that it is readily coupled to exercise equipment. For example, in some embodiments, a connector sensor includes a housing having an actuator (e.g., a spring-loaded button) and having an inner surface (e.g., a threaded inner surface). The housing is configured to mechanically couple, via the inner surface, to a complementary outer surface (e.g., a threaded outer surface) of a dumbbell. The complementary outer surface of the dumbbell can be positioned, for example, on a handle/bar of the dumbbell. The connector sensor also includes at least one power supply disposed within the housing, and at least one sensor, a processor, and a transceiver, each disposed within the housing and electrically coupled to the power supply. The processor is configured to receive a first signal representing signal data from the at least one sensor when the housing is mechanically coupled to the dumbbell, and to cause the transceiver to transmit a second signal representing the signal data to a smart mirror.
Exercise equipment can include any apparatus or device that can be used during physical activity to enhance the strength or conditioning effects of that physical activity. Examples of exercise equipment suitable for use as part of a connected weight include, but are not limited to, free weights such as dumbbells (e.g., hex head dumbbells, rubber dumbbells, urethane dumbbells, chrome dumbbells, spin-lock dumbbells, etc.), kettlebells, barbells, long bars, curl bars, angle weights, collars, tricep bars, hexagon-shaped bars, weight plates, cables and/or resistance bands.
In some embodiments, a connected weight includes a dumbbell, barbell, or other exercise equipment, and a connector sensor (e.g., sized and shaped as an easy-slide nut, discussed below) that is attached to the dumbbell, barbell, or other exercise equipment. The connector sensor includes one or more sensors. The one or more sensors include one or more of: a sensor configured to detect position and orientation (e.g., a gyroscope or magnetometer), a sensor configured to detect position (e.g., a GPS sensor or an altimeter), a sensor configured to detect orientation, a sensor configured to detect acceleration and velocity (e.g., an accelerometer, such as a 3-axis accelerometer), a sensor configured to detect acceleration, a sensor configured to detect speed/velocity, a sensor configured to detect cadence, a sensor configured to detect vibration, a sensor configured to detect muscle activation (e.g., a stretch sensor or a vibration sensor), a sensor configured to detect temperature, a sensor configured to detect humidity, a sensor configured to detect oxygen level(s) (e.g., blood oxygen level(s)), a sensor configured to detect blood oxygen saturation, a sensor configured to detect salinity, a sensor configured to detect breathing rate, a sensor configured to detect heart rate (e.g. a bioimpedance sensor, an optical sensor, a PPS sensor, etc.), or any other sensor described herein. The connector sensor also optionally includes one or more of: a power supply, a transceiver, a transmitter, an antenna, a processor (e.g., a microprocessor), or a memory. The connector sensor can include a housing within which the one or more sensors, the power supply, the transceiver, the transmitter, the antenna, the processor, or the memory are positioned.
In some embodiments, a connected weight includes a dumbbell or other exercise equipment and one or more sensors that are embedded within and contained within the exercise equipment. In addition to the one or more sensors, the connected weight also optionally includes, embedded therein or contained therewithin, one or more of: a power supply, a transceiver, a transmitter, an antenna, a processor (e.g., a microprocessor), or a memory.
In some embodiments, a connected weight includes a dumbbell and a connector sensor that is configured as an “easy-slide nut,” as shown in
The locking nut connector sensor 612 includes a body portion 612A, an endcap portion 612B, and a spring-loaded button 612C. The body portion 612A and the endcap portion 612B may be distinct (e.g., separately formed) components that are configured to be mechanically coupled to one another (e.g., via press-fit, screw-thread engagement, etc.) or adhesively coupled to one another, or may be monolithically formed as a single component. In some embodiments, the locking nut connector sensor 612 includes a threaded internal surface configured to mechanically engage with a threaded surface of the handle/bar 611A. During installation of such a locking nut connector sensor 612 (e.g., after one or more of the weighted plates 611B-611D has been positioned on the handle/bar 611A), a user can depress the spring-loaded button 612C to cause the threads of the threaded internal surface of the locking nut connector sensor 612 to shift/move in an outward direction (e.g., radially away from a central longitudinal axis of the locking nut connector sensor 612). While the spring-loaded button 612C is depressed, the user can freely slide the locking nut connector sensor 612 along the handle/bar 611A to a desired position without the threaded internal surface of the locking nut connector sensor 612 engaging with the threaded surface of the handle/bar 611A. Once the user has positioned the locking nut connector sensor 612 at the desired position along the handle/bar 611A, the user can release the spring-loaded button 612C to cause the threads of the threaded internal surface of the locking nut connector sensor 612 to shift/move in an onward direction (e.g., radially toward the central longitudinal axis of the locking nut connector sensor 612) such that the threaded internal surface of the locking nut connector sensor 612 engages with the threaded surface of the handle/bar 611A. In some embodiments, the locking nut connector sensor 612, once engaged with the threaded surface of the handle/bar 611A, can be tightened about the handle/bar 611A (e.g., via manual rotation by the user) until a locked configuration is achieved. The locked configuration can refer to a desired amount of “tightness” (e.g., hand-tight), or can refer to configuration in which an amount of force between the threaded internal surface of the locking nut connector sensor 612 and the threaded surface of the handle/bar 611A. The locking nut connector sensor 612 can be configured to provide, during tightening, an indication (e.g., an audible or haptic click) that the locked configuration has been reached.
In some embodiments, the locking nut connector sensor 612 is configured to provide feedback to the user, for example in the form of an audible sound, a visible indication (such as a light or video display), and/or haptic feedback. When the feedback is audible or haptic, it can be through the same mechanism as in the locking nut connector sensor 612, or a different/distinct component. The feedback can be provided in response to detecting a condition, for example, that a form, movement, or action of the user when performing exercise is incorrect, undesirable, or dangerous (e.g., lifting movement is too fast, lowering movement is too fast, an incorrect grip on the connected weight 610, movement with the wrong positioning or trajectory, etc.). An undesirable form, movement, or action can be detected using one or more sensors (e.g., pressure sensors, accelerometers, etc.) and can be based on one or more predefined rules, which may include user-defined or user-reconfigurable rules. The detecting of the condition, the selection or generation of the feedback, and the providing of the feedback can be performed within the locking nut connector sensor 612 alone, within one or more smart mirror(s) that receive data from the locking nut connector sensor 612 alone, or within both the locking nut connector sensor 612 and the one or more smart mirror(s).
In some embodiments, a locking nut is non-functionalized (i.e., does not include any sensors or electronics), but functions mechanically in a manner similar to that described above. In other words, the non-functionalized locking nut can include a body portion, an endcap portion, and a spring-loaded button. The body portion and the endcap portion may be distinct (e.g., separately formed) components that are configured to be mechanically coupled to one another (e.g., via press-fit, screw-thread engagement, etc.) or adhesively coupled to one another, or may be monolithically formed as a single component. In some embodiments, the non-functionalized locking nut includes a threaded internal surface configured to mechanically engage with a threaded surface of a handle/bar. During installation of such a non-functionalized locking nut (e.g., after one or more weighted plates has been positioned on the handle/bar), a user can depress the spring-loaded button to cause the threads of the threaded internal surface of the non-functionalized locking nut to shift/move in an outward direction (e.g., radially away from a central longitudinal axis of the non-functionalized locking nut). While the spring-loaded button is depressed, the user can freely slide the non-functionalized locking nut along the handle/bar to a desired position without the threaded internal surface of the non-functionalized locking nut engaging with the threaded surface of the handle/bar. Once the user has positioned the non-functionalized locking nut at the desired position along the handle/bar, the user can release the spring-loaded button to cause the threads of the threaded internal surface of the non-functionalized locking nut to shift/move in an onward direction (e.g., radially toward the central longitudinal axis of the non-functionalized locking nut) such that the threaded internal surface of the non-functionalized locking nut engages with the threaded surface of the handle/bar. In some embodiments, the non-functionalized locking nut, once engaged with the threaded surface of the handle/bar, can be tightened about the handle/bar (e.g., via manual rotation by the user) until a locked configuration is achieved. The locked configuration can refer to a desired amount of “tightness” (e.g., hand-tight), or can refer to a configuration in which an amount of force between the threaded internal surface of the non-functionalized locking nut and the threaded surface of the handle/bar. The non-functionalized locking nut can be configured to provide, during tightening, an indication (e.g., an audible or haptic click) that the locked configuration has been reached.
In some embodiments, a given connected weight of the present disclosure, such as the connected weight 610 of
During use by a user (e.g., during exercise) of any of the connected weights shown in
In some embodiments, a biometric connector system includes a connector software application having instructions to cause a processor to calculate a mastery score (or “fluidity score”) according to an algorithm. In one example, the mastery score is calculated based on a number of repetitions completed, one or more movement patterns, body positioning data (e.g., including coordinates within three-dimensional space and representations of associated body parts), muscle usage/activation data, cadence, and heart rate recovery data for a given user. In some such implementations, the algorithm combines calculated values (e.g., calculated based on data from one or more sensors) with raw sensor data to determine the mastery score. Once calculated, the mastery score can be presented to the user (e.g., in text, graphic, and/or audio form) via the smart mirror and/or via the mobile compute device of the user. The data from one or more sensors, the calculated values, and/or the raw sensor data can include data generated by and/or received from one or more connected weights (such as connected weight 610 of
In some embodiments, a biometric connector system includes a connector software application having instructions to cause a processor to capture video of a user completing exercises, during a first workout period, and stores that video as a first archive video (optionally associated, in memory, with one or more of: a timestamp, date stamp, and biometric data). During a second workout period subsequent to the first workout period, the connector software application can be configured to cause display, via the smart mirror, of an overlay of the first archive video, optionally in combination with the biometric data of the first archive video, such that the user can see his/her reflected image concurrently with the first archive video of himself/herself (e.g., for self-comparison, competition with one's own prior performance, etc.). In some embodiments, the overlay can include a visual representation of data collected via one or more connected weights during recording of the first archive video and/or one or more messages previously presented to a user during the recording of the first archive video and based on data generated by one or more connected weights at that time. The overlay can include a visual representation of a form correction, an incorrect form/movement, and/or one or more muscles that are expected to be activated during a given exercise depicted in the first archive video.
In some embodiments, a biometric connector system includes a connector software application having instructions to cause a processor to combine video camera data/imagery captured by a smart mirror of a user with biometric data generated based on one or more wearable electronic accessories of the user (optionally synchronized in time or matched based on time of capture/generation) to define composite data, and make determinations based on the composite data or based on the video camera data/imagery and the biometric data sequentially. For example, a movement (e.g., a vibration, shaking, contraction, etc.) of the user can be detected based on the video camera data/imagery, and biometric data (e.g., generated by a vibration sensor, stretch sensor and/or other sensor) can be used to confirm the movement and/or specify which muscle(s) are most exhibiting the movement, relative to other muscles of the user. Alternatively, the movement of the user can be detected based on the biometric data, and the video camera data/imagery can be used to confirm the movement and/or specify which muscle(s) are most exhibiting the movement, relative to other muscles of the user. In some such embodiments, the video camera data/imagery, the biometric data, and/or the composite data can be compared to one or more expected values associated with a workout being performed by the user, via the smart mirror, concurrently with the capture of the video camera data/imagery and the generation of the biometric data. Based on the comparison, the connector software application may determine whether a given exercise is (or was) being properly performed by the user, and/or to assess a form or other performance of the user. Optionally, the determination as to whether a given exercise is (or was) being properly performed by the user, and/or to assess a form or other performance of the user can be further based on audio data generated by one or more microphones of the smart mirror.
In some embodiments, optionally in combination with any of the preceding embodiments, biometric data can be used by the connector software application to calculate or infer a power (e.g., a running power) of a user during a workout. As used herein, “power” can refer to a user's ability to move weight with speed (also referred to as “explosiveness”). Power can be calculated, for example, using one or more techniques described in U.S. Pat. No. 10,744,371, issued Aug. 18, 2020 and titled “Methods and Apparatus for Power Expenditure and Technique Determination During Bipedal Motion,” and in U.S. Patent Application Publication Number 2017/0189752, published Jul. 6, 2017 and titled “Methods and Apparatus for Power Expenditure and Technique Determination During Bipedal Motion,” the entire contents of each of which are herein incorporated by reference in their entireties for all purposes. The connector software application can compare calculated power for a given time period and for a given user, with at least one other biometric data parameter, to confirm accuracy and/or to generate a more complete statistical profile of the user's performance during a given workout, sport, exercise, etc., which can be tracked over time.
All combinations of the foregoing concepts and additional concepts discussed herewithin (provided such concepts are not mutually inconsistent) are contemplated as being part of the subject matter disclosed herein. The terminology explicitly employed herein that also may appear in any disclosure incorporated by reference should be accorded a meaning most consistent with the particular concepts disclosed herein.
The drawings are primarily for illustrative purposes, and are not intended to limit the scope of the subject matter described herein. The drawings are not necessarily to scale; in some instances, various aspects of the subject matter disclosed herein may be shown exaggerated or enlarged in the drawings to facilitate an understanding of different features. In the drawings, like reference characters generally refer to like features (e.g., functionally similar and/or structurally similar elements).
The entirety of this application (including the Cover Page, Title, Headings, Background, Summary, Brief Description of the Drawings, Detailed Description, Embodiments, Abstract, Figures, Appendices, and otherwise) shows, by way of illustration, various embodiments in which the embodiments may be practiced. The advantages and features of the application are of a representative sample of embodiments only, and are not exhaustive and/or exclusive. Rather, they are presented to assist in understanding and teach the embodiments, and are not representative of all embodiments. As such, certain aspects of the disclosure have not been discussed herein. That alternate embodiments may not have been presented for a specific portion of the innovations or that further undescribed alternate embodiments may be available for a portion is not to be considered to exclude such alternate embodiments from the scope of the disclosure. It will be appreciated that many of those undescribed embodiments incorporate the same principles of the innovations and others are equivalent. Thus, it is to be understood that other embodiments may be utilized and functional, logical, operational, organizational, structural and/or topological modifications may be made without departing from the scope and/or spirit of the disclosure. As such, all examples and/or embodiments are deemed to be non-limiting throughout this disclosure.
Also, no inference should be drawn regarding those embodiments discussed herein relative to those not discussed herein other than it is as such for purposes of reducing space and repetition. For instance, it is to be understood that the logical and/or topological structure of any combination of any program components (a component collection), other components and/or any present feature sets as described in the figures and/or throughout are not limited to a fixed operating order and/or arrangement, but rather, any disclosed order is exemplary and all equivalents, regardless of order, are contemplated by the disclosure.
Various concepts may be embodied as one or more methods, of which at least one example has been provided. The acts performed as part of the method may be ordered in any suitable way. Accordingly, embodiments may be constructed in which acts are performed in an order different than illustrated, which may include performing some acts simultaneously, even though shown as sequential acts in illustrative embodiments. Put differently, it is to be understood that such features may not necessarily be limited to a particular order of execution, but rather, any number of threads, processes, services, servers, and/or the like that may execute serially, asynchronously, concurrently, in parallel, simultaneously, synchronously, and/or the like in a manner consistent with the disclosure. As such, some of these features may be mutually contradictory, in that they cannot be simultaneously present in a single embodiment. Similarly, some features are applicable to one aspect of the innovations, and inapplicable to others.
The term “automatically” is used herein to modify actions that occur without direct input or prompting by an external source such as a user. Automatically occurring actions can occur periodically, sporadically, in response to a detected event (e.g., a user logging in), or according to a predetermined schedule.
The term “determining” encompasses a wide variety of actions and, therefore, “determining” can include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database or another data structure), ascertaining and the like. Also, “determining” can include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory) and the like. Also, “determining” can include resolving, selecting, choosing, establishing and the like.
The phrase “based on” does not mean “based only on,” unless expressly specified otherwise. In other words, the phrase “based on” describes both “based only on” and “based at least on.”
Some embodiments and/or methods described herein can be performed by software (executed on hardware), hardware, or a combination thereof. Hardware modules may include, for example, a processor, a field programmable gate array (FPGA), and/or an application specific integrated circuit (ASIC). Software modules (executed on hardware) can include instructions stored in a memory that is operably coupled to a processor, and can be expressed in a variety of software languages (e.g., computer code), including C, C++, Java™, Ruby, Visual Basic™, and/or other object-oriented, procedural, or other programming language and development tools. Examples of computer code include, but are not limited to, micro-code or micro-instructions, machine instructions, such as produced by a compiler, code used to produce a web service, and files containing higher-level instructions that are executed by a computer using an interpreter. For example, embodiments may be implemented using imperative programming languages (e.g., C, Fortran, etc.), functional programming languages (Haskell, Erlang, etc.), logical programming languages (e.g., Prolog), object-oriented programming languages (e.g., Java, C++, etc.) or other suitable programming languages and/or development tools. Additional examples of computer code include, but are not limited to, control signals, encrypted code, and compressed code.
The term “processor” should be interpreted broadly to encompass a general purpose processor, a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a controller, a microcontroller, a state machine and so forth. Under some circumstances, a “processor” may refer to an application specific integrated circuit (ASIC), a programmable logic device (PLD), a field programmable gate array (FPGA), etc. The term “processor” may refer to a combination of processing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core or any other such configuration.
The term “memory” should be interpreted broadly to encompass any electronic component capable of storing electronic information. The term memory may refer to various types of processor-readable media such as random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), programmable read-only memory (PROM), erasable programmable read only memory (EPROM), electrically erasable PROM (EEPROM), flash memory, magnetic or optical data storage, registers, etc. Memory is said to be in electronic communication with a processor if the processor can read information from and/or write information to the memory. Memory that is integral to a processor is in electronic communication with the processor.
The terms “instructions” and “code” should be interpreted broadly to include any type of computer-readable statement(s). For example, the terms “instructions” and “code” may refer to one or more programs, routines, sub-routines, functions, procedures, etc. “Instructions” and “code” may comprise a single computer-readable statement or many computer-readable statements.
Some embodiments described herein relate to a computer storage product with a non-transitory computer-readable medium (also can be referred to as a non-transitory processor-readable medium) having instructions or computer code thereon for performing various computer-implemented operations. The computer-readable medium (or processor-readable medium) is non-transitory in the sense that it does not include transitory propagating signals per se (e.g., a propagating electromagnetic wave carrying information on a transmission medium such as space or a cable). The media and computer code (also can be referred to as code) may be those designed and constructed for the specific purpose or purposes. Examples of non-transitory computer-readable media include, but are not limited to, magnetic storage media such as hard disks, floppy disks, and magnetic tape; optical storage media such as Compact Disc/Digital Video Discs (CD/DVDs), Compact Disc-Read Only Memories (CD-ROMs), and holographic devices; magneto-optical storage media such as optical disks; carrier wave signal processing modules; and hardware devices that are specially configured to store and execute program code, such as Application-Specific Integrated Circuits (ASICs), Programmable Logic Devices (PLDs), Read-Only Memory (ROM) and Random-Access Memory (RAM) devices. Other embodiments described herein relate to a computer program product, which can include, for example, the instructions and/or computer code discussed herein.
Some embodiments and/or methods described herein can be performed by software (executed on hardware), hardware, or a combination thereof. Hardware modules may include, for example, a general-purpose processor, a field programmable gate array (FPGA), and/or an application specific integrated circuit (ASIC). Software modules (executed on hardware) can be expressed in a variety of software languages (e.g., computer code), including C, C++, Java™, Ruby, Visual Basic™, and/or other object-oriented, procedural, or other programming language and development tools. Examples of computer code include, but are not limited to, micro-code or micro-instructions, machine instructions, such as produced by a compiler, code used to produce a web service, and files containing higher-level instructions that are executed by a computer using an interpreter. For example, embodiments may be implemented using imperative programming languages (e.g., C, Fortran, etc.), functional programming languages (Haskell, Erlang, etc.), logical programming languages (e.g., Prolog), object-oriented programming languages (e.g., Java, C++, etc.) or other suitable programming languages and/or development tools. Additional examples of computer code include, but are not limited to, control signals, encrypted code, and compressed code.
Various concepts may be embodied as one or more methods, of which at least one example has been provided. The acts performed as part of the method may be ordered in any suitable way. Accordingly, embodiments may be constructed in which acts are performed in an order different than illustrated, which may include performing some acts simultaneously, even though shown as sequential acts in illustrative embodiments. Put differently, it is to be understood that such features may not necessarily be limited to a particular order of execution, but rather, any number of threads, processes, services, servers, and/or the like that may execute serially, asynchronously, concurrently, in parallel, simultaneously, synchronously, and/or the like in a manner consistent with the disclosure. As such, some of these features may be mutually contradictory, in that they cannot be simultaneously present in a single embodiment. Similarly, some features are applicable to one aspect of the innovations, and inapplicable to others.
In addition, the disclosure may include other innovations not presently described. Applicant reserves all rights in such innovations, including the right to embodiment such innovations, file additional applications, continuations, continuations-in-part, divisionals, and/or the like thereof. As such, it should be understood that advantages, embodiments, examples, functional, features, logical, operational, organizational, structural, topological, and/or other aspects of the disclosure are not to be considered limitations on the disclosure as defined by the embodiments or limitations on equivalents to the embodiments. Depending on the particular desires and/or characteristics of an individual and/or enterprise user, database configuration and/or relational model, data type, data transmission and/or network framework, syntax structure, and/or the like, various embodiments of the technology disclosed herein may be implemented in a manner that enables a great deal of flexibility and customization as described herein.
All definitions, as defined and used herein, should be understood to control over dictionary definitions, definitions in documents incorporated by reference, and/or ordinary meanings of the defined terms.
As used herein, in particular embodiments, the terms “about” or “approximately” when preceding a numerical value indicates the value plus or minus a range of 10%. Where a range of values is provided, it is understood that each intervening value, to the tenth of the unit of the lower limit unless the context clearly dictates otherwise, between the upper and lower limit of that range and any other stated or intervening value in that stated range is encompassed within the disclosure. That the upper and lower limits of these smaller ranges can independently be included in the smaller ranges is also encompassed within the disclosure, subject to any specifically excluded limit in the stated range. Where the stated range includes one or both of the limits, ranges excluding either or both of those included limits are also included in the disclosure.
The indefinite articles “a” and “an,” as used herein in the specification and in the embodiments, unless clearly indicated to the contrary, should be understood to mean “at least one.”
The phrase “and/or,” as used herein in the specification and in the embodiments, should be understood to mean “either or both” of the elements so conjoined, i.e., elements that are conjunctively present in some cases and disjunctively present in other cases. Multiple elements listed with “and/or” should be construed in the same fashion, i.e., “one or more” of the elements so conjoined. Other elements may optionally be present other than the elements specifically identified by the “and/or” clause, whether related or unrelated to those elements specifically identified. Thus, as a non-limiting example, a reference to “A and/or B”, when used in conjunction with open-ended language such as “comprising” can refer, in one embodiment, to A only (optionally including elements other than B); in another embodiment, to B only (optionally including elements other than A); in yet another embodiment, to both A and B (optionally including other elements); etc.
As used herein in the specification and in the embodiments, “or” should be understood to have the same meaning as “and/or” as defined above. For example, when separating items in a list, “or” or “and/or” shall be interpreted as being inclusive, i.e., the inclusion of at least one, but also including more than one, of a number or list of elements, and, optionally, additional unlisted items. Only terms clearly indicated to the contrary, such as “only one of” or “exactly one of,” or, when used in the embodiments, “consisting of,” will refer to the inclusion of exactly one element of a number or list of elements. In general, the term “or” as used herein shall only be interpreted as indicating exclusive alternatives (i.e. “one or the other but not both”) when preceded by terms of exclusivity, such as “either,” “one of,” “only one of,” or “exactly one of.” “Consisting essentially of,” when used in the embodiments, shall have its ordinary meaning as used in the field of patent law.
As used herein in the specification and in the embodiments, the phrase “at least one,” in reference to a list of one or more elements, should be understood to mean at least one element selected from any one or more of the elements in the list of elements, but not necessarily including at least one of each and every element specifically listed within the list of elements and not excluding any combinations of elements in the list of elements. This definition also allows that elements may optionally be present other than the elements specifically identified within the list of elements to which the phrase “at least one” refers, whether related or unrelated to those elements specifically identified. Thus, as a non-limiting example, “at least one of A and B” (or, equivalently, “at least one of A or B,” or, equivalently “at least one of A and/or B”) can refer, in one embodiment, to at least one, optionally including more than one, A, with no B present (and optionally including elements other than B); in another embodiment, to at least one, optionally including more than one, B, with no A present (and optionally including elements other than A); in yet another embodiment, to at least one, optionally including more than one, A, and at least one, optionally including more than one, B (and optionally including other elements); etc.
In the embodiments, as well as in the specification above, all transitional phrases such as “comprising,” “including,” “carrying,” “having,” “containing,” “involving,” “holding,” “composed of,” and the like are to be understood to be open-ended, i.e., to mean including but not limited to. Only the transitional phrases “consisting of” and “consisting essentially of” shall be closed or semi-closed transitional phrases, respectively, as set forth in the United States Patent Office Manual of Patent Examining Procedures, Section 2111.03.
This application is a Continuation of U.S. patent application Ser. No. 17/315,558, filed May 10, 2022 and titled “Video Rebroadcasting with Multiplexed Communications and Display Via Smart Mirrors, and Smart Weight Integration” which claims the benefit of, and priority to, U.S. Provisional Patent Application No. 63/074,894, filed Sep. 4, 2020 and titled “Video Rebroadcasting with Multiplexed Communications and Display Via Smart Mirrors,” and which claims the benefit of, and priority to, U.S. Provisional Application No. 63/144,047, filed Feb. 1, 2021 and titled “Video Rebroadcasting with Multiplexed Communications and Display Via Smart Mirrors, and Smart Weight Integration,” which are related to U.S. Pat. No. 10,758,780, issued Sep. 1, 2020 and titled “Reflective Video Display Apparatus for Interactive Training and Demonstration and Methods of Using Same,” the entire contents of all of which are incorporated herein by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
63144047 | Feb 2021 | US | |
63074894 | Sep 2020 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 17315558 | May 2021 | US |
Child | 17728250 | US |