(57)【要約】本開示は、位置姿勢推定方法、装置、電子機器及び記憶媒体に関する。前記方法は、被処理画像中の目標対象物に対してキーポイント検出処理を行って、複数のキーポイント及び各キーポイントに対応する第１共分散行列を得ること（Ｓ１１）と、各キーポイントに対応する第１共分散行列に基づいて、複数のキーポイントから目標キーポイントを選出すること（Ｓ１２）と、目標キーポイントに基づいて位置姿勢推定処理を行って、回転行列及び変位ベクトルを得ること（Ｓ１３）とを含む。この位置姿勢推定方法によれば、キーポイント検出により被処理画像中のキーポイント及び対応する第１共分散行列を得て、第１共分散行列によりキーポイントをスクリーニングすることにより、キーポイント間の相互干渉を除くことができ、マッチング関係の正確性が上がる。また、キーポイントをスクリーニングすることにより、目標対象物の位置姿勢を代表できないキーポイントを除去することができ、推定された位置姿勢と実際の位置姿勢の誤差が減る。【選択図】図１
2021517649.tif 000002
【特許請求の範囲】
【請求項１】
被処理画像中の目標対象物に対してキーポイント検出処理を行って、被処理画像における目標対象物の複数のキーポイント、及び各キーポイントに対応する、キーポイントの被処理画像における位置座標とキーポイントの推定座標に基づいて決定される第１共分散行列を得ることと、
各キーポイントに対応する第１共分散行列に基づいて、前記複数のキーポイントをスクリーニングして、複数のキーポイントから目標キーポイントを決定することと、
前記目標キーポイントに基づいて位置姿勢推定処理を行って、回転行列及び変位ベクトルを得ることとを含むことを特徴とする位置姿勢推定方法。
【請求項２】
前記目標キーポイントに基づいて位置姿勢推定処理を行って、回転行列及び変位ベクトルを得ることは、
前記目標キーポイントの三次元座標系における三次元座標である空間座標を取得することと、
前記目標キーポイントの被処理画像における二次元座標である位置座標及び前記空間座標に基づいて、初期回転行列及び初期変位ベクトルを決定することと、
前記空間座標及び前記目標キーポイントの被処理画像における位置座標に基づいて、前記初期回転行列及び初期変位ベクトルを調整して、前記回転行列及び変位ベクトルを得ることとを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記空間座標及び前記位置座標に基づいて、前記初期回転行列及び初期変位ベクトルを調整して、前記回転行列及び変位ベクトルを得ることは、
前記初期回転行列及び初期変位ベクトルに基づいて、前記空間座標の投影処理を行って、前記空間座標の前記被処理画像における投影座標を得ることと、
前記投影座標と目標キーポイントの被処理画像における位置座標との誤差距離を決定することと、
前記誤差距離に基づいて、前記初期回転行列及び初期変位ベクトルを調整することと、
誤差条件を満たす場合に、前記回転行列及び変位ベクトルを得ることとを含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記投影座標と前記目標キーポイントの被処理画像における位置座標との誤差距離を決定することは、
各目標キーポイントの被処理画像における位置座標と投影座標とのベクトル差、及び各目標キーポイントに対応する第１共分散行列をそれぞれ得ることと、
各目標キーポイントに対応するベクトル差及び第１共分散行列に基づいて、前記誤差距離を決定することとを含むことを特徴とする請求項３に記載の方法。
【請求項５】
被処理画像中の目標対象物に対してキーポイント検出処理を行って、被処理画像における目標対象物の複数のキーポイント及び各キーポイントに対応する第１共分散行列を得ることは、
被処理画像中の目標対象物に対してキーポイント検出処理を行って、各キーポイントの複数の推定座標及び各推定座標の重みを得ることと、
各推定座標の重みに基づいて、複数の推定座標に対して加重平均処理を行って、前記キーポイントの位置座標を得ることと、
複数の推定座標、各推定座標の重み及び前記キーポイントの位置座標に基づいて、前記キーポイントに対応する第１共分散行列を得ることとを含むことを特徴とする請求項１〜４のいずれか１項に記載の方法。
【請求項６】
前記複数の推定座標、各推定座標の重み及び前記キーポイントの位置座標に基づいて、前記キーポイントに対応する第１共分散行列を得ることは、
各推定座標と前記キーポイントの位置座標との第２共分散行列を決定することと、
各推定座標の重みに基づいて、複数の第２共分散行列に対して加重平均処理を行って、前記キーポイントに対応する第１共分散行列を得ることとを含むことを特徴とする請求項５に記載の方法。
【請求項７】
被処理画像中の目標対象物に対してキーポイント検出処理を行って、各キーポイントの複数の推定座標及び各推定座標の重みを得ることは、
被処理画像中の目標対象物に対してキーポイント検出処理を行って、前記キーポイントの複数の初期推定座標及び各初期推定座標の重みを得ることと、
各初期推定座標の重みに基づいて、複数の初期推定座標をスクリーニングして、前記初期推定座標から前記推定座標を選出することとを含むことを特徴とする請求項５又は６に記載の方法。
【請求項８】
各キーポイントに対応する第１共分散行列に基づいて、前記複数のキーポイントをスクリーニングして、複数のキーポイントから目標キーポイントを決定することは、
各キーポイントに対応する第１共分散行列の跡を決定することと、
各キーポイントに対応する第１共分散行列から、予め設定された数量の第１共分散行列を選出し、ただし、選出された第１共分散行列の跡は選出されていない第１共分散行列の跡より小さいことと、
選出された予め設定された数量の第１共分散行列に基づいて、前記目標キーポイントを決定することとを含むことを特徴とする請求項１〜７のいずれか１項に記載の方法。
【請求項９】
被処理画像中の目標対象物に対してキーポイント検出処理を行って、被処理画像における目標対象物の複数のキーポイント、及び各キーポイントに対応する、キーポイントの被処理画像における位置座標とキーポイントの推定座標に基づいて決定される第１共分散行列を得る検出モジュールと、
各キーポイントに対応する第１共分散行列に基づいて、前記複数のキーポイントをスクリーニングして、複数のキーポイントから目標キーポイントを決定するスクリーニングモジュールと、
前記目標キーポイントに基づいて位置姿勢推定処理を行って、回転行列及び変位ベクトルを得る位置姿勢推定モジュールとを含むことを特徴とする位置姿勢推定装置。
【請求項１０】
前記位置姿勢推定モジュールは、さらに、
前記目標キーポイントの三次元座標系における三次元座標である空間座標を取得し、
前記目標キーポイントの被処理画像における二次元座標である位置座標及び前記空間座標に基づいて、初期回転行列及び初期変位ベクトルを決定し、
前記空間座標及び前記目標キーポイントの被処理画像における位置座標に基づいて、前記初期回転行列及び初期変位ベクトルを調整して、前記回転行列及び変位ベクトルを得るように構成されることを特徴とする請求項９に記載の装置。
【請求項１１】
前記位置姿勢推定モジュールは、さらに、
前記初期回転行列及び初期変位ベクトルに基づいて、前記空間座標の投影処理を行って、前記空間座標の前記被処理画像における投影座標を得、
前記投影座標と目標キーポイントの被処理画像における位置座標との誤差距離を決定し、
前記誤差距離に基づいて、前記初期回転行列及び初期変位ベクトルを調整し、
誤差条件を満たす場合に、前記回転行列及び変位ベクトルを得るように構成されることを特徴とする請求項１０に記載の装置。
【請求項１２】
前記位置姿勢推定モジュールは、さらに、
各目標キーポイントの被処理画像における位置座標と投影座標とのベクトル差、及び各目標キーポイントに対応する第１共分散行列をそれぞれ得、
各目標キーポイントに対応するベクトル差及び第１共分散行列に基づいて、前記誤差距離を決定するように構成されることを特徴とする請求項１１に記載の装置。
【請求項１３】
前記検出モジュールは、さらに、
被処理画像中の目標対象物に対してキーポイント検出処理を行って、各キーポイントの複数の推定座標及び各推定座標の重みを得、
各推定座標の重みに基づいて、複数の推定座標に対して加重平均処理を行って、前記キーポイントの位置座標を得、
複数の推定座標、各推定座標の重み及び前記キーポイントの位置座標に基づいて、前記キーポイントに対応する第１共分散行列を得るように構成されることを特徴とする請求項９〜１２のいずれか１項に記載の装置。
【請求項１４】
前記検出モジュールは、さらに、
各推定座標と前記キーポイントの位置座標との第２共分散行列を決定し、
各推定座標の重みに基づいて、複数の第２共分散行列に対して加重平均処理を行って、前記キーポイントに対応する第１共分散行列を得るように構成されることを特徴とする請求項１３に記載の装置。
【請求項１５】
前記検出モジュールは、さらに、
被処理画像中の目標対象物に対してキーポイント検出処理を行って、前記キーポイントの複数の初期推定座標及び各初期推定座標の重みを得、
各初期推定座標の重みに基づいて、複数の初期推定座標をスクリーニングして、前記初期推定座標から前記推定座標を選出するように構成されることを特徴とする請求項１３又は１４に記載の装置。
【請求項１６】
前記スクリーニングモジュールは、さらに、
各キーポイントに対応する第１共分散行列の跡を決定し、
各キーポイントに対応する第１共分散行列から、予め設定された数量の第１共分散行列を選出し、ただし、選出された第１共分散行列の跡は選出されていない第１共分散行列の跡より小さく、
選出された予め設定された数量の第１共分散行列に基づいて、前記目標キーポイントを決定するように構成されることを特徴とする請求項９〜１５のいずれか１項に記載の装置。
【請求項１７】
プロセッサと、
プロセッサにより実行可能な命令を記憶するメモリと、を含み、
前記プロセッサは、請求項１〜８のいずれか１項に記載の方法を実行するように構成されることを特徴とする電子機器。
【請求項１８】
コンピュータプログラム命令が記憶されているコンピュータ可読記憶媒体であって、前記コンピュータプログラム命令はプロセッサによって実行されると、請求項１〜８のいずれか１項に記載の方法を実現させることを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
「関連出願の相互参照」
本開示は、２０１８年１２月２５日に中国国家知識産権局に提出された、出願番号が２０１８１１５９１７０６．４で、発明の名称が「位置姿勢推定方法、装置、電子機器及び記憶媒体」である中国特許出願の優先権を主張し、その全ての内容は援用することによって本開示に組み込まれる。
【０００２】
本開示は、コンピュータ技術の分野に関し、特に、位置姿勢推定方法、装置、電子機器及び記憶媒体に関する。
【背景技術】
【０００３】
関連の技術で、三次元空間と画像中の点とのマッチングを行う必要の場合、マッチングする点が多いため、一般にニューラルネットワーク等を利用して複数の点のマッチング関係を自動的に得る。しかしながら、出力誤差及び付近の複数の点との相互干渉により、マッチング関係は一般的に不正確なものであり、また、マッチングする点の大部分が目標対象物の位置姿勢を代表できないので、出力位置姿勢と実際の位置姿勢とで大きな誤差が発生してしまう。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本開示は、位置姿勢推定方法、装置、電子機器及び記憶媒体を提供する。
【課題を解決するための手段】
【０００５】
本開示の一方面によれば、被処理画像中の目標対象物に対してキーポイント検出処理を行って、被処理画像における目標対象物の複数のキーポイント、及び各キーポイントに対応する、キーポイントの被処理画像における位置座標とキーポイントの推定座標に基づいて決定される第１共分散行列を得ることと、各キーポイントに対応する第１共分散行列に基づいて、前記複数のキーポイントをスクリーニングして、複数のキーポイントから目標キーポイントを決定することと、前記目標キーポイントに基づいて位置姿勢推定処理を行って、回転行列及び変位ベクトルを得ることとを含む位置姿勢推定方法が提供される。
【０００６】
本開示の実施例の位置姿勢推定方法によれば、キーポイント検出により被処理画像中のキーポイント及び対応する第１共分散行列を得、第１共分散行列によりキーポイントをスクリーニングすることにより、キーポイント間の相互干渉を除くことができ、マッチング関係の正確性が上がる。また、キーポイントをスクリーニングすることにより、目標対象物の位置姿勢を代表できないキーポイントを除去することができ、推定された位置姿勢と実際の位置姿勢の誤差が減る。
【０００７】
可能な一実現形態では、前記目標キーポイントに基づいて位置姿勢推定処理を行って、回転行列及び変位ベクトルを得ることは、前記目標キーポイントの三次元座標系における三次元座標である空間座標を取得することと、前記目標キーポイントの被処理画像における二次元座標である位置座標及び前記空間座標に基づいて、初期回転行列及び初期変位ベクトルを決定することと、前記空間座標及び前記目標キーポイントの被処理画像における位置座標に基づいて、前記初期回転行列及び初期変位ベクトルを調整して、前記回転行列及び変位ベクトルを得ることとを含む。
【０００８】
可能な一実現形態では、前記空間座標及び前記位置座標に基づいて、前記初期回転行列及び初期変位ベクトルを調整して、前記回転行列及び変位ベクトルを得ることは、前記初期回転行列及び初期変位ベクトルに基づいて、前記空間座標の投影処理を行って、前記空間座標の前記被処理画像における投影座標を得ることと、前記投影座標と目標キーポイントの被処理画像における位置座標との誤差距離を決定することと、前記誤差距離に基づいて、前記初期回転行列及び初期変位ベクトルを調整することと、誤差条件を満たす場合に、前記回転行列及び変位ベクトルを得ることとを含む。
【０００９】
可能な一実現形態では、前記投影座標と前記目標キーポイントの被処理画像における位置座標との誤差距離を決定することは、各目標キーポイントの被処理画像における位置座標と投影座標とのベクトル差、及び各目標キーポイントに対応する第１共分散行列をそれぞれ得ることと、各目標キーポイントに対応するベクトル差及び第１共分散行列に基づいて、前記誤差距離を決定することとを含む。
【００１０】
可能な一実現形態では、被処理画像中の目標対象物に対してキーポイント検出処理を行って、被処理画像における目標対象物の複数のキーポイント及び各キーポイントに対応する第１共分散行列を得ることは、
被処理画像中の目標対象物に対してキーポイント検出処理を行って、各キーポイントの複数の推定座標及び各推定座標の重みを得ることと、各推定座標の重みに基づいて、前記複数の推定座標に対して加重平均処理を行って、前記キーポイントの位置座標を得ることと、前記複数の推定座標、各推定座標の重み及び前記キーポイントの位置座標に基づいて、前記キーポイントに対応する第１共分散行列を得ることとを含む。
【００１１】
可能な一実現形態では、複数の推定座標、各推定座標の重み及び前記キーポイントの位置座標に基づいて、前記キーポイントに対応する第１共分散行列を得ることは、各推定座標と前記キーポイントの位置座標との第２共分散行列を決定することと、各推定座標の重みに基づいて、複数の第２共分散行列に対して加重平均処理を行って、前記キーポイントに対応する第１共分散行列を得ることとを含む。
【００１２】
可能な一実現形態では、被処理画像中の目標対象物に対してキーポイント検出処理を行って、各キーポイントの複数の推定座標及び各推定座標の重みを得ることは、被処理画像中の目標対象物に対してキーポイント検出処理を行って、前記キーポイントの複数の初期推定座標及び各初期推定座標の重みを得ることと、各初期推定座標の重みに基づいて、複数の初期推定座標をスクリーニングして、前記初期推定座標から前記推定座標を選出することとを含む。
【００１３】
このように、重みに基づいて推定座標を選出することにより、計算量が減り、処理効率が上がり、外れ値が除去されてキーポイント座標の精度が上がる。
【００１４】
可能な一実現形態では、各キーポイントに対応する第１共分散行列に基づいて、前記複数のキーポイントをスクリーニングして、複数のキーポイントから目標キーポイントを決定することは、各キーポイントに対応する第１共分散行列の跡を決定することと、各キーポイントに対応する第１共分散行列から、予め設定された数量の第１共分散行列を選出し、ただし、選出された第１共分散行列の跡は選出されていない第１共分散行列の跡より小さいことと、選出された予め設定された数量の第１共分散行列に基づいて、前記目標キーポイントを決定することとを含む。
【００１５】
このように、キーポイントをスクリーニングして、キーポイント間の相互干渉を除去し、目標対象物の位置姿勢を代表できないキーポイントを除去することができ、位置姿勢推定の精度が向上し、処理効率が上がる。
【００１６】
本開示の別の方面によれば、被処理画像中の目標対象物に対してキーポイント検出処理を行って、被処理画像における目標対象物の複数のキーポイント、及び各キーポイントに対応する、キーポイントの被処理画像における位置座標とキーポイントの推定座標に基づいて決定される第１共分散行列を得る検出モジュールと、各キーポイントに対応する第１共分散行列に基づいて、前記複数のキーポイントをスクリーニングして、複数のキーポイントから目標キーポイントを決定するスクリーニングモジュールと、前記目標キーポイントに基づいて位置姿勢推定処理を行って、回転行列及び変位ベクトルを得る位置姿勢推定モジュールとを含む位置姿勢推定装置が提供される。
【００１７】
可能な一実現形態では、前記位置姿勢推定モジュールは、さらに、前記目標キーポイントの三次元座標系における三次元座標である空間座標を取得し、前記目標キーポイントの被処理画像における二次元座標である位置座標及び前記空間座標に基づいて、初期回転行列及び初期変位ベクトルを決定し、前記空間座標及び前記目標キーポイントの被処理画像における位置座標に基づいて、前記初期回転行列及び初期変位ベクトルを調整して、前記回転行列及び変位ベクトルを得るように構成される。
【００１８】
可能な一実現形態では、前記位置姿勢推定モジュールは、さらに、前記初期回転行列及び初期変位ベクトルに基づいて、前記空間座標の投影処理を行って、前記空間座標の前記被処理画像における投影座標を得、前記投影座標と目標キーポイントの被処理画像における位置座標との誤差距離を決定し、前記誤差距離に基づいて、前記初期回転行列及び初期変位ベクトルを調整し、誤差条件を満たす場合に、前記回転行列及び変位ベクトルを得るように構成される。
【００１９】
可能な一実現形態では、前記位置姿勢推定モジュールは、さらに、各目標キーポイントの被処理画像における位置座標と投影座標とのベクトル差、及び各目標キーポイントに対応する第１共分散行列をそれぞれ得、各目標キーポイントに対応するベクトル差及び第１共分散行列に基づいて、前記誤差距離を決定するように構成される。
【００２０】
可能な一実現形態では、前記検出モジュールは、さらに、被処理画像中の目標対象物に対してキーポイント検出処理を行って、各キーポイントの複数の推定座標及び各推定座標の重みを得、各推定座標の重みに基づいて、前記複数の推定座標に対して加重平均処理を行って、前記キーポイントの位置座標を得、複数の推定座標、各推定座標の重み及び前記キーポイントの位置座標に基づいて、前記キーポイントに対応する第１共分散行列を得るように構成される。
【００２１】
可能な一実現形態では、前記検出モジュールは、さらに、各推定座標と前記キーポイントの位置座標との第２共分散行列を決定し、各推定座標の重みに基づいて、複数の第２共分散行列に対して加重平均処理を行って、前記キーポイントに対応する第１共分散行列を得るように構成される。
【００２２】
可能な一実現形態では、前記検出モジュールは、さらに、被処理画像中の目標対象物に対してキーポイント検出処理を行って、前記キーポイントの複数の初期推定座標及び各初期推定座標の重みを得、各初期推定座標の重みに基づいて、複数の初期推定座標をスクリーニングして、前記初期推定座標から前記推定座標を選出するように構成される。
【００２３】
可能な一実現形態では、前記スクリーニングモジュールは、さらに、各キーポイントに対応する第１共分散行列の跡を決定し、各キーポイントに対応する第１共分散行列から、予め設定された数量の第１共分散行列を選出し、ただし、選出された第１共分散行列の跡は選出されていない第１共分散行列の跡より小さく、選出された予め設定された数量の第１共分散行列に基づいて、前記目標キーポイントを決定するように構成される。
【００２４】
本開示の別の方面によれば、プロセッサと、プロセッサにより実行可能な命令を記憶するメモリと、を含み、前記プロセッサは、上記の位置姿勢推定方法を実行するように構成される電子機器が提供される。
【００２５】
本開示の別の方面によれば、コンピュータプログラム命令が記憶されているコンピュータ可読記憶媒体であって、前記コンピュータプログラム命令はプロセッサによって実行されると、上記の位置姿勢推定方法を実現させるコンピュータ可読記憶媒体が提供される。
【００２６】
なお、上述した概略的な説明及び次の詳細な説明は、例示的及び解釈的なものに過ぎず、本開示を限定するものではない。
【００２７】
以下、図面を参考しながら例示的な実施例を詳細に説明することによって、本開示の他の特徴及び方面は明瞭になる。
【図面の簡単な説明】
【００２８】
ここで、本明細書の一部として組み込まれる図面は、本開示の実施例に適し、明細書と共に本開示の技術的解決手段の説明に用いられる。
【図１】図１は、本開示の実施例に係る位置姿勢推定方法のフローチャートを示す。
【図２】図２は、本開示の実施例に係るキーポイント検出の模式図を示す。
【図３】図３は、本開示の実施例に係るキーポイント検出の模式図を示す。
【図４】図４は、本開示の実施例に係る位置姿勢推定方法の適用の模式図を示す。
【図５】図５は、本開示の実施例に係る位置姿勢推定装置のブロック図を示す。
【図６】図６は、本開示の実施例に係る電子装置のブロック図を示す。
【図７】図７は、本開示の実施例に係る電子装置のブロック図を示す。
【発明を実施するための形態】
【００２９】
以下に、図面を参照しながら本開示の様々な例示的な実施例、特徴および方面を詳細に説明する。図面における同じ符号は同じまたは類似する機能の要素を示す。図面において実施例の様々な方面を示したが、特に断らない限り、比例に従って図面を描く必要がない。
【００３０】
ここでの用語「例示的」とは、「例、実施例として用いられることまたは説明的なもの」を意味する。ここで「例示的」に説明されるいかなる実施例は他の実施例より好ましいまたは優れるものであると理解すべきではない。
【００３１】
本明細書における用語「及び／又は」は、単に関連対象との関連関係を記述するものであり、３つの関係が存在可能であることを示し、例えば、Ａ及び／又はＢは、Ａのみが存在し、ＡとＢの両方が存在し、Ｂのみが存在するという３つの場合を示してもよい。また、本明細書における用語「少なくとも１つ」は複数のうちのいずれか１つ、又は複数のうちの少なくとも２つの任意の組み合わせを示し、例えば、Ａ、Ｂ、Ｃのうちの少なくとも１つを含むことは、Ａ、Ｂ及びＣからなる集合から選択されたいずれか１つ又は複数の要素を含むことを示してもよい。
【００３２】
また、本開示をより効果的に説明するために、以下の具体的な実施形態において様々な具体的な詳細を示す。当業者であれば、本開示は何らかの具体的な詳細がなくても同様に実施できると理解すべきである。いくつかの実施例では、本開示の趣旨を強調するために、当業者が熟知している方法、手段、要素および回路について詳細な説明を行わない。
【００３３】
図１は、本開示の実施例に係る位置姿勢推定方法のフローチャートを示す。図１に示すように、当該方法は、被処理画像中の目標対象物に対してキーポイント検出処理を行って、被処理画像における目標対象物の複数のキーポイント、及び各キーポイントに対応する、キーポイントの被処理画像における位置座標とキーポイントの推定座標に基づいて決定される第１共分散行列を得るステップＳ１１と、各キーポイントに対応する第１共分散行列に基づいて、前記複数のキーポイントをスクリーニングして、複数のキーポイントから目標キーポイントを決定するステップＳ１２と、前記目標キーポイントに基づいて位置姿勢推定処理を行って、回転行列及び変位ベクトルを得るステップＳ１３とを含む。
【００３４】
本開示の実施例の位置姿勢推定方法によれば、キーポイント検出により被処理画像中のキーポイント及び対応する第１共分散行列を得、第１共分散行列によりキーポイントをスクリーニングすることにより、キーポイント間の相互干渉を除くことができ、マッチング関係の正確性が上がる。また、キーポイントをスクリーニングすることにより、目標対象物の位置姿勢を代表できないキーポイントを除去することができ、推定された位置姿勢と実際の位置姿勢の誤差が減る。
【００３５】
可能な一実現形態では、被処理画像中の目標対象物に対してキーポイント検出処理を行う。被処理画像の各領域にそれぞれ位置する複数の目標対象物は前記被処理画像に含まれてもよく、又は被処理画像中の目標対象物は複数の領域を有してもよい。キーポイント検出処理によって各領域のキーポイントを得ることができる。例示的に、各領域のキーポイントの複数の推定座標を得、前記推定座標に基づいて、各領域のキーポイントの位置座標を得るようにしてもよい。さらに、前記位置座標及び前記推定座標に基づいて各キーポイントに対応する第１共分散行列を得るようにしてもよい。
【００３６】
可能な一実現形態では、ステップＳ１１は、被処理画像中の目標対象物に対してキーポイント検出処理を行って、各キーポイントの複数の推定座標及び各推定座標の重みを得ることと、各推定座標の重みに基づいて、前記複数の推定座標に対して加重平均処理を行って、前記キーポイントの位置座標を得ることと、複数の推定座標、各推定座標の重み及び前記キーポイントの位置座標に基づいて、前記キーポイントに対応する第１共分散行列を得ることとを含むようにしてもよい。
【００３７】
可能な一実現形態では、予めトレーニングされたニューラルネットワークを用いて被処理画像を処理して、目標対象物のキーポイントの複数の推定座標及び各推定座標の重みを得るようにしてもよい。前記ニューラルネットワークは畳み込みニューラルネットワークであってもよい。本開示ではニューラルネットワークのタイプが限定されない。例示的に、前記ニューラルネットワークによって、各目標対象物のキーポイントの推定座標又は目標対象物の各領域のキーポイントの推定座標、及び各推定座標の重みを得てもよい。例示的に、画素処理等の方式によってキーポイントの推定座標を得てもよい。本開示ではキーポイント推定座標を得る方式が限定されない。
【００３８】
例示的に、前記ニューラルネットワークは、被処理画像の各画素の位置する領域、及びキーポイントの各領域を指す第１方向ベクトルを出力する。例えば、被処理画像にＡ及びＢの２つ目標対象物がある（又は被処理画像に目標対象物が１つだけがあり、目標対象物をＡ及びＢの２つの領域に分ける）場合に、被処理画像を３つの領域、即ち、領域Ａ、領域Ｂ及び背景領域Ｃに分けて、領域の任意のパラメータを用いて画素の位置する領域を示すことができる。例えば、座標（１０、２０）の画素が領域Ａに位置し、当該画素を（１０、２０、Ａ）と示し、座標（５０、８０）の画素が背景領域に位置し、当該画素を（５０、８０、Ｃ）と示してもよい。前記第１方向ベクトルは単位ベクトル、例えば、（０．７０７、０．７０７）であってもよい。例示的に、画素の位置する領域及び第１方向ベクトルを前記画素の座標に添えて示してもよく、例えば、（１０、２０、Ａ、０．７０７、０．７０７）で示してもよい。
【００３９】
例示的に、ある領域（例えば、領域Ａ）中のキーポイントの推定座標を決定する場合、領域Ａ中の任意の２つの画素の第１方向ベクトルの交点を決定し、当該交点を前記キーポイントの１つの推定座標として決定し、この方式で繰り返して任意の２つの第１方向ベクトルの交点を得、即ち、前記キーポイントの複数の推定座標を決定するようにしてもよい。
【００４０】
例示的に、次の式（１）によって各推定座標の重みを決定するようにしてもよい。
【数１】
2021517649.tif 000003
【００４１】
ここで、ｗｋ，ｉはｋ番目の領域（例えば、領域Ａ）中のｉ番目のキーポイントの推定座標の重み値であり、Ｏは当該領域中の全ての画素であり、ｐ’は当該領域中の任意の１つの画素であり、ｈｋ，ｉは当該領域中のｉ番目のキーポイントの推定座標であり、
【数２】
2021517649.tif 000004
はｐ’のｈｋ，ｉを指す第２方向ベクトルであり、ｖｋ（ｐ’）はｐ’の第１方向ベクトルであり、θは所定の閾値であり、例示的に、θの値は０．９９である。本開示では所定の閾値が限定されない。IIは活性化関数であり、
【数３】
2021517649.tif 000005
とｖｋ（ｐ’）の内積が所定の閾値θ以上である場合に、IIの値は１であり、そうでない場合に、IIの値は０である。式（１）は目標領域中の全ての画素の活性化関数の値を加算した結果、即ちキーポイントの推定座標ｈｋ，ｉの重みを表すことができる。本開示では内積が所定の閾値以上である場合の活性化関数の値が限定されない。
【００４２】
例示的に、キーポイントの複数の推定座標及び各推定座標の重みを得る上記の方法に従って、目標対象物の各領域又は各目標対象物のキーポイントの複数の推定座標及び各推定座標の重みを得るようにしてもよい。
【００４３】
図２は、本開示の実施例に係るキーポイント検出の模式図を示す。図２に示すように、図２に複数の目標対象物が含まれ、ニューラルネットワークによって各目標対象物のキーポイントの推定座標及び各推定座標の重みを得るようにしてもよい。
【００４４】
可能な一実現形態では、各領域のキーポイントの推定座標に対して加重平均処理を行って、各領域のキーポイントの位置座標を得るようにしてよい。キーポイントの複数の推定座標をスクリーニングして、重みが小さい推定座標を除去するようにしてもよい。これにより、計算量が減り、外れ値が除去され、キーポイント座標の精度が上がる。
【００４５】
可能な一実現形態では、被処理画像中の目標対象物に対してキーポイント検出処理を行って、各キーポイントの複数の推定座標及び各推定座標の重みを得ることは、被処理画像中の目標対象物に対してキーポイント検出処理を行って、前記キーポイントの複数の初期推定座標及び各初期推定座標の重みを得ることと、各初期推定座標の重みに基づいて、複数の初期推定座標をスクリーニングして、前記初期推定座標から前記推定座標を選出することとを含む。
【００４６】
このように、重みに基づいて推定座標を選出することにより、計算量が減り、処理効率が上がり、外れ値が除去されてキーポイント座標の精度が上がる。
【００４７】
可能な一実現形態では、ニューラルネットワークによってキーポイントの初期推定座標及び各初期推定座標の重みを取得するようにしてもよい。さらに、キーポイントの複数の初期推定座標から、重みが重み閾値以上である初期推定座標を選出し、又は重みが大きい一部の初期推定座標を選出し（例えば、各初期推定座標を重み大きさの順にソートして、重みの高い順から上位２０％に入れる初期推定座標を選出する）、選出された初期推定座標を前記推定座標として決定し、残りの初期推定座標を除去するようにしてもよい。さらに、前記推定座標に対して加重平均処理を行って、前記キーポイントの位置座標を得るようにてもよい。このような方式で全てのキーポイントの位置座標を得るようにしてもよい。
【００４８】
可能な一実現形態では、各推定座標に対して加重平均処理を行って、前記キーポイントの位置座標を得るようにしてもよい。例示的に、次の式（２）によって前記キーポイントの位置座標を得る。
【数４】
2021517649.tif 000006
【００４９】
ここで、μｋはｋ番目の領域（例えば、領域Ａ）中のＮ個のキーポイントの推定座標に対して加重平均処理を行って得られたキーポイントの位置座標である。
【００５０】
可能な一実現形態では、キーポイントの複数の推定座標、各推定座標の重み及び前記キーポイントの位置座標に基づいて、前記キーポイントに対応する第１共分散行列を決定するようにしてもよい。例示的に、前記複数の推定座標、各推定座標の重み及び前記キーポイントの位置座標に基づいて、前記キーポイントに対応する第１共分散行列を得ることは、各推定座標と前記キーポイントの位置座標との第２共分散行列を決定することと、各推定座標の重みに基づいて、複数の第２共分散行列に対して加重平均処理を行って、前記キーポイントに対応する第１共分散行列を得ることとを含む。
【００５１】
可能な一実現形態では、キーポイントの位置座標は複数の推定座標の加重平均により得られた座標であり、各推定座標とキーポイントの位置座標との共分散行列（即ち、第２共分散行列）を得て、さらに、各推定座標の重みを用いて、第２共分散行列に対して加重平均処理を行って、前記第１共分散行列を得るようにしてもよい。
【００５２】
例示的に、次の式（３）によって前記第１共分散行列Σｋを得る。
【数５】
2021517649.tif 000007
【００５３】
例示的に、推定座標を選出せずに、キーポイントの全ての初期推定座標に対する加重平均処理によってキーポイントの位置座標を得、各初期推定座標と前記位置座標との共分散行列を得、各共分散行列に対して加重平均処理を行って、キーポイントに対応する第１共分散行列を得るようにしてもよい。本開示では初期推定座標をスクリーニングするか否かは限定されない。
【００５４】
図３は、本開示の実施例に係るキーポイント検出の模式図を示す。図３に示すように、各領域中のキーポイントの位置座標及び第１共分散行列に基づいて、各領域中のキーポイント位置の確率分布を決定するようにしてもよい。例えば、図３で各目標対象物中の楕円形はキーポイント位置の確率分布を示し、楕円の中心（即ち、星印の位置）は各領域のキーポイントの位置座標である。
【００５５】
可能な一実現形態では、ステップＳ１２において、各キーポイントに対応する第１共分散行列に基づいて、目標キーポイントを選出するようにしてもよい。例示的に、ステップＳ１２は、各キーポイントに対応する第１共分散行列の跡を決定することと、各キーポイントに対応する第１共分散行列から、予め設定された数量の第１共分散行列を選出し、ただし、選出された第１共分散行列の跡は選出されていない第１共分散行列の跡より小さいことと、選出された予め設定された数量の第１共分散行列に基づいて、前記目標キーポイントを決定することとを含むようにしてもよい。
【００５６】
例示的に、被処理画像中の目標対象物は複数のキーポイントを含み、各キーポイントに対応する第１共分散行列の跡に基づいてキーポイントをスクリーニングするようにしてもよい。各キーポイントに対応する共分散行列の跡の算出は、第１共分散行列の主対角線の要素を加算するようにしてもよい。跡が小さい複数の第１共分散行列に対応するキーポイントを選出するようにしてもよい。例示的に、予め設定された数量の第１共分散行列を選出し、ただし、選出された第１共分散行列の跡は選出されていない第１共分散行列の跡より小さいようにしてもよい。例えば、キーポイントを跡の大きさの順にソートし、跡の小さい順から、予め設定された数量の第１共分散行列を選択し、例えば、跡の小さい順から４つの第１共分散行列を選択する。さらに、選出された第１共分散行列に対応するキーポイントを目標キーポイントとし、例えば、４つのキーポイントを選択するようにしてもよい。このように、目標対象物の位置姿勢を代表できるキーポイントを選出し、他のキーポイントの干渉を除くことができる。
【００５７】
このように、キーポイントをスクリーニングすることにより、キーポイント間の相互干渉を除去し、目標対象物の位置姿勢を代表できないキーポイントを除去することができ、位置姿勢推定の精度が向上し、処理効率が上がる。
【００５８】
可能な一実現形態では、ステップＳ１３において、目標キーポイントに基づいて位置姿勢推定を行って、回転行列及び変位ベクトルを得るようにしてもよい。
【００５９】
可能な一実現形態では、ステップＳ１３は、前記目標キーポイントの三次元座標系における三次元座標である空間座標を取得することと、前記目標キーポイントの被処理画像における二次元座標である位置座標及び前記空間座標に基づいて、初期回転行列及び初期変位ベクトルを決定することと、前記空間座標及び前記目標キーポイントの被処理画像における位置座標に基づいて、前記初期回転行列及び初期変位ベクトルを調整して、前記回転行列及び変位ベクトルを得ることとを含むようにしてもよい。
【００６０】
可能な一実現形態では、前記三次元座標系は前記目標対象物の位置する空間で構築された任意の空間座標系であり、撮られた目標対象物の三次元モデリングを行い、例えば、コンピュータ支援設計（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ、略称ＣＡＤ）を利用して三次元モデリングを行い、三次元モデルにおいて目標キーポイントに対応する点の空間座標を決定するようにしてもよい。
【００６１】
可能な一実現形態では、目標キーポイントの被処理画像における位置座標（即ち、目標キーポイントの位置座標）及び前記空間座標に基づいて初期回転行列及び初期変位ベクトルを決定するようにしてもよい。例示的に、カメラの内部パラメータ行列と目標キーポイントの空間座標を掛け算し、最小二乗法を利用して乗算の結果と前記目標キーポイントの被処理画像における位置座標の要素を対応付けて解くことで、初期回転行列及び初期変位ベクトルを得るようにしてもよい。
【００６２】
例示的に、ＥＰｎＰ（Ｅｆｆｉｃｉｅｎｔ  Ｐｅｒｓｐｅｃｔｉｖｅ−ｎ−Ｐｏｉｎｔ  Ｃａｍｅｒａ  Ｐｏｓｅ  Ｅｓｔｉｍａｔｉｏｎ）アルゴリズム又は直接線形変換（Ｄｉｒｅｃｔ  Ｌｉｎｅａｒ  Ｔｒａｎｓｆｏｒｍ、略称ＤＬＴ）アルゴリズムによって、目標キーポイントの被処理画像における位置座標及び各目標キーポイントの三次元座標を処理して、初期回転行列及び初期変位ベクトルを得るようにしてもよい。
【００６３】
可能な一実現形態では、初期回転行列及び初期変位ベクトルを調整するようにしてもよい。これによって推定された位置姿勢と目標対象物の実際の位置姿勢との誤差が小さくなる。
【００６４】
可能な一実現形態では、前記空間座標及び前記目標キーポイントの被処理画像における位置座標に基づいて、前記初期回転行列及び初期変位ベクトルを調整して、前記回転行列及び変位ベクトルを得ることは、前記初期回転行列及び初期変位ベクトルに基づいて、前記空間座標の投影処理を行って、前記空間座標の前記被処理画像における投影座標を得ることと、前記投影座標と目標キーポイントの被処理画像における位置座標との誤差距離を決定することと、前記誤差距離に基づいて、前記初期回転行列及び初期変位ベクトルを調整することと、誤差条件を満たす場合に、前記回転行列及び変位ベクトルを得ることとを含む。
【００６５】
可能な一実現形態では、初期回転行列及び初期変位ベクトルを用いて空間座標の投影処理を行って、空間座標の前記被処理画像における投影座標を得るようにしてもよい。さらに、投影座標と各目標キーポイントの被処理画像における位置座標との誤差距離を得るようにしてもよい。
【００６６】
可能な一実現形態では、前記投影座標と前記目標キーポイントの被処理画像における位置座標との誤差距離を決定することは、各目標キーポイントの被処理画像における位置座標と投影座標とのベクトル差、及び各目標キーポイントに対応する第１共分散行列をそれぞれ得ることと、各目標キーポイントに対応するベクトル差及び第１共分散行列に基づいて、前記誤差距離を決定することとを含む。
【００６７】
可能な一実現形態では、目標キーポイントに対応する空間座標の投影座標と目標キーポイントの被処理画像における位置座標とのベクトル差を得、例えば、ある目標キーポイントの投影座標と位置座標とを減算して前記ベクトル差を得るようにしてもよい。このような方式で全ての目標キーポイントに対応するベクトル差を得るようにしてもよい。
【００６８】
可能な一実現形態では、次の式（４）によって誤差距離を決定するようにしてもよい。
【数６】
2021517649.tif 000008
【００６９】
ここで、Ｍは前記誤差距離であり、即ち、マハラノビス距離（Ｍａｈａｌａｎｏｂｉｓ  ｄｉｓｔａｎｃｅ）であり、ｎは目標キーポイントの数量であり、
【数７】
2021517649.tif 000009
はｋ番目の領域中の目標キーポイント（即ち、ｋ番目の目標キーポイント）の三次元座標の投影座標であり、μｋは目標キーポイントの位置座標であり、
【数８】
2021517649.tif 000010
は目標キーポイントに対応する第１共分散行列の逆行列である。即ち、各目標キーポイントに対応するベクトル差と第１共分散行列の逆行列を掛け算した後、各乗算結果の和を求めることで、前記誤差距離Ｍを得る。
【００７０】
可能な一実現形態では、前記誤差距離に基づいて、前記初期回転行列及び初期変位ベクトルを調整するようにしてもよい。例示的に、空間座標の投影座標と位置座標との誤差距離が小さくなるように初期回転行列及び初期変位ベクトルのパラメータを調整するようにしてもよい。例示的に、初期回転行列に対する誤差距離の勾配、及び初期変位ベクトルに対する誤差距離の勾配をそれぞれ決定し、勾配降下法によって初期回転行列及び初期変位ベクトルのパラメータを調整することにより、前記誤差距離を小さくするようにしてもよい。
【００７１】
可能な一実現形態では、初期回転行列及び初期変位ベクトルのパラメータを調整する上記の処理を、誤差条件を満たすまで繰り返し実行するようにしてもよい。前記誤差条件は誤差距離が誤差閾値以下になること、又は回転行列及び変位ベクトルのパラメータが変わらなくなること等を含んでよい。誤差条件を満たすと、パラメータが調整された回転行列及び変位ベクトルを位置姿勢推定用の回転行列及び変位ベクトルとするようにしてもよい。
【００７２】
本開示の実施例の位置姿勢推定方法によれば、キーポイントの検出により被処理画像中のキーポイントの推定位置及び重みを得て、重みに基づいて推定座標を選出することにより、計算量が減り、処理効率が上がり、外れ値が除去されてキーポイント座標の精度が上がる。さらに、第１共分散行列によりキーポイントをスクリーニングすることにより、キーポイント間の相互干渉を除くことができ、マッチング関係の正確性が上がる。また、キーポイントをスクリーニングすることにより、目標対象物の位置姿勢を代表できないキーポイントを除去することができ、推定された位置姿勢と実際の位置姿勢の誤差が減り、位置姿勢推定の精度が上がる。
【００７３】
図４は、本開示の実施例に係る位置姿勢推定方法の適用の模式図を示す。図４に示すように、図４の左側は被処理画像であり、被処理画像に対してキーポイント検出処理を行って、被処理画像中の各キーポイントの推定座標及び重みを得るようにしてもよい。
【００７４】
可能な一実現形態では、各キーポイントについて、各キーポイントの初期推定座標のうち、重みの高い順から上位２０％に入れるものを推定座標として選出し、これらの推定座標に対して加重平均処理を行って、各キーポイントの位置座標を得るようにしてもよい（図４の左側の楕円形領域の中心の三角形印を参照）。
【００７５】
可能な一実現形態では、キーポイントの推定座標と位置座標との第２共分散行列を決定し、各推定座標の第２共分散行列に対して加重平均処理を行って、各キーポイントに対応する第１共分散行列を得るようにしてもよい。図４の左側の楕円形領域に示すように、各キーポイントの位置座標及び各キーポイントの第１共分散行列によって、各キーポイントの位置の確率分布を決定することができる。
【００７６】
可能な一実現形態では、各キーポイントの第１共分散行列の跡に基づいて、跡の小さい順からの４つの第１共分散行列に対応するキーポイントを目標キーポイントとして選択し、被処理画像中の目標対象物の三次元モデリングを行い、目標キーポイントの三次元モデルにおける空間座標を得るようにしてもよい（図４の右側の円形印を参照）。
【００７７】
可能な一実現形態では、目標キーポイントの空間座標と位置座標をＥＰｎＰアルゴリズム又はＤＬＴアルゴリズムによって処理して、初期回転行列及び初期変位ベクトルを得、初期回転行列及び初期変位ベクトルによって、目標キーポイントの空間座標を投影して投影座標を得るようにしてもよい（図４の左側の円形印を参照）。
【００７８】
可能な一実現形態では、式（４）によって誤差距離を算出し、初期回転行列に対する誤差距離の勾配、及び初期変位ベクトルに対する誤差距離の勾配をそれぞれ決定し、さらに、勾配降下法によって初期回転行列及び初期変位ベクトルのパラメータを調整することにより、前記誤差距離を小さくするようにしてもよい。
【００７９】
可能な一実現形態では、誤差距離が誤差閾値以下になり、又は回転行列及び変位ベクトルのパラメータが変わらなくなる場合、パラメータが調整された回転行列及び変位ベクトルを位置姿勢推定用の回転行列及び変位ベクトルとするようにしてもよい。
【００８０】
図５は、本開示の実施例に係る位置姿勢推定装置のブロック図を示す。図５に示すように、前記装置は、被処理画像中の目標対象物に対してキーポイント検出処理を行って、被処理画像における目標対象物の複数のキーポイント、及び各キーポイントに対応する、キーポイントの被処理画像における位置座標とキーポイントの推定座標に基づいて決定される第１共分散行列を得る検出モジュール１１と、各キーポイントに対応する第１共分散行列に基づいて、前記複数のキーポイントをスクリーニングして、複数のキーポイントから目標キーポイントを決定するスクリーニングモジュール１２と、前記目標キーポイントに基づいて位置姿勢推定処理を行って、回転行列及び変位ベクトルを得る位置姿勢推定モジュール１３とを含む。
【００８１】
可能な一実現形態では、前記位置姿勢推定モジュールは、さらに、前記目標キーポイントの三次元座標系における三次元座標である空間座標を取得し、前記目標キーポイントの被処理画像における二次元座標である位置座標及び前記空間座標に基づいて、初期回転行列及び初期変位ベクトルを決定し、前記空間座標及び前記目標キーポイントの被処理画像における位置座標に基づいて、前記初期回転行列及び初期変位ベクトルを調整して、前記回転行列及び変位ベクトルを得るように構成される。
【００８２】
可能な一実現形態では、前記位置姿勢推定モジュールは、さらに、前記初期回転行列及び初期変位ベクトルに基づいて、前記空間座標の投影処理を行って、前記空間座標の前記被処理画像における投影座標を得、前記投影座標と目標キーポイントの被処理画像における位置座標との誤差距離を決定し、前記誤差距離に基づいて、前記初期回転行列及び初期変位ベクトルを調整し、誤差条件を満たす場合に、前記回転行列及び変位ベクトルを得るように構成される。
【００８３】
可能な一実現形態では、前記位置姿勢推定モジュールは、さらに、各目標キーポイントの被処理画像における位置座標と投影座標とのベクトル差、及び各目標キーポイントに対応する第１共分散行列をそれぞれ得、各目標キーポイントに対応するベクトル差及び第１共分散行列に基づいて、前記誤差距離を決定するように構成される。
【００８４】
可能な一実現形態では、前記検出モジュールは、さらに、被処理画像中の目標対象物に対してキーポイント検出処理を行って、各キーポイントの複数の推定座標及び各推定座標の重みを得、各推定座標の重みに基づいて、前記複数の推定座標に対して加重平均処理を行って、前記キーポイントの位置座標を得、前記複数の推定座標、各推定座標の重み及び前記キーポイントの位置座標に基づいて、前記キーポイントに対応する第１共分散行列を得るように構成される。
【００８５】
可能な一実現形態では、前記検出モジュールは、さらに、各推定座標と前記キーポイントの位置座標との第２共分散行列を決定し、各推定座標の重みに基づいて、複数の第２共分散行列に対して加重平均処理を行って、前記キーポイントに対応する第１共分散行列を得るように構成される。
【００８６】
可能な一実現形態では、前記検出モジュールは、さらに、被処理画像中の目標対象物に対してキーポイント検出処理を行って、前記キーポイントの複数の初期推定座標及び各初期推定座標の重みを得、各初期推定座標の重みに基づいて、複数の初期推定座標をスクリーニングして、前記初期推定座標から前記推定座標を選出するように構成される。
【００８７】
可能な一実現形態では、前記スクリーニングモジュールは、さらに、各キーポイントに対応する第１共分散行列の跡を決定し、各キーポイントに対応する第１共分散行列から、予め設定された数量の第１共分散行列を選出し、ただし、選出された第１共分散行列の跡は選出されていない第１共分散行列の跡より小さく、選出された予め設定された数量の第１共分散行列に基づいて、前記目標キーポイントを決定するように構成される。
【００８８】
本開示で言及される上記各方法の実施例は、原理と論理に違反しない限り、相互に組み合わせて実施例を形成することができることが理解すべきである。紙数に限りがあるので、本開示では詳細な説明を省略する。
【００８９】
さらに、本開示では、位置姿勢推定装置、電子機器、コンピュータ可読記憶媒体、プログラムが提供される。これらはいずれも本開示に係る位置姿勢推定方法のいずれか１つを実現するために利用できる。対応する技術的解決手段と説明は、方法の対応する記載を参照すればよく、詳細な説明を省略する。
【００９０】
また、当業者であれば、具体的な実施形態に係る上記の方法では、各ステップの記載順序は、実行順序を厳密に限定して実施の過程を限定するものではなく、各ステップの実行順序がその機能と内部の論理によって具体的に決定されることが理解すべきである。
【００９１】
いくつかの実施例では、本開示の実施例に係る装置が備える機能又はモジュールは、上述した方法の実施例に説明される方法を実行するために利用でき、その具体的な実現について、上述した方法の実施例の説明を参照すればよく、簡素化のために、ここで詳細な説明を省略する。
【００９２】
本開示の実施例では、コンピュータプログラム命令が記憶されているコンピュータ可読記憶媒体であって、前記コンピュータプログラム命令はプロセッサによって実行されると、上記の方法を実現させるコンピュータ可読記憶媒体がさらに提供される。当該コンピュータ可読記憶媒体は、不揮発性のコンピュータ可読記憶媒体であってもよい。
【００９３】
本開示の実施例では、プロセッサと、プロセッサにより実行可能な命令を記憶するメモリと、を含み、前記プロセッサは、上記の方法を実行するように構成される電子機器がさらに提供される。
【００９４】
本開示の実施例では、コンピュータ可読コードを含むコンピュータプログラム製品であって、当該コンピュータ可読コードは機器において動作すると、機器のプロセッサに上述したいずれかの実施例に係る位置姿勢推定方法を実現するための命令を実行させるコンピュータプログラム製品がさらに提供される。
【００９５】
本開示の実施例では、コンピュータ可読命令が記憶されているコンピュータプログラム製品であって、命令は実行されると、コンピュータに上述したいずれかの実施例に係る位置姿勢推定方法の動作を実行させる別のコンピュータプログラム製品がさらに提供される。
【００９６】
当該コンピュータプログラム製品は、ハードウェア、ソフトウェア、又はそれらの組み合わせによって具体的に実現できる。選択可能的な一実施例では、前記コンピュータプログラム製品はコンピュータ記憶媒体として具現化される。選択可能的な別の実施例では、コンピュータプログラム製品はソフトウェア製品、例えば、ソフトウェア開発キット（Ｓｏｆｔｗａｒｅ  Ｄｅｖｅｌｏｐｍｅｎｔ  Ｋｉｔ、略称ＳＤＫ）等として具現化される。
【００９７】
電子機器は、端末、サーバ又は他の形態の機器として提供されてもよい。
【００９８】
図６は、例示的な一実施例の電子機器８００のブロック図を示す。例えば、電子機器８００は携帯電話、コンピュータ、デジタル放送端末、メッセージ送受信機器、ゲームコンソール、タブレット型機器、医療機器、フィットネス機器、パーソナル・デジタル・アシスタント等の端末であってもよい。
【００９９】
図６を参照すると、電子機器８００は、処理コンポーネント８０２、メモリ８０４、電源コンポーネント８０６、マルチメディアコンポーネント８０８、オーディオコンポーネント８１０、入力／出力（Ｉ／Ｏ）のインタフェース８１２、センサコンポーネント８１４、および通信コンポーネント８１６のうちの一つ以上を含んでもよい。
【０１００】
処理コンポーネント８０２は通常、電子機器８００の全体的な動作、例えば表示、電話の呼び出し、データ通信、カメラ動作および記録動作に関連する動作を制御する。処理コンポーネント８０２は、上記方法の全てまたは一部のステップを実行するために、命令を実行する一つ以上のプロセッサ８２０を含んでもよい。また、処理コンポーネント８０２は、他のコンポーネントとのインタラクションのための一つ以上のモジュールを含んでもよい。例えば、処理コンポーネント８０２は、マルチメディアコンポーネント８０８とのインタラクションのために、マルチメディアモジュールを含んでもよい。
【０１０１】
メモリ８０４は電子機器８００での動作をサポートするための様々なタイプのデータを記憶するように構成される。これらのデータは、例として、電子機器８００において操作するあらゆるアプリケーションプログラムまたは方法の命令、連絡先データ、電話帳データ、メッセージ、ピクチャー、ビデオなどを含む。メモリ８０４は、例えば静的ランダムアクセスメモリ（ＳＲＡＭ）、電気的消去可能プログラマブル読み取り専用メモリ（ＥＥＰＲＯＭ）、消去可能なプログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、読み取り専用メモリ（ＲＯＭ）、磁気メモリ、フラッシュメモリ、磁気ディスクまたは光ディスクなどの様々なタイプの揮発性または不揮発性記憶装置またはそれらの組み合わせによって実現できる。
【０１０２】
電源コンポーネント８０６は電子機器８００の各コンポーネントに電力を供給する。電源コンポーネント８０６は電源管理システム、一つ以上の電源、および電子機器８００のための電力生成、管理および配分に関連する他のコンポーネントを含んでもよい。
【０１０３】
マルチメディアコンポーネント８０８は前記電子機器８００とユーザとの間で出力インタフェースを提供するスクリーンを含む。いくつかの実施例では、スクリーンは液晶ディスプレイ（ＬＣＤ）およびタッチパネル（ＴＰ）を含んでもよい。スクリーンがタッチパネルを含む場合、ユーザからの入力信号を受信するタッチスクリーンとして実現してもよい。タッチパネルは、タッチ、スライドおよびタッチパネルでのジェスチャーを検知するように、一つ以上のタッチセンサを含む。前記タッチセンサはタッチまたはスライド動きの境界を検知するのみならず、前記タッチまたはスライド操作に関連する持続時間および圧力を検出するようにしてもよい。いくつかの実施例では、マルチメディアコンポーネント８０８は前面カメラおよび／または背面カメラを含む。電子機器８００が動作モード、例えば撮影モードまたは撮像モードになる場合、前面カメラおよび／または背面カメラは外部のマルチメディアデータを受信するようにしてもよい。各前面カメラおよび背面カメラは、固定された光学レンズ系、または焦点距離および光学ズーム能力を有するものであってもよい。
【０１０４】
オーディオコンポーネント８１０はオーディオ信号を出力および／または入力するように構成される。例えば、オーディオコンポーネント８１０は、一つのマイク（ＭＩＣ）を含み、マイク（ＭＩＣ）は、電子機器８００が動作モード、例えば呼び出しモード、記録モードおよび音声認識モードになる場合、外部のオーディオ信号を受信するように構成される。受信されたオーディオ信号はさらにメモリ８０４に記憶されるか、または通信コンポーネント８１６を介して送信されてもよい。いくつかの実施例では、オーディオコンポーネント８１０はさらに、オーディオ信号を出力するためのスピーカーを含む。
【０１０５】
Ｉ／Ｏインタフェース８１２は処理コンポーネント８０２と周辺インタフェースモジュールとの間でインタフェースを提供し、上記周辺インタフェースモジュールはキーボード、クリックホイール、ボタンなどであってもよい。これらのボタンはホームボタン、音量ボタン、スタートボタンおよびロックボタンを含んでもよいが、これらに限定されない。
【０１０６】
センサコンポーネント８１４は電子機器８００の各方面の状態評価のために一つ以上のセンサを含む。例えば、センサコンポーネント８１４は電子機器８００のオン／オフ状態、例えば電子機器８００の表示装置およびキーパッドのようなコンポーネントの相対的位置決めを検出でき、センサコンポーネント８１４はさらに、電子機器８００または電子機器８００のあるコンポーネントの位置の変化、ユーザと電子機器８００との接触の有無、電子機器８００の方位または加減速および電子機器８００の温度変化を検出できる。センサコンポーネント８１４は、いかなる物理的接触もない場合に近傍の物体の存在を検出するように構成される近接センサを含んでもよい。センサコンポーネント８１４はさらに、ＣＭＯＳまたはＣＣＤイメージセンサのような、イメージングアプリケーションにおいて使用するための光センサを含んでもよい。いくつかの実施例では、該センサコンポーネント８１４はさらに、加速度センサ、ジャイロセンサ、磁気センサ、圧力センサまたは温度センサを含んでもよい。
【０１０７】
通信コンポーネント８１６は電子機器８００と他の機器との有線または無線通信を実現するように構成される。電子機器８００は通信規格に基づく無線ネットワーク、例えばＷｉＦｉ、２Ｇまたは３Ｇ、またはそれらの組み合わせにアクセスできる。一例示的実施例では、通信コンポーネント８１６は放送チャネルを介して外部の放送管理システムからの放送信号または放送関連情報を受信する。一例示的実施例では、前記通信コンポーネント８１６はさらに、近距離通信を促進させるために、近距離無線通信（ＮＦＣ）モジュールを含む。例えば、ＮＦＣモジュールは、無線周波数識別（ＲＦＩＤ）技術、赤外線データ協会（ＩｒＤＡ）技術、超広帯域（ＵＷＢ）技術、ブルートゥース（ＢＴ）技術および他の技術によって実現できる。
【０１０８】
例示的な実施例では、電子機器８００は一つ以上の特定用途向け集積回路（ＡＳＩＣ）、デジタル信号プロセッサ（ＤＳＰ）、デジタルシグナルプロセッサ（ＤＳＰＤ）、プログラマブルロジックデバイス（ＰＬＤ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、コントローラ、マイクロコントローラ、マイクロプロセッサまたは他の電子要素によって実現され、上記方法を実行するために用いられることができる。
【０１０９】
例示的な実施例では、さらに、不揮発性コンピュータ読み取り可能記憶媒体、例えばコンピュータプログラム命令を含むメモリ８０４が提供され、上記コンピュータプログラム命令は、電子機器８００のプロセッサ８２０によって実行されと、上記方法を実行させることができる。
【０１１０】
図７は、例示的な一実施例の電子機器１９００のブロック図を示す。例えば、電子機器１９００はサーバとして提供されてもよい。図７を参照すると、電子機器１９００は、一つ以上のプロセッサを含む処理コンポーネント１９２２、および、処理コンポーネント１９２２によって実行可能な命令例えばアプリケーションプログラムを記憶するための、メモリ１９３２を代表とするメモリ資源を含む。メモリ１９３２に記憶されているアプリケーションプログラムは、それぞれが１つの命令群に対応する一つ以上のモジュールを含んでもよい。また、処理コンポーネント１９２２は命令を実行することによって上記方法を実行するように構成される。
【０１１１】
電子機器１９００はさらに、電子機器１９００の電源管理を実行するように構成される電源コンポーネント１９２６、電子機器１９００をネットワークに接続するように構成される有線または無線ネットワークインタフェース１９５０、および入出力（Ｉ／Ｏ）インタフェース１９５８を含んでもよい。電子機器１９００はメモリ１９３２に記憶されいるオペレーティングシステム、例えばＷｉｎｄｏｗｓ  ＳｅｒｖｅｒＴＭ、Ｍａｃ  ＯＳ  ＸＴＭ、ＵｎｉｘＴＭ、ＬｉｎｕｘＴＭ、ＦｒｅｅＢＳＤＴＭまたは類似するものに基づいて動作できる。
【０１１２】
例示的な実施例では、さらに、不揮発性コンピュータ可読記憶媒体、例えばコンピュータプログラム命令を含むメモリ１９３２が提供され、上記コンピュータプログラム命令は、電子機器１９００の処理コンポーネント１９２２によって実行されと、上記方法を実行させることができる。
【０１１３】
本開示はシステム、方法および／またはコンピュータプログラム製品であってもよい。コンピュータプログラム製品は、プロセッサに本開示の各方面を実現させるためのコンピュータ可読プログラム命令が有しているコンピュータ可読記憶媒体を含んでもよい。
【０１１４】
コンピュータ可読記憶媒体は、命令実行機器に使用される命令を保存および記憶可能な有形装置であってもよい。コンピュータ可読記憶媒体は例えば、電気記憶装置、磁気記憶装置、光記憶装置、電磁記憶装置、半導体記憶装置、または上記の任意の適当な組み合わせであってもよいが、これらに限定されない。コンピュータ可読記憶媒体のさらに具体的な例（非網羅的リスト）としては、携帯型コンピュータディスク、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭまたはフラッシュメモリ）、静的ランダムアクセスメモリ（ＳＲＡＭ）、携帯型コンパクトディスク読み取り専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、メモリスティック、フロッピーディスク、例えば命令が記憶されているせん孔カードまたはスロット内突起構造のような機械的符号化装置、および上記の任意の適当な組み合わせを含む。ここで使用されるコンピュータ可読記憶媒体は、瞬時信号自体、例えば無線電波または他の自由に伝播される電磁波、導波路または他の伝送媒体を経由して伝播される電磁波（例えば、光ファイバーケーブルを通過するパルス光）、または電線を経由して伝送される電気信号と解釈されるものではない。
【０１１５】
ここで記述したコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から各計算／処理機器にダウンロードされてもよいし、またはネットワーク、例えばインターネット、ローカルエリアネットワーク、広域ネットワークおよび／または無線ネットワークを介して外部のコンピュータまたは外部記憶装置にダウンロードされてもよい。ネットワークは銅伝送ケーブル、光ファイバー伝送、無線伝送、ルーター、ファイアウォール、交換機、ゲートウェイコンピュータおよび／またはエッジサーバを含んでもよい。各計算／処理機器内のネットワークアダプタカードまたはネットワークインタフェースはネットワークからコンピュータ可読プログラム命令を受信し、該コンピュータ可読プログラム命令を転送し、各計算／処理機器内のコンピュータ可読記憶媒体に記憶させる。
【０１１６】
本開示の動作を実行するためのコンピュータプログラム命令はアセンブリ命令、命令セットアーキテクチャ（ＩＳＡ）命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはＳｍａｌｌｔａｌｋ、Ｃ＋＋などのオブジェクト指向プログラミング言語、および「Ｃ」言語または類似するプログラミング言語などの一般的な手続き型プログラミング言語を含める一つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードまたは目標コードであってもよい。コンピュータ可読プログラム命令は、完全にユーザのコンピュータにおいて実行されてもよく、部分的にユーザのコンピュータにおいて実行されてもよく、スタンドアロンソフトウェアパッケージとして実行されてもよく、部分的にユーザのコンピュータにおいてかつ部分的にリモートコンピュータにおいて実行されてもよく、または完全にリモートコンピュータもしくはサーバにおいて実行されてもよい。リモートコンピュータに関与する場合、リモートコンピュータは、ローカルエリアネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）を含む任意の種類のネットワークを経由してユーザのコンピュータに接続されてもよく、または、（例えばインターネットサービスプロバイダを利用してインターネットを経由して）外部コンピュータに接続されてもよい。いくつかの実施例では、コンピュータ可読プログラム命令の状態情報を利用して、例えばプログラマブル論理回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）またはプログラマブル論理アレイ（ＰＬＡ）などの電子回路をパーソナライズし、該電子回路によりコンピュータ可読プログラム命令を実行することににより、本開示の各方面を実現するようにしてもよい。
【０１１７】
ここで本開示の実施例に係る方法、装置（システム）およびコンピュータプログラム製品のフローチャートおよび／またはブロック図を参照しながら本開示の各態様を説明したが、フローチャートおよび／またはブロック図の各ブロックおよびフローチャートおよび／またはブロック図の各ブロックの組み合わせは、いずれもコンピュータ可読プログラム命令によって実現できることを理解すべきである。
【０１１８】
これらのコンピュータ可読プログラム命令は、汎用コンピュータ、専用コンピュータまたは他のプログラマブルデータ処理装置のプロセッサへ提供され、これらの命令がコンピュータまたは他のプログラマブルデータ処理装置のプロセッサによって実行されると、フローチャートおよび／またはブロック図の一つ以上のブロックにおいて指定された機能／動作を実現ように、装置を製造してもよい。これらのコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体に記憶され、コンピュータ、プログラマブルデータ処理装置および／または他の機器を特定の方式で動作させるようにしてもよい。これにより、命令が記憶されているコンピュータ可読記憶媒体は、フローチャートおよび／またはブロック図の一つ以上のブロックにおいて指定された機能／動作の各方面を実現する命令を有する製品を含む。
【０１１９】
コンピュータ可読プログラム命令は、コンピュータ、他のプログラマブルデータ処理装置、または他の機器にロードされ、コンピュータ、他のプログラマブルデータ処理装置または他の機器に一連の動作ステップを実行させることにより、コンピュータにより実施なプロセスを生成するようにしてもよい。このようにして、コンピュータ、他のプログラマブルデータ処理装置、または他の機器において実行される命令により、フローチャートおよび／またはブロック図の一つ以上のブロックにおいて指定された機能／動作を実現する。
【０１２０】
図面のうちフローチャートおよびブロック図は、本開示の複数の実施例に係るシステム、方法およびコンピュータプログラム製品の実現可能なシステムアーキテクチャ、機能および動作を示す。この点では、フローチャートまたはブロック図における各ブロックは一つのモジュール、プログラムセグメントまたは命令の一部分を代表することができ、前記モジュール、プログラムセグメントまたは命令の一部分は指定された論理機能を実現するための一つ以上の実行可能命令を含む。いくつかの代替としての実現形態では、ブロックに表記される機能は、図面に付した順序と異なって実現してもよい。例えば、連続的な二つのブロックは実質的に並列に実行してもよく、また、係る機能によって、逆な順序で実行してもよい。なお、ブロック図および／またはフローチャートにおける各ブロック、およびブロック図および／またはフローチャートにおけるブロックの組み合わせは、指定される機能または動作を実行するハードウェアに基づく専用システムによって実現してもよいし、または専用ハードウェアとコンピュータ命令との組み合わせによって実現してもよいことにも注意すべきである。
【０１２１】
以上、本開示の各実施例を記述したが、上記説明は例示的なものに過ぎず、網羅的なものではなく、かつ披露された各実施例に限定されるものでもない。当業者にとって、説明された各実施例の範囲および精神から逸脱することなく、様々な修正および変更が自明である。本明細書に選ばれた用語は、各実施例の原理、実際の適用または既存技術に対する改善を好適に解釈するか、または他の当業者に本文に披露された各実施例を理解させるためのものである。
【図１】
2021517649.tif 000011
【図２】
2021517649.tif 000012
【図３】
2021517649.tif 000013
【図４】
2021517649.tif 000014
【図５】
2021517649.tif 000015
【図６】
2021517649.tif 000016
【図７】
2021517649.tif 000017
【国際調査報告】
2021517649.tif 000018
2021517649.tif 000019
2021517649.tif 000020
2021517649.tif 000021