(57)【要約】【課題】適切な位置合わせの実現に寄与ことを目的とする。【解決手段】撮像部による撮像画像を取得し、撮像部のカメラパラメータを取得し、取得された撮像画像と、カメラパラメータと、に基づいて、撮像画像に含まれる一つ以上の特徴それぞれに対応する現実空間における位置を推定し、推定された位置に基づいて、特徴が付与される領域の候補となる候補領域を決定し、決定された候補領域に設定された部分領域に含まれる特徴の個数に基づいて、候補領域から、特徴が付与される領域である特徴付与推奨領域を決定する。【選択図】図３
2020201572.tif 000002
【特許請求の範囲】
【請求項１】
撮像部による撮像画像を取得する第１の取得手段と、
前記撮像部のカメラパラメータを取得する第２の取得手段と、
前記第１の取得手段により取得された前記撮像画像と、前記第２の取得手段により取得された前記カメラパラメータと、に基づいて、前記撮像画像に含まれる一つ以上の特徴それぞれに対応する現実空間における位置を推定する推定手段と、
前記推定手段により推定された位置に基づいて、特徴が付与される領域の候補となる候補領域を決定する第１の決定手段と、
前記第１の決定手段により決定された前記候補領域に設定された部分領域に含まれる特徴の個数に基づいて、前記候補領域から、特徴が付与される領域である特徴付与推奨領域を決定する第２の決定手段と、
を有する情報処理装置。
【請求項２】
前記第１の決定手段は、前記推定手段により推定された位置に基づいて、現実空間に存在するオブジェクト上の平面の領域である前記候補領域を決定する請求項１に記載の情報処理装置。
【請求項３】
前記第２の決定手段は、前記部分領域に含まれる特徴の個数が設定された閾値以下である場合、前記部分領域を前記特徴付与推奨領域に決定する請求項１又は２に記載の情報処理装置。
【請求項４】
前記第２の決定手段により決定された前記特徴付与推奨領域の情報を出力する出力手段を更に有する請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記出力手段は、前記第２の決定手段により決定された前記特徴付与推奨領域の情報を表示部に表示することで、出力する請求項４に記載の情報処理装置。
【請求項６】
情報処理装置が実行する情報処理方法であって、
撮像部による撮像画像を取得する第１の取得ステップと、
前記撮像部のカメラパラメータを取得する第２の取得ステップと、
前記第１の取得ステップで取得された前記撮像画像と、前記第２の取得ステップで取得された前記カメラパラメータと、に基づいて、前記撮像画像に含まれる一つ以上の特徴それぞれに対応する現実空間における位置を推定する推定ステップと、
前記推定ステップで推定された位置に基づいて、特徴が付与される領域の候補となる候補領域を決定する第１の決定ステップと、
前記第１の決定ステップで決定された前記候補領域に設定された部分領域に含まれる特徴の個数に基づいて、前記候補領域から、特徴が付与される領域である特徴付与推奨領域を決定する第２の決定ステップと、
を含む情報処理方法。
【請求項７】
コンピュータを、請求項１乃至５の何れか１項に記載の情報処理装置の各手段として、機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
現実世界と仮想世界とを融合させる技術として、複合現実感（ＭＲ：Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）技術や拡張現実感（ＡＲ：Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ）技術が知られている。これらの技術は、現実空間とコンピュータによって作られる仮想空間を繋ぎ目なく融合する技術である。これらは、組み立て作業時に作業手順や配線の様子を重畳表示する組み立て支援、患者の体表面に体内の様子を重畳表示する手術支援等、様々な分野への応用が期待され、実際に世の中への適用が進んでいる。
ＭＲやＡＲを実現するために、ＣＧを現実環境の任意の位置に適切に位置合わせをすることが行われている。位置合わせの結果、ユーザはディスプレイを通じて見まわしたとしても、常に現実環境の一点に存在するＣＧを視認でき、あたかもそこに存在するかのような体験ができる。
【０００３】
このような位置合わせを実現する技術として、従来は、白黒の特徴的なパターンを持つマーカーを用いて空間の座標系を定義し、カメラから観察し位置が既知であるマーカーを画像処理によって検出することで位置合わせを行う技術がある。
また、近年では、このようなマーカーを用いずに、位置合わせを実現する技術が提案されており、例えば、ＳＬＡＭ（Ｓｉｍｕｌｔａｎｅｏｕｓ  Ｌｏｃａｌｉｚｔｉｏｎ  Ａｎｄ  Ｍａｐｐｉｎｇ）という手法がある。非特許文献１には、ＳＬＡＭの基本的な原理が開示されている。ＳＬＡＭでは、カメラ画像を入力とし、その画像中の一つ以上の静止した特徴から、相対的な位置姿勢を求めることでカメラ位置姿勢を更新する。このような特徴としては、画像中の色変化が激しく輪郭、特にコーナーを形成している点やエッジがある。例えば無地の机の上に、机とは違う色のキューブが置かれていれば、そのキューブの各頂点が特徴点となり、それぞれの輪郭線はエッジとなる。
ＭＲ等のアプリケーションでは、位置合わせの結果を用いて、現実環境の特定の位置にＣＧを配置した画像を提供することが行われている。
【０００４】
画像内の特徴群に基づく位置合わせ精度は、現実環境が撮影された画像内、特に１フレームごとの画像内の特徴の分布に依存する。現実空間において、特徴となる箇所の数がより多く、かつ、万遍なく配置されているほど、より高い精度の位置合わせを期待できる。
逆に、現実空間において特徴となる箇所の数が極端に少ないと、位置合わせの精度が不十分となる部分が発生しうる。
また、現実空間中において、ある一方を向いた際の視野には特徴となる箇所が充足されて配置されているが、他の一方を向いた際の視野には特徴となる箇所が極端に少なく配置されている場合がある。このように、空間中に特徴となる箇所が万遍なく配置されていない場合、位置合わせの精度が不十分となる場合がある。
【０００５】
空間中における特徴となる箇所の数や分布が好適でない場合には、位置合わせを継続できなくなる場合がある。しかしながら、ＭＲ等のアプリケーションを利用するユーザは、このような位置合わせの特性についての知識を有しない場合がある。そのため、ユーザは、ある程度アプリケーションを体験し位置合わせが安定していないアプリケーションの挙動を見て初めて、位置合わせにとって好ましくない方向にカメラを向けていることを把握する。
このような課題に対しては、画像中で特徴となる箇所の分布及び量が適切に存在する部分にカメラを向けるように誘導することが考えられる。特許文献１には、ユーザに提示する表示部に誘導オブジェクトを表示し、推奨する観察方向を通知する仕組みが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−２２５２４５号公報
【非特許文献】
【０００７】
【非特許文献１】Ａｎｄｒｅｗ  Ｊ．Ｄａｖｉｓｏｎ，"Ｒｅａｌ−Ｔｉｍｅ  Ｓｉｍｕｌｔａｎｅｏｕｓ  Ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  Ｍａｐｐｉｎｇ  ｗｉｔｈ  ａ  Ｓｉｎｇｌｅ  Ｃａｍｅｒａ"，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ９ｔｈ  ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  Ｖｏｌｕｍｅ  ２，  ２００３，  ｐｐ．１４０３−１４１０
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ＭＲで用いられている位置合わせのように、現実空間を撮影した画像を用いた位置合わせにおいて、現実空間内に特徴となる箇所が少ない場合や、偏りがある場合には、一部分でしか位置合わせを適切に行うことができない。
このような状況に対応して、ユーザが、現実空間内に特徴を付与することが考えられる。例えば、ユーザが、現実空間において特徴の分布が不適切な領域に、特徴となるコーナー点を有する物体を配置することが考えられる。また、例えば、ユーザが、無地の壁に絵柄のあるポスターを貼る、無地の床にカーペットを敷く等を行うことで、現実空間に特徴を付与することが考えられる。
ただし、特徴の不足する場所であれば、どこでも容易に特徴を付与できるわけではない。例えば、ＭＲ体験を行っている部屋の中空に何らかの物体を固定することは容易ではない。この場合、例えば、固定器具を使うことが考えられるが、固定器具により人の通路等が妨げられ、体験環境そのものを壊すことになってしまうため、固定器具を設置できない場合がある。
そのため、ユーザが、特徴を付与する適切な場所を把握することが重要となる。しかし、ユーザは、位置合わせの特性についての知識を有しない場合がある。そのため、ユーザは、現実空間のどこに、特徴を付与すればよいかを把握できずに、適切に特徴を現実空間内に付与できないため、適切な位置合わせを実現できない場合がある。
本発明は、適切な位置合わせの実現に寄与することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の情報処理装置は、撮像部による撮像画像を取得する第１の取得手段と、前記撮像部のカメラパラメータを取得する第２の取得手段と、前記第１の取得手段により取得された前記撮像画像と、前記第２の取得手段により取得された前記カメラパラメータと、に基づいて、前記撮像画像に含まれる一つ以上の特徴それぞれに対応する現実空間における位置を推定する推定手段と、前記推定手段により推定された位置に基づいて、特徴が付与される領域の候補となる候補領域を決定する第１の決定手段と、前記第１の決定手段により決定された前記候補領域に設定された部分領域に含まれる特徴の個数に基づいて、前記候補領域から、特徴が付与される領域である特徴付与推奨領域を決定する第２の決定手段と、を有する。
【発明の効果】
【００１０】
本発明によれば、適切な位置合わせの実現に寄与することができる。
【図面の簡単な説明】
【００１１】
【図１】画像処理装置のハードウェア構成の一例を示す図である。
【図２】画像処理装置の機能構成の一例を示す図である。
【図３】画像処理装置の処理の一例を示すフローチャートである。
【図４】画像処理装置の処理の一例を示すフローチャートである。
【図５】特徴付与推奨領域の推定処理の一例について説明する図である。
【図６】特徴付与推奨領域の推定処理の一例について説明する図である。
【図７】特徴付与推奨領域の推定処理の一例について説明する図である。
【図８】特徴付与推奨領域の推定処理の一例について説明する図である。
【図９】特徴付与推奨領域の推定処理の一例について説明する図である。
【図１０】特徴付与推奨領域の推定処理の一例について説明する図である。
【図１１】特徴付与推奨領域の推定処理の一例について説明する図である。
【図１２】特徴付与推奨領域の推定処理の一例について説明する図である。
【図１３】特徴付与推奨領域の推定処理の一例について説明する図である。
【図１４】特徴付与推奨領域の推定処理の一例について説明する図である。
【発明を実施するための形態】
【００１２】
以下に、本発明の実施の形態の一例を、図面に基づいて詳細に説明する。
【００１３】
＜実施形態１＞
［１．ハードウェア構成］
図１は、本実施形態の画像処理装置１００のハードウェア構成の一例を示す図である。画像処理装置１００は、撮影された画像から、位置合わせのための特徴を付与すべき領域を決定する情報処理装置である。本実施形態では、画像処理装置１００は、パーソナルコンピュータ（ＰＣ）であるとするが、サーバ装置、タブレット装置、スマートグラス、コンピュータが組み込まれたヘッドマウントディスプレイ等の他の情報処理装置であってもよい。
画像処理装置１００は、撮像部１０１、入力部１０２、記憶部１０３、表示部１０４、制御部１０５、バス１０６を含む。撮像部１０１、入力部１０２、記憶部１０３、表示部１０４、制御部１０５は、バス１０６を介して相互に通信可能に接続されている。
【００１４】
撮像部１０１は、画像を撮像する１つ以上のカメラモジュールである。撮像部１０１は、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）、ＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）等の撮像素子を用いて現実空間を撮像し、撮像画像を生成する。撮像部１０１により生成される撮像画像は、制御部１０５が実行する画像処理にとっての入力画像となる。
本実施形態では、撮像部１０１は、画像処理装置１００に含まれることとするが、画像処理装置１００に含まれずに、画像処理装置１００と有線又は無線で接続された外部の撮像装置であることとしてもよい。
【００１５】
入力部１０２は、ユーザが画像処理装置１００を操作し又は画像処理装置１００へ情報を入力するために使用される入力デバイスである。入力部１０２は、例えば、マウス・タッチパッド等のポインティングデバイス、キーボード、キーパッド、ハードボタン、ハードスイッチ、タッチパネルの操作部等である。
記憶部１０３は、各種プログラム、各種設定情報、撮像部１０１による撮像画像等を記憶する記憶装置である。記憶部１０３は、半導体メモリ又はハードディスク等の記憶媒体を含む。記憶部１０３により記憶されるデータは、例えば、撮像画像、カメラパラメータ、及び、様々なデータベース（ＤＢ）内のデータである。本実施形態では、画像処理装置１００の処理に係るプログラム、各種データは、記憶部１０３に記憶されることとするが、外部の記憶部（例えば、データサーバ、ネットワークストレージ、外付けメモリ等）に記憶されていることとしてもよい。その場合、画像処理装置１００は、その外部の記憶部から各種プログラム、各種データを取得する。
【００１６】
表示部１０４は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、ＯＬＥＤ（Ｏｒｇａｎｉｃ  ｌｉｇｈｔ−Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）等のディスプレイを含む表示モジュールである。表示部１０４は、例えば、画像処理装置１００により生成されるアプリケーションの画像を表示する。
本実施形態では、表示部１０４は、画像処理装置１００に含まれる表示モジュールであることとするが、画像処理装置１００に含まれない外部の表示モジュールであることとしてもよい。その場合、表示部１０４は、有線又は無線で、画像処理装置１００と接続される。
【００１７】
制御部１０５は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）等のプロセッサである。制御部１０５が記憶部１０３又は他の記憶部に記憶されるプログラムにしたがって処理を実行することで、図２で後述する画像処理装置１００の機能、図３、４で後述するフローチャートの処理等が実現される。
バス１０６は、撮像部１０１、入力部１０２、記憶部１０３、表示部１０４、制御部１０５を相互に接続する伝送経路である。
【００１８】
［２．機能構成］
図２は、画像処理装置１００の機能構成の一例を示す図である。
画像処理装置１００は、画像取得部１１０、カメラ情報取得部１２０、特徴取得部１３０、位置推定部１４０、候補決定部１５０、領域決定部１６０を含む。
【００１９】
画像取得部１１０は、撮像部１０１が撮像した撮像画像を入力画像として受け取る。本実施形態では、画像取得部１１０は、撮像部１０１から、撮像部１０１により連続して撮影された各フレームの画像を周期的に取得する。画像取得部１１０は、取得した入力画像を、特徴取得部１３０に送信する。
カメラ情報取得部１２０は、撮像部１０１のカメラパラメータを取得する。カメラパラメータとは、撮像部１０１の各種属性を示すパラメータであり、撮像部１０１の位置姿勢を示す外部パラメータ、撮影条件に関する内部パラメータを含む。
【００２０】
特徴取得部１３０は、画像取得部１１０から入力画像を取得し、カメラ情報取得部１２０から撮像部１０１のカメラパラメータを取得する。特徴取得部１３０は、入力画像に映る一つ以上の特徴を抽出する。
位置推定部１４０は、特徴取得部１３０により抽出された特徴それぞれの位置を推定し、推定した特徴の位置に基づいて、現実空間における撮像部１０１の位置姿勢を推定する。位置推定部１４０は、推定した特徴取得部１３０により抽出された特徴それぞれの位置を候補決定部１５０に送信する。
特徴取得部１３０及び位置推定部１４０は、撮像部１０１により撮影されたフレームごとに、特徴抽出及び撮像部１０１の位置推定の処理を継続することで、異なる位置姿勢の撮像部１０１からの撮像画像に映る特徴を取得していく。位置推定部１４０は、特徴取得部１３０により抽出された１つ以上の特徴の位置の情報を特徴位置情報として候補決定部１５０に送信する。
【００２１】
候補決定部１５０は、位置推定部１４０から特徴の位置情報を受け取る。候補決定部１５０は、受け取った特徴それぞれの位置情報に基づいて、特徴の付与が可能な領域を、１つ以上決定する。候補決定部１５０は、決定した１つ以上の領域の情報を、特徴の付与が可能な領域の情報として領域決定部１６０に送信する。以下では、候補決定部１５０が決定した特徴の付与が可能な領域を、特徴の付与が行われる領域の候補の領域である候補領域とする。
領域決定部１６０は、候補決定部１５０から１つ以上の候補領域の情報を受け取る。領域決定部１６０は、候補領域それぞれについて、候補領域を、個別の部分領域に区分したうえで、その部分領域の中で特徴の数が任意の閾値以下の領域を、特徴が付与される領域として決定し、決定した領域の情報を記憶部１０３に記憶する。以下では、領域決定部１６０が決定する特徴が付与される領域を、特徴付与推奨領域とする。領域決定部１６０は、特徴付与推奨領域の情報を、表示部１０４に表示する。
【００２２】
［３．画像処理装置の処理の詳細］
図３は、画像処理装置１００の処理の一例を示すフローチャートである。
本実施形態では、画像処理装置１００は、室内における特徴付与推奨領域を決定する。
Ｓ３１０において、カメラ情報取得部１２０は、撮像部１０１のカメラパラメータを取得する。本実施形態では、撮像部１０１のカメラパラメータは、予め制御部１０５により記憶部１０３に記憶されているとする。そのため、カメラ情報取得部１２０は、記憶部１０３から、撮像部１０１のカメラパラメータを取得する。ただし、カメラ情報取得部１２０は、入力部１０２を介して入力された情報に基づいて、撮像部１０１のカメラパラメータを取得してもよい。また、カメラ情報取得部１２０は、撮像部１０１に問い合わせることで、撮像部１０１のカメラパラメータを取得してもよい。
【００２３】
Ｓ３２０において、画像取得部１１０は、撮像部１０１から撮像画像を、入力画像として取得する。画像取得部１１０は、撮像部１０１から、撮像画像として、撮像部１０１により連続して撮像された複数のフレームを１つずつ、周期的に取得する。そのため、撮像部１０１により取得される撮像画像それぞれは、撮像された位置、又は撮像時間の何れか１つ以上が異なる。
【００２４】
Ｓ３３０において、特徴取得部１３０は、Ｓ３２０で取得された入力画像から、特徴を抽出する。本実施形態では、特徴取得部１３０は、入力画像のうち、横方向にも縦方向にも輝度変化の度合が予め定められた閾値以上となる点を、入力画像に含まれる特徴として検出する。即ち、本実施形態では、特徴取得部１３０が検出する特徴は、輝度の変化が激しく輝度の変化に係るエッジが縦方向にも横方向にも立つ（横方向及び縦方向における輝度の変化の大きさが設定された閾値以上である）ように撮影される箇所である。
１フレームの入力画像から特徴取得部１３０により抽出された特徴からは、その入力画像中の特徴に対応する位置しか得られない。そこで、位置推定部１４０は、Ｓ３１０で取得されたカメラパラメータと、Ｓ３２０で取得された複数の入力画像と、これらの入力画像それぞれにおける特徴に対応する位置と、に基づいて、特徴の現実空間における位置を推定する。本実施形態では、画像処理装置１００は、現実空間における位置を、現実空間に設定された３次元座標系における座標値として表すこととする。
【００２５】
本実施形態では、位置推定部１４０は、ＫＬＴと呼ばれる特徴追跡手法によって、時系列に沿って位置を変えて撮像された複数の入力画像から同一の特徴を追跡し、複数の入力画像間での特徴の対応付けを行う。
そして、位置推定部１４０は、求めた複数の入力画像間における特徴の対応情報から、Ｅ行列（基礎行列）と呼ばれる変換行列を決定する。位置推定部１４０は、決定したＥ行列から撮像部１０１の位置姿勢を求め、複数の入力画像間の相対位置姿勢に基づいて、現実空間における特徴に対応する位置の３次元情報を推定する。以下では、現実空間における特徴に対応する位置を、特徴点とする。位置推定部１４０は、推定した特徴それぞれの位置の情報を、特徴位置情報として候補決定部１５０に送信する。
【００２６】
Ｓ３４０において、候補決定部１５０は、位置推定部１４０から送信された特徴位置情報が示す各特徴点の位置から、現実空間に存在するオブジェクト（例えば、壁面、床、テーブル等）の平面部の検出を行う。本実施形態では、画像処理装置１００は、現実空間に存在するオブジェクトの平面部の領域を、特徴の付与が可能な候補領域として決定する。本実施形態では、候補決定部１５０は、公知の技術を用いて、平面部の検出を行う。候補決定部１５０は、設定された閾値以上の広さの範囲で広がっている平面部を１つ検出する処理を、この閾値以上の平面部が検出できなくなるまで繰り返す。候補決定部１５０は、検出した１つ以上の平面部の領域を、候補領域として決定し、決定した候補領域の情報を、領域決定部１６０に送信する。
【００２７】
領域決定部１６０は、候補決定部１５０から受信した候補領域の情報に基づいて、特徴量付与推奨領域を決定する。より具体的には、領域決定部１６０は、候補領域それぞれについて、候補領域内に設定された部分領域について、含まれる特徴の数が設定された閾値以下であれば、その部分領域を特徴量付与推奨領域として決定する。
Ｓ３４０の処理の詳細については、図４で後述する。
【００２８】
図４を用いて、Ｓ３４０の処理の詳細について説明する。
図４のフローチャートにおけるＳ４０１〜Ｓ４０７の処理は、Ｓ３４０での候補決定部１５０の処理を示す。また、Ｓ４０８〜Ｓ４１４の処理は、Ｓ３４０での候補決定部１５０の処理を示す。
【００２９】
Ｓ４０１において、候補決定部１５０は、位置推定部１４０から受信した特徴位置情報が示す特徴点から、平面検出フラグの立っていない特徴点を抽出する。平面検出フラグとは、特徴位置情報が示す各特徴点について対応付けられたフラグ情報であり、対応する特徴点がオブジェクトの平面部の検出処理に既に用いられたか否かを示す情報である。本実施形態では、平面検出フラグは、１又は０の２値の値を取る情報である。平面検出フラグの値１は、その平面検出フラグに対応する特徴点が既に平面検出に用いられたことを示す。平面検出フラグの値０は、その平面検出フラグに対応する特徴点がまだ平面検出に用いられていないことを示す。即ち、候補決定部１５０は、Ｓ４０１で、特徴位置情報が示す特徴点から対応する平面検出フラグの値が０である特徴点を抽出することとなる。以下では、最新のＳ４０１の処理で抽出された特徴点の集合を、抽出特徴点集合とする。
【００３０】
候補決定部１５０は、特徴位置情報を取得すると、取得した特徴位置情報が示す特徴点それぞれについて、平面検出フラグを生成し、値を０に初期化して、記憶部１０３に記憶する。初回のＳ４０１の処理では、全ての特徴点に対応する平面検出フラグが０となるため、全ての特徴点が抽出される。
図５に室内における特徴位置情報が示す特徴点の分布の様子の一例を示す。図中の黒色の星印が、特徴点を示す。
【００３１】
Ｓ４０２において、候補決定部１５０は、抽出特徴点集合から、重複しないように、ランダムに３つの特徴点を選択する。以下では、Ｓ４０２で選択された３つの特徴点を、それぞれｐ０、ｐ１、ｐ２とおく。
Ｓ４０３において、候補決定部１５０は、Ｓ４０２で選択した３つの特徴点を通る平面を求める。本実施形態では、候補決定部１５０は、ｐ０、ｐ１、ｐ２を、以下の式１に当てはめることで、求める平面の法線Ｖの式を求める。
【００３２】
【数１】
2020201572.tif 000003
【００３３】
そして、候補決定部１５０は、ｐ０と求めたＶとを、以下の式２に当てはめることで、ｐ０、ｐ１、ｐ２を通る平面の式を求める。
【００３４】
【数２】
2020201572.tif 000004
【００３５】
式２のｐは、この平面上の任意の点を示す。候補決定部１５０は、求めた式が示す平面（式２を満たすｐの集合となる平面）をｐ０、ｐ１、ｐ２を通る平面とする。
【００３６】
Ｓ４０４において、候補決定部１５０は、Ｓ４０３で求めた平面と、抽出特徴点集合の各特徴点との距離を計算し、設定された閾値を下回る特徴点の数を計算する。この処理により、抽出特徴点集合のうち、Ｓ４０３で求めた平面に含まれるとみなされる特徴点の数を取得する。候補決定部１５０は、Ｓ４０３で求めた平面と対応付けて、取得した特徴点の数を、記憶部１０３に記憶する。
Ｓ４０５において、候補決定部１５０は、抽出特徴点集合から、３つの特徴点の全ての組み合わせについて、Ｓ４０２で抽出したか否かを判定する。候補決定部１５０は、抽出特徴点集合から、３つの特徴点の全ての組み合わせについて、Ｓ４０２で抽出したと判定した場合、処理をＳ４０６へ進める。また、候補決定部１５０は、抽出特徴点集合にＳ４０２で抽出していない３つの特徴点の組み合わせが存在すると判定した場合、処理をＳ４０２へ進める。
【００３７】
Ｓ４０６において、候補決定部１５０は、Ｓ４０４で記憶部に記憶された特徴点の数のうち、最大のものを特定する。そして、候補決定部１５０は、特定した特徴点の数に対応するＳ４０３で求めた平面の式の情報を記憶部１０３に記憶し、特定した特徴点の数についても記憶部１０３に記憶する。以下では、Ｓ４０６で式の情報を記憶された平面を、対象平面とする。
Ｓ４０７において、候補決定部１５０は、Ｓ４０６で記憶された特徴点の数が、特徴位置情報が示す特徴点全体の数の設定された割合として定められた閾値を下回るか否かを判定する。候補決定部１５０は、Ｓ４０６で記憶された特徴点の数が閾値以上であると判定した場合、対象平面の領域を、候補領域として決定し、処理をＳ４０８に進め、Ｓ４０６で記憶された特徴点の数が閾値を下回ると判定した場合、処理をＳ４１４に進める。
【００３８】
現実空間に存在するオブジェクトの平面部を包含する平面には、オブジェクト上の特徴点が含まれることとなる。そのため、本実施形態では、このような平面には、現実空間における他の平面（例えば、オブジェクトの平面部と重ならない平面）よりも、多くの特徴点が含まれると仮定する。
そこで、本実施形態では、候補決定部１５０は、Ｓ４０６で記憶された特徴点の数が定められた閾値以上である場合に、対象平面を、何らかのオブジェクトの平面部を包含する平面として判断し、処理をＳ４０８に進めることとする。
【００３９】
Ｓ４０８において、領域決定部１６０は、対象平面に含まれる特徴点（Ｓ４０６で記憶された特徴点の数に対応する特徴点）それぞれについての平面検出フラグの値を１に更新する。
図６が示す状態は、Ｓ４０８の処理の完了した後の状態の一例である。図６の平面１は、対象平面を示す。図６には、平面１に含まれる特徴点について、平面検出フラグが１になったことが示されている。
【００４０】
Ｓ４０９において、領域決定部１６０は、Ｓ４０８で対応する平面検出フラグの値を１に更新した特徴点の集合を抽出する。
Ｓ４１０において、領域決定部１６０は、Ｓ４０９で抽出した特徴点の集合の重心と、対象平面上における縦横の偏差と、求める。そして、領域決定部１６０は、対象平面上で、求めた重心を中心に、求めた縦横の偏差の幅を有する領域を特定する。以下では、Ｓ４１０で特定された領域を、対象領域とする。図７にＳ４１０で特定された対象領域の一例を示す。
また、領域決定部１６０は、縦横の幅が、求めた縦横の偏差の１／２であるサイズを、サイズＳとして記憶部１０３に記憶する。
【００４１】
Ｓ４１１において、領域決定部１６０は、Ｓ４１０で特定した領域中で特徴点が粗な領域の探索に用いられる探索ウィンドウのサイズを、サイズＳに決定する。
Ｓ４１２において、領域決定部１６０は、対象領域中で、サイズＳの探索ウィンドウを走査させつつ、対象領域全域を走査し終わるまで、以下の処理を繰り返す。即ち、領域決定部１６０は、対象領域中の探索ウィンドウに含まれる特徴点の数を特定し、特定した特徴点の数が、設定された閾値以下である場合、その際の探索ウィンドウの領域を、特徴が粗な領域として決定する。そして、領域決定部１６０は、決定した特徴が粗な領域を特徴付与推奨領域に決定する。そして、領域決定部１６０は、その探索ウィンドウの領域の情報を、特徴付与推奨領域の情報として、記憶部１０３に記憶する。
図８にＳ４１２の処理で決定された特徴付与推奨領域の一例を示す。
【００４２】
Ｓ４１３において、領域決定部１６０は、サイズＳの値を縦横の幅を１／２にすることで、更新する。そして、領域決定部１６０は、更新後のサイズＳが設定された閾値以上であるか否かを判定する。領域決定部１６０は、更新後のサイズＳが設定された閾値以上であると判定した場合、処理をＳ４１１に進め、更新後のサイズＳが設定された閾値未満であると判定した場合、処理をＳ４０１に進める。
図９に、Ｓ４１３の処理において、更新後のサイズＳが設定された閾値未満であると判定された時点において、決定された特徴付与推奨領域の一例を示す。
【００４３】
画像処理装置１００は、Ｓ４１３からＳ４０１に処理を進めた後、更に、Ｓ４０１〜Ｓ４１３の処理を、Ｓ４０７で、Ｓ４０６で記憶された特徴点の数が閾値を下回ると判定するまで繰り返す。
例えば、候補決定部１５０は、２度目のＳ４０１で平面検出フラグの立っていない特徴点を抽出する。２度目のＳ４０８の処理の完了後の各特徴点を、図１０に示す。図１０には、平面１に含まれる特徴点だけでなく、平面２（対象平面）に含まれる各特徴点についても、対応する平面検出フラグが１となっている様子が示されている。
また、その場合にＳ４１３の処理において、更新後のサイズＳが設定された閾値未満であると判定された時点において、決定された特徴付与推奨領域の一例を図１１に示す。平面２中に特徴付与推奨領域が決定されていることが分かる。
【００４４】
更に、３度目のＳ４０８の処理の完了後の各特徴点を、図１２に示す。図１２には、平面１、２に含まれる特徴点だけでなく、平面３（対象平面）に含まれる各特徴点についても、対応する平面検出フラグが１となっている様子が示されている。
また、その場合にＳ４１３の処理において、更新後のサイズＳが設定された閾値未満であると判定された時点において、決定された特徴付与推奨領域の一例を図１３に示す。平面３中に特徴付与推奨領域が決定されていることが分かる。
【００４５】
Ｓ４１４において、領域決定部１６０は、Ｓ４１２で記憶した各情報が示す各領域を、最終的な特徴付与推奨領域として決定する。
図３の説明に戻る。
Ｓ３５０において、領域決定部１６０は、Ｓ４１４で決定した特徴付与推奨領域の情報を、表示部１０４に表示する。本実施形態では、領域決定部１６０は、室内の画像に特徴付与推奨領域の情報が示す領域を重畳して表示する。その場合、領域決定部１６０は、特徴付与推奨領域の情報が示す領域を、設定された表示態様（例えば、設定された色で表示、点滅表示等）で表示することで強調表示する。図１４にＳ３６０で表示部１０４に表示される画面の一例を示す。図１４の例では、表示部１０４に現実空間とＣＧを重畳するＭＲ空間を描画するアプリーションが提供する画面上に、特徴付与推奨領域が強調して提示されている様子が示されている。
本実施形態では、領域決定部１６０は、Ｓ３５０で、特徴量付与推奨領域の情報を、表示部１０４に表示することで出力することとした。ただし、他の例として、領域決定部１６０は、Ｓ３４０で決定した特徴量付与推奨領域の情報を、印刷機等を介して、印刷媒体に印刷することで出力してもよい。また、領域決定部１６０は、Ｓ３４０で決定した特徴量付与推奨領域の情報を、設定された送信先（例えば、ユーザの保有する端末等）に送信することで出力してもよい。
【００４６】
以上、本実施形態では、画像処理装置１００は、撮像部１０１による撮像画像と、撮像部１０１のカメラパラメータと、に基づいて、撮影画像内における一つ以上の特徴それぞれに対応する現実空間における１つ以上の位置を推定することとした。そして、画像処理装置１００は、推定した１つ以上の位置に基づいて、特徴が付与される領域の候補となる候補領域を決定し、候補領域で走査される探索ウィンドウの領域に含まれる特徴の個数に基づいて、特徴付与推奨領域を決定した。ユーザは、画像処理装置１００が決定した特徴付与推奨領域の情報を確認することで、特徴を付与すべき領域を適切に把握できる。この結果、ユーザが現実空間に適切に特徴を付与することが可能となる。これにより、適切な位置合わせが実現されることとなる。即ち、画像処理装置１００は、適切な位置合わせの実現に寄与することができる。
【００４７】
（変形例１）
本実施形態では、画像処理装置１００は、特徴付与推奨領域として、平面の領域を決定した。ただし、他の例として、画像処理装置１００は、ユーザが特徴を付与できる場所で、かつ、特徴が粗な領域であるならば、平面以外の領域を、特徴付与推奨領域に決定してもよい。
本変形例では、画像取得部１１０は、撮像部１０１に含まれるデプスカメラからデプスデータを取得するものとして説明する。特徴取得部１３０は、撮像画像から特徴を抽出すると共に、現実空間のサーフェース、又はポイントクラウド（デプスカメラが計測した現実空間上の点の集合）を特定する。候補決定部１５０は、このサーフェース、又はポイントクラウドを、候補領域として決定する。領域決定部１６０は、Ｓ４１２で候補領域の中で探索ウィンドウを走査させ、特徴付与推奨領域を決定することとしてもよい。
【００４８】
（変形例２）
本実施形態では、画像処理装置１００は、Ｓ３４０の処理として、Ｓ４０１〜Ｓ４１４の処理を実行することとした。ただし、他の例として、画像処理装置１００は、例えば、撮像対象の領域（室内）の全体について設定されたサイズの探索ウィンドウを用いて、走査しつつ、Ｓ４１２と同様の処理で、特徴が粗な領域を決定する。そして、画像処理装置１００は、決定した特徴が粗な領域のうち、設定された条件（例えば、平面領域であること等）を満たす領域を、特徴付与推奨領域を決定してもよい。
【００４９】
（変形例３）
ユーザの個別の事情によっては、特徴付与推奨領域として決定される領域の中にも特徴の付与が望ましくない領域があり得る。また、特徴付与推奨領域として決定されない領域（例えば、中空の領域等）の中にも特徴の付与が望ましい領域もあり得る。
そこで、画像処理装置１００は、表示部１０４に表示されるＧＵＩ、入力部１０２等を介してユーザから、特徴を付与できる領域、又は特徴の付与を許可しない領域の情報（例えば、テキスト情報等）を受付けてもよい。
その場合、画像処理装置１００は、ユーザから受け付けた情報が示す特徴を付与できる領域を候補領域として決定し、特徴付与推奨領域を決定してもよい。また、画像処理装置１００は、ユーザから受け付けた情報が示す特徴を付与できる領域を候補領域として決定し、特徴付与推奨領域を決定し、他の領域について、本実施形態で説明した処理を行うことで、他の領域について、特徴付与推奨領域を決定してもよい。
また、画像処理装置１００は、本実施形態で説明した処理で特徴付与推奨領域を決定し、決定した特徴量付与推奨領域からユーザから受け付けた情報が示す特徴を付与できない領域を除外した領域を、最終的な特徴量付与推奨領域に決定してもよい。
【００５０】
＜その他の実施形態＞
画像処理装置１００は、各機能構成要素のうち、位置推定部１４０、領域決定部１６０等については、その代わりとして、機械学習された学習済みモデルを代わりに用いて処理してもよい。その場合、例えば、その機能構成要素への入力データと出力データとの組合せを学習データとして複数個準備されているとする。そして、画像処理装置１００は、学習データから機械学習によって知識を獲得し、獲得した知識に基づいて入力データに対する出力データを結果として出力する学習済みモデルを予め生成する。このような学習済みモデルとしては、例えば、ニューラルネットワークモデル等がある。そして、その学習済みモデルは、前記処理部と同等の処理をするためのプログラムとして、ＣＰＵ、ＧＰＵ等と協働で動作することにより、対応する機能構成要素の処理を行う。なお、画像処理装置１００は、このような学習済みモデルを、必要に応じて一定の処理後に更新してもよい。
【００５１】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００５２】
例えば、上述した画像処理装置１００の機能構成の一部又は全てをハードウェアとして画像処理装置１００に実装してもよい。以上、本発明の実施形態の一例について詳述したが、本発明は係る特定の実施形態に限定されるものではない。例えば、上述した各実施形態を任意に組み合わせる等してもよい。
【符号の説明】
【００５３】
１００  画像処理装置
１０１  撮像部
１０５  制御部
【図１】
2020201572.tif 000005
【図２】
2020201572.tif 000006
【図３】
2020201572.tif 000007
【図４】
2020201572.tif 000008
【図５】
2020201572.tif 000009
【図６】
2020201572.tif 000010
【図７】
2020201572.tif 000011
【図８】
2020201572.tif 000012
【図９】
2020201572.tif 000013
【図１０】
2020201572.tif 000014
【図１１】
2020201572.tif 000015
【図１２】
2020201572.tif 000016
【図１３】
2020201572.tif 000017
【図１４】
2020201572.tif 000018