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

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

▶ ラプソード プライベート リミティドの特許一覧

<>
  • 特開-マークされた物体のスピン推定 図1A
  • 特開-マークされた物体のスピン推定 図1B
  • 特開-マークされた物体のスピン推定 図2
  • 特開-マークされた物体のスピン推定 図3A
  • 特開-マークされた物体のスピン推定 図3B
  • 特開-マークされた物体のスピン推定 図3C
  • 特開-マークされた物体のスピン推定 図3D
  • 特開-マークされた物体のスピン推定 図4A
  • 特開-マークされた物体のスピン推定 図4B
  • 特開-マークされた物体のスピン推定 図4C
  • 特開-マークされた物体のスピン推定 図5
  • 特開-マークされた物体のスピン推定 図6
  • 特開-マークされた物体のスピン推定 図7
  • 特開-マークされた物体のスピン推定 図8
  • 特開-マークされた物体のスピン推定 図9
  • 特開-マークされた物体のスピン推定 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025022798
(43)【公開日】2025-02-14
(54)【発明の名称】マークされた物体のスピン推定
(51)【国際特許分類】
   G06T 7/20 20170101AFI20250206BHJP
   G06T 7/194 20170101ALI20250206BHJP
   G06T 7/00 20170101ALI20250206BHJP
