IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ペロトン インタラクティブ インコーポレイテッドの特許一覧

特表2022-544064運動器具のリーダーボードシステム及びそれに関連する方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-10-17
(54)【発明の名称】運動器具のリーダーボードシステム及びそれに関連する方法
(51)【国際特許分類】
   H04N 21/2668 20110101AFI20221007BHJP
   H04N 21/262 20110101ALI20221007BHJP
   H04N 21/258 20110101ALI20221007BHJP
   A63B 69/00 20060101ALI20221007BHJP
   G06Q 50/10 20120101ALI20221007BHJP
【FI】
H04N21/2668
H04N21/262
H04N21/258
A63B69/00 A
G06Q50/10
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022506117
(86)(22)【出願日】2020-07-15
(85)【翻訳文提出日】2022-02-22
(86)【国際出願番号】 US2020042206
(87)【国際公開番号】W WO2021021447
(87)【国際公開日】2021-02-04
(31)【優先権主張番号】62/881,337
(32)【優先日】2019-07-31
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/954,353
(32)【優先日】2019-12-27
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】521472232
【氏名又は名称】ペロトン インタラクティブ インコーポレイテッド
(74)【代理人】
【識別番号】110001379
【氏名又は名称】特許業務法人 大島特許事務所
(72)【発明者】
【氏名】ジェイック、キールタン
(72)【発明者】
【氏名】パテル、ジェイ
(72)【発明者】
【氏名】シュナイダー、マーシャ
(72)【発明者】
【氏名】ザンケヴィッチ、アレクセイ
【テーマコード(参考)】
5C164
5L049
【Fターム(参考)】
5C164FA06
5C164FA15
5C164SB06S
5C164SC05P
5C164SC11P
5C164SC28P
5C164UD41S
5C164YA21
5L049CC11
(57)【要約】
利用可能なクラスの識別、エクササイズクラスの選択の受信、関連するリーダーボードデータの取得、リーダーボードデータの解凍、リーダーボードデータを含むエクササイズクラスコンテンツの運動器具への配信を含む、リアルタイムのエクササイズ体験のためのオンデマンドデータが提供される。システム及び方法は、クラス終了条件の受信、選択したエクササイズクラスからのデータの収集、収集したデータの圧縮、及び保存したリーダーボードデータへの圧縮データの追加をさらに含む。圧縮は、ワークアウトの最初のポイント、最後のポイント、及び少なくとも1つの中間ポイントの識別を含む再帰的なプロセスによる、各ユーザのワークアウトからのポイントのサンプリングと、サンプリングされたポイントの連続する各対についての、サンプリングされたポイントの対の間の線分から最も離れた中間ポイントの識別と、中間ポイントと線分との間の距離が所定の閾値より大きい場合の複数のポイントへの中間ポイントの追加と、を含む。
【選択図】図1
【特許請求の範囲】
【請求項1】
第1の場所で第1の運動器具のユーザがアクセスできる利用可能なライブクラス及び/またはアーカイブクラスを識別するデータを配信するデータ配信ステップと、
利用可能なエクササイズクラスの選択を受信する選択受信ステップと、
選択したエクササイズクラスのリーダーボードデータを取得する取得ステップと、
取得した前記リーダーボードデータを解凍する解凍ステップと、
選択した利用可能なエクササイズクラスに関連する前記リーダーボードデータを含むエクササイズクラスのコンテンツを、前記第1の場所の前記第1の運動器具に配信するコンテンツ配信ステップと、を含む方法。
【請求項2】
クラス終了条件の表示を受信する表示受信ステップと、
1以上のクラス参加者が選択した前記エクササイズクラスから、前記第1の運動器具に関連するデータを含むデータを収集する収集ステップと、
収集したデータを圧縮する圧縮ステップと、
圧縮された収集データを、選択した前記エクササイズクラスについての保存された前記リーダーボードデータに追加する追加ステップと、をさらに含む請求項1に記載の方法。
【請求項3】
前記圧縮ステップは、前記収集されたデータ内の各ユーザのデータポイントをサンプリングするためにラマー・ダグラス・ポーカーアルゴリズムを実装する実装ステップを含む、請求項2に記載の方法。
【請求項4】
前記圧縮ステップは、各ユーザのワークアウトから複数のポイントをサンプリングするサンプリングステップを含み、
前記サンプリングステップは、前記ワークアウトの最初のポイント及び最後のポイント、並びに前記ワークアウトの少なくとも1つの中間ポイントを識別するポイント識別ステップを含み、
前記ポイント識別ステップは、サンプリングされたポイントの連続する各対について、サンプリングされたポイントの対の間の線分から最も離れた中間ポイントを識別する中間ポイント識別ステップと、中間ポイントと線分との間の距離が所定の閾値より大きい場合に複数のポイントに中間ポイントを追加する追加ステップを含む、請求項2に記載の方法。
【請求項5】
前記サンプリングステップは、新たな中間ポイントが対応する線分からの閾値距離を超えなくなるまで、連続するポイントの各対の間の各線分によって、それ自体を再帰的に呼び出す再帰的プロセスをさらに含む、請求項4に記載の方法。
【請求項6】
前記圧縮されたデータは複数のフォルダを含むエクササイズクラスに関連するフォルダ構造に格納され、前記少なくとも1つのフォルダは前記エクササイズクラスのセッションについての圧縮されたデータを識別する、請求項2に記載の方法。
【請求項7】
前記第1の場所における前記第1の運動器具の第1のユーザに関連するパフォーマンスパラメータを感知する、請求項1に記載の方法。
【請求項8】
前記第1の場所において、前記選択されたエクササイズクラス中に表示するためのユーザが選択可能なコンテンツをユーザインターフェースに表示するコンテンツ表示ステップをさらに含み、前記表示ステップは、第2の場所における第2のユーザについての1以上のパフォーマンスパラメータを、前記第1の場所における表示画面上に動的に表示する表示ステップを含む、請求項1に記載の方法。
【請求項9】
第1のユーザ及び前記第2のユーザについての前記パフォーマンスパラメータを第2のウィンドウに表示する表示ステップをさらに含む、請求項8に記載の方法。
【請求項10】
前記エクササイズクラスのコンテンツは、デジタルビデオ及び/またはオーディオコンテンツ、並びに前記第1のユーザ及び前記第2のユーザについての前記パフォーマンスパラメータを含む、請求項9に記載の方法。
【請求項11】
前記エクササイズクラスのコンテンツがリアルタイムで表示される、請求項10に記載の方法。
【請求項12】
前記選択されたエクササイズクラスに関連する音声コンテンツ及びクラス参加者コンテンツを含むエクササイズのコンテンツについての要求を、通信ネットワークを介してサーバで受信する受信ステップをさらに含む、請求項1に記載の方法。
【請求項13】
前記クラス参加者コンテンツは、第2のユーザに関連するコンテンツを含む、請求項12に記載の方法。
【請求項14】
第1のユーザのエクササイズクラスコンテンツ及び感知されたパフォーマンスパラメータからリーダーボードを生成する生成ステップであって、前記リーダーボードは、前記選択されたエクササイズクラス中の同一のポイントにおける他の参加者のパフォーマンスパラメータを表す、該生成ステップと、前記第1の場所において前記リーダーボードを表示するリーダーボード表示ステップと、をさらに含む、請求項1に記載の方法。
【請求項15】
前記エクササイズクラスコンテンツは、ライブ及び/またはアーカイブのエクササイズクラスコンテンツを含み、前記リーダーボードは前記第1のユーザのパフォーマンスパラメータに同期され、比較用のクラス参加者コンテンツを前記第1のユーザに提示させる、請求項14に記載の方法。
【請求項16】
リモートの第1の場所における第1の運動器具のユーザがアクセスできる利用可能なライブクラス及び/またはアーカイブのクラスを識別するデータを配信し、利用可能なエクササイズクラスの選択を受信するように構成された配信システムと、
前記選択したエクササイズクラスについてのリーダーボードデータの要求を前記配信システムから受信し、取得した前記リーダーボードデータを解凍し、解凍した前記リーダーボードデータを前記配信システムに配信するように構成されたリーダーボードシステムと、を含み、
前記配信システムは、選択した利用可能なエクササイズクラスに関連する解凍された前記リーダーボードデータを含むエクササイズクラスコンテンツを、前記第1の場所の前記第1の運動器具に配信するようにさらに構成される、システム。
【請求項17】
前記配信システムは、クラス終了条件の表示を受信し、前記第1の運動器具に関連するデータを含む、1以上のクラス参加者からの選択されたエクササイズクラスからのデータを収集し、前記データを前記リーダーボードシステムに送信するようにさらに構成される、請求項16に記載のシステム。
【請求項18】
前記リーダーボードシステムは、収集されたデータを圧縮し、圧縮された収集データを、選択したエクササイズクラスの保存された前記リーダーボードデータに追加するようにさらに構成される、請求項17に記載のシステム。
【請求項19】
前記リーダーボードシステムは、収集されたデータ内の各ユーザのデータポイントをサンプリングするためにラマー・ダグラス・ポーカーアルゴリズムを実装することによって、収集されたデータを圧縮するようにさらに構成される、請求項18に記載のシステム。
【請求項20】
前記リーダーボードシステムは、圧縮された前記リーダーボードデータを格納するように構成された格納システムを含む、請求項19に記載のシステム。
【請求項21】
圧縮された前記リーダーボードデータは、前記エクササイズクラスに関連するフォルダ構造に格納される、請求項20に記載のシステム。
【請求項22】
前記フォルダ構造は複数のフォルダを含み、前記少なくとも1つのフォルダはエクササイズクラスのセッションについての圧縮されたデータを識別する、請求項21に記載のシステム。
【請求項23】
前記運動器具は、前記第1の場所における前記第1の運動器具の第1のユーザに関連するパフォーマンスパラメータを感知し、前記第1の場所において、前記選択したエクササイズクラス中に表示するためのユーザが選択可能なコンテンツをユーザインターフェースに表示し、第2の場所における第2のユーザについての1以上のパフォーマンスパラメータを、前記第1の場所における表示画面上に動的に表示し、前記第1のユーザについてのパフォーマンスパラメータ及び前記第2のユーザについてのパフォーマンスパラメータを第2のウィンドウに表示するように構成される、請求項21に記載のシステム。
【請求項24】
前記エクササイズコンテンツは、デジタルビデオ及び/またはオーディオコンテンツ、並びに第1のユーザ及び第2のユーザについての前記パフォーマンスパラメータを含み、
前記配信システムは、選択されたエクササイズクラスに関連するデジタルビデオコンテンツ、オーディオコンテンツ及びクラス参加者コンテンツについての要求を、通信ネットワークを介して受信するようにさらに構成される、請求項21に記載のシステム。
【請求項25】
前記運動器具は、選択されたエクササイズクラスに関連するクラス参加者コンテンツ及び第1のユーザ及び第2のユーザのパフォーマンスパラメータからリーダーボードを生成するようにさらに構成され、前記リーダーボードは、前記選択されたエクササイズクラス中の同一のポイントにおけるパフォーマンスパラメータを表し、第1の位置において前記リーダーボードを表示し、前記リーダーボードは前記第1のユーザのパフォーマンスパラメータに同期され、比較用のクラス参加者コンテンツを前記第1のユーザに提示させる、請求項21に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本出願は、2019年12月27日に出願され「運動器具のリーダーボードシステム及びそれに関連する方法」と題された米国仮出願第62/954,353号及び2019年7月31日に出願され「運動器具のリーダーボードシステム及びそれに関連する方法」と題された米国仮出願第62/881,337号の利益及び優先権を主張するものである。上記出願の内容の全体は、参照により本明細書に組み込まれる。
【0002】
(技術分野)
本出願は、概して、運動器具及びそれに関連する方法の分野に関する。より具体的には、例えば、リーダーボードを含む、ライブストリーミング及び/またはオンデマンドのエクササイズコンテンツを提供するためのシステム及び方法に関する。
【背景技術】
【0003】
人間は本質的に競争心が強く、自分自身の過去の努力や他人と比較して、自らのパフォーマンスを改善するよう努力する。人間はまた、ゲームやその他の娯楽に魅力を感じるため、様々なゲーム要素が導入された場合、困難または厄介に感じ得るタスクでさえ好ましくなる可能性がある。既存の家庭及びジムベースのエクササイズシステム及びそれに関連する方法は、参加者が互いに効果的に競争すること、及び/または運動活動をゲーミフィケーションすることを可能にする重要な特徴を欠いていることが多い。
【0004】
運動体験を向上させ、より魅力的な環境を提供するために、ジムでは、インストラクターと参加者が音楽を流しながらサイクリングマシンで運動するサイクリングクラスなどのクラスを提供している。インストラクター、音楽、その他のクラスの参加者が組み合わさることにより、参加者がより一生懸命運動し、より良いペダルケイデンスやテンポを維持するように動機付ける。最近では、ブティック型サイクリングスタジオがサイクリングクラスのコンセプトを専用スペースに取り入れることにより、さらに影響力のあるクラス体験を生み出している。これらのジムやブティックのクラスは、通常、特定の時間及び場所でのみアクセス可能であり、多くの潜在的なユーザにとっては利用できず、不経済であり得る。
【0005】
1つの解決策は、ライブストリーミングまたはアーカイブの教育コンテンツ、ソーシャルネットワークのオーディオ及びビデオチャット、ネットワーク化されたパフォーマンスメトリック、及び競争能力のためのマルチメディア入力及び出力を、様々なゲーミフィケーション機能とともに組み込んだサイクリングマシンまたはその他の運動器具を提供することである。例えば、参照によりその内容全体が本明細書に組み込まれている2018年7月16日に出願され「運動システム及びそれに関連する方法」と題された米国特許第10,322,315号は、ユーザが、同一のライブのオンラインクラスまたはアーカイブクラスを受講している他のユーザと比較して、自らのパフォーマンスを確認できるようにするためのリーダーボードを表示するように構成されたサイクリングマシンのローカルシステムを開示している。
【0006】
このようなエクササイズシステムのユーザ層が拡大するにつれて、オンデマンド、オンライン、及び/またはエクササイズクラス中のリアルタイムインタラクションを含む実際のユーザ体験を維持しながら、リーダーボードデータを含むユーザ、クラス、及びパフォーマンスについての大量のデータをスケーリングする必要がある。シミュレーションされたライブの体験をユーザに提供しながら、大量のアーカイブデータへのオンデマンドのリアルタイムアクセスを提供するシステムの必要性は、多くの課題をもたらす。上記を考慮すると、運動器具のユーザにリーダーボード及び他のエクササイズコンテンツを提供するための改善されたシステム及び方法に対する当該技術分野における継続的な必要性が存在する。
【発明の概要】
【課題を解決するための手段】
【0007】
本開示は、運動器具用のリーダーボードコンテンツをコンパイル、保存、及び配信するための改善されたシステム及びそれに関連する方法を含む。本開示は、大規模な、及び/または拡大するユーザ層のユーザ体験を維持しながら、大量のオンデマンドリーダーボードデータを提供するための拡張可能なシステム及びそれに関連する方法の必要性に対処する。様々な実施形態では、システムは、ライブ及び/またはアーカイブのクラスのワークアウトデータを圧縮し、コンテンツを提供するときにグローバルリーダーボードを再構築する。本明細書に開示されるシステム及び方法は、ストレージスペースの削減、ネットワークオーバーヘッドの削減、及び水平方向に拡張する能力を含む、従来のシステム及び方法に勝る多くの利点を提供する。
【0008】
本開示の範囲は、参照によりこのセクションに組み込まれる特許請求の範囲によって定義される。1以上の実施形態の以下の詳細な説明を検討することにより、当業者は本開示をより完全に理解し、その追加の利点が実現されるであろう。最初に簡単に説明する添付の図面を参照する。
【図面の簡単な説明】
【0009】
以下の図面及び以下の詳細な説明を参照することにより、本開示の態様及びそれらの利点をよりよく理解することができる。同様の参照符号は、1以上の図面に示される同様の要素を識別するために使用され、図面中の表示は、本開示の実施形態を説明する目的で使用され、本開示の実施形態に限定する目的で使用されていないことを理解されたい。図面の構成要素は必ずしも縮尺どおりではなく、代わりに、本開示の原理を明確に示すことに重点が置かれている。
【0010】
図1】本開示の1以上の実施形態による、リーダーボードシステムを操作するための例示的な方法を示す図である。
図2】本開示の1以上の実施形態による、リーダーボードデータを格納するための例示的なファイル編成を示す図である。
図3】本開示の1以上の実施形態による、初期ライドファイルを生成するための例示的なシステムを示す図である。
図4】本開示の1以上の実施形態による、リーダーボードデータを生成、圧縮、及び格納するための第1の例示的なリーダーボードシステムを示す図である。
図5】本開示の1以上の実施形態による、リーダーボードデータを生成、圧縮、及び格納するための第2の例示的なリーダーボードシステムを示す図である。
図6】本開示の1以上の実施形態による、例示的なリーダーボードサーバシステムを示す図である。
図7A】本開示の1以上の実施形態による、例示的な運動器具の後面斜視図である。
図7B】本開示の1以上の実施形態による、例示的な運動器具の後面斜視図である。
図8A】本開示の1以上の実施形態による運動器具の例示的なユーザインターフェース画面を示す図である。
図8B】本開示の1以上の実施形態による運動器具の例示的なユーザインターフェース画面を示す図である。
図8C】本開示の1以上の実施形態による運動器具の例示的なユーザインターフェース画面を示す図である。
図9】本開示の一実施形態による、ライブまたはオンデマンドの同一のサイクリングクラスに参加しているユーザ間でデータを同期させるための例示的な方法を示すチャート図である。
図10】本開示の一実施形態による、コンピュータで生成されたメディアコンテンツを配信するための例示的なコンピューティング環境を示す図である。
図11A】本開示の1以上の実施形態による、コンピュータで生成されたメディアコンテンツの保存及び取得のための例示的な圧縮アプローチを示すフロー図である。
図11B】本開示の1以上の実施形態による、コンピュータで生成されたメディアコンテンツの保存及び取得のための例示的な圧縮アプローチを示すフロー図である。
図11C】本開示の1以上の実施形態による、コンピュータで生成されたメディアコンテンツの保存及び取得のための例示的な圧縮アプローチを示すフロー図である。
【発明を実施するための形態】
【0011】
本開示の様々な実施形態では、運動器具用のリーダーボードコンテンツをコンパイル、保存、及び配信するための改善されたシステム及びそれに関連する方法を提供する。本開示は、大規模な、及び/または拡大するユーザ層のユーザ体験を維持しながら、大量のオンデマンドリーダーボードデータを提供するための拡張可能なシステム及びそれに関連する方法の必要性に対処する。様々な実施形態では、システムは、ライブ及び/またはアーカイブのクラスのワークアウトデータを圧縮し、コンテンツを提供するときにグローバルリーダーボードを再構築する。本明細書に開示されるシステム及び方法は、ストレージスペースの削減、ネットワークオーバーヘッドの削減、及び水平方向に拡張する能力を含む、従来のシステム及び方法に勝る多くの利点を提供する。
【0012】
ライブ及びアーカイブエクササイズクラスの人気の高まりにより、クラス参加者のリアルタイムの要求を満たすためのコンテンツサーバシステム、データストレージ及び取得システムに対する需要が高まっている。例えば、広く採用されているエクササイズクラスのコンテンツストレージ及び配信システムでは、平均して、一度に5,000人から50,000人以上のユーザのリーダーボードコンテンツの生成要求を受ける場合がある。システムは、各クラス及び各クラス参加者に関連付けられた複数のデータポイントを受信して処理することができる。このようなシステムでの平均的なライド(ride)は、大量のストレージスペース(例えば、10メガバイトを超えるデータ)を消費し、より大きなライドは、様々なシステムにおいて70メガバイトを超えるストレージを消費することがある。一部のシステムでは、リーダーボード配信システムは、毎秒50以上の新たなワークアウトを配信し、また、需要がピークの際には毎秒150以上のワークアウトを配信し、ワークアウトのために1GB以上のリーダーボード情報を素早くロードできるなど、1以上のパフォーマンス目標を満たすように設計されていてもよい。より多くのユーザに対応し、より多くの機能を円滑にするために、システムが成長し続けるにつれて、参加者の数及び保存されるデータの量、並びに処理及び配信されるコンテンツの量がこれらの需要を超えて増加する可能性があると予想される。
【0013】
ここで、図を参照して、例示的なリーダーボードシステムの様々な実施形態を説明する。図1に示すように、リーダーボードシステムを操作するための方法10は、1以上のネットワークサーバまたはクラウドアプリケーション、及びストレージサーバなどの1以上の処理システムによって実行してもよい。実施形態によっては、1以上のコンテンツサーバは、運動器具を使用するユーザのためのライブ及び/またはオンデマンドのエクササイズクラスを円滑にするように構成される。エクササイズデータは、すべてのワークアウト(またはそのサブセット)に対して処理されてもよく、これには、各ワークアウト中またはワークアウト後のエクササイズデータのアップロードを含んでいてもよい。図示した実施形態では、エクササイズクラス終了などのワークアウトの終了時に、ワークアウトのすべてのパケットまたは選択されたパケットのデータをリーダーボードシステムにアップロードする(ステップ12)。次に、リーダーボードシステムは、圧縮アルゴリズムを実行してデータポイントをサンプリングし、後にワークアウトを再生成するために必要となるデータを削減する(ステップ14)。次に、圧縮ワークアウトデータを、リーダーボードシステムにアクセス可能なリーダーボードストレージ(例えば、クラウドストレージ、ネットワーク化されたデータベースストレージなど)に保存する(ステップ16)。これは、エクササイズクラスの新たなリーダーボードファイルの生成、エクササイズクラスの既存のデータへの圧縮ワークアウトデータの追加、または他の保存処理を含んでいてもよい。
【0014】
運動器具を使用するユーザが新しいオンデマンドエクササイズクラスを開始すると、リーダーボードストレージシステムに以前に保存されていたデータを識別し、リーダーボードストレージから読み出す(ステップ18)。サンプリングされたデータポイントは、完全なリーダーボードの表示(representation)を再生成するためのリーダーボードの解凍に使用される(ステップ20)。次に、解凍リーダーボードコンテンツを、オンデマンドエクササイズクラスに関連するメディアを運動器具に、及び/またはエクササイズクラスに関連する他のシステムもしくはデバイスに提供するコンテンツサーバに提供する。例えば、実施形態によっては、運動器具を使用するユーザは、オンデマンドエクササイズクラスに関連するメディアを受信、表示及び/または再生する携帯電話、タブレット、テレビ、コンピュータもしくは他のシステムなどのネットワーク接続されたデバイスを通じてエクササイズコンテンツにアクセスしてもよい。
【0015】
実施形態によっては、圧縮は、各ユーザのワークアウトからキーポイントをサンプリングするために、ラマー・ダグラス・ポーカー(Ramer-Douglas-PEucker)アルゴリズム(「ダグラス・ポーカーアルゴリズム」)などのロッシー圧縮アルゴリズムを使用する。実施形態によっては、圧縮アルゴリズムは、ワークアウトの開始及び終了ポイントから始まり、開始及び終了ポイントの間の線分から最も離れているポイントを見つける。そのポイントが所定の閾値よりも線分に近ければ、現時点においてキープするようにマークされていないポイントは、簡略化した曲線を閾値よりも悪化させることのないように破棄することができる。線分から最も遠いポイントが、線分から離れた閾値より大きければ、そのポイントをキープする。次に、新しいポイントが追加されなくなるまで、ポイント間の線分ごとに再帰的にこのアルゴリズムを呼び出す。再帰処理が完了すると、ワークアウトを定義する新しいデータセットを生成し、キープするようにマークされたポイントを含めてリーダーボードストレージに保存する。
【0016】
オンデマンドワークアウトの要求を受信すると、リーダーボードシステムは圧縮データを取り出し、圧縮アルゴリズムはそれらのポイントを補間することにより、選択されたワークアウトを再生成することができる。圧縮中に使用する閾値に応じて、システムの仕様及び制約による最大誤差の制御が可能である。テスト環境では、任意の地点での最大誤差を1(1ジュールと定義)の閾値としたときに、95%の圧縮率を達成した。
【0017】
実施形態によっては、リーダーボードシステムは、ワークアウトのために圧縮された2つのデータセットを生成するように構成される。最初のデータセットには、各クラス参加者の時間が含まれている。2番目のデータセットには、それらの時間に対応する出力が含まれる。両リストは、ワークアウト識別子、並びに関連する時間及び出力を含む圧縮データを含むファイル(例えば、プレーンテキストやデータベースなど)に格納されてもよい。
【0018】
実施形態によっては、サーバ及びストレージシステムはライドごとに1つのファイルを保存するよう構成される。このアプローチの利点は、ネットワークインターフェースの速度で1ライドあたり5,000以上の同時要求の取得が可能になることである。このアプローチの欠点は、サーバオブジェクトが不変であるシステムにおいて、これらのファイルを更新するために追加のロジックやプログラミングが必要になる可能性があることである。実施形態によっては、サーバとストレージシステムはクラウドストレージシステム及び/またはクラウドアプリケーションサーバを含む。
【0019】
クラウドストレージシステムとともに使用されるための例示的なファイルシステム200を図2に示している。ファイルシステム200は、エクササイズクラスの圧縮リーダーボードデータのためのフォルダ210、並びに、対応するライドからの圧縮データを有する可能性のある各フォルダ内の1つのファイル(例えば、それぞれ、ライド_データ222A及びライド_データ222B)を有するライドごとのプレフィックスまたは「フォルダ」(例えば、第1のライド220A及び第2のライド220B)を含んでいてもよい。実施形態によっては、ライドプレフィックスを不要としてもよいが、他の実施形態では、ライドプレフィックスを、プレフィックスレベルで一定のリクエストパーセカンド(RPS)パフォーマンスを保証する特定のクラウドストレージシステム(例えば、S3)に使用してもよい。フォルダ210は、クラスのフォルダを容易に識別できるようにするエクササイズクラス識別子を含んでいてもよい。
【0020】
次に、図3を参照して、初期ライドファイルの生成について説明する。エクササイズコンテンツストレージ及び配信システム300は、ライブまたはオンデマンドライド用のメディアコンテンツを提供し、ワークアウトデータをキャプチャして保存する。ライドを終了する(例えば、ライブライドが終了し、「ワークアウトの終了」セグメント制御ボタンが押される)と、エクササイズコンテンツストレージ及び配信システム300のコンポーネント320は、処理のためにワークアウト322のキューに追加されるライド識別子を生成する。ライド識別子の生成の後に、リーダーボードシステム310によって開始され、クラスのすべてのユーザのワークアウトデバイスからリーダーボードワークアウトデータを要求する機能が後続してもよい。実施形態によっては、複数の乗り手が多様な遠隔地からクラスに参加してもよく、リーダーボードシステム310は、各ユーザ/場所に対応する運動器具に関連するワークアウトデータを要求する。実施形態によっては、ワークアウトデータは、ワークアウトセッションの終了時にローカルワークアウトデバイスにより自動的にアップロードされる。
【0021】
様々な実施形態では、リーダーボードシステム310は、ネットワークサーバ、クラウドアプリケーションサーバ、ウェブサービスを提供するイベント駆動型サーバレスコンピューティングプラットフォーム(例えば、AWS Lambda)、または他のコンピューティング環境を通して実装されてもよい。システムは、利用可能なワークアウトデータ(例えば、運動器具またはクラウドストレージシステムから受信したパケット)、及びライドに関連する他のオンラインストレージシステム(例えば、クラウドストレージ330)から、任意の不足パケットを読み込み、圧縮リーダーボード340を生成する。圧縮リーダーボードは、オンデマンドエクササイズクラスの後続の取得のために、上記の圧縮形式でクラウドストレージシステムに保存されてもよい。実施形態によっては、クラウドストレージ330は、リレーショナルまたは非リレーショナルデータベース(例えば、DynamoDB)を含む。
【0022】
実施形態によっては、リーダーボードシステムは、上記のファイル構造を使用してリーダーボードデータを追加できるようにする特別なロジックを含む。すべてのライドをクラウドストレージのマスターライドファイルに追加することにより、将来的にオンデマンドワークアウトをリーダーボードに表示するようにしてもよい。追加操作を使用すると、追加データのみをアップロードするため、ネットワーク帯域幅使用率、処理、及びコストを節約することができる。他のシステム構造も使用することができるが、一方で、多くの場合、データベース(必要なQPSを満たすのが難しい)やEFS(予想される情報量と遅延の大きな変動を考慮するとコストがかかりすぎる)などの制約があり、ユーザ体験に悪影響を及ぼす可能性がある。
【0023】
リーダーボードサーバを実装するためのシステム400の実施形態を図4に示している。システム400は、ネットワーク上に配置された複数のサーバ、処理デバイス、ルーティングデバイス、及びストレージデバイスを含む。サーバは、ストレージ(クラウドストレージなど)から圧縮データを読み出し、リーダーボードを再生成するコンポーネントである。圧縮リーダーボードサーバ410は、リーダーボード圧縮及びサーバロジックを実行するように構成される。圧縮リーダーボードサーバ410は、1以上の統計サーバ420から要求を受信するが、これは、リーダーボードへのユーザの追加、完全なリーダーボードの返却、及びその他の関連コマンドが含んでいてもよい。
【0024】
システム400がワークアウト(例えば、ライド識別子を有するエクササイズクラス)の開始要求を受信すると、リーダーボード情報のための関連する要求は、圧縮リーダーボードサーバ410に渡るが、これは、圧縮データ450のワークアウトデータベースからライド識別子の正しいファイルを発見するように構成される。次に、圧縮リーダーボードサーバ410は、格納された圧縮データ450から完全なリーダーボードを読み込む。この時点で、リーダーボードは複数あるリストのうちの圧縮リストとして具体化されてもよい。次に、圧縮リーダーボードサーバ410は、これらのリストを処理して、タイムスタンプを用いて呼び出すことにより、そのタイムスタンプに対する出力を返すことができる関数(例えば、多項式関数)のリストを生成する(例えば、線形補間ライブラリを使用する)。「追加」要求の場合、圧縮リーダーボードサーバ510は、運動器具430から受信したユーザの最新の出力を圧縮して格納する。後続の「取得(get)」要求により、リーダーボードサーバはリストをループ処理し、ユーザのための完全なリーダーボードを再生成するが、その中には上記のユーザ出力が含まれる。
【0025】
効率的な処理を行うために、実施形態によっては、システム400は、与えられたワークアウトを同一サーバに効率的に(例えば、弾性負荷分散ルータ440を介して)ルーティングするように構成される。これは、例えば、統計サーバ420内でワークアウトIDをシャーディングすることにより達成することができる。サーバがクラッシュした場合には、ルーティングの調整により、どのサーバからでもリーダーボードを提供することができる。新しいサーバがクラウドストレージシステムからリーダーボードの再読み出しを行うため、切り替え中に遅延が発生する可能性がある。
【0026】
リーダーボードサーバを実装するためのシステム500の他の実施形態を図3に示す。この実施形態の1つの目標は、運動器具530のオンデマンドリーダーボード要求を、圧縮データストレージシステム550及びインターフェースにより接続する圧縮リーダーボードサーバ510に直接ルーティング(例えば、弾性負荷分散(ELB)ルータ540を介して)することである。これを達成するために、圧縮リーダーボードサーバ510は、データのソート、フィルタリング、及びウィンドウイングを容易にするロジックを含む。ルーティングを行う統計サーバがない場合には、ELBレイヤー540はスティッキーセッションを使用することによりルーティング処理を行うように構成される。
【0027】
圧縮リーダーボードサーバを実装するためのロジックは、プロセッサにより実行するために、コトリン(Kotlin)、パイソン(Python)、または他の適切なプログラミング言語によって記述されてもよい。実施形態によっては、コトリンは、パイソンと比較すると、サービスの複雑さを軽減するものとなる。システムは、コアごとに1つずつ、複数の独立したプロセスが行われるようにプログラムされてもよい。これによって対処すべきいくつかの考慮事項があるが、そのうちの2つは、共有メモリの不足とルーティングの複雑さである。実施形態によっては、クライアントプロセス及びリーダーボードプロセスの間にリモートプロシージャコール層があり、バランスのとれた負荷分散を行うために、すべてのクライアントは、コア数によって倍増する実行中のすべてのシングルプロセスに接続されることになる。このシステムでは、圧縮リーダーボードのロードや、第三者のソフトウェア(例えば、分散メモリキャッシングシステムなど)とのメモリの共有にコストがかかるため、同じワークアウトが同一のプロセスに進むようにする要求がそれぞれ必要となる可能性がある。これは、すべての要求をロックフリーデータ構造のランダムアクセスメモリまたは他の高速アクセスメモリに格納するほど効率的ではない。システムは、プロセス内メモリ構造を介して解凍されたワークアウトを共有する機能を失う可能性がある。その上、ネットワークの複雑さはコアの数とともに増大する。
【0028】
他の実施形態では、パイソンプロセスを使用してもよいが、これは効率に影響を及ぼす可能性がある。標準的なパイソンライブラリは、タスクの実行が終了した後にプロセスを終了し、新たなタスクのために新たなプロセスを起動する可能性があるため、ワークアウトのリーダーボードデータが一貫して1つのプロセスに保存されていると、問題が発生する。2秒以上ごとに新たなリーダーボードを生成するという目標を達成するには、システムは毎回新たなアレイを新たに割り当てるか、1秒前のリーダーボードを保存する必要があるかもしれないが、それは発生時に新たなプロセスのメモリスペースにコピーされることとなる。いずれにせよ、プロセスは多くのコピーまたは多くの割り当てを行うこととなる。
【0029】
実施形態によっては、ジャバ(Java(登録商標))仮想マシン上で書かれ、ネイティブマルチスレッドが組み込まれているコトリンなどのプログラミング言語を使用してもよい。コトリンは、コピーオンライトメモリモデルを使用して、グローバルインタープリターロックまたはスポーンプロセスに対する特定の応急処置(work-arounds)を回避することができる。コトリンを使用することにより、システムに、ライドのための解凍リーダーボード用共有オブジェクトを持たせることができる。これにより、システムは、クラウドからコアリーダーボードのコピーを複数取得することなく、ワークアウトごとに異なるスレッドで秒単位のリーダーボードを生成できるようになる。システムは、以前の要求からソートされたリーダーボードを保存し、1秒前の順序に基づいて新しいリーダーボードを生成することもできる。ユーザはそれほど移動しないため、システムはほぼソート済みのリーダーボードをその場で生成し、その後のソートのコピーと最適化を完全に回避することになる。これは、ユーザが毎秒あまり動き回らないため、データがソートされた状態に近いものとなるからである。
【0030】
運動器具へのリーダーボード実装の例
【0031】
本明細書に開示されるシステム及び方法は、インターネットまたは無線ネットワークなどの他のネットワークを介して動作するサーバ環境で具体化することができる。本開示の1以上の実施形態による例示的なリーダーボードサーバ600を図6に示している。リーダーボードサーバ600は、1以上のプロセッサ602、メモリ604、ネットワークインターフェース608、及びデータストレージ620(例えば、クラウドストレージ及びネットワークストレージなど)を含んでいてもよい。プロセッサ602は、中央処理ユニット、多目的プロセッサ、マイクロプロセッサ、及び特殊目的プロセッサなどのような任意の適切な処理コンポーネントまたは論理デバイスを含んでいてもよい。メモリ604は、1もしくは複数の揮発性、不揮発性、及び/または交換可能なストレージコンポーネント、例えば、磁気、フラッシュ、光学もしくは他のストレージコンポーネントを含んでいてもよい。メモリ604は、本明細書に開示されるような様々な論理コンポーネント及びプロセスを含む、プロセッサ602による実行のためにコンピュータ可読命令及びロジックストレージ604を保存してもよい。実施形態によっては、リーダーボードサーバ600は、ワークアウトデータ取得(data aquisition)610、ワークアウトデータ圧縮612、ワークアウトデータストレージ614、ワークアウトデータ取得(data retrieval)616、ワークアウトデータ解凍618、リーダーボード生成及び配信620を容易にするように構成されたソフトウェアモジュールを含む。ネットワークインターフェース608は、有線(例えば、イーサネット)、無線(例えば、セルラー、WI-FI)、並びに/または効率的なデータ転送通信のために構成された他のネットワーキングタイプを含む通信ネットワークを介してリーダーボードサーバ600及び他のシステムもしくはデバイスの間の通信を容易にするように構成される。
【0032】
次に、図7A及び7Bを参照して、運動器具の様々な実施形態を説明する。実施形態は、フィットネスバイク、エクササイズクラス、及び他のエクササイズ関連コンテンツを用いた例を示しているが、本開示は、サイクリングに限定されず、他の運動器具及び/または他のコンテンツ生成もしくは配信アプリケーションを用いることにより実装されてもよいことを理解されたい。
【0033】
様々な実施形態では、ローカルシステム700は、少なくとも1つのディスプレイスクリーン704を含み、統合、または通信可能に接続されたデジタルハードウェアを備えたフィットネスバイク702を備える。フィットネスバイク702は、フレーム706、ハンドルバー710を支持するためのハンドルバーポスト708、シート714を支持するためのシートポスト712、リアサポート716、及びフロントサポート718を備えていてもよい。ペダル720は、ベルト、チェーン、または他の駆動機構を介してホイール722を駆動するために使用される。ホイール722は、重金属ディスクまたは他の適切な機構であってもよい。様々な例示的実施形態では、ホイール722を回転させるのに必要なペダルにかかる力は、抵抗調整ノブ724を使用して調整することができる。抵抗調整ノブまたは他の抵抗調整コンポーネントは、ホイールの回転に対する抵抗を増加または減少させるデバイスを直接的または間接的に制御してもよい。例えば、抵抗調整ノブを時計回りに回転させると、一組の磁石726がホイールに対して相対的に移動することにより、回転に対する抵抗が増加し、その結果、ホイールを回転させるためにユーザがペダルに加えなければならない力が増加してもよい。
【0034】
フィットネスバイク702はまた、シート714、ハンドルバー710などの位置の調整を可能にする様々な機能を含んでいてもよい。様々な例示的実施形態では、ディスプレイスクリーン704を、ユーザの前側であるハンドルバーの前方に取り付けてもよい。そのようなディスプレイスクリーンは、乗り手に対するディスプレイスクリーンの位置または向きの調整を可能にするためのヒンジまたは他の機構を含んでいてもよい。実施形態によっては、ディスプレイスクリーンは、フィットネスバイク702の1以上のコンポーネントに通信可能に接続されたタブレット、携帯電話、ポータブルコンピュータ、テレビ、または他のデバイスに実装されてもよい。
【0035】
フィットネスバイク702に関連するデジタルハードウェアは、フィットネスバイク702に接続もしくは統合されてもよく、またはフィットネスバイクから遠隔に配置されても、無線で接続されてもよい。ディスプレイスクリーン704は、フィットネスバイクに取り付けられていてもよく、または別個に取り付けられてもよいが、フィットネスバイクを使用している人の視界に入るように配置されるとよい。デジタルハードウェアは、デジタルストレージ、処理、及び通信ハードウェア、ソフトウェア、並びに/またはディスプレイスクリーン、カメラ、マイク、キーボード、タッチスクリーン、ヘッドセット、及び/またはオーディオスピーカーなどの1以上のメディア入力/出力デバイスを含んでいてもよい。様々な例示的実施形態において、これらのコンポーネントはフィットネスバイクに統合されていてもよい。そのようなコンポーネント同士及びコンポーネント間のすべての通信は、任意の適切なプロトコルまたは技術を使用する、マルチチャネル、多方向、及び、ワイヤレスもしくは有線のもの(例えば、ワイヤ728を使用するもの)であってもよい。様々な例示的実施形態では、システムは、ローカルまたはリモートのパーソナルコンピュータ、ラップトップ、モバイルデバイス、または任意の他のデジタルデバイスからユーザにアカウント、パフォーマンス、及び他の関連情報へのアクセスを提供する関連モバイル、並びにウェブベースのアプリケーションプログラムを含んでいてもよい。
【0036】
様々な例示的実施形態では、フィットネスバイク702は、フィットネスバイクと乗り手の両方から、一連のパフォーマンスメトリックを瞬時に及び/または経時的に測定することができる様々なセンサを装備していてよい。例えば、フィットネスバイクは、磁気抵抗電力測定センサなどの電力測定センサ、または使用中に継続的な電力測定を行う渦電流電力モニタリングシステムを含んでいてもよい。フィットネスバイクは、速度、ペダルケイデンス、ホイールの回転速度などを測定するための様々なセンサを含んでいてもよい。フィットネスバイクは、乗り手の心拍数、呼吸、水分補給(hydration)、またはその他の身体的特性を測定するセンサを含んでいてもよい。このようなセンサは、有線または無線接続を使用することにより、フィットネスバイクのストレージ及び処理システム、近接地または遠隔地と通信してもよい。
【0037】
センサ内または別個のパッケージのハードウェア及びソフトウェアは、幅広いパフォーマンス情報を計算し、保存するために提供されてもよい。測定または計算可能な関連パフォーマンスメトリックは、距離、速度、抵抗、電力、総作業量、ペダルケイデンス、心拍数、呼吸、水分補給、カロリー消費、及び/または発達する可能性のあるカスタムパフォーマンススコアを含む。このようなパフォーマンスメトリックは、必要に応じて、現在/瞬間の値、最大値、最小値、平均値、もしくは経時的な合計値、または他の統計分析を使用して計算することができる。また、動向の測定及び保存を行い、ユーザ、インストラクター、並びに/または他のユーザに表示することもできる。ユーザインターフェースにより、表示される様々な情報の言語、及びその他の特性をユーザが制御できるようにしてもよい。
【0038】
様々な例示的実施形態では、フィットネスバイク702は、1以上の大きなディスプレイスクリーン(例えば、ディスプレイスクリーン704)、カメラ、マイクロフォン、及びスピーカ、または他のオーディオ出力を備えていてもよい。ディスプレイスクリーン704は、フィットネスバイク702に直接取り付けられていてもよく、そうでなければ、ユーザの視認領域内に配置されてもよい。様々な例示的実施形態では、少なくとも1つのディスプレイスクリーンがフィットネスバイクに統合または取り付けられ、図に示すように、フィットネスバイクのハンドルバー710のほぼ中心にある乗り手の前に配置される。様々な機構を使用することにより、ユーザがディスプレイスクリーンの位置をカスタマイズできるようにすることができる。
【0039】
例示的な実施形態では、ディスプレイスクリーン704は、フレーム706の前部ステムから上方及び前方に延びる湾曲構造体を介してフィットネスバイク702に取り付けられてもよい。湾曲構造体は、湾曲構造体を貫通し、湾曲構造体の長さ方向の一部に沿って延びるスロットまたは開口を含んでいてもよい。ディスプレイスクリーン上の取り付けポストまたは同様の構造体は、取り付けポストもしくは構造体、及び湾曲構造体を貫通するピンにより、湾曲構造体に取り付けられていてもよい。例示的実施形態では、ピンは、取り付けポストまたは構造体をある場所及び位置に保持及びロックするために締めておけるようなねじ山などの機構を有していてもよい。
【0040】
ディスプレイスクリーン704は、タッチスクリーン、マウス、またはその他のデバイスなど、ユーザ入力デバイスによって駆動されてもよい。様々な例示的実施形態において、タッチスクリーンディスプレイは、ハンドルバーの間の概ね中央に配置され、ハンドルバーのすぐ下にあるフィットネスバイクに取り付けられている。ディスプレイスクリーンは任意のサイズであってよく、最適には、1以上のビデオストリーム、ユーザなどのための様々なパフォーマンスメトリック、及び様々な制御を含む様々な情報を表示可能な、十分な大きさと向きを有するものであるとよい。
【0041】
様々な例示的実施形態では、ユーザは、タッチスクリーンまたは他のインターフェースを使用することにより、ライブ及び/もしくはアーカイブビデオ、パフォーマンスデータ、並びに他のユーザ及びシステム情報を含む一連の異なる情報を画面上に選択的に表示させることができる。ユーザインターフェースは、クリック、タッチ、またはジェスチャによって個別に、及び/またはグループでのアクセスや削除が可能な、幅広い制御、並びに、情報ウィンドウを提供することができる。様々な例示的実施形態では、そのようなウィンドウは、ユーザ自身のパフォーマンス及び/または過去と現在の両方で、同じクラスを受講する他の参加者のパフォーマンスに関する情報を提供することができる。
【0042】
ユーザインターフェースを使用することにより、メンバー情報へのアクセス、システムへのログイン及びシステムからのログアウト、並びに、ライブエクササイズクラス及びアーカイブコンテンツなどのライブコンテンツへのアクセスを行うことができる(図の「ライドオンデマンド」を指す)。ユーザ情報は様々な形式で表示されてもよく、過去及び現在のパフォーマンス、アカウント情報、ソーシャルネットワーキングリンク、情報、並びに実績などを含んでいてもよい。ユーザインターフェースを使用することにより、システムへのアクセス、プロファイルまたはメンバー情報の更新、情報共有などのアカウント設定の管理、及びデバイス設定の制御も可能である。
【0043】
図8A~8Cに示すように、ユーザインターフェース800は、表示される情報の選択及びそのような情報をシステム上でどのように表示するかの調整を含めて、ユーザが自身のエクササイズを管理できるようにするために、ディスプレイスクリーン704に表示されてもよい。ユーザインターフェースは、複数の種類の情報を重ねて表示し、ユーザが異なる種類の情報を容易に選択または選択解除できるようにしてもよい。例えば、半透明または部分的に透明な要素を使用することにより、映像コンテンツの上にパフォーマンス情報を表示し、情報要素の背後にある映像を情報そのものと一緒に見ることができるようにすることができる。
【0044】
ユーザインターフェース800は、ユーザに様々な画面を表示してもよく、ユーザは、タッチスクリーンが使用される場合には、タッチによるものを含み、提供されたユーザ入力装置を使用することにより、迅速にその画面間を移動してもよい。様々な例示的実施形態では、ユーザインターフェースは、システム及び利用可能なオプションに関する基本的な情報を表示するホーム画面を提供してもよい。図8Aに示すように、そのようなホーム画面は、予定されたクラス802、アーカイブクラス804、リーダーボード806、講師808、及び/またはプロファイル、並びにアカウント情報810などの情報への直接リンクを提供してもよい。画面は、あるクラス812に参加するためのリンクなど、コンテンツへの直接リンクを提供してもよい。ユーザは、指定された場所でタッチスクリーンにタッチするか、スワイプして新しい画面を表示するなど、適切な入力デバイスを使用してそのようなリンクを選択することにより、ユーザインターフェースの様々な画面間を移動することができる。また、ユーザインターフェースは、ソーシャルネットワーク情報などのユーザに関連する他の情報や、ユーザインターフェース内の異なる画面間を素早く移動するためのナビゲーションボタンを提供してもよい。
【0045】
様々な例示的実施形態では、ユーザは、ライブコンテンツ及びアーカイブコンテンツの両方から選択することができる。例えば、ユーザが予定されたクラス802を選択した場合、今後予定されているクラスのスケジュールを示す画面が表示されてもよい。ユーザインターフェースを使用すると、ユーザは時間、インストラクター、ライドの種類ごとのクラス選択や、進行中または開始しようとしているクラスを開始することができる。クラスのスケジュールは、カレンダー、リスト、またはその他の適切なレイアウトを含む、任意の適切な形式で表示されてもよい。
【0046】
様々な例示的実施形態では、ユーザがアーカイブクラス804を選択すると、任意の適切なカテゴリによってソートした利用可能なアーカイブクラスを示す画面を表示してもよい。図8Bは、アーカイブクラスの表示例を示している。アーカイブクラスを表すサムネイルまたはアイコン818は、任意の適切な形式で表示されてもよく、ユーザが過去にそのクラスでライドに乗った回数に関する情報、または、他のパフォーマンスもしくはクラス関連の情報を含んでいてもよい。特定のサムネイルまたはアイコンを選択することにより、クラスにアクセスしてもよい。
【0047】
図8Cに示すように、クラスがユーザインターフェース800を介してディスプレイスクリーン上で再生されているとき、様々な例示的実施形態では、一次ビデオフィードが、バックグラウンドビデオとしてフルスクリーンまたはスクリーン上のサブウィンドウで表示されてもよい。走行時間、経過時間、残り時間、距離、速度、抵抗、電力、総作業量、ペダルケイデンス、心拍数、呼吸、水分補給、カロリー消費、及び/または発達する可能性のある任意のカスタムパフォーマンススコアを含む任意のパフォーマンスメトリックを示すために、ディスプレイスクリーンの様々な部分に情報要素を提供してもよい。表示される情報には、様々なパフォーマンスメトリック間の傾向や関係が含まれていてもよい。例えば、赤は現在のパフォーマンスが平均以下であることを示し、緑はパフォーマンスが平均以上であることを示すなど、クラスまたは時間の経過に伴う平均パフォーマンスと比較した現在のパフォーマンスを示す色により、特定のメトリックを表示することができる。また、傾向または相対的なパフォーマンスは、例えば、現在のパフォーマンスが平均を下回っていることを示す赤い下向き矢印など、色と図形を使用することにより表示されてもよい。
【0048】
一次ウィンドウ820は、ユーザが選択したライブクラスまたはアーカイブクラスを表示する。様々な例示的実施形態では、パフォーマンスメトリックウィンドウ822、824、826、828、及び830は、ユーザの現在のライド、過去のライド、または他のパフォーマンス情報に関する特定のパフォーマンスメトリックを示してもよい。このようなパフォーマンスメトリックウィンドウは、ディスプレイスクリーンのどこに表示されてもよく、また、画面のタッチまたはジェスチャによって表示または削除できるように、ユーザが選択できるようにしてもよい。図8Cに示すように、ウィンドウ822は、距離及び速度を表示している。ウィンドウ824は、現在のペダルケイデンスを、ユーザの平均及び最大ケイデンス、並びにクラス平均とともに表示し、矢印832は、ユーザのケイデンスが増加または減少しているかを示す。ウィンドウ826は、ワット単位の電力出力を、平均出力、最大出力、クラス平均、及び合計出力とともに、同様の矢印と併せて表示する。ウィンドウ828は、抵抗を数値及びグラフの両方で表示し、ウィンドウ830は、消費カロリー並びに心拍数を表示する。
【0049】
ユーザインターフェースを使用することにより、ユーザが、様々なパフォーマンスメトリックの最大、平均、及び合計の結果の表示を切り替えられるようにしてもよい。ユーザインターフェースはまた、ユーザが、パフォーマンスメトリック、ビデオストリーム、及びユーザ情報などを含む情報要素を一度にまたは個別に非表示もしくは表示できるようにしてもよい。また、パフォーマンス情報は様々な表示バーに表示可能であり、非表示にしたり、グループでまたは個別に表示したりすることができる。ユーザインターフェースは、オーディオボリューム、入力及び出力の完全な制御、並びに、出力特性の表示を提供してもよい。
【0050】
リーダーボード834はまた、ユーザが、同じクラスを受講している他人と比較した自らのパフォーマンスを見られるように表示してもよい。様々な例示的実施形態では、リーダーボードは、すべての乗り手、または1以上のサブグループの乗り手の相対的なパフォーマンスを表示するように構成されてもよい。ユーザは、例えば、特定の年齢層の乗り手、男性の乗り手、女性の乗り手、特定の年齢層の男性の乗り手、及び特定の地域の乗り手のパフォーマンスを示すリーダーボードを選択できるようにしてもよい。また、ユーザに対して、リーダーボードの選択を完全に解除することにより、画面から削除する機能を提供してもよい。様々な例示的実施形態では、システムは、例えば、ユーザによる他の乗り手のフォローや、乗り手のグループやサークルの生成を可能にする様々なソーシャルネットワーキングを組み込んでもよい。ユーザリストと情報は、アクセス、ソート、フィルタリング、及び様々な方法で使用されてもよい。例えば、他のユーザを、年齢、性別、体重などの個人情報を含む任意の特性に基づいて、または現在の出力、速度もしくはカスタムスコアなどのパフォーマンスに基づいて、ソート、グループ化、及び/または分類することができる。
【0051】
リーダーボード834は、完全に双方向的なものであってもよい。例えば、ユーザが乗り手のランキングを上下にスクロールして乗り手を選択し、次に、詳細なパフォーマンスデータにアクセスする。次に、その乗り手のフォローを選択するなどして接続を行い、または、オーディオ及び/もしくはビデオ接続などを介して、直接通信を確立できるようにしてもよい。リーダーボードに同じクラスまたは同等のクラスでのユーザの自己ベストパフォーマンスを表示することにより、ユーザが現在のパフォーマンスと以前の自己ベストパフォーマンスとを比較できるようにしてもよい。リーダーボードは、ユーザがフォローしている乗り手など、特定の乗り手のハイライト表示、他の視覚的な合図による接続の表示、または、リーダーボード上の特定のエントリに関する他の情報の提供を行ってもよい。様々な例示的実施形態では、リーダーボードはまた、ユーザがリーダーボードをスクロールしている間、彼らの位置及びパフォーマンス情報を常に見られるようにする。
【0052】
様々な例示的実施形態では、システムは、1以上のカスタムスコアを計算及び表示することにより、ユーザのパフォーマンスの1以上の側面を表示する。このようなカスタムスコアの一例は、特定のクラスまたはユーザセッションについて計算された10進数である。このようなスコアは、特定の期間の一部もしくはすべてのクラスまたはセッションのパフォーマンスデータを使用して計算することも可能である。例示的な実施形態では、カスタムスコアは、乗車時間の量、その期間中の総作業量、及び所定の期間におけるクラスの数を考慮する。
【0053】
様々な例示的実施形態では、他のユーザに関するパフォーマンス情報は、リーダーボード834上に、または関連するパフォーマンスパラメータによってソートされることがあるフォーマットを含む、任意の他のフォーマットで表示されてもよい。ユーザは、自分のパフォーマンスを、すべてのユーザ、選択したユーザ、及び/またはインストラクターが利用できるようにするか、または誰も見ることができないようにプライベート情報として維持するかどうかを選択してもよい。
【0054】
様々な例示的実施形態では、ユーザインターフェースはまた、ある範囲の異なるソースから、1以上のビデオストリームを表示してもよい。例えば、1つのビデオストリームが、一次ウィンドウに表示されるライブまたはアーカイブクラスコンテンツであってもよく、その一方で、1つ以上の追加のビデオストリームが、ディスプレイスクリーン704の他のウィンドウに表示されてもよい。様々なビデオストリームは、ライブもしくは録画されたインストラクターのストリーミングビデオ、または1以上のライブビデオチャットストリームを含むその他のビデオコンテンツを含んでいてもよい。
【0055】
ユーザインターフェースは、追加のパフォーマンスデータ、クラス、インストラクター、他の乗り手などに関する情報、または二次ビデオストリームを含む様々なコンテンツの表示に使用することができる追加のウィンドウを提供してもよい。このようなウィンドウを追加することにより、ユーザは現在または過去の他の参加者に関する様々な情報を参照してパフォーマンスを比較したり、音声やビデオチャットなどのコミュニケーションチャンネルを開いたり閉じたりすることができる。様々な例示的実施形態では、ユーザは、映画、テレビチャンネル及びオンラインチャンネルなどを含む他のコンテンツに同時にアクセスすることができる。二次ウィンドウ840は、ある範囲の情報及びコンテンツを表示してもよい。図示の実施形態では、二次ウィンドウ840は、ユーザの名前、現在のクラス名、並びに基本的なクラス情報を表示するが、ウィンドウ822、824、826、828、及び830に表示される情報などの他の情報を表示することができる。
【0056】
様々な例示的実施形態では、システムは、システムによって同期され、ライブクラスに対して利用可能であるものと同じ通信及びデータ共有機能のすべてに対してアクセスを可能にすることで、記録されたクラスへの複数のユーザによる同時参加を提供することができる。この機能により、同じアーカイブクラスに同時に参加している乗り手同士だけでなく、同じクラスの過去のパフォーマンスや、クラスに所属しているものの参加していない乗り手(ゴーストライダー)と対戦することも可能である。
【0057】
図9は、下部に示すスケールにおいて左から右へ増加している時間に対する様々なイベントを示す。クラス自体のタイムラインは、ライブであるかアーカイブであるかに関係なく上部に表示され、その下方に4人の異なる乗り手のタイムラインが表示される。ライブまたはアーカイブクラスで配信されるビデオは、ビデオ開始ポイント920で実際の授業が始まる前に開始することができる。GO信号ポイント922は、クラスの開始またはクラスの比較期間を示し、STOP信号ポイント924は、クラスの終了またはクラスの比較期間の終了を示し、終了ビデオポイント926は、ビデオストリームの終了を示す。乗り手(R)1、2、及び4は、すべてGO信号ポイントの前に乗り始めるが、GO信号が、クラスパフォーマンスメトリックの開始時点となる。乗り手3の場合、実際に開始する時点が、クラスパフォーマンスメトリックの開始時点となる。STOP信号ポイントを超えて継続していた乗り手1、2、及び3の場合、クラスパフォーマンスメトリックの終了時点はSTOP信号ポイントとなり、乗り手4の終了時点は実際に乗車を停止した時刻となる。
【0058】
このようなシステムを使用することにより、ユーザまたは他の参加者のライブ及び過去のパフォーマンス(ゴーストバイク)データ(リーダーボードコンテンツなど)を、比較や競争のために様々な数値やグラフ形式で授業中に提供することができる。ユーザのライブ及び過去のパフォーマンスデータ、またはターゲットパフォーマンスデータを同時に表示することにより、ユーザが、クラス中またはクラス後にリアルタイムでパフォーマンスをベンチマークと比較できるようにすることができる。様々な例示的実施形態では、システムはまた、異なるユーザまたはユーザグループ間の競争を平等にするために、ユーザがハンディキャップシステムを設定することにより、広範な競争ができるようにしてもよい。
【0059】
図10に示すように、ローカルシステム1010は、1以上のセンサを含む運動器具と、1以上のパフォーマンスメトリックを生成する処理システムと、及びリーダーボード情報を表示するためのディスプレイとを操作するユーザを含む。エクササイズクラスの間、ローカルシステム1010は、セッションデータ1012を配信プラットフォーム1020に送信する。様々な実施形態では、セッションデータ1012は、センサデータ(例えば、抵抗、ケイデンス、及びユーザ心拍数)、パフォーマンスメトリック(例えば、速度、距離、及びリーダーボード上の位置)、並びに/またはユーザ嗜好情報(例えば、好きな音楽、及び好きなワークアウト)を含んでいてもよい。配信プラットフォーム1020は、エクササイズクラスに関連するメディア1062(例えば、ワークアウト/メディアコンテンツデータベース1024からのビデオ、オーディオ及び他のワークアウトコンテンツ、並びに、リーダーボードシステム1040からのリーダーボード情報)をローカルシステム1010に提供する。
【0060】
配信プラットフォーム1020並びに/またはローカルシステム1010は、ワークアウトデータ1032を、リーダーボードデータベース1044(例えば、クラウドストレージやネットワークストレージなど)にコンパイル、圧縮、及び格納するように構成されるリーダーボードシステム1040に提供する。リーダーボードシステム1040はまた、格納されたリーダーボードデータを取得及び解凍し、ローカルシステム1010のユーザに対して表示するためのリーダーボード1060を生成するように構成される。
【0061】
センサ内または別の処理システム内のハードウェアやソフトウェアを提供することにより、様々なステータス情報並びにパフォーマンス情報を計算及び保存してもよい。測定もしくは計算される可能性のある関連パフォーマンスメトリックには、抵抗、距離、速度、電力、総作業量、ペダルケイデンス、心拍数、呼吸、水分補給、カロリー消費、及び/または発達する可能性のあるカスタムパフォーマンススコアが含まれてもよい。必要に応じて、このようなパフォーマンスメトリックは、現在/瞬間の値、最大、最小、平均、もしくは経時的な合計として、または他の統計分析を使用して計算することができる。傾向の決定、保存、並びに、ユーザ、インストラクター、及び/または他のユーザへの表示を行うことができる。また、表示する情報の言語や単位などをユーザが制御できるように、ユーザインターフェースを提供してもよい。
【0062】
様々な実施形態では、システムの動作中に保存及び取得されるセンサデータ、ユーザデータ、乗車データ及び/または他の関連データの圧縮は、所望のデータ損失並びに/またはストレージ効率目標を達成するために、上記のアプローチ及び/または1以上の代替アプローチを使用することにより実装してもよい。
【0063】
図11Aに示す実施形態では、圧縮及び取得プロセス1100は、一組の固定ポイントまたは間隔を含む乗車データに使用されてもよい。ステップ1110において、各乗車について、平均ユーザ出力は、固定ポイント間、及び/または各固定ポイントに関連する他のウィンドウ/セグメント(例えば、固定ポイントを囲むウィンドウ)において決定されてもよい。固定小数点値の数は、例えば、線の簡略化アルゴリズムを用いて、さらに減らしてもよい。次に、ステップ1112において、得られた出力を、例えば、0から1へ正規化してもよい。圧縮データは、ステップ1114において、時刻tにおける正規化された出力を取得し、ユーザの最終出力を乗じることによって、1以上の時刻tにおけるユーザの出力を計算してもよい。このアプローチでは、すべての圧縮されたワークアウトが同じポイントインデックスを有することになり、より効率的なデータ保存につながる。このアプローチのトレードオフとして、導き出された値の誤差が大きくなることが挙げられる。
【0064】
一実施形態では、固定ポイントは、機械学習アルゴリズムにより決定されるが、これは、乗車中の最重要ポイントを決定するためのデータの回帰分析を含んでいてもよい。実施形態によっては、機械学習アプローチを使用することにより、乗車データの式または曲線を決定することができる。
【0065】
他のアプローチでは、図11Bに示すように、信号圧縮及び取得プロセス1150は、高速フーリエ変換(FFT)を使用することにより実装することができる。このアプローチでは、ステップ1160で高速フーリエ変換を使用して元の信号を畳み込み、ステップ1162で畳み込んだデータセットの開始と終了を保存する。ステップ1164で、信号の開始ポイント及び終了ポイントも保存される。ステップ1166では、2つのポイントを基点とした鋸歯状の信号を生成し、それを畳み込むことによりリカバリを行う。ステップ1168では、畳み込み信号の左側及び右側を、保存された圧縮データに置き換える。次に、ステップ1170で信号の畳み込みを解くことにより(例えば、逆FFT)、元の信号が適切な近似値で復元される。
【0066】
本実施形態の利点は、ユーザアクションの低減とセンシング時間の短縮を効果的に達成できることを含め、当業者には明らかであろう。
【0067】
図11Cに示す実施形態では、圧縮プロセス1180の例は、ワークアウトデータを再帰的にサンプリングして、圧縮データセットを生成する。ステップ1182において、リーダーボードシステムは、ワークアウト中に採取されたパフォーマンス関連データのサンプルを含む、1以上のユーザのワークアウトデータを受信する。例えば、データサンプルは、ワークアウトのタイムスタンプと、移動距離、速度、ケイデンス、抵抗、並びに/または他の関連データなどの感知及び/または計算されたパフォーマンスパラメータを含んでいてもよい。実施形態によっては、リーダーボードの圧縮は、各ユーザのワークアウトからキーポイントをサンプリングするために、ラマー・ダグラス・ポーカー(Ramer-Douglas-Peucker)アルゴリズム(「ダグラス・ポーカーアルゴリズム」)などのロッシー圧縮アルゴリズムを用いて実行される。
【0068】
実施形態によっては、圧縮アルゴリズムは、ステップ1184でワークアウトの第1のデータポイント及び最終データポイントを識別することにより開始し、次に、終了条件が満たされるまで、連続データポイント間の中間ポイントを再帰的に追加する。図示の実施形態では、ステップ1186において、リーダーボードシステムは、連続ポイント間の各線分について、線分から最も遠い中間ポイントを特定する。ステップ1188において、中間ポイントから対応する線分までの距離が予め定められた閾値距離より大きい場合、中間ポイントを圧縮データセットに追加する。そうでなければ、中間ポイントは、簡略化された曲線が閾値より悪化することなく、廃棄される。その後、新たなポイントが追加されなくなるまで(ステップ1190)、ポイント間の各線分に対して再帰的に呼び出される。再帰が完了すると、ワークアウトを定義する新しいデータセットが生成されるが、これには、リーダーボードストレージへの保持及び保存がなされている旨がマークされたポイントを含む。
【0069】
実施形態によっては、リーダーボードシステムは、異なるパフォーマンスパラメータを追跡するために、2以上の圧縮されたワークアウトのデータセットを生成するように構成される。例えば、1つ目のデータセットは各クラス参加者の時間を含み、2つ目のデータセットはそれらの時間に対応する1以上のデータ出力(例えば、感知または計算されたパフォーマンスパラメータ)を含んでいてもよい。両リストは、ワークアウト識別子と、関連する時間及び出力を含む圧縮データを含むファイル(例えば、プレーンテキスト、データベースなど)に保存されてもよい。
【0070】
一例では、ライブ及びアーカイブされた運動クラスにリーダーボード情報を配信する方法は、第1の場所における運動器具のユーザがアクセスできる利用可能なライブクラスに関する情報及び利用可能なアーカイブされたクラスに関する情報を提供するステップと、ライブエクササイズクラスまたはアーカイブエクササイズクラスのいずれかの選択を受信するステップと、選択した運動クラスのリーダーボードデータがある場合にはそれを取得するステップと、取得したリーダーボードデータを解凍するステップと、選択したエクササイズクラスを含むデジタルビデオ及びオーディオコンテンツを第1の場所にある第1の運動器具に提供するステップとを含む。この方法は、クラス終了条件の指示を受信するステップと、選択したエクササイズクラスの1人以上のクラス参加者からデータを収集するステップと、収集データを圧縮するステップと、圧縮した収集データを、クラスについての保存されたリーダーボードデータに追加するステップとをさらに含んでいてもよい。リーダーボードデータは、収集データ中の各ユーザのデータポイントをサンプリングするために、ラマー・ダグラス・ポーカーアルゴリズムを用いて圧縮されてもよく、圧縮データは、エクササイズクラス用のフォルダに保存されてもよく、各フォルダは、エクササイズクラスのセッション用の圧縮データを識別する少なくとも1つのフォルダを含む。
【0071】
様々な実施形態では、第1の場所で第1のユーザの1以上のパフォーマンスパラメータを決定するステップは、第1の場所で第1のユーザによって操作可能な第1の運動器具から少なくとも1つのパフォーマンスパラメータを感知するステップをさらに含む。第1の場所におけるディスプレイスクリーンは、選択したエクササイズクラス中に表示するための、ユーザが選択可能なコンテンツを有するグラフィカルユーザインターフェースをさらに含んでいてもよく、第1の場所におけるディスプレイスクリーン上に第2の場所における第2のユーザの1以上のパフォーマンスパラメータを動的に表示するステップは、第1のユーザのパフォーマンスパラメータ及び第2のユーザのパフォーマンスパラメータを第2のウィンドウに表示するステップをさらに含んでいてもよい。
【0072】
デジタルビデオ及びオーディオコンテンツ、並びに、第1のユーザのパフォーマンスパラメータ及び第2のユーザのパフォーマンスパラメータは、実質的にリアルタイムで出力されてもよい。本方法は、選択したエクササイズクラスに関連するデジタルビデオコンテンツ、オーディオコンテンツ、及びクラス参加者コンテンツを、デジタル通信ネットワークを介してサーバに要求するステップをさらに含み、クラス参加者コンテンツは、第2のユーザに関連するコンテンツを含む。本方法は、クラス参加者コンテンツ及び複数の第1のユーザパフォーマンスパラメータからリーダーボードを生成するステップと、リーダーボードが選択したエクササイズクラスの同じポイントにおけるパフォーマンスパラメータを表示するステップと、及びリーダーボードを第1の場所に表示するステップをさらに含んでもよい。クラス参加者コンテンツは、ライブ及びアーカイブクラス参加者コンテンツから構成されてもよく、リーダーボードは、第1のユーザのパフォーマンスパラメータに同期することにより、比較クラス参加者コンテンツを第1のユーザに提示できるようにしてもよい。
【0073】
上記の開示は、本発明を、開示された正確な形態または特定の使用分野に限定することを意図するものではない。このように、本開示に照らして、本明細書に明示的に記載されているかまたは示唆されているかにかかわらず、様々な代替の実施形態及び/または修正が可能であることが企図される。このように本開示の実施形態を説明してきたが、当業者であれば、従来のアプローチに対する利点や、本開示の範囲から逸脱することなく、形態及び詳細において変更を行うことができることを認識するであろう。したがって、本開示は、特許請求の範囲によってのみ限定される。
図1
図2
図3
図4
図5
図6
図7A
図7B
図8A
図8B
図8C
図9
図10
図11A
図11B
図11C
【国際調査報告】