(57)【要約】      （修正有）【課題】視覚と慣性航法を融合させる位置推定とマッピングの同時実行の分野に関し、特に、視覚的慣性航法システムのロバスト性を向上させる方法、装置及びロボット機器を提供する。【解決手段】視覚的慣性航法システムのロバスト性を向上させる方法は、参照フレームを確定し、参照フレームを補正し、最初フレームと補正後の参照フレームに基づいて、参照フレームと最初フレーム以外のフレームに対して非線形最適化を行うことで、画像に対して、静止または等速の状態で、新しい視覚的制約のシステムへの導入を完了し、従来の視覚的制約と慣性制約メカニズムを最適化し、軌跡ドリフト問題をよく解決し、システムのロバスト性を顕著に向上させる。【選択図】図５
2020107336.tif 000002
【特許請求の範囲】
【請求項１】
参照フレームを確定することと、
前記参照フレームを補正することと、
最初フレームと補正後の参照フレームに基づいて、前記参照フレームと最初フレーム以外のフレームに対して非線形最適化を行うことと、
を含むことを特徴とする視覚的慣性航法システムのロバスト性を向上させる方法。
【請求項２】
前記参照フレームは同じフレームの前フレームであることを特徴とする請求項１に記載の方法。
【請求項３】
参照フレームを確定することはさらに、周辺化を必要とするフレームを確定することを含み、
現フレームに基づいて、最初フレームが周辺化を必要とするフレームであるか否かを判定することと、
イエスならば、最初フレームを、周辺化を必要とするフレームとして確定することと、
ノーならば、さらに現フレームと前フレームが同じであるか否かを判定し、同じであれば、前フレームを参照フレームとして確定し、最初フレームを、周辺化を必要とするフレームとして確定することと、を含むことを特徴とする請求項１に記載の方法。
【請求項４】
現フレームと前フレームが同じではなければ、前フレームを、周辺化を必要とするフレームとして確定し、その後、参照フレームを補正しないことを特徴とする請求項３に記載の方法。
【請求項５】
現フレームと前フレームが同じであるか否かを判定することは、具体的には、
現フレームと前フレームの追跡に成功するポイントの数が予め設定された閾値より小さいか否かを判定し、小さくなければ、現フレームと前フレームが同じであると考えられ、小さければ、現フレームと前フレームが同じではないと考えられることであることを特徴とする請求項３または請求項４に記載の方法。
【請求項６】
参照フレームを補正することは、具体的には、参照フレームの速度及び回転を補正することであることを特徴とする請求項１に記載の方法。
【請求項７】
参照フレームを補正することは、具体的には、
参照フレームの速度を
2020107336.tif 000037
に設定し、
参照フレームの回転を
2020107336.tif 000038
に設定することであることを特徴とする請求項１または請求項６に記載の方法。
【請求項８】
最初フレームと前記参照フレーム以外の他のフレームに対して非線形最適化を行うことは、さらに、
周辺化を必要とするフレームが最初フレームであるか否かを判定し、イエスならば、最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行った後、最初フレームを周辺化し、参照フレームを最初フレームの方向へ１フレーム平行移動させることを含むことを特徴とする請求項１に記載の方法。
【請求項９】
最初フレームと前記参照フレーム以外の他のフレームに対して非線形最適化を行うことは、さらに、
周辺化を必要とするフレームが最初フレームであるか否かを判定し、ノーならば、最初フレームと前記参照フレーム以外の他のフレームに対して非線形最適化を行った後、前フレームを周辺化することを含むことを特徴とする請求項１に記載の方法。
【請求項１０】
最初フレームと前記参照フレーム以外の他のフレームに対して非線形最適化を行う前に、さらに、
前記参照フレームがスライディングウインドウ内にあるか否かを判定し、なければ、すべてのフレームに対して非線形最適化を行うことを含むことを特徴とする請求項１に記載の方法。
【請求項１１】
現在のスライディングウインドウ内の参照フレームを確定するための参照フレーム確定モジュールと、
参照フレームを補正するための参照フレーム補正モジュールと、
最初フレームと補正後の参照フレームに基づいて、参照フレームと最初フレーム以外のフレームに対して非線形最適化を行うための非線形最適化モジュールと、
を含むことを特徴とする視覚的慣性航法システムのロバスト性を向上させる装置。
【請求項１２】
プロセッサ、メモリ、通信インタフェース及び通信バスを含み、前記プロセッサ、前記メモリ及び前記通信インタフェースは、前記通信バスにより、相互の通信を完了し、
前記メモリは少なくとも１つの実行可能なコマンドを記憶するために用いられ、前記実行可能なコマンドは前記プロセッサに請求項１から請求項１０のいずれか一項に記載の視覚的慣性航法システムのロバスト性を向上させる方法に対応する操作を実行させることを特徴とするロボット。
【請求項１３】
コンピュータ記憶媒体であって、前記記憶媒体には少なくとも１つの実行可能なコマンドが記憶されており、前記実行可能なコマンドはプロセッサに請求項１から請求項１０のいずれか一項に記載の視覚的慣性航法システムのロバスト性を向上させる方法に対応する操作を実行させることを特徴とするコンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施例は視覚と慣性航法を融合させる位置推定とマッピングの同時実行の分野に関し、特に、視覚的慣性航法システムのロバスト性を向上させる方法、装置及びロボット機器に関する。
【背景技術】
【０００２】
位置推定とマッピングの同時実行システム（ＳＬＡＭ、Ｓｉｍｕｌｔａｎｅｏｕｓ  ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  ｍａｐｐｉｎｇ、以下はＳＬＡＭと略称する）とは、ロボット、無人機、ＡＲ機器など、特定のセンサーが搭載される本体は、環境の事前情報がない場合、移動中に環境のモデルを作成すると同時に、自己移動のプロセスを推定するものである。ＳＬＡＭにおけるセンサーは、視覚カメラ、ＩＭＵ、ＧＰＳ、レーザレーダなどであってもよいが、本明細書に説明されるセンサーは主に、視覚カメラ及びＩＭＵとされ、常に、このような視覚と慣性計測ユニットＩＭＵ（Ｉｎｅｒｔｉａｌ  Ｍｅａｓｕｒｅｍｅｎｔ  Ｕｎｉｔ）との融合に基づくＳＬＡＭシステムは、ＶＩＮＳ（ｖｉｓｕａｌ−ｉｎｅｒｔｉａｌ  ｓｙｓｔｅｍ）またはＶＩＯ（ｖｉｓｕａｌ−ｉｎｅｒｔｉａｌ  ｏｄｏｍｅｔｒｙ）、即ち、視覚的慣性航法システムと呼ばれる。
【０００３】
ＶＩＯは、視覚とＩＭＵの状態ベクトルを一体にして最適化するか否かによって、疎結合と密結合に分けられる。密結合のＶＩＯシステムでは、視覚が提供する再投影誤差である視覚的制約と、ＩＭＵが提供するフレーム間制約とを、１つの目的関数全体において最適化する。しかしながら、高速回転、高速移動、カメラが遮られたり、テクスチャがなかったりするなどの場合には、視覚的制約がなくなり、このような状況は、ＡＲ、ロボットなどにおいて、よく現れる。携帯電話などのＡＲ機器を例として、高速移動する場合は、移動ぼけなどの原因で、画像の品質上のぼけが生じ、この場合、このような画像上に視覚的特徴点の検出と追跡を行うことは現実に実施できなくなる。
【０００４】
視覚的制約がなくなる場合、ＶＩＯシステムの目的関数全体において、ＩＭＵ制約のみが機能し、また、ＩＭＵの累積誤差で、算出する状態ベクトルが誤ることになり、視覚的制約がなくなってから動かない場合でも、カメラ軌跡は依然としてある方向に沿って速くドリフトをする。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の実施例は、上記の課題に鑑みてなされたもので、上記の課題を解決する方法、装置、ロボット機器及びコンピュータ記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記の課題を解決すべく本発明の実施例が用いる１つの技術的解決手段として、視覚的慣性航法システムのロバスト性を向上させる方法が提供され、前記方法は、
参照フレームを確定することと、
前記参照フレームを補正することと、
最初フレームと補正後の参照フレームに基づいて、前記参照フレームと最初フレーム以外のフレームに対して非線形最適化を行うことと、を含む。
【０００７】
前記参照フレームは同じフレームの前フレームである。
【０００８】
参照フレームを確定することは、さらに、周辺化を必要とするフレームを確定することを含み、
現フレームに基づいて、最初フレームが周辺化を必要とするフレームであるか否かを判定することと、
イエスならば、最初フレームを、周辺化を必要とするフレームとして確定することと、
ノーならば、さらに現フレームと前フレームが同じであるか否かを判定し、同じであれば、前フレームを参照フレームとして確定し、最初フレームを、周辺化を必要とするフレームとして確定することと、
現フレームと前フレームが同じではなければ、前フレームを、周辺化を必要とするフレームとして確定し、その後、参照フレームを補正しないことと、を含む。
【０００９】
現フレームと前フレームが同じであるか否かを判定こすることは、具体的には、
現フレームと前フレームの追跡に成功するポイントの数が予め設定された閾値より小さいか否かを判定し、小さくなければ、現フレームと前フレームが同じであると考えられ、小さければ、現フレームと前フレームが同じではないと考えられることである。
【００１０】
参照フレームを補正することは、具体的には、参照フレームの速度及び回転を補正することである。
【００１１】
参照フレームを補正することは、具体的には、
参照フレームの速度を
2020107336.tif 000003
に設定し、
参照フレームの回転を
2020107336.tif 000004
に設定することである。
【００１２】
最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行うことは、さらに、
周辺化を必要とするフレームが最初フレームであるか否かを判定し、イエスならば、最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行った後、最初フレームを周辺化し、参照フレームを最初フレームの方向へ１フレーム平行移動させることを含む。
【００１３】
最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行うことは、さらに、
周辺化を必要とするフレームが最初フレームであるか否かを判定し、ノーならば、最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行った後、前フレームを周辺化することを含む。
【００１４】
参照フレームと最初フレーム以外のフレームに対して非線形最適化を行う前に、さらに、
前記参照フレームがスライディングウインドウ内にあるか否かW判定し、なければ、すべてのフレームに対して非線形最適化を行うこと含む。
【００１５】
本発明の実施例はさらに、視覚的慣性航法システムのロバスト性を向上させる装置を提供し、前記装置は、
現在のスライディングウインドウ内の参照フレームを確定するための参照フレーム確定モジュールと、
参照フレームを補正するための参照フレーム補正モジュールと、
最初フレームと補正後の参照フレームに基づいて、前記参照フレームと最初フレーム以外のフレームに対して非線形最適化を行うための非線形最適化モジュールと、を含む。
【００１６】
本発明の実施例はさらに、ロボットを提供し、前記ロボットは、プロセッサ、メモリ、通信インタフェース及び通信バスを含み、前記プロセッサ、前記メモリ及び前記通信インタフェースは、前記通信バスにより、相互の通信を完了する。
【００１７】
前記メモリは少なくとも１つの実行可能なコマンドを記憶するために用いらえ、前記実行可能なコマンドは前記プロセッサに上記の実施例に記載の視覚的慣性航法システムのロバスト性を向上させる方法に対応する操作を実行させる。
【００１８】
本発明の実施例はさらに、コンピュータ記憶媒体を提供し、前記記憶媒体には少なくとも１つの実行可能なコマンドが記憶されており、前記実行可能なコマンドはプロセッサに上記の方法の実施例に記載の視覚的慣性航法システムのロバスト性を向上させる方法に対応する操作を実行させる。
【発明の効果】
【００１９】
以上から分かるように、本発明の実施例は、参照フレームを補正し、続いて参照フレームと最初フレームを固定し、新しい視覚的制約をシステムに導入し、従来の視覚的制約と慣性制約メカニズムを最適化することで、軌跡ドリフト問題をよく解決し、システムのロバスト性を顕著に向上させる。
【００２０】
以上の説明は、本発明の技術的解決手段の概要に過ぎず、本発明の技術的解決手段をより明らかに理解するために、明細書の内容に従って実施してもよく、また、本発明の上記及び他の目的、特徴及び利点をより分かりやすくするために、以下は、特に本発明の具体的な実施例を挙げる。
【図面の簡単な説明】
【００２１】
好適な実施例につていの詳細な説明により、他の利点及び有益な効果は当業者にとって明らかになる。図面は、好適な実施例を示すことを目的とするもので、本発明を限定するものではない。また、全体の図面において、同一の参照符号は同一の部材を示している。図面において、
【図１】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態１である。
【図２】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態２である。
【図３】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態３である。
【図４】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態４である。
【図５】本発明の実施例にて提供される視覚的慣性航法システムのロバスト性を向上させるフローチャート１である。
【図６】本発明の実施例にて提供される視覚的慣性航法システムのロバスト性を向上させるフローチャート２である。
【図７−１】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態５である。
【図７−２】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態６である。
【図７−３】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態７である。
【図７−４】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態８である。
【図８−１】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態９である。
【図８−２】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態１０である。
【図８−３】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態１１である。
【図９−１】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態１２である。
【図９−２】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態１３である。
【図９−３】本発明の実施例にて提供されるスライディングウインドウ内の各フレームの状態１４である。
【図１０】本発明の実施例にて提供される視覚的慣性航法システムのロバスト性を向上させる装置である
【図１１】本発明の実施例にて提供されるロボットの構造図である。
【発明を実施するための形態】
【００２２】
以下、図面を参照して本開示の実施例についてより詳細に説明する。図面には、本開示の実施例が表示されているが、本開示は各種の形態で実現でき、ここで説明されている実施例に限定されるものではないことが理解されたい。逆に、本開示を深く理解し、本開示の範囲を当業者に完全に伝えることができるために、これらの実施例が提供される。
【００２３】
本発明の実施例にて提供される技術的解決手段は、画像収集機器は、視覚的制約がなくなった後、動かない場合、新しい視覚的制約を追加し、静止画像フレームの回転行列を補正することにより、軌跡のドリフトを阻止することである。画像収集機器が高速移動した後に静止すると仮定し、且つ当該仮定が合理的であると考えられると、例えば、ＡＲにおいて、携帯電話を持って、急に別の方向に向かい、動かず観察することがあり、動いていない場合で操作を行う。
【００２４】
以下、本発明の実施例の動作背景について説明する。ＶＩＯシステムにおいて、１つのスライディングウインドウ内に最適化を行うという構想が用いられ、図１に示すように、スライディングウインドウ内は５つのフレームの画像を収容できると仮定すると、円形枠はそれに相応するｉ番目のフレームの位置及び回転を示しており、
2020107336.tif 000005
、ここで、
2020107336.tif 000006
はＩＭＵの局所座標系ｂｉからワールド座標系ｗへの回転を示し、
2020107336.tif 000007
はＩＭＵの局所座標系ｂｉからワールド座標系ｗへの平行移動を示す。角形枠はｉ番目のフレームの速度及びｂｉａｓを示し、
2020107336.tif 000008
、ここで、
2020107336.tif 000009
はＩＭＵの局所座標系ｂｉからワールド座標系ｗへの速度を示し、
2020107336.tif 000010
及び
2020107336.tif 000011
はそれぞれａｃｃ（加速度計）及びｇｙｒ（ジャイロ）のｂｉａｓバイアスを示す。黒い菱形ブロックは視覚的制約、即ち再投影誤差を示し、黒い正方形ブロックはフレーム間のＩＭＵ制約を示す。一番上方のＭａｐ  Ｐｏｉｎｔｓはスライディングウインドウ内のすべてのフレームがともに観測可能なランドマークポイントを示す。
【００２５】
収集ポイントは高速回転中に、視覚的制約がなくなる場合があり、図２に示すように、Ｐ５は高速回転中に収集する画像であり、移動ぼけなどの問題で、視覚追跡が失敗して、視覚的制約がなくなる（図中の破線枠）。このとき、すべての状態ベクトルは、ＩＭＵ制約のみにより最適化され、アクティブウィンドウ内のフレーム数を一定に維持するために、最初フレームＰ０を周辺化する。
【００２６】
収集ポイントが高速回転後に、急に静止する場合、画質が明瞭であるが、静止後の１番目のフレームＰ６は相変わらず回転中のぼけ画像Ｐ５の追跡に成功できないため、図３に示すように、視覚的制約を導入できないことになる。このとき、相変わらず最初フレームＰ１を周辺化する。このとき、回転中の計算のエラー状態が依然として補正できないため、Ｐ６は相変わらず問題がある。
【００２７】
静止後の２番目のフレームＰ７がスライディングウインドウに入る場合、図４に示すように、Ｐ６の画像に類似して、視差量が小さすぎ、三角化を行うことができないため、相変わらず視覚的制約を導入できない。このとき、Ｐ６がＰ７の画像に似ているため、Ｐ６を周辺化することになる。このとき、そのまま静止していくと、軌跡の直線ドリフトが発生することになる。
【００２８】
本発明の実施例は、静止後の画像の鮮明さを考慮し、且つオプティカルフローによる追跡の結果に基づいて、２つのフレームの間（Ｐ６とＰ７）の追跡マッチング関係を明らかに知ることができ、本発明の実施例は、この制約を目的関数全体に加えることで、回転中の純粋なＩＭＵ計算ミスに基づくプロセス量を補正し、位置姿勢のドリフト問題を解決することを提示する。
【００２９】
図５に示すように、本発明の実施例にて提供される視覚的慣性航法システムのロバスト性を向上させる方法は、５０１〜５０３を含む。
【００３０】
５０１、参照フレームを確定する。
【００３１】
本発明の実施例は相変わらずスライディングウインドウ内に最適化を行う方式を用い、新しいフレームがスライディングウインドウ内に入る場合、システムは現フレームと前フレームを比べ、参照フレームと周辺化を必要とするフレームを確定する。
【００３２】
図４に示すように、０番目のフレームはＰ２であり、４番目のフレームＰ５はぼける動的フレームであり、５目のフレームＰ６は１番目の静止フレームである。Ｐ７がスライディングウインドウに入る場合、Ｐ７も静止フレームである。
【００３３】
常に、Ｐ７がスライディングウインドウに入る場合、システムは、現フレームの追跡ポイントの数及び隣接するフレームの視差量に基づいて、周辺化を必要とするフレームを決定し、例えば、Ｐ７がスライディングウインドウに入る場合、Ｐ６とＰ７の視差量が小さければ、前フレームＰ６を周辺化する必要があり、前フレームが周辺化を必要とするフレームであると確定する。Ｐ６とＰ７の視差量が大きければ、Ｐ７が多くの代表的情報を有すると考えられ、最初フレームを選択して周辺化を行い、最初フレームが周辺化を必要とするフレームであると確定する。
【００３４】
周辺化を必要とするフレームが前フレームであると仮定すると、システムはさらに、Ｐ７がＰ６と同じであるか否か、即ちＰ６のような静止フレームであるか否かを判定し、常に、現フレームと前フレームの追跡に成功するポイントの数がある閾値より大きいか否かに基づいて、判定する。予め設定された閾値より大きい場合は、現フレームと前フレームが同じであり、即ちカメラが静止状態にあると考えられる。
【００３５】
現フレームと前フレームが同じである場合、システムは最初フレームを、周辺化を必要とするフレームとして確定する。現フレームと前フレームが同じではない場合、システムは前フレームを、周辺化を必要とするフレームとして確定する。
【００３６】
既定では、システムは初期的参照フレームを設定することなく、即ちシステムに静止フレームがない場合、システムには参照フレームがなく、静止フレームが２つ以上ある場合だけで、システムは参照フレームを設定する。
【００３７】
５０２、確定した参照フレームを補正する。
【００３８】
現フレームと前フレームがすべて静止状態にあると判定する場合、静止後の画像の鮮明さを考慮し、オプティカルフローによる追跡の結果に基づいて、２つのフレームの間（Ｐ６とＰ７）の追跡マッチング関係を明らかに知ることができるが、従来のＶＩＯフレームワークはこのような制約を考慮しないに対して、このような制約を目的関数全体に加えることで、回転中の純粋なＩＭＵ計算ミスに基づくプロセス量を補正し、位置姿勢のドリフト問題を解決するように、参照フレームの速度及び回転を補正してもよい。
【００３９】
５０３、最初フレームと補正後の参照フレームに基づいて、最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行う。
【００４０】
システムは、補正後の参照フレームと最初フレームを固定するとともに、非線形最適化問題の解決のプロセスにおいて、この２つのフレームを最適化せず、補正後の参照フレームと最初フレームに基づいて、この２つのフレーム以外の他のフレームのみに対して非線形最適化問題を解決する。
【００４１】
参照フレームを確定した後、システムは参照フレームがスライディングウインドウ内にあるかを判定し、なければ、通常の方式で非線形最適化問題を解決し、フレームごとに非線形最適化を行う。参照フレームがスライディングウインドウ内にある場合、システムは最初フレームＰ２と参照フレームＰ６を固定し、それらに対して非線形最適化を行わず、最初フレームＰ２と参照フレームＰ６以外の他のフレームのみに対して非線形最適化問題を解決する。
【００４２】
さらに、周辺化を必要とするフレームが最初フレームであるか否かを判定し、イエスならば、最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行った後、参照フレームを最初フレームの方向へ１フレーム平行移動させ、現在の参照フレームを、次の画像が来る時に、そのまま参照フレームとして保持する。周辺化を必要とするフレームが最初フレームではなく、前フレームであれば、非線形最適化を直接行い、即ち現在の静止フレームを、次の画像が来る時に、参照フレームとする。
【００４３】
本発明の実施例は上記の方法により、参照フレームを補正し、続いて参照フレームと最初フレームを固定し、新しい視覚的制約をシステムに導入することで、従来の視覚的制約と慣性制約メカニズムを最適化し、軌跡のドリフト問題をよく解決し、システムのロバスト性を顕著に向上させる。
【００４４】
本発明の別の実施例は、図６に示すように、詳細なフローチャートを提示する。図７−１のフレームモードに基づいて、詳細に説明すると仮定すると、図３中のＰ５フレームは動的フレームであり、Ｐ６は１番目の静止フレームである。スライディングウインドウの長さをＮ＝５、システムにおける最初フレームを０番目のフレームと仮定し、ＭａｒｇＦｌａｇが周辺化を必要とするフレームのフラグであり、ＯＬＤが最初フレームを代表し、ＳＥＣＯＮＤ＿ＮＥＷが前フレームを代表し、ＮｕｍＮｅｅｄＦｉｘが参照フレームのフラグであり、ＮｕｍＮｅｅｄＦｉｘの初期値が−１であるように設定する。
【００４５】
６０１、スライディングウインドウに入る現フレームに対して、最初フレームを周辺化する必要があるか否かを判定する。
【００４６】
常に、システムは、現フレームの追跡ポイントの数及び隣接するフレームの視差量に基づいて、周辺化を必要とするフレームを判定し、ここで、最初フレームを０目のフレーム、スライディングウインドウのフレームの総数をＮ＋１とすると、現フレームはＮ目のフレームであり、前フレームはＮ−１番目のフレームである。
【００４７】
現フレームと前フレームの視差量が大きければ、現フレームが重要なフレームであると考えられ、最初フレームを周辺化する。
【００４８】
現フレームと前フレームの視差量が小さければ、現フレームが前フレームに類似すると考えられ、前フレームを周辺化する。
【００４９】
図３において、Ｐ５は動的フレームであり、Ｐ６は１番目の静止フレームであるため、Ｐ５とＰ６の視差量が大きく、周辺化を必要とするフレームは最初フレームＰ１である。
【００５０】
図６に基づいて、ステップ６０５に進む。
【００５１】
６０５、周辺化を必要とするフレームを最初フレームに設定する。
【００５２】
ＭａｒｇＦｌａｇ＝ＯＬＤと設定し、ステップ６０７に進む。
【００５３】
６０７、ＮｕｍＮｅｅｄＦｉｘが０より大きいか否かを判定する。
【００５４】
システムの予め設定に基づいて、ＮｕｍＮｅｅｄＦｉｘの初期値は−１であり、したがって、ＮｕｍＮｅｅｄＦｉｘ＜０、ステップ６１１に進む。
【００５５】
６１１、非線形最適化問題を解決する。
【００５６】
補正後の参照フレームと最初フレームに基づいて、スライディングウインドウ内のすべてのフレームに対して非線形最適化を行う。
【００５７】
６１２、ＭａｒｇＦｌａｇの値を判定する。
【００５８】
ＭａｒｇＦｌａｇ＝＝ＯＬＤならば、最初フレームＰ１を周辺化する。
【００５９】
ＭａｒｇＦｌａｇ＝＝ＳＥＣＯＮＤ＿ＮＥＷならば、前フレームを周辺化する。
【００６０】
図３から分かるように、システムは最初フレームＰ１を周辺化する。続いて、システムは次のフレームの到来を継続的に監視する。
【００６１】
図７−１に示すように、Ｐ７がスライディングウインドウに入ると仮定し、Ｐ７は静止フレームであり、Ｐ６とＰ７は同一の画像であると仮定する。システムは以下のフローを行う。
【００６２】
６０１、最初フレームを周辺化するか否かを判定する。
【００６３】
Ｐ６とＰ７は同様に静止フレームであり、両者の視差量が小さく、したがって、システムは、図７−１に示すように、前フレームを周辺化し、最初フレームを保存する必要があり、そして、ステップ６０２に進む。
【００６４】
６０２、現フレームと前フレームの追跡に成功するポイントの数がある閾値より大きいか否かを判定する。
【００６５】
現フレームと前フレームの追跡に成功するポイントの数に基づいて、Ｐ６とＰ７のフレームの違いを比較し、常に、９７％を閾値として設定し、２つのフレームの追跡に成功するポイントの数の割合が９７％より大きければ、２つの画像が同一の画像であると考えられ、ステップ６０４に進む。９７％より小さければ、２つの画像が完全に同じではないと考えられ、ステップ６０３に進む。
【００６６】
６０４、ＭａｒｇＦｌａｇ＝ＯＬＤと設定する。
【００６７】
Ｐ７とＰ６が２つの同一の画像である場合は、図７−２に示すように、周辺化を必要とするフレームを最初フレームに設定し、ＭａｒｇＦｌａｇ＝ＯＬＤと設定する。そして、ステップ６０６に進む。
【００６８】
６０６、前フレームの速度及び回転を補正し、ＮｕｍＮｅｅｄＦｉｘをＮ−１に設定する。
【００６９】
現フレームと前フレームがすべて静止状態にあると判定する場合、静止後の画像の鮮明さを考慮し、オプティカルフローによる追跡の結果に基づいて、２つのフレームの間（Ｐ６とＰ７）の追跡マッチング関係を明らかに知ることができるが、従来のＶＩＯフレームワークはこのような制約を考慮しないに対して、このような制約を目的関数全体に加えることで、回転中の純粋なＩＭＵ計算ミスに基づくプロセス量を補正し、これにより、位置姿勢のドリフト問題を解決する。
【００７０】
画像が静止している場合、即ち２つの隣接するフレームの追跡ポイントの数がある閾値より大きいと、この２つのフレームの速度差がゼロになる。
【００７１】
また、ＩＭＵ事前積分の速度の測定誤差の方程式によると、
2020107336.tif 000012
（１）        
【００７２】
ここで、
2020107336.tif 000013
はワールド座標系における重力加速度であり、
2020107336.tif 000014
はワールド座標系からｋ番目のフレームのＩＭＵ局所座標系への回転であり、
2020107336.tif 000015
はｋ番目のフレームからｋ＋１番目のフレームの時間間隔であり、
2020107336.tif 000016
はＩＭＵ事前積分によるｋ番目のフレームからｋ＋１番目のフレームの速度変化量で、
2020107336.tif 000017
（２）
【００７３】
ここで、
2020107336.tif 000018
は第ｔの時刻におけるＩＭＵ局所座標系からｋ番目のフレームの時刻におけるＩＭＵ局所座標系への回転であり、
2020107336.tif 000019
は第ｋの時刻における加速度計の測量値であり、
2020107336.tif 000020
は第ｋの時刻における加速度のバイアスである。
【００７４】
式（１）を以下のようにする。
2020107336.tif 000021
（３）
【００７５】
画像が静止しているために、ｋ番目のフレームとｋ＋１番目のフレームの速度は０であり、即ち、
2020107336.tif 000022
（４）
【００７６】
式（１）を以下のように簡略化する。
2020107336.tif 000023
（５）
【００７７】
これにより、
2020107336.tif 000024
（６）
【００７８】
式（４）の解析から分かるように、
2020107336.tif 000025
の計算ミスで、ＩＭＵ事前積分による速度変化量は、重力加速度による加速変化を打ち消すことができず、これにより、余分で望ましくない速度成分が生じることになる。このとき、式（５）に基づいて、前フレームであるｋ番目のフレームの回転状態として、正確な
2020107336.tif 000026
を再算出する。
【００７９】
以上から分かるように、システムは、速度
2020107336.tif 000027
を０、回転
2020107336.tif 000028
を
2020107336.tif 000029
に補正する。
ＮｕｍＮｅｅｄＦｉｘを−１から、Ｎ−１に補正する。
【００８０】
６０７、参照フレームのフラグＮｕｍＮｅｅｄＦｉｘが０より大きいか否かを判定し、イエスならば、ステップ６０８に進み、ノーならば、６１１に進む。
【００８１】
前のステップ６０７から分かるように、ＮｕｍＮｅｅｄＦｉｘ＝Ｎ−１、Ｎは５であり、こうすると、ＮｕｍＮｅｅｄＦｉｘ＝４、したがって、ＮｕｍＮｅｅｄＦｉｘ＞０、ステップ６０８に進む。
【００８２】
６０８、最初フレームとＮｕｍＮｅｅｄＦｉｘ番目のフレームを固定する。
【００８３】
即ち、最初フレームＰ２と参照フレームＰ６を固定し、前記固定とは、非線形最適化問題を解決する過程において、最初フレームと参照フレームに対して非線形最適化問題を解決せず、他のフレームのみに対して非線形最適化問題を解決することである。
【００８４】
６０９、周辺化を必要とするフレームが最初フレームであるか否かを判定する。
【００８５】
即ち、ＭａｒｇＦｌａｇがＯＬＤに等しいか否かを判定し、等しければ、ステップ６１０に進み、等しくなければ、ステップ６１１に進む。
【００８６】
ステップ６０４から分かるように、ＭａｒｇＦｌａｇ＝＝ＯＬＤ。
【００８７】
６１０、参照フレームを最初フレームの方向へ１フレーム平行移動させる。
【００８８】
即ち、参照フレームのフラグＮｕｍＮｅｅｄＦｉｘをＮｕｍＮｅｅｄＦｉｘ−１に補正し、即ち、ＮｕｍＮｅｅｄＦｉｘ＝３。
【００８９】
６１１、非線形最適化問題を解決する。
【００９０】
ステップ６０８において、最初フレームＰ２と参照フレームＰ６を固定し、即ち、非線形最適化問題の解決に参加させないため、システムは、補正後の参照フレームと最初フレームに基づいて、最初フレームＰ２と参照フレームＰ６以外のすべてのフレームのみに対して、非線形最適化問題を解決する。非線形最適化問題の解決の方式は従来の非線形最適化問題の解決の方式と同じであるため、ここでは説明を省略する。
【００９１】
６１２、周辺化を必要とするフレームを判定し、最初フレームならば、ステップ６１４に進み、前フレームならば、６１３に進む。
【００９２】
システムは、ＭａｒｇＦｌａｇの値を判定し、周辺化を必要とするフレームのフラグに基づいて、対応するフレームを周辺化する。
【００９３】
６１３、ＭａｒｇＦｌａｇ＝＝ＳＥＣＯＮＤ＿ＮＥＷならば、前フレームを周辺化する。
【００９４】
６１４、ＭａｒｇＦｌａｇ＝＝ＯＬＤならば、最初フレームＰ２を周辺化する。
【００９５】
ステップ６０４から分かるように、システムはＭａｒｇＦｌａｇをＳＥＣＯＮＤ＿ＮＥＷからＯＬＤに補正し、したがって、ＭａｒｇＦｌａｇ＝ＯＬＤ、最初フレームＰ２を周辺化する。最終的に、最適化後のフレームの構造は図７−３に示すとおりであり、周辺化されるフレームはＰ２であり、最初フレームはＰ３であり、参照フレームはＰ６になり、また、Ｐ６は補正後のフレームであり、Ｐ６とＰ７との間の新しい制約の導入に成功する。
【００９６】
システムはスライディングウインドウ内に入る新しいフレームを継続的に監視する。スライディングウインドウに入る後続フレームはすべてＰ７のような静止フレームであると仮定する場合、システムは最初フレームを絶えず周辺化し、前フレームを参照フレームとして継続的に補正し、最初フレームと前フレームを固定して、非線形最適化問題を解決し、最終的に、スライディングウインドウ内のすべてのフレームは、画像収集機器が再移動するか、または画像が変化するまで、補正後の静止フレームになる。
【００９７】
画像収集機器が速い移動から遅い移動へ変化することで、画像が不鮮明になると仮定する場合、システムにとっては、前フレームを周辺化する必要があるが、実際に、２つのフレームは異なり、例えば、新しいフレームＰ１１がスライディングウインドウに入り、Ｐ１１の画像に微小な変化が生じると、システムは以下の操作を実行する。
【００９８】
６０１、最初フレームを周辺化するか否かを判定する。
【００９９】
Ｐ１１とＰ１０の２つのフレームの画像は微小な変化が生じるため、両者の視差量が小さく、したがって、システムは、図８−１に示すように、前フレームを周辺化し、最初フレームを保存し、ステップ６０２に進む。
【０１００】
６０２、現フレームと前フレームの追跡に成功するポイントの数がある閾値より大きいか否かを判定する。
【０１０１】
Ｐ１１とＰ１０の違いを比較し、同様に、閾値を９７％とし、２つのフレームは微小な変化が生じるため、２つのフレームの追跡に成功するポイントの数が９７％より小さく、したがって、システムはＰ１０とＰ１１が異なると考えるため、カメラが完全に静止している状態にあると考えず、ステップ６０３に進む。
【０１０２】
６０３、周辺化を必要とするフレームを前フレームに設定する。
【０１０３】
図８−２に示すように、ＭａｒｇＦｌａｇをＳＥＣＯＮＤ＿ＮＥＷに設定し、ステップ６０７に進む。
【０１０４】
６０７、参照フレームのフラグＮｕｍＮｅｅｄＦｉｘが０より大きいか否かを判定し、イエスならば、ステップ６０８に進み、ノーならば、６１１に進む。
【０１０５】
以上から分かるように、前述した各フレームはいずれも静止フレームであるため、参照フレームをずっと前フレームにし、即ち、ＮｕｍＮｅｅｄＦｉｘ＝４、したがって、０より大きく、ステップ６０８に進む。
【０１０６】
６０８、最初フレーム０とＮｕｍＮｅｅｄＦｉｘ番目のフレームを固定する。
【０１０７】
即ち、最初フレームＰ６と参照フレームＰ９を固定し、前記固定とは、非線形最適化問題を解決する過程において、最初フレームと参照フレームに対して非線形最適化問題を解決せず、他のフレームのみに対して非線形最適化問題を解決することである。
【０１０８】
６０９、周辺化を必要とするフレームが最初フレームであるか否かを判定する。
【０１０９】
ステップ６０３から分かるように、ＭａｒｇＦｌａｇ＝ＳＥＣＯＮＤ＿ＮＥＷ、最初フレームではなくステップ６１１に進む。
【０１１０】
６１１、非線形最適化問題を解決する。
【０１１１】
ステップ６０８において、最初フレームＰ６と参照フレームＰ９を固定し、即ち、非線形最適化問題の解決に参加させないため、システムは最初フレームＰ６と参照フレームＰ９以外のすべてのフレームのみに対して、非線形最適化問題を解決する。非線形最適化問題の解決の方式は従来の非線形最適化問題の解決の方式と同じであるため、ここでは説明を省略する。
【０１１２】
６１２、周辺化を必要とするフレームを判定し、最初フレームならば、ステップ６１４に進み、前フレームならば、６１３に進む。
【０１１３】
以上から、ＭａｒｇＦｌａｇ＝ＳＥＣＯＮＤ＿ＮＥＷが分かり、したがって、ステップ６１３に進む。
【０１１４】
６１３、ＭａｒｇＦｌａｇ＝＝ＳＥＣＯＮＤ＿ＮＥＷならば、前フレームを周辺化する。
【０１１５】
したがって、新しいフレームと前フレームは微小な違いがある場合、システムは、図８−３に示すように、最初フレームＰ６と参照フレームＰ９をそのまま維持し、前フレームＰ１０を周辺化する。システムはスライディングウインドウ内に入る他のフレームを継続的に監視し、微小な違いがあるフレームが継続的に入る場合、システムは、最初フレームＰ６と参照フレームＰ９をそのまま維持し、最も正確フレームを基にして最適化を行うように保持する。
【０１１６】
画像収集機器が移動し始めた後、スライディングウインドウに入る新しいフレームＰ１２が収集されると仮定すると、システムは以下の操作を行い、図９−１に示すように、Ｐ１２は正常な移動状態の移動フレームであり、具体的な実行プロセスは以下のとおりである。
【０１１７】
６０１、最初フレームを周辺化するか否かを判定する。
【０１１８】
Ｐ１２フレームは画像収集機器の移動状態で収集されるフレームであるため、それとＰ１１の視差量及び現フレームの追跡ポイントの数の差が大きく、システムは最初フレームＰ６を周辺化すると判定する。ステップ６０５に進む。
【０１１９】
６０５、ＭａｒｇＦｌａｇ＝ＯＬＤと設定する。
【０１２０】
周辺化を必要とするフレームを最初フレームに設定し、ＭａｒｇＦｌａｇ＝ＯＬＤと設定する。ステップ６０７に進む。
【０１２１】
６０７、参照フレームのフラグＮｕｍＮｅｅｄＦｉｘが０より大きいか否かを判定し、イエスならば、ステップ６０８に進み、ノーならば、６１１に進む。
【０１２２】
図８−３から分かるように、参照フレームはＰ９であり、即ち、ＮｕｍＮｅｅｄＦｉｘ＝４、したがって、ＮｕｍＮｅｅｄＦｉｘ＞０、６０８に進む。
【０１２３】
６０８、最初フレームとＮｕｍＮｅｅｄＦｉｘ番目のフレームを固定する。
【０１２４】
即ち、最初フレームＰ６とＰ９を固定し、その後、他のフレームのみに対して非線形最適化問題を解決する。
【０１２５】
６０９、ＭａｒｇＦｌａｇがＯＬＤに等しいか否かを判定する。
【０１２６】
図９−１から分かるように、周辺化を必要とするフレームは最初フレームであるため、ＭａｒｇＦｌａｇ＝＝ＯＬＤ、ステップ６１０に進む。
【０１２７】
６１０、参照フレームを最初フレームの方向へ１フレーム平行移動させる。
【０１２８】
即ち、参照フレームのフラグＮｕｍＮｅｅｄＦｉｘをＮｕｍＮｅｅｄＦｉｘ−１に補正し、即ち、ＮｕｍＮｅｅｄＦｉｘ＝３。
【０１２９】
６１１、非線形最適化問題を解決する。
【０１３０】
Ｐ６とＰ９以外の他のフレームに対して非線形最適化問題を解決する。
【０１３１】
６１２、周辺化を必要とするフレームを判定し、最初フレームならば、ステップ６１４に進み、前フレームならば、６１３に進む。
【０１３２】
以上から分かるように、ＭａｒｇＦｌａｇ＝ＯＬＤ、したがって、ステップ６１４に進む。
【０１３３】
６１４、ＭａｒｇＦｌａｇ＝＝ＯＬＤならば、最初フレームＰ６を周辺化する。
【０１３４】
図９−２に示すように、新しい移動フレームＰ１２がスライディングウインドウに入る場合、前フレームとの違いが大きいため、システムは最初フレームと参照フレームを固定し、そして、参照フレームは補正後の参照フレームであり、他のフレームのみに対して非線形最適化問題を解決すると同時に、最初フレームを周辺化する。即ち、Ｐ６フレームは周辺化され、最初フレームはＰ７になり、参照フレームは相変わらずＰ９であり、Ｐ１１とＰ１２の間の新しい制約の導入に成功する。
【０１３５】
システムはスライディングウインドウ内に入る新しいフレームを継続的に監視し、スライディングウインドウに入る後続のフレームは、Ｐ１２と同様に、異なる移動フレームであると仮定すると、システムは始終に参照フレームをＰ９に固定し、Ｐ９は補正後のフレームであり、そして、参照フレームがスライディングウインドウから出るまで、参照フレームを最初フレームの方向へ移動させるため、システムは正常な移動状態での視覚的制約に回復する。
【０１３６】
なお、画像収集機器が等速移動中にある場合、当該方法も同様に適用する。等速移動状態にある場合、ステップ６０２は、画像収集機器の移動速度、ジャイロの回転などにより、現フレームと前フレームが同じであるか否かを判定し、さらに、状況に応じて操作を実行する。ステップ６０６において、参照フレームの速度及び回転を補正する必要がある場合、等速移動状態にあるため、現フレームと前フレームの移動速度
2020107336.tif 000030
＝Ｃ、且つＣは計測される固定値であり、以上から分かるように、式（１）を
2020107336.tif 000031
に簡素化し、これにより、補正後の回転
2020107336.tif 000032
を得る。したがって、等速状態でも、本発明にて提供される実施例により、本発明の発明の目的を実現することができる。
【０１３７】
上記の実施例により、静止フレーム間の追跡マッチング関係を利用し、新しい制約を導入し、参照フレームを補正し、そして、補正後の参照フレームに基づいて、回転中の純粋なＩＭＵ計算ミスに基づくプロセス量を補正することで、位置姿勢のドリフト問題を解決する。
【０１３８】
上記の実施例にて提供される視覚的慣性航法システムのロバスト性を向上させる方法を実行するために、本発明の実施例はさらに、視覚的慣性航法システムのロバスト性を向上させる装置１０を提供し、装置１０は、具体的に図１０に示すように、
現在のスライディングウインドウ内の参照フレームを確定するための参照フレーム確定モジュール１００２と、
参照フレームを補正するための参照フレーム補正モジュール１００３と、
最初フレームと補正後の参照フレームに基づいて、参照フレームと最初フレーム以外のフレームに対して非線形最適化を行うための非線形最適化モジュール１００４と、を含む。
【０１３９】
前記参照フレーム確定モジュールはさらに、同じフレームの前フレームを参照フレームとして確定するために用いられる。
【０１４０】
さらに、該装置はさらに、現フレームに基づいて、最初フレームが周辺化を必要とするフレームであるか否かを判定し、イエスならば、最初フレームを、周辺化を必要とするフレームとして確定し、ノーならば、さらに現フレームと前フレームが同じであるか否かを判定し、同じであれば、最初フレームを、周辺化を必要とするフレームとして確定し、同じではなければ、参照フレーム確定モジュールに前記前フレームを参照フレームとして確定すると通知するための周辺化を必要とするフレーム確定モジュール１００１を含む。周辺化を必要とするフレーム確定モジュールは現フレームと前フレームが同じであるか否かを判定することは、さらに、現フレームと前フレームの追跡に成功するポイントの数が予め設定された閾値より小さいか否かを判定し、小さくなければ、現フレームと前フレームが同じであると考えられ、小さければ、現フレームと前フレームが同じではないと考えられる。具体的な実行プロセスは上記の方法の実施例にて提供される方法と同じであるため、ここでは説明を省略する。
【０１４１】
さらに、参照フレーム補正モジュール１００３は、計算により、参照フレームの速度を
2020107336.tif 000033
に設定し、参照フレームの回転を
2020107336.tif 000034
に設定する。
【０１４２】
該装置はさらに、周辺化を必要とするフレームを周辺化するための周辺化モジュールを含む。
【０１４３】
前記周辺化を必要とするフレーム確定モジュールはさらに、周辺化を必要とするフレームが最初フレームであるか否かを判定し、イエスならば、最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行った後、最初フレームを周辺化し、参照フレームを最初フレームの方向へ１フレーム平行移動させるために用いられる。
【０１４４】
前記非線形最適化モジュールはさらに、参照フレームがスライディングウインドウ内にあるか否かを判定し、あれば、最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行うと同時に、周辺化モジュールに前フレームを周辺化する通知し、なければ、すべてのフレームに対して非線形最適化を行うために用いられる。
【０１４５】
前記周辺化モジュールは、ＭａｒｇＦｌａｇのフラグに基づいて、対応するフレームに対して周辺化処理を行う。
【０１４６】
本発明の実施例にて提供される視覚的慣性航法システムのロバスト性を向上させる装置により、静止フレーム間の追跡マッチング関係を利用し、新しい制約を導入し、参照フレームを補正しそして、補正後の参照フレームに基づいて、回転中の純粋なＩＭＵ計算ミスに基づくプロセス量を補正することで、位置姿勢のドリフト問題を解決する。
【０１４７】
本願の実施例は不揮発性コンピュータ記憶媒体を提供し、前記コンピュータ記憶媒体には少なくとも１つの実行可能なコマンドが記憶されており、当該コンピュータ実行可能なコマンドは上記の任意の方法の実施例における視覚的慣性航法システムのロバスト性を向上させる方法を実行できる。
【０１４８】
図１１は本発明の実施例にて提供されるロボットの構造模式図であり、本発明の具体的な実施例はロボットの具体的な実施を限定しない。
【０１４９】
図１１に示すように、当該ロボット機器は、プロセッサ（ｐｒｏｃｅｓｓｏｒ）５０１、通信インタフェース（Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｉｎｔｅｒｆａｃｅ）５０２、メモリ（ｍｅｍｏｒｙ）５０４及び通信バス５０３を含んでもよい。
【０１５０】
そのうち、
プロセッサ、通信インタフェース及びメモリは通信バスにより、相互の通信を完了する。
通信インタフェースは、クライアントまたは他のサーバなど、他の機器のネットワークエレメントと通信するために用いられる。
【０１５１】
プロセッサは、プログラム５０５を実行し、具体的には、上記の視覚的慣性航法システムのロバスト性を向上させる方法の実施例における関連するステップを実行するために用いられる。
【０１５２】
具体的には、プログラムは、プログラムコードを含んでもよく、当該プログラムコードはコンピュータ操作コマンドを含む。
【０１５３】
プロセッサは、中央処理装置ＣＰＵ、特定用途向け集積回路ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、または、１つ若しくは複数の本発明の実施例を実施する集積回路のように配置されるものを含んでもよい。ロボットは１つまたは複数のプロセッサを含み、同一のタイプのプロセッサとしてもよく、例えば、１つまたは複数のＣＰＵが挙げられ、異なるタイプのプロセッサとしてもよく、例えば、１つまたは複数のＣＰＵ及び１つまたは複数のＡＳＩＣが挙げられる。
【０１５４】
メモリはプログラム４１０を記憶するために用いられる。メモリは、高速のＲＡＭメモリを含む可能性があり、また、例えば、少なくとも１つの磁気ディスクメモリのような不揮発性メモリ（ｎｏｎ−ｖｏｌａｔｉｌｅ  ｍｅｍｏｒｙ）を含む可能性がある。
【０１５５】
プログラムは、具体的には、プロセッサに以下の操作を実行させるために用いられる。
参照フレームを確定し、
前記参照フレームを補正し、
参照フレームと最初フレーム以外のフレームに対して非線形最適化を行う。
【０１５６】
さらに、前記プログラムはさらに、プロセッサが以下の操作を実行するように制御してもよい。
同じフレームの前フレームを参照フレームとして確定する。
【０１５７】
さらに、周辺化を必要とするフレームを確定することは、
現フレームに基づいて、最初フレームが周辺化を必要とするフレームであるか否かを判定することと、
イエスならば、最初フレームを、周辺化を必要とするフレームとして確定することと、
ノーならば、さらに現フレームと前フレームが同じであるか否かを判定し、同じであれば、前フレームを参照フレームとして確定し、最初フレームを、周辺化を必要とするフレームとして確定し、現フレームと前フレームが同じではなければ、前フレームを、周辺化を必要とするフレームとして確定し、その後、参照フレームを補正しないことと、を含む。
【０１５８】
現フレームと前フレームが同じであるか否かを判定することは、具体的に、
現フレームと前フレームの追跡に成功するポイントの数が予め設定された閾値より小さいか否かを判定し、小さくなければ、現フレームと前フレームが同じであると考えられ、小さければ、現フレームと前フレームが同じではないと考えられることである。
【０１５９】
参照フレームを補正することは、具体的には、参照フレームの速度及び回転を補正することであり、具体的には、
参照フレームの速度を
2020107336.tif 000035
に設定し、
参照フレームの回転を
2020107336.tif 000036
に設定することである。
【０１６０】
最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行うことは、さらに、
周辺化を必要とするフレームが最初フレームであるか否かを判定し、イエスならば、最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行った後、最初フレームを周辺化し、参照フレームを最初フレームの方向へ１フレーム平行移動させることを含む。
【０１６１】
最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行うことは、さらに、
周辺化を必要とするフレームが最初フレームであるか否かを判定し、イエスならば、最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行った後、前フレームを周辺化することを含む。
【０１６２】
最初フレームと参照フレーム以外の他のフレームに対して非線形最適化を行う前に、さらに、
前記参照フレームがスライディングウインドウ内にあるか否かを判定し、なければ、すべてのフレームに対して非線形最適化を行うことを含む。
【０１６３】
ここにて提供されるアルゴリズム及び表示は、いかなる特定のコンピュータ、仮想システムまたは他の機器と本質的に関係がない。各種の汎用システムもここに基づく教示とともに用いてもよい。以上の説明に基づいて、このようなシステムに要求される構造の構築が明らかである。また、本発明はいかなる特定のブログラミング言語に対するものではない。各種のブログラミング言語を用いて、ここで説明されている本発明の内容を実現することができ、また、以上の特定の言語に対する説明は本発明を開示するための最適な実施例であることが理解されたい。
【０１６４】
ここにて提供される明細書は、大量の詳細を説明するが、本発明の実施例は、これらの詳細がなくても実施できることが理解されたい。いくつかの実施例では、本明細書を鮮明に理解するために、公知の方法、構造及び技術が詳細に示されない。
【０１６５】
同様に、本開示を簡素化し、発明態様の１つまたは複数を分かりやすくするために、以上の本発明の実施例についての説明において、本発明の各特徴は、単一の実施例、図面、またはその説明にグループ化されることがあるが、当該開示の方法については、保護を請求する本発明は各請求項に明確に記載の特徴よりも多くの特徴を請求すると意図するように解釈すべきではない。具体的には、特許請求の範囲に示されるように、発明の態様は、前に開示された単一の実施例のすべての特徴より少ない。したがって、具体的な実施例に従う特許請求の範囲は、これにより、当該具体的な実施例に明らかに組み込まれ、各請求項は本発明の単独な実施例とする。
【０１６６】
当業者ならば理解できるように、実施例に係る機器におけるモジュールを自己適応的に変更して、当該実施例と異なる１つまたは複数の機器に設置してもよい。実施例におけるモジュール、ユニットまたはアセンブリを１つのモジュール、ユニットまたはアセンブリに組み合わせてもよいし、複数のサブモジュール、サブユニットまたはサブアセンブリに分割してもよい。特徴及び／又はプロセス、またはユニットにおける少なくとも一部が相互に排他的である以外、あらゆる組み合わせで、本明細書（添付する特許請求の範囲、要約及び図面を含む）にて開示されているすべての特徴及、及びこのように開示されるあらゆる方法または機器のすべてのプロセス若しくはユニットを組み合わせてもよい。明確に説明しない限り、本明細書（添付する特許請求の範囲、要約及び図面を含む）にて開示されている各特徴は、同じ、同等または類似の目的を提供する置換特徴で置換してもよい。
【０１６７】
また、当業者ならば理解できるように、ここに記載のいくつかの実施例は、他の特徴ではなく、他の実施例に含まれるいくつかの特徴を含むが、異なる実施例の特徴の組み合わせは、本発明の範囲にあるとともに、異なる実施例を形成すると意味している。例えば、特許請求の範囲において、保護を請求する実施例のいずれか１つは、あらゆる組み合わせ方式により用いてもよい。
【０１６８】
本発明の各部材の実施例は、ハードウェア、１つ若しくは複数のプロセッサで動作するソフトウェアモジュール、またはそれらの組み合わせにより実現できる。当業者ならば、実施中にマイクロプロセッサまたはデジタルシグナルプロセッサ（ＤＳＰ）を用いて、本発明の実施例によるメッセージポップアップウィンドウの表示装置における一部または全部の部材の一部または全部の機能を実現できることを理解すべきである。本発明はさらに、ここで説明されている方法の一部または全部を実行するための機器または装置プログラム（例えば、コンピュータプログラム及びコンピュータプログラム製品）として実現できる。このように本発明を実現するプログラムは、コンピュータ可読媒体に記憶されてもよいし、１つまたは複数の信号の態様を有してもよい。このような信号はインターネットウェッブからダウンロードして得てもよいし、キャリア信号上で、または任意の他の態様で提供してもよい。
【０１６９】
ただし、上記の実施例は本発明を説明するもので、本発明を限定するものではなく、当業者は添付する特許請求の範囲から逸脱せず、変形例を設計することができる。特許請求の範囲では、括弧にあるあらゆる参照符号は特許請求の範囲を限定するものではない。単語の「含む」は特許請求の範囲に挙げられない素子またはステップの存在を排除しない。素子の前の単語の「１」または「１つ」はこのような複数の素子の存在を排除しない。本発明は異なる複数の素子を含むハードウェア及び適当にプログラミングするコンピュータにより実現できる。複数の装置のユニットが挙げられる特許請求の範囲では、これらの装置のうち複数は同一のハードウェアにより具体的に実現してもよい。単語の「第１」、「第２」及び「第３」などは順序を表すものではない。これらの単語を名称として解釈してもよい。
【図１】
2020107336.tif 000039
【図２】
2020107336.tif 000040
【図３】
2020107336.tif 000041
【図４】
2020107336.tif 000042
【図５】
2020107336.tif 000043
【図６】
2020107336.tif 000044
【図７−１】
2020107336.tif 000045
【図７−２】
2020107336.tif 000046
【図７−３】
2020107336.tif 000047
【図７−４】
2020107336.tif 000048
【図８−１】
2020107336.tif 000049
【図８−２】
2020107336.tif 000050
【図８−３】
2020107336.tif 000051
【図９−１】
2020107336.tif 000052
【図９−２】
2020107336.tif 000053
【図９−３】
2020107336.tif 000054
【図１０】
2020107336.tif 000055
【図１１】
2020107336.tif 000056