JP2018518748A - 追跡可能性の測定によるキーポイント検出 - Google Patents

追跡可能性の測定によるキーポイント検出 Download PDF

Info

Publication number
JP2018518748A
JP2018518748A JP2017558552A JP2017558552A JP2018518748A JP 2018518748 A JP2018518748 A JP 2018518748A JP 2017558552 A JP2017558552 A JP 2017558552A JP 2017558552 A JP2017558552 A JP 2017558552A JP 2018518748 A JP2018518748 A JP 2018518748A
Authority
JP
Japan
Prior art keywords
image
candidate
keypoint
keypoints
similarity score
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
JP2017558552A
Other languages
English (en)
Inventor
ダニエル・ワグナー
キヨン・キム
Original Assignee
クアルコム,インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by クアルコム,インコーポレイテッド filed Critical クアルコム,インコーポレイテッド
Publication of JP2018518748A publication Critical patent/JP2018518748A/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/757Matching configurations of points or features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • G06T3/18
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20048Transform domain processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/62Extraction of image or video features relating to a temporal dimension, e.g. time-based feature extraction; Pattern tracking

Abstract

開示された実施形態は、部分的に、選択の考慮に入れられる各候補キーポイントに類似度スコアを割り当てることによって、キーポイント選択を容易にする。類似度スコアは、画像パッチの周りの領域内のローカルな画像セクション内の画像パッチに対するキーポイントに関連付けられた画像パッチの測定された類似度の最大値に基づき得る。後続の画像内のオブジェクトを検出および/もしくは追跡し、ならびに/またはカメラ姿勢を決定するために、最も低い類似度スコアを有する候補キーポイントのサブセットが選択され、使用され得る。

Description

