以下、図面を参照して本発明の一実施形態について詳細に説明する。
[1.情報提供システムSの構成及び機能概要]
先ず、図1等を参照して、本発明の一実施形態に係る情報提供システムSの構成及び概要機能について説明する。図1は、情報提供システムSの概要構成の一例を示す図である。図1に示すように、情報提供システムSは、携帯端末1、及び情報提供サーバ2(サーバ装置の一例)等を備えて構成されている。携帯端末1と情報提供サーバ2とは、ネットワークNWを介して通信可能になっている。ネットワークNWは、例えば、電話用回線交換ネットワーク、及びインターネットに接続するためのデータ通信用パケット交換ネットワークを含む。なお、図1の例では、1つの携帯端末1を示しているが、実際には複数の携帯端末が存在する。
(1−1.携帯端末1の構成及び機能概要)
携帯端末1は、無線通信部11、GPS(Global Positioning System)受信機12、カメラ13、距離センサ14、方位センサ15、表示・操作部16、記憶部17、及び制御部18等を備え、これらの構成部分はバス19を介して電気的に接続されている。なお、携帯端末1の例として、携帯電話機,スマートフォン,タブレット,携帯ゲーム機等が挙げられる。
無線通信部11は、制御部18の制御の下、最寄りの基地局(図示せず)との間で無線通信を行い、当該基地局及びネットワークNWを介して情報提供サーバ2との間で通信を行う。
GPS受信機12は、GPS衛星から出力される航法電波を受信し、携帯端末1の現在位置(緯度及び経度)を検出し、検出した位置を示す端末位置情報を制御部18へ出力する。
カメラ13は、例えば、レンズ及び撮像素子等から構成され、カメラ13の画角に収まる範囲内の実空間を撮像素子により連続的に撮像し、撮像した撮像画像(RGB画像)を制御部18へ出力する。なお、撮像素子として、例えば、CCD(Charge Coupled Devices)やCMOS(Complementary Metal Oxide Semiconductor)等が用いられる。
距離センサ14は、投射したレーザまたは赤外線が物体を往復する時間から距離を撮像画像の画素毎に計測(つまり、TOF(Time Of Flight)方式を用いて計測)し、計測した距離(つまり、携帯端末1から上記物体までの距離)を画素毎に示す距離画像を制御部18へ出力する。ここで、本実施形態で対象とする物体は、カメラ13により撮像される建物等の被写体である。なお、距離センサ14として、2台のカメラの撮像画像の視差に基づいて距離画像を出力するステレオカメラを用いてもよい。
方位センサ15は、例えば、3軸地磁気センサ等から構成され、携帯端末1を基準とする上記物体の方位を検出し、検出した方位を示す方位情報を制御部18へ出力する。ここで、物体の方位とは、物体の方位とは、方位センサ15から見た物体への方角(つまり、携帯端末1の画面と反対側の面が向いている方角)であり、当該方位は、カメラ13により物体が撮像されているときの当該カメラ13のレンズの光軸方向を示す。
表示・操作部16は、携帯端末1のユーザの指やペン等による操作指示を受け付ける入力機能と、画像及びテキスト等を表示する画面を有するタッチパネルとを備える。表示・操作部16は、ユーザからの操作指示を受け付け、当該操作指示を制御部18に与える。
記憶部17は、例えば、不揮発性メモリ等から構成され、OS(Operating System),及びアプリケーション等を格納する。アプリケーションは、アプリケーションプログラム(本発明の端末用プログラムを含む)等をメモリに展開して実行可能な状態にインストールされたアプリケーションインスタンスである。このようなアプリケーションには、例えば、物体認識アルゴリズム及びAR(Augmented Reality:拡張現実)アルゴリズム等が規定される。
物体認識アルゴリズムにより、撮像画像から建物等の物体を認識することができる。また、ARアルゴリズムにより、撮像画像に表れる建物等の物体に対して建物情報等の付加情報を関連付けてユーザに提示することができる。なお、アプリケーションプログラムは、所定のサーバから携帯端末1にダウンロードされてもよいし、CD、DVD等の記録媒体に記録(つまり、コンピュータにより読み取り可能に記録)されており、当該記録媒体から読み込まれて記憶部17に格納されるようにしてもよい。
制御部18は、CPU(Central Processing Unit),ROM(Read Only Memory),及びRAM(Random Access Memory)等から構成され、CPUがOS上で動作するアプリケーションにしたがって各種処理を実行する。
具体的には、制御部18は、カメラ13から撮像画像を取得するとともに、距離センサ14から距離画像を、方位センサ15から方位情報を、GPS受信機12から端末位置情報をそれぞれ取得する。なお、距離画像の座標系は撮像画像の座標系に合せられ、撮像画像(距離画像)を構成する各画素は、座標(x,y)、色情報(R,G,Bの各輝度値)、及び距離情報を持つことになる。制御部18は、取得された撮像画像を表示・操作部16の画面に表示させる。このとき、撮像画像に建物が表れる場合、制御部18は、物体認識アルゴリズムにより当該建物を認識する。ここで認識される建物には、個人住宅(戸建)、集合住宅(マンションやアパート)、商業施設、及び複合施設等が含まれる。そして、制御部18は、当該建物が撮像(認識)されたときの距離情報を取得する。ここで、距離情報は、距離センサ14から撮像画像に表れる建物までの距離を示す。距離情報の例として、物体認識アルゴリズムにより認識された建物の表面(つまり、光の反射面)上の所定画素の距離情報が挙げられる。ここで、所定画素は、例えば、認識された建物の表面上の何れかの点(例えば、重心点や輪郭上の点)の画素である。また、画面の中央部分を含む領域に表れる建物が認識されるように構成する場合、上記所定画素は、画面に表示されている撮像画像の中心点(言い換えれば、画面の中心点)とするとよい。
さらに、制御部18は、上記建物が撮像(認識)されたときの方位情報を方位センサ15から取得し、上記建物が撮像(認識)されたときの端末位置情報をGPS受信機12から取得する。そして、制御部18は、上記認識された建物が表れる撮像画像、当該建物が撮像(認識)されたときの距離情報、当該建物が撮像(認識)されたときの方位情報、及び当該建物が撮像(認識)されたときの端末位置情報を含む建物情報取得要求を、無線通信部11及びネットワークNWを介して情報提供サーバ2へ送信する。
なお、撮像画像から複数の建物が認識された場合、それぞれの建物の表面上の所定画素の距離情報が情報提供サーバ2へ送信されてもよいし、或いは、認識された複数の建物のうちユーザにより指定された1つの建物の表面上の所定画素の距離情報が情報提供サーバ2へ送信されてもよい。
そして、制御部18は、上記建物情報取得要求に応じて情報提供サーバ2から送信された建物情報を無線通信部11を介して取得し、ARアルゴリズムにより、当該建物情報を、撮像画像に表れる建物に関連付けて画面に表示させる。
(1−2.情報提供サーバ2の構成及び機能概要)
情報提供サーバ2は、通信部21、記憶部22、及びシステム制御部23等を備え、これらの構成部分はバス24を介して電気的に接続されている。なお、情報提供サーバ2は、1台のサーバコンピュータにより構成されてもよいし、複数台のサーバコンピュータにより構成されてもよい。
通信部21は、システム制御部23の制御の下、ネットワークNWを介して携帯端末1との間で通信を行う。記憶部22(記憶手段の一例)は、例えば、ハードディスクドライブ等から構成され、OS,及びアプリケーション等を格納する。このようなアプリケーションには、例えば、物体認識アルゴリズム、特徴量抽出アルゴリズム、及び画像マッチングアルゴリズム等が規定される。
特徴量抽出アルゴリズムにより、画像の特徴量(特徴点ということもある)を抽出することができる。画像の特徴量として、例えば、HOG(Histograms of Oriented Gradients)特徴量が抽出される。HOG特徴量は、画像の局所領域から抽出された輝度勾配を示す特徴量である。HOG特徴量は、特徴量抽出アルゴリズムに従って、画像から局所領域を分割したセル(例えば、局所領域をn*nのブロックに分割し、分割されたブロックをm*mに分割したセル)ごとに勾配強度と勾配方向が算出され勾配方向ヒストグラムが生成、正規化されることで抽出される。或いは、画像の特徴量として、エッジに着目したEOH(Edge of Orientation Histograms)特徴量、或いは輝度に着目したHaar-like特徴量が抽出されてもよい。その他、画像の特徴量として、SIFT(Scale-Invariant Feature Transform)特徴量やSURF(Speeded Up Robust features)特徴量等、公知の種々の特徴量、またはこれらの組合せた特徴量が抽出されてもよい。また、画像マッチングアルゴリズムにより、2つの画像に表れる建物等の物体(物体認識アルゴリズムにより認識された物体)が一致(マッチング)するかどうかを判定することができる。この判定には、例えば、上記特徴量が用いられる。
また、記憶部22には、建物情報データベース(DB)221、地図情報データベース(DB)222、及びユーザ情報データベース(DB)223が構築されている。なお、建物情報データベース221、地図情報データベース222、及びユーザ情報データベース223は、それぞれ、情報提供サーバ2とは異なる他のサーバに備えられてもよい。
建物情報データベース221は、複数の建物のそれぞれの建物位置情報、写真画像、及び建物関連情報等を建物毎に対応付けて登録(記憶)する。図2は、建物情報データベース221に登録されている情報の一例を示す図である。なお、図2の例では、説明の便宜上、建物B1〜B6に関して登録されている情報を示し、その他の建物に関して登録されている情報は省略している。図2の例において、建物位置情報は、建物の底面上の何れか任意の1点の緯度及び経度である。ここで、任意の1点とは、例えば、建物の底面上の重心点、或いは登録者のくせなどに起因して重心点から少しずれた点である。なお、建物位置情報は、建物の底面上の何れか任意の複数点の緯度及び経度であってもよい。写真画像は、情報提供サーバ2により情報提供サービスを行う運営者側で写真撮影された建物の写真画像であり、所定の画像ファイルに格納されて登録される。このような写真画像は、携帯端末1からの撮像画像との画像マッチングに用いられる。複数の異なるアングルで写真撮影された複数の写真画像が登録される場合もある。また、建物及びその周辺(例えば、建物の背景)部分が写った写真画像が登録される場合もあり、この場合、建物の写真画像と、当該建物の周辺部分の写真画像とは、別々の画像ファイルに格納されて登録されてもよい。
建物関連情報には、建物ID、建物名、所在地、築年数、階数、及び建物種別等の情報が含まれる。建物IDは、建物毎に一意に付与された識別情報である。建物種別は、例えば、個人住宅、集合住宅、商業施設、複合施設の別である。また、建物種別が集合住宅である場合、建物関連情報には、図2に示すように、例えば、戸数、及び各戸(各部屋)の固有情報が含まれる。戸の固有情報には、例えば、戸ID、所在階、部屋番号、間取り、及び取引対象有無等の情報が含まれる。戸IDは、建物の戸毎に一意に付与された識別情報である。取引対象有の戸は、取引対象として登録された物件(以下、「取引対象物件」という)である。取引対象有の戸(つまり、取引対象物件)の固有情報には、さらに、取引種別、取引条件情報、及び取扱い不動産会社情報等の物件情報が含まれる。取引種別は、例えば、賃貸物件、新築物件、中古物件の別である。賃貸物件は貸出中の取引対象物件である。新築物件または中古物件は売出中の取引対象物件である。また、賃貸物件の取引条件情報には、賃料、敷金、礼金、及び契約期間等の情報が含まれる。また、中古物件の取引条件情報には、価格、管理費、及び修繕積立金等の情報が含まれる。また、取扱い不動産会社情報には、不動産会社名、所在地、電話番号、メールアドレス、及び営業時間等の情報が含まれる。
地図情報データベース222は、地図を表すための地図データを登録する。地図データには、建物及び道路等を表す地図画像等が含まれる。地図画像は、複数のパノラマ写真画像(つまり、パノラマ写真画像の集合)から構成される。このようなパノラマ写真画像は、携帯端末1からの撮像画像との画像マッチングに用いられる。パノラマ写真画像は、例えば、縦軸を90°〜−90°とし、横軸を0°〜360°に設定した長方形の画像であり、例えば、道路に沿って所定間隔(例えば、数m〜数十m)で全方位を写真撮影することによって得られる。また、各パノラマ写真画像にはメタ情報が付与されており、それらのメタ情報はパノラマ写真画像とともに地図データ中に組み込まれている。メタ情報には、パノラマ写真画像の撮影位置を示す位置情報(緯度及び経度)、パノラマ写真画像に表れる建物の建物ID、及び当該建物のパノラマ写真画像上における座標を示す座標情報等が含まれる。
ユーザ情報データベース223は、情報提供サービスを利用する複数のユーザそれぞれのユーザ情報、ウィッシュリスト、検索履歴、及び閲覧履歴等をユーザ毎に対応付けて登録する。ユーザ情報には、ユーザID、パスワード、住所、電話番号、メールアドレス、性別、及び年齢等の情報が含まれる。ユーザIDは、ユーザ毎に一意に付与された識別情報である。ユーザID及びパスワードは、ユーザの認証情報であり、本システムへのログインのために使用される。ウィッシュリストは、ユーザが取引対象物件の登録を期待する建物を登録するためのリストである。ウィッシュリストには、ユーザにより指定された建物の建物ID、及び登録日時等の情報が登録される。
システム制御部23は、CPU,ROM,及びRAM等から構成され、CPUがOS上で動作するアプリケーションにしたがって各種処理を実行する。図3は、システム制御部23の機能ブロックの一例を示す図である。図3に示すように、システム制御部23は、受信情報取得部231、建物位置特定部232、写真画像検索部233、画像マッチング部234、情報取得・提示部235、及び情報登録部236等として機能する。ここで、受信情報取得部231は、本発明における画像取得手段、端末位置取得手段、距離取得手段、方位取得手段、及び建物位置取得手段等の一例である。建物位置特定部232は、本発明における建物位置特定手段の一例である。写真画像検索部233は、本発明における検索手段の一例である。画像マッチング部234は、本発明における判定手段の一例である。情報取得・提示部235は、本発明における送信手段及び提示手段の一例である。
受信情報取得部231は、携帯端末1から送信され、通信部21により受信された建物情報取得要求等の各種要求(リクエスト)から処理に必要な情報を取得する。なお、建物情報取得要求からは、上述した撮像画像、距離情報、方位情報、及び端末位置情報が取得される。
建物位置特定部232は、受信情報取得部231により取得された距離情報、方位情報、及び端末位置情報に基づいて、撮像画像に表れる建物の位置を示す建物位置情報を特定する。例えば、建物位置特定部232は、端末位置情報が示す緯度及び経度、距離情報が示す距離、及び方位情報が示す方位を、建物の位置を算出するための計算式に代入して当該建物の緯度及び経度を算出することで建物位置情報を特定する。或いは、建物位置特定部232は、端末位置情報が示す位置から、方位情報が示す方位で且つ距離情報が示す距離にある地点の緯度及び経度を地図データから抽出することで建物位置情報を特定してもよい。
別の例として、建物位置情報は、携帯端末1により特定されてもよい。この場合、携帯端末1の制御部18が建物位置特定手段として、建物位置特定部232と同様の方法で、距離情報、方位情報、及び端末位置情報に基づいて、撮像画像に表れる建物の位置を示す建物位置情報を特定する。そして、制御部18は、特定した建物位置情報を含む情報取得要求を、無線通信部11及びネットワークNWを介して情報提供サーバ2へ送信する。
写真画像検索部233は、建物位置特定部232により特定された建物位置情報に基づいて、建物情報データベース221から建物の写真画像を検索する。例えば、写真画像検索部233は、建物情報データベース221に登録された建物位置情報を参照して、建物位置特定部232により特定された建物位置情報が示す緯度及び経度を基準として予め設定された検索範囲内に緯度及び経度が含まれる建物があるか否かを判定することにより建物の写真画像を検索する。ここで、検索範囲の一例として、建物位置情報が示す緯度及び経度を中心として半径数m〜十数mの円の範囲が設定される。或いは、写真画像検索部233は、建物情報データベース221に登録された建物位置情報を参照して、建物位置特定部232により特定された建物位置情報が示す緯度及び経度からの距離が近い順に所定数の建物の写真画像を検索してもよい。ここで、距離が近い所定数の建物の写真画像は、例えば、距離が最も近い1つの建物の写真画像であってもよい。
画像マッチング部234は、写真画像検索部233により検索された(つまり、検索でヒットした)写真画像に表れる建物と、受信情報取得部231により取得された撮像画像に表れる建物とが一致(マッチング)するか否かを判定(一致判定)する。例えば、画像マッチング部234は、写真画像から認識された建物の特徴量と、撮像画像から認識された建物の特徴量とを特徴量抽出アルゴリズムにより抽出する。そして、画像マッチング部234は、上記抽出された両特徴量(つまり、写真画像に表れる建物の特徴量と、撮像画像に表れる建物の特徴量)の一致度を算出し、算出した一致度が閾値(例えば、80%)以上であるかを画像マッチングアルゴリズムにより判定し、一致度が閾値以上であれば、写真画像に表れる建物と、撮像画像に表れる建物とが一致すると判定する。
ところで、写真画像検索部233により写真画像が複数検索された場合において、それぞれの写真画像に表れる建物の外観が互いに類似するとき、それぞれの写真画像に表れる建物が撮像画像に表れる建物と一致すると判定される場合がある(つまり、1つの建物を特定できない)。この場合、画像マッチング部234は、撮像画像に表れる建物の特徴量との一致度が最も高い特徴量を有する建物が表れる写真画像を1つ特定してもよい。或いは、それぞれの写真画像に表れる建物の周辺部分と、撮像画像に表れる建物の周辺部分とが一致判定に利用できる場合、画像マッチング部234は、検索されたそれぞれの写真画像に表れる建物に加えて当該建物の周辺部分と、撮像画像に表れる建物に加えて当該建物の周辺部分とが一致するか否かを判定するとよい。これにより、写真画像及び撮像画像に表れる建物だけで一致判定を行うことよりも確実かつ正確に建物を特定することができる。例えば、画像マッチング部234は、それぞれの写真画像から認識された建物及びその周辺部分の特徴量と、撮像画像から認識された建物及びその周辺部分の特徴量とを抽出する。ここで、周辺部分の特徴量とは、当該建物の背景を含む周辺に含まれる他の建物や人口的な設置物(例えば、看板、電柱、植木等)等の特徴量である。そして、画像マッチング部234は、上記抽出された両特徴量(つまり、それぞれの写真画像に表れる建物及びその周辺部分の特徴量と、撮像画像に表れる建物及びその周辺部分の特徴量)の一致度を、それぞれの写真画像について算出し、算出した一致度が閾値以上であれば、写真画像に表れる当該建物及びその周辺部分と、撮像画像に表れる建物及びその周辺部分とが一致すると判定する。
また、上述したように、検索された複数の写真画像のそれぞれに表れる建物が撮像画像に表れる建物と一致すると判定される場合の他にも、撮像画像に表れる建物と写真画像に表れる建物とが実際には一致するもののカメラアングル等によっては一致しないと判定される場合がある。これらの場合、写真画像検索部233は、建物位置特定部232により特定された建物位置情報に基づいて、地図情報データベース222から、パノラマ写真画像を検索するとよい。例えば、写真画像検索部233は、地図情報データベース222に登録されたパノラマ写真画像の撮影位置を示す位置情報(メタ情報)を参照して、建物位置特定部232により特定された建物位置情報が示す緯度及び経度を基準として、上述した検索範囲内に撮影位置があるパノラマ写真画像(つまり、検索範囲内に撮影位置を示す緯度及び経度が含まれるパノラマ写真画像)があるか否かを判定することによりパノラマ写真画像を検索する。或いは、写真画像検索部233は、地図情報データベース222に登録されたパノラマ写真画像の撮影位置を示す位置情報を参照して、建物位置特定部232により特定された建物位置情報が示す緯度及び経度から撮影位置までの距離が近い順に所定数のパノラマ写真画像を検索する。ここで、撮影位置までの距離が近い所定数のパノラマ写真画像は、例えば、撮影位置までの距離が最も近い1つのパノラマ写真画像であってもよい。
そして、この場合、画像マッチング部234は、写真画像検索部233により検索されたパノラマ写真画像に表れる建物及びその周辺部分と、受信情報取得部231により取得された撮像画像に表れる建物及びその周辺部分とが一致するか否かを判定する。これにより、写真画像及び撮像画像に表れる建物だけで一致判定を行うことよりも確実かつ正確に建物を特定することができる。例えば、画像マッチング部234は、パノラマ写真画像から認識された建物及びその周辺部分の特徴量と、撮像画像から認識された建物及びその周辺部分の特徴量とを抽出する。そして、画像マッチング部234は、上記抽出された両特徴量(つまり、パノラマ写真画像に表れる建物及びその周辺部分の特徴量と、撮像画像に表れる建物及びその周辺部分の特徴量)の一致度を算出し、算出した一致度が閾値以上であれば、パノラマ写真画像に表れる当該建物及びその周辺部分と、撮像画像に表れる建物及びその周辺部分とが一致すると判定する。
情報取得・提示部235は、画像マッチング部234により一致すると判定された建物の建物情報を建物情報データベース221から取得し、当該取得した建物情報を携帯端末1へ送信(提供)することで撮像画像に表れる建物に関連付けて携帯端末1の画面に表示させる。ここで、一致すると判定された建物の建物情報とは、一致すると判定された建物が表れる写真画像に対応付けられた建物情報、または、パノラマ写真画像において一致すると判定された建物の建物ID(つまり、パノラマ写真画像のメタ情報に含まれる建物ID)に基づいて建物情報データベース221から特定される建物情報である。このような建物情報には、建物情報データベース221に登録された建物関連情報中の建物名等が含まれる。そして、携帯端末1の画面に表示された建物情報がユーザにより指定された場合、情報取得・提示部235は、当該建物情報より詳細な情報(例えば、所在地、築年数、及び階数等)を建物詳細情報として建物情報データベース221から取得し、当該取得した建物詳細情報を携帯端末1の画面に表示させる。
なお、建物情報には、建物内に取引対象物件があるか否かを示す情報が含まれるようにするとよい。例えば、建物内に取引対象物件があることを示す情報が携帯端末1の画面に表示された場合において、当該情報が携帯端末1のユーザにより指定された場合、情報取得・提示部235は、当該取引対象物件の固有情報を建物情報データベース221から取得し、当該取得した取引対象物件の固有情報を含む建物詳細情報を携帯端末1の画面に表示させる。
情報登録部236は、携帯端末1または携帯端末1以外の端末から送信された登録要求に応じて、当該登録要求された情報を建物情報データベース221、またはユーザ情報データベース223に登録する。また、情報登録部236は、建物内に取引対象物件がないことを示す情報が携帯端末1の画面に表示された場合において、携帯端末1のユーザにより当該情報が指定された場合、当該建物の建物IDを当該ユーザのユーザIDに対応付けてウィッシュリストに登録する。こうしてウィッシュリストに登録された後に当該建物内に取引対象物件が発生した場合(つまり、取引対象物件が登録された場合)、情報取得・提示部235は、当該ユーザに対して(例えば、メールアドレス宛に)、当該取引対象物件の固有情報を通知する。
[2.情報提供システムSの動作例]
次に、情報提供システムSの動作において実行される携帯端末1及び情報提供サーバ2のそれぞれの処理について説明する。
(2−1.携帯端末1の処理)
先ず、図4〜図8を参照して、携帯端末1の制御部18により実行される処理について説明する。図4は、携帯端末1の制御部18により実行される処理の一例を示すフローチャートである。
図4に示す処理は、携帯端末1のユーザからの操作指示に応じてアプリケーションが起動することにより開始される。図4に示す処理が開始されると、制御部18は、カメラ13、距離センサ14、方位センサ15、及びGPS受信機12へ起動指令を与えるとともに、画像表示処理を開始する(ステップS1)。この起動指令により、制御部18には、カメラ13から撮像画像が、距離センサ14から距離画像が、方位センサ15から方位情報が、GPS受信機12から端末位置情報が、それぞれ連続的に入力されて(取り込まれて)例えば、RAMのワーク領域に時系列で(例えば、時刻が付与されて)記憶される。また、画像表示処理において、制御部18は、カメラ13から入力されワーク領域に記憶された撮像画像を所定のフレームレートで表示・操作部16の画面に表示させる。このとき、ユーザは注目する建物に対して携帯端末1を向け、当該建物がカメラ13により撮像されるようにカメラアングルを調整する。
次いで、制御部18は、上記ワーク領域に記憶された撮像画像から、物体認識アルゴリズムにより建物が認識されたか否かを判定する(ステップS2)。例えば、画面の中央部分を含む領域に建物が表れた場合、当該建物が認識される。制御部18は、撮像画像から建物が認識されたと判定した場合(ステップS2:YES)、ステップS3へ進む。なお、制御部18は、例えば、認識された建物の輪郭を強調表示させてもよい。この場合、制御部18は、強調表示された建物がユーザにより指定(例えば、画面(タッチパネル)上でタッチ指示)された場合に、ステップS3へ進むように構成してもよい。一方、制御部18は、撮像画像から建物が認識されないと判定した場合(ステップS2:NO)、ステップS9へ進む。なお、ステップS2において、撮像画像から建物が認識されてステップS3へ進んだ後、処理がステップS2に戻った場合において、前回のステップS2の時点での撮像範囲と今回のステップS2の時点での撮像範囲との間の変更幅(つまり、前回の撮像範囲からの変更幅)が閾値未満である場合には、前回認識された建物と同一の建物は認識されないように構成される。一方、例えば携帯端末1の位置やカメラアングルが変更されたり、或いは、カメラ13のズーム倍率が上げられる(つまり、画角が狭められる)ことによって、前回のステップS2の時点での撮像範囲と今回のステップS2の時点での撮像範囲との間の変更幅が閾値以上になる場合、前回認識された建物と同一の建物が再び認識されてステップS3へ進むことになる。
ステップS3では、制御部18は、建物が認識された時点の撮像画像を上記ワーク領域から取得して建物情報取得要求にセットする。ここで、撮像画像は、所定のファイル形式の静止画ファイルとしてセットされる。次いで、制御部18は、建物が認識された時点の距離画像(つまり、撮像画像と同期した距離画像)における所定画素(例えば、画面の中心点の画素)の距離情報を上記ワーク領域から取得して建物情報取得要求にセットする(ステップS4)。次いで、制御部18は、建物が認識された時点の方位情報(つまり、撮像画像と同期した方位情報)を上記ワーク領域から取得して建物情報取得要求にセットする(ステップS5)。次いで、制御部18は、建物が認識された時点の端末位置情報(つまり、撮像画像と同期した端末位置情報)を上記ワーク領域から取得して建物情報取得要求にセットする(ステップS6)。別の例として、制御部18は、上記取得した距離情報、方位情報、及び端末位置情報に基づいて、撮像画像に表れる建物の位置を示す建物位置情報を特定してもよい。この場合、制御部18は、特定した建物位置情報を建物情報取得要求にセットすることになる。
次いで、制御部18は、撮像画像、距離情報、方位情報、及び端末位置情報がセットされた建物情報取得要求(または、撮像画像及び建物位置情報がセットされた建物情報取得要求)を、無線通信部11及びネットワークNWを介して情報提供サーバ2へ送信する(ステップS7)。この建物情報取得要求に応じて情報提供サーバ2から建物情報が送信された場合、当該建物情報は無線通信部11により受信される。そして、制御部18は、ARアルゴリズムにより、当該受信された建物情報を撮像画像に表れる建物に関連付けて、表示・操作部16の画面に表示させ(ステップS8)、ステップS2に戻る。ここで、受信された建物情報には、当該建物情報に対応する建物の建物ID及び建物名等が含まれるが、そのうち、一部の情報(例えば、建物名)だけが画面に表示されてもよい。また、受信された建物情報に、建物内に取引対象物件があるか否かを示す情報が含まれる場合、当該情報を含む建物情報が、撮像画像に表れる建物に関連付けられて表示される。また、建物情報には、ハイパーリンクが設定されており、ユーザにより指定可能になっている。なお、該当する建物情報が無い場合、情報提供サーバ2から該当無情報が送信され、表示・操作部16における画面に表示されることになる。
図5及び図6は、建物が存在する実空間が携帯端末1のカメラ13により撮像されたときの様子及び画面表示例を示す図である。図5の例では、実空間に存在する建物B1〜B6のうち建物B1及びB3が撮像され、その撮像画像が携帯端末1の画面Dに表示されている。さらに、図5に示す画面Dには、建物B1の建物情報である建物名IN11が、撮像画像の中央部分を含む領域に表れる建物B1上に吹き出し表示(つまり、関連付けて表示)されている。図6の例では、実空間に存在する建物B1〜B6のうち建物B3〜B6が撮像され、その撮像画像が携帯端末1の画面Dに表示されている。さらに、図6に示す画面Dには、建物B4の建物情報である建物名IN21が、撮像画像の中央部分を含む領域に表れる建物B4上に吹き出し表示されている。
一方、ステップS9では、制御部18は、ユーザからの指示を受け付けたか否かを判定する。制御部18は、ユーザからの指示を受け付けた場合(ステップS9:YES)、当該指示に応じた処理を実行する(ステップS10)。例えば、ユーザが、画面に表示された建物情報を指定(例えば、画面上でタッチ指示)すると、制御部18は、ユーザからの指示を受け付けたと判定し(ステップS9:YES)、当該指定された建物情報中の建物IDを含む詳細情報取得要求を、無線通信部11及びネットワークNWを介して情報提供サーバ2へ送信し(ステップS10)、ステップS11へ進む。一方、制御部18は、ユーザからの指示を受け付けていないと判定した場合(ステップS9:NO)、ステップS11へ進む。
図7(A)〜(E)は、画面に表示された建物情報が指定されたときの様子及び画面表示例を示す図である。図7(A)の例では、建物情報として、建物名IN11が画面Dに表示されている。図7(A)に示すように、画面Dに表示された建物名IN11がユーザにより指定された場合、この建物の建物IDを含む詳細情報取得要求が情報提供サーバ2へ送信される(ステップS10)。この詳細情報取得要求に応じて情報提供サーバ2から建物詳細情報が送信されると、図7(B)に示すように、建物詳細情報IN12が画面Dに表示される。建物詳細情報IN12には、建物名に加えて、建物の所在地、築年数、及び階数が含まれているが、建物に関する他の情報が含まれてもよい。
また、図7(C)の例では、建物情報として、建物名及び建物内に取引対象物件があることを示す情報(この例では、“空室有”)IN13が画面Dに表示されている。図7(C)に示すように、画面Dに表示された情報IN13がユーザにより指定された場合、取引対象物件の戸IDを含む詳細情報取得要求が情報提供サーバ2へ送信される(ステップS10)。この詳細情報取得要求に応じて情報提供サーバ2から建物詳細情報が送信されると、図7(D)に示すように、建物詳細情報IN14が画面Dに表示される。建物詳細情報IN14には、建物名及び取引対象物件の固有情報(賃貸物件情報)が含まれている。なお、建物詳細情報には、取引対象物件の固有情報として、取引対象物件の取扱い不動産会社の電話番号またはメールアドレスが含まれるように構成してもよい。この場合において、画面Dに表示された情報IN13がユーザにより指定された場合、携帯端末1は、取扱い不動産会社の電話番号に従って発呼することで、取扱い不動産会社の電話機との間で通話を行うように構成してもよい。或いは、画面Dに表示された情報IN13がユーザにより指定された場合、携帯端末1は、取扱い不動産会社のメールアドレス宛てに取引対象物件の問合せメールを送信するように構成してもよい。或いは、画面Dに表示された情報IN13がユーザにより指定された場合、携帯端末1は、取引対象物件の戸IDを含む見学予約要求を情報提供サーバ2へ送信するように構成してもよい。
また、図7(E)の例では、建物情報として、建物名及び建物内に取引対象物件がないことを示す情報(この例では、“空室無”)IN15が画面Dに表示されている。図7(E)に示すように、画面Dに表示された情報IN15が例えばログイン中のユーザ(つまり、認証済のユーザ)により指定された場合、当該建物の建物ID、及び当該ユーザのユーザIDを含むウィッシュリスト登録要求が情報提供サーバ2へ送信され(ステップS10)、当該建物の建物IDが当該ユーザのユーザIDに対応付けられたウィッシュリストに登録されることになる。
ステップS11では、制御部18は、アプリケーションを終了するか否かを判定する。例えば、ユーザからアプリケーションの終了指示が受け付けられた場合、制御部18は、アプリケーションを終了すると判定し(ステップS11:YES)、図4に示す処理を終了する。一方、制御部18は、アプリケーションを終了しないと判定した場合(ステップS11:NO)、ステップS2に戻る。
なお、制御部18は、上記ステップS2において撮像画像から複数の建物を認識した場合、ステップS4において当該複数の建物毎に距離画像における所定画素の距離情報を上記ワーク領域から取得して建物情報取得要求にセットしてもよい。この場合、当該所定画素は、それぞれの建物の表面上の何れかの点(例えば、重心点)の画素とされる。そして、それぞれの建物の所定画素の撮像画像上における座標を示す座標情報が、それぞれの建物の距離情報に対応付けられて建物情報取得要求にセットされる。また、認識されたそれぞれの建物の方位は、方位センサ15により検出された方位(つまり、共通の方位)であってもよいし、方位センサ15により検出された方位とカメラ13の画角に基づいてそれぞれの建物の方位が算出されてもよい。それぞれの建物の方位が算出された場合、それぞれの建物の方位を示す方位情報が、それぞれの建物の距離情報に対応付けられて建物情報取得要求にセットされる。そして、撮像画像に表れる複数の建物毎の距離情報及び座標情報等がセットされた建物情報取得要求が情報提供サーバ2へ送信されると、この建物情報取得要求に応じて情報提供サーバ2から、それぞれの建物の建物情報(上記座標情報を含む)が送信され、無線通信部11により受信される。この場合、制御部18は、それぞれの建物の建物情報を、それぞれに対応する座標情報に基づき、撮像画像に表れるそれぞれの建物に関連付けて画面に表示させる。この構成によれば、ユーザが近接する複数の建物に対してカメラ13を向けることで、当該ユーザに対して当該複数の建物のそれぞれについて正確な情報を提示することができる。
図8は、複数の建物毎の距離情報及び座標情報等を含む建物情報取得要求が送信された場合の画面表示例を示す図である。図8に示す画面Dには、建物B4の建物情報である建物名IN21が撮像画像の中央部分を含む領域に表れる建物B4上に吹き出し表示(つまり、関連付けて表示)され、建物B3の建物情報である建物名IN23が撮像画像の中央部分の右側の領域に表れる建物B3上に吹き出し表示され、建物B5の建物情報である建物名IN22が撮像画像の中央部分の左側の領域に表れる建物B5上に吹き出し表示(つまり、関連付けて表示)されている。これらの建物名IN21〜IN23は、図7(A)と同様、ユーザにより指定可能になっており、ユーザにより指定された場合、その建物の建物IDを含む詳細情報取得要求が情報提供サーバ2へ送信されることになる。
(2−2.情報提供サーバ2の処理)
次に、情報提供サーバ2のシステム制御部23により実行される処理について説明する。先ず、図9等を参照して、携帯端末1からの建物情報取得要求が受信されたときの建物特定及び建物情報提供処理について説明する。図9は、携帯端末1からの建物情報取得要求が受信されたときの建物特定及び建物情報提供処理の一例を示すフローチャートである。なお、建物情報取得要求に複数の建物毎の距離情報及び座標情報等が含まれる場合、図9に示すステップS21以降の処理(図13に示す処理も含む)は、当該建物毎に実行される。
図9に示す処理は、携帯端末1からの建物情報取得要求が通信部21により受信された場合に開始される。図9に示す処理が開始されると、システム制御部23(受信情報取得部231)は、通信部21により受信された建物情報取得要求から、撮像画像、距離情報、方位情報、及び端末位置情報を取得する(ステップS20)。なお、建物情報取得要求に複数の建物毎の距離情報及び座標情報等が含まれる場合、当該建物毎に距離情報及び座標情報等が取得される。また、建物情報取得要求に建物位置情報が含まれる場合、当該建物情報取得要求から建物位置情報が取得される。
次いで、システム制御部23(建物位置特定部232)は、ステップS20で取得された距離情報、方位情報、及び端末位置情報に基づいて、撮像画像に表れる建物の位置を示す建物位置情報を特定する(ステップS21)。例えば、上述したように、システム制御部23(建物位置特定部232)は、端末位置情報が示す緯度及び経度、距離情報が示す距離、及び方位情報が示す方位を、建物の位置を算出するための計算式に代入して当該建物の緯度及び経度を算出することで建物位置情報を特定する。なお、複数の建物毎に距離情報及び座標情報等が取得された場合、それぞれの建物の位置を示す建物位置情報が特定される。また、建物情報取得要求から建物位置情報が取得された場合、当該取得された建物位置情報が特定される。
次いで、システム制御部23(写真画像検索部233)は、ステップS21で特定された建物位置情報が示す緯度及び経度を基準として設定した検索範囲内の建物の写真画像を建物情報データベース221から検索する(ステップS22)。例えば、システム制御部23(写真画像検索部233)は、建物情報データベース221に登録された建物位置情報を参照して、ステップS21で特定された建物位置情報が示す緯度及び経度を中心として設定した検索範囲内に緯度及び経度が含まれる建物の写真画像を検索する。
次いで、システム制御部23(写真画像検索部233)は、ステップS22で写真画像が検索されたか(ヒットしたか)否かを判定する(ステップS23)。なお、複数の建物毎に建物位置情報が特定された場合、それぞれの建物位置情報に基づいて、当該複数の建物毎に建物の写真画像が検索され、写真画像が検索されたか否かが判定される(後述するステップS51及びS52も同様)。システム制御部23(写真画像検索部233)は、写真画像が検索されない(ヒットしない)と判定した場合(ステップS23:NO)、ステップS24へ進む。一方、システム制御部23(写真画像検索部233)は、写真画像が検索された(ヒットした)と判定した場合(ステップS23:YES)、ステップS26へ進む。
図10及び図11は、建物の位置と検索範囲との関係の一例を示す図である。図10は、図5の例に対応し、図11は、図6の例に対応している。図10及び図11において、RP1〜RP6は、それぞれ、建物B1〜B6の位置を示す建物位置情報であり、CP1及びCP2は、それぞれ、ステップS21で特定された建物位置情報である。図10の例では、建物位置情報CP1を中心として設定された検索範囲SR1内には、建物B1の建物位置情報RP1及び建物B3の建物位置情報RP3が含まれているので、上記ステップS22では、建物B1の写真画像と、建物B3の写真画像が検索されることになる。一方、図11の例では、建物位置情報CP2を中心として設定された検索範囲SR2内には、建物B3の建物位置情報RP3、建物B4の建物位置情報RP4、及び建物B5の建物位置情報RP5が含まれているので、上記ステップS22では、建物B3の写真画像と、建物B4の写真画像と、建物B5の写真画像とが検索されることになる。
ステップS24では、システム制御部23(写真画像検索部233)は、再検索を行うか否かを判定する。例えば、システム制御部23(写真画像検索部233)は、予め設定された再検索実施有無を確認し、再検索実施有が設定されている場合、再検索実施有の設定と共に設定された再検索上限回数(例えば、2回)以下であるかをさらに確認し、再検索上限回数以下である場合、再検索を行うと判定し(ステップS24:YES)、ステップS25へ進む。一方、システム制御部23(写真画像検索部233)は、再検索実施無が設定されている場合、または再検索実施有が設定されているが再検索上限回数以下でない場合、再検索を行わないと判定し(ステップS24:NO)、ステップS42へ進む。
ステップS25では、システム制御部23(写真画像検索部233)は、上記検索範囲を拡張設定する。すなわち、システム制御部23(写真画像検索部233)は、直前の検索範囲(第1の範囲の一例)より広い検索範囲(第2の範囲の一例)を設定する。例えば、ステップS21で特定された建物位置情報が示す緯度及び経度を中心として、半径5mの検索範囲から半径10mの検索範囲に拡張設定される。そして、システム制御部23(写真画像検索部233)は、検索範囲の拡張後、ステップS22に戻り、拡張した検索範囲内の建物の写真画像を建物情報データベース221から検索する。このように、システム制御部23(写真画像検索部233)は、ステップS21で特定された建物位置情報が示す緯度及び経度を基準とする第1の検索範囲内に経度を基準が含まれる建物があるか否かを判定し、当該第1の検索範囲内に経度を基準が含まれる建物がないと判定した場合、当該第1の検索範囲より広い第2の検索範囲を設定し、当該第2の検索範囲内に経度を基準が含まれる建物があるか否かを判定することにより建物の写真画像を検索する。これにより、徐々に検索範囲を広げていくことが可能となり、最初から広い検索範囲で検索することに比べて、検索精度を向上させることができるとともに、検索ヒット数を減らすことができるので以降のステップでの処理時間を短縮することができる。
ステップS26では、システム制御部23(画像マッチング部234)は、ステップS22で検索された写真画像を1つ選定する。なお、ここで選定された写真画像には選定フラグ“1”が付与される。次いで、システム制御部23(画像マッチング部234)は、ステップS26で選定された写真画像に表れる建物と、ステップS20で取得された撮像画像に表れる建物との一致判定を実行し(ステップS27)、当該写真画像に表れる建物と撮像画像に表れる建物とが一致するか否かを判定する(ステップS28)。ここで、撮像画像に表れる建物(つまり、一致判定に利用される建物)は、携帯端末1において認識される建物に合わせるように構成すればよく、例えば、撮像画像の中央部分(つまり、携帯端末1の画面の中央部分に相当)を含む領域に表れた建物が認識される。一方、写真画像に表れる建物(つまり、一致判定に利用される建物)としては、当該写真画像において最も面積の広い建物が認識される(通常、写真画像には1つの建物が写っているが、当該建物の周辺部分に他の建物が写り込んでいる場合もあるため)。なお、複数の建物毎に写真画像が検索された場合、写真画像に表れる建物と、撮像画像に表れる建物との一致判定は当該建物毎に実行され、一致するか否かが判定される(後述するステップS36及びS37、並びに、ステップS56及びS57も同様)。この場合において、撮像画像に表れる建物(つまり、一致判定に利用される建物)は、当該建物について距離情報と共に取得された座標情報に基づいて撮像画像から認識される。
ステップS27の具体例として、システム制御部23(画像マッチング部234)は、写真画像から認識された建物の特徴量と、撮像画像から認識された建物の特徴量とを特徴量抽出アルゴリズムにより抽出する。そして、システム制御部23(画像マッチング部234)は、上記抽出した両特徴量の一致度を算出し、算出した一致度が閾値(例えば、80%)以上であるかを画像マッチングアルゴリズムにより判定し、一致度が閾値以上であれば、写真画像に表れる建物と、撮像画像に表れる建物とが一致すると判定する。システム制御部23(画像マッチング部234)は、写真画像に表れる建物と、撮像画像に表れる建物とが一致すると判定した場合(ステップS28:YES)、ステップS29へ進む。一方、システム制御部23(画像マッチング部234)は、写真画像に表れる建物と、撮像画像に表れる建物とが一致しないと判定した場合(ステップS28:NO)、ステップS30へ進む。
ステップS29では、システム制御部23(画像マッチング部234)は、ステップS28で一致すると判定された建物の建物ID(つまり、一致すると判定された建物の写真画像に対応付けられた建物ID)を候補リストに登録し、ステップS30へ進む。ここで、候補リストは、ユーザに対して建物情報を提供するべき建物の候補を一時的に登録するためのリストである。なお、複数の建物毎に一致判定が実行された場合、一致すると判定された建物の建物IDは建物毎に用意された候補リストに登録される(後述するステップS38及びS58も同様)。ステップS30では、システム制御部23(画像マッチング部234)は、ステップS22で検索された写真画像のうち、未だ選定していない写真画像があるか否かを、例えば、選定フラグにより判定する。システム制御部23(画像マッチング部234)は、未だ選定していない写真画像があると判定した場合(ステップS30:YES)、ステップS26に戻り、未だ選定していない写真画像を1つ選定し、上記と同様、ステップS27以降の処理を行う。一方、システム制御部23(画像マッチング部234)は、未だ選定していない写真画像がないと判定した場合(ステップS30:NO)、写真画像に付与された選定フラグを削除し、ステップS31へ進む。
ステップS31では、システム制御部23(画像マッチング部234)は、候補リストに建物IDが登録されたか否かを判定する。システム制御部23(画像マッチング部234)は、候補リストに1つ以上の建物IDが登録されたと判定した場合(ステップS31:YES)、ステップS32へ進む。一方、システム制御部23(画像マッチング部234)は、候補リストに建物IDが登録されていない(つまり、ステップS28で一致すると判定された建物の写真画像が1つもない)と判定した場合(ステップS31:NO)、ステップS42へ進む。
ステップS32では、システム制御部23(画像マッチング部234)は、候補リストに登録されたものが異なる複数の建物IDであるか否かを判定する。システム制御部23(画像マッチング部234)は、候補リストに登録されたものが異なる複数の建物IDである(つまり、ステップS28で一致すると判定された建物の写真画像が複数ある)と判定した場合(ステップS32:YES)、ステップS33へ進む。例えば、図6の例では、建物B4と建物B5との外観が互いに類似しているので、それぞれの写真画像に対応付けられた建物IDが候補リストに登録される。一方、システム制御部23(画像マッチング部234)は、候補リストに登録されたものが異なる複数の建物IDでない(つまり、候補リストに建物IDが1つだけ登録された)と判定した場合(ステップS32:NO)、ステップS43へ進む。
ステップS33では、システム制御部23(画像マッチング部234)は、撮像画像に表れる建物の周辺部分を一致判定に利用できるか否かを判定する。例えば、システム制御部23(画像マッチング部234)は、撮像画像に表れる建物の周辺部分の特徴量が所定量以上ある場合、当該周辺部分を一致判定に利用できると判定し(ステップS33:YES)、ステップS34へ進む。一方、システム制御部23(画像マッチング部234)は、撮像画像に表れる建物の周辺部分を一致判定に利用できないと判定した場合(ステップS33:NO)、ステップS45へ進む。
ステップS34では、上記ステップS26と同様、システム制御部23(画像マッチング部234)は、ステップS22で検索された写真画像を1つ選定する。なお、ここで選定された写真画像には選定フラグ“1”が付与される。次いで、システム制御部23(画像マッチング部234)は、写真画像に表れる建物の周辺部分を一致判定に利用できるか否かを判定する(ステップS35)。例えば、システム制御部23(画像マッチング部234)は、写真画像に表れる建物の周辺部分の特徴量が所定量以上ある場合、当該周辺部分を一致判定に利用できると判定し(ステップS35:YES)、ステップS36へ進む。一方、システム制御部23(画像マッチング部234)は、写真画像に表れる建物の周辺部分を一致判定に利用できないと判定した場合(ステップS35:NO)、ステップS39へ進む。
ステップS36では、システム制御部23(画像マッチング部234)は、ステップS34で選定された写真画像に表れる建物及びその周辺部分と、ステップS20で取得された撮像画像に表れる建物及びその周辺部分との一致判定を実行し、写真画像に表れる建物及びその周辺部分と撮像画像に表れる建物及びその周辺部分とが一致するか否かを判定する(ステップS37)。例えば、システム制御部23(画像マッチング部234)は、写真画像から認識された建物及びその周辺部分の特徴量と、撮像画像から認識された建物及びその周辺部分の特徴量とを特徴量抽出アルゴリズムにより抽出する。そして、システム制御部23(画像マッチング部234)は、上記抽出した両特徴量の一致度を算出し、算出した一致度が閾値(例えば、80%)以上であるかを画像マッチングアルゴリズムにより判定し、一致度が閾値以上であれば、写真画像に表れる建物及びその周辺部分と、撮像画像に表れる建物及びその周辺部分とが一致すると判定する。
そして、システム制御部23(画像マッチング部234)は、写真画像に表れる建物及びその周辺部分と、撮像画像に表れる建物及びその周辺部分とが一致すると判定した場合(ステップS37:YES)、ステップS38へ進む。一方、システム制御部23(画像マッチング部234)は、写真画像に表れる建物及びその周辺部分と、撮像画像に表れる建物及びその周辺部分とが一致しないと判定した場合(ステップS37:NO)、ステップS39へ進む。
ステップS38では、システム制御部23(画像マッチング部234)は、ステップS37で一致すると判定された建物の建物ID(つまり、一致すると判定された建物が表れる写真画像に対応付けられた建物ID)を候補リストに登録し、ステップS39へ進む。ステップS39では、システム制御部23(画像マッチング部234)は、ステップS22で検索された写真画像のうち、未だ選定していない写真画像があるか否かを、例えば、選定フラグにより判定する。システム制御部23(画像マッチング部234)は、未だ選定していない写真画像があると判定した場合(ステップS39:YES)、ステップS34に戻り、未だ選定していない写真画像を1つ選定し、上記と同様、ステップS35以降の処理を行う。一方、システム制御部23(画像マッチング部234)は、未だ選定していない写真画像がないと判定した場合(ステップS39:NO)、写真画像に付与された選定フラグを削除し、ステップS40へ進む。
ステップS40では、システム制御部23(画像マッチング部234)は、候補リストに建物IDが登録されたか否かを判定する。システム制御部23(画像マッチング部234)は、候補リストに1つ以上の建物IDが登録されたと判定した場合(ステップS40:YES)、ステップS41へ進む。一方、システム制御部23(画像マッチング部234)は、候補リストに建物IDが登録されていないと判定した場合(ステップS40:NO)、後述する「パノラマ写真画像を利用した建物特定処理」へ移行する。
ステップS41では、システム制御部23(画像マッチング部234)は、候補リストに登録されたものが異なる複数の建物IDであるか否かを判定する。システム制御部23(画像マッチング部234)は、候補リストに登録されたものが異なる複数の建物IDであると判定した場合(ステップS41:YES)、後述する「パノラマ写真画像を利用した建物特定処理」へ移行する。一方、システム制御部23(画像マッチング部234)は、候補リストに登録されたものが異なる複数の建物IDでないと判定した場合(ステップS41:NO)、ステップS43へ進む。
図12(A)は、複数の写真画像のそれぞれに表れる建物と、撮像画像に表れる建物との一致判定の様子を示す概念図であり、図12(B)は、複数の写真画像のそれぞれに表れる建物及びその周辺部分と、撮像画像に表れる建物及びその周辺部分との一致判定の様子を示す概念図である。図12(A)は、ステップS27の一致判定の例であり、この例では、建物位置情報RP4に対応付けられた写真画像と建物位置情報RP5に対応付けられた写真画像とのそれぞれに表れる建物が撮像画像に表れる建物と一致すると判定されている。一方、図12(B)は、ステップS36の一致判定の例であり、この例では、建物位置情報RP4に対応付けられた写真画像のみに表れる建物及びその周辺部分が撮像画像に表れる建物及びその周辺部分と一致すると判定されている。
ステップS42では、上記ステップS33と同様、システム制御部23(画像マッチング部234)は、撮像画像に表れる建物の周辺部分を一致判定に利用できるか否かを判定する。システム制御部23(画像マッチング部234)は、撮像画像に表れる建物の周辺部分を一致判定に利用できると判定した場合(ステップS42:YES)、後述する「パノラマ写真画像を利用した建物特定処理」へ移行する。一方、システム制御部23(画像マッチング部234)は、撮像画像に表れる建物の周辺部分を一致判定に利用できないと判定した場合(ステップS42:NO)、ステップS45へ進む。なお、ステップS42において、撮像画像に表れる建物の周辺部分を一致判定に利用できないと判定された場合であっても、後述する「パノラマ写真画像を利用した建物特定処理」へ移行し、後述する図13に示すステップS56においてパノラマ写真画像に表れる建物と撮像画像に表れる建物との一致判定を行うように構成してもよい。
ステップS43では、システム制御部23(情報取得・提示部235)は、候補リストに登録された1つの建物IDに対応する建物情報(つまり、一致すると判定された建物の建物情報)を建物情報データベース221から取得する。例えば、システム制御部23(情報取得・提示部235)は、当該建物IDに対応付けられた建物名及び建物IDを建物情報として取得する。このとき、システム制御部23(情報取得・提示部235)は、当該建物IDに対応する建物内に取引対象物件があるか否かを当該建物内の各戸の取引対象有無から判定し、当該建物内に取引対象物件があると判定した場合、当該取引対象物件の戸ID及び取引対象物件があることを示す情報を上記建物情報に含めるとよい。一方、システム制御部23(情報取得・提示部235)は、当該建物内に取引対象物件がないと判定した場合、取引対象物件がないことを示す情報を上記建物情報に含めるとよい。なお、撮像画像に表れる複数の建物毎に上記処理が行われ、それぞれの建物の建物情報が取得される場合、それぞれの建物情報には、該当する建物の座標情報が含まれることになる。
次いで、システム制御部23(情報取得・提示部235)は、ステップS43で取得された建物情報を通信部21及びネットワークNWを介して携帯端末1へ送信し(ステップS44)、図9に示す処理を終了する。これにより、上記ステップS8で建物情報が撮像画像に表れる建物に関連付けられて携帯端末1の画面に表示されることになる。一方、ステップS45では、システム制御部23(情報取得・提示部235)は、該当する建物情報が無いことを示す該当無情報を通信部21及びネットワークNWを介して携帯端末1へ送信し、図9に示す処理を終了する。
以上説明した図9に示す処理によれば、建物のそれぞれの建物位置情報と対応付けられて建物情報データベース221に予め登録された写真画像を利用して撮像画像に表れる建物を迅速かつ正確に特定することができる。特に、ステップS26〜S30において、先ずは、写真画像に表れる建物と撮像画像に表れる建物との一致判定を実行することで当該撮像画像に表れる建物をより短い時間で正確に特定することが可能となり、もし、この一致判定において撮像画像に表れる建物を特定できない場合であっても、ステップS34〜S39において、写真画像に表れる建物及びその周辺部分と撮像画像に表れる建物及びその周辺部分との一致判定を実行することで当該撮像画像に表れる建物を、より確実かつ正確に特定することが可能となる。つまり、このような2段階の一致判定によって処理時間の短縮を図ることができるとともに、建物特定の正確性及び確実性を高めることができる。
次に、図13等を参照して、パノラマ写真画像を利用した建物特定及び建物情報提供処理について説明する。図13は、パノラマ写真画像を利用した建物特定及び建物情報提供処理の一例を示すフローチャートである。
図13に示す処理では、システム制御部23(写真画像検索部233)は、ステップS21で特定された建物位置情報が示す緯度及び経度を基準として設定した検索範囲内のパノラマ写真画像を、地図情報データベース222から検索する(ステップS51)。例えば、システム制御部23(写真画像検索部233)は、地図情報データベース222に登録されたパノラマ写真画像の撮影位置を示す位置情報を参照して、ステップS21で特定された建物位置情報が示す緯度及び経度を中心として設定した検索範囲内に撮影位置を示す緯度及び経度が含まれるパノラマ写真画像を検索する。
次いで、システム制御部23(写真画像検索部233)は、ステップS51でパノラマ写真画像が検索されたか(ヒットしたか)否かを判定する(ステップS52)。システム制御部23(写真画像検索部233)は、パノラマ写真画像が検索されない(ヒットしない)と判定した場合(ステップS52:NO)、ステップS53へ進む。一方、システム制御部23(写真画像検索部233)は、パノラマ写真画像が検索された(ヒットした)と判定した場合(ステップS52:YES)、ステップS55へ進む。
図14は、パノラマ写真画像の撮影位置と、建物の位置と、検索範囲との関係の一例を示す図である。図14は、図6の例に対応している。図14において、RP1〜RP6、及びCP1及びCP2は、図11の例と同様である。また、図14において、TP1〜TP6は、それぞれ、パノラマ写真画像の撮影位置を示す位置情報である。図14の例では、建物位置情報CP2を中心として設定された検索範囲SR2内には、撮影位置を示す位置情報TP3及びTP4が含まれているので、上記ステップS51では、位置情報TP3(メタ情報)が付与されたパノラマ写真画像と、位置情報TP4(メタ情報)が付与されたパノラマ写真画像とが検索されることになる。図14の例では、位置情報TP3が付与されたパノラマ写真画像と位置情報TP4が付与されたパノラマ写真画像との双方に建物B4及びその周辺部分が表れることが予想できる。
ステップS53では、システム制御部23(写真画像検索部233)は、再検索を行うか否かを判定する。ステップS53の判定は、上記ステップS24と同様である。システム制御部23(写真画像検索部233)は、再検索を行うと判定した場合(ステップS53:YES)、上記ステップS25と同様、上記検索範囲を拡張設定し(ステップS54)、ステップS51に戻る。一方、システム制御部23(写真画像検索部233)は、再検索を行わないと判定した場合(ステップS53:NO)、ステップS63へ進む。
ステップS55では、システム制御部23(画像マッチング部234)は、ステップS51で検索されたパノラマ写真画像を1つ選定する。なお、ここで選定されたパノラマ写真画像には選定フラグ“1”が付与される。次いで、システム制御部23(画像マッチング部234)は、ステップS55で選定されたパノラマ写真画像に表れる建物及びその周辺部分と、ステップS20で取得された撮像画像に表れる建物及びその周辺部分との一致判定を実行し(ステップS56)、パノラマ写真画像に表れる建物及びその周辺部分と撮像画像に表れる建物及びその周辺部分とが一致するか否かを判定する(ステップS57)。ここで、パノラマ写真画像は、その撮影位置を中心として全方位が撮影された画像であるので、歪みがある。そのため、システム制御部23(画像マッチング部234)は、パノラマ写真画像の歪みを補正した後に、パノラマ写真画像から認識された建物及びその周辺部分の特徴量と、撮像画像から認識された建物及びその周辺部分の特徴量とを特徴量抽出アルゴリズムにより抽出するとよい。そして、システム制御部23(画像マッチング部234)は、上記抽出した両特徴量の一致度を算出し、算出した一致度が閾値(例えば、80%)以上であるかを画像マッチングアルゴリズムにより判定し、一致度が閾値以上であれば、パノラマ写真画像に表れる建物及びその周辺部分と、撮像画像に表れる建物及びその周辺部分とが一致すると判定する。
そして、システム制御部23(画像マッチング部234)は、パノラマ写真画像に表れる建物及びその周辺部分と、撮像画像に表れる建物及びその周辺部分とが一致すると判定した場合(ステップS57:YES)、ステップS58へ進む。一方、システム制御部23(画像マッチング部234)は、パノラマ写真画像に表れる建物及びその周辺部分と、撮像画像に表れる建物及びその周辺部分とが一致しないと判定した場合(ステップS57:NO)、ステップS59へ進む。
ステップS58では、システム制御部23(画像マッチング部234)は、ステップS57で一致すると判定された建物の建物IDを候補リストに登録し、ステップS59へ進む。ここで、一致すると判定された建物の建物IDは、パノラマ写真画像のメタ情報から取得される。なお、パノラマ写真画像を利用した建物特定処理では、複数のパノラマ写真画像が検索され、それぞれのパノラマ写真画像に表れる建物及びその周辺部分が、撮像画像に表れる建物及びその周辺部分と一致すると判定される場合がある。この場合、候補リストには同一の建物IDが複数登録されることになる。
ステップS59では、システム制御部23(画像マッチング部234)は、ステップS51で検索されたパノラマ写真画像のうち、未だ選定していないパノラマ写真画像があるか否かを、例えば、選定フラグにより判定する。システム制御部23(画像マッチング部234)は、未だ選定していないパノラマ写真画像があると判定した場合(ステップS59:YES)、ステップS55に戻り、未だ選定していないパノラマ写真画像を1つ選定し、上記と同様、ステップS56以降の処理を行う。一方、システム制御部23(画像マッチング部234)は、未だ選定していないパノラマ写真画像がないと判定した場合(ステップS59:NO)、パノラマ写真画像に付与された選定フラグを削除し、ステップS60へ進む。
ステップS60では、システム制御部23(画像マッチング部234)は、候補リストに建物IDが登録されたか否かを判定する。システム制御部23(画像マッチング部234)は、候補リストに建物IDが登録されたと判定した場合(ステップS60:YES)、ステップS61へ進む。一方、システム制御部23(画像マッチング部234)は、候補リストに建物IDが登録されていないと判定した場合(ステップS60:NO)、ステップS63へ進む。なお、ステップS61〜S63の処理は、それぞれ、ステップS41〜S43の処理と同様である。
以上説明した図13に示す処理によれば、地図情報データベース222に登録された地図画像を構成するパノラマ写真画像を利用して撮像画像に表れる建物を正確に特定することができる。特に、図9に示すように写真画像を用いた一致判定において撮像画像に表れる建物を特定できない場合であっても、ステップS55〜S59において、パノラマ写真画像に表れる建物及びその周辺部分と撮像画像に表れる建物及びその周辺部分との一致判定を実行することで当該撮像画像に表れる建物を、より確実かつ正確に特定することが可能となる。
次に、図15を参照して、携帯端末1からの詳細情報取得要求が受信されたときの建物詳細情報提供処理について説明する。図15は、携帯端末1からの詳細情報取得要求が受信されたときの建物詳細情報提供処理の一例を示すフローチャートである。
図15に示す処理は、携帯端末1からの詳細情報取得要求が通信部21により受信された場合に開始される。図15に示す処理が開始されると、システム制御部23(情報取得・提示部235)は、詳細情報取得要求から建物の建物IDを含む情報を取得する(ステップS71)。
次いで、システム制御部23(情報取得・提示部235)は、ステップS71で取得された情報から取引対象物件の戸IDを特定できるか否かを判定する(ステップS72)。例えば、図7(C)に示すように、取引対象物件があることを示す情報IN13がユーザにより指定されることで、携帯端末1から送信された詳細情報取得要求(または、見学予約要求)が通信部21により受信された場合、システム制御部23(情報取得・提示部235)は、ステップS71で取得された情報から当該取引対象物件の戸IDを特定することができる。システム制御部23(情報取得・提示部235)は、取引対象物件の戸IDを特定できると判定した場合(ステップS72:YES)、ステップS74へ進む。一方、システム制御部23(情報取得・提示部235)は、取引対象物件の戸IDを特定できないと判定した場合(ステップS72:NO)、ステップS73へ進む。
ステップS73では、システム制御部23(情報取得・提示部235)は、ステップS71で取得された建物IDに対応付けられた詳細な情報(例えば、所在地、築年数、及び階数等)を建物詳細情報として建物情報データベース221から取得する。そして、システム制御部23(情報取得・提示部235)は、ステップS73で取得された建物詳細情報を通信部21及びネットワークNWを介して携帯端末1へ送信し(ステップS75)、図15に示す処理を終了する。こうして、図7(B)に示すように、建物詳細情報IN12が携帯端末1の画面に表示される。これにより、携帯端末1のユーザが例えば散歩中に興味をもった建物の詳細な情報を当該ユーザに対して迅速に提示することができる。
一方、ステップS74では、システム制御部23(情報取得・提示部235)は、ステップS71で取得された建物IDに対応付けられ、且つステップS72で取得された戸IDに対応付けられた建物名及び取引対象物件の固有情報(賃貸物件情報)を建物詳細情報として建物情報データベース221から取得する。そして、システム制御部23(情報取得・提示部235)は、ステップS74で取得された建物詳細情報を通信部21及びネットワークNWを介して携帯端末1へ送信し(ステップS75)、図15に示す処理を終了する。こうして、図7(D)に示すように、建物詳細情報IN14が携帯端末1の画面に表示される。これにより、携帯端末1のユーザが例えば散歩中に興味をもった建物内の取引対象物件の固有情報を当該ユーザに対して迅速に提示することができる。或いは、ステップS75において、システム制御部23(情報取得・提示部235)は、ステップS74で取得された建物詳細情報中の一部情報(例えば、建物名、所在階、部屋番号、及び取扱い不動産会社情報)が記述された見学予約ページを通信部21及びネットワークNWを介して携帯端末1へ送信する。見学予約ページは、ステップS72で取得された戸IDが示す戸(部屋)の見学を予約するためのページであり、当該見学予約ページには、当該戸の見学を希望する人の氏名及び連絡先、並びに見学希望日等を入力するための欄が設けられている。携帯端末1のユーザは、見学予約ページを通じて、当該戸の見学予約をすることができる。
次に、図16(A)を参照して、携帯端末1からのウィッシュリスト登録要求が受信されたときのウィッシュリスト登録処理について説明する。図16(A)は、携帯端末1からのウィッシュリスト登録要求が受信されたときのウィッシュリスト登録処理の一例を示すフローチャートである。
図16(A)に示す処理は、携帯端末1からのウィッシュリスト登録要求が通信部21により受信された場合に開始される。図16(A)に示す処理が開始されると、システム制御部23(情報登録部236)は、ウィッシュリスト登録要求から建物ID及びユーザIDを取得する(ステップS81)。なお、ウィッシュリスト登録要求は、図7(E)に示すように、取引対象物件がないことを示す情報IN15が例えばログイン中のユーザにより指定された場合に送信される。次いで、システム制御部23(情報登録部236)は、ステップS81で取得された建物IDを、ステップS81で取得されたユーザIDに対応付けられたウィッシュリストに登録し(ステップS82)、図16(A)に示す処理を終了する。
次に、図16(B)を参照して、ウィッシュリスト登録後の物件情報提供処理について説明する。図16(B)は、ウィッシュリスト登録後の物件情報提供処理の一例を示すフローチャートである。
図16(B)に示す処理は、ウィッシュリスト登録後に取引対象物件の発生が検知された場合に開始される。例えば、システム制御部23は、所定時間間隔で、建物情報データベース221を参照し、戸の固有情報中の取引対象無が取引対象有に変化(例えば前回の参照から変化)していれば、取引対象物件の発生を検知する。これにより、図16(B)に示す処理が開始されると、システム制御部23(情報取得・提示部235)は、発生した取引対象物件の戸IDに対応付けられた建物IDを建物情報データベース221から取得する(ステップS91)。つまり、発生した取引対象物件を有する建物の建物IDが取得される。
次いで、システム制御部23(情報取得・提示部235)は、ステップS91で取得された建物IDを登録しているウィッシュリストをユーザ情報データベース223から特定する(ステップS92)。次いで、システム制御部23(情報取得・提示部235)は、ステップS92で特定されたウィッシュリストに対応付けられたユーザ情報をユーザ情報データベース223から取得する(ステップS93)。次いで、システム制御部23(情報取得・提示部235)は、ステップS93で取得されたユーザ情報にしたがって、上記発生した取引対象物件の固有情報を、携帯端末1のユーザへ通知する(ステップS94)。これにより、携帯端末1のユーザが例えば散歩中に興味をもった建物内で、後から取引対象物件が発生した場合に当該取引対象物件の固有情報を当該ユーザに対して迅速に提示することができる。例えば、システム制御部23(情報取得・提示部235)は、当該ユーザ情報に含まれるメールアドレス宛てに、上記発生した取引対象物件の固有情報を送信することで携帯端末1のユーザへ通知する。或いは、システム制御部23(情報取得・提示部235)は、当該ユーザ情報に含まれるユーザID及びパスワードにより携帯端末1からログインした際に、上記発生した取引対象物件の固有情報を送信することで携帯端末1のユーザへ通知する。
以上説明したように、上記実施形態によれば、情報提供サーバ2は、携帯端末1の端末位置情報と、カメラ13により撮像された建物までの距離情報と、当該建物の方位情報とから特定された建物位置情報に基づいて建物の写真画像を検索し、検索された写真画像に表れる建物と、上記撮像画像に表れる建物とが一致すると判定した場合に、当該建物の建物情報を携帯端末1の画面に表示させるように構成したので、携帯端末1のカメラ13により撮像された建物について正確な建物情報を表示させることができる。このため、携帯端末1を持つユーザは、例えば散歩中に注目する建物に対して携帯端末1を向けることで撮像され画面に表示された建物ついての正確な建物情報を確認することができ、しかも、ユーザは、このように表示された建物情報が誤っているかどうかを判断しなくてもよくなる。また、上記実施形態によれば、カメラ13により撮像された建物内に取引対象物件があるか否かを示す情報を携帯端末1の画面に表示させることができるので、携帯端末1を持つユーザが例えば散歩中に賃貸物件等の取引対象物件を探す場合において画面に表示された建物内に取引対象物件があるか否かの正確な情報をユーザに提示することができる。
なお、以上のように本発明の一実施形態を説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲で上記実施形態から種々構成等に変更を加えてもよく、その場合も本発明の技術的範囲に含まれる。例えば、図9に示すステップS23において写真画像が検索されたと判定された場合にステップS26へ進まず、ステップS33へ進むように構成してもよい。或いは、図9に示すステップS21において建物位置情報が特定された場合にステップS22へ進まず、図13に示すステップS51へ進むように構成してもよい。この場合において、撮像画像に表れる建物の周辺部分を一致判定に利用できない場合、ステップS56においてパノラマ写真画像に表れる建物と撮像画像に表れる建物との一致判定を行うように構成してもよい。
また、図9に示すステップS32において候補リストに登録されたものが異なる複数の建物IDである(つまり、一致すると判定された建物の写真画像が複数ある)と判定された場合にステップS33へ進まず、撮像画像との一致度(建物の特徴量の一致度)が最も高い写真画像に対応付けられた建物IDを取得してステップS43へ進み、当該建物IDに対応する建物情報を取得するように構成してもよい。或いは、図9に示すステップS41において候補リストに登録されたものが異なる複数の建物IDであると判定された場合に「パノラマ写真画像を利用した建物特定処理」へ移行せず、撮像画像との一致度(建物及びその周辺部分の特徴量の一致度)が最も高い写真画像に対応付けられた建物IDを取得してステップS43へ進み、当該建物IDに対応する建物情報を取得するように構成してもよい。