画像検索装置および画像検索プログラム
【課題】被写体の位置の指定によって,被写体が写っている画像を検索できるシステムを提供する。
【解決手段】画像取得部1は,画像データとともに,その画像データの撮影位置情報と撮影方向範囲情報とを取得し,データ蓄積部2はそれらのデータを蓄積する。位置指定部3が,利用者が指定する検索対象物の位置を入力すると,データ検索部4は,その指定された位置が画像内に含まれる画像データを,画像データの撮影位置情報と撮影方向範囲情報とをもとにデータ蓄積部2から検索する。データ表示部5は,検索された画像データを表示する。
【解決手段】画像取得部1は,画像データとともに,その画像データの撮影位置情報と撮影方向範囲情報とを取得し,データ蓄積部2はそれらのデータを蓄積する。位置指定部3が,利用者が指定する検索対象物の位置を入力すると,データ検索部4は,その指定された位置が画像内に含まれる画像データを,画像データの撮影位置情報と撮影方向範囲情報とをもとにデータ蓄積部2から検索する。データ表示部5は,検索された画像データを表示する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は,蓄積された画像を検索する画像検索装置および画像検索プログラムに関するものである。
【背景技術】
【0002】
特許文献1に記されているように,GPS(Global Positioning System )から得られる位置情報を画像情報と同期させて記録する技術は従来からある。
【0003】
画像データの記録に当たっては,「Exif」と呼ばれる仕様が規定されていて実際に広く使われているが,そのExifにおいて,撮影時のGPS位置情報(緯度,経度,移動方向など)の記録フォーマットも規定されている(非特許文献1,第55ページ参照)。実際にこのフォーマットに基づき,位置情報が付与された画像データを撮影する機器も市販されている。なお,非特許文献1は,“http://it.jeita.or.jp/document/publica/standard/exif/japanese/Exifj.pdf ”からダウンロード可能である。
【0004】
このような機器により撮影された,複数の位置情報付きExifフォーマットの画像データを収集して,サーバに蓄積する際に,Exifフォーマットを解析して緯度経度情報を取り出し,画像データのID(あるいはファイル名)と位置情報をデータベースによって管理することで,利用者が指定した位置(あるいは指定した位置から一定距離内)で撮影された画像データのみを検索して表示するような画像検索装置を構成することが可能であった。
【0005】
他にも,画像データが多数蓄積された画像データベースから,利用者が検索をする方法としては,蓄積された画像に情報を付与する(一般に「タグ付け」と呼ばれる)ことにより,そのタグを検索することで検索を行うという方法も知られている。例えば,「富士山」というキーワードを入力して検索を行うと,「富士山」というタグ付けされた画像データが検索されるようなサービスを提供するシステムが存在する。
【0006】
画像データとしては,広角レンズあるいは魚眼レンズを装着したカメラで撮影することにより,広角な,すなわち,多数の被写体を含んだ画像データを取得することが可能である。
【0007】
さらに,特許文献2の第4段落から第6段落および図4に記載されているように,このようなレンズを用いるのではなく,同一地点から撮影されたカメラを水平あるいは垂直方向に回転して得られる画像を合成することにより,同様に多数の被写体を含んだパノラマ画像データを取得することも可能である。
【特許文献1】特開平7−123348号公報
【特許文献2】特開平11−15953号公報
【非特許文献1】「ディジタルスチルカメラ用画像ファイルフォーマット規格(Exif)Version 2.1 」,社団法人 日本電子工業振興協会,平成10年12月改正,P.55
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかしながら,これらの従来技術により管理されているのは,撮影したカメラの位置であって,被写体の位置ではない。そのため,利用者が,特定の被写体が撮影された画像データを,その被写体の存在する位置を指定することで検索することはできない。
【0009】
被写体がカメラからあまり離れていない場合には,被写体の位置をカメラの位置として近似し,適当な閾値を設定することで,実質的に目的とする効果(特定の被写体の検索結果)を得ることができる。例えば,ある特定の電柱位置から,30m以内の位置で撮影された画像を検索すると,その電柱が撮影されている可能性が高い画像データを検索することができる。しかしながら,この方法では,例えばその電柱を背にして撮影された画像(当然,当該電柱は写っていない)も検索結果に含まれてしまうという問題がある。
【0010】
すなわち,このような従来技術では,検索したい被写体が写っていない画像が検索結果に含まれてしまうという課題がある。
【0011】
タグ付けによる方法では,このようなカメラと被写体との距離とは関係なく検索を行うことができるが,そのためには,データの蓄積時に被写体に関するタグ付けを行わなくてはならない。しかしながら,一般に通常撮影された画像には多数の被写体が含まれているのに対し,それらすべてをタグとして付与することは困難である。特に,撮影者が意図せずに写りこんだ被写体(例えば富士山を撮影したときにたまたま写った電柱など)については,タグ付けされないため,検索結果に含まれることはない。
【0012】
すなわち,このような従来技術では,検索したい被写体が写っている画像が検索結果に含まれないという課題がある。
【0013】
また,以上のように検索結果に含まれるか否かの課題のほかに,特に広角やパノラマ画像のように多数の被写体が含まれる画像の場合,検索対象がその画像上のどこに含まれるかについて識別が困難であるという課題もある。
【0014】
本発明は,上記課題の解決を図り,カメラの位置ではなく,被写体の位置の指定によって,被写体が写っている画像を検索することができるシステムを提供することを目的としている。
【課題を解決するための手段】
【0015】
本発明は,上記課題を解決するため,画像に対して,カメラの撮影位置(緯度経度)と,撮影方向(左右)の情報を付加情報として蓄積しておく。撮影対象の位置(経度緯度)が指定されると,カメラ位置と撮影方向から,指定された撮影対象が写っている画像を検索する。
【0016】
すなわち,本発明は,画像データとともに,その画像データの撮影位置情報と撮影方向範囲情報とを取得する画像取得部と,前記画像取得部により取得されたデータを蓄積するデータ蓄積部と,検索対象物の位置を入力装置から入力して指定する位置指定部と,前記位置指定部により指定された位置が前記画像データの画像内に含まれるかどうかを,前記画像データとともに前記データ蓄積部に蓄積された撮影位置情報と撮影方向範囲情報とに基づいて判別し,前記指定された位置が画像内に含まれる画像データを前記データ蓄積部から検索するデータ検索部と,検索された画像データを表示装置に出力するデータ表示部とを備えることを特徴とする。
【0017】
これによって,本発明は,カメラの位置ではなく,被写体の位置の指定によって,被写体が写っている画像を検索することができる。
【0018】
上記発明においては,前記データ検索部が前記撮影位置情報と撮影方向範囲情報とに基づいて画像データを検索する条件,すなわち前記位置指定部により指定された位置が前記画像データの画像内に含まれるかどうかを判別する条件としては,前記指定された位置が画像の左端方向と右端方向の間に入っており,かつ前記指定された位置が前記撮影位置から所定の距離の範囲内にあるという条件を用いることができる。
【0019】
所定の距離については,あらかじめ一定値を定めておいてもよいし,利用者に事前にまたは検索時に指定させてもよい。これにより,画像にタグ付けを行わなくても,検索対象物が写っている蓋然性の高い画像を選び出すことができる。
【0020】
また,上記発明において,前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,画像内の前記指定された位置を指す方向にマークを付加して表示することも好適である。これにより,検索結果の画像が特に広角やパノラマ画像のように多数の被写体が含まれる画像である場合に,利用者は,検索対象物がその画像上のどこに含まれるかについて容易に識別できるようになる。
【0021】
また,上記発明において,前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,画像内の前記指定された位置を指す方向が表示画面上で所定のオフセット位置になるように表示位置を調整して表示することも好適である。これにより,表示画面上の決まった位置に検索対象物を表示させることができ,特に検索結果が多く出力されるような場合に,検索対象物を見やすく表示させることができる。
【0022】
また,上記発明において,前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,撮影位置から前記指定された位置までの方向を所定の順序でソートして表示することも好適である。これにより,特に検索結果が多く出力されるような場合に,カメラとそれぞれの画像における検索対象物の方向的な位置関係を把握しやすくなる。
【発明の効果】
【0023】
本発明によれば,検索したい撮影対象が写っている画像をその撮影対象の位置から容易に検索することができるようになる。
【発明を実施するための最良の形態】
【0024】
以下,図面を用いて本発明の実施の形態について説明する。
【0025】
図1は,本発明の全体の構成図を示す。図1において,画像取得部1は,画像データとともに,その画像データの撮影位置情報と撮影方向範囲情報とを取得する手段である。データ蓄積部2は,画像取得部1が取得した画像データと,その付加情報である撮影位置情報と撮影方向範囲情報とを蓄積する。位置指定部3は,利用者が指定する検索対象物の位置を入力装置から入力し,検索する画像を指定する手段である。データ検索部4は,位置指定部3により指定された位置が画像内に含まれる画像データを,データ蓄積部2から検索する手段である。データ検索部4は,撮影位置・方向判定部41を有し,位置指定部3により指定された位置が画像内に含まれるかどうかを,撮影位置・方向判定部41による撮影位置と撮影方向範囲の検索条件の判定により決定する。データ表示部5は,データ検索部4が検索したデータを表示装置に表示する手段である。
【0026】
なお,位置指定部3が指定位置を入力する入力装置およびデータ表示部5がデータを表示する表示先の表示装置は,ネットワークを介して接続される端末であってもよい。
【0027】
まず,画像取得部1の構成例について述べる。図2は,本実施の形態における画像取得部1の構成例を示している。
【0028】
画像取得部1における画像,位置,方向情報の入力方法として,例えば図2(A)に示すようなセンサを利用する方法や,図2(B)に示すような車両に搭載した機器を利用する方法を用いることができる。
【0029】
図2(A)では,画像を取得するための装置として,デジタルカメラ102を用い,また,位置の取得にはGPS装置101を用いている。さらに,方向の取得には,ジャイロあるいは地磁気センサ103といった方向を検知することができるセンサが市販されているので,これらのセンサをデジタルカメラ102に取り付け,デジタルカメラ102による画像の取得と同期して方向も取得できるようにしている。取得した情報は,メモリカード104に記録され,メモリカード104を介して,または,有線もしくは無線のインタフェースを介して処理用パーソナルコンピュータ(PC)10に取り込まれる。
【0030】
なお,以下では,方向については図3に示すような記法を用いて説明する。すなわち,本実施の形態では,方向については真北方向を0度とし,時計回りに真北方向からの角度により記述する。例えば図3に示すD1の南東方向は135度であり,D2の真西方向は270度として記述する。
【0031】
図2(B)に示す例では,GPS装置112とデジタルカメラ113とを車両111(自動車を想定)に固定して設置し,車両111の移動とともに画像データを取得するという方法を用いる。方向については,次のようにして取得する。
【0032】
図4は,車両に搭載した機器による方向の取得方法を説明する図である。図4では,車両111を真上から見た様子を表している。デジタルカメラ113は,車両111の進行方向に対してα度(この例ではα=90)で固定して取り付けられるものとする。画像はデジタルカメラ113により取得し,位置はGPS装置112により取得する。
【0033】
GPS装置112により取得した現在位置と,直前の位置との差分から,その差分がゼロでなければ,その間の移動方向を計算することが可能である。GPSの位置取得周期(通常一秒程度)は,車両111が方向を変える時間に比べて短いため,この差分により求められる方向は,その瞬間の車両111の方向として近似しても実用上問題ない。車両111が停止している場合には差分がゼロとなるが,車両111(自動車を想定)は,位置を変えずに方向のみを変えることは原則不可能なので,ゼロでない直近の差分から得られる方向を使うことができる。このようにして,GPSのデータのみから,車両111の方向を求めることができる。
【0034】
デジタルカメラ113は車両111に固定して設置してあるため,車両111の進行方向に対するデジタルカメラ113の向きは不変であるので,その値を加算することで,デジタルカメラ113の向きを算出することが可能である。例えば図4(B)の場合の,GPSの移動差分から得られる車両進行方向がt度であるとすると,デジタルカメラ113の撮影方向は,
撮影方向=(t+α) mod 360度
となる。ここで,「mod 360 」は,360で割ったときの剰余である。
【0035】
なお,非特許文献1に記載されているように,Exifフォーマットには,位置情報のほか,進行方向や撮影した画像の方向を格納するフォーマットも規定されているため,これらのデータは,Exifフォーマットとして画像データとともにメモリカード114等へ格納することができる。
【0036】
このようにして取得された画像データ・位置データ・カメラ方向データは,メモリカード104,114などを通じて,方向範囲を計算するための処理用PC10に送られ,方向範囲計算部11において,カメラ水平画角からの方向範囲の計算が行われる。もちろん,ここまでの計算を,小型可搬なPCで撮影と同時に行うように構成することも可能である。
【0037】
図5は,画像の撮影方向範囲の取得方法を説明する図である。一般に,カメラで撮影される画像に写される光景の範囲を角度で表したものを画角と呼ぶが,この値は,カメラの構造と取り付けたレンズにより決まった値となる。そこで,方向範囲計算部11では,この画角の値をもとに,方向範囲を示すための左端方向および右端方向を,次のように計算することができる。
【0038】
図5(A)に示すように,カメラの撮影方向をa度,カメラの水平方向の画角をs度とする。画像の左端方向と右端方向は,図5(B)に示す式から求められる。すなわち,左端方向は,カメラ中心から見て「(a−s/2) mod 360度」となる。また,右端方向は,カメラ中心から見て「(a+s/2) mod 360度」となる。
【0039】
なお,画像取得部1の構成に当たっては,オプションとしてパノラマ合成部12を設けることもできる。パノラマ合成部12では,特許文献2の方法により複数の画像をパノラマ合成して,より広角の画像を得る。この場合には,パノラマ作成の過程でどの画像を組み合わせたかは分かっているので,その左端方向,右端方向の最大値,最小値を保持することにより,最終的に得られるパノラマ画像の左端方向,右端方向を求めることができる。
【0040】
画像取得部1では,以上のようにして,画像データと,画像の位置(緯度経度)と,画像の左端および右端の方向を取得する。
【0041】
図6は,本実施の形態において画像取得部1以外の構成を,1台のコンピュータで実現する場合の例を示している。
【0042】
本実施の形態で使用するコンピュータ60は,命令に従って動作を実行するために必要なCPUやメモリのほかに,画像等のデジタルデータを蓄積するためのハードディスク装置(HDD)20と,利用者に対して情報を表示するためのディスプレイ50と,利用者が情報を入力するためのマウス等のポインティングデバイス30を備えている。
【0043】
まず,データ蓄積部2の構成例について述べる。データ蓄積部2は,HDD20とそれを制御するための入出力機能および一般に市販されているデータベースマネジメントシステム(DBMS)21として実現できる。すなわち,画像取得部1により求められた画像データをHDD20上の特定のフォルダ上に,例えばJPEG形式のファイルとして蓄積し,撮影位置情報と撮影方向情報については,図7に示すようなDBMS21上のテーブルとして実現することができる。
【0044】
図7に示すテーブルは,画像データと位置情報・方向情報を保存するための位置・方向情報管理テーブルである。この例では,画像データ自体はJPEG形式で特定のフォルダに保存されていることを前提として,画像ファイル名を画像データの代わりに保存する実施方法を記載しているが,画像データのバイナリデータ自体をDBMS21で保存する方法も採り得る。
【0045】
次に位置指定部3の構成例について述べる。位置指定部3としては,検索したい被写体がある位置を緯度経度で指定することが必要なので,もっとも簡易な実施例としては,コンピュータ60に接続されたキーボードにより,数値を直接入力できるようにすればよい。
【0046】
より実用的な位置指定部3の実施例としては,ディスプレイ50上に地図データを表示し,利用者の操作によって,拡大・縮小・スクロール表示や,住所やランドマークなどを指定して検索することができるソフトウェアを利用する方法もある。このようなソフトウェアは,デジタル地図ソフトとして,多くのものが出回っており市販もされている。
【0047】
図8は,位置指定部3による位置指定情報の入力画面の例を示している。また,図9は,位置指定部3の処理フローチャートを示している。
【0048】
位置指定部3は,図8に示すように,指定された位置の地図を画面に表示するとともに,デジタル地図ソフトを機能拡張し,例えば「被写体検索」のような特定のメニューも表示する。利用者が「被写体検索」メニューを選択すると,被写体検索メニュー状態になり(ステップS10),この状態で利用者が画面上をマウス等のポインティングデバイス30でクリックすると,位置指定部3は,画面上のマウス位置から地図上の緯度経度を求める(ステップS11)。次に,位置指定部3は,データ検索部4を呼び出し,指定された緯度経度をデータ検索部4に渡す(ステップS12)。ディスプレイ50上のポインタの位置から地図上の位置(緯度経度)への変換は,その時点の表示状態をデジタル地図ソフトが変換パラメータとして保持しており,その機能を利用することで変換することができる。
【0049】
次に,データ検索部4の構成例について述べる。図10は,緯度経度から局所直交座標系への変換方法を説明する図,図11は,検索条件の例を説明する図である。
【0050】
まず,データ検索部4では,2点の緯度経度により,方向や距離を求める必要がある。厳密な計算のためには,地球の厳密な形状の解析が必要であるが,図10では,その近似方法について記してある。すなわち,地球は,一周が4万kmの球体であるとみなすことができる。また,局所的な範囲(例えば基点から10km以内の範囲等)においては,その球体の表面を,平面として近似することができる。この場合,次のような計算式により,距離や方向を求めることができる。なお,以下ではcosやarctan等の三角関数は,ラジアン角度ではなく,360度法により計算されるものとして記載してある。
【0051】
P0 を地図上の基点とし,その緯度をα,経度をβとする。P1 を対象点とし,その緯度をφ,経度をψとする。地球の1周の距離をEr [m]とすると,基点P0 における経度1度当たりの距離は,Er ×cos(α)×1/360mであり,緯度1度当たりの距離は,Er ×1/360mとなる。
【0052】
基点P0 から対象点P1 への南北方向の距離Dn (北向きを正とする)は,次式により求まる。
【0053】
Dn (φ)=Er ×(φ−α)/360
基点P0 から対象点P1 への東西方向の距離De (東向きを正とする)は,次式により求まる。
【0054】
De (ψ)=Er ×cos(α)×(ψ−β)/360
基点P0 から対象点P1 への距離Dは,次式により求まる。
【0055】
D(φ,ψ)=Er ×(Dn (φ)2 +De (ψ)2 )1/2
基点P0 から対象点P1 への方向θ(図3の記法参照)は,次式により求まる。
【0056】
・De ≠0の場合(つまり,ψ≠βの場合)
θ(φ,ψ)=arctan(Dn (φ)/De (ψ))
・De =0の場合(つまり,ψ=βの場合)
θ(φ,ψ)=0度(真北),または,θ(φ,ψ)=180度(真南)
なお,このときθが0度であるか180度であるかは,φとαの大小関係により判定することができる。
【0057】
対象点P1 から基点P0 への方向θ′は,θと向きが180度変わるので,次のようになる。
【0058】
θ′(φ,ψ)=(θ(φ,ψ)+180) mod 360
データ検索部4では,画像データの検索時に各画像データが指定された位置をその画像方向範囲内に含むかどうかの判定が必要になる。図11(A)に示すように,カメラ位置を(Cx ,Cy )とし,画像の左端方向をTl ,右端方向をTr とする。また,利用者が指定した指定位置を(α,β)とする。データ検索部4の判定では,画像方向範囲が,図11(B)に示すように0度(真北方向)をまたぐ可能性を考慮する必要がある。図11(A)の場合をCase1,図11(B)の場合をCase2として説明する。
【0059】
検索のための条件としては,例えば方向の条件(条件1)および距離の条件(条件2)を用いる。
[条件1]:カメラから見て,指定位置が左端方向と右端方向の範囲に入っている。
[条件2]:カメラから見て,指定位置が距離R以内に入っている(Rは閾値)。
【0060】
条件1では,θ′(CX ,Cy )が左端方向と右端方向の間に入っているかどうかの判定となる。そこで,Case1(Tl <Tr のとき)では,次の条件式に合致するかどうかを判定する。
【0061】
Tl ≦θ′(CX ,Cy )≦Tr
Case2(Tl >Tr のとき;0度をまたいでいるとき)では,次の条件式に合致するかどうかを判定する。
【0062】
Tl ≦θ′(CX ,Cy )<360 または 0≦θ′(CX ,Cy )≦Tr
また,条件2は,カメラから見て指定位置が距離R以内に入っているかどうかであるから,次の条件式に合致するかどうかを判定する。
【0063】
D(φ,ψ)≦R
このように,距離については,ある閾値Rを条件として設けてあるが,このRについては,本発明の実施目的に合わせて,適宜設定してもよいし,検索のたびに,利用者が入力できるようにしてもよい。利用者がRを入力できるようにする場合には,例えば図8に示す画面における被写体検索メニューのサブメニューとして,Rの値を入力できるようにする。
【0064】
図12は,以上の検索条件に従って画像データを検索するデータ検索部4の処理フローチャートである。
【0065】
まず,データ検索部4は,位置指定部3から受け取った引数から,指定位置の緯度αと経度βを取得する(ステップS20)。次に,取得した緯度αと経度βから,距離の条件(上記条件2)を,SQL(検索言語)のwhere節にして,レコード検索するように,SQL文を設定する(ステップS21)。設定したSQL文をデータ蓄積部2を構成するDBMS21へ送り,指定位置が撮像されている画像データの検索を要求する(ステップS22)。
【0066】
次に,DBMS21からの検索結果のそれぞれについて,ステップS231〜S233の繰り返し処理を実行する(ステップS23)。なお,検索結果は,図7に示す位置・方向情報管理テーブルのレコードである。まず,検索結果の左端方向Tl と右端方向Tr から,θ′(Cx ,Cy )を計算する(ステップS231)。次に,方向の条件(上記条件1)を満たすかどうかを判定する(ステップS232)。条件を満たす場合には,判定対象の画像データを検索結果として残し,条件を満たさない場合には,検索結果から判定対象の画像データを削除する(ステップS233)。以上の処理を,すべての検索結果について繰り返す。
【0067】
その後,残った検索結果のデータをデータ表示部5へ渡す(ステップS24)。
【0068】
図13は,検索結果の例を示す。例えば図13(A)に示されるような地図上で,P0 の位置が指定されたとする。この指定位置P0 の緯度経度情報をもとに,一定の距離Rの範囲内で,この指定位置P0 が画像の左端と右端の範囲に収まっている画像が,図7に示す位置・方向情報管理テーブルから検索されることになる。この例では,検索結果として,R1,R2,R3の3枚の画像が得られている。
【0069】
最後に,データ表示部5の構成例について述べる。図14は,データ表示部5の処理フローチャートである。この処理で使われる,画像の表示や,他の画像の重畳,表示位置の指定などは,Windows(登録商標)OSなどの標準的な機能を利用することで実施できる。
【0070】
まず,データ表示部5は,データ検索部4から受け取った検索結果のデータを,θ′をキーとしてソートする(ステップS30)。その後,検索結果の各データについて,ステップS311〜S314の処理を繰り返す(ステップS31)。この繰り返し処理は,利用者からの指示に従って,1画像ずつ処理を進めてもよいし,繰り返し処理を連続して行い,検索結果の画像を例えばサムネイル表示のように一覧表示するようにしてもよい。
【0071】
繰り返し処理では,検索結果のデータ中の画像ファイル名をもとに画像ファイルを表示する(ステップS311)。次に,画像内のθ′の左端からのピクセル数pを求める(ステップS312)。
【0072】
ここでのピクセル数pの求め方を説明する。図14の下側に示すように画像全体の横のピクセル数をPXとする。求め方は,方向の条件(条件1)によって,次のように分類される。
・Case1(Tl ≦θ′≦Tr の場合)
p=PX×(θ′−Tl )/(Tr −Tl )
・Case2−1(Tl >Tr かつTl ≦θ′<360の場合)
p=PX×(θ′−Tl )/(Tr +360−Tl )
・Case2−2(Tl >Tr かつ0≦θ′≦Tr の場合)
p=PX×(θ′+360−Tl )/(Tr +360−Tl )
以上の式により,ピクセル数pを算出したならば,求めた画像中のpの位置に,指定位置の方向を示すマークを描画する(ステップS313)。また,pがディスプレイ画面のoffset位置にくるように,(offset−p)ピクセル分だけ画像の表示位置を水平にずらす(ステップS314)。なお,(offset−p)が正なら,画像を右方向にずらし,(offset−p)が負なら,画像を左方向にずらすことになる。繰り返し処理では,以上の処理を検索結果の画像ごとに繰り返す。
【0073】
図15は,画像表示位置の調整例を示す図である。表示枠の横幅をWx ピクセルとする。表示枠は,Windows(登録商標)における表示ウィンドウあるいは単なる表示画面である。offsetは,表示枠のどの位置に画像を表示するかの基準を示すものであり,offsetの決め方としては,次のような方法を用いることができる。
〔offsetの決め方1〕
offsetを画面中央に固定する。offset=Wx /2 とする。
〔offsetの決め方2〕
offsetを必ず固定値とする。例えば,offset=100とする。
〔offsetの決め方3〕
表示に先立ち,利用者がマウス等により指定した位置を使う。offset=(マウスポインタの横座標)とする。
【0074】
図14のステップS314の処理は,図15に示すように,offsetの位置にマークM1,M2がくるように表示位置を調整する処理である。
【0075】
次に,図13に示したような利用者の指定位置P0 に対して,データ検索部4により検索結果R1,R2,R3の画像データが得られたときのデータ表示部5による表示例を,図16に示す。
【0076】
検索結果R1,R2,R3は,指定位置P0 から撮影位置への方向θ′をキーとして,真北方向から時計回りにソートされて表示されるため,図16に示すように,検索結果R3の画像,検索結果R2の画像,検索結果R1の画像の順番で表示される。なお,θ′の順番ではなく,これと逆方向のθの昇順で検索結果を表示するように定めてもよい。あるいは,真北方向以外の方向から時計回りまたは反時計回りにソートすることもできる。
【0077】
検索結果の各画像の上端および下端には,指定位置P0 の方向を示すマークM11〜M32が付与される。また,これらの各マークM11〜M32の位置が,あらかじめ定められた表示枠内の表示位置を示すoffsetもしくは利用者が指定したoffsetの位置に合うように,画像が表示される。
【0078】
以上の画像検索の処理は,コンピュータとソフトウェアプログラムとによって実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも,ネットワークを通して提供することも可能である。
【0079】
なお,本実施例では,画像取得部1以外の構成を,1台のコンピュータで実施される例について記してきたが,各機能を別個のコンピュータにより構成する実施例へも容易に応用することができる。
【図面の簡単な説明】
【0080】
【図1】本発明の全体を示す構成図である。
【図2】本実施の形態における画像取得部の構成例を示す図である。
【図3】方向についての記法を説明する図である。
【図4】車両に搭載した機器による方向の取得方法を説明する図である。
【図5】画像の撮影方向範囲の取得方法を説明する図である。
【図6】本実施の形態において画像取得部以外の構成を,1台のコンピュータで実現する場合の例を示す図である。
【図7】DBMSで管理する位置・方向情報管理テーブルの例を示す図である。
【図8】位置指定部による位置指定情報の入力画面の例を示す図である。
【図9】位置指定部の処理フローチャートである。
【図10】緯度経度から局所直交座標系への変換方法を説明する図である。
【図11】検索条件の例を説明する図である。
【図12】データ検索部の処理フローチャートである。
【図13】検索結果の例を示す図である。
【図14】データ表示部の処理フローチャートである。
【図15】画像表示位置の調整例を示す図である。
【図16】データ表示部による表示例を示す図である。
【符号の説明】
【0081】
1 画像取得部
2 データ蓄積部
3 位置指定部
4 データ検索部
41 撮影位置・方向判定部
5 データ表示部
【技術分野】
【0001】
本発明は,蓄積された画像を検索する画像検索装置および画像検索プログラムに関するものである。
【背景技術】
【0002】
特許文献1に記されているように,GPS(Global Positioning System )から得られる位置情報を画像情報と同期させて記録する技術は従来からある。
【0003】
画像データの記録に当たっては,「Exif」と呼ばれる仕様が規定されていて実際に広く使われているが,そのExifにおいて,撮影時のGPS位置情報(緯度,経度,移動方向など)の記録フォーマットも規定されている(非特許文献1,第55ページ参照)。実際にこのフォーマットに基づき,位置情報が付与された画像データを撮影する機器も市販されている。なお,非特許文献1は,“http://it.jeita.or.jp/document/publica/standard/exif/japanese/Exifj.pdf ”からダウンロード可能である。
【0004】
このような機器により撮影された,複数の位置情報付きExifフォーマットの画像データを収集して,サーバに蓄積する際に,Exifフォーマットを解析して緯度経度情報を取り出し,画像データのID(あるいはファイル名)と位置情報をデータベースによって管理することで,利用者が指定した位置(あるいは指定した位置から一定距離内)で撮影された画像データのみを検索して表示するような画像検索装置を構成することが可能であった。
【0005】
他にも,画像データが多数蓄積された画像データベースから,利用者が検索をする方法としては,蓄積された画像に情報を付与する(一般に「タグ付け」と呼ばれる)ことにより,そのタグを検索することで検索を行うという方法も知られている。例えば,「富士山」というキーワードを入力して検索を行うと,「富士山」というタグ付けされた画像データが検索されるようなサービスを提供するシステムが存在する。
【0006】
画像データとしては,広角レンズあるいは魚眼レンズを装着したカメラで撮影することにより,広角な,すなわち,多数の被写体を含んだ画像データを取得することが可能である。
【0007】
さらに,特許文献2の第4段落から第6段落および図4に記載されているように,このようなレンズを用いるのではなく,同一地点から撮影されたカメラを水平あるいは垂直方向に回転して得られる画像を合成することにより,同様に多数の被写体を含んだパノラマ画像データを取得することも可能である。
【特許文献1】特開平7−123348号公報
【特許文献2】特開平11−15953号公報
【非特許文献1】「ディジタルスチルカメラ用画像ファイルフォーマット規格(Exif)Version 2.1 」,社団法人 日本電子工業振興協会,平成10年12月改正,P.55
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかしながら,これらの従来技術により管理されているのは,撮影したカメラの位置であって,被写体の位置ではない。そのため,利用者が,特定の被写体が撮影された画像データを,その被写体の存在する位置を指定することで検索することはできない。
【0009】
被写体がカメラからあまり離れていない場合には,被写体の位置をカメラの位置として近似し,適当な閾値を設定することで,実質的に目的とする効果(特定の被写体の検索結果)を得ることができる。例えば,ある特定の電柱位置から,30m以内の位置で撮影された画像を検索すると,その電柱が撮影されている可能性が高い画像データを検索することができる。しかしながら,この方法では,例えばその電柱を背にして撮影された画像(当然,当該電柱は写っていない)も検索結果に含まれてしまうという問題がある。
【0010】
すなわち,このような従来技術では,検索したい被写体が写っていない画像が検索結果に含まれてしまうという課題がある。
【0011】
タグ付けによる方法では,このようなカメラと被写体との距離とは関係なく検索を行うことができるが,そのためには,データの蓄積時に被写体に関するタグ付けを行わなくてはならない。しかしながら,一般に通常撮影された画像には多数の被写体が含まれているのに対し,それらすべてをタグとして付与することは困難である。特に,撮影者が意図せずに写りこんだ被写体(例えば富士山を撮影したときにたまたま写った電柱など)については,タグ付けされないため,検索結果に含まれることはない。
【0012】
すなわち,このような従来技術では,検索したい被写体が写っている画像が検索結果に含まれないという課題がある。
【0013】
また,以上のように検索結果に含まれるか否かの課題のほかに,特に広角やパノラマ画像のように多数の被写体が含まれる画像の場合,検索対象がその画像上のどこに含まれるかについて識別が困難であるという課題もある。
【0014】
本発明は,上記課題の解決を図り,カメラの位置ではなく,被写体の位置の指定によって,被写体が写っている画像を検索することができるシステムを提供することを目的としている。
【課題を解決するための手段】
【0015】
本発明は,上記課題を解決するため,画像に対して,カメラの撮影位置(緯度経度)と,撮影方向(左右)の情報を付加情報として蓄積しておく。撮影対象の位置(経度緯度)が指定されると,カメラ位置と撮影方向から,指定された撮影対象が写っている画像を検索する。
【0016】
すなわち,本発明は,画像データとともに,その画像データの撮影位置情報と撮影方向範囲情報とを取得する画像取得部と,前記画像取得部により取得されたデータを蓄積するデータ蓄積部と,検索対象物の位置を入力装置から入力して指定する位置指定部と,前記位置指定部により指定された位置が前記画像データの画像内に含まれるかどうかを,前記画像データとともに前記データ蓄積部に蓄積された撮影位置情報と撮影方向範囲情報とに基づいて判別し,前記指定された位置が画像内に含まれる画像データを前記データ蓄積部から検索するデータ検索部と,検索された画像データを表示装置に出力するデータ表示部とを備えることを特徴とする。
【0017】
これによって,本発明は,カメラの位置ではなく,被写体の位置の指定によって,被写体が写っている画像を検索することができる。
【0018】
上記発明においては,前記データ検索部が前記撮影位置情報と撮影方向範囲情報とに基づいて画像データを検索する条件,すなわち前記位置指定部により指定された位置が前記画像データの画像内に含まれるかどうかを判別する条件としては,前記指定された位置が画像の左端方向と右端方向の間に入っており,かつ前記指定された位置が前記撮影位置から所定の距離の範囲内にあるという条件を用いることができる。
【0019】
所定の距離については,あらかじめ一定値を定めておいてもよいし,利用者に事前にまたは検索時に指定させてもよい。これにより,画像にタグ付けを行わなくても,検索対象物が写っている蓋然性の高い画像を選び出すことができる。
【0020】
また,上記発明において,前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,画像内の前記指定された位置を指す方向にマークを付加して表示することも好適である。これにより,検索結果の画像が特に広角やパノラマ画像のように多数の被写体が含まれる画像である場合に,利用者は,検索対象物がその画像上のどこに含まれるかについて容易に識別できるようになる。
【0021】
また,上記発明において,前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,画像内の前記指定された位置を指す方向が表示画面上で所定のオフセット位置になるように表示位置を調整して表示することも好適である。これにより,表示画面上の決まった位置に検索対象物を表示させることができ,特に検索結果が多く出力されるような場合に,検索対象物を見やすく表示させることができる。
【0022】
また,上記発明において,前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,撮影位置から前記指定された位置までの方向を所定の順序でソートして表示することも好適である。これにより,特に検索結果が多く出力されるような場合に,カメラとそれぞれの画像における検索対象物の方向的な位置関係を把握しやすくなる。
【発明の効果】
【0023】
本発明によれば,検索したい撮影対象が写っている画像をその撮影対象の位置から容易に検索することができるようになる。
【発明を実施するための最良の形態】
【0024】
以下,図面を用いて本発明の実施の形態について説明する。
【0025】
図1は,本発明の全体の構成図を示す。図1において,画像取得部1は,画像データとともに,その画像データの撮影位置情報と撮影方向範囲情報とを取得する手段である。データ蓄積部2は,画像取得部1が取得した画像データと,その付加情報である撮影位置情報と撮影方向範囲情報とを蓄積する。位置指定部3は,利用者が指定する検索対象物の位置を入力装置から入力し,検索する画像を指定する手段である。データ検索部4は,位置指定部3により指定された位置が画像内に含まれる画像データを,データ蓄積部2から検索する手段である。データ検索部4は,撮影位置・方向判定部41を有し,位置指定部3により指定された位置が画像内に含まれるかどうかを,撮影位置・方向判定部41による撮影位置と撮影方向範囲の検索条件の判定により決定する。データ表示部5は,データ検索部4が検索したデータを表示装置に表示する手段である。
【0026】
なお,位置指定部3が指定位置を入力する入力装置およびデータ表示部5がデータを表示する表示先の表示装置は,ネットワークを介して接続される端末であってもよい。
【0027】
まず,画像取得部1の構成例について述べる。図2は,本実施の形態における画像取得部1の構成例を示している。
【0028】
画像取得部1における画像,位置,方向情報の入力方法として,例えば図2(A)に示すようなセンサを利用する方法や,図2(B)に示すような車両に搭載した機器を利用する方法を用いることができる。
【0029】
図2(A)では,画像を取得するための装置として,デジタルカメラ102を用い,また,位置の取得にはGPS装置101を用いている。さらに,方向の取得には,ジャイロあるいは地磁気センサ103といった方向を検知することができるセンサが市販されているので,これらのセンサをデジタルカメラ102に取り付け,デジタルカメラ102による画像の取得と同期して方向も取得できるようにしている。取得した情報は,メモリカード104に記録され,メモリカード104を介して,または,有線もしくは無線のインタフェースを介して処理用パーソナルコンピュータ(PC)10に取り込まれる。
【0030】
なお,以下では,方向については図3に示すような記法を用いて説明する。すなわち,本実施の形態では,方向については真北方向を0度とし,時計回りに真北方向からの角度により記述する。例えば図3に示すD1の南東方向は135度であり,D2の真西方向は270度として記述する。
【0031】
図2(B)に示す例では,GPS装置112とデジタルカメラ113とを車両111(自動車を想定)に固定して設置し,車両111の移動とともに画像データを取得するという方法を用いる。方向については,次のようにして取得する。
【0032】
図4は,車両に搭載した機器による方向の取得方法を説明する図である。図4では,車両111を真上から見た様子を表している。デジタルカメラ113は,車両111の進行方向に対してα度(この例ではα=90)で固定して取り付けられるものとする。画像はデジタルカメラ113により取得し,位置はGPS装置112により取得する。
【0033】
GPS装置112により取得した現在位置と,直前の位置との差分から,その差分がゼロでなければ,その間の移動方向を計算することが可能である。GPSの位置取得周期(通常一秒程度)は,車両111が方向を変える時間に比べて短いため,この差分により求められる方向は,その瞬間の車両111の方向として近似しても実用上問題ない。車両111が停止している場合には差分がゼロとなるが,車両111(自動車を想定)は,位置を変えずに方向のみを変えることは原則不可能なので,ゼロでない直近の差分から得られる方向を使うことができる。このようにして,GPSのデータのみから,車両111の方向を求めることができる。
【0034】
デジタルカメラ113は車両111に固定して設置してあるため,車両111の進行方向に対するデジタルカメラ113の向きは不変であるので,その値を加算することで,デジタルカメラ113の向きを算出することが可能である。例えば図4(B)の場合の,GPSの移動差分から得られる車両進行方向がt度であるとすると,デジタルカメラ113の撮影方向は,
撮影方向=(t+α) mod 360度
となる。ここで,「mod 360 」は,360で割ったときの剰余である。
【0035】
なお,非特許文献1に記載されているように,Exifフォーマットには,位置情報のほか,進行方向や撮影した画像の方向を格納するフォーマットも規定されているため,これらのデータは,Exifフォーマットとして画像データとともにメモリカード114等へ格納することができる。
【0036】
このようにして取得された画像データ・位置データ・カメラ方向データは,メモリカード104,114などを通じて,方向範囲を計算するための処理用PC10に送られ,方向範囲計算部11において,カメラ水平画角からの方向範囲の計算が行われる。もちろん,ここまでの計算を,小型可搬なPCで撮影と同時に行うように構成することも可能である。
【0037】
図5は,画像の撮影方向範囲の取得方法を説明する図である。一般に,カメラで撮影される画像に写される光景の範囲を角度で表したものを画角と呼ぶが,この値は,カメラの構造と取り付けたレンズにより決まった値となる。そこで,方向範囲計算部11では,この画角の値をもとに,方向範囲を示すための左端方向および右端方向を,次のように計算することができる。
【0038】
図5(A)に示すように,カメラの撮影方向をa度,カメラの水平方向の画角をs度とする。画像の左端方向と右端方向は,図5(B)に示す式から求められる。すなわち,左端方向は,カメラ中心から見て「(a−s/2) mod 360度」となる。また,右端方向は,カメラ中心から見て「(a+s/2) mod 360度」となる。
【0039】
なお,画像取得部1の構成に当たっては,オプションとしてパノラマ合成部12を設けることもできる。パノラマ合成部12では,特許文献2の方法により複数の画像をパノラマ合成して,より広角の画像を得る。この場合には,パノラマ作成の過程でどの画像を組み合わせたかは分かっているので,その左端方向,右端方向の最大値,最小値を保持することにより,最終的に得られるパノラマ画像の左端方向,右端方向を求めることができる。
【0040】
画像取得部1では,以上のようにして,画像データと,画像の位置(緯度経度)と,画像の左端および右端の方向を取得する。
【0041】
図6は,本実施の形態において画像取得部1以外の構成を,1台のコンピュータで実現する場合の例を示している。
【0042】
本実施の形態で使用するコンピュータ60は,命令に従って動作を実行するために必要なCPUやメモリのほかに,画像等のデジタルデータを蓄積するためのハードディスク装置(HDD)20と,利用者に対して情報を表示するためのディスプレイ50と,利用者が情報を入力するためのマウス等のポインティングデバイス30を備えている。
【0043】
まず,データ蓄積部2の構成例について述べる。データ蓄積部2は,HDD20とそれを制御するための入出力機能および一般に市販されているデータベースマネジメントシステム(DBMS)21として実現できる。すなわち,画像取得部1により求められた画像データをHDD20上の特定のフォルダ上に,例えばJPEG形式のファイルとして蓄積し,撮影位置情報と撮影方向情報については,図7に示すようなDBMS21上のテーブルとして実現することができる。
【0044】
図7に示すテーブルは,画像データと位置情報・方向情報を保存するための位置・方向情報管理テーブルである。この例では,画像データ自体はJPEG形式で特定のフォルダに保存されていることを前提として,画像ファイル名を画像データの代わりに保存する実施方法を記載しているが,画像データのバイナリデータ自体をDBMS21で保存する方法も採り得る。
【0045】
次に位置指定部3の構成例について述べる。位置指定部3としては,検索したい被写体がある位置を緯度経度で指定することが必要なので,もっとも簡易な実施例としては,コンピュータ60に接続されたキーボードにより,数値を直接入力できるようにすればよい。
【0046】
より実用的な位置指定部3の実施例としては,ディスプレイ50上に地図データを表示し,利用者の操作によって,拡大・縮小・スクロール表示や,住所やランドマークなどを指定して検索することができるソフトウェアを利用する方法もある。このようなソフトウェアは,デジタル地図ソフトとして,多くのものが出回っており市販もされている。
【0047】
図8は,位置指定部3による位置指定情報の入力画面の例を示している。また,図9は,位置指定部3の処理フローチャートを示している。
【0048】
位置指定部3は,図8に示すように,指定された位置の地図を画面に表示するとともに,デジタル地図ソフトを機能拡張し,例えば「被写体検索」のような特定のメニューも表示する。利用者が「被写体検索」メニューを選択すると,被写体検索メニュー状態になり(ステップS10),この状態で利用者が画面上をマウス等のポインティングデバイス30でクリックすると,位置指定部3は,画面上のマウス位置から地図上の緯度経度を求める(ステップS11)。次に,位置指定部3は,データ検索部4を呼び出し,指定された緯度経度をデータ検索部4に渡す(ステップS12)。ディスプレイ50上のポインタの位置から地図上の位置(緯度経度)への変換は,その時点の表示状態をデジタル地図ソフトが変換パラメータとして保持しており,その機能を利用することで変換することができる。
【0049】
次に,データ検索部4の構成例について述べる。図10は,緯度経度から局所直交座標系への変換方法を説明する図,図11は,検索条件の例を説明する図である。
【0050】
まず,データ検索部4では,2点の緯度経度により,方向や距離を求める必要がある。厳密な計算のためには,地球の厳密な形状の解析が必要であるが,図10では,その近似方法について記してある。すなわち,地球は,一周が4万kmの球体であるとみなすことができる。また,局所的な範囲(例えば基点から10km以内の範囲等)においては,その球体の表面を,平面として近似することができる。この場合,次のような計算式により,距離や方向を求めることができる。なお,以下ではcosやarctan等の三角関数は,ラジアン角度ではなく,360度法により計算されるものとして記載してある。
【0051】
P0 を地図上の基点とし,その緯度をα,経度をβとする。P1 を対象点とし,その緯度をφ,経度をψとする。地球の1周の距離をEr [m]とすると,基点P0 における経度1度当たりの距離は,Er ×cos(α)×1/360mであり,緯度1度当たりの距離は,Er ×1/360mとなる。
【0052】
基点P0 から対象点P1 への南北方向の距離Dn (北向きを正とする)は,次式により求まる。
【0053】
Dn (φ)=Er ×(φ−α)/360
基点P0 から対象点P1 への東西方向の距離De (東向きを正とする)は,次式により求まる。
【0054】
De (ψ)=Er ×cos(α)×(ψ−β)/360
基点P0 から対象点P1 への距離Dは,次式により求まる。
【0055】
D(φ,ψ)=Er ×(Dn (φ)2 +De (ψ)2 )1/2
基点P0 から対象点P1 への方向θ(図3の記法参照)は,次式により求まる。
【0056】
・De ≠0の場合(つまり,ψ≠βの場合)
θ(φ,ψ)=arctan(Dn (φ)/De (ψ))
・De =0の場合(つまり,ψ=βの場合)
θ(φ,ψ)=0度(真北),または,θ(φ,ψ)=180度(真南)
なお,このときθが0度であるか180度であるかは,φとαの大小関係により判定することができる。
【0057】
対象点P1 から基点P0 への方向θ′は,θと向きが180度変わるので,次のようになる。
【0058】
θ′(φ,ψ)=(θ(φ,ψ)+180) mod 360
データ検索部4では,画像データの検索時に各画像データが指定された位置をその画像方向範囲内に含むかどうかの判定が必要になる。図11(A)に示すように,カメラ位置を(Cx ,Cy )とし,画像の左端方向をTl ,右端方向をTr とする。また,利用者が指定した指定位置を(α,β)とする。データ検索部4の判定では,画像方向範囲が,図11(B)に示すように0度(真北方向)をまたぐ可能性を考慮する必要がある。図11(A)の場合をCase1,図11(B)の場合をCase2として説明する。
【0059】
検索のための条件としては,例えば方向の条件(条件1)および距離の条件(条件2)を用いる。
[条件1]:カメラから見て,指定位置が左端方向と右端方向の範囲に入っている。
[条件2]:カメラから見て,指定位置が距離R以内に入っている(Rは閾値)。
【0060】
条件1では,θ′(CX ,Cy )が左端方向と右端方向の間に入っているかどうかの判定となる。そこで,Case1(Tl <Tr のとき)では,次の条件式に合致するかどうかを判定する。
【0061】
Tl ≦θ′(CX ,Cy )≦Tr
Case2(Tl >Tr のとき;0度をまたいでいるとき)では,次の条件式に合致するかどうかを判定する。
【0062】
Tl ≦θ′(CX ,Cy )<360 または 0≦θ′(CX ,Cy )≦Tr
また,条件2は,カメラから見て指定位置が距離R以内に入っているかどうかであるから,次の条件式に合致するかどうかを判定する。
【0063】
D(φ,ψ)≦R
このように,距離については,ある閾値Rを条件として設けてあるが,このRについては,本発明の実施目的に合わせて,適宜設定してもよいし,検索のたびに,利用者が入力できるようにしてもよい。利用者がRを入力できるようにする場合には,例えば図8に示す画面における被写体検索メニューのサブメニューとして,Rの値を入力できるようにする。
【0064】
図12は,以上の検索条件に従って画像データを検索するデータ検索部4の処理フローチャートである。
【0065】
まず,データ検索部4は,位置指定部3から受け取った引数から,指定位置の緯度αと経度βを取得する(ステップS20)。次に,取得した緯度αと経度βから,距離の条件(上記条件2)を,SQL(検索言語)のwhere節にして,レコード検索するように,SQL文を設定する(ステップS21)。設定したSQL文をデータ蓄積部2を構成するDBMS21へ送り,指定位置が撮像されている画像データの検索を要求する(ステップS22)。
【0066】
次に,DBMS21からの検索結果のそれぞれについて,ステップS231〜S233の繰り返し処理を実行する(ステップS23)。なお,検索結果は,図7に示す位置・方向情報管理テーブルのレコードである。まず,検索結果の左端方向Tl と右端方向Tr から,θ′(Cx ,Cy )を計算する(ステップS231)。次に,方向の条件(上記条件1)を満たすかどうかを判定する(ステップS232)。条件を満たす場合には,判定対象の画像データを検索結果として残し,条件を満たさない場合には,検索結果から判定対象の画像データを削除する(ステップS233)。以上の処理を,すべての検索結果について繰り返す。
【0067】
その後,残った検索結果のデータをデータ表示部5へ渡す(ステップS24)。
【0068】
図13は,検索結果の例を示す。例えば図13(A)に示されるような地図上で,P0 の位置が指定されたとする。この指定位置P0 の緯度経度情報をもとに,一定の距離Rの範囲内で,この指定位置P0 が画像の左端と右端の範囲に収まっている画像が,図7に示す位置・方向情報管理テーブルから検索されることになる。この例では,検索結果として,R1,R2,R3の3枚の画像が得られている。
【0069】
最後に,データ表示部5の構成例について述べる。図14は,データ表示部5の処理フローチャートである。この処理で使われる,画像の表示や,他の画像の重畳,表示位置の指定などは,Windows(登録商標)OSなどの標準的な機能を利用することで実施できる。
【0070】
まず,データ表示部5は,データ検索部4から受け取った検索結果のデータを,θ′をキーとしてソートする(ステップS30)。その後,検索結果の各データについて,ステップS311〜S314の処理を繰り返す(ステップS31)。この繰り返し処理は,利用者からの指示に従って,1画像ずつ処理を進めてもよいし,繰り返し処理を連続して行い,検索結果の画像を例えばサムネイル表示のように一覧表示するようにしてもよい。
【0071】
繰り返し処理では,検索結果のデータ中の画像ファイル名をもとに画像ファイルを表示する(ステップS311)。次に,画像内のθ′の左端からのピクセル数pを求める(ステップS312)。
【0072】
ここでのピクセル数pの求め方を説明する。図14の下側に示すように画像全体の横のピクセル数をPXとする。求め方は,方向の条件(条件1)によって,次のように分類される。
・Case1(Tl ≦θ′≦Tr の場合)
p=PX×(θ′−Tl )/(Tr −Tl )
・Case2−1(Tl >Tr かつTl ≦θ′<360の場合)
p=PX×(θ′−Tl )/(Tr +360−Tl )
・Case2−2(Tl >Tr かつ0≦θ′≦Tr の場合)
p=PX×(θ′+360−Tl )/(Tr +360−Tl )
以上の式により,ピクセル数pを算出したならば,求めた画像中のpの位置に,指定位置の方向を示すマークを描画する(ステップS313)。また,pがディスプレイ画面のoffset位置にくるように,(offset−p)ピクセル分だけ画像の表示位置を水平にずらす(ステップS314)。なお,(offset−p)が正なら,画像を右方向にずらし,(offset−p)が負なら,画像を左方向にずらすことになる。繰り返し処理では,以上の処理を検索結果の画像ごとに繰り返す。
【0073】
図15は,画像表示位置の調整例を示す図である。表示枠の横幅をWx ピクセルとする。表示枠は,Windows(登録商標)における表示ウィンドウあるいは単なる表示画面である。offsetは,表示枠のどの位置に画像を表示するかの基準を示すものであり,offsetの決め方としては,次のような方法を用いることができる。
〔offsetの決め方1〕
offsetを画面中央に固定する。offset=Wx /2 とする。
〔offsetの決め方2〕
offsetを必ず固定値とする。例えば,offset=100とする。
〔offsetの決め方3〕
表示に先立ち,利用者がマウス等により指定した位置を使う。offset=(マウスポインタの横座標)とする。
【0074】
図14のステップS314の処理は,図15に示すように,offsetの位置にマークM1,M2がくるように表示位置を調整する処理である。
【0075】
次に,図13に示したような利用者の指定位置P0 に対して,データ検索部4により検索結果R1,R2,R3の画像データが得られたときのデータ表示部5による表示例を,図16に示す。
【0076】
検索結果R1,R2,R3は,指定位置P0 から撮影位置への方向θ′をキーとして,真北方向から時計回りにソートされて表示されるため,図16に示すように,検索結果R3の画像,検索結果R2の画像,検索結果R1の画像の順番で表示される。なお,θ′の順番ではなく,これと逆方向のθの昇順で検索結果を表示するように定めてもよい。あるいは,真北方向以外の方向から時計回りまたは反時計回りにソートすることもできる。
【0077】
検索結果の各画像の上端および下端には,指定位置P0 の方向を示すマークM11〜M32が付与される。また,これらの各マークM11〜M32の位置が,あらかじめ定められた表示枠内の表示位置を示すoffsetもしくは利用者が指定したoffsetの位置に合うように,画像が表示される。
【0078】
以上の画像検索の処理は,コンピュータとソフトウェアプログラムとによって実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも,ネットワークを通して提供することも可能である。
【0079】
なお,本実施例では,画像取得部1以外の構成を,1台のコンピュータで実施される例について記してきたが,各機能を別個のコンピュータにより構成する実施例へも容易に応用することができる。
【図面の簡単な説明】
【0080】
【図1】本発明の全体を示す構成図である。
【図2】本実施の形態における画像取得部の構成例を示す図である。
【図3】方向についての記法を説明する図である。
【図4】車両に搭載した機器による方向の取得方法を説明する図である。
【図5】画像の撮影方向範囲の取得方法を説明する図である。
【図6】本実施の形態において画像取得部以外の構成を,1台のコンピュータで実現する場合の例を示す図である。
【図7】DBMSで管理する位置・方向情報管理テーブルの例を示す図である。
【図8】位置指定部による位置指定情報の入力画面の例を示す図である。
【図9】位置指定部の処理フローチャートである。
【図10】緯度経度から局所直交座標系への変換方法を説明する図である。
【図11】検索条件の例を説明する図である。
【図12】データ検索部の処理フローチャートである。
【図13】検索結果の例を示す図である。
【図14】データ表示部の処理フローチャートである。
【図15】画像表示位置の調整例を示す図である。
【図16】データ表示部による表示例を示す図である。
【符号の説明】
【0081】
1 画像取得部
2 データ蓄積部
3 位置指定部
4 データ検索部
41 撮影位置・方向判定部
5 データ表示部
【特許請求の範囲】
【請求項1】
画像データとともに,その画像データの撮影位置情報と撮影方向範囲情報とを取得する画像取得部と,
前記画像取得部により取得されたデータを蓄積するデータ蓄積部と,
検索対象物の位置を入力装置から入力して指定する位置指定部と,
前記位置指定部により指定された位置が前記画像データの画像内に含まれるかどうかを,前記画像データとともに前記データ蓄積部に蓄積された撮影位置情報と撮影方向範囲情報とに基づいて判別し,前記指定された位置が画像内に含まれる画像データを前記データ蓄積部から検索するデータ検索部と,
検索された画像データを表示装置に出力するデータ表示部とを備える
ことを特徴とする画像検索装置。
【請求項2】
請求項1に記載の画像検索装置において,
前記データ検索部が前記撮影位置情報と撮影方向範囲情報とに基づいて画像データを検索する条件は,前記指定された位置が画像の左端方向と右端方向の間に入っており,かつ前記指定された位置が前記撮影位置から所定の距離の範囲内にあるという条件である
ことを特徴とする画像検索装置。
【請求項3】
請求項1または請求項2に記載の画像検索装置において,
前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,画像内の前記指定された位置を指す方向にマークを付加して表示する手段を備える
ことを特徴とする画像検索装置。
【請求項4】
請求項1,請求項2または請求項3に記載の画像検索装置において,
前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,画像内の前記指定された位置を指す方向が表示画面上で所定のオフセット位置になるように表示位置を調整して表示する手段を備える
ことを特徴とする画像検索装置。
【請求項5】
請求項1,請求項2,請求項3または請求項4に記載の画像検索装置において,
前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,撮影位置から前記指定された位置までの方向を所定の順序でソートして表示する手段を備える
ことを特徴とする画像検索装置。
【請求項6】
コンピュータを,請求項1から請求項5までのいずれか1項に記載の画像検索装置が備える前記画像取得部と,前記データ蓄積部と,前記位置指定部と,前記データ検索部と,前記データ表示部として,機能させるための画像検索プログラム。
【請求項1】
画像データとともに,その画像データの撮影位置情報と撮影方向範囲情報とを取得する画像取得部と,
前記画像取得部により取得されたデータを蓄積するデータ蓄積部と,
検索対象物の位置を入力装置から入力して指定する位置指定部と,
前記位置指定部により指定された位置が前記画像データの画像内に含まれるかどうかを,前記画像データとともに前記データ蓄積部に蓄積された撮影位置情報と撮影方向範囲情報とに基づいて判別し,前記指定された位置が画像内に含まれる画像データを前記データ蓄積部から検索するデータ検索部と,
検索された画像データを表示装置に出力するデータ表示部とを備える
ことを特徴とする画像検索装置。
【請求項2】
請求項1に記載の画像検索装置において,
前記データ検索部が前記撮影位置情報と撮影方向範囲情報とに基づいて画像データを検索する条件は,前記指定された位置が画像の左端方向と右端方向の間に入っており,かつ前記指定された位置が前記撮影位置から所定の距離の範囲内にあるという条件である
ことを特徴とする画像検索装置。
【請求項3】
請求項1または請求項2に記載の画像検索装置において,
前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,画像内の前記指定された位置を指す方向にマークを付加して表示する手段を備える
ことを特徴とする画像検索装置。
【請求項4】
請求項1,請求項2または請求項3に記載の画像検索装置において,
前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,画像内の前記指定された位置を指す方向が表示画面上で所定のオフセット位置になるように表示位置を調整して表示する手段を備える
ことを特徴とする画像検索装置。
【請求項5】
請求項1,請求項2,請求項3または請求項4に記載の画像検索装置において,
前記データ表示部は,前記データ検索部により検索された画像データを表示装置に表示する際に,撮影位置から前記指定された位置までの方向を所定の順序でソートして表示する手段を備える
ことを特徴とする画像検索装置。
【請求項6】
コンピュータを,請求項1から請求項5までのいずれか1項に記載の画像検索装置が備える前記画像取得部と,前記データ蓄積部と,前記位置指定部と,前記データ検索部と,前記データ表示部として,機能させるための画像検索プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2010−129032(P2010−129032A)
【公開日】平成22年6月10日(2010.6.10)
【国際特許分類】
【出願番号】特願2008−306096(P2008−306096)
【出願日】平成20年12月1日(2008.12.1)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
【公開日】平成22年6月10日(2010.6.10)
【国際特許分類】
【出願日】平成20年12月1日(2008.12.1)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
[ Back to top ]