関連出願の相互参照
本出願は、2015年9月4日に出願された「Keypoint Detection with Trackability Measurements」という名称の米国非仮特許出願第14/846,674号の優先権を主張する、2015年5月12日に出願された「Keypoint Detection with Trackability Measurements」という米国仮特許出願第62/160,420号の優先権を米国特許法に基づいて主張し、両出願の全体が参照により本明細書に組み込まれている。
本開示は一般に、画像シーケンスにおけるオブジェクト検出および追跡のための装置および方法に関する。
コンピュータビジョンおよびコンピュータグラフィックスでは、様々な用途を容易にするために、オブジェクトの追跡および/または認識が頻繁に実行される。たとえば、マッピングまたはナビゲーションの用途は、カメラの視野内の認識されたオブジェクトを使用して、オブジェクトの位置を決定し、コース修正を実行し得る。別の例として、拡張現実(AR)の用途は、キャプチャされた画像内の1つまたは複数のオブジェクトの位置および向きに基づいて実世界の画像を拡張し得る。
オブジェクト検出または追跡の用途では、1つもしくは複数のキーポイントまたは他の顕著な特徴が、1つもしくは複数の画像において識別され得る。一般的には、コーナーポイント、高コントラスト、高強度などのポイントが、キーポイントとしての選択に好ましい。識別されるとキーポイントは、追跡されたオブジェクトに対するカメラの姿勢(位置および向き)を判定するために画像シーケンスのいくつかのフレームにわたって追跡される。カメラの姿勢に基づいて、画像においてオブジェクトが追加、削除、および/または変更され得る。たとえば、AR画像におけるリアリズムは、カメラの姿勢が正確に推定されるときに向上され得る。キーポイントベースの追跡は、現在画像内の1つまたは複数のキーポイントをいくつかの画像フレームにわたって確実に追跡することができることを前提とする。しかしながら、画像が互いに近接する複数の類似のキーポイントを含む場合、ある画像内のキーポイントと別の画像内の対応するポイントとの間の対応を確立することが不正確であるため、追跡中にあいまいさが生じ得る。キーポイントの不一致は、姿勢ドリフト、画像アーチファクトなどをもたらし、それによって、ユーザエクスペリエンスが損なわれる可能性がある。
さらに、多くの従来の手法では、追跡されるキーポイントの数が比較的多くなる可能性がある。しかしながら、より多くの数のキーポイントが必ずしも追跡精度を保証するものであるとは限らない。たとえば、近接したキーポイントが比較的高い類似度を示す場合、追跡精度は上がらないことがある。さらに、より多くの数のキーポイントが使用されるとき、多くの従来の方式のように、計算オーバーヘッドが増加し得、パフォーマンスおよび/またはアプリケーション応答時間が準最適になり得、追跡精度の付随する向上を達成することなしに消費電力が増加し得る。
いくつかの態様によれば、カメラでキャプチャされた第1の画像に基づいて1組の候補キーポイントを決定するステップと、1組の候補キーポイントにおける各候補キーポイントについて、対応する第1の類似度スコアを決定するステップであり、部分的に、対応する候補キーポイントに関連付けられた画像パッチを、画像パッチの周りの領域内の複数の対応する画像セクションと比較することによって、各候補キーポイントに対応する第1の類似度スコアが決定される、ステップと、候補キーポイントの第1のサブセットを選択するステップであり、第1のサブセットが、最も低い類似度スコアを有するあらかじめ定義された数の候補キーポイントを含む、ステップとを含む方法が開示される。
別の態様では、開示された実施形態は、第1の画像を含む複数の画像をキャプチャするためのカメラと、複数の画像を記憶するためのメモリと、カメラおよびメモリに結合されたプロセッサとを含み得る移動局(MS)に関する。いくつかの実施形態では、プロセッサは、カメラでキャプチャされた第1の画像に基づいて1組の候補キーポイントを決定し、1組の候補キーポイントにおける各候補キーポイントについて、対応する第1の類似度スコアを決定し、部分的に、対応する候補キーポイントに関連付けられた画像パッチを、画像パッチの周りの領域内の複数の対応する画像セクションと比較することによって、各候補キーポイントに対応する第1の類似度スコアが決定され、候補キーポイントの第1のサブセットを選択し、第1のサブセットが、最も低い類似度スコアを有するあらかじめ定義された数の候補キーポイントを含む、ように構成され得る。
さらなる態様では、装置は、第1の画像を含む複数の画像をキャプチャするための画像検知手段と、画像検知手段によってキャプチャされた第1の画像に基づいて1組の候補キーポイントを決定するための手段と、1組の候補キーポイントにおける各候補キーポイントについて、対応する第1の類似度スコアを決定するための手段であり、部分的に、対応する候補キーポイントに関連付けられた画像パッチを、画像パッチの周りの領域内の複数の対応する画像セクションと比較することによって、各候補キーポイントに対応する第1の類似度スコアが決定される、手段と、候補キーポイントの第1のサブセットを選択するための手段であり、第1のサブセットが、最も低い類似度スコアを有するあらかじめ定義された数の候補キーポイントを含む、手段とを含み得る。
いくつかの実施形態では、非一時的コンピュータ可読媒体は、カメラを含む移動局(MS)によって実行されると、MSに方法のステップを実行させる命令を含み得、方法は、カメラでキャプチャされた第1の画像に基づいて1組の候補キーポイントを決定するステップと、1組の候補キーポイントにおける各候補キーポイントについて、対応する第1の類似度スコアを決定するステップであり、部分的に、対応する候補キーポイントに関連付けられた画像パッチを、画像パッチの周りの領域内の複数の対応する画像セクションと比較することによって、各候補キーポイントに対応する第1の類似度スコアが決定される、ステップと、候補キーポイントの第1のサブセットを選択するステップであり、第1のサブセットが、最も低い類似度スコアを有するあらかじめ定義された数の候補キーポイントを含む、ステップとを含む。
開示される実施形態はまた、ソフトウェア、ファームウェア、およびコンピュータ可読媒体またはコンピュータ可読メモリを使用するプロセッサによって作成、記憶、アクセスまたは変更されるプログラム命令に関係する。記載される方法は、ウェアラブルおよびヘッドマウントデバイスならびに/またはそれらの組合せを含むプロセッサ、サーバ、様々なコンピューティングおよびモバイルデバイス上で実行され得る。
以下で、添付の図面を参照して、これらおよび他の実施形態をさらに説明する。他の態様は、例示によって様々な態様が図示および説明する以下の詳細な説明から、当業者には容易に明らかになるであろうことが理解される。図面および詳細な説明は、本質的に例示的なものと見なされるべきであり、限定と見なされるべきではない。
本発明の実施形態は、図面を参照しながら、例としてのみ説明される。
開示された実施形態と一致する方法で、キーポイント検出および追跡を実行することが可能な例示的な移動局(MS)のブロック図である。 例示的なキーポイント210および関連する画像パッチ220を有する画像フレームを示す図である。 例示的なキーポイント210および関連する画像パッチ220を有する画像フレームを示す図である。 画像フレーム230内の画像パッチに対応する画像領域240を示す図である。 画像フレーム230内の画像パッチ220と比較され得る、例示的なローカルな画像セクション250-1、250-2、250-3、260-1、260-2および260-3を示す図である。 キーポイントに関連付けられた画像パッチの周りの画像領域内の例示的なローカルな画像セクションを示す図である。 画像パッチ320がローカルな画像セクション330と比較されたときに取得される類似度を示す図式表現である。 画像ピラミッドにおける画像レベルからキーポイントを決定するための例示的な方法400のフローチャートである。 1組の候補キーポイントからキーポイントのサブセットを選択するための例示的な方法411のフローチャートである。 いくつかの開示された実施形態と一致する、キーポイントを追跡するための方法500を示す図である。 開示された実施形態と一致する方法で、画像内のキーポイントを決定し、追跡することを可能にするサーバ600を示す概略ブロック図である。 カメラによってキャプチャされた第1のまたは参照画像のキーポイントを決定するための例示的な方法700を示す図である。
添付の図面に関連して以下に記載される詳細な説明は、本開示の種々の態様の説明を意図しており、本開示を実践できる唯一の態様を表すことを意図していない。本開示において説明される各態様は、単に本開示の例または例示として提供されており、必ずしも他の態様より好ましいまたは有利であると解釈されるべきではない。詳細な説明は、本開示を完全に理解してもらうために、具体的な細部を含む。しかしながら、これらの特定の細部を用いることなく本開示を実践できることは、当業者には明らかであろう。場合によっては、本開示の概念をあいまいにするのを避けるために、周知の構造およびデバイスがブロック図の形で示される。頭字語および他の説明的な用語法は、単に便宜的に、そして明確にするために使用される場合があり、本開示の範囲を限定することは意図していない。
「検出」という用語は、キャプチャされた画像フレーム内のターゲットを位置特定して、オブジェクトに対するカメラ姿勢を計算するプロセスを指す。「追跡」という用語は、時間的に連続する画像フレームにわたる、ターゲットに対するカメラ姿勢の推定を指す。従来のキーポイントベースの検出および追跡技法は、1つの画像内の(たとえば、当該のオブジェクトに関連付けられ得る)コーナーポイント、高コントラストポイントなどを、後続の画像フレームにおいて確実に検出し、追跡することができることを前提とする。したがって、画像内のキーポイントを選択するとき、従来のキーポイントベースの検出および追跡技法は、同じ画像の他のセクションに対する選択されたキーポイントの独特性または一意性を無視する。結果として、画像が、たとえば、極めて近接したいくつかの類似するコーナーポイントのような複数の類似のキーポイントを含むとき、ある画像内のキーポイントと別の画像内の類似するポイントとの間の対応を確立することが困難であり得るので、追跡中にあいまいさが生じる可能性がある。キーポイントの不一致は、姿勢ドリフト、画像アーチファクトなどをもたらし、それによって、ユーザエクスペリエンスが損なわれる可能性がある。
開示された実施形態は、部分的に、選択の考慮に入れられる可能性のある各キーポイントに類似度スコア(および/または追跡可能性(trackability score)スコア)を割り当てることによって、キーポイント選択を容易にする。類似度スコアは、キーポイントに関連付けられた画像パッチとキーポイントの近傍にあるローカルな画像セクションとの類似度に基づき得る。「画像パッチ」という用語は、多角形、円、またはキーポイントの周りの他の領域などのエリアを指すために使用される。いくつかの実施形態では、類似度スコアは、部分的には、画像パッチの周りのローカルな画像セクション内の画像パッチに対するキーポイントに関連付けられた画像パッチの測定された類似度の最大値に基づき得る。さらに、いくつかの実施形態では、より高い測定された類似度の最大値は、より低い「追跡可能性」スコアまたは尺度(measure)に関連付けられ得る。したがって、キーポイントの追跡可能性スコアは、キーポイントの近傍にある画像パッチに対するキーポイントの測定された類似度の最大値に対して逆に変化し得る(高い類似度は低い追跡可能性スコアを意味し、低い類似度は高い追跡可能性スコアを意味する)。いくつかの実施形態では、候補キーポイントの最も低い類似度スコア(または最も高い追跡可能性スコア)を有する1組のキーポイントが、可能性のあるキーポイントの中から選択され得る。選択されたキーポイントは、後続の画像におけるオブジェクトの検出および/もしくは追跡、ならびに/または画像に対するカメラ姿勢の判定のために使用され得る。
いくつかの事例では、追跡は、異なる解像度の画像の階層またはピラミッドに基づき得る。たとえば、キャプチャされた画像キーフレームをサブサンプリングして、キャプチャされたキーフレームに関連する異なる解像度の画像の階層を取得し得る。より低い解像度の画像は、カメラの動きが大きい場合の追跡を容易にする。異なる解像度の画像は、ピラミッドを構成するものと見なされ得、ピラミッドの各レベルは、画像ピラミッドのすぐ上またはすぐ下のレベルから何らかの要因によって解像度が異なる画像を含む。たとえば、ピラミッドの最高レベル(レベル0)は、未加工または最高解像度の画像を有することができ、それよりも下の各レベルは、何らかの要因によって、すぐ上のレベルに対する画像をダウンサンプリングすることができる。たとえば、(レベル0における)サイズ640×480の画像I0に対して、画像I1、I2、I3、およびI4は、それぞれ320×240、160×120、80×60および40×30のサイズのものであり得、下付き文字は、画像ピラミッドにおける画像レベルを示す。したがって、画像ピラミッドにおけるキーフレーム内の各キーポイントは、(i)そのソースキーフレーム、(ii)ソースキーフレームに関連付けられたサブサンプリングされた画像のうちの1つ、および(iii)ソースまたはサブサンプリングされた画像キーフレーム内の画素位置に関連付けられ得る。
いくつかの実施形態では、キーポイントの類似度の判定は、画像ピラミッド内のキーフレームに拡張され得る。したがって、いくつかの実施形態では、類似度(および/または追跡可能性)スコアが、画像ピラミッド内の1つまたは複数の画像内の候補キーポイントに割り当てられ得る。画像ピラミッド内の各画像について、その画像内のキーポイントに関連付けられた画像パッチと、画像パッチの周りのローカルな画像セクションとの類似度に基づいて、候補キーポイントに類似度スコアが割り当てられ得る。いくつかの実施形態では、画像ピラミッドの各レベルの画像に類似度スコアリングが適用され得、各レベルで、最も低い類似度(または最も高い追跡可能性)スコアを有するキーポイントが選択され得る。いくつかの実施形態では、ぼやけた画像に遭遇すると、追跡の頑強さを向上させるために、キーポイントに関連付けられた画像パッチが人工的にぼかされ得る。いくつかの実施形態では、キーポイント選択プロセスの一部はキーポイントマッチングのためにも使用され得るので、追跡モジュールの簡素化およびキーポイントマッチングの頑強さが向上され得る。
図1は、開示された実施形態と一致する方法で、キーポイントベースの検出および追跡を実行することが可能な例示的な移動局(MS)100のブロック図を示す。本明細書で使用するモバイルデバイスまたは移動局(MS)100は、セルラー電話、モバイル電話もしくは他のワイヤレス通信デバイス、パーソナル通信システム(PCS)デバイス、パーソナルナビゲーションデバイス(PND)、個人情報マネージャ(PIM)、または携帯情報端末(PDA)、ラップトップ、タブレット、ノートブック、ハンドヘルドコンピュータ、および/またはヘッドマウントデバイスもしくはヘッドマウントディスプレイを有するデバイスを含むウェアラブルコンピューティングデバイスの形をとり得る。モバイルデバイスまたは移動局という用語は、本明細書では互換的に使用される。いくつかの実施形態では、MS100は、ワイヤレス通信および/またはナビゲーション信号を受信することが可能であり得る。
さらに、「移動局」という用語は、たとえば、短距離ワイヤレス接続、赤外線接続、有線接続または他の接続によって、パーソナルナビゲーションデバイス(PND)と通信するデバイスを含むことも意図されており、かつ/または位置関連処理がそのデバイスまたはPNDにおいて行われる。また、「移動局」は、サーバとの通信が可能である様々なワイヤレス通信デバイスを含むすべてのデバイスを、ワイヤレス信号受信、支援データ受信、および/または関連処理がそのデバイスにおいて行われるか、サーバにおいて行われるか、またはネットワークに関連する別のデバイスにおいて行われるかにかかわらず含むことが意図される。上記のデバイスの任意の動作可能な組合せも「移動局」と見なされる。
「移動局」という用語は、ネットワークに接続するように、または他の方法によりワイヤレスに、もしくは有線接続により別のデバイスと通信するように構成されないことがあるゲームまたは他のデバイスを含むことも意図される。たとえば、「移動局」は、通信要素および/またはネットワーキング機能を省くことができる。たとえば、本明細書で説明する実施形態は、別のデバイスとの有線またはワイヤレスネットワーキングのために接続するように構成されない独立型デバイスで実装され得る。
図1に示すように、MS100は、カメラ110、慣性測定ユニット(IMU)130、プロセッサ150、メモリ160および/または送受信機170、ディスプレイ/スクリーン180を含むことができ、これらは互いに、またMS100上の他の機能ブロック(図示せず)に接続120を通して動作可能に結合され得る。接続120は、バス、ライン、ファイバ、リンク等、またはそれらのいくつかの組合せを備えることができる。
送受信機170は、たとえば、1つまたは複数のタイプのワイヤレス通信ネットワークを介して1つまたは複数の信号を送信するために使用可能な送信機と、1つまたは複数のタイプのワイヤレス通信ネットワークを介して送信された1つまたは複数の信号を受信するための受信機とを含むことができる。送受信機170は、限定はしないが、フェムトセル、IEEE802.11規格ファミリに基づき得るWi-Fiネットワークまたはワイヤレスローカルエリアネットワーク(WLAN)、Bluetooth(登録商標)、近距離通信(NFC)、IEEE802.15x規格ファミリに基づくネットワークなどのようなワイヤレスパーソナルエリアネットワーク(WPAN)、および/あるいはLTE、WiMAXなどのようなワイヤレスワイドエリアネットワーク(WWAN)のような様々な技術に基づくワイヤレスネットワークとの通信を許容することができる。MS100はまた、有線ネットワークを介して通信するための1つまたは複数のポートを含むことができる。
いくつかの実施形態では、MS100は、CCDセンサーまたはCMOSセンサーなどの画像センサーおよび/またはカメラ110(以下「カメラ110」と呼ぶ)を含むことができる。カメラ110は、光画像を電子画像またはデジタル画像に変換することができ、キャプチャされた画像をプロセッサ150に送ることができる。一般に、カメラ110は、「色情報」を提供するカラーまたはグレースケールカメラであってもよい。一般に、本明細書で使用する色画像または色情報は、1〜N個のチャネルを含むものと見なされてよく、このNは、画像を記憶するために使用されている色空間に依存する整数である。たとえば、RGB画像は、3つのチャネルを含み、赤情報、青情報および緑情報にそれぞれ1つのチャネルがある。
いくつかの実施形態では、MS100は、様々なセンサーを組み込むこともある、二重前面カメラおよび/または前面/後面カメラなどの複数のカメラ110を備えることができる。いくつかの実施形態では、カメラ110は、静止画像とビデオ画像の両方をキャプチャすることが可能であり得る。いくつかの実施形態では、カメラ110は、30フレーム/秒(fps)で画像をキャプチャすることが可能なRGBDまたは立体視ビデオカメラであり得る。一実施形態では、カメラ110によってキャプチャされた画像は、未加工の圧縮されていないフォーマットであってよく、処理および/またはメモリ160への記憶の前に圧縮され得る。いくつかの実施形態では、画像圧縮がプロセッサ150によって、可逆または不可逆圧縮技法を使用して実行され得る。
さらに、MS100は、3D画像を含む色画像をレンダリングすることが可能なスクリーンまたはディスプレイ180を含むことができる。いくつかの実施形態では、ディスプレイ180は、カメラ110によってキャプチャされたライブ画像、拡張現実(AR)画像、グラフィカルユーザインターフェース(GUI)、プログラム出力などを表示するために使用され得る。いくつかの実施形態では、ディスプレイ180は、ユーザが仮想キーボード、アイコン、メニューもしくは他のグラフィカルユーザインターフェース(GUI)、ユーザのジェスチャー、および/または入力デバイス、たとえば筆および他の筆記用具の何らかの組合せを介してデータを入力できるように、タッチスクリーンを含み、かつ/またはタッチスクリーンとともに格納され得る。いくつかの実施形態では、ディスプレイ180は、液晶画面(LCD)ディスプレイまたは発光ダイオード(LED)ディスプレイ、たとえば有機LED(OLED)ディスプレイを使用して実装され得る。他の実施形態では、ディスプレイ180は装着型ディスプレイであってよく、これはMS100における他の機能ユニットに動作可能に結合されるが、他の機能ユニットとは別個に格納され得る。いくつかの実施形態では、MS100は、MS100に結合された別個のモニタを通じて画像の表示を許容するためのポートを備えることができる。
いくつかの実施形態では、プロセッサ150はまた、IMU130からの入力を受信し得る。他の実施形態では、IMU130は3軸加速度計、3軸ジャイロスコープおよび/または磁力計を含むことができる。IMU130は、速度、向き、および/または他の位置関連情報をプロセッサ150に与え得る。いくつかの実施形態では、IMU130は、カメラ110による各画像フレームのキャプチャと同期して、測定された情報を出力し得る。いくつかの実施形態では、IMU130の出力がプロセッサ150によって部分的に使用されて、カメラ110および/またはMS100の姿勢が判断され得る。
カメラ110の姿勢は、参照のフレームに対するカメラ110の位置および向きを指す。いくつかの実施形態では、3つの並進成分(基準系のX、Y、Z座標によって与えられ得る)と3つの角成分(たとえば、同じ基準系に対するロール、ピッチおよびヨー)とを指す6自由度(6DOF)に関して、カメラ姿勢が判断され得る。
いくつかの実施形態では、カメラ110および/またはMS100の6DoF姿勢は、プロセッサ150によって視覚追跡ソリューションを使用して、カメラ110によってキャプチャされた画像に基づいて判定および/または追跡され得る。たとえば、プロセッサ150上で動作しているコンピュータビジョン(CV)モジュール155は、コンピュータビジョンベースの追跡、モデルベースの追跡、および/またはSimultaneous Localization And Mapping(SLAM)方法を実装し実行することができる。SLAMは、MS100によってモデル化されている環境のマップなどの環境のマップが作成される一方でそのマップに対するカメラの姿勢を同時に追跡する技法の一種を指す。SLAM技法は、MS100上のカメラ110などの1つまたは複数のカメラによってキャプチャされた画像が、環境のマップに対する相対的なカメラの姿勢を同時に追跡している間にそのマップを作成するのに使用され得る、ビジュアルSLAM(VSLAM)を含む。したがって、VSLAMは、周囲の環境の3D構造をも判定している間にカメラの6DOF姿勢を追跡することを含むことができる。たとえば、いくつかの実施形態で、VSLAM技法は、1つまたは複数のキャプチャされた画像フレーム内の顕著な特徴パッチ(たとえばキーポイント)を検出し、キャプチャされた画像フレームを基準フレームとして記憶することができる。次いで、カメラの姿勢は、たとえば、現在画像および参照画像における対応する特徴を識別することによって決定され得る。
いくつかの実施形態では、CVモジュール155は、ソフトウェア、ファームウェア、および/もしくは回路、またはそれらの何らかの組合せを使用して実装され得る。CVモジュール155を実装するための回路は、特定用途向け集積回路(ASIC)もしくは専用プロセッサなどの専用回路、ならびに/またはフィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)および/もしくはプロセッサ(プロセッサ150など)などの構成可能回路を含み得る。
いくつかの実施形態では、CVモジュール155によって実施される方法は、カメラ110によってキャプチャされたカラーまたはグレースケールの画像データに基づいてよく、カメラの6DOF姿勢測定の推定値を生成するために使用され得る。いくつかの実施形態では、IMU130の出力は、推定された姿勢を推定、訂正、および/または他の方法で調整するために使用され得る。さらに、いくつかの実施形態では、カメラ110によってキャプチャされた画像は、IMU130用にバイアス調整を再較正または実行するために使用され得る。
いくつかの実施形態では、カメラ姿勢推定および/または画像内のターゲット検出/追跡は、画像内のキーポイントに基づき得る。「キーポイント」という用語は、画像内の興味深い特徴または顕著な特徴を指すために使用される。いくつかの実施形態では、キーポイントは、プロセッサ150および/またはCVモジュール155によってカメラ110によってキャプチャされた画像において検出され得る。たとえば、キーポイントは、ハリス検出器、ガウス差分(DoG)、もしくはFeatures from Accelerated Segment Test(「FAST」)またはその変形など様々な技法を使用して検出され得る。
ハリスコーナー検出器は、何らかの指定された変位について、すべての方向における近くの画素に対して強度の差が大きい画像内の画素をキーポイントとして識別するための効率的な方法を提供する。Shi-TomasiまたはKanade-Tomasi方法は、ハリスコーナー検出器に基づく。
DoGは、画像ピラミッド内の2つの連続するレベルの画像にガウスぼかしを適用し、ガウスぼかし画像の差を取得する。キーポイントは、差分画像における局所的極値に基づいて識別される。さらに後述する画像ピラミッドは、第1の/参照画像に関連付けられた異なる低解像度の画像の階層を取得するために、第1の画像をサブサンプリングすることによって取得され得る。
FASTコーナー検出器は、候補点pが実際にキーポイントであるかどうかを分類するために、ある数の画素の円(たとえば、半径3の16画素のブレゼンハム円)を使用し得る。たとえば、円内の各画素は、整数番号1から16まで、時計回りにラベル付けされ得る。円内のN個の連続した画素の組がすべて候補画素pの強度よりもある閾値だけ明るい(または暗い)場合、画素pは、キーポイントとして分類され得る。
いくつかの実施形態では、キーポイントは、平行移動、回転、スケーリングなどの画像変換の範囲に対して不変であり得る記述子に関連付けられ得る。キーポイントベースの表現は、画像間のローカルな特徴の効率的なマッチングを容易にする。いくつかの実施形態では、画像フレーム内のキーポイントが識別され、個別のキーポイントに対応するローカルな記述子が構築され、画像特徴を追跡するために使用され得る。たとえば、第1の参照画像内のオブジェクトは、メモリ160またはメモリ160内のデータベース(図1には図示せず)に記憶され得る1つまたは複数のキーポイントまたは特徴によって特徴付けられ得る。次いで、第2の後続の画像から抽出されたキーポイントまたは特徴は、第1の参照画像からの記憶されたキーポイントとの比較によって別の画像内のオブジェクトを識別するために使用され得る。
いくつかの実施形態では、部分的に、画像フレーム内のコーナーポイント、エッジなどの特徴を識別するために、回転不変特徴変換(RIFT)、勾配位置配向ヒストグラム(GLOH)、主成分分析-SIFT(PCA-SIFT)など、スケール不変特徴変換(SIFT)技法またはその変形が使用され得る。様々な計算効率の良い修正されたSIFT記述子を含むSIFTベースの記述子およびその変形は、比較的大きい視点変更の面内でロバストな追跡および画像間の特徴対応を容易にする。SIFTベースの記述子が使用されるとき、たとえば、第1の参照画像からのSIFTキーは、第2の後続の画像内のSIFTキーと一致し得る。いくつかの実施形態では、様々な他の技法が特徴検出に使用され得る。たとえば、高速化ロバスト特徴(「SURF(Speeded-Up Robust Features)」)またはその変形、ハイブリッド点および/またはエッジ検出技法などに基づく技法が、部分的に、当業者には明らかである適切な修正とともに特徴検出に使用され得る。
1対の画像フレーム間の一致および/または類似度スコアを決定するために、他の画像内のキーポイント記述子に対応するある画像内のキーポイント記述子は、たとえば、記述子値の類似度(たとえば、ユークリッド距離(L-2ノルム))および類似の相対幾何学的位置に基づいて決定され得る。いくつかの実施形態では、類似度は、たとえば、NCC、SSD、絶対差分和(SAD)、正準相関、および他の相関ベースの画像マッチング方法を使用して決定され得る。
いくつかの実施形態では、第1の参照画像において識別された任意の可能性のあるキーポイントまたは記述子(たとえば、SIFT/SURF)に、「類似度スコア」または「追跡可能性スコア」が割り当てられ得る。類似度スコアは、1対の画像または1対の画像セクション間の類似度の尺度を提供し得る。たとえば、類似度スコアは、キーポイントの周りの画像パッチ、および画像パッチの周りの領域内の画像セクションについて計算され得る。いくつかの実施形態では、類似度スコアは、キーポイントに関連付けられた記述子(対応する記述子に関連付けられた技法によって測定される)と、キーポイントの近傍にあるローカルな画像セクションとの類似度に基づき得る。
いくつかの実施形態では、類似度スコアは、部分的に、キーポイントに関連付けられた画像パッチと、キーポイントの近傍にあるローカルな画像セクションとの測定された類似度の最大値に基づき得る。さらに、いくつかの実施形態では、キーポイントの追跡可能性スコアは、画像パッチの周りの領域内のローカルな画像セクションに対する画像パッチに関連付けられたキーポイントの測定された類似度の最大値に対して逆に変化し得る(高い類似度は低い追跡可能性スコアを意味し、低い類似度は高い追跡可能性スコアを意味する)。
いくつかの実施形態では、最も低い類似度スコア(または最も高い追跡可能性スコア)を有する1組のキーポイントが、候補キーポイントの中から選択され得る。選択されたキーポイントは、後続の画像におけるオブジェクトの検出および/もしくは追跡、ならびに/または画像に対するカメラ姿勢の判定のために使用され得る。さらに、選択されたキーポイントの特有の性質のため、キーポイント抽出の再現性および精度が向上する可能性がある。
いくつかの実施形態では、追跡は、1組の候補キーポイントの類似度スコアを決定するときに使用されるのと同じ比較方法に基づき得る。たとえば、候補キーポイントに関連付けられた画像パッチを、候補キーポイントの近傍にある対応するローカルな画像セクションと比較して、候補キーポイントの類似度スコアを決定し、候補キーポイントの選択されたサブセットを取得するために、相互相関ベースの方法(たとえば、NCC、SSD、SADなど)が使用される場合、画像間の候補キーポイントの選択されたサブセットを追跡するときに同じ(または類似の)相互相関法が使用され得る。
MS100に含まれるすべての機能ユニットが図1に示されているわけではない。例示的なMS100はまた、開示された実施形態と一致するように様々な方法で、たとえば、図示の機能ブロックのうちの1つまたは複数を追加、結合または省略することによって、変更され得る。たとえば、いくつかの構成では、MS100はIMU130または送受信機170を含まないことがある。さらに、いくつかの例示的な実装形態では、MS100は、深度センサー、立体センサー、周辺光センサー、マイクロフォン、音響センサー、超音波センサー、レーザー距離計などのような様々な他のセンサー(図示せず)を含み得る。いくつかの実施形態では、MS100の一部は、1つまたは複数のチップセットなどの形態をとることができる。
プロセッサ150は、ハードウェア、ファームウェアおよびソフトウェアの組合せを使用して実装され得る。プロセッサ150は、コンピュータビジョン、3D再構成、SLAM、追跡、画像処理などに関係する計算の手順またはプロセスの少なくとも一部分を実行するように構成可能な1つまたは複数の回路を表すことができ、命令および/またはデータをメモリ160から取り出すことができる。プロセッサ150は、本明細書で説明する機能を実行するように設計された、1つまたは複数の特定用途向け集積回路(ASIC)、中央処理装置および/もしくはグラフィックス処理ユニット(CPUおよび/もしくはGPU)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、コントローラ、マイクロコントローラ、マイクロプロセッサ、組込みプロセッサコア、電子デバイス、他の電子ユニット、またはそれらの組合せを使用して実装され得る。
メモリ160は、プロセッサ150内および/またはプロセッサ150の外部で実装され得る。本明細書で使用する「メモリ」という用語は、任意のタイプの長期、短期、揮発性、不揮発性、または他のメモリを指し、メモリのどの特定のタイプもしくはメモリの個数またはメモリが記憶される物理媒体のタイプにも限定されない。いくつかの実施形態では、メモリ160は、コンピュータビジョン、画像処理、SLAMの実行、キーポイントベースの検出および追跡、キーポイントの識別および選択、ならびにCVモジュール155によって実行される他のタスクのうちの1つまたは複数を容易にするプログラムコードを保持し得る。いくつかの実施形態では、プロセッサ150は、CVモジュール155を含み得る。たとえば、メモリ160は、捕捉された画像フレーム、およびキーポイント記述子、キーポイントに関連付けられた類似度および/または追跡可能性スコア、深度情報、処理結果などを含む関連する画像データを保持し得る。メモリ160は、IMU130および他のセンサーによって提供されるデータも保持し得る。一般的に、メモリ160は任意のデータ記憶メカニズムを表すことができる。たとえば、メモリ160は1次メモリおよび/または2次メモリを含むことができる。1次メモリは、たとえば、ランダムアクセスメモリ、読取り専用メモリなどを含むことができる。図1ではプロセッサ150とは別個のものとして示されているが、1次メモリのすべてまたは一部がプロセッサ150内に設けられるか、あるいはプロセッサ150と一緒に配置する、および/またはそれに結合することができることが理解されるべきである。
2次メモリは、たとえば、1次メモリ、ならびに/あるいは、たとえば、フラッシュ/USBメモリドライブ、メモリカードドライブ、ディスクドライブ、光ディスクドライブ、テープドライブ、ソリッドステートドライブ、ハイブリッドドライブなどの、1つまたは複数のデータ記憶デバイスまたはシステムと同じまたは同様のタイプのメモリを含むことができる。いくつかの実装形態では、2次メモリは、MS100に結合されたリムーバブルメディアドライブ(図示せず)内の非一時的コンピュータ可読媒体を動作可能に受容し得るか、または場合によってはそれに結合するように構成可能であり得る。いくつかの実施形態では、非一時的コンピュータ可読媒体は、メモリ160および/またはプロセッサ150の一部を形成することができる。
いくつかの実施形態では、CVモジュール155は、様々なコンピュータビジョン方法を実施すること、および/またはカメラ110によってキャプチャされた画像を処理することができる。たとえば、CVモジュール155は、開示された実施形態と一致する方法で、キーポイントの識別および選択、類似度または追跡可能性スコアリング、ならびにキーポイントベースの検出および追跡を実行するために、カメラ110によってキャプチャされた1つまたは複数の画像を処理することが可能であり得る。いくつかの実施形態では、CVモジュール155は、たとえば単眼のビジュアルSLAM(VSLAM)技法を使用するなど、単眼(単一カメラ)を使用してキャプチャされた画像内のキーポイントに基づいてカメラ110の位置を追跡し得る。CVモジュール155は、様々な他の画像処理およびコンピュータビジョン機能も実行し得る。
図2Aは、それぞれ画像領域230、235および237内の例示的な候補キーポイント210、215、および217を有する画像フレーム200を示す。図2Aに示すように、画像フレームは、いくつかの候補キーポイントを有し得る。図2Bは、画像フレーム200内のキーポイント210に関連付けられた画像パッチ220を示す。図2Bでは、候補キーポイント215および217は示されていない。たとえば、画像パッチ220は、キーポイント210の周りの5×5画素の領域であり得る。いくつかの実施形態では、少なくとも部分的に、画像パッチ220を表すために、SIFT、SURF、または上記のその変形などの画像記述子が使用され得る。いくつかの実施形態では、画像パッチ220は、候補キーポイント210の位置を中心とし得る。一般に、画像パッチは任意の形状(たとえば、正方形、長方形、多角形、円形など)をとり得る。
いくつかの実施形態では、画像領域230は、画像パッチ220の周りのローカルな画像部分であり得る。画像領域230内の画像セクションは、画像パッチ220と一致し得、および/または類似度について測定され得る。「ローカル」という用語は、同じ画像内のキーポイント(たとえば、候補キーポイント210)からのある特定の画素距離内の画像の一部を指すために使用される。
図2Cは、画像フレーム230内の画像パッチ220に対応する画像領域240を示す。いくつかの実施形態では、(定義によれば)画像領域240が画像パッチ220に類似しているので、領域240(画像パッチ220に関連付けられた領域に対応する)は、類似度判定の間、無視され得る。
図2Dは、画像領域230内の画像パッチ220と比較され得る、例示的な画像セクション250-1、250-2、250-3、260-1、260-2および260-3を示す。図2Dに示すように、画像領域230は、いくつかの画像セクションを含み得る。類似度スコアは、画像パッチ220と、その画素を中心とし、画像パッチ220のサイズに対応する画像セクションとの間を一致させる、またはその間の類似度を測定することによって、画像領域230内の各画素について決定され得る。たとえば、図2Dに示すように、画像パッチ220は、画像フレーム230内の画像セクション250-1と比較され得る。類似度スコアが画像セクション250-1について決定された後、画像パッチ220は、画像セクション250-2と比較され得、画像セクション250-2は、領域250-1に対して1画素だけ右にオフセットされたセクションであり得る。類似度スコアが画像セクション250-2について決定された後、画像パッチ220は、画像セクション250-3と比較され得、画像セクション250-3は、セクション250-2に対して1画素だけ右にオフセットされたセクションであり得る。プロセスは、画像領域230内の画素について類似度スコアが決定されるまで継続し得る。画像セクション250-1、250-2、および250-3は、水平方向に1画素だけオフセットされる。しかしながら、図2Dに示すように、画像セクションは、領域260-1、260-2、および260-3によって示されるように、互いに対して垂直にオフセットされてもよい。一般に、画像パッチ220と比較するために、画像領域230内の次の画素および画像セクション(次の画素を中心とし、画像パッチ220のサイズに対応する)を選択するために、様々な技法または変位パターンが使用され得る。
キーポイント記述子が使用される場合、1対の画像フレーム間の一致および/または類似度スコアを計算するために、他の画像内のキーポイント記述子に対応するある画像内のキーポイント記述子は、たとえば、記述子値の類似度(たとえば、ユークリッド距離(L-2ノルム))および類似の相対幾何学的位置に基づいて決定され得る。いくつかの実施形態では、類似度は、たとえば、NCC、SSD、SAD、および他の相関ベースの画像マッチング方法を使用して決定され得る。
要するに、画像フレームは、いくつかの候補キーポイント(たとえば、候補キーポイント210)を含み得る。各候補キーポイント(たとえば、候補キーポイント210)は、対応する画像パッチ(たとえば、画像パッチ220)と関連付けられ得る。画像領域(たとえば、画像領域230)は、対応する画像パッチ(たとえば、画像パッチ220)の周りのローカルな画像部分であり得る。画像領域(たとえば、画像領域230)は、各画像セクションが対応する画像領域(たとえば、画像領域230)内の別個の画素を中心とするいくつかの対応するセクション(たとえば、画像セクション250-1、250-2、250-3、260-1、260-2、および260-3)を含み得る。さらに、各画像セクション(たとえば、画像セクション250-1、250-2、250-3、260-1、260-2、および260-3)は、対応する画像領域(たとえば、画像領域230)内の画像パッチ(たとえば、画像パッチ220)のサイズに対応し得る。
図3Aは、キーポイントに関連付けられた画像パッチ320の周りの画像領域内の例示的なローカルな画像セクション330を示す。画像パッチ320は、パターン310も含む。図3Aに示すように、パターン310は、パターン340と類似しており、パターン340もローカルな画像セクション330で生じる。
図3Bは、画像パッチ320がローカルな画像セクション330と比較されたときに取得される類似度の図式表現である。図3Bにおいて、ローカルな画像セクション330における画像領域370は、水平な線によって示されるような画像パッチ320と類似している。定義によれば、前に概説したように、画像領域360も画像パッチ320と類似している。画像領域360および370の外側にあるローカルな画像セクション330内の(影付き領域によって示されている)位置380で、類似度はより低くなり得る。
図4Aは、1組の候補キーポイントからキーポイントを決定するための例示的な方法400のフローチャートを示す。いくつかの実施形態では、方法400は、場合によってはMS100に通信可能に結合され得る、MS100および/またはサーバなど別のコンピューティングデバイス上で実行され得る。いくつかの実施形態では、方法400は、少なくとも部分的に、カメラ110によってキャプチャされた画像に基づいてプロセッサ150および/またはCVモジュール155によって実行され得る。
開始後、いくつかの実施形態では、ブロック401において、第1のまたは参照画像フレームがキャプチャされ、カウンタuが0に初期化され得る。参照画像は、キーポイントを識別するのに適していると判定された任意の画像であり得、その後の追跡を容易にするのに十分な数のキーポイントを含むものであり得る。いくつかの実施形態では、第1の/参照画像は、MS100上のカメラ110によってキャプチャされたライブビデオフィードから選択された画像フレームであり得る。いくつかの実施形態では、第1の/参照画像フレームは、カメラ設定に基づく第1の解像度でキャプチャされ得る。
いくつかの実施形態では、ブロック403において、画像の階層が第1の/参照画像から随意に取得され得、画像の階層内の各画像は対応する画像解像度を有し得る。たとえば、キャプチャされた第1の/参照画像キーフレームをサブサンプリングして、第1の/参照画像に関連付けられた異なる解像度の画像の階層を取得し得る。より低い解像度の画像は、カメラの動きが大きい場合の追跡を容易にする。
たとえば、異なる解像度の画像は、ピラミッドを構成するものと見なされ得、ピラミッドの各レベルは、画像ピラミッドのすぐ上またはすぐ下のレベルから何らかの要因によって解像度が異なる画像を含む。たとえば、ピラミッドの最高レベル(レベル0)は、未加工または最高解像度の画像(階層/ピラミッド内の他の画像と比較して)を有することができ、それよりも下の各レベルは、いくつかの要因によって、すぐ上のレベルに対する画像をダウンサンプリングすることができる。たとえば、(レベル0における)サイズ640×480の画像I0に対して、画像I1、I2、I3、およびI4は、それぞれ320×240、160×120、80×60および40×30のサイズのものであり得、下付き文字は、画像ピラミッドにおける画像レベルを示す。したがって、画像ピラミッドにおける画像内の各キーポイントは、(i)そのソースフレーム(たとえば、キャプチャされた第1の/参照画像フレーム)、(ii)ソースキーフレームに関連付けられた階層内のサブサンプリングされた低解像度画像のうちの1つ、および(iii)ソースまたはサブサンプリングされた画像キーフレーム内のローカルな位置または画像パッチに関連付けられ得る。画像の階層は、同じシーンの異なる解像度の画像として見られ得る。一般に、画像ピラミッドを取得するために様々な他の技法が使用され得る。たとえば、第1および第2のレベルが連続するレベルである場合、画像ピラミッドにおける第1のレベルの低解像度画像は、画像ピラミッドの第2のレベルの高解像度画像の何らかの数学的関数であり得る。いくつかの実施形態では、ブロック403は省略されてもよい。
いくつかの実施形態では、ブロック407において、画像ピラミッド内の第1のまたは次の画像Iuが選択され得る。ブロック409において、画像Iuは随意にぼかされ得る。ぼかしは、様々なフィルタを使用して実行され得る。たとえば、ガウス、平均、または加重平均フィルタが画像に適用されてもよい。いくつかの実施形態では、キーポイントの決定に先立って画像をぼかすことによって、キーポイントが追跡されたときに顕著な特徴の識別が容易になり、追跡の頑強さが向上し得る。いくつかの実施形態では、ブロック409は省略されてもよい。
いくつかの実施形態では、次いで、画像Iuのn個のキーポイントの組を決定するように、ルーチン411が呼び出され得る。たとえば、いくつかの実施形態では、画像Iuがパラメータとして、図4Bのルーチン415に渡され得る。例示的なルーチン411は、図4Bのフローチャートにおいてさらに概説され、以下でさらに説明される。ルーチン411は、記憶され得る画像Iuのキーポイントの組を戻し得る。したがって、ルーチン411の各呼出しは、画像Iuの何らかのあらかじめ定義された数の(n個の)キーポイントの組を戻す。ルーチン411によって戻されたn個のキーポイントの各サブセットは、画像ピラミッドにおけるあるレベルの画像に対応する。
ブロック413において、処理すべき画像ピラミッド内に追加の画像がある場合(ブロック413における「Y」)、ブロック405で別の反復が開始され、ここでカウンタuが増分され、次の画像Iuが処理される。画像ピラミッド内にさらなる画像がない場合(ブロック413における「N」)、プロセスは終了する。方法400が終了すると、複数の組のキーポイントが決定され得、各組は、画像ピラミッド内の対応するレベルの画像に対応する。
図4Bは、Iuの1組の候補キーポイントから単一の画像Iuのキーポイントのサブセットを選択するための例示的な方法411のフローチャートを示す。いくつかの実施形態では、方法400は、場合によってはMS100に通信可能に結合され得る、MS100および/またはサーバなど別のコンピューティングデバイス上で実行され得る。いくつかの実施形態では、方法400は、少なくとも部分的に、カメラ110によってキャプチャされた画像に基づいてプロセッサ150および/またはCVモジュール155によって実行され得る。
ブロック415において、現在の参照画像について、1組の候補キーポイントが決定され得る。一般に、1組の候補キーポイントを決定するために、任意の既知の技法が使用され得る。たとえば、現在画像におけるコーナーポイント(たとえば、ハリスコーナー検出、DoGなどを使用して検出された)が使用されてもよい。いくつかの実施形態では、1組の候補キーポイントを決定するために、SIFT、SURF、またはその変形のうちの1つに基づく技法が使用され得る。
ブロック416において、候補キーポイントkiのカウントを維持し得るカウンタiが0に初期化/設定され得る。次に、ブロック417において、キーポイントkiの近傍にあるローカルな画像セクションの現在画像セクションGijの追跡を維持し得るカウンタjが0に初期化/設定され得る。ブロック418において、第1のまたは次の候補キーポイントkiが選択され得る。
ブロック425において、キーポイントkiに関連付けられた画像パッチPiが、キーポイントkiの近傍にある選択された対応する現在のローカルな画像セクションGijと比較され得、その比較に基づいて類似度スコアSijが決定され得る。たとえば、図2Bおよび図2Dを参照すると、画像パッチPiが画像パッチ220に対応し、現在のローカルな画像セクションGijが画像領域260-1に対応する場合、画像パッチ220と画像領域260-1の比較に基づいて類似度スコアが決定され得る。いくつかの実施形態では、画像パッチPiに関連付けられた画像領域は、ブロック425における比較の間、無視され得る。たとえば、図2Bおよび図2Dを参照すると、画像パッチPiが画像パッチ220に対応する場合、画像パッチ220に関連付けられた画像領域240は、比較の間、無視され得る。一般に、画像パッチと画像セクションとの間の、または2つの画像フレーム間の一致および/または類似度スコアを決定するために、他の画像(それぞれセクションまたはフレーム)内のキーポイント記述子に対応するある画像(パッチまたはフレーム)内のキーポイント記述子は、たとえば、記述子値の類似度(たとえば、ユークリッド距離(L-2ノルム))および類似の相対幾何学的位置に基づいて決定され得る。いくつかの実施形態では、類似度は、たとえば、NCC、SSD、SAD、正準相関、または他の相互相関ベースの画像マッチング方法のうちの1つを使用して判定され得る。
ブロック430において、画像パッチPiと比較され得る画像セクションの追加の部分がある場合(ブロック430における「Y」)、ブロック420において、カウンタjが増分され、次の画像セクションGijの別の反復が開始される。いくつかの実施形態では、各Gijを画像パッチPiと比較することによって計算された類似度スコアSijは、MS100のメモリ160に記憶され得る。たとえば、図2Bおよび図2Dを参照すると、画像パッチPiが画像パッチ220に対応し、次のローカルな画像セクションGijが画像領域260-2に対応し得る場合、画像パッチ220と画像領域260-2の比較に基づいて類似度スコアが決定され得る。
ブロック430において、ローカルな画像セクションと比較されるべきローカルな画像セクション内の部分Gijがそれ以上存在しない場合(ブロック430において「N」)、ブロック435において、測定された類似度スコアの最大値に基づいて、現在のキーポイントkiについて、類似度スコアが決定され得る。いくつかの実施形態では、キーポイントkiの測定された類似度スコアの最大値はSi_max=max(Sij)として決定され得、ここで、類似度スコアSijは、対応する各画像セクションGijを画像パッチPiと比較することによって計算され、ここにおいて、画像区間Gijは、画像パッチPiの周りの領域にある。いくつかの実施形態では、画像パッチPiがそれ自体と類似しているので、画像セクションGijを選択するとき、画像パッチPiによって占領される領域が除外され得る。
いくつかの実施形態では、類似度スコアが追跡可能性スコアTiに変換され得る。たとえば、キーポイントkiに対応する追跡可能性スコアTiは、測定された類似度スコアの最大値Si_maxに反比例するように決定されてもよい。たとえば、0≦Si_max≦1であり、ここで0は類似度がなく、1が最大類似度を示す場合、一実施形態では、追跡可能性スコアTiはTi=1-Si_maxとして定義され得る。上記の式は単に例示的なものであり、開示された実施形態と一致する方法で、Tiを計算するための様々な他の方式が使用され得る。
ブロック440において、追加のキーポイントが存在する場合(ブロック440において「Y」)、ブロック443において、カウンタiが増分され、次のキーポイントkiについての新しい反復が開始される。
ブロック440において、追加のキーポイントがない場合(ブロック440において「N」)、ブロック445において、最も低い類似度スコア(または最も高い追跡可能性スコア)を有するnu個のキーポイントのサブセットRuが1組の候補キーポイントkiから選択され得、ここで、nuは、画像Iuについてのキーポイントの所望の数である。いくつかの実施形態では、後続の画像シーケンスにおいてオブジェクトを検出し、追跡するために、サブセットRu内のキーポイントが使用され得る。
いくつかの実施形態では、画像全体についてのキーポイントを決定するために、方法411が使用され得る。さらに、各サブセットRu内のキーポイントの数nuは、所望の応答時間および追跡精度、ならびに他の画像およびシステムパラメータに基づいて変わり得る。いくつかの実施形態では、1組の候補キーポイントから選択されたキーポイントの数は、候補キーポイントの数よりも大幅に少ない可能性があるので、追跡はより高速で、リソースの節約(たとえば、メモリ使用量の低減など)になり得る。したがって、開示された実施形態は、限られた計算リソースを有するモバイルデバイス上のリアルタイムまたはほぼリアルタイムの拡張現実(AR)の用途を容易にし、および/またはより速いロバストな追跡を容易にし、それによってシームレスなAR経験を提供し得る。さらに、一連の画像フレームにわたるより低い計算オーバーヘッドは、省電力化を提供し得る。
図5は、開示された実施形態と一致する、キーポイントを追跡するための方法500を示す。いくつかの実施形態では、方法500は、場合によってはMS100に通信可能に結合され得る、MS100および/またはサーバなど別のコンピューティングデバイス上で実行され得る。いくつかの実施形態では、方法500は、少なくとも部分的に、カメラ110によってキャプチャされた画像に基づいてプロセッサ150および/またはCVモジュール155によって実行され得る。
いくつかの実施形態では、方法500は、1組のキーポイントを決定するために方法/ルーチン400を呼び出すことによって開始し得る。いくつかの実施形態では、キーポイントは、第1の参照画像に関連付けられた画像ピラミッドについて決定され得る。いくつかの実施形態では、第1の/参照画像および他の画像は、たとえば、MS100上のカメラ110によってキャプチャされた画像などのライブフィード510から取得され得る。
ブロック520において、オブジェクトが、(第1の/参照画像に続く)1つまたは複数の後続の画像において追跡され得る。いくつかの実施形態では、ブロック520において、キーポイントに関連付けられた画像パッチと画像パッチの周りの領域との類似度を判定するために、ルーチン411で使用されたのと同じ相互相関方式に基づいて画像間でオブジェクトが追跡され得る。
ブロック530において、追跡が継続される場合(ブロック530において「Y」)、ブロック540において、追跡に利用可能なキーポイントの数が判定され得る。追跡に利用可能なキーポイントが十分にある場合(ブロック540において「Y」)、ブロック520から別の反復が開始され得る。一方、キーポイントの数が不十分である場合(ブロック540において「N」)、現在のまたは最新の画像から新しい/追加のキーポイントを決定するためにルーチン411に戻って別の反復が開始され得る。たとえば、(たとえば、カメラと撮像されたシーンとの間の相対的動きのためにキーポイントが画像フレームから移動するとき)キーポイントの数が何らかの閾値未満である場合、ルーチン411で新しいキーポイントが決定され得る。
追跡が終了した場合(ブロック530において「N」)、方法は終了し得る。
次に図6を参照すると、図6は、開示された実施形態と一致する方法で、画像内のキーポイントを決定することを可能にするサーバ600を示す概略ブロック図である。いくつかの実施形態では、サーバ600は、方法400、および/または500の諸部分を実行することができる。いくつかの実施形態では、方法400、および/または500を、処理ユニット650および/またはコンピュータビジョン(CV)モジュール655によって実行することができる。たとえば、上記の方法を、サーバ600の1つまたは複数の機能ユニットに関連しておよび/またはMS100に関連して、処理ユニット650および/またはCVモジュール655によって全体としてまたは部分的に実行することができる。
いくつかの実施形態では、サーバ600を、WWAN、WLAN、またはWPANのうちの1つとすることができるワイヤレスネットワーク(図示せず)を介して1つまたは複数のMS100にワイヤレスで結合することができる。いくつかの実施形態では、サーバ600は、たとえば、1つまたは複数の接続620(たとえば、バス、信号線、ファイバ、リンクなど)を用いて動作可能に結合され得る、1つまたは複数の処理ユニット650、メモリ680、ストレージ660、および(適用可能な場合に)通信インターフェース690(たとえば、有線またはワイヤレスのネットワークインターフェース)を含むことができる。ある種の例の実施態様では、サーバ600のある部分が、チップセットおよび/または類似物の形をとることができる。
通信インターフェース690は、有線の送信および/または受信をサポートし、望まれる場合には、それに加えてまたはその代わりに、1つまたは複数のタイプのワイヤレス通信ネットワークを介する1つまたは複数の信号の送信および受信をサポートすることができる、様々な有線接続およびワイヤレス接続を含むことができる。通信インターフェース690は、MS100ならびに/または様々な他のコンピュータおよび周辺機器との通信のためのインターフェースを含むことができる。たとえば、一実施形態では、通信インターフェース690は、サーバ600によって実行される通信機能のうちの1つまたは複数を実施する、ネットワークインターフェースカード、入出力カード、チップ、および/またはASICを含むことができる。いくつかの実施形態では、通信インターフェース690は、参照画像を取得し、および/または方法700に関連するデータおよび/または命令を受信するためにMS100とインターフェースすることもできる。
処理ユニット650は、要求された計算を実行し、かつ/または要求された情報および/もしくは結果を通信インターフェース690を介してMS100に送るために、受信された情報の一部またはすべてを使用することができる。いくつかの実施形態では、処理ユニット650を、ハードウェア、ファームウェア、およびソフトウェアの組合せを使用して実施することができる。いくつかの実施形態では、処理ユニット650は、サーバ600の動作に関するデータ信号コンピューティング手順またはプロセスの少なくとも一部を実行するように構成可能な1つまたは複数の回路を表すことができる。
いくつかの実施形態では、処理ユニット650は、AR手順、参照画像の取得/決定、画像処理の実行、参照画像内のキーポイントの決定/検出、キーポイントの追跡、画像または画像部分の比較、参照画像からの画像ピラミッドの取得、画像内のオブジェクトの追跡などを含むコンピュータビジョン方法を実装し実行し得るコンピュータビジョン(CV)モジュール655を含み得る。たとえば、CVモジュール655は、開示された実施形態と一致する方法で、キーポイント識別および選択、追跡可能性スコアリング、ならびにキーポイントベースの検出および追跡を実行するために、カメラによってキャプチャされた1つまたは複数の画像を処理することが可能であり得る。いくつかの実施形態では、CVモジュール655は、たとえばビジュアルSLAM(VSLAM)技法を使用するなど、単眼(単一カメラ)を使用してキャプチャされた画像内のキーポイントに基づいてカメラの位置を決定し得る。CVモジュール155は、様々な他の画像処理およびコンピュータビジョン機能も実行し得る。
本明細書で流れ図またはメッセージフローで説明される方法論を、応用例に応じて様々な手段によって実施することができる。たとえば、これらの方法論を、ハードウェア、ファームウェア、ソフトウェア、またはその任意の組合せで実施することができる。ハードウェア実装形態の場合、処理ユニット650は、1つまたは複数の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、グラフィカル処理ユニット(GPU)、プログラマブル論理デバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、電子デバイス、本明細書で説明する機能を実行するように設計された他の電子ユニット、あるいはそれらの組合せ内で実装されてもよい。
ファームウェアおよび/またはソフトウェアの実装形態の場合、これらの方法は、本明細書で説明した機能を実行する手順、機能、マイクロコードなどを使用して実装されてもよい。命令を有形に具現化するいずれの機械可読媒体も、本明細書で説明する方法を実装する際に使用され得る。たとえば、ソフトウェアを、リムーバブルメディアドライブ670内に記憶することができ、リムーバブルメディアドライブ670は、リムーバブルメディアを含む非一時的コンピュータ可読媒体676の使用をサポートすることができる。プログラムコードは、非一時的コンピュータ可読媒体676またはメモリ680に存在することができ、処理ユニット650によって読み取られ、実行され得る。メモリは、処理ユニット650内または処理ユニット650の外部で実施され得る。本明細書で使用する「メモリ」という用語は、任意のタイプの長期、短期、揮発性、不揮発性、または他のメモリを指し、メモリのどの特定のタイプもしくはメモリの個数またはメモリが記憶される媒体のタイプにも限定されない。
ファームウェアおよび/またはソフトウェアで実施される場合、諸機能を、非一時的コンピュータ可読媒体676および/またはメモリ680上の1つまたは複数の命令またはコードとして記憶することができる。例は、データ構造を符号化されたコンピュータ可読媒体およびコンピュータプログラムを符号化されたコンピュータ可読媒体を含む。たとえば、プログラムコードを記憶した非一時的コンピュータ可読媒体676は、開示された実施形態と一致する方法で1つまたは複数の画像におけるキーポイント決定/選択およびキーポイントベースの検出および追跡を容易にするためのプログラムコードを含み得る。
非一時的コンピュータ可読媒体は、様々な物理コンピュータ記憶媒体を含むことができる。記憶媒体は、コンピュータによってアクセスできる任意の入手可能な媒体とすることができる。限定ではなく例として、そのような非一時的コンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または命令もしくはデータ構造の形で所望のプログラムコードを記憶するために使用することができ、かつコンピュータによってアクセスすることができる任意の他の媒体を備えてよく、本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピーディスク(disk)およびブルーレイディスク(disc)を含み、ディスク(disk)は通常、データを磁気的に再生し、一方、ディスク(disc)はレーザーを用いてデータを光学的に再生する。非一時的コンピュータ可読媒体の他の例は、フラッシュドライブ、USBドライブ、ソリッドステートドライブ、メモリカードなどを含む。上記の組合せも、コンピュータ可読媒体の範囲内に含まれなければならない。
コンピュータ可読媒体上のストレージに加えて、命令および/またはデータは、伝送媒体上の信号として通信インターフェース690に提供され得、通信インターフェース690は、命令/データをメモリ680、ストレージ660に記憶し、かつ/または命令/データを実行のために処理ユニット650に中継することができる。たとえば、通信インターフェース690は、命令およびデータを示すワイヤレス信号またはネットワーク信号を受信することができる。命令およびデータは、1つまたは複数のプロセッサに、特許請求の範囲において概説される機能を実装させるように構成される。すなわち、通信装置は、開示される機能を実行するための情報を示す信号を有する送信媒体を含む。
メモリ680は、任意のデータ記憶機構を代表するものであってよい。たとえば、メモリ680は1次メモリおよび/または2次メモリを含み得る。1次メモリは、たとえば、ランダムアクセスメモリ、読取り専用メモリ、不揮発性RAMなどを含み得る。この例では処理ユニット650とは別個のものとして示されているが、1次メモリの全部または一部が処理ユニット650内に設けられるか、あるいは処理ユニット650と共設/結合され得ることを理解されたい。2次メモリは、たとえば、1次メモリおよび/または、たとえばハードディスク(disk)ドライブ、光ディスク(disc)ドライブ、テープドライブ、ソリッドステートメモリドライブなどを含む1つまたは複数のデータストレージデバイス660などのストレージ660と同一のまたは類似するタイプのメモリを含むことができる。
いくつかの実施形態では、ストレージ660は、3Dモデル、キーフレーム、仮想オブジェクトに関する情報などを含む、シーンに関する情報を保持することができる1つまたは複数のデータベースを含むことができる。いくつかの実施形態では、データベース内の情報を、様々な計算中に処理ユニット650によって読み取り、使用し、かつ/または更新することができる。
いくつかの実装形態では、2次メモリは、非一時的コンピュータ可読媒体676を動作可能に受容するか、または場合によってはそれに結合するように構成することができる。したがって、ある種の例の実施態様では、本明細書で提示される方法および/または装置は、少なくとも1つの処理ユニット650によって実行される場合に本明細書で説明される例の動作のすべてまたは一部を実行することを動作可能にされ得る、その上に記憶されたコンピュータ実施可能命令を含み得る非一時的コンピュータ可読媒体676を使用して全体としてまたは部分的に実施され得る。いくつかの実施形態では、コンピュータ可読媒体676を、リムーバブルメディアドライブ670を使用して読み取ることができ、かつ/またはコンピュータ可読媒体676が、メモリ680の一部を形成することができる。
たとえば、ソフトウェアコードはメモリに記憶され、サーバ600上のプロセッサ650などのプロセッサユニットによって実行され得る。いくつかの実施形態では、機能は、1つまたは複数の命令またはコードとして、コンピュータ可読媒体上に記憶され得る。これらの例には、データ構造により符号化されたコンピュータ可読媒体およびコンピュータプログラムにより符号化されたコンピュータ可読媒体が含まれる。コンピュータ可読媒体は、物理的なコンピュータ記憶媒体を含む。
記憶媒体は、コンピュータによってアクセスできる任意の入手可能な媒体とすることができる。限定ではなく例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または命令もしくはデータ構造の形で所望のプログラムコードを記憶するために使用することができ、かつコンピュータによってアクセスすることができる任意の他の媒体を備えてよく、本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標) (disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピーディスク(disk)およびブルーレイディスク(disc)を含み、ディスク(disk)は通常、データを磁気的に再生し、一方、ディスク(disc)はレーザーを用いてデータを光学的に再生する。上記の組合せも、コンピュータ可読媒体の範囲内に含まれなければならない。
コンピュータ可読媒体上のストレージに加えて、命令および/またはデータは、通信装置に含まれる伝送媒体上の信号として提供され得る。たとえば、通信装置は、命令およびデータを表す信号を有する送受信機を含んでもよい。命令およびデータは、1つまたは複数のプロセッサに、特許請求の範囲において概説される機能を実装させるように構成される。すなわち、通信装置は、開示される機能を実行するための情報を示す信号を有する送信媒体を含む。最初は、通信装置に含まれる送信媒体は、開示された機能を実行するための情報の第1の部分を含むことができ、2度目は、通信装置に含まれる送信媒体は、開示された機能を実行するための情報の第2の部分を含むことができる。
図7は、カメラによってキャプチャされた第1のまたは参照画像のキーポイントを決定するための例示的な方法700を示す。いくつかの実施形態では、方法700は、MS100および/またはサーバ100によって実行され得る。いくつかの実施形態では、方法700は、MS100上でのみ実行されてもよい。一例として、方法700は、サーバ600によって取得された、またはサーバ600が利用可能な画像に基づいて、サーバ600によってMS100上で実行され得る。いくつかの実施形態では、MS100によってキャプチャされた画像は、処理のためにサーバ600に送られ、1組のキーポイントなどの結果をMS100に戻し得る。
ブロック710において、カメラでキャプチャされた第1の画像に基づいて1組の候補キーポイントが決定され得る。いくつかの実施形態では、第1の画像に基づいて1組の候補キーポイントを決定することは、第1の画像から画像の階層を取得することを含み得、画像の階層内の各画像は対応する画像解像度を有する。いくつかの実施形態では、画像が取得されたとき、画像の階層内の1つまたは複数の画像がぼかされ得る。さらに、画像の階層が第1の画像から取得される実施形態では、候補キーポイントの複数の第2のサブセットが取得され得、候補キーポイントの各第2のサブセットは画像の階層内の別個の画像に関連付けられ、1組の候補キーポイントは、複数の第2のサブセットを含む。
ブロック720において、1組の候補キーポイントにおける各候補キーポイントについて、対応する第1の類似度スコアが決定され得る。部分的に、対応する候補キーポイントに関連付けられた画像パッチを、画像パッチの周りの領域内の複数の対応する画像セクションと比較することによって、候補キーポイントに対応する第1の類似度スコアが決定され得る。
いくつかの実施形態では、各候補キーポイントに対応する第1の類似度スコアを決定するために、各候補キーポイントに対応する複数の第2の類似度スコアが決定され得る。各第2の類似度スコアは、対応する候補キーポイントに関連付けられた画像パッチと、画像パッチの周りの領域内の対応する複数の画像セクションのうちの1つとの比較から決定され得、各第2の類似度スコアは、対応する候補キーポイントに関連付けられた画像パッチと対応する画像セクションとの間の類似度を示し得る。次いで、候補キーポイントの第1の類似度スコアが、その候補キーポイントの第2の類似度スコアの最大値として選択され得る。
いくつかの実施形態では、各候補キーポイントに対応する複数の第2の類似度スコアを決定するために、候補キーポイントに対応する複数の第2の類似度スコアの各々は、少なくとも部分的に、候補キーポイントに関連付けられた画像パッチと対応する画像セクションとの間の相互相関の尺度に基づいて計算され得る。たとえば、相互相関の尺度は、部分的に、正規化相互相関、または2乗差分和、または正準相関分析のうちの1つから選択された相互相関を実行することに基づいて取得され得る。
いくつかの実施形態では、選択されたキーポイントは、少なくとも1つの第2の画像における選択された相互相関に基づいて追跡されてもよい。
ブロック730において、候補キーポイントの第1のサブセットが選択され得、第1のサブセットが、最も低い類似度スコアを有するあらかじめ定義された数の候補キーポイントを含み得る。一例として、何らかのあらかじめ定義された数nのキーポイントが望まれる場合、第1のサブセットは、n個の最も低い類似度スコアを有するキーポイントを含み得る。別の例として、第1のサブセットは、ある閾値スコア未満の類似度スコアを有するすべてのキーポイントを含み得る。上記の例では、何らかのあらかじめ定義された数nのキーポイントが望まれ、閾値未満の類似度スコアを有する候補キーポイントの数が(n+p)である場合、n個のキーポイントを取得するために、最も高い類似度スコアを有する「p」個の候補キーポイントが除去され得る。一方、閾値未満の類似度スコアを有するキーポイントの数が(n-p)である場合、n個のキーポイントを取得するために、残りの候補キーポイントの最も低い類似度スコアを有する「p」個の候補キーポイントが追加され得る。キーポイントのあらかじめ定義された数は、画像ピラミッド内の画像レベルによって変わり得、応答時間、追跡精度、環境条件などのシステムパラメータに基づいて変更される場合もある。
いくつかの実施形態では、画像パッチは、画像記述子を使用して表され得る。たとえば、画像記述子は、スケール不変特徴変換(SIFT)もしくはその変形、または高速化ロバスト特徴(「SURF」)もしくはその変形のうちの1つを含み得る。いくつかの実施形態では、画像記述子を使用して画像パッチが表されるとき、候補キーポイントに対応する第1の類似度スコアは、部分的に、画像パッチに関連付けられた画像記述子と画像パッチの周りの領域内の1つまたは複数の画像記述子の類似度に基づいて取得され得、1つまたは複数の画像記述子の各々は、画像パッチの周りの領域内の別個の画像セクションに対応する。画像記述子の類似度は、画像パッチを表すために使用される記述子の類似度を決定するために指定された技法に基づいて決定され得る。
さらに、いくつかの実施形態では、方法700は、カメラによってキャプチャされた少なくとも1つの第2の画像内のキーポイントの第1のサブセットを追跡するステップをさらに含み得る。
本明細書で説明した方法は、用途に応じて様々な手段によって実装され得る。たとえば、ファームウェアおよび/またはソフトウェア実装形態の場合、これらの方法は、本明細書で説明する機能を実行する手順、機能などを使用して実施することができる。命令を有形に具現化するいずれの機械可読媒体も、本明細書で説明する方法を実装する際に使用され得る。
本開示の態様の上の記載は、当業者が本開示を作り使用することが可能になるように提供される。これらの態様への種々の変更は当業者には容易に明らかになり、本明細書において規定された一般原理は、本開示の趣旨または範囲から逸脱することなく他の態様に適用することができる。
100 移動局(MS)
110 カメラ
120 接続
130 慣性測定ユニット(IMU)
150 プロセッサ
155 コンピュータビジョン(CV)モジュール
160 メモリ
170 送受信機
180 ディスプレイ/スクリーン
210 候補キーポイント
215 候補キーポイント
217 候補キーポイント
220 画像パッチ
230 画像領域
235 画像領域
237 画像領域
240 画像領域
250-1 画像セクション
250-2 画像セクション
250-3 画像セクション
260-1 画像セクション
260-2 画像セクション
310 パターン
320 画像パッチ
330 ローカルな画像セクション
340 パターン
360 画像領域
370 画像領域
380 位置
510 ライブフィード
600 サーバ
620 接続
650 処理ユニット
655 コンピュータビジョン(CV)モジュール
660 ストレージ
676 非一時的コンピュータ可読媒体
680 メモリ
690 通信インターフェース

Claims (30)

  1. カメラでキャプチャされた第1の画像に基づいて1組の候補キーポイントを決定するステップと、
    前記1組の候補キーポイントにおける各候補キーポイントについて、対応する第1の類似度スコアを決定するステップであって、部分的に、前記対応する候補キーポイントに関連付けられた画像パッチを、前記画像パッチの周りの領域内の複数の対応する画像セクションと比較することによって、各候補キーポイントに対応する前記第1の類似度スコアが決定される、ステップと、
    前記候補キーポイントの第1のサブセットを選択するステップであって、前記第1のサブセットが、最も低い類似度スコアを有するあらかじめ定義された数の候補キーポイントを含む、ステップと
    を含む方法。
  2. 各候補キーポイントに対応する前記第1の類似度スコアを決定するステップが、
    各候補キーポイントに対応する複数の第2の類似度スコアを決定するステップであって、各第2の類似度スコアが、前記対応する候補キーポイントに関連付けられた前記画像パッチと、前記画像パッチの周りの前記領域内の前記対応する複数の画像セクションのうちの1つとの前記比較から決定され、各第2の類似度スコアが、前記対応する候補キーポイントに関連付けられた前記画像パッチと前記対応する画像セクションとの間の類似度を示す、ステップと、
    前記第1の類似度スコアとして、その候補キーポイントについての前記第2の類似度スコアの最大値を選択するステップと
    を含む、請求項1に記載の方法。
  3. 各候補キーポイントに対応する前記複数の第2の類似度スコアを決定するステップが、
    前記候補キーポイントに関連付けられた前記画像パッチと前記対応する画像セクションとの間の相互相関の尺度に少なくとも部分的に基づいて前記複数の第2の類似度スコアの各々を計算するステップ
    を含む、請求項2に記載の方法。
  4. 相互相関の前記尺度が、部分的に、
    正規化相互相関、または
    2乗差分和、または
    絶対差分和
    のうちの1つから選択される相互相関法に基づいて相互相関を実行することによって決定される、請求項3に記載の方法。
  5. 前記選択された相互相関に基づいて、前記選択されたキーポイントに部分的に基づいて、前記カメラによってキャプチャされた少なくとも1つの第2の画像内のオブジェクトを追跡するステップ
    をさらに含む請求項4に記載の方法。
  6. 前記候補キーポイントに関連付けられた前記画像パッチが、画像記述子を使用して表される、請求項1に記載の方法。
  7. 前記画像記述子が、
    スケール不変特徴変換(SIFT)もしくはその変形、または
    高速化ロバスト特徴(「SURF」)もしくはその変形
    のうちの1つを含む、請求項6に記載の方法。
  8. 前記候補キーポイントに対応する前記第1の類似度スコアが、部分的に、前記画像パッチに関連付けられた前記画像記述子と前記画像パッチの周りの前記領域内の複数の画像記述子の類似度に基づいて決定され、前記複数の画像記述子の各々が、前記画像パッチの周りの前記領域内の別個の画像セクションに対応する、請求項6に記載の方法。
  9. 候補キーポイントの前記第1のサブセットに部分的に基づいて、前記カメラによってキャプチャされた少なくとも1つの第2の画像内の1つまたは複数のオブジェクトを追跡するステップ
    をさらに含む、請求項1に記載の方法。
  10. 前記第1の画像に基づいて前記1組の候補キーポイントを決定するステップが、
    前記第1の画像から画像の階層を取得するステップであって、画像の前記階層内の各画像が、対応する画像解像度を有する、ステップと、
    候補キーポイントの複数の第2のサブセットを決定するステップであって、候補キーポイントの各第2のサブセットが、画像の前記階層内の別個の画像に関連付けられ、前記1組の候補キーポイントが、候補キーポイントの前記複数の第2のサブセットを含む、ステップと
    を含む、請求項1に記載の方法。
  11. 前記第1の画像から画像の階層を取得するステップが、
    画像の前記階層内の1つまたは複数の画像をぼかすステップ
    を含む、請求項10に記載の方法。
  12. 第1の画像を含む複数の画像をキャプチャするためのカメラと、
    前記複数の画像を記憶するためのメモリと、
    前記カメラと前記メモリとに結合されたプロセッサと
    を含み、
    前記プロセッサが、
    カメラでキャプチャされた前記第1の画像に基づいて1組の候補キーポイントを決定することと、
    前記1組の候補キーポイントにおける各候補キーポイントについて、対応する第1の類似度スコアを決定することであって、部分的に、前記対応する候補キーポイントに関連付けられた画像パッチを、前記画像パッチの周りの領域内の複数の対応する画像セクションと比較することによって、各候補キーポイントに対応する前記第1の類似度スコアが決定される、決定することと、
    前記候補キーポイントの第1のサブセットを選択することであって、前記第1のサブセットが、最も低い類似度スコアを有するあらかじめ定義された数の候補キーポイントを含む、選択することと
    を行うように構成される、移動局(MS)。
  13. 各候補キーポイントに対応する前記第1の類似度スコアを決定するために、前記プロセッサが、
    各候補キーポイントに対応する複数の第2の類似度スコアを決定することであって、各第2の類似度スコアが、前記対応する候補キーポイントに関連付けられた前記画像パッチと、前記画像パッチの周りの前記領域内の前記対応する複数の画像セクションのうちの1つとの前記比較から決定され、各第2の類似度スコアが、前記対応する候補キーポイントに関連付けられた前記画像パッチと前記対応する画像セクションとの間の類似度を示す、決定することと、
    前記第1の類似度スコアとして、その候補キーポイントについての前記第2の類似度スコアの最大値を選択することと
    を行うように構成される、請求項12に記載のMS。
  14. 各候補キーポイントに対応する前記複数の第2の類似度スコアを決定するために、前記プロセッサが、
    前記候補キーポイントに関連付けられた前記画像パッチと前記対応する画像セクションとの間の相互相関の尺度に少なくとも部分的に基づいて前記複数の第2の類似度スコアの各々を計算する
    ように構成される、請求項13に記載のMS。
  15. 相互相関の前記尺度を決定するために、前記プロセッサが、
    正規化相互相関、または
    2乗差分和、または
    絶対差分和
    のうちの1つから選択される相互相関法に基づいて相互相関を実行する
    ように構成される、請求項14に記載のMS。
  16. 前記プロセッサが、
    前記選択された相互相関に基づいて、前記選択されたキーポイントに部分的に基づいて、前記カメラによってキャプチャされた少なくとも1つの第2の画像内のオブジェクトを追跡する
    ようにさらに構成される、請求項15に記載のMS。
  17. 前記候補キーポイントに関連付けられた前記画像パッチが、画像記述子を使用して表される、請求項12に記載のMS。
  18. 前記画像記述子が、
    スケール不変特徴変換(SIFT)もしくはその変形、または
    高速化ロバスト特徴(「SURF」)もしくはその変形
    のうちの1つを含む、請求項17に記載のMS。
  19. 前記候補キーポイントに対応する前記第1の類似度スコアが、部分的に、前記画像パッチに関連付けられた前記画像記述子と前記画像パッチの周りの前記領域内の複数の画像記述子の類似度に基づいて決定され、前記複数の画像記述子の各々が、前記画像パッチの周りの前記領域内の別個の画像セクションに対応する、請求項17に記載のMS。
  20. 前記第1の画像に基づいて前記1組の候補キーポイントを決定するために、前記プロセッサが、
    前記第1の画像から画像の階層を取得することであって、画像の前記階層内の各画像が、対応する画像解像度を有する、取得することと、
    候補キーポイントの複数の第2のサブセットを決定することであって、候補キーポイントの各第2のサブセットが、画像の前記階層内の別個の画像に関連付けられ、前記1組の候補キーポイントが、候補キーポイントの前記複数の第2のサブセットを含む、決定することと
    を行うように構成される、請求項12に記載のMS。
  21. 前記第1の画像から画像の階層を取得するために、前記プロセッサが、
    画像の前記階層内の1つまたは複数の画像をぼかす
    ように構成される、請求項20に記載のMS。
  22. 前記プロセッサが、
    候補キーポイントの前記第1のサブセットに部分的に基づいて、前記カメラによってキャプチャされた少なくとも1つの第2の画像内のオブジェクトを追跡する
    ようにさらに構成される、請求項12に記載のMS。
  23. 第1の画像を含む複数の画像をキャプチャするための画像検知手段と、
    画像検知手段によってキャプチャされた第1の画像に基づいて1組の候補キーポイントを決定するための手段と、
    前記1組の候補キーポイントにおける各候補キーポイントについて、対応する第1の類似度スコアを決定するための手段であって、部分的に、前記対応する候補キーポイントに関連付けられた画像パッチを、前記画像パッチの周りの領域内の複数の対応する画像セクションと比較することによって、各候補キーポイントに対応する前記第1の類似度スコアが決定される、手段と、
    前記候補キーポイントの第1のサブセットを選択するための手段であって、前記第1のサブセットが、最も低い類似度スコアを有するあらかじめ定義された数の候補キーポイントを含む、手段と
    を含む装置。
  24. 各候補キーポイントに対応する前記第1の類似度スコアを決定するための手段が、
    各候補キーポイントに対応する複数の第2の類似度スコアを決定するための手段であって、各第2の類似度スコアが、前記対応する候補キーポイントに関連付けられた前記画像パッチと、前記画像パッチの周りの前記領域内の前記対応する複数の画像セクションのうちの1つとの前記比較から決定され、各第2の類似度スコアが、前記対応する候補キーポイントに関連付けられた前記画像パッチと前記対応する画像セクションとの間の類似度を示す、手段と、
    前記第1の類似度スコアとして、その候補キーポイントについての前記第2の類似度スコアの最大値を選択するための手段と
    を含む、請求項23に記載の装置。
  25. 各候補キーポイントに対応する前記複数の第2の類似度スコアを決定するための手段が、
    前記候補キーポイントに関連付けられた前記画像パッチと前記対応する画像セクションとの間の相互相関の尺度に少なくとも部分的に基づいて前記複数の第2の類似度スコアの各々を計算するための手段を含み、相互相関の前記尺度が、部分的に、
    正規化相互相関、または
    2乗差分和、または
    絶対差分和
    のうちの1つから選択される相互相関を実行することに基づいて決定される、請求項23に記載の装置。
  26. プロセッサによって実行されたとき、前記プロセッサに、
    カメラでキャプチャされた第1の画像に基づいて1組の候補キーポイントを決定するステップと、
    前記1組の候補キーポイントにおける各候補キーポイントについて、対応する第1の類似度スコアを決定するステップであって、部分的に、前記対応する候補キーポイントに関連付けられた画像パッチを、前記画像パッチの周りの領域内の複数の対応する画像セクションと比較することによって、各候補キーポイントに対応する前記第1の類似度スコアが決定される、ステップと、
    前記候補キーポイントの第1のサブセットを選択するステップであって、前記第1のサブセットが、最も低い類似度スコアを有するあらかじめ定義された数の候補キーポイントを含む、ステップと
    を含む方法におけるステップを実行させる命令を含む非一時的コンピュータ可読記録媒体。
  27. 各候補キーポイントに対応する前記第1の類似度スコアを決定するステップが、
    各候補キーポイントに対応する複数の第2の類似度スコアを決定するステップであって、各第2の類似度スコアが、前記対応する候補キーポイントに関連付けられた前記画像パッチと、前記画像パッチの周りの前記領域内の前記対応する複数の画像セクションのうちの1つとの前記比較から決定され、各第2の類似度スコアが、前記対応する候補キーポイントに関連付けられた前記画像パッチと前記対応する画像セクションとの間の類似度を示す、ステップと、
    前記第1の類似度スコアとして、その候補キーポイントについての前記第2の類似度スコアの最大値を選択するステップと
    を含む、請求項26に記載のコンピュータ可読記録媒体。
  28. 各候補キーポイントに対応する前記複数の第2の類似度スコアを決定するステップが、
    前記候補キーポイントに関連付けられた前記画像パッチと前記対応する画像セクションとの間の相互相関の尺度に少なくとも部分的に基づいて前記複数の第2の類似度スコアの各々を計算するステップ
    を含む、請求項27に記載のコンピュータ可読記録媒体。
  29. 相互相関の前記尺度が、部分的に、
    正規化相互相関、または
    2乗差分和、または
    絶対差分和
    のうちの1つから選択される相互相関法を実行することに基づいて決定される、請求項28に記載のコンピュータ可読記録媒体。
  30. 前記第1の画像に基づいて前記1組の候補キーポイントを決定するステップが、
    前記第1の画像から画像の階層を取得するステップであって、画像の前記階層内の各画像が、対応する画像解像度を有する、ステップと、
    候補キーポイントの複数の第2のサブセットを決定するステップであって、候補キーポイントの各第2のサブセットが、画像の前記階層内の別個の画像に関連付けられ、前記1組の候補キーポイントが、候補キーポイントの前記複数の第2のサブセットを含む、ステップと
    を含む、請求項26に記載のコンピュータ可読記録媒体。
JP2017558552A 2015-05-12 2016-04-28 追跡可能性の測定によるキーポイント検出 Ceased JP2018518748A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562160420P 2015-05-12 2015-05-12
US62/160,420 2015-05-12
US14/846,674 2015-09-04
US14/846,674 US9747516B2 (en) 2015-05-12 2015-09-04 Keypoint detection with trackability measurements
PCT/US2016/029843 WO2016182754A1 (en) 2015-05-12 2016-04-28 Keypoint detection with trackability measurements

Publications (1)

Publication Number Publication Date
JP2018518748A true JP2018518748A (ja) 2018-07-12

Family

ID=55971201

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017558552A Ceased JP2018518748A (ja) 2015-05-12 2016-04-28 追跡可能性の測定によるキーポイント検出

Country Status (5)

Country Link
US (1) US9747516B2 (ja)
EP (1) EP3295375A1 (ja)
JP (1) JP2018518748A (ja)
CN (1) CN107567632A (ja)
WO (1) WO2016182754A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9754182B2 (en) * 2015-09-02 2017-09-05 Apple Inc. Detecting keypoints in image data
US9922443B2 (en) * 2016-04-29 2018-03-20 Adobe Systems Incorporated Texturing a three-dimensional scanned model with localized patch colors
US10796185B2 (en) * 2017-11-03 2020-10-06 Facebook, Inc. Dynamic graceful degradation of augmented-reality effects
US10706509B2 (en) 2018-03-14 2020-07-07 Adobe Inc. Interactive system for automatically synthesizing a content-aware fill
US10586311B2 (en) * 2018-03-14 2020-03-10 Adobe Inc. Patch validity test
US10769474B2 (en) 2018-08-10 2020-09-08 Apple Inc. Keypoint detection circuit for processing image pyramid in recursive manner
CN110097015B (zh) * 2019-05-08 2020-05-26 杭州视在科技有限公司 一种基于稠密特征点匹配的球机预置位偏移自动识别方法
US11397869B2 (en) * 2020-03-04 2022-07-26 Zerofox, Inc. Methods and systems for detecting impersonating social media profiles
WO2021179876A1 (en) * 2020-03-09 2021-09-16 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and system for implementing adaptive feature detection for vslam systems
CN113743418B (zh) * 2020-05-28 2024-04-26 中科寒武纪科技股份有限公司 图像中特征点的描述子的生成方法、装置和存储介质
CN111652107A (zh) * 2020-05-28 2020-09-11 北京市商汤科技开发有限公司 对象计数方法及装置、电子设备和存储介质
CN112616023A (zh) * 2020-12-22 2021-04-06 荆门汇易佳信息科技有限公司 复杂环境下的多摄像机视频目标追踪方法
CN113642531B (zh) * 2021-10-12 2022-02-22 阿里巴巴达摩院(杭州)科技有限公司 视频图像的识别方法、系统以及计算机可读存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007026386A (ja) * 2005-07-21 2007-02-01 Fuji Xerox Co Ltd 画像検索システム及び方法
NO327279B1 (no) 2007-05-22 2009-06-02 Metaio Gmbh Kamerapositurestimeringsanordning og- fremgangsmate for foroket virkelighetsavbildning
US8385971B2 (en) 2008-08-19 2013-02-26 Digimarc Corporation Methods and systems for content processing
US8705876B2 (en) 2009-12-02 2014-04-22 Qualcomm Incorporated Improving performance of image recognition algorithms by pruning features, image scaling, and spatially constrained feature matching
US8582821B1 (en) * 2011-05-23 2013-11-12 A9.Com, Inc. Tracking objects between images
US9025825B2 (en) 2013-05-10 2015-05-05 Palo Alto Research Center Incorporated System and method for visual motion based object segmentation and tracking
US9037396B2 (en) 2013-05-23 2015-05-19 Irobot Corporation Simultaneous localization and mapping for a mobile robot

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
RICHARD SZELISKI, COMPUTER VISION, JPN7018001907, 2011, pages 196 - 209 *
山口 陽平,外1名: "[実践]画像認識 写真があれば検索できる! 第4章 認識精度の改善", WEB+DB PRESS VOL.83, vol. 第83巻, JPN6018021510, 2014, JP, pages 66 - 71 *
青木 恒,外1名: "映像構造を利用した代表フレーム表示方法", インタラクション97予稿集, JPN6018021511, 1997, JP, pages 9 - 16 *

Also Published As

Publication number Publication date
US9747516B2 (en) 2017-08-29
US20160335519A1 (en) 2016-11-17
WO2016182754A1 (en) 2016-11-17
CN107567632A (zh) 2018-01-09
EP3295375A1 (en) 2018-03-21

Similar Documents

Publication Publication Date Title
US9747516B2 (en) Keypoint detection with trackability measurements
KR101722654B1 (ko) 점 특징 및 선 특징을 사용한 강력한 추적
US11481982B2 (en) In situ creation of planar natural feature targets
US9674507B2 (en) Monocular visual SLAM with general and panorama camera movements
JP6858650B2 (ja) 画像レジストレーションの方法及びシステム
US10573018B2 (en) Three dimensional scene reconstruction based on contextual analysis
EP3251090B1 (en) Occlusion handling for computer vision
CN104885098B (zh) 基于移动装置的文本检测及跟踪
EP2915140B1 (en) Fast initialization for monocular visual slam
EP2951788B1 (en) Real-time 3d reconstruction with power efficient depth sensor usage
EP3627445B1 (en) Head pose estimation using rgbd camera
WO2014200625A1 (en) Systems and methods for feature-based tracking

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180611

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180910

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181210

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20190422