【FI】
G06T7/20
G06T7/194
G06T7/00 350C
【審査請求】未請求
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024121006
(22)【出願日】2024-07-26
(31)【優先権主張番号】18/230,109
(32)【優先日】2023-08-03
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】524283279
【氏名又は名称】ラプソード プライベート リミティド
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100112357
【弁理士】
【氏名又は名称】廣瀬 繁樹
(74)【代理人】
【識別番号】100114018
【弁理士】
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100153729
【弁理士】
【氏名又は名称】森本 有一
(72)【発明者】
【氏名】ボタン イルディリム
(72)【発明者】
【氏名】サム ウィットコム
(72)【発明者】
【氏名】バトゥハン オカー
(72)【発明者】
【氏名】アリ エロル
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA06
5L096CA05
5L096CA14
5L096CA17
5L096EA03
5L096EA13
5L096EA15
5L096EA28
5L096EA39
5L096EA43
5L096FA34
5L096FA35
5L096FA62
5L096FA69
5L096GA10
5L096GA22
5L096GA34
5L096GA51
5L096HA02
5L096HA11
5L096JA11
5L096KA04
(57)【要約】
【課題】スピン推定システムは、画像キャプチャセンサであって、画像キャプチャセンサの視野内の物体の画像をキャプチャするように位置付けられ、構成される、画像キャプチャセンサを含み得る。
【解決手段】スピン推定システムは、物体のスピン特性を分析するために1つ以上の動作を実行するように構成され得る。動作は、物体の最小スピン運動に対応する画像キャプチャフレームレートを設定することと、物体の外面上に向きマーカを印刷することと、設定された画像キャプチャフレームレートで画像キャプチャセンサによって、物体の運動を開始した後に物体の画像をキャプチャすることとを含み得る。動作は、各画像内の物体を分離して、分離された物体画像を生成することを含み得る。動作は、分離された物体画像に基づいて、物体マーカセグメンテーションマップを生成することを含み得る。スピンレートおよびスピン軸は、深層学習手法を使用して物体マーカセグメンテーションマップに基づいて推定され得る。
【選択図】図1A
【特許請求の範囲】
【請求項1】
方法であって、
物体の最小スピン運動に対応する画像キャプチャフレームレートを設定することと、
向きマーカを前記物体の外面に印刷することと、
前記物体の運動を開始した後に、前記物体の前記最小スピン運動に対応する前記設定された画像キャプチャフレームレートを有する画像キャプチャセンサによって、前記物体の複数の画像をキャプチャすることと、
前記複数の画像の各画像内の前記物体を分離して、複数の分離された物体画像を生成することと、
前記複数の分離された物体画像に基づいて、物体マーカセグメンテーションマップを生成することと、
前記物体マーカセグメンテーションマップに基づいて、スピンレートおよびスピン軸を推定することと、
を含む、方法。
【請求項2】
前記画像キャプチャフレームレートは、少なくとも毎秒200フレームに設定される、請求項1に記載の方法。
【請求項3】
前記物体の前記外面上の前記向きマーカは、前記物体の前記外面上に重ねられた3次元直方体モデルに従って生成され、前記3次元直方体モデルの各面は、前記3次元直方体モデルの他の各面に対して一意のマーカパターンを含む、請求項1に記載の方法。
【請求項4】
前記3次元直方体モデルの前記面に含まれる各マーカパターンは、回転非対称である、請求項3に記載の方法。
【請求項5】
前記複数の画像の各画像内の前記物体を分離することは、前記複数の画像の各画像内に含まれる背景をフィルタリングするマスクを各画像に適用することを含む、請求項1に記載の方法。
【請求項6】
前記物体マーカセグメンテーションマップを生成することは、
前記複数の分離された物体画像に含まれる各分離された物体画像を2値化することと、
連続する2値化された物体マップの対を生成することと、を含む、請求項1に記載の方法。
【請求項7】
前記スピンレートおよび前記スピン軸を推定することは、
連続する2値化された物体マップの各対に対応する物体スピンを推定することと、
前記推定物体スピンのうちの1つ以上を外れ値スピン推定として識別することと、
前記外れ値スピン推定として識別されない前記推定物体スピンを前記推定スピンレートとして統合することと、
前記推定スピンレートに基づいて、前記スピン軸を推定することと、を含む、請求項6に記載の方法。
【請求項8】
連続する2値化された物体マップの各対に対応する前記物体スピンを推定することは、前記連続する2値化された物体マップの対を、物体スピンに従って注釈付けされた複数の現実世界画像またはシミュレーション環境において生成された複数の物体画像を使用して訓練された深層学習アルゴリズムに入力することを含む、請求項7に記載の方法。
【請求項9】
連続する2値化された物体マップの各対に対応する前記物体スピンを推定することは、順方向の連続する2値化された物体マップの各対に対応する第1の物体スピンを推定することと、逆方向の連続する2値化された物体マップの各対に対応する第2の物体スピンを推定することとを含む、請求項7に記載の方法。
【請求項10】
実行されたことに応答して、システムに動作を実行させる命令を記憶するように構成された1つ以上の非一時的コンピュータ可読記憶媒体であって、前記動作は、
物体の最小スピン運動に対応する画像キャプチャフレームレートを設定することと、
向きマーカを前記物体の外面に印刷することと、
前記物体の運動を開始した後に、前記物体の前記最小スピン運動に対応する前記設定された画像キャプチャフレームレートを有する画像キャプチャセンサによって、前記物体の複数の画像をキャプチャすることと、
前記複数の画像の各画像内の前記物体を分離して、複数の分離された物体画像を生成することと、
前記複数の分離された物体画像に基づいて、物体マーカセグメンテーションマップを生成することと、
前記物体マーカセグメンテーションマップに基づいて、スピンレートおよびスピン軸を推定することと、
を含む、1つ以上の非一時的コンピュータ可読記憶媒体。
【請求項11】
前記画像キャプチャフレームレートは、少なくとも毎秒200フレームに設定される、請求項10に記載の1つ以上の非一時的コンピュータ可読記憶媒体。
【請求項12】
前記物体の前記外面上の前記向きマーカは、前記物体の前記外面上に重ねられた3次元直方体モデルに従って生成され、前記3次元直方体モデルの各面は、前記3次元直方体モデルの他の各面に対して一意のマーカパターンを含む、請求項10に記載の1つ以上の非一時的コンピュータ可読記憶媒体。
【請求項13】
前記3次元直方体モデルの前記面に含まれる各マーカパターンは、回転非対称である、請求項12に記載の1つ以上の非一時的コンピュータ可読記憶媒体。
【請求項14】
前記複数の画像の各画像内の前記物体を分離することは、前記複数の画像の各画像内に含まれる背景をフィルタリングするマスクを各画像に適用することを含む、請求項10に記載の1つ以上の非一時的コンピュータ可読記憶媒体。
【請求項15】
前記物体マーカセグメンテーションマップを生成することは、
前記複数の分離された物体画像に含まれる各分離された物体画像を2値化することと、
連続する2値化された物体マップの対を生成することと、を含む、請求項11に記載の1つ以上の非一時的コンピュータ可読記憶媒体。
【請求項16】
前記スピンレートおよび前記スピン軸を推定することは、
連続する2値化された物体マップの各対に対応する物体スピンを推定することと、
前記推定物体スピンのうちの1つ以上を外れ値スピン推定として識別することと、
前記外れ値スピン推定として識別されない前記推定物体スピンを前記推定スピンレートとして統合することと、
前記推定スピンレートに基づいて、前記スピン軸を推定することと、を含む、請求項15に記載の1つ以上の非一時的コンピュータ可読記憶媒体。
【請求項17】
連続する2値化された物体マップの各対に対応する前記物体スピンを推定することは、前記連続する2値化された物体マップの対を、物体スピンに従って注釈付けされた複数の現実世界画像またはシミュレーション環境において生成された複数の物体画像を使用して訓練された深層学習アルゴリズムに入力することを含む、請求項16に記載の1つ以上の非一時的コンピュータ可読記憶媒体。
【請求項18】
連続する2値化された物体マップの各対に対応する前記物体スピンを推定することは、順方向の連続する2値化された物体マップの各対に対応する第1の物体スピンを推定することと、逆方向の連続する2値化された物体マップの各対に対応する第2の物体スピンを推定することとを含む、請求項16に記載の1つ以上の非一時的コンピュータ可読記憶媒体。
【請求項19】
スピン推定システムであって、
画像キャプチャセンサであって、前記画像キャプチャセンサの視野内の物体の画像をキャプチャするように位置付けられ、構成される、画像キャプチャセンサと、
1つ以上のプロセッサと、
実行されたことに応答して、前記スピン推定システムに動作を実行させる命令を記憶するように構成された1つ以上の非一時的コンピュータ可読記憶媒体と、を備え、前記動作は、
前記物体の最小スピン運動に対応する画像キャプチャフレームレートを設定することと、
向きマーカを前記物体の外面に印刷することと、
前記物体の運動を開始した後に、前記物体の前記最小スピン運動に対応する前記設定された画像キャプチャフレームレートを有する前記画像キャプチャセンサによって、前記物体の複数の画像をキャプチャすることと、
前記複数の画像の各画像内の前記物体を分離して、複数の分離された物体画像を生成することと、
前記複数の分離された物体画像に基づいて、物体マーカセグメンテーションマップを生成することと、
前記物体マーカセグメンテーションマップに基づいて、スピンレートおよびスピン軸を推定することと、
を含む、スピン推定システム。
【請求項20】
前記物体の前記外面上の前記向きマーカは、前記物体の前記外面上に重ねられた3次元直方体モデルに従って生成され、前記3次元直方体モデルの各面は、前記3次元直方体モデルの他の各面に対して一意のマーカパターンを含み、
前記3次元直方体モデルの前記面に含まれる各マーカパターンは、回転非対称である、
請求項19に記載のスピン推定システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、マークされた物体のスピン推定に関する。
【背景技術】
【0002】
移動物体は、その位置、発射速度、発射角度、スピンレート、スピン軸、および他の環境要因などの移動物体の特性によって表すことができる。移動物体は、ボールなどのスポーツで使用される物体を含んでもよい。移動物体の特性を評価することは、移動物体に作用する抗力および揚力に関する情報を提供することができ、これは移動物体の飛行経路への洞察を提供することができる。
【0003】
本開示において特許請求される主題は、任意の欠点を解決する実施形態、または上述したような環境においてのみ動作する実施形態に限定されない。むしろ、この背景は、本開示で説明されるいくつかの実施形態が実施され得る1つの例示的な技術領域を示すために提供されるにすぎない。
【発明の概要】
【0004】
一実施形態の一態様によれば、スピン推定システムは、画像キャプチャセンサであって、画像キャプチャセンサの視野内の物体の画像をキャプチャするように位置付けられ、構成される、画像キャプチャセンサを含み得る。スピン推定システムは、物体のスピン特性を分析するために1つ以上の動作を実行するように構成され得る。動作は、物体の最小スピン運動に対応する画像キャプチャフレームレートを設定することと、物体の外面上に向きマーカを印刷することと、設定された画像キャプチャフレームレートで画像キャプチャセンサによって、物体の運動を開始した後に物体の画像をキャプチャすることとを含み得る。動作は、各画像内の物体を分離して、分離された物体画像を生成することを含み得る。動作は、分離された物体画像に基づいて、物体マーカセグメンテーションマップを生成することを含み得る。スピンレートおよびスピン軸は、物体マーカセグメンテーションマップに基づいて推定され得る。
【0005】
実施形態の目的および利点は、少なくとも、特許請求の範囲において特に指摘される要素、特徴、および組合せによって実現および達成される。上記の一般的な説明および以下の詳細な説明の両方は、説明のためのものであり、特許請求される本発明を限定するものではないことが理解されるべきである。
【図面の簡単な説明】
【0006】
例示的な実施形態は、添付の図面を通して追加の具体性および詳細とともに記載および説明される。
図1A】本開示の少なくとも1つの実施形態による、スピン推定システムを含む環境の例示的な実施形態を示す。
図1B】本開示の少なくとも1つの実施形態による、スピン推定システムを含む環境の例示的な実施形態の第2の図を示す。
図2】本開示の少なくとも1つの実施形態による、スピン推定システムの背面図および正面図を示す。
図3A】本開示の少なくとも1つの実施形態による、スピン推定システムによって観察された物体の3次元モデルおよび物体に対応する3次元直方体モデルを示す。
図3B】本開示の少なくとも1つの実施形態による、3次元直方体モデルに基づくテクスチャ付き直方体を示す。
図3C】本開示の少なくとも1つの実施形態による、テクスチャ付き直方体に基づく開かれたマーカテクスチャを示す。
図3D】本開示の少なくとも1つの実施形態による、個々のマーカパターンを示す。
図4A】本開示の少なくとも1つの実施形態による、テクスチャ付き物体の例を示す。
図4B】本開示の少なくとも1つの実施形態による、テクスチャ付き物体に対応する2値マップの例を示す。
図4C】本開示の少なくとも1つの実施形態による、テクスチャ付き物体の所与の画像を強化するために実行され得る動作を示す。
図5】本開示の少なくとも1つの実施形態による、スピン推定システムに関連する動作のフロー図である。
図6】本開示の少なくとも1つの実施形態による、スピン推定システムに関連する動作を実行するように構成されたニューラルネットワークのフロー図である。
図7】本開示の少なくとも1つの実施形態による、スピン推定システムに含まれるリファイナアルゴリズムのフロー図である。
図8】本開示の少なくとも1つの実施形態による、スピン推定システムに含まれる画像強化アルゴリズムのフロー図である。
図9】本開示の少なくとも1つの実施形態による、スピン推定を実行する例示的な方法のフローチャートである。
図10】例示的なコンピュータシステムである。
【発明を実施するための形態】
【0007】
3次元空間内での飛行中に物体の軌道を測定することは、飛行中の物体の発射速度、発射角度、スピンレート、スピン軸、または任意の他の弾道特性などの移動関連特性、および/または環境要因に依存し得る。抗力または揚力など、飛行中に物体に作用する力は、物体の移動関連特性によって影響を受ける可能性がある。したがって、そのような移動関連特性の正確な測定は、物体の移動の改善された推定および/またはモデリングを容易にすることができる。しかしながら、物体は高速で移動する場合があり、これにより、物体に関する正確な詳細をキャプチャし、物体の移動関連特性をリアルタイムで測定することがより困難になる。
【0008】
本開示は、とりわけ、飛行中に物体のキャプチャされた画像を使用して物体のスピン軸およびスピンレートを測定するシステムおよび方法に関する。任意の所与の視点からの物体の向きが明確になるように、所定のマーカパターンを物体に適用することができる。所与の物体のスピンレートおよびスピン軸は、2つ以上の異なる向きからの物体の分析に依存するので、スピンレートおよびスピン軸を測定するためには、物体の異なるビューをカバーする少なくとも2つの画像が必要である。本開示によるスピン推定システムは、1つ以上の物体マーカセグメンテーションマップを生成することを含んでもよく、物体マーカセグメンテーションマップの対は、特定の例においてスピンレート推定およびスピン軸推定を独立して提供するために使用されてもよい。独立して提供されたスピンレート推定およびスピン軸推定を統合して、単一のスピンレート-軸推定を生成することができる。追加的または代替的に、3次元環境は、異なる発射パラメータを使用して物体飛行をシミュレートするために生成されてもよく、シミュレートされた物体飛行パラメータは、スピンレート-軸推定を実行するように構成された深層学習モデルのための訓練データセットとして使用されてもよい。推定精度を高めることによって推定結果を改良するために、飛行中の物体の画像および/またはスピンレート-軸推定に後処理強化アルゴリズムを適用することができる。
【0009】
本開示の実施形態は、添付の図面を参照して説明される。
【0010】
図1Aおよび図1Bは、本開示の少なくとも1つの実施形態によるスピン推定システム110を含む環境100の例示的な実施形態を示し、図1Aは環境100の第1のビューを示し、図1Bは環境100の第2のビューを示す。スピン推定システム110は、図1Aおよび図1Bに示されるような第1の線114および第2の線116によって境界付けられた視野などの視野内の画像をキャプチャするように配置および構成されたカメラ112または他の画像キャプチャセンサを含むことができる。
【0011】
いくつかの実施形態では、物体120を軌道122に沿って移動させる力を物体120に加えることができる。図1A図1Bとの間に示すように、アクター102は、物体120が軌道122に沿って目的地124に向かって移動するように、クラブ104をスイングすることによって物体120に力を加えてもよい。環境100は、アクター102およびクラブ104を含むものとして示されているが、環境は、アクター102またはクラブ104を含んでも含まなくてもよい。例えば、スピン推定システム110のカメラ112は、飛行中に物体120の画像をキャプチャするように配置されてもよい。言い換えれば、カメラ112は、カメラ112が軌道122の一部に沿って画像をキャプチャするように第1の線114および第2の線116が向けられるように配置されてもよい。
【0012】
図2は、本開示の少なくとも1つの実施形態による、スピン推定システム110の背面図200aおよび正面図200bを示す。いくつかの実施形態では、スピン推定システム110は、画像をキャプチャするように構成された任意のデバイス、システム、構成要素、または構成要素の集合であり得るカメラ112を含み得る。カメラ112は、例えば、レンズ、フィルタ、ホログラム、スプリッタ、または任意の他の構成要素などの光学要素と、画像が記録され得る画像センサとを含んでもよい。そのような画像センサは、入射光によって表される画像を電気信号に変換する任意のデバイスを含み得る。画像センサは、ピクセルアレイ(例えば、ピクセル要素のグリッド)に配列され得る複数のピクセル要素を含み得る。例えば、画像センサは、電荷結合素子(CCD)または相補型金属酸化膜半導体(CMOS)画像センサを含んでもよい。ピクセルアレイは、1:1、4:3、5:4、3:2、16:9、10:7、6:5、9:4、17:6などのアスペクト比、または任意の他の比を有する2次元アレイを含み得る。画像センサは、ピクセルアレイ上に光を集束させる種々の光学要素、例えば、レンズと光学的に整合されてもよい。例えば、8メガピクセル、15メガピクセル、20メガピクセル、50メガピクセル、100メガピクセル、200メガピクセル、600メガピクセル、1000メガピクセルなどの任意の数のピクセルが含まれてもよい。
【0013】
様々な他の構成要素も、画像キャプチャセンサ120および/または130に含まれ得る。そのような構成要素は、フラッシュもしくは他の光源、光拡散体、または物体を照明するための他の構成要素などの1つ以上の照明特徴を含んでもよい。いくつかの実施形態では、照明特徴は、移動物体が画像センサに近接しているとき、例えば、移動物体が画像センサの3メートル以内にあるときに、移動物体を照明するように構成され得る。
【0014】
これらおよび他の実施形態では、カメラ112は、最小フレームレート閾値以上で動作するように構成されてもよく、最小フレームレート閾値は、物体120のスピンレート範囲に基づいて設定される。例えば、典型的なゴルフゲームにおけるゴルフボールのスピンレートは、毎分500回転(RPM)~12000RPMの範囲であり得、毎秒200フレーム(FPS)のフレームレート未満で動作する任意のカメラは、物体120がエイリアシング効果に起因してスピンレート範囲の上端またはその付近でスピンする場合、物体120の画像を適切にキャプチャすることができない場合がある。
【0015】
物体120は、物体120およびカメラ112が動作する用途または設定に応じて、異なるスピンレートでスピンし得る。例えば、物体120は、物体120の運動に影響を与えるために機械的デバイスが使用される場合、より高いスピンレートでスピンし得、これは、物体120の画像をキャプチャするために使用されるカメラがより高いフレームレートで動作すべきであることを示し得る。物体120がカメラ112のキャプチャフレームレートよりも高いレートで回転する状況では、物体120が、カメラ112による画像キャプチャの間に360°を超えて回転する場合、エイリアシング効果が生じ得る。例えば、40°回転した所与の物体は、400°回転している所与の物体と同一に見える場合がある。したがって、カメラ112は、物体120の最大予測可能スピンレートよりも速いフレームレートで画像をキャプチャするように選択または構成され得る。
【0016】
いくつかの実施形態では、スピン推定システム110は、スピン推定システム110によってキャプチャされた画像を処理および分析するように構成されたコンピュータシステムを含むか、またはそれに通信可能に結合することができる。例えば、コンピュータシステムは、図5、6、7、または8に関連して更に詳細に説明されるような動作を実行してもよい。
【0017】
本開示の範囲から逸脱することなく、環境100またはスピン推定システム110に対して修正、追加、または省略が行われてもよい。例えば、記載された方法における異なる要素の指定は、本明細書に記載された概念を説明するのを助けることを意味し、限定するものではない。更に、環境100またはスピン推定システム110は、任意の数の他の要素を含んでもよく、または説明されるもの以外の他のシステムまたはコンテキスト内で実装されてもよい。
【0018】
図3Aは、本開示の少なくとも1つの実施形態による、スピン推定システムによって観察され得る物体の3次元モデル300と、物体に対応する物体メッシュモデル306とを示す。いくつかの実施形態では、3次元モデル300は、スピン推定システムが配備される可能性が高い1つ以上の所与の環境に基づいて、スピン推定システムによって典型的に観察される物体に基づいて生成されてもよい。例えば、スピン推定システムがゴルフ環境におけるゴルフボールのスピン特性を分析するために展開される可能性が高い場合、3次元モデル300は、ゴルフボールに基づいて成形およびサイズ決定され得る。追加または代替の例として、3次元モデル300は、サッカーボール、野球ボール、または任意の他の球状もしくは回転楕円体物体に基づいて成形およびサイズ決定され得る。
【0019】
3次元直方体モデル302は、3次元モデル300に基づいて生成されてもよく、3次元直方体モデル302は、囲まれた物体モデル304として3次元モデル300を囲むようなサイズである。囲まれた物体モデル304は、物体メッシュモデル306の基礎であり得る。
【0020】
3次元モデル300は球状モデルとして示されているが、3次元モデル300は、追加的または代替的に、卵形または他の丸い3次元形状としてモデル化されてもよい。これらおよび他の実施形態では、3次元直方体モデル302は、図3Aに示すような球形ではなく卵形に対応するような形状およびサイズであってもよい。例えば、3次元直方体モデル302は、他の辺よりも長いまたは短い1つ以上の辺を含んでもよい。
【0021】
図3Bは、本開示の少なくとも1つの実施形態による、物体メッシュモデル306に基づくテクスチャ付き直方体308を示す。いくつかの実施形態では、テクスチャ付き直方体308は、マーカパターン310、312、および314が物体メッシュモデル306の外面上に印刷され得るように生成されてもよい。追加的または代替的に、テクスチャ付き直方体308は、テクスチャ付き直方体308上に示されていない第4のマーカパターン、第5のマーカパターン、または第6のマーカパターンを含んでもよい。マーカパターン310、312、および314の各々は、回転非対称であってもよく、マーカパターン310、312、および314の各々とは異なるパターンであってもよく、その結果、マーカパターン310、312、および314は、テクスチャ付き直方体308の向きにかかわらず、互いに視覚的に区別される。
【0022】
図3Cは、本開示の少なくとも1つの実施形態による、テクスチャ付き直方体308に基づく開かれたマーカテクスチャ320を示す。開かれたマーカテクスチャ320は、互いに非対称的に異なる1つ以上のマーカパターン321~326を含んでもよい。いくつかの実施形態では、開かれたマーカテクスチャ320は、立方体または直方体形状を形成するように開かれたマーカテクスチャ320を折り畳むことによってなど、テクスチャ付き直方体308を形成するためのテンプレートであってもよい。
【0023】
いくつかの実施形態では、開かれたマーカテクスチャ320はサイズ変更することができ、またはマーカパターン321~326のうちの1つ以上を変更して、開かれたマーカテクスチャ320を異なる物体形状および寸法に調整することができる。マーカパターン321~326を設計し、スケーリングし、所与の物体に適用することは、マーカパターン321~326のうちの1つ以上を物体の丸い表面に直接適用するよりも、開かれたマーカテクスチャ320を使用して、より容易であり、より理解可能であり得る。追加的または代替的に、開かれたマーカテクスチャ320を使用してマーカパターン321~326を生成することは、典型的には平面印刷デバイスを使用する既存のマーカ印刷プロセスに組み込まれてもよい。
【0024】
図3Dは、本開示の少なくとも1つの実施形態による、個々のマーカパターン321~326を示す。いくつかの実施形態において、マーカパターン321~326の各々は、マーカパターン321~326が印刷され得る物体の寸法に基づいてもよく、または基づいていなくてもよい単位寸法を有するピクセル330内に形成され得る。マーカパターン321~326を形成するために、1つ以上のドット335がピクセル330内に配置されてもよい。ピクセル330は、マーカパターン321~326の各々の回転対称性を評価するために回転され得る。
【0025】
図4Aは、本開示の少なくとも1つの実施形態による、第1の視点402、第2の視点404、第3の視点406、および第4の視点408からのテクスチャ付き物体400の例を示す。テクスチャ付き物体400は、図3B図3Dに関連して説明されたマーカパターン321~326と同一または同様であり得る1つ以上のマーカパターン410が、テクスチャ付き物体120の外面上に印刷された、図1Aおよび図1Bに関連して説明された物体400を含み得る。マーカパターン410の各々は、回転非対称であり得、テクスチャ付き物体400上に印刷された他のマーカパターン410とは異なり得るので、第1の視点402および第2の視点404などの任意の2つの視点は、互いに視覚的に異なり得る。
【0026】
図4Bは、本開示の少なくとも1つの実施形態による、テクスチャ付き物体400の第1の視点412、第2の視点414、第3の視点416、および第4の視点418にそれぞれ対応する2値マップの第1の視点402、第2の視点404、第3の視点406、および第4の視点408の例を示す。いくつかの実施形態では、第1、第2、第3、および第4の視点412、414、416、および418は、テクスチャ付き物体400の第1、第2、第3、および第4の視点402、404、406、および408のネガティブ画像であってもよい。これらおよび他の実施形態では、第1、第2、第3、および第4の視点412、414、416、および418に対応するネガティブ画像は、図5の動作500に関連して説明されるような2値化アルゴリズム504によって出力される2値マップ506などの2値画像を表してもよい。テクスチャ付き物体400は、実質的に明るい色(例えば、白色)を含み得るので、テクスチャ付き物体400自体は、典型的には、高いピクセル密度を含み得る。比較すると、テクスチャ付き物体400の表面上のマーカパターン410は、マーカパターン410をテクスチャ付き物体400の外面の残りの部分からより視覚的に対比させるために、より暗い色(例えば、黒色)を含んでもよい。第1、第2、第3、および第4の視点412、414、416、および418に示される2値マップを生成するためにテクスチャ付き物体400に対してネガティブ演算を実行することは、マーカパターン410に対応するテクスチャ付き物体400の表面の部分に関連付けられたピクセル値を増加させ、テクスチャ付き物体400の表面上のマーカパターン410の位置のより正確な分析を容易にすることができる。
【0027】
図4Cは、本開示の少なくとも1つの実施形態による、テクスチャ付き物体の画像420を強化するために実行され得る動作を示す。いくつかの実施形態では、テクスチャ付き物体の画像420は、図4Aに関連して説明されるテクスチャ付き物体400の第1の視点402、第2の視点404、第3の視点406、または第4の視点408の画像を含んでもよい。画像420は、図7の動作700に関連して説明されるような物体画像702、または図8の動作800に関連して説明されるような物体画像802を表し得る。画像420は、テクスチャ付き物体のサイズ変更された画像421を生成するために拡大されてもよく、これは、図8の動作800に関連して説明されるサイズ変更された物体806に対応してもよい。テクスチャ付き物体は、通常、テクスチャ付き物体の画像400をキャプチャしたカメラに対して飛行中またはそうでなければ移動しているので、画像フレーム間のテクスチャ付き物体のサイズは一貫していない場合がある。したがって、テクスチャ付き物体のキャプチャされた画像のうちの1つ以上は、サイズ変更された画像421のように拡大または縮小されて、画像のフレームの各々におけるテクスチャ付き物体のサイズを一致させることができる。
【0028】
より高いピクセル値を含むマーカパターン430がより容易に分析されるように、ネガティブ画像422を生成するために、サイズ変更された画像421にネガティブ演算が適用され得る。いくつかの実施形態では、ネガティブ画像422は、図8の動作800に関連して説明されるようなネガティブ物体810に対応し得る。いくつかの実施形態では、伸張演算をネガティブ画像422に適用して伸張された画像423を形成することができ、これは、ネガティブ画像422のエッジに沿った細部の歪みを除去する、図8の動作800に関連して説明した伸張された物体814に対応することができる。伸張演算は、伸張された画像423内の視覚的アーチファクト432の形成をもたらし得るので、円形マスキング演算が、視覚的アーチファクト432をフィルタリングし、マスクされた画像424内の物体およびマーカパターン430の鮮明度に影響を及ぼすことなく画像の背景434が除去されたマスクされた画像424を生成するために適用され得る。いくつかの実施形態では、マスクされた画像424は、図8の動作800に関連して説明されるようなマスクされた物体818に対応し得る。
【0029】
いくつかの実施形態では、マスクされた画像424にコントラスト演算を適用して、マスクされた画像424に示された物体の表面特徴またはマーカパターン430のコントラストを増大させることができる。これらおよび他の実施形態では、図8の動作800に関連して説明したように、ヒストグラム等化された物体822に対応し得るヒストグラム等化された画像425を生成するために、ヒストグラム等化アルゴリズムが使用され得る。追加的または代替的に、ヒストグラム等化アルゴリズムは、図8の動作800に関連して説明したような適応2値化演算824の出力に対応し得る簡略化された画像426を生成するために、ヒストグラム等化された画像425に含まれる詳細を除去する適応2値化構成要素を含み得る。
【0030】
簡略化された画像426は、強化された画像427として強化動作を介して強化され得る。いくつかの実施形態では、強化された画像427は、図7の動作700に関連して説明したような強化された物体画像708、または図8の動作800に関連して説明したような強化物体828に対応し得る。図7に関して説明した極変換710などの極変換演算を強化された画像427に適用して、強化された画像427の回転基準点を識別し、回転基準点に基づいて極画像428を生成することができる。いくつかの実施形態では、極画像428は、図7の動作700に関連して説明された極画像712に対応し得る。
【0031】
図5は、本開示の少なくとも1つの実施形態による、改良されたスピンレート-軸推定526の生成に関連するスピン推定システムによって実行される動作500のフロー図である。スピン推定システムは、図1A図1B、および図2に関連して上述したように、物体画像502を取得するように構成されてもよい。動作500は、物体画像502のうちの2つ以上に基づいて、改良されたスピン軸-レート推定526を生成するために実行され得る。
【0032】
スピン推定システムによってキャプチャまたは他の方法で取得された物体画像502は、物体画像502の各々に関連付けられた対応する2値マップ506を生成するために、2値化アルゴリズム504への入力として使用され得る。いくつかの実施形態では、2値化アルゴリズム504は、取得された物体画像502を対応する2値マップ506に変換するために、物体画像502の各々に対してサイズ変更演算、ネガティブ演算、伸張演算、マスキング演算、または任意の他の演算を実行することを含み得る。
【0033】
2値マップ506は、物体画像502がキャプチャされた物体の飛行に対応する時系列順または連続順に編成され得る。言い換えれば、2値マップ506は、物体が、時系列にまたは連続して編成された2値マップ506の各々を介して、その飛行経路をたどるように観察され得るようにソートされ得る。2値マップ506の編成されたシリーズにおいて、連続する2値マップの各対は、編成されたシリーズの順方向に対にされることに応答して(すなわち、第1のキャプチャされた物体画像に対応する第1の2値マップから、最後のキャプチャされた物体画像に対応する最後の2値マップへと見られることに応答して)順方向連続2値マップ508として、または編成されたシリーズの逆方向に対にされることに応答して逆方向連続2値マップ510として識別され得る。N個の物体画像502を含む物体画像の所与のセットについて、順方向連続2値マップ508の数はN-1であり得、逆方向連続2値マップ510の数もまたN-1であり得る。
【0034】
順方向連続2値マップ508および逆方向連続2値マップ510は、回転推定アルゴリズム512への入力として使用されて、順方向連続2値マップ508の各対および逆方向連続2値マップ510の各対について、対応するスピンレート推定およびスピン軸推定514を生成することができる。いくつかの実施形態では、回転推定アルゴリズム512は、図6に関連して説明した動作600と同じまたは同様の動作を使用して実行することができる。N-1個の順方向連続2値マップ508およびN-1個の逆方向連続2値マップ510が回転推定アルゴリズム512に入力され得るので、所与のスピンレート推定およびスピン軸推定が連続2値マップの各対について生成され得るので、スピンレート推定およびスピン軸推定514の数は2(N-1)であり得る。
【0035】
いくつかの実施形態では、スピンレート推定およびスピン軸推定514は、スピンレート推定およびスピン軸推定514の各々を分析し、2(N-1)スピンレート推定およびスピン軸推定514のセットから、スピンレート推定およびスピン軸推定514の残りと一致しない外れ値推定を除去する外れ値除去アルゴリズム516を通され得る。これらおよび他の実施形態では、所与のスピンレート推定およびスピン軸推定は、スピンレートまたはスピン軸が所与の閾値を超えてそれぞれのスピンレートまたはそれぞれのスピン軸と異なる場合、外れ値推定と見なされてもよい。連続するスピンレート推定成分またはスピン軸推定成分間の大きな差は、アルゴリズム計算誤差、不十分な画像2値化もしくは他の画像処理問題、または任意の他の理由などにより、連続する推定成分の一方または両方が誤って計算されたことを示す場合がある。追加的または代替的に、特定のスピンレート推定およびスピン軸推定は、第1のスピンレート推定およびスピン軸推定と第2のスピンレート推定およびスピン軸推定との間にあってもよく、第1のスピンレート推定およびスピン軸推定と第2のスピンレート推定およびスピン軸推定とは互いに対して一貫しているが、第1のスピンレート推定およびスピン軸推定と第2のスピンレート推定およびスピン軸推定とに対して外れ値と見なされてもよい。これらおよび他の状況では、特定のスピンレート推定およびスピン軸推定は、外れ値除去アルゴリズム516によって外れ値推定としてラベル付けされ得るが、第1のスピンレート推定およびスピン軸推定ならびに第2のスピンレート推定およびスピン軸推定は、外れ値推定としてラベル付けされない。
【0036】
いくつかの実施形態では、統合アルゴリズム520に入力されるスピンレート推定およびスピン軸推定518の数はKであってもよく、2(N-1)スピンレート推定およびスピン軸推定514のうちの1つ以上は、外れ値除去アルゴリズム516によってデータセットから除去されてもよいため、Kは2(N-1)以下である。外れ値除去アルゴリズム516によって出力されたK個のスピンレート推定およびスピン軸推定518は、統合アルゴリズム520に入力されて、最終スピンレート-軸推定522を決定することができ、最終スピンレート-軸推定522は、物体画像502がキャプチャされた物体の全体的なスピンレート推定および全体的なスピン軸推定を提供する。
【0037】
最終的なスピンレート-軸推定522および1つ以上の物体画像502は、取得された入力に基づいて改良されたスピンレート-軸推定526を生成するように構成されたリファイナアルゴリズム524によって取得され得る。いくつかの実施形態では、リファイナアルゴリズム524を使用して改良されたスピンレート-軸推定526を決定することは、取得された物体画像502を強化することと、最終スピンレート-軸推定522をベースラインまたは初期値として用いてスピンレート-軸推定の更新値を決定することとを伴い得る。物体画像502の強化、および、リファイナアルゴリズム524を使用して改良されたスピンレート-軸を見つけることは、図7に関連して説明された動作700と同じまたは類似の動作に従って実行されてもよい。
【0038】
本開示の範囲から逸脱することなく、動作500に対して修正、追加、または省略が行われ得る。例えば、記載された方法における異なる要素の指定は、本明細書に記載された概念を説明するのを助けることを意味し、限定するものではない。更に、動作500は、任意の数の他の要素を含んでもよく、または説明されるもの以外の他のシステムまたはコンテキスト内で実装されてもよい。
【0039】
図6は、本開示の少なくとも1つの実施形態による、スピン推定システムに関連する動作を実行するように構成されたニューラルネットワーク600の動作のフロー図である。いくつかの実施形態では、スピン推定システムは、深層学習、機械学習、ニューラルネットワーク、またはニューラルネットワーク600などの任意の他の人工知能システムを使用して実装されてもよい。スピン推定システムとともにニューラルネットワーク600または任意の他の人工知能システムを使用することは、スピンレート642およびスピン軸622など、分析された物体に関連する1つ以上の運動パラメータを決定することを容易にし得る。
【0040】
ニューラルネットワーク600の動作は、ニューラルネットワーク600によって分析されている物体の1つ以上の画像に対応する1つ以上の2値マップ602を取得することを伴い得る。いくつかの実施形態では、2値マップ602は、図4Bに表されるネガティブ画像を含んでもよく、図5の動作500に関連して説明される2値マップ506と同一または同様であってもよい。2値マップ602に含まれる画像は、マルチチャネルデータ604を生成するためにチャネルごとに連結されてもよく、マルチチャネルデータ604は、入力データの単一ストリームとして特徴抽出器ニューラルネットワーク606によって取得されてもよい。いくつかの実施形態では、マルチチャネルデータ604は、2つ以上の連続フレームから描写される物体の2つ以上のビューを表し得、それは、物体の周りの回転量、回転軸、他の運動学的パラメータ、またはそれらの何らかの組合せを決定することを容易にする情報を含み得る。
【0041】
特徴抽出器ニューラルネットワーク606は、重み行列に従ってマルチチャネルデータ604を処理することによって特徴マップ608を生成するように構成され得、重み行列の要素は、スピンレート642およびスピン軸622などの所与の出力を決定するためのマルチチャネルデータ604のそれぞれの要素の重要性を示し得る。いくつかの実施形態では、特徴マップ608は、特徴抽出器ニューラルネットワーク606によって行列として出力され得、次いで、行列は、N次元特徴ベクトル610に平坦化され得る。N次元特徴ベクトル610は、N次元特徴ベクトル610の要素を処理し、スピン軸成分614および回転成分616を含む4次元(4D)ベクトルを出力するように構成され得る、ニューラルネットワーク600の全結合層612を通過させられ得る。例えば、所与の4Dベクトルは、図6に示すように、スピン軸成分614を表す所与の物体のスピン軸に関連する3つのベクトル要素と、回転成分616を表す所与の物体の回転に関連する1つのベクトル要素とを含むことができる。
【0042】
いくつかの実施形態では、スピン軸成分614は、推定されたスピン軸ベクトルを表す単位ベクトル622を出力するように構成され得る正規化プロセス618に入力され得る。追加的または代替的に、回転成分616は、ラジアン単位で測定され、0ラジアンから2πラジアンに及ぶ回転推定628を出力するように構成され得るスケーリングプロセス620に入力され得る。
【0043】
いくつかの実施形態では、ニューラルネットワーク600は、推定されたスピン軸値および回転推定628を表す単位ベクトル622と、グラウンドトゥルーススピン軸値624のそれぞれのセットおよびグラウンドトゥルース回転値626のそれぞれのセットとの間の平均二乗誤差(MSE)損失を決定することによって訓練または改善され得る。スピン軸MSE損失630は、単位ベクトル622とグラウンドトゥルーススピン軸値624のセットに含まれる対応するスピン軸値との間の差に基づいて計算され得、回転MSE損失632は、回転推定628とグラウンドトゥルース回転値626のセットに含まれる対応する回転値との間の差に基づいて計算され得る。スピン軸MSE損失630および回転MSE損失632は、単位ベクトル622および回転推定628に対応する推定値と、グラウンドトゥルーススピン軸値624のセットおよびグラウンドトゥルース回転値626のセットにそれぞれ対応するグラウンドトゥルース値との間の総差を表し得る最終総損失636を計算するために、加算プロセス634において処理され得る。最終総損失636は、重み更新オプティマイザ638に送信されてもよく、重み更新オプティマイザ638は、特徴抽出器ニューラルネットワーク606または/および完全結合層612に適用される重み行列を更新するように構成されてもよく、その結果、続いて決定される単位ベクトル622または回転推定628は、より正確であり、対応するグラウンドトゥルース値により近くなり得る。
【0044】
本開示の範囲から逸脱することなく、ニューラルネットワーク600に対して修正、追加、または省略が行われ得る。例えば、記載された方法における異なる要素の指定は、本明細書に記載された概念を説明するのを助けることを意味し、限定するものではない。更に、ニューラルネットワーク600は、任意の数の他の要素を含んでもよく、または説明されるもの以外の他のシステムまたはコンテキスト内で実装されてもよい。
【0045】
図7は、本開示の少なくとも1つの実施形態による、スピン推定システムに含まれるリファイナアルゴリズム700のフロー図である。リファイナアルゴリズム700は、図5に関連して説明したリファイナアルゴリズム524などを用いて、1つ以上の取得された物体画像対および初期スピンレート-軸推定に基づいて、改良されたスピンレート-軸推定を生成するように実装され得る。
【0046】
いくつかの実施形態では、1つ以上の物体画像702を画像強化アルゴリズム706への入力として使用して、対応する数の強化された物体画像708を出力することができ、画像強化アルゴリズム706は、図8の動作800と同じまたは同様の動作に従って実行することができる。強化された物体画像708は、図4Cに関連して説明した強化された画像427と同じまたは同様であってもよい。極変換710は、粗いスピンレート-軸推定704に基づいて、強化された物体画像708に対して実行され得る。粗いスピンレート-軸推定704は、座標(cx,cy)によって表され得る極変換710の中心に対する初期推測を見つけるために使用され得、極変換710の中心は、強化された画像708が回転され得る基準点を表す。強化された画像708に極変換710を適用することは、(i,j)によって表される間隔量だけ中心の初期推測をシフトすることと、強化された画像708のデカルト座標を極座標に変換することとを伴い得る。したがって、強化された画像708は、極画像712に平行移動および変換されてもよい。
【0047】
単一の改良されたスピンレート-軸推定730を識別することは、複数の強化された画像708を単一のスピンレート-軸推定に組み合わせることを伴い得る。したがって、相互相関プロセス714を極画像712に適用して、極画像712間の相関結果716を決定することができる。相関結果716は、相関ピークの各々の高さに基づいて極画像712がどの程度類似しているかを示す、相関ピークによって表される極画像712間の類似性の定量的インジケータを提供することができる。相関結果716に基づいて、ピーク検出アルゴリズム718を適用して、最高相関ピーク720を識別することができる。
【0048】
いくつかの実施形態では、ピーク検出アルゴリズム718は、各反復が極変換710のシフト対(i,j)として表される異なる間隔量を適用する反復処理を含むことができる。例えば、所与の強化された画像708の所与の中心に対する平行移動距離を表し得るシフト対は、下側境界i、上側境界i、下側境界j、および上側境界jの間の範囲であり得る。この例および他の例では、(i,j)シフト対の合計63個の組合せが可能であり得るように、i値は-4から4の範囲であり得、j値は-3から3の範囲であり得る。反復ループ722は、シフト対の63個の組合せの各々を極変換710への入力として適用することを伴い得る。各反復ループ722中に、異なるシフト対のi値またはj値の間の差に基づいて、異なる相関結果716および異なる相関ピーク720が出力され得る。これらおよび他の実施形態では、特定のシフト対ならびに特定のシフト対に対応する相関結果716および相関ピーク720は、最大値を有する特定のシフト対に対応する相関ピーク720に基づいて選択されてもよい。これらおよび他の実施形態では、ピーク検出プロセスの単一の反復で使用される粗いスピンレート-軸推定704が最も正確な結果を提供する場合もあれば提供しない場合もあるので、最高相関ピーク720を反復して識別することは、結果を改善する場合がある。
【0049】
いくつかの実施形態では、反復ループ722からの最高相関ピーク720の識別は、バッファ724によって容易にされ得る。バッファ724は、各反復からの相関ピーク720と、取得された相関ピーク720の各々に関連する相関結果716とを取得し、記憶するように構成され得る。例えば、相関ピーク720に対応する値、ピーク場所、または相関ピーク720に関連付けられた極変換中心は、バッファ724に記憶され得る。
【0050】
バッファ724に含まれる最高相関ピーク720は、相関ピーク場所720を出力することを伴う第2のピーク検出プロセス726において使用され得る。いくつかの実施形態では、第2のピーク検出プロセス726は、デカルト座標形式(cx+i,cy+j)を有する極変換728の中心の決定を容易にすることができる。これらおよび他の実施形態では、極変換728の中心は、最高相関ピーク720に対応する座標を識別し、最高相関ピーク720の座標に対応する距離だけ極画像712をシフトすることによって決定され得る。
【0051】
極変換728の中心および最高相関ピークの場所(相関結果718におけるピークの場所)は、スピンレート-軸変換プロセス730に入力されて、改良されたスピンレート-軸732を決定することができる。いくつかの実施形態では、スピンレート-軸変換プロセス730は、デカルト座標系内の所与の物体に対応する改良されたスピンレート-軸732を識別するために、極座標系からデカルト座標系に極変換728の中心および最高相関ピーク720の場所をマッピングすることを含むことができる。これらおよび他の実施形態では、極座標系における最高相関ピーク730の場所は、デカルト座標系における所与の物体の回転量に対応してもよく、極変換728の中心は、デカルト座標系における所与の物体の回転軸に対応してもよい。
【0052】
図8は、本開示の少なくとも1つの実施形態による、スピン推定システムに含まれる画像強化アルゴリズム800のフロー図である。画像強化アルゴリズム700は、1つ以上の取得された物体画像から強化された物体画像を生成するために実装され得る。いくつかの実施形態では、画像強化アルゴリズム700は、図4Cに関連して説明したように、サイズ変更された画像421、ネガティブ画像422、伸張された画像423、マスクされた画像424、ヒストグラム等化された画像425、簡略化された画像426、または強化された画像427のうちの1つ以上を生成することを容易にすることができる。画像強化アルゴリズム800の説明における物体への任意の参照は、物体の画像を参照するものとして解釈され得る。例えば、サイズ変更された物体806、ネガティブ物体810、伸張された物体814、マスクされた物体818、ヒストグラム等化された物体822、および強化された物体828は、それぞれ、物体画像802がキャプチャされた物体自体に対して行われている物理的な変更ではなく、サイズ変更された物体画像、ネガティブ物体画像、伸張された物体画像、マスクされた物体画像、ヒストグラム等化された物体画像、および強化された物体画像を指すことができる。
【0053】
画像強化アルゴリズム800は、サイズ変更された物体806を出力するサイズ変更アルゴリズム804への入力として物体画像802を取得し得る。物体画像802は、図5に関連して説明した物体画像502または図7に関連して説明した物体画像702と同じまたは同様であってもよい。追加的または代替的に、物体画像802は、図4Cに関連して説明される画像420と同一または類似であってもよい。
【0054】
いくつかの実施形態では、サイズ変更アルゴリズム804は、基準半径に従って物体画像802を同じまたは類似のサイズに拡大または縮小することができる。基準半径よりも小さい半径を有する第1の物体を描写する第1の所与の物体画像802は、第1の物体の半径が所与の閾値内で基準半径と同一または類似するように拡大され得、一方、基準半径よりも大きい半径を有する第2の物体を描写する第2の所与の物体画像802は、それに応じて縮小され得る。
【0055】
サイズ変更された物体806の外面上にインプリントされた1つ以上のマーカパターンに対応するピクセル値を増加させるために、サイズ変更された物体806の各々にネガティブ演算808を適用することができ、それにより、物体のスピンレートおよびスピン軸に対するマーカパターンの分析がより正確になる。いくつかの実施形態では、ネガティブ演算808は、サイズ変更された物体806に含まれるピクセルの各ピクセル値を最大ピクセル値から減算して、物体の対応するネガティブ画像を生成することを伴い得る。ネガティブ演算808によって生成されたサイズ変更された物体806のネガティブ画像は、高いピクセル値を含んでいたサイズ変更された物体806のセクションに対応する低いピクセル値を含むことができ、一方、サイズ変更された物体806が低いピクセル値を含んでいた場合、ネガティブ画像のセクションは高いピクセル値を含む。サイズ変更された物体806上にインプリントされたマーカパターンは、典型的には、より暗い色を含み、より暗い色は、典型的には、より低いピクセル値と関連付けられるので、ネガティブ演算808は、サイズ変更された物体806上にインプリントされたマーカパターンのピクセル値を増加させ、そのようなマーカパターンの分析を促進し得る。
【0056】
伸張演算812は、伸張された物体814を生成するために、ネガティブ演算808によって出力されたネガティブ物体810に適用されてもよい。いくつかの例では、物体画像802の全体的なサイズ、物体画像802の全体的な形状、またはマーカパターンの部分の位置など、物体画像802内のエッジ付近に含まれる詳細は、サイズ変更アルゴリズム804またはネガティブ演算808による処理の後にネガティブ物体810の中心付近に現れるそのような詳細に対して、物体画像802のエッジに沿って歪められ得る。伸張演算812は、サイズ変更アルゴリズム804またはネガティブ演算808によって引き起こされるこれらおよび他の歪み効果を除去または低減するために適用され得る。
【0057】
いくつかの実施形態では、伸張された物体814は、伸張演算812によって生成された任意の視覚的アーチファクトを除去するために、円形マスキング演算816およびヒストグラム等化演算820によって取得され得る。円形マスキング演算816は、図4Cに示すように、伸張された画像423とマスクされた画像424との間の伸張された物体814に含まれる背景の詳細をフィルタリングすることを容易にするマスクを伸張された物体814に適用することができる。これらおよび他の実施形態において、ヒストグラム等化演算820は、マスクされた物体818のコントラストを増加させて、図4Cに示されるように、マスクされた画像424とヒストグラム等化された画像425との間のヒストグラム等化された物体822を生成し得る。いくつかの実施形態では、ヒストグラム等化演算820の後に、ヒストグラム等化された画像425と簡略化された画像426との間に示されるように、ヒストグラム等化された物体822を簡略化することを含む適応2値化演算824が続いてもよい。
【0058】
ヒストグラム等化された物体822は、適応2値化演算824を介して簡略化されている可能性があり、伸張された物体814のうちの1つ以上は、強化された物体828を生成するために、AND演算826によって取得され得る。いくつかの実施形態では、AND演算826は、2値マップに含まれる各ピクセルが「1」または「0」のピクセル値を有する2値マップを出力することを伴い得る。AND演算826は、伸張された物体814と適応2値化演算824によって出力された2値マップとをピクセルごとに比較し、伸張された物体814と適応2値化演算824によって出力された2値マップとの間の比較に基づいて、伸張された物体814に対応するピクセル値を修正することができる。例えば、所与の伸張された物体814のピクセルに対応する所与のピクセル値は、適応2値化演算824によって出力された2値マップの対応するピクセルのピクセル値が「0」のピクセル値を有するという決定に応答して、「0」値に変換され得る。追加または代替の例として、所与の伸張された物体814のピクセルに対応する所与のピクセル値は、2値マップの対応するピクセルのピクセル値が「1」のピクセル値を有すると決定することに応答して、その元のピクセル値から修正されないままであり得る。強化された物体828は、より容易に分析される物体画像802のバージョンを表し得る。例えば、強化された物体828は、物体画像802が物体画像702と同一または類似であることを前提として、図7の動作700に関連して説明された強化された画像708と同一または類似であり得る。いくつかの実施形態では、改良されたスピンレート-軸推定730に関連して説明したように、強化された物体828を使用して、物体画像802が基づく物体のスピンレート-軸を推定することができる。
【0059】
図9は、本開示の少なくとも1つの実施形態によるスピン推定を実行する例示的な方法900のフローチャートである。方法900は、任意の適切なシステム、装置、またはデバイスによって実行され得る。例えば、図1のスピン推定システム110に対応する1つ以上のコンピュータシステムまたはソフトウェアモジュールは、方法900に関連する1つ以上の動作を実行することができる。別個のブロックで示されているが、方法900のブロックのうちの1つ以上に関連付けられたステップおよび動作は、特定の実装形態に応じて、追加のブロックに分割されるか、より少ないブロックに組み合わされるか、または削除され得る。
【0060】
方法900は、ブロック902において開始することができ、ここで、物体の最小スピン運動に対応する画像キャプチャフレームレートが設定され得る。いくつかの実施形態では、画像キャプチャフレームレートは、最小フレームレート閾値以上で動作するように構成されてもよく、最小フレームレート閾値は、物体が典型的に関与し得る活動によって決定されるような物体のスピンレート範囲に基づいて設定される。例えば、典型的なゴルフゲームにおけるゴルフボールのスピンレートは、500RPM~12000RPMの範囲であり得、200FPSのフレームレート未満で動作する任意のカメラは、物体がエイリアシング効果に起因してスピンレート範囲の上端またはその付近でスピンする場合、物体の画像を適切にキャプチャすることができない場合がある。したがって、画像キャプチャフレームレートは、少なくとも200FPSに設定され得る。
【0061】
ブロック904において、向きマーカを物体の外面に印刷することができる。物体の外面上の向きマーカは、物体の外面上に重ねられた3次元直方体モデルに従って生成されてもよく、3次元直方体モデルの各面は、図3A図3Dに関連して説明したように、3次元直方体モデルの他の各面に対して一意のマーカパターンを含む。3次元直方体モデルの各面上のマーカパターンは各々、物体の運動中の物体の向きが物体の移動および回転中の任意の点で決定され得るように、回転非対称であり得る。
【0062】
ブロック906において、物体の画像は、物体の運動を開始した後にキャプチャされ得る。画像は、ブロック902で設定された画像キャプチャフレームレートを有する画像キャプチャセンサによってキャプチャされ得る。
【0063】
ブロック908において、物体は、ブロック906においてキャプチャされた画像の各々において検出され、分離された物体画像を生成するために分離され得る。いくつかの実施形態では、画像の各々に含まれる物体を検出することは、ニューラルネットワークベースの物体検出器を使用して、特定のスポーツゲームで使用されるボール物体、特定のスポーツゲームで使用される他の用具、または任意の他の物体など、画像に含まれる可能性が高い物体に関する1つ以上の特徴を認識することを伴い得る。追加的または代替的に、円形ハフ変換を適用して、物体に対応する可能性が高い画像に含まれる円形形状を検出するなど、他のデジタル画像処理技術を使用することができる。追加的または代替的に、3フレーム差分アルゴリズムなどの運動変化検出アルゴリズムが、画像の3つ以上のフレーム間の物体の移動に対応する変化に基づいて画像の残りから物体を検出するために適用され得る。これらおよび他の実施形態において、検出された物体は、画像フレームから検出された物体を切り取ることによって分離されてもよい。いくつかの実施形態では、画像は、図8の動作800に従うなど、画像強化プロセスに従って強化され得る。画像の各々は、互いにより容易に比較され得る標準化された画像を生成するために、サイズ変更され、処理され、伸張され、またはそれらの何らかの組合せが行われ得る。例えば、図8の画像強化アルゴリズムに関連して説明したようなサイズ変更アルゴリズム804、ネガティブ演算808、伸張演算812、またはそれらの何らかの組合せを物体の画像に適用して、物体の画像を標準化し、画像間の比較可能性を容易にすることができる。複数の画像の各画像内の物体を検出することは、複数の画像の各画像内に含まれる背景をフィルタリングするマスクを標準化された画像の各々に適用することを伴い得る。例えば、図8の画像強化アルゴリズムに関連して説明したように、円形マスキング演算816、ヒストグラム等化演算820、適応2値化演算824、AND演算826、またはそれらの何らかの組合せなどの円形マスキング演算、ヒストグラム等化演算、適応2値化演算、またはそれらの何らかの組合せを物体の画像に適用して、物体画像に含まれる背景情報をフィルタリングし、画像に含まれる物体の検出を容易にすることができる。
【0064】
ブロック910において、物体マーカセグメンテーションマップが、分離された物体画像に基づいて生成され得る。いくつかの実施形態では、物体マーカセグメンテーションマップを生成することは、各分離された物体画像を2値化することと、物体マーカセグメンテーションマップが連続する2値化された物体マップの対のすべてまたはいくつかを含む、連続する2値化された物体マップの対を生成することとを伴い得る。これらおよび他の実施形態では、物体マーカセグメンテーションマップは、スピンレートおよびスピン軸が、画像の各々に描写されるような物体を比較することによって決定され得る、連続する物体画像の複数の対を含んでもよい。
【0065】
ブロック912において、運動している物体のスピンレートおよびスピン軸は、図5の動作500に従うことによって、物体マーカセグメンテーションマップに基づいて推定され得る。任意の2つの所与の連続する2値化された物体マップに示される物体の向き、位置、任意の他の特性、またはそれらの何らかの組合せの差を使用して、スピンレートおよびスピン軸を決定することができる。追加的または代替的に、連続する2値化された物体マップの異なる対の間の推定スピンレートまたは推定スピン軸の間の差を統計的に分析して、物体のスピンレートおよびスピン軸の単一の推定を決定することができる。いくつかの実施形態では、連続する2値化された物体マップの所与の対の間のスピンレートまたはスピン軸を決定することは、深層学習アルゴリズムが、連続する2値化された物体マップの所与の対に描写される物体のスピンレートおよびスピン軸を推定し得るように、物体のスピンレートおよびスピン軸に従って注釈付けられた物体の現実世界画像を使用して訓練された深層学習アルゴリズムに、連続する2値化された物体マップの所与の対を入力することを伴い得る。追加的または代替的に、深層学習アルゴリズムの訓練は、シミュレーション環境において生成された連続する2値化された物体マップの合成データによって容易にされ得る。
【0066】
例えば、連続する2値化された物体マップの対に関連付けられた推定スピンレートのうちの1つ以上または推定スピン軸のうちの1つ以上が、外れ値スピン推定として識別され得る。外れ値スピン推定として識別されない推定スピンレートおよび推定スピン軸を統合して、最終推定スピンレートおよび最終推定スピン軸を決定することができる。
【0067】
いくつかの実施形態では、連続する2値化された物体マップの所与の対のスピンレートおよびスピン軸を推定することは、順方向の連続する2値化された物体マップの各対に対応する第1の物体スピンを推定することと、逆方向の連続する2値化された物体マップの各対に対応する第2の物体スピンを推定することとを伴い得る。第1の物体スピンおよび第2の物体スピンを互いに比較して、連続する2値化された物体マップの所与の対について推定スピンレートおよび推定スピン軸を決定することができる。
【0068】
本開示の範囲から逸脱することなく、方法900に対して修正、追加、または省略を行うことができる。例えば、記載された方法における異なる要素の指定は、本明細書に記載された概念を説明するのを助けることを意味し、限定するものではない。更に、方法900は、任意の数の他の要素を含んでもよく、または説明されるもの以外の他のシステムまたはコンテキスト内で実装されてもよい。
【0069】
図10は、本開示に記載される少なくとも1つの実施形態による、例示的なコンピュータシステム1000である。コンピューティングシステム1000は、プロセッサ1010、メモリ1020、データストレージ1030、および/または通信ユニット1040を含むことができ、これらはすべて通信可能に結合することができる。図1のスピン推定システム110のいずれかまたはすべては、コンピューティングシステム1000と一致するコンピューティングシステムとして実装され得る。
【0070】
一般に、プロセッサ1010は、様々なコンピュータハードウェアまたはソフトウェアモジュールを含む任意の適切な専用または汎用コンピュータ、コンピューティングエンティティ、または処理デバイスを含むことができ、任意の適用可能なコンピュータ可読記憶媒体に記憶された命令を実行するように構成することができる。例えば、プロセッサ1010は、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラム命令を解釈および/もしくは実行するように、ならびに/またはデータを処理するように構成された任意の他のデジタルもしくはアナログ回路を含み得る。
【0071】
図10では単一のプロセッサとして示されているが、プロセッサ1010は、本開示で説明される任意の数の動作を個別にまたは集合的に実行するように構成された任意の数のネットワークまたは物理的場所にわたって分散された任意の数のプロセッサを含み得ることが理解される。いくつかの実施形態では、プロセッサ1010は、プログラム命令を解釈および/もしくは実行し、ならびに/またはメモリ1020、データストレージ1030、もしくはメモリ1020およびデータストレージ1030に記憶されたデータを処理することができる。いくつかの実施形態では、プロセッサ1010は、データストレージ1030からプログラム命令をフェッチし、プログラム命令をメモリ1020にロードしてもよい。
【0072】
プログラム命令がメモリ1020にロードされた後、プロセッサ1010は、図5の動作500の動作、図6のニューラルネットワーク600に関連付けられた1つ以上の動作、図7のリファイナアルゴリズム700に関連付けられた1つ以上の動作、図8の画像強化アルゴリズム800に関連付けられた1つ以上の動作、または図9の方法900の動作をコンピューティングシステム1000に実行させる命令などのプログラム命令を実行してもよい。
【0073】
メモリ1020およびデータストレージ1030は、コンピュータ実行可能命令またはデータ構造を記憶させるためのコンピュータ可読記憶媒体または1つ以上のコンピュータ可読記憶媒体を含み得る。そのようなコンピュータ可読記憶媒体は、プロセッサ1010などの汎用コンピュータまたは専用コンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。例えば、メモリ1020および/またはデータストレージ1030は、図5に関連して説明したように、物体画像502、2値マップ506、スピンレート推定およびスピン軸推定514、スピンレート推定およびスピン軸推定518、最終スピンレート-軸推定522、または改良されたスピンレート-軸推定526を含むことができる。いくつかの実施形態では、コンピューティングシステム1000は、メモリ1020およびデータストレージ1030のいずれかを含んでも含まなくてもよい。
【0074】
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM)、コンパクトディスク読取り専用メモリ(CD-ROM)もしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気記憶デバイス、フラッシュメモリデバイス(例えば、ソリッドステートメモリデバイス)、またはコンピュータ実行可能命令もしくはデータ構造の形態で所望のプログラムコードを記憶するために使用され得、汎用もしくは専用コンピュータによってアクセスされ得る任意の他の記憶媒体を含む、非一時的コンピュータ可読記憶媒体を含み得る。上記の組合せも、コンピュータ可読記憶媒体の範囲内に含まれ得る。コンピュータ実行可能命令は、例えば、プロセッサ1010に特定の動作または動作のグループを実行させるように構成された命令およびデータを含み得る。
【0075】
通信ユニット1040は、ネットワーク上で情報を送信または受信するように構成された任意の構成要素、デバイス、システム、またはそれらの組合せを含み得る。いくつかの実施形態では、通信ユニット1040は、他の場所、同じ場所、または更には同じシステム内の他の構成要素にある他のデバイスと通信することができる。例えば、通信ユニット1040は、モデム、ネットワークカード(無線または有線)、光通信デバイス、赤外線通信デバイス、無線通信デバイス(アンテナなど)、および/またはチップセット(Bluetooth(登録商標)デバイス、802.6デバイス(例えば、メトロポリタンエリアネットワーク(MAN)など)、WiFi(登録商標)デバイス、WiMax(登録商標)デバイス、セルラー通信設備など)などを含んでもよい。通信ユニット1040は、データがネットワークおよび/または本開示で説明される任意の他のデバイスもしくはシステムと交換されることを可能にし得る。例えば、通信ユニット1040は、システム1000が、コンピューティングデバイスおよび/または他のネットワークなどの他のシステムと通信することを可能にし得る。
【0076】
当業者は、本開示を検討した後に、本開示の範囲から逸脱することなく、システム1000に対して修正、追加、または省略が行われ得ることを認識し得る。例えば、システム1000は、明示的に図示され説明されたものよりも多いまたは少ない構成要素を含んでもよい。
【0077】
前述の開示は、本開示を、開示された厳密な形態または特定の使用分野に限定することを意図していない。したがって、本開示に対する様々な代替実施形態および/または修正は、本明細書に明示的に記載されているか暗示されているかにかかわらず、本開示に照らして可能であることが企図される。本開示の実施形態をこのように説明してきたが、本開示の範囲から逸脱することなく、形態および詳細において変更が行われ得ることが認識され得る。したがって、本開示は、特許請求の範囲によってのみ限定される。
【0078】
いくつかの実施形態では、本明細書で説明される異なる構成要素、モジュール、エンジン、およびサービスは、コンピューティングシステム上で実行される物体またはプロセスとして(例えば、別個のスレッドとして)実装され得る。本明細書で説明されるシステムおよびプロセスのうちのいくつかは、概して、ソフトウェア(汎用ハードウェア上に記憶され、および/または汎用ハードウェアによって実行される)で実装されるものとして説明されるが、特定のハードウェア実装またはソフトウェア実装と特定のハードウェア実装との組合せも可能であり、企図される。
【0079】
本開示および特に添付の特許請求の範囲(例えば、添付の特許請求の範囲の本体)において使用される用語は、一般に、「オープンな」用語として意図されるものである(例えば、「含む(including)」という用語は、「~を含むが、それらに限定されない(including but not limited to)」と解釈されるべきである)。
【0080】
加えて、導入される請求項の記載の特定の数が意図される場合、そのような意図は、請求項において明示的に記載され、そのような記載がない場合、そのような意図は存在しない。例えば、理解を助けるものとして、後続の添付の特許請求の範囲は、「少なくとも1つの(at least one)」および「1つ以上の(one or more)」という導入句を、請求項記載を導入するために含むことがある。しかしながら、かかる句の使用は、「a」または「an」という不定冠詞によって請求項記載を導入した場合に、たとえ同一の請求項内に「1つ以上の」または「少なくとも1つの」といった導入句および「a」または「an」という不定冠詞が含まれる場合であっても、かかる導入された請求項記載を含むいかなる特定の請求項も、かかる記載事項を1つのみ含む実施形態に限定されると示唆されるものと解釈されるべきではない(例えば、「a」および/または「an」は、「少なくとも1つの」または「1つ以上の」を意味するものと解釈されるべきである)。定冠詞を使用して請求項記載を導入する場合にも、同様のことが当てはまる。
【0081】
更に、導入された請求項記載において特定の数が明示的に記載されている場合であっても、かかる記載は、少なくとも記載された数を意味するものと解釈されるべきであることが、当業者には認識されるであろう(例えば、他に修飾語のない、単なる「2つの記載事項」という記載がある場合、少なくとも2つの記載事項、または2つ以上の記載事項を意味する)。更に、「A、B、およびCなどのうちの少なくとも1つ」または「A、B、およびCなどのうちの1つ以上」に類似する規約が使用される場合、一般に、そのような構成は、Aのみ、Bのみ、Cのみ、AとBとの組合せ、AとCとの組合せ、BとCとの組合せ、またはAとBとCとの組合せなどを含むことが意図される。
【0082】
更に、明細書、特許請求の範囲、または図面のいずれかにおいて、2つ以上の代替用語に先行する任意の選言的な単語または句は、用語のうちの1つ、用語のいずれか、または用語の両方を含む可能性を企図すると理解されるべきである。例えば、「AまたはB」という句は、「A」または「B」または「AおよびB」の可能性を含むものと理解されるべきである。
【0083】
本開示に記載されたすべての例および条件付き言語は、本開示および本発明者によって当該技術分野の推進に寄与された概念を読者が理解するのを助けるための教育的目的を意図しており、そのような具体的に記載された例および条件に限定されないものとして解釈されるべきである。本開示の実施形態を詳細に説明してきたが、本開示の趣旨および範囲から逸脱することなく、本明細書に様々な変更、置換、および改変を行うことができる。
図1A
図1B
図2
図3A
図3B
図3C
図3D
図4A
図4B
図4C
図5
図6
図7
図8
図9
図10
【外国語明細書】