(実施の形態)
以下に添付図面を参照して、この発明にかかる判定装置、判定方法および判定プログラムの好適な実施の形態を詳細に説明する。この発明では、複数の機器が撮影した画像を画像処理等して複数の機器の撮影位置の同一性を判定し、同一と判定した複数の機器を連携させる。例えば、ある車両に搭載された複数の機器を手動設定することなく、自動的に複数の相互が連携制御可能であるか判定できるようにする。これら複数の機器は、例えば、OSが異なるため、互いをネットワーク接続しただけでは連携制御できない機器である。
図1は、実施の形態にかかる判定装置の機能的構成の一例を示すブロック図である。実施の形態にかかる判定装置100は、第1取得部101と、第2取得部102と、判定部103と、表示制御部104と、出力部105とを含む。実施の形態では、単一の情報機器、例えばサーバがこれらの各機能を有する。
第1取得部101は、第1機器が撮影した第1画像を第1機器から取得する。第2取得部102は、第2機器が撮影した第2画像を第2機器から取得する。また、これら第1取得部101と第2取得部102は、画像と共に撮影時刻を取得しても良い。第1画像および第2画像は、静止画に限らず動画(時間別の静止画の集合)でもよい。
判定部103は、第1取得部101が取得した第1画像と、第2取得部102が取得した第2画像それぞれの撮影画像に基づき、第1画像と第2画像の撮影位置の同一性を判定する。この判定にと撮影時刻を含めてもよい。
出力部105は、判定部103の判定結果に応じて第1機器と第2機器に対して互いが連携可能であるか否かを通知する。
表示制御部104は、判定部103の判定結果に基づき、第1機器で表示可能な映像の一部を第2機器に表示させる表示制御を行う。
上記構成について、例えば、第1機器と第2機器が同一の車両に搭載された例で説明する。第1機器と第2機器は所定方向に向けた撮影部(カメラ)を有し、カメラが静止画を撮影して第1画像と第2画像を判定装置100に出力する構成であるとする。この場合、判定部103は、第1画像と第2画像の撮影位置の同一性を判定する。
この撮影位置の同一性の判定では、画像が示す検出オブジェクト(被写体)を画像処理することにより、第1画像と第2画像が同一の位置から撮影されたものであるか否かを判定する。ここで、第1画像と第2画像の厳密な一致だけで判定するのではない。
この例では、同一の車両から撮影されたものであるか否か(第1機器と第2機器が同一車両に搭載されているかに相当)を判定する。したがって、撮影位置の同一性の判定では、第1画像と第2画像がいずれも同一の検出オブジェクト(被写体)を含んでいる場合に、第1機器と第2機器の設置位置の違いや、撮影画角の違いを許容して同一の車両の範囲内で撮影された画像であるかを判定している。
この画像処理による判定の際には、さらに、第1画像と第2画像の撮影時刻の同一性を加えて判定できる。例えば、第1画像と第2画像の撮影時刻がいずれも所定期間内に撮影されたものであれば、同位置の位置から撮影されたとの判定結果に重みを加えて撮影位置の同一性の判定の信頼度を向上させる。
このほか、第1機器の撮影方向と第2機器の撮影方向の角度が異なる場合にも対応できる。例えば、判定部103は、異なる撮影角度を予め考慮して第1画像と第2画像とのいずれでも撮影される画像の内容(被写体)を画像処理し、さらに撮影時刻の判定を含めることで第1画像と第2画像が同一の位置(同一車両)から撮影されたものであるか否かを判定できる。
さらには、第1機器の撮影方向と第2機器の撮影方向とが逆方向の場合にも対応できる。例えば、第1機器が車両の前方を撮影し、第2機器が車両の後方を撮影し、車両が前方に進行する場合、第1機器が進行方向前方の被写体を撮影し、その後、車両速度に応じた所定時間経過後に第2機器が同じ被写体を撮影する。この場合でも、判定部103は、撮影方向が逆であること、および第1機器による撮影後所定時間経過後に同じ被写体を第2機器が撮影することを予め考慮して第1画像と第2画像とのいずれでも撮影される画像の内容(被写体)を画像処理することで、第1画像と第2画像が同一の位置(同一車両)から撮影されたものであるか否かを判定できる。
この場合、第1機器では、被写体の一方の面を撮影し、第2機器では同じ被写体の他方の面を撮影する場合があり、画像処理ではこの面の違い等を考慮して画像処理する。例えば、道路標識について、第1画像は標識面を撮影し、第2画像は標識の裏面を撮影することになる。この場合、第1画像により標識面や形状を含めて標識であることを画像認識し、第2画像では標識面を含めず所定時間経過の標識相当の画像の形状が一致することで同一の被写体(標識)であることを認識できれば、判定部103は、これら第1画像と第2画像が同一車両から撮影されたものであると判定する。
例えば、判定装置100は、第1機器および第2機器とネットワークで通信接続され、ネットワークを介して相互に情報(例えば、上記第1画像、第2画像、および判定結果等)を通信する。例えば、車両内通信網を用いたり、無線LAN等、有線、無線の各種接続形態がある。
ここで、判定装置100は、ユーザが設定操作することなく、第1機器と第2機器を連携させる。この連携の制御を行うにあたり、上記撮影画像を無線等で取得する場合、例えば、自車に搭載した機器の画像だけではなく、隣接して走行中のほかの車両の機器が撮影した画像を取得することが考えられる。これに対応するため、例えば、判定装置100(判定部103)は、無線LANのSSIDの一致により、第1機器と第2機器が同一車両に設けられたか否かを判定できる。また、第1画像と第2画像に含まれる走行車線と車間距離が所定の範囲内であれば、同一車両と判定できる。さらには、第1機器と第2機器の起動時間(車両のACC ON)が一致すれば、第1機器と第2機器が同一車両に設けられたか否かを判定できる。
そして、判定装置100の表示制御部104は、判定部103による判定の結果、第1機器と第2機器が連携可能な場合、第1機器で表示可能な映像の一部を第2機器に表示させる表示制御を行う。例えば、第1機器で表示可能な映像の一部を第2機器に表示させる。第1機器および第2機器がそれぞれ表示部を有する場合、第1機器で表示させる表示内容と第2機器で表示させる表示内容とを異ならせることができ、第1機器および第2機器の設置位置に応じた表示内容を選択できるようになる。
例えば、車両のフロントシート側に設けられた第1機器には運転に関する情報表示を行い、バックシート側に設けられた第2機器には娯楽に関する情報表示を行うことができる。また、第1機器がナビゲーション装置で、バックミラーに第2機器としてミラー型端末が設けられた場合、ナビゲーション装置に地図表示を行い、ミラー型端末に誘導表示(つぎの交差点での進行方向表示等)を行うことができる。
そして、第1機器と第2機器は、判定装置100の出力部105が出力する判定結果の通知に応じて互いが連携可能であるか否かを認識することもできる。例えば、第1機器と第2機器は、互いが連携可能である通知を受けた後は、判定装置100が第1機器と第2機器との間の情報のやり取りに仲介することなく、直接、第1機器と第2機器間で、連携制御(例えば、上記第1機器で表示可能な映像の一部を第2機器に表示させる表示制御等)を行うこともできる。
そして、上記の説明では、判定装置100と、第1機器と、第2機器とはそれぞれ個別の装置として説明したが、これに限らず、判定装置100を第1機器に機能追加する形で設けることもできる。この場合、第1機器が上記の各機能(図1参照)を有し、第2機器が第1機器(自装置)と同一車両に搭載されているか判定して、第2機器との連携を制御できる。
図2は、実施の形態にかかる判定装置の処理手順の一例を示すフローチャートである。判定装置100が実行する判定および連携制御例を示している。
はじめに、判定装置100は、第1取得部101が第1機器から第1画像を取得し(ステップS201)、第2取得部102が第2機器から第2画像を取得する(ステップS202)。つぎに、判定装置100は、判定部103が第1画像と第2画像の撮影位置が同一であるかを判定する(ステップS203)。この判定では、上述したように、第1画像と第2画像が同一の車両から撮影されたものであるかを判定する。判定には、撮影画像に加えて、撮影時刻を含めても良い。
ステップS203の判定結果、同一である(撮影位置の同一性がある)と判定されれば(ステップS203:Yes)、判定装置100の出力部105は、第1機器と第2機器に対し、互いが連携可能であることを通知する(ステップS204)。そして、判定装置の表示制御部104は、第1機器と第2機器の表示を連携制御する(ステップS205)。この連携制御は、例えば、上述したように、第1機器で表示可能な映像の一部を第2機器に表示させる。
一方、ステップS203の判定結果、同一でない(撮影位置の同一性がない)と判定されれば(ステップS203:No)、判定装置100の出力部105は、処理を終了する。これに限らず、判定装置100の出力部105は、第1機器と第2機器に対し、互いが連携不可能であることを通知してもよい。
図2では、判定装置100が第1機器と第2機器の撮影位置の同一性を判定して連携制御する処理例としたが、判定装置100が第1機器に設けられる場合には、第1機器内の判定装置100が撮影位置(同一車両)の同一性を判定して第2機器を連携制御する。
なお、上記の説明では、連携する機器を第1機器と第2機器として説明したが、機器数は2つ以上複数あってもよく(第1機器〜第n機器)、判定装置100は、複数の機器が撮影した第1画像〜第n画像に基づき撮影位置の同一性を判定して第1機器〜第n機器を連携制御できる。
以上の実施の形態によれば、複数の機器の撮影画像を用いて撮影位置の同一性を判定し、同一性があると判定された機器同士を連携制御するため、複数の機器を連携させるためにユーザが煩雑な接続手順を実施することなく、簡単に機器の連携を行えるようになる。
図3は、実施例1による複数の機器の構成例を示す図である。実施例1では、ユーザの車両に第1機器としてナビゲーション装置300と、第2機器として情報機器302が搭載され、第1機器であるナビゲーション装置300が上記の判定装置100の機能を有する構成例を用いて説明する。
これら第1機器(情報機器1:ナビゲーション装置)300および第2機器(情報機器2)302は、それぞれ画像を撮影するカメラ311,312と、相互に通信を行う通信部321,322とを有する。第2機器(情報機器2)302は、第1機器(ナビゲーション装置)300に対して撮影した画像を送信する機能、および第1機器(ナビゲーション装置)300による連携制御を受ける機能を有する。
(第1機器のハードウェア構成)
図4は、実施例1のナビゲーション装置のハードウェア構成の一例を示すブロック図である。図4において、第1機器であるナビゲーション装置300は、CPU401、ROM402、RAM403、磁気ディスクドライブ404、磁気ディスク405、光ディスクドライブ406、光ディスク407、音声I/F(インターフェース)408、マイク409、スピーカ410、入力デバイス411、映像I/F412、ディスプレイ413、通信I/F414、GPSユニット415、各種センサ416、カメラ417、を備えている。各構成部401〜417は、バス420によってそれぞれ接続されている。
CPU401は、ナビゲーション装置300の全体の制御を司る。ROM402は、ブートプログラム、判定プログラムを記録している。RAM403は、CPU401のワークエリアとして使用される。すなわち、CPU401は、RAM403をワークエリアとして使用しながら、ROM402に記録された各種プログラムを実行することによって、ナビゲーション装置300の全体の制御を司る。
磁気ディスクドライブ404は、CPU401の制御にしたがって磁気ディスク405に対するデータの読み取り/書き込みを制御する。磁気ディスク405は、磁気ディスクドライブ404の制御で書き込まれたデータを記録する。磁気ディスク405としては、例えば、HD(ハードディスク)やFD(フレキシブルディスク)を用いることができる。
また、光ディスクドライブ406は、CPU401の制御にしたがって光ディスク407に対するデータの読み取り/書き込みを制御する。光ディスク407は、光ディスクドライブ406の制御にしたがってデータが読み出される着脱自在な記録媒体である。光ディスク407は、書き込み可能な記録媒体を利用することもできる。着脱可能な記録媒体として、光ディスク407のほか、MO、メモリカードなどを用いることができる。
磁気ディスク405および光ディスク407に記録される情報の一例としては、地図データ、車両情報、道路情報、走行履歴などが挙げられる。地図データは、カーナビゲーションシステムにおいて経路探索するときに用いられ、建物、河川、地表面、エネルギー補給施設などの地物(フィーチャ)をあらわす背景データ、道路の形状をリンクやノードなどであらわす道路形状データなどを含むベクタデータである。
音声I/F408は、音声入力用のマイク409および音声出力用のスピーカ410に接続される。マイク409に受音された音声は、音声I/F408内でA/D変換される。マイク409は、例えば、車両のダッシュボード部などに設置され、その数は単数でも複数でもよい。スピーカ410からは、所定の音声信号を音声I/F408内でD/A変換した音声が出力される。
入力デバイス411は、文字、数値、各種指示などの入力のための複数のキーを備えたリモコン、キーボード、タッチパネルなどが挙げられる。入力デバイス411は、リモコン、キーボード、タッチパネルのうちいずれか一つの形態によって実現されてもよいが、複数の形態によって実現することも可能である。
映像I/F412は、ディスプレイ413に接続される。映像I/F412は、具体的には、例えば、ディスプレイ413全体を制御するグラフィックコントローラと、即時表示可能な画像情報を一時的に記録するVRAM(Video RAM)などのバッファメモリと、グラフィックコントローラから出力される画像データに基づいてディスプレイ413を制御する制御ICなどによって構成される。
ディスプレイ413には、アイコン、カーソル、メニュー、ウインドウ、あるいは文字や画像などの各種データが表示される。ディスプレイ413としては、例えば、TFT液晶ディスプレイ、有機ELディスプレイなどを用いることができる。
カメラ417は、車両外部の道路を含む映像を撮影する。映像は静止画あるいは動画のどちらでもよく、例えば、カメラ417によって車両外部を撮影し、撮影した画像をCPU401において画像解析したり、映像I/F412を介して磁気ディスク405や光ディスク407などの記録媒体に出力したりする。
通信I/F414は、無線を介してネットワークに接続され、ナビゲーション装置300およびCPU401のインターフェースとして機能する。ネットワークとして機能する通信網には、CANやLIN(Local Interconnect Network)などの車内通信網や、公衆回線網や携帯電話網、DSRC(Dedicated Short Range Communication)、LAN、WANなどがある。通信I/F414は、例えば、公衆回線用接続モジュールやETC(ノンストップ自動料金支払いシステム、登録商標)ユニット、FMチューナー、VICS(Vehicle Information and Communication System:登録商標)/ビーコンレシーバなどである。
GPSユニット415は、GPS衛星からの電波を受信し、車両の現在位置を示す情報を出力する。GPSユニット415の出力情報は、後述する各種センサ416の出力値とともに、CPU401による車両の現在位置の算出に際して利用される。現在位置を示す情報は、例えば、緯度・経度、高度などの、地図データ上の1点を特定する情報である。
各種センサ416は、車速センサ、加速度センサ、角速度センサ、傾斜センサなどの、車両の位置や挙動を判定するための情報を出力する。各種センサ416の出力値は、CPU401による車両の現在位置の算出や、速度や方位の変化量の算出に用いられる。
図4に記載のROM402、RAM403、磁気ディスク405、光ディスク407などに記録されたプログラムやデータを用いて、CPU401が所定のプログラムを実行することによって、ナビゲーション装置の動作に必要な機能、および図1に示した判定装置100の判定部103と表示制御部104の機能を実現する。すなわち、実施例1では、ナビゲーション装置300内に判定装置100が組み込まれた機能であるため、ナビゲーション装置300が有するカメラ417が撮影した画像はこのナビゲーション装置300のCPU401が取得する。また、図4の通信I/F414を用いて、図1の第1取得部101と出力部105の機能を実現でき、図4のディスプレイ413を用いて図1の出力部105(連携後の映像出力)の機能を実現できる。
(第2機器のハードウェア構成)
実施例1の第2機器(情報機器2)302のハードウェア構成は、図4に記載した各部のうち、CPU401〜RAM403と、映像I/F412、カメラ417、ディスプレイ413、通信I/F414とを有して構成できる。
この第2機器302においても、図4記載のROM402、RAM403などに記録されたプログラムやデータを用いて、CPU401が所定のプログラムを実行することによって、図4記載のカメラ317を第1機器(ナビゲーション装置)300に送信し、かつ、第1機器(ナビゲーション装置)300による連携制御を受け、例えば、第1機器(ナビゲーション装置)300から受信した表示画像をディスプレイ413に表示する。
(実施例1の判定装置の判定処理例)
つぎに、判定装置100の機能を有する第1機器(ナビゲーション装置)300が自装置の撮影画像と、第2機器(情報機器2)302の撮影画像に基づき、撮影位置の同一性、すなわち同一車両で撮影された画像であるか否か(第1機器と第2機器が同一車両に設けられているか)を判定し、第1機器と第2機器を連携させる制御例について説明する。
図5は、実施例1の第1機器が実行する判定処理例を示すフローチャートである。この図5には、第2機器の動作処理についても併記してある。
はじめに、第1機器300は、同一車両に搭載されたほかの情報機器の連携制御を行う場合、所定の操作等に基づき、第2機器(情報機器2)302の探索を開始する(ステップS501:Yes)。なお、第1機器300は、他の情報機器の連携制御を行わない場合には、第2機器(情報機器2)302の探索を開始せず(ステップS501:No)、以下の処理を終了する。
つぎに、第1機器300は、自装置のカメラ311で画像を撮影し第1画像を得る(ステップS502)。第1機器300は、所定のタイミング(不定期あるいは定期的に)カメラ311で画像を撮影する。この際、第1機器300は、第1画像の撮影パラメータとして撮影時刻を取得し、撮影画像に関連付ける(ステップS503)。このステップS503では、ほかの撮影パラメータとして車両の状態(例えば各種センサ416から速度や進行方向、加速度等)や、撮影状態(画角、露出等)を取得してもよい。
つぎに、第1機器300は、第2機器302が撮影した第2画像を第2機器302からの受信により取得する(ステップS504)。第2機器302は、所定のタイミング(不定期あるいは定期的に)カメラ312で画像を撮影する。ここで、第1機器300が取得する第2画像は、第1画像の撮影時刻に一致するものを選択的に受信してもよく、例えば、第2機器302に対して撮影時刻を指定した撮影画像を送信要求してもよい。
また、第1画像および第2画像は、静止画に限らず動画でもよく、第1画像の撮影時刻を基準として、第2画像の撮影時刻が第1画像の撮影時刻に重なる時刻範囲の動画を取得することとしてもよい。第1機器300は、動画である第1画像と第2画像のうち撮影時刻が同一の画像(静止画)を用いて撮影位置の同一性を判定できる。第1機器300は、取得した第1画像と第2画像を記憶部(例えば図4の磁気ディスク405)に保存する。
つぎに、第1機器300は、記憶部から第1画像と第2画像を読み出し、第1画像と第2画像が同じ車両で撮影された画像であるかを判定する(ステップS505)。この処理は、上記撮影位置の同一性の判定に相当し、画像処理により判定する。
撮影位置の同一性の判定の処理例は後述するが、第1画像と同一時刻に撮影された第2画像とを読み出して比較し、一致する被写体の有無等により、第1画像と第2画像が同じ車両で撮影された画像であるかを判定する。この際、厳密には、第1画像と第2画像は完全に一致する画像がないことを想定して、所定の時刻範囲を有して比較したり、車両の速度に応じて比較する第1画像の撮影時刻と第2画像の撮影時刻を異ならせたり、第1画像と第2画像の画角の違いに相当する補正を行い画像比較したりする。
ステップS505による判定処理の結果、第1画像と第2画像が同じ車両で撮影された画像であると判定されれば(ステップS505:Yes)、第1機器300は、第2機器302を連携制御の対象機器として登録し(ステップS506)、以降第2機器302に対して判定結果を通知して連携制御を行う(連携制御例は後述する)。ステップS505による判定処理の結果、第1画像と第2画像が同じ車両で撮影された画像であると判定されなければ(ステップS505:No)、ステップS501に戻る。
一方、第2機器(情報機器2)302では、画像(第2画像)を撮影すると(ステップS511)、この第2画像の撮影時刻を取得し、撮影画像に関連付ける(ステップS512)。このステップS512では、第2機器が取得可能な撮影に関連するほかの情報を取得してもよい。
そして、第2機器302は、撮影した第2画像を撮影時刻、そのほか撮影に関連するほかの情報(撮影パラメータ)があれば併せて第1機器に送信する(ステップS513)。
この後、第2機器302は、第1機器300による撮影位置の同一性の判定結果の通知を待つ。第1機器300が撮影位置の同一性があると判定した場合、第2機器302は第1機器300から、第2機器302が第1機器300と同じ車両で撮影された画像であると通知される。この通知として、第2機器302が第1機器300と同じ車両に搭載されていると通知されてもよい。この後、第2機器302は第1機器301による連携制御を受ける(ステップS514)。
(画像処理例)
図6は、実施例1の第1機器が実行する画像を用いた同一車両の判定処理例を示すフローチャートである。第1機器300の判定装置100が実行する処理例を示し、第1画像と第2画像のそれぞれに対して行う処理(図5のステップS505)の詳細を記載してある。
はじめに、第1機器300は、第1画像と第2画像の撮影時刻を含む撮影パラメータを取得する(ステップS601)。つぎに、第1機器300は、第1画像と第2画像が同一時刻で撮影されているか判定する(ステップS602)。ここでは、便宜上、第1画像と第2画像が同一時刻で撮影されたものとして説明する。同一時刻で撮影されている第1画像と第2画像があれば(ステップS602:Yes)、ステップS603以下の処理を実行し、同一時刻で撮影されている第1画像と第2画像がなければ(ステップS602:No)、処理を終了する。
ステップS603では、画像処理により第1画像と第2画像の画像情報をそれぞれ検出する(ステップS603)。この処理では、例えば画像のエッジ検出を行い(ステップS611)、車線領域の検出を行い(ステップS612)、オブジェクト(被写体)の検出を行って(ステップS613)、各検出パラメータを保存する(ステップS614)。
この後、第1機器は、第1画像と第2画像について、ステップS603で検出した各検出パラメータが同一であるか判定する(ステップS604)。ステップS604の判定結果、第1画像と第2画像の各検出パラメータが同一であれば(ステップS604:Yes)、第1画像と第2画像は同一車両で撮影された画像と判定する(ステップS605)。一方、ステップS604の判定結果、第1画像と第2画像の各検出パラメータが同一でなければ(ステップS604:No)、第1画像と第2画像は同一車両で撮影された画像ではないと判定し、図6の処理を終了する(図5のステップS501に戻る)。
図7は、実施例1の画像処理で検出する検出パラメータを説明する図である。第1機器が行う画像処理で第1画像と第2画像に対しそれぞれ検出する画像700を示し、各検出パラメータを例示している。エッジ検出(ステップS611)では画像上のエッジを検出し、このエッジ検出後、車線領域(図の検出車線1〜4)を検出する(ステップS612)。
この際、車線間の白線で分断された領域が車線領域(図7の検出車線1〜4)であると認識する。また、画像の横方向のうち最も中心に近い車線(図7の検出車線2)を自車走行中の車線と認識する。
そして、オブジェクト検出(ステップS613)については、車線上では車両701を検出する。例えば、アダブーストアルゴリズムを用い、物体(車両)の形状を機械学習することで、車両701を車種別に検出できる。同様に、路側(図7の検出車線1の左端)に位置する道路標識702を形状別の標識として検出できる。
(第1カメラと第2カメラの設置位置別の判定処理例)
例えば、第1機器300および第2機器302がいずれも車両前方の画像を撮影する場合、画像処理によって得られた自車走行車線と、検出された車両の位置関係が、2つの機器300,302の画像と一致することを元に、第1画像と第2画像が同一の車両で撮影された画像と判定する。
また、第1機器300が車両前方の画像を撮影し、第2機器302が車両後方の画像を撮影し車両が前方に進行している場合には、第1機器300で撮影した第1画像と第2機器302で撮影した画像について、画像処理によって得られた被写体(静止物、例えば、道路標識や路肩に駐車中の車両)の位置関係が第1画像と第2画像とでは逆転していることで判定する。
さらには、例えば、道路標識であれば、この道路標識には表裏があり、道路の左端に位置する道路標識702の表側を第1機器300で位置撮影した後、車両の速度に応じた所定時間後に道路の右端に位置する同じ道路標識702の裏面を第2機器302で撮影することに基づき判定できる。
(同一車両判定後の通知例)
図8は、実施例1による同一車両の判定処理の通知画面例を示す図である。第1機器300が図5のステップS506により第2機器302に通知する画面例を示している。例えば、第1機器300が上述した同一車両の判定処理を行った結果、第1画像と第2画像が同一の車両で撮影された画像と判定すると、第1機器300は、第2機器302に対して図8に示す認証画面800を送信する。
この認証画面800では、第2機器302が撮影し、上述した同一の車両で撮影された画像の判定に用いた撮影画像801を送信するとともに、「運転中の車両に同期可能な機器が検出されました」と案内文(テキスト)を表示させる。例えば、この第2機器302が新たに車両に取り付けられた場合の新規端末である。
このように、判定装置100の機能を備える第1機器300は、車両に新たに取り付けられた新規端末(第2機器302)が生じる毎に、ユーザ操作がなくても、この新規端末(第2機器302)に対して同一車両に取り付けられた装置であることを通知することでユーザに通知できる。ユーザは、第2端末302を同一車両に取り付けたものである場合、この認証画面800上で「同期する」選択ボタン802を操作することで、第2機器302を第1機器300に同期(連携)させることができる。また、「同期しない」選択ボタン803を操作することで第2機器302を第1機器300に同期(連携)させないこともできる。
上記のように、第1機器300は、図8のようなユーザへの同期(連携)確認を行った後に第1機器300と第2機器302とを同期(連携)させることもできる。これに限らず、第1機器300は、図8のようなユーザへの同期(連携)確認の画面を送出せず、自動的に第1機器300と第2機器302とを同期(連携)させてもよい。
(第1機器と第2機器の連携制御例)
つぎに、上述した第1機器300と第2機器302が同じ車両で撮影された画像であると判定された登録されることで(図5のステップS506)、以降の第1機器300と第2機器302との同期(連携)制御例について説明する。
図9〜図12は、それぞれ実施例1による第1機器と第2機器の連携制御例を示す図である。図9〜図12では、いずれも、第1機器(ナビゲーション装置)300と第2機器302とが同一車両に設けられている判定結果に基づき、第1機器300が第2機器302の表示を連携制御する例について記載してある。第2機器302は、バックミラーに設けられた表示機能を有するミラー型端末であるとする。
図9に示す例では、第1機器(ナビゲーション装置)300は、経路探索した結果の経路を含む地図画面901を表示する。また、第1機器(ナビゲーション装置)300は、第2機器302の表示を制御し、車両進行中に経路上の情報(例えば、つぎの交差点の誘導方向)902を表示する。
図10に示す例では、第1機器(ナビゲーション装置)300は、経路探索した結果の経路を含む地図画面901を表示する。また、第1機器(ナビゲーション装置)300は、第2機器302の表示を制御し、第1機器(ナビゲーション装置)300で再生中のコンテンツの楽曲リストや映像1002を表示する。
図11に示す例では、第1機器(ナビゲーション装置)300は、再生中のコンテンツの楽曲リストや映像1101を表示する。また、第1機器(ナビゲーション装置)300は、第2機器302の表示を制御し、第1機器(ナビゲーション装置)300で経路探索した結果の経路に基づき、車両進行中に経路上の情報(例えば、つぎの交差点の誘導方向)902を表示する。
図12に示す例では、第1機器(ナビゲーション装置)300は、第1機器に接続されたカメラ(前方カメラ)311aの撮影画像1201を表示する。また、第1機器(ナビゲーション装置)300は、第2機器302の表示を制御し、第1機器(ナビゲーション装置)300に接続されたカメラ(後方カメラ)311bの撮影画像1202を表示する。なお、第2機器302は、自身が前方カメラ312を有し、第2機器302上に前方カメラ312を表示することもできる。
これら図9〜図12に示したように、第1機器(ナビゲーション装置)300と、第2機器(ミラー型端末)302とが同一車両に設けられていると判定した後、第1機器300は、第2機器302を連携制御(車両の進行に伴う同期制御等を)できる。上記例のように、画面表示を連携させることで、一方の機器で表示できない情報を他の機器に表示させることができるようになる。さらには、一方の機器と他方の機器とでそれぞれ必要な情報を表示させることができるようになる。また、上記例では、第1機器300と第2機器302の表示を連携制御させたが、表示に限らず音、振動、さらには各種情報(例えば認証データを含むデータ)を互いに送受信して相互の機器を連携制御することができる。
以上の実施例1によれば、第1機器(ナビゲーション装置)300に判定装置100の機能を設けることで、第1機器(ナビゲーション装置)300が、第2機器302を検出したとき、この第2機器302が自機器と同一車両に設けられた機器であるかを判定する。この際、第1機器300は、第1画像と第2画像が同一車両から撮影された画像であるかを画像処理により判定する。第1機器300が第2機器302で撮影された第2画像を取得することで、自機器の第1画像と画像比較して、第2機器302が同一車両に設けられた機器であるかを判定できる。
これにより、第2機器302を設置したときに第2機器302を設置した旨の煩雑なユーザ設定を行わなくても、第2機器302を連携制御できるようになる。なお、第2機器302は単一機器に限らず複数の機器とすることができ、第1機器300は複数の第2機器302を連携制御できる。
図13は、実施例2による複数の機器の構成例を示す図である。実施例2では、実施例1と比べて機器構成を変更した例である。図13に示すように、実施例2では、ユーザの車両に第1機器(情報機器1)としてナビゲーション装置300と、第2機器(情報機器2、例えば実施例1同様のミラー型端末)302と、第3機器(情報機器3)としてのサーバ1301が搭載され、第3機器であるサーバ1301が上記の判定装置100の機能を有する構成例を用いて説明する。
第1機器(ナビゲーション装置)300および第2機器(情報機器2)302は、それぞれ画像を撮影するカメラ311,312と、相互に通信を行う通信部321,322とを有する。第1機器(ナビゲーション装置)300および第2機器(情報機器2)302は、それぞれ第3機器(サーバ)1301に対して撮影した画像を送信する機能、および第3機器(サーバ)1301による連携制御を受ける機能を有する。
(実施例2のハードウェア構成)
実施例2の第1機器(ナビゲーション装置)300のハードウェア構成は、図4と同様である。また、第2機器(情報機器2)302のハードウェア構成は、図4に記載した各部のうち、CPU401〜RAM403と、映像I/F412、カメラ417、ディスプレイ413、通信I/F414とを有して構成できる。また、第3機器(サーバ)1301のハードウェア構成は、図4に記載した各部のうち、CPU401〜RAM403と、通信I/F414とを有して構成できる。
そして、第3機器(サーバ)1301は、図4記載のROM402、RAM403、磁気ディスク405、光ディスク407などに記録されたプログラムやデータを用いて、CPU401が所定のプログラムを実行することによって、図1の判定装置100の機能を実現できる。そして、第3機器(サーバ)1301は、第1機器(ナビゲーション装置)300および第2機器(情報機器2)302のカメラ311,312が撮影した撮影画像を通信部1302を介して取得し、これら、第1機器(ナビゲーション装置)300および第2機器(情報機器2)302が同一車両に取り付けられているか撮影画像を画像処理して判定し、通信部1302を介して第1機器(ナビゲーション装置)300および第2機器(情報機器2)302を連携制御する。
なお、第3機器(サーバ)1301は、第1機器(ナビゲーション装置)300および第2機器(情報機器2)302が同一車両に取り付けられている旨の判定結果を第1機器300および第2機器302に通知するまでの制御を行うこととしてもよい。この場合、第1機器300および第2機器302は、互いが連携可能な通知を受けて、第3機器(サーバ)1301を介さずに、第1機器300および第2機器302間で直接、連携制御を行う。
(実施例2の判定装置の判定処理例)
つぎに、判定装置100の機能を有する第3機器(サーバ)1301が第1機器(ナビゲーション装置)300が撮影した第1画像と、第2機器(情報機器2)302が撮影した第2画像に基づき、撮影位置の同一性、すなわち同一車両で撮影された画像であるか否か(第1機器と第2機器が同一車両に設けられているか)を判定し、第1機器と第2機器を連携させる制御例について説明する。
図14は、実施例2の第3機器が実行する判定処理例を示すフローチャートである。図14には、第1機器および第2機器の動作処理についても併記してある。
第1機器300と第2機器302は、それぞれ所定のタイミング(不定期あるいは定期的に)カメラ311,312で画像を撮影する(ステップS1410)。第1機器300の例で説明すると、第1機器300は、カメラ311で画像を撮影し第1画像を得る(ステップS1410)。この際、第1機器300は、第1画像の撮影パラメータとして撮影時刻を取得し、撮影画像に関連付ける(ステップS1411)。
このステップS1411では、ほかの撮影パラメータとして撮影状態(例えば画角、露出)を取得してもよい。このステップS1411では、第1機器が取得可能な撮影に関連するほかの情報を取得してもよい。そして、第1機器300は、第1画像を撮影パラメータとともに第3機器1301にデータ送信する(ステップS1412)。第2機器302について第1機器300同様に第2画像を撮影する毎に撮影パラメータを付与して第3機器1301に送信する。
第3機器1301は、同一車両に搭載された第1機器(ナビゲーション装置)300と第2機器(情報機器2)302から第1画像および第2画像が送信される都度、これら第1画像と第2画像(データ)を受信し(ステップS1401)、記憶部(例えば、図4の磁気ディスク405)に保存する(ステップS1402)。ここで、第3機器1301は、例えば、同一車両に新規に取り付けられた第1機器300や第2機器302から送信される画像を受信する。
この後、第3機器1301は、以下の処理により、取得済の第1画像と第2画像の撮影位置の同一性の判定を行う。はじめに、第3機器1301は、取得済の第1画像と第2画像のうち、同一時刻で撮影された第1画像と第2画像を収集する(ステップS1403)。
ところで、第1画像および第2画像は、静止画に限らず動画でもよく、第1画像と第2画像の撮影時刻が重なる時刻の動画を取得することとしてもよく、第3機器1301は、動画である第1画像と第2画像のうち撮影時刻が同一の画像(静止画)を用いて撮影位置の同一性を判定できる。
つぎに、第3機器1301は、第1画像と第2画像が同じ車両で撮影された画像であるかを判定する(ステップS1404)。この処理は、上記撮影位置の同一性の判定に相当し、画像処理により判定する。
撮影位置の同一性判定の処理例は図6を用いて説明したように、第1画像と同一時刻に撮影された第2画像とを比較し、一致する被写体の有無等により、第1画像と第2画像が同じ車両で撮影された画像であるかを判定する。
ステップS1404による判定処理の結果、第1画像と第2画像が同じ車両で撮影された画像であると判定されれば(ステップS1404:Yes)、第3機器1301は、第1機器300と第2機器302を連携制御の対象機器と判定し、第1機器300と第2機器302に対して判定結果を通知する(ステップS1405)。この後、第3機器1301は、第1機器300と第2機器302とを連携制御する。ステップS1404による判定処理の結果、第1画像と第2画像が同じ車両で撮影された画像であると判定されなければ(ステップS1404:No)、ステップS1403に戻る。
第1機器300と第2機器(情報機器2)302側では、第3機器1301による撮影位置の同一性の判定結果の通知を待つ(ステップS1413)。第3機器1301が第1画像と第2画像とで撮影位置の同一性があると判定した場合、第1機器300と第2機器302は、第3機器1301から第1機器300と第2機器302とが同じ車両で撮影された画像であるとの結果を取得し(ステップS1414)、登録する(ステップS1415)。この通知として、第1機器300が第2機器302と同じ車両に搭載されていると通知されてもよい。
また、第3機器1301は、第1機器300と第2機器302に対して、図8に示したように、ユーザへの同期(連携)確認画面を送信し、ユーザによる確認操作後に第1機器300と第2機器302とを同期(連携)させることもできる。
この後、第1機器300および第2機器302は、第3機器1301による連携制御を受ける。連携制御は、実施例1(例えば図9〜図12)同様に、第1機器300と第2機器302の表示を連携させることができる。
以上の実施例2によれば、第1機器300と第2機器302の外部の第3機器(サーバ)1301に判定装置100の機能を設けることで、第3機器1301が、第1機器300および第2機器302を検出したとき、この第1機器300と第2機器302が同一車両に設けられた機器であるかを判定する。この際、第3機器1301は、第1画像と第2画像が同一車両から撮影された画像であるかを画像処理により判定する。第3機器1301は、第1機器300の第1画像と第2機器302の第2画像を取得することで、第1画像と第2画像とを画像比較して、第1機器300と第2機器302が同一車両に設けられた機器であるかを判定できる。
これにより、例えば、第1機器300を設置済で新たに第2機器302を設置したときに第2機器302を設置した旨の煩雑なユーザ設定を行わなくても、第1機器300と第2機器302を連携制御できるようになる。なお、第1機器300および第2機器302は2つの機器に限らず複数の機器とすることができ、第3機器1301は、複数の機器(第1機器300および第2機器302)を連携制御できる。
上記の各実施例では、第1機器としてナビゲーション装置を用い、第2機器としてミラー型端末の構成としたが、これら第1機器および第2機器は、撮影機能を有する情報機器であればよく、例えば、スマートフォンやタブレット、PCなどでもよい。
また、各実施例において、第1機器と第2機器は、起動時刻(例えば車両のACC ONによる起動時刻)を保持し、判定装置の機能を備えた機器(実施例1の第1機器あるいは実施例2の第3機器)に起動時刻を送信してもよい。判定装置の機能を備えた機器では、この起動時刻を含めて第1画像と第2画像の撮影位置の同一性を判定してもよい。これにより、異なる車両の機器に対して誤った同一性の判定を行うことを防止できる。
例えば、判定装置の機能を備えた機器が、隣の車線を走行しているほかの車両が撮影した画像を取得することが考えられる。この場合、判定機器は、他の車両の撮影画像を自車の撮影画像と比較したとき、他の車両の撮影画像と自車の撮影画像とで同一時刻に同一の被写体を撮影することで撮影位置の同一性がある(同一車両で撮影された)と誤判定する恐れがある。
このため、第1画像と第2画像を用いた撮影位置の同一性の判定時に、起動時刻を含めて判定することで、第1機器(自車)と第2機器(他の車両)の起動時刻が一致しない(例えば10分以上異なる)場合、第1画像と第2画像は同一車両の機器で撮影された画像ではないと判断できる。これにより、画像処理だけでは、第1画像と第2画像とで撮影位置の同一性があると判定される画像であっても、実際には同一車両ではないことを判定できるようになる。
なお、本実施の形態で説明した判定方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。