(57)【要約】      （修正有）【課題】撮影した画像に存在する被写体により撮影方向を特定する方法を提供する。【解決手段】撮影方角を特定したい画像を検索画面によりサーバへアップロードすると、サーバは、端末からアップロードされた画像から対象物を抽出し、３点の対象物に対して、各対象物間の距離の比率を算出し、地図データ上の両端の対象物を結ぶ線に対してこの距離の比率を適用することで、分割点を求め、この分割点から中央に位置する対象物へ結んだ線上で撮影がなされた方角を特定する。【選択図】図３
2019114164.tif 000002
【特許請求の範囲】
【請求項１】
撮影方角を特定する情報処理装置であって、
撮影することにより得られた画像から撮影対象物を抽出する抽出手段と、
前記抽出した撮影対象物の位置情報を取得する位置情報取得手段と、
前記位置情報取得手段により取得した位置情報により前記撮影対象物を撮影した方角を特定する方角特定手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記抽出手段により抽出した撮影対象物の並び順を特定する第一の並び順特定手段と、
前記位置情報取得手段により取得した位置情報を用いて前記撮影対象物の並び順を特定する第二の並び順特定手段と、
前記方角特定手段は、前記第一の並び順と同じ並び順となる前記第二の並び順で撮影できる方角を特定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記抽出手段により抽出した撮影対象物間の距離を算出する第一の算出手段と、
前記第一の算出手段により算出した撮影対象物間の距離の比率に基づいて、前記撮影対象物の位置情報を用いて、前記撮影対象物間に存在する撮影対象物の位置を特定する位置特定手段と、
を備え、
前記方角特定手段は、前記位置特定手段により特定される位置と前記撮影対象物間に存在する撮影対象物とを通る線上を撮影した方角として特定することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記位置特定手段により２以上の位置が特定された場合、前記撮影対象物の位置を囲む領域の面積が最小となる位置を特定することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
撮影方角を特定する情報処理装置の制御方法であって、
前記情報処理装置は、
撮影することにより得られた画像から撮影対象物を抽出する抽出ステップと、
前記抽出した撮影対象物の位置情報を取得する位置情報取得ステップと、
前記位置情報取得ステップにより取得した位置情報により前記撮影対象物を撮影した方角を特定する方角特定ステップと、
を実行することを特徴とする情報処理装置の制御方法。
【請求項６】
撮影方角を特定する情報処理装置で読取実行可能なプログラムであって、
前記情報処理装置を、
撮影することにより得られた画像から撮影対象物を抽出する抽出手段と、
前記抽出した撮影対象物の位置情報を取得する位置情報取得手段と、
前記位置情報取得手段により取得した位置情報により前記撮影対象物を撮影した方角を特定する方角特定手段と、
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影装置によって撮影した方角を特定する方法に関する。
【背景技術】
【０００２】
最近の写真データにはカメラの機種や撮影時の条件情報を含むＥｘｉｆ情報が埋め込まれており、撮影地点の特定等が可能である。
【０００３】
これにより、撮影時の条件情報、写真データ、及び地図データを対応付けて登録しておくことにより、ある地点で撮影された写真データを地図データ上に表示する技術が存在する（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１５７８９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の技術では、Ｅｘｉｆ情報として、撮影時の条件情報を含むことが前提とされており、撮影時の条件情報等を有さない写真データに関しては、功を奏さない。
【０００６】
そこで、本発明の目的は、撮影することにより得られた画像に存在する被写体により撮影方向を特定することが可能な情報処理装置、システム、制御方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するための本発明は、撮影方角を特定する情報処理装置であって、撮影することにより得られた画像から撮影対象物を抽出する抽出手段と、前記抽出した撮影対象物の位置情報を取得する位置情報取得手段と、前記位置情報取得手段により取得した位置情報により前記撮影対象物を撮影した方角を特定する方角特定手段と、を備えたことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、撮影することにより得られた画像に存在する被写体により撮影方向を特定することができる、という効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】情報処理システムの構成の一例を示す構成図である。
【図２】端末、サーバに適用可能な情報処理装置のハードウェア構成を示すブロック図である。
【図３】撮影方角特定処理の一例を示すフローチャートである。
【図４】検索画面の構成を示す構成図である。
【図５】検索画面の構成を示す構成図である。
【図６】画像から対象物を抽出したことを説明するための説明図である。
【図７】地図データへ対象物を配置したことを説明するための説明図である。
【図８】対象物によって囲まれる領域を説明するための説明図である。
【図９】対象物を座標上に位置したことを説明するための説明図である。
【図１０】対象物間の距離の比率の算出方法を説明するための説明図である。
【図１１】対象物間の距離の比率で地図データ上の対象物間を分割したことを説明するための説明である。
【図１２】撮影方角を特定することを説明するための説明図である。
【図１３】検索画面の構成を示す構成図である。
【図１４】位置情報マスタの構成を示す構成図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【００１１】
図１は、本発明の情報処理システム１００の概略構成の一例を示す構成図である。
【００１２】
図１は、カメラなどの撮影機器で撮影することにより得られた画像が何れの方角で撮影されたかを特定するサーバ１０２、当該方角を特定したい画像をサーバ１０２にアップロードし、特定された方角を表示する端末１０４がローカルエリアネットワーク（ＬＡＮ）１０６を介して接続される構成となっている。
【００１３】
以下、図２を用いて、図１に示したサーバ１０２、端末１０４に適用可能な情報処理装置のハードウェア構成について説明する。
【００１４】
図２は、図１に示したサーバ１０２、端末１０４に適用可能な情報処理装置のハードウェア構成を示すブロック図である。
【００１５】
図２において、２０１はＣＰＵで、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【００１６】
２０３はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＯＭ２０２あるいは外部メモリ２１１からＲＡＭ２０３にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【００１７】
また、２０５は入力コントローラで、入力デバイス２０９や不図示のマウス等のポインティングデバイス等からの入力を制御する。２０６はビデオコントローラで、ディスプレイ２１０等の表示器への表示を制御する。なお、図２では、ディスプレイ２１０と記載しているが、表示器はＣＲＴに限らず、液晶ディスプレイ等の他の表示器であってもよい。これらは必要に応じて管理者が使用するものである。
【００１８】
２０７はメモリコントローラで、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）や、フレキシブルディスク（ＦＤ）、或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００１９】
２０８は通信Ｉ／Ｆコントローラで、ネットワーク（例えば、図１に示したＬＡＮ１０６）を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いた通信等が可能である。
【００２０】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ディスプレイ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００２１】
本発明を実現するための後述する各種プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ２１１に格納されており、これらについての詳細な説明も後述する。
【００２２】
以下、図３に示すフローチャートを参照して、本実施形態の情報処理システムにおける撮影方角特定処理について説明する。
【００２３】
ステップＳ１００では、端末１０４は、検索画面（図４参照）を用いて、撮影方角を特定したい画像をアップロードする。
【００２４】
図４に示す検索画面３００は、画像のファイル名を表示するファイル名表示部３０２、アップロードしたい画像（ファイル）を表示選択させるためのファイル選択画面（不図示）を表示する際に押下する参照ボタン３０４、選択した画像を表示する画像表示部３０６を備えている。
【００２５】
参照ボタン３０４を押下することにより表示されるファイル選択画面を用いて、端末１０４に存在する画像を選択することにより、当該画像のファイル名がファイル名表示部３０２へ表示され、当該画像が画像表示部３０６へ表示される。
【００２６】
また、検索画面３００は、選択した画像をアップロードする際に押下するための検索ボタン３０８、アップロードした画像が何れの方角で撮影されたかを表示する結果表示部３１０を備えている。
【００２７】
つまり、画像表示部３０６に表示された画像をサーバ１０２へアップロードし、サーバ１０２では、この画像を解析することで、撮影方角を特定し、その結果を結果表示部３１０へ表示する。
【００２８】
ステップＳ１０２では、端末１０４は、検索ボタン３０８が押下されると画像表示部３０６に表示されている画像をサーバ１０２へ送信するとともに、当該画像の撮影方角を特定することを要求する。
【００２９】
本実施形態では、例えば、図５に示す検索画面３００の画像表示部３０６に表示される画像の撮影方角を特定するものとする。
【００３０】
ステップＳ１０４では、サーバ１０２は、ステップＳ１０２において端末１０４から送信された画像と画像の撮影方角を特定することの要求を受信する。
【００３１】
ステップＳ１０６では、サーバ１０２は、ステップＳ１０４において受信した画像を解析することにより、撮影されている対象物を抽出する。尚、抽出する際に、対象物に認識可能な文字列が存在する場合は、その文字列をも抽出する。
【００３２】
例えば、図６に示すように、画像表示部３０６に表示される画像４００から部分画像４０２、部分画像４０２の文字列４０４、部分画像４０６、部分画像４０６の文字列４０８、部分画像４１０の文字列４１２を抽出する。
【００３３】
ステップＳ１０８では、サーバ１０２は、ステップＳ１０６において抽出した対象物が３点以上であるか否かを判定し、３点以上であると判定した場合は、ステップＳ１１０へ処理を進め、３点以上であると判定しない場合は、本処理を終了する。
【００３４】
ステップＳ１１０では、サーバ１０２は、ステップＳ１０６において抽出した対象物の位置を位置情報マスタ（図１４参照）に記憶されている位置情報により特定する。
【００３５】
図１４には、位置情報マスタの構成が示されており、位置情報マスタは、個々の対象物となる画像を示す対象物画像、対象物が存在する経度、緯度、対象物の名称等を含んで構成されている。尚、対象物画像は、１つの対象物に対して複数の向きの画像が登録されている。
【００３６】
本ステップでは、ステップＳ１０６において抽出した対象物の画像と位置情報マスタの対象物画像とのマッチングにより、対象物画像を特定し、当該対象物画像に対応する位置情報（経度、緯度）を取得する。
【００３７】
ステップＳ１１２では、サーバ１０２は、各３点から構成される対象物同士の組み合わせを作成し、各組み合わせの数が１件以上あるか否かを判定し、１件以上あると判定した場合は、ステップＳ１１４へ処理を進め、１件以上あると判定しない場合は、本処理を終了する。
【００３８】
対象物同士の組み合わせが２件ある場合の例として、図７に示すように、対象物４０２については、２点抽出されたとし、他の対象物は１点ずつ抽出されたとする。
【００３９】
各対象物は、位置情報マスタの位置情報により、地図データ５００において、対象物４０２は、位置５０２及び位置５０４のそれぞれに位置し、対象物４０６は、位置５０６に位置し、対象物４０８は、位置５０８に位置している、
つまり、組み合わせとしては、位置５０２の対象物４０２、位置５０６の対象物４０６、位置５０８の対象物５０８と１組と、位置５０４の対象物４０２、位置５０６の対象物４０６、位置５０８の対象物５０８との１組が作成される。
【００４０】
ステップＳ１１４では、サーバ１０２は、各組み合わせの対象物で囲まれる領域の面積を算出する。
【００４１】
例えば、図８に示すように、図８の上段には、位置５０２の対象物４０２、位置５０６の対象物４０６、位置５０８の対象物５０８とから囲まれる領域６００が示されており、図８の下段には、位置５０４の対象物４０２、位置５０６の対象物４０６、位置５０８の対象物５０８とから囲まれる領域６０２が示されている。
【００４２】
本ステップでは、この領域６００及び領域６０２の面積を算出する。具体的には、領域６００及び領域６０２は、三角形を構成することにより、各位置の緯度、経度情報から対象物間の距離を算出し、その距離を用いて各領域の面積を算出する。
【００４３】
ステップＳ１１６では、サーバ１０２は、ステップＳ１１４で算出した面積が最小となる領域に関する位置情報を記憶する。
【００４４】
最小となる面積を用いる方法を適用する理由としては、撮影を行うにあたり、あまりにも大きな面積を示す領域でもって、撮影を行うことは現実的でないことから、このような方法を適用している。
【００４５】
ステップＳ１１８では、サーバ１０２は、画像４００における各対象物画像の位置座標より、Ｘ軸における位置により並べ替えを行う。
【００４６】
例えば、図９に示すように、画像４００の左下を原点として、右をＸ軸、上を軸の正方向として、各対象物４０２、４０６、４１０のＸ軸の位置に関して、並べ替えを行う。
【００４７】
ステップＳ１２０では、サーバ１０２は、ステップＳ１１８において並べ替えた後の対象物間の距離（長さ）の比率を各対象物の位置情報を用いて算出する。
【００４８】
例えば、図１０に示すように、対象物４０２と対象物４０６との距離を対象物４０２及び対象物４０６のそれぞれの位置座標を用いて算出し、対象物４０６と対象物４１０との距離を対象物４０６及び対象物４１０のそれぞれの位置座標を用いて算出する。
【００４９】
そして、対象物４０２と対象物４０６との距離と、対象物４０６と対象物４１０との距離との比率を算出して、対象物４０２と対象物４０６との距離：対象物４０６と対象物４１０との距離＝ａ：ｂと算出する。
【００５０】
ステップＳ１２２では、地図データ５００上の対象物の先頭点と末尾点とを、ステップＳ１２０で算出した比率で分割し、分割した点を分割点と見做す。
【００５１】
例えば、図１１に示すように先頭点となる対象物４０２の位置５０２と末尾点となる対象物４１０の位置５０８とを結び、ステップＳ１２０で算出したａ：ｂの比率で分割し、分割した点を分割点７００とする。
【００５２】
先頭点、末尾点とは、ステップＳ１１８において対象物の並べ替えを行ったが、最小のＸ座標を有する対象物を先頭点とし、最大のＸ座標を有する対象物を末尾点とする。
【００５３】
ステップＳ１２４では、サーバ１０２は、ステップＳ１２２で求めた分割点７００と中央に位置する対象物とを結び、撮影した方角を求める。
【００５４】
例えば、図１２に示すように、分割点７００と中央に位置する対象物４０６の位置５０６とを結び、その線分となる分割線８００を求め、分割線８００上において撮影方角を定める。
【００５５】
方角を定めるための条件として、ステップＳ１１４で求めた３つの対象物を含む領域６００の外側に存在し、ステップＳ１１８において並び替えた順序で対象物が並ぶ方角を特定する。
【００５６】
分割線８００上であって、領域６００の外側としては、撮影候補位置８０２、撮影候補位置８０４の２つの位置が特定されるため、並び替えた順序で対象物が位置するように撮影した場所が適切であることから、このような対応をとる。
【００５７】
本実施形態では、ステップＳ１１８において並び替えた順序は、左から対象物４０２、対象物４０６、対象物４１０の順に位置することから、この順で撮影できる位置は、撮影候補位置８０２となることから、撮影方角は、撮影候補位置８０２から対象物に向かって撮影する方角であることが特定できる。
【００５８】
撮影候補位置８０４から撮影した場合、左から対象物４１０、対象物４０６、対象物４０２の順に位置することから、画像５００に表示された対象物の並び順となるため、この方角は不適切と見做される。
【００５９】
ステップＳ１２６では、サーバ１０２は、ステップＳ１２４において特定した撮影方角に関しての通知を端末１０４に対して行う。
【００６０】
ステップＳ１２８では、端末１０４は、サーバ１０２からの通知を受信する。この受信した通知を検索画面３００へ表示すると、特定された撮影方角に関するマーク９００が結果表示部３１０に表示される地図データ５００に重ねて表示される。
【００６１】
また、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【００６２】
以上、一実施形態について示したが、本発明は、例えば、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。
【００６３】
また、本発明におけるプログラムは、図３に示すフローチャートの処理方法をコンピュータが実行可能なプログラムである。
【００６４】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【００６５】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記録媒体は本発明を構成することになる。
【００６６】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク、ソリッドステートドライブ等を用いることができる。
【００６７】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６８】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６９】
また、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【００７０】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【００７１】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００７２】
１００  情報処理システム
１０２  サーバ
１０４  端末
１０６  ネットワーク
２０１    ＣＰＵ
２０２    ＲＯＭ
２０３    ＲＡＭ
２０４    システムバス
２０５    入力コントローラ
２０６    ビデオコントローラ
２０７    メモリコントローラ
２０８    通信Ｉ／Ｆコントローラ
２０９    入力デバイス
２１０    ディスプレイ
２１１    外部メモリ（ＨＤ／ＦＤ）
【図１】
2019114164.tif 000003
【図２】
2019114164.tif 000004
【図３】
2019114164.tif 000005
【図４】
2019114164.tif 000006
【図５】
2019114164.tif 000007
【図６】
2019114164.tif 000008
【図７】
2019114164.tif 000009
【図８】
2019114164.tif 000010
【図９】
2019114164.tif 000011
【図１０】
2019114164.tif 000012
【図１１】
2019114164.tif 000013
【図１２】
2019114164.tif 000014
【図１３】
2019114164.tif 000015
【図１４】
2019114164.tif 000016