(第一の実施形態)
以下に図面を参照して、第一の実施形態について説明する。図1は、第一の実施形態の情報処理システムのシステム構成の一例を示す図である。
本実施形態の情報処理システム100は、情報処理装置200と、学習装置300とを含む。情報処理システム100において、情報処理装置200と学習装置300とは、ネットワークを介して接続される。
また、本実施形態の情報処理システム100において、情報処理装置200は、端末装置400とネットワーク等を介して通信を行う。さらに、本実施形態の情報処理システム100において、情報処理装置200は、インターネット上に存在するサーバ装置500と通信を行い、サーバ装置500からサービスの提供を受ける。
サーバ装置500が提供するサービスとは、例えば、入力された住所情報を緯度・経度に変換するサービスや、入力された緯度・経度と対応する地点から撮像した道路沿いの風景の全天球画像データを提供するサービス等である。
本実施形態の情報処理装置200は、住所情報記憶部220、パラメータ記憶部230、画像ファイル記憶部240、画像処理部250、検索要求部260を有する。
本実施形態の情報処理装置200において、画像処理部250は、住所情報記憶部220に格納された住所情報をサーバ装置500に送信し、サーバ装置500から、住所情報と対応する位置で撮像した全天球画像データからパラメータに応じて抽出された画像データを取得する。尚、本実施形態の住所情報記憶部220は、検索対象物が設置されている可能性がある店舗や会社等の住所を示す住所情報が格納されている。
パラメータ記憶部230は、全天球画像データから抽出する平面画像データの範囲を示すパラメータが格納されている。このパラメータは、検索対象物に応じて予め設定される。
次に、画像処理部250は、住所情報と、それぞれの平面画像を示す画像データとを対応付けた画像ファイルリストを作成し、画像ファイル記憶部240へ格納する。
次に、情報処理装置200は、検索要求部260によって、画像ファイル記憶部240に格納された画像ファイルリストを学習装置300へ入力させる。
本実施形態の学習装置300は、学習部310を有する。学習部310は、検索対象物の画像データを正解データとして学習(例えば、教師あり学習)を行ったモデルである。学習部310は、画像ファイルリストが入力されると、検索対象物の画像が含まれる画像を示す画像データを特定する情報を出力する。
学習装置300は、情報処理装置200から画像ファイルリストの入力を受け付けると、学習部310に画像ファイルリストを入力し、検索対象物が含まれる平面画像データを特定する情報を出力として取得する。尚、学習部310から出力される、平面画像データを特定する情報とは、平面画像データそのものであっても良いし、平面画像データと対応付けられた住所情報であっても良いし、平面画像データと住所情報とが対応付けられた情報であっても良い。
情報処理装置200は、検索要求部260によって、学習部310から出力される情報を取得する。学習部310から出力された情報は、情報処理装置200によって端末装置400に出力されても良い。また、学習部310から出力された情報は、情報処理装置200のディスプレイ等に出力されても良い。
このように、本実施形態によれば、検索対象物が設置されている可能性のある場所の住所情報の画像データを、検索対象物の画像データを正解データとして学習した学習部310に入力し、検索対象物が含まれる画像データを特定する。したがって、本実施形態によれば、学習部310によって特定された画像データと対応する住所情報に基づき、検索対象物が設置された場所を特定することができる。
このため、本実施形態によれば、例えば、検索対象物を、撤去の対象の袖看板とした場合には、袖看板が設置されている可能性のある店舗等の住所情報を住所情報記憶部220に格納しておけば、撤去対象の袖看板が設置された場所を特定することができる。
また、本実施形態では、インターネット上から住所情報に基づき提供される全天球画像データを用いて、撤去対象の袖看板が設置された場所を特定する。
このため、本実施形態によれば、撤去作業を行う作業員が、撤去対象の袖看板が設置されている可能性のある店舗等を訪れ、目視で袖看板を確認する、といった作業が不要となり、効率的に撤去対象の袖看板の設置場所を把握させることができる。
尚、図1の例では、情報処理装置200と学習装置300とが別々に設けられるものとしたが、これに限定されない。学習装置300は、情報処理装置200に含まれても良い。また、図1の例では、情報処理装置200は、住所情報記憶部220とパラメータ記憶部230と画像ファイル記憶部240とを有するものとしたが、これに限定されない。住所情報記憶部220、パラメータ記憶部230、画像ファイル記憶部240は、一部又は全部が情報処理装置200以外の装置に設けられていても良い。また、本実施形態では、全天球画像データがインターネットを介してサーバ装置500から提供されるものとしたが、これに限定されない。情報処理装置200は、住所情報と対応付けられた画像データを取得できれば良く、その方法は、上述した方法に限定されない。
以下に、本実施形態の情報処理装置200について、さらに説明する。尚、以下の説明では、検索対象物を撤去対象の袖看板とした場合について説明する。図2は、第一の実施形態の情報処理装置のハードウェア構成の一例を示す図である。
図2に示されているように、情報処理装置200は、コンピュータによって構築されており、図2に示されているように、CPU201、ROM202、RAM203、HD204、HDD(Hard Disk Drive)コントローラ205、ディスプレイ206、外部機器接続I/F(Interface)208、ネットワークI/F209、データバス210、キーボード211、ポインティングデバイス212、DVD-RW(Digital Versatile Disk Rewritable)ドライブ214、メディアI/F216を備えている。
これらのうち、CPU201は、情報処理装置200全体の動作を制御する。ROM202は、IPL等のCPU201の駆動に用いられるプログラムを記憶する。RAM203は、CPU201のワークエリアとして使用される。HD204は、プログラム等の各種データを記憶する。HDDコントローラ205は、CPU201の制御にしたがってHD204に対する各種データの読み出し又は書き込みを制御する。ディスプレイ206は、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。
外部機器接続I/F208は、各種の外部機器を接続するためのインターフェースである。この場合の外部機器は、例えば、USB(Universal Serial Bus)メモリやプリンタ等である。ネットワークI/F209は、通信ネットワークを利用してデータ通信をするためのインターフェースである。データバス210は、図2に示されているCPU201等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
また、キーボード211は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス212は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。DVD-RWドライブ214は、着脱可能な記録媒体の一例としてのDVD-RW213に対する各種データの読み出し又は書き込みを制御する。尚、DVD-RWに限らず、DVD-R等であってもよい。メディアI/F216は、フラッシュメモリ等の記録メディア215に対するデータの読み出し又は書き込み(記憶)を制御する。
次に、図3乃至図5を参照して、本実施形態の情報処理装置200の有する住所情報記憶部220、パラメータ記憶部230、画像ファイル記憶部240について説明する。尚、これらの各記憶部は、HD204やROM503等の記憶装置によって実現される。
図3は、住所情報記憶部の一例を示す図である。本実施形態の住所情報記憶部220に格納される住所情報は、情報の項目として、名称、郵便番号、住所を含む。
項目「名称」の値は、撤去対象の袖看板が設置されている可能性のある店舗や会社等の名称を示す。項目「郵便番号」の値と、項目「住所」の値は、対応する店舗等の郵便番号と住所である。
住所情報記憶部220には、例えば、過去に袖看板を設置した店舗の住所情報のリスト(一覧)等が格納されて良い。住所情報記憶部220は、予め情報処理装置200に与えられる。
図4は、パラメータ記憶部の一例を示す図である。先に説明した通り、学習部310における学習は、通常、平面画像の検索対象物の画像データを正解データとして行われる。一方、住所情報に基づき特定される全天球画像は、平面画像ではなく、歪んだ画像になっている。このため、全天球画像のまま、学習部310に入力しても、学習をしたときの正解データとは異なるために、袖看板が設置された場所を特定できない可能性がある。
このような問題も含め、全天球画像を平面画像として取得する必要がある。本実施形態のパラメータ記憶部230は、住所情報と対応する全天球画像データから、複数の平面画像データを取得する際に参照される。具体的には、本実施形態では、全天球画像データから、8つの方位毎に平面画像データを取得する。
本実施形態のパラメータ記憶部230に格納されたパラメータには、size、location、heading、pitch、fov、source、keyを含む。
sizeは、全天球画像データから取得される平面画像データのサイズを示す。本実施形態では、平面画像データのsizeは、640ピクセル×640ピクセルとする。
locationは、全天球画像データが撮像された地点の緯度・経度を示す。
headingは、方位を示す。headingの値が0の場合は北、90の場合は東、180の場合は南、270の場合は西を示す。
pitchは、水平を基準とした上下方向の角度を示す。以下の説明では、上向きの角度を仰角、下向きの角度を俯角又は伏角と呼ぶ場合がある。本実施形態では、pitchの値は上向きの15.0度である。
fov(field of view)は、画角を示す。本実施形態では、fovは、45.0である。
sourceは、撮像される対象を示す。本実施形態では、屋内の画像を除外するために、outdoor(屋外)とした。
keyは、サーバ装置500が提供するサービスを利用するためのAPI(Application Programming Interface)キーを示す。
本実施形態では、こられのパラメータを参照して、全天球画像データから8方位の平面画像データを取得する。
次に、図5を参照して、画像ファイル記憶部240について説明する。図5は、画像ファイル記憶部の一例を示す図である。
本実施形態の画像ファイル記憶部240に格納される画像ファイルリストは、情報の項目として、image_name、jpn_address、formatted_address、latitude、longitudeを有し、各項目は対応付けられている。以下の説明では、上述した各項目の値を含む情報を画像ファイルと呼ぶ。
項目「image_name」の値は、平面画像データの画像ファイル名を示す。項目「jpn_address」の値は、住所情報に含まれる住所を示す。項目「formatted_address」の値は、英語のフォーマットに変換した住所を示す。項目「latitude」の値と、項目「longitude」の値は、住所を緯度経度に変換した際の緯度と経度を示す。
画像ファイル記憶部240に格納される画像ファイルリストは、画像処理部250による処理によって作成される。
次に、図6を参照して、本実施形態の情報処理装置200の機能について説明する。図6は、第一の実施形態の情報処理装置の機能を説明する図である。
本実施形態の情報処理装置200は、画像処理部250と検索要求部260とを有する。画像処理部250は、住所情報取得部251、緯度経度変換部252、画像取得部253、パラメータ設定部254、格納部255を有する。
住所情報取得部251は、住所情報記憶部220から住所情報を取得する。緯度経度変換部252は、住所情報が示す場所を緯度・経度に変換する。具体的には、緯度経度変換部252は、サーバ装置500に対して住所情報を送信し、対応する緯度・経度を取得しても良い。尚、住所情報と対応する緯度・経度とは、住所情報が示す地点から最も近い道路上の点である。
画像取得部253は、緯度経度変換部252によって変換された緯度・経度をサーバ装置500へ送信し、この緯度・経度に基づく全天球画像データから、パラメータに基づいて切り出された画像データを取得する。具体的には、画像取得部253は、パラメータ設定部254によって設定されたパラメータを、サーバ装置500へ送信し、緯度・経度に基づく全天球画像データから、パラメータに基づいて切り出された画像データを、サーバ装置500から取得する。
尚、パラメータに基づいて全天球画像データから切り出された画像データは、全天球画像の歪みをなくした平面画像を示す平面画像データとなる。つまり、本実施形態のパラメータは、全天球画像データから切り出された画像データが、歪みのない平面画像データとなる範囲に設定されている。
したがって、画像取得部253は、住所情報に基づき、住所情報が示す住所と対応した歪みのない平面画像データを取得できる。
パラメータ設定部254は、パラメータ記憶部230に格納されたパラメータを読み出して、画像取得部253に設定する。
格納部255は、画像取得部253が取得した平面画像データと、住所情報が示す住所と、緯度・経度とを対応付けた画像ファイルを生成し、画像ファイル記憶部240へ格納する。つまり、格納部255は、全天球画像データから切り出された画像データと、住所情報とを対応付けた情報を画像ファイルとして、画像ファイル記憶部240へ格納する。
本実施形態の検索要求部260は、リスト出力部261、結果取得部262、出力部263を有する。
リスト出力部261は、検索要求と共に、画像ファイル記憶部240に格納された画像ファイルリスト(画像ファイルの一覧)を学習装置300へ出力する。言い換えれば、検索要求部260は、住所情報と対応する全天球画像データから切り出された画像データと、住所情報とを対応付けた情報を、学習部310へ入力し、学習部310に対して検索対象物の検索を要求する。
結果取得部262は、学習部310により出力された情報を取得する。出力部263は、結果取得部262が取得した情報を端末装置400等に出力する。
次に、図7及び図8を参照して、本実施形態の画像処理部250の処理について説明する。図7は、第一の実施形態の情報処理装置の処理を説明する第一のフローチャートである。
本実施形態の情報処理装置200において、画像処理部250は、平面画像データを格納するためのファイルを作成する(ステップS701)。
続いて、画像処理部250は、住所情報取得部251により、住所情報記憶部220を参照する(ステップS702)。
続いて、画像処理部250は、住所情報取得部251により、住所情報記憶部220に格納された住所情報を1レコードずつ読み込む(ステップS703)。
続いて、画像処理部250は、緯度経度変換部252により、読み込んだ住所情報が示す場所を緯度・経度に変換する(ステップS704)。具体的には、緯度経度変換部252は、サーバ装置500が提供するAPIを起動させて住所情報を送信し、住所情報と対応する緯度・経度を取得する。
続いて、画像処理部250は、緯度・経度に基づき、複数の平面画像データを取得する(ステップS705)。ステップS705の処理の詳細は後述する。
続いて、画像処理部250は、住所情報記憶部220に格納された全ての住所情報に対して、ステップS703からステップS705の処理を繰り返し(ステップS706)、処理を終了する。
以下に、図8を参照して、図7のステップS705の処理について説明する。図8は、第一の実施形態の情報処理装置の処理を説明する第二のフローチャートである。
本実施形態の画像処理部250は、パラメータ設定部254により、パラメータ記憶部230を参照し、パラメータを設定する(ステップS801)。
具体的には、パラメータ設定部254は、sizeを640ピクセル×640ピクセル、locationを緯度経度変換部252が取得した緯度・経度、headingを0、pitchを上向きの15.0度、fovを45度、sourceをoutdoor、keyを、サーバ装置500が提供するサービスを利用するためのAPIに設定する。
続いて、画像処理部250は、画像取得部253により、設定されたパラメータに基づき、全天球画像データから切り出された平面画像データを取得する(ステップS802)。
具体的には、画像取得部253は、全天球画像データから、北方向を中心とした、画角45度、仰角15度の範囲で切り出された平面画像データを取得する。
続いて、画像処理部250は、格納部255により、取得した平面画像データに、画像ファイル名と、住所と、英語のフォーマットに変換した住所と、住所情報から変換した緯度・経度とを対応付けた画像ファイルを生成して画像ファイル記憶部240に格納する(ステップ803)。
続いて、画像取得部253は、8方位の平面画像データを取得したか否かを判定する(ステップS804)。ステップS804において、8方位の平面画像データを取得していない場合、パラメータ設定部254は、パラメータを変更し(ステップS805)、ステップS802へ戻る。
具体的には、パラメータ設定部254は、パラメータのうち、headingの値に45度を追加し、ステップS802に戻る。
ステップS804において、8方位の平面画像データが生成された場合、画像処理部250は、図7のステップS706へ進む。
本実施形態では、画像処理部250の処理により、住所情報と対応する緯度・経度を中心とした8方位の平面画像データを取得することができる。
図9は、画像処理部によって生成される平面画像データを説明する図である。図9に示す平面画像91~98は、地点90を中心として、8方位のそれぞれの風景を撮像した画像である。
平面画像91は、地点90において撮像した全天球画像から、北方向を中心とした画角45度、仰角15度の範囲を切り出した画像である。平面画像92は、北東方向を中心とした画角45度、仰角15度の範囲を切り出した画像である。平面画像93は、東方向を中心とした画角45度、仰角15度の範囲を切り出した画像である。
平面画像94は南東方向を中心し、平面画像95は南方向を中心とし、平面画像96は南西方向を中心とし、平面画像97は西方向を中心とし、平面画像98は北西方向を中心として、それぞれの中心から画角45度、仰角15度の範囲を切り出した画像である。
このように、本実施形態によれば、住所情報に基づく全天球画像データから、歪みのない複数の平面画像データを取得することができる。したがって、本実施形態によれば、全天球画像データから、学習装置300の学習部310による画像検索に適した歪みのない画像データを取得することができる。
また、本実施形態では、全天球画像データから切り出す(抽出する)画像データの範囲として、仰角を15度に設定した。したがって、本実施形態では、水平地点から上方向を見上げた角度の画像データを取得することができる。このため、本実施形態によれば、建物の側面に垂直に突き出る形で設置された袖看板が映っている可能性が高い画像を取得することができる。
次に、図10を参照して、本実施形態の検索要求部260の処理について説明する。図10は、第一の実施形態の情報処理装置の処理を説明する第三のフローチャートである。
本実施形態の検索要求部260は、リスト出力部261により、検索要求と共に、画像ファイル記憶部240に格納された画像ファイルリストを学習装置300へ出力する(ステップS1001)。
続いて、検索要求部260は、結果取得部262により、学習装置300から、学習部310が出力した情報を取得し(ステップS1002)、出力部263により、学習部310が出力した情報を端末装置400へ出力する(ステップS1003)。
尚、出力部263が出力する先は、端末装置400に限定されない。出力部263は
情報処理装置200のディスプレイ206に学習部310が出力した情報を表示させても良い。また、本実施形態では、学習部310が検索結果を出力する度に、検索結果が正解であったか否かを示す情報を学習装置300に入力し、学習部310に機械学習によって学習させても良い。
図11は、出力部263による出力例を示す図である。図11(A)の例では、学習部310によって、検索対象となる袖看板が映っている平面画像データとして抽出された画像データが表示されている。
この場合、出力部263は、検索対象の袖看板が映っていた平面画像データと対応付けられた住所情報を特定し、この住所情報と対応付けられた他の平面画像データを画像ファイル記憶部240から抽出して、出力しても良い。
この場合、特定された住所情報に基づく緯度・経度を中心とした8方位の画像データが出力されることになる。
また、本実施形態では、検索対象の袖看板が映っていた平面画像データを表示させる際に、検索対象の袖看板の画像を強調するマーク101等を表示させても良い。
また、本実施形態の出力部263は、図11(B)に示すように、住所情報記憶部220に格納された住所情報のうち、平面画像データに検索対象となる袖看板が映っていた住所情報の一覧を表示させても良い。
図11(B)に示す画面111は、検索対象となる袖看板が設置されていた住所を表示していることを示すメッセージ112と、平面画像データに検索対象となる袖看板が映っていた住所情報の一覧113とが表示されている。
このように、検索結果を住所情報の一覧として表示させることで、袖看板の撤去を行う作業員等に対し、撤去対象の袖看板の設置場所を容易に把握させることができる。
(第二の実施形態)
以下に、図面を参照して、第二の実施形態について説明する。第二の実施形態では、住所情報から取得した緯度・経度に基づき取得した全天球画像データに検索対象が映っていない場合に、住所情報から取得した緯度・経度の近傍の地点から撮像した全天球画像データを用いる点が、第一の実施形態と相違する。以下の説明では、第一の実施形態との相違点について説明し、第一の実施形態と同様の機能構成を有するものには、第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
図12は、第二の実施形態の情報処理装置の機能構成を説明する図である。本実施形態の情報処理装置200Aは、住所情報記憶部220、パラメータ記憶部230、画像ファイル記憶部240、画像処理部250A、検索要求部260を有する。
画像処理部250Aは、住所情報取得部251、緯度経度変換部252、画像取得部253、パラメータ設定部254、格納部255、検索結果判定部257、位置算出部258を有する。
検索結果判定部257は、学習装置300で行われた検索結果に、検索対象の袖看板が映った平面画像データが存在するか否かを判定する。言い換えれば、検索結果判定部257は、学習装置300による検索の結果、該当する平面画像データがヒットしたか否かを判定している。
位置算出部258は、該当する平面画像データが存在しなかった場合に、住所情報から変換した緯度・経度が示す地点と近傍の地点を算出する。
以下に、図13を参照して、本実施形態の画像処理部250Aの処理について説明する。図13は、第二の実施形態の情報処理装置の処理を説明するフローチャートである。図13に示す処理は、例えば、検索要求部260の結果取得部262が、学習装置300から検索結果を取得した際に、検索結果判定部257によって、該当する平面画像データが存在しない、と判定された場合に実行される。
本実施形態の画像処理部250Aにおいて、画像処理部250Aは、緯度経度変換部252により、住所情報記憶部220に格納された住所情報を取得して、住所情報が示す地点と対応する緯度・経度に変換する(ステップS1301)。ステップS1301で取得される緯度・経度を、緯度・経度1(第一の緯度・経度)と呼ぶ。
続いて、位置算出部258は、緯度・経度1と最も近い道路上の地点の緯度・経度を取得する(ステップS1302)。ステップS1302で取得される緯度・経度を、緯度・経度2(第二の緯度・経度)と呼ぶ。
具体的には、位置算出部258は、サーバ装置500が提供する地図情報提供サービス等によって、緯度・経度1と最も近い道路上の緯度・経度2を取得しても良い。
続いて、画像処理部250Aは、位置算出部258により、緯度・経度1が示す地点から、緯度・経度2が示す地点までの方位を求める(ステップS1303)。ここで求められる方位を、方位Aと呼ぶ。
続いて、位置算出部258は、方位Aと垂直に交わる2つの方位を取得し、緯度・経度2が示す地点を含む道路の方向を推定する(ステップS1304)。ここで取得される、方位Aと垂直に交わる2つの方位を、方位B、方位Cと呼ぶ。
続いて、位置算出部258は、緯度・経度2が示す地点を含む近傍において、1Km当たりの緯度・経度の変化を算出する(ステップS1305)。続いて、位置算出部258は、緯度・経度2が示す地点から、8方向に各10m移動した8つの地点の緯度経度を算出する(ステップS1306)。
続いて、位置算出部258は、8つの地点のうち、方位B、方位Cのそれぞれと最も近い2つの地点を特定し、この2つの地点について、各地点から最も近い道路上の地点の緯度・経度を取得する(ステップS1307)。ステップS1307で取得される2つの地点の緯度・経度を、緯度・経度3、緯度・経度4と呼ぶ。
具体的には、位置算出部258は、方位B、方位Cのそれぞれと最も近い2つの地点を示す緯度・経度をサーバ装置500に通知し、サーバ装置500が提供する地図情報提供サービス等によって、緯度・経度3と緯度・経度4を取得しても良い。
続いて、画像処理部250Aは、緯度・経度3、緯度・経度4のそれぞれについて、図8の処理を実行し(ステップS1308)、処理を終了する。
したがって、本実施形態では、緯度・経度3の地点で撮像された全天球画像データから切り出された8つの平面画像を示す平面画像データと、緯度・経度4の地点で撮像された全天球画像データから切り出された8つの平面画像を示す平面画像データとが取得される。
本実施形態の検索要求部260は、緯度・経度3に基づき取得された8つの平面画像データと、緯度・経度4に基づき取得された8つの平面画像データと、を学習装置300に出力する。このようにすれば、住所情報に基づき取得された8つの平面画像データが示す平面画像に、検索対象の袖看板の画像が含まれていない場合に、住所情報が示す地点から少し離れた地点から見た道路沿いの風景の画像データに基づく検索を行うことができる。
以下に、図14を参照して、図13の処理を具体的に説明する。図14は、第二の実施形態における位置算出部の処理を説明する図である。
図14の例では、住所情報から変換される緯度・経度1を点P1とし、緯度・経度1から最も近い道路上の地点を示す緯度・経度2を点P2とする。
位置算出部258は、点P1と点P2を結ぶ方位Aと垂直に交わる2つの方位B、Cを特定する。このとき、位置算出部258は、方位Bから方位Cに向かう道路が存在するものと推定する。
次に、位置算出部258は、まず、地点P2を4方向に10mずつ移動させた地点を特定する。具体的には、地点P2を東方向に10m移動させた地点P11、地点P2を北に10m移動させた地点P12、地点P2を西に10m移動させた地点P13、地点P2を南に10m移動させた地点P14を特定する。
尚、本実施形態では、地点P2を10m移動させた地点を特定するものとしたが、移動させる距離は、10mに限定されない。地点P2から移動させる距離は、例えば、サーバ装置500によって提供される全天球画像データの撮像地点の間隔に応じて決定されて良い。本実施形態では、サーバ装置500によって提供される全天球画像データの撮像地点が、約10m程度であるものとする。
続いて、位置算出部258は、地点P11を北へ10m移動させた地点P15と、地点P11を南に10m移動させた地点P16と、地点P13を北へ10m移動させた地点P17と、地点P13を南に10m移動させた地点P18と、を特定する。
このように、本実施形態では、地点P2を中心とした8方位において、地点P2から所定の距離を移動させた地点を特定する。言い換えれば、位置算出部258は、地点P2を中心とした所定の領域を特定している。
続いて、位置算出部258は、地点P11から地点P18において、方位Bと方位Cに最も近い地点を特定する。つまり、本実施形態では、地点P11から地点P18において、方位Bから方位Cへ向かう道路と最も近い地点を特定している。
図14の例では、地点P15の方位が方位Bと最も近く、地点P18の方位が方位Cと最も近い。したがって、地点P15と地点P18は、方位Bから方位Cへ向かう道路と最も近い地点と推定される。
次に、位置算出部258は、地点P15、地点P18のそれぞれから最も近い道路上の地点を特定する。具体的には、位置算出部258は、地点P15と地点P18の緯度・経度を、地点P2の緯度・経度に基づき算出する。そして、位置算出部258は、地点P15の緯度・経度と、地点P18の緯度・経度とを、サーバ装置500へ通知する。
サーバ装置500は、サーバ装置500が提供する地図情報提供サービス等によって、地点P15と最も近い道路上の地点P3の緯度・経度(緯度・経度3)と、地点P16と最も近い道路上の地点P4の緯度・経度(緯度・経度4)とを取得し、位置算出部258へ返す。
本実施形態の情報処理装置200Aにおいて、画像処理部250Aは、地点P3の緯度・経度と、地点P4の緯度・経度と、それぞれについて、図8の処理を実行すれば良い。
その結果、画像処理部250Aは、住所情報と対応する地点P2を中心した8方位の平面画像データに加え、地点P3を中心とした8方位の平面画像データと、地点P4を中心とした8方位の平面画像データと、を取得することができる。
したがって、本実施形態では、住所情報と対応する緯度・経度が示す地点P2から、人が数歩程度で移動できる距離だけ離れた地点P3、地点P4から撮像された画像データについても、学習装置300へ提供することができる。
このため、本実施形態では、検索対象の画像を含む画像データが特定される可能性を高めることができる。
尚、図14の例では、地点P2を中心とする所定の領域が正方形の中心となるように、8方位の地点P11~P18を特定したが、これに限定されない。本実施形態では、所定の領域を、地点P2を中心しと、8方位へ所定の距離移動した8つの地点によって特定できれば良い。したがって、地点P2から地点P11~P18までの距離が全て等しくても良い。この場合、所定の領域は、地点P2を中心とした円形となる。
図15は、第二の実施形態の画像処理部によって取得される画像の撮像地点を説明する図である。図15では、例えば、住所情報記憶部220から読み出した住所情報から変換された緯度・経度1が示す地点が、地点P51であったとする。画像処理部250Aは、地点P51から最も近い道路上の地点P52を示す緯度・経度2を取得すると、位置算出部258により、地点P51から地点P52へ向かう方位Aと垂直に交わる方位Bと方位Cを特定する。
図15の例では、方位Bは南東であり、方位Cは北西である。したがって、位置算出部258は、地点P52を中心とする8方位について、地点P52を所定の距離移動させた8つの地点の中から、方位Bと最も近い方位の地点P53と、方位Cと最も近い方位の地点P54とが特定される。
そして、位置算出部258は、地点P53と最も近い道路上の地点P55の緯度・経度と、地点P54と最も近い道路上の地点P56の緯度・経度を取得し、画像取得部253に渡す。
画像処理部250Aにおいて、画像取得部253は、地点P55と地点P56のそれぞれにおいて撮像された全天球画像データから、パラメータ設定部254によって設定されたパラメータが示す範囲に切り出された8方位の平面画像データを取得する。
そして、画像処理部250Aは、格納部255により、住所情報と、地点P52、地点P55と、地点P56のそれぞれの緯度・経度と、各地点に基づき全天球画像データから取得された8方位の画像データと、を対応付けて画像ファイル記憶部240へ格納する。
図16は、第二の実施形態の画像処理部により取得される平面画像データの一例を示す図である。
図16では、3つの地点について、8方位の平面画像データが取得されていることがわかる。
例えば、平面画像データ群152は、住所情報と対応する緯度・経度が示す地点P52で撮像された全天球画像データから取得された8方位の平面画像データである。
また、平面画像データ群155は、人が、地点P52から、北西に向かって数歩歩いた程度の距離を移動した地点P55で撮像された全天球画像データから取得された8方位の平面画像データである。また、平面画像データ群156は、人が、地点P52から、南東に向かって数歩歩いた程度の距離を移動した地点P56で撮像された全天球画像データから取得された8方位の平面画像データである。
本実施形態では、この3つの平面画像データ群を学習装置300の学習部310に入力とし、検索対象物となる袖看板の画像を含む画像データを検索させる。
したがって、本実施形態では、住所情報と対応する地点で撮像された全天球画像データに、検索対象物の画像が含まれなくても、他の地点で撮像された全天球画像データを検索に活用することができる。
尚、本実施形態では、住所情報に基づき、サーバ装置500から提供される画像データを全天球画像データとしたが、これに限定されない。本実施形態では、例えば、サーバ装置500から、住所情報に基づいて、平面画像データが提供されても良い。この場合、画像処理部250は、検索対象物に基づき設定されたパラメータに基づき、サーバ装置500から提供される平面画像データから切り出された一部の画像データを、画像ファイル記憶部240に格納しても良い。
具体的には、例えば、検索対象物が、特定の状態の自動販売機であっとする。この場合、検索対象物は、一般的に道路上に配置されるものであるため、空の画像等は不要となる。したがって、この場合には、パラメータ記憶部230に、サーバ装置500から提供される平面画像データが示す平面画像の上部分が切り取られるようなパラメータを設定しておけば良い。また、この場合には、学習部310では、特定の状態の自動販売機の画像が含まれる画像データを正解データとした学習が予め行われる。
また、例えば、検索対象物が、マンホール等である場合について考える。この場合には、サーバ装置500から提供される画像データが全天球画像データであるならば、パラメータ記憶部230に格納されるパラメータのうち、fovを下方向15度等とすれば良い。また、この場合に、サーバ装置500から取得される画像データが平面画像データであるならば、例えば、平面画像の下部分が切り出されるように、パラメータが設定されていても良い。また、この場合には、学習部310では、マンホールの画像が含まれる画像データを正解データとした学習が予め行われる。
上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(digital signal processor)、FPGA(field programmable gate array)や従来の回路モジュール等のデバイスを含むものとする。
また、上述した実施形態に記載された装置群は、本明細書に開示された実施形態を実施するための複数のコンピューティング環境のうちの1つを示すものにすぎない。ある実施形態では、第1の装置は、サーバクラスタといった複数のコンピューティングデバイスを含む。複数のコンピューティングデバイスは、ネットワークや共有メモリなどを含む任意のタイプの通信リンクを介して互いに通信するように構成されており、本明細書に開示された処理を実施する。同様に、第2の装置は、互いに通信するように構成された複数のコンピューティングデバイスを含むことができる。
さらに、第1の装置および第2の装置は、開示された処理ステップ、例えば図7を様々な組み合わせで共有するように構成できる。例えば、画像処理部250によって実行されるプロセスは、第2の装置によって実行され得る。同様に、画像処理部250の機能は、第2の装置によって実行することができる。また、第1の装置と第2の装置の各要素は、1つのサーバ装置にまとめられていても良いし、複数の装置に分けられていても良い。
また、本実施形態において、機械学習とは、コンピュータに人のような学習能力を獲得させるための技術であり、コンピュータが、データ識別等の判断に必要なアルゴリズムを、事前に取り込まれる学習データから自律的に生成し、新たなデータについてこれを適用して予測を行う技術のことをいう。機械学習のための学習方法は、教師あり学習、教師なし学習、半教師学習、強化学習、深層学習のいずれかの方法でもよく、さらに、これらの学習方法を組み合わせた学習方法でもよく、機械学習のための学習方法は問わない。
以上、各実施形態に基づき本発明の説明を行ってきたが、上記実施形態に示した要件に本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することができ、その応用形態に応じて適切に定めることができる。