<第1の実施形態>
以下、本発明の第1の実施形態について図を用いて説明する。図1は、本実施形態に係る車載カメラ診断システム100の概略的な構成の一例を示す図である。図1に示すように車載カメラ診断システム100は、車載カメラ診断装置1、前方カメラ2、時計3、位置検出器4、表示部5、及びスピーカ6を備えている。
車載カメラ診断装置1と、前方カメラ2、時計3、位置検出器4、表示部5、及びスピーカ6のそれぞれとは、周知の車両内ネットワークによって相互通信可能な構成となっている。車両内ネットワークは、有線通信、無線通信、又はそれらの組み合わせによって実現されればよい。
本車載カメラ診断システム100の概略は、次の通りである。一般的に、ビルなどの建築物や信号などの路側設備などは、数日あるいは数週間という相対的に短い時間において変化する可能性は低い。
したがって、例えば数日前に前方カメラ2が撮影した画像(過去画像とする)と、その過去画像を撮影した地点と同じ地点において、同じ進行方向となっている場合に新たに前方カメラ2が撮影した画像(現在画像とする)とは類似しているはずである。すなわち、現在画像と過去画像のそれぞれに写っている被写体の位置や大きさ、色合いなどが一致している可能性が高い。
もちろん、他の車両などの移動体が映り込んだりしていることや、微妙な位置のずれ、進行方向のずれに起因して、2つの画像間において相違している部分(不一致部分とする)は生じうる。しかし、撮影画像の一部(又は全部)に影響を及ぼす不具合が前方カメラ2に生じていない状態であれば、2つの画像間における不一致部分は相対的に小さいはずである。
一方、撮影画像の一部(又は全部)に影響を及ぼすような不具合が前方カメラ2に生じている場合、撮影画像においてその不具合箇所に対応する領域は、過去の正常な状態であるときに撮影された画像とは異なる画像となる。すなわち、前方カメラ2に不具合が生じている場合には、前方カメラ2に不具合が生じていない場合に比べて、不一致部分が増大する。また、車載カメラに生じている不具合が画像に影響を及ぼしている領域の大きさが大きいほど、不一致部分が増大する。
そこで、本実施形態の車載カメラ診断装置1は、異なる日時に同一地点、同一進行方向となっている場合に撮影した複数の画像を比較し、不一致部分の大きさを評価することによって、前方カメラ2に不具合が生じているか否かを判定する。すなわち、2つの画像間に所定の閾値以上の相違が生じている場合に、撮影画像の一部又は全部に影響を与えるような不具合が前方カメラ2に発生していると判定する。
以下、この車載カメラ診断システム100についてより詳細に説明する。なお、以降では、ビルなどの建築物や、信号等の路側設備などの数日あるいは数週間という相対的に短い時間において変化する可能性が低い被写体を基準被写体と称する。
前方カメラ2は、光学式カメラであって、例えばCMOSカメラやCCDカメラ等を用いることができる。前方カメラ2は、例えば自車両の前方の所定範囲を撮影するように車室内のルームミラー付近に設置されればよい。
もちろん、前方カメラ2の設置位置は、室内のルームミラー付近に限らず、フロントガラスの上端などのドライバの視界を遮らない位置に取り付けられればよい。また、車室内に限らず、車室外、例えばフロントバンパ部分などに設置されていても良い。前方カメラ2が撮影した映像信号は、車載カメラ診断装置1に逐次出力される。この前方カメラ2が請求項に記載の車載カメラに相当する。
時計3は、自車両が存在している地域での日時情報を逐次更新する。日時情報には、日付(曜日を含む)や時刻の情報が含まれる。時計3が管理する日時情報は、より好ましい形態として、後述するGNSS受信機が受信した測位信号に基づいて補正されるものとする。時計3が管理する日時情報は、車載カメラ診断装置1に逐次(例えば1秒毎に)出力される。
位置検出器4は、GNSS(Global Navigation Satellite System)で用いられる測位衛星からの電波に基づいて自車両の現在位置を逐次(例えば100ミリ秒毎に)検出する。一例として位置検出器4は、GPS(Global Positioning System)電波を受信するGPS受信機を備えており、当該GPS受信機が受信した電波に基づいて、自車両の現在位置を検出する。自車両の現在位置を示す位置情報は、例えば緯度及び経度で表されればよい。
また、位置検出器4は、自車両の車速を検出する車速センサや、加速度を検出する加速度センサ、自車両の鉛直軸周りの回転角速度を検出するジャイロセンサなどの、自車両に搭載されている種々のセンサからの信号を取得する。そして、これらのデータを相補的に用いて現在位置を検出する構成となっている。
例えば、トンネル内などのGPS電波を受信できない状況においては、車速センサやジャイロセンサなどの出力値に基づいて、自車両の移動量を算出して現在位置を推定する。なお、位置検出器4は、上述したセンサの他、例えば地磁気センサの検出値を取得してもよい。位置検出器4が検出した現在位置を示す位置情報は、車載カメラ診断装置1に逐次出力される。
表示部5は、車載カメラ診断装置1からの指示に基づいてテキストや画像を表示する。表示部5は、例えばフルカラー表示が可能なものであり、液晶ディスプレイ、有機ELディスプレイ等を用いて実現することができる。
本実施形態において表示部5は、インストゥルメントパネルの車幅方向中央付近に配置されるセンターディスプレイとするが、これに限らない。表示部5は、インストゥルメントパネルの運転席側に設けられているメータディスプレイであってもよい。さらに、表示部5は、HUD(Head Up Display)であってもよい。
スピーカ6は、電気信号を音声(単なる音を含む)に変換して出力する、周知の音声出力装置である。スピーカ6は、車載カメラ診断装置1からの指示に基づいて音声を出力する。
車載カメラ診断装置1は、通常のコンピュータとして構成されており、周知のCPU、ROMや、フラッシュメモリなどの不揮発性メモリ、RAMなどの揮発性メモリ、I/O、及びこれらの構成を接続するバスライン(何れも図示略)などを備えている。車載カメラ診断装置1が備える不揮発性メモリには、CPUが種々の処理を実施するためのプログラムが格納されている。
また、車載カメラ診断装置1は、前述のプログラムを格納している記憶領域とは物理的又は論理的に独立した、書き換え可能な記憶領域である記憶部11を備える。物理的に独立した2つの記憶領域とは、それらが異なる記憶媒体であることを意味する。また、論理的に独立した2つの記憶領域とは、1つの記憶媒体が備える記憶領域を論理的に区切る(いわゆるパーティションニングする)ことによって実現される記憶領域であることを意味する。
本実施形態における記憶部11は、一例として、前述のプログラムを格納している記憶領域とは物理的に独立しているものとする。例えば、記憶部11は、HDD(Hard Disk Drive)によって実現されればよい。もちろん、記憶部11は、その他の磁気ディスクや、光学ディスク、及びフラッシュメモリなど周知の記憶媒体を用いて実現してもよい。さらに、SDカード等の、車載カメラ診断装置1から取り外し可能な記憶媒体であってもよい。この記憶部11は、次に説明する種々の機能ブロックからの指示に基づいてデータを記憶する。
車載カメラ診断装置1は、機能ブロックとして、画像データ取得部12、日時情報取得部13、車両情報取得部14、不具合診断部15、及び報知処理部16を備えている。本実施形態においてこれらの機能ブロックは、ソフトウェアによって実現されるものとする。他の態様として、これらの一部又は全部は、ハードウェアによって実現されても良い。
画像データ取得部12は、前方カメラ2から入力された映像信号を、コンピュータで処理できるような画像データに変換し、不具合診断部15に提供する。この画像データ取得部12が請求項に記載の画像取得部に相当する。
日時情報取得部13は、時計3から入力された日時情報を不具合診断部15に提供する。日時情報のデータ・フォーマットは、例えばデータの先頭から年、月、日、時、分、秒という順で並んでいるものとする。より具体的に、2014/5/30/20:10:40は、2014年5月30日の、20時10分40秒であることを示す。
なお、本実施形態では、日時情報取得部13は、時計3から日時情報を取得する態様とするが、これに限らない。他の態様として、無線通信技術によって車両外部に設けられたサーバから日時情報を取得してもよい。
車両情報取得部14は、位置検出器4から位置情報を取得する。位置検出器4から取得する位置情報は、緯度を表すデータと、経度を表すデータとを含む。各データのビット列の先頭には、そのデータが示す数値が北緯や南緯、東経、西経の何れを表すものであるかを識別するための識別子が付与されている。すなわち、位置情報は、識別子+数値情報といったデータ・フォーマットで表される。
例えば、北緯を表すデータに対しては、識別子としてNを付与し、東経を表すデータの識別子はEとする。より具体的には、北緯35.1820696、東経136.9023164の地点の位置情報は、N35.1820696、E136.9023164と表す。南緯は、数値の符号を負にすることで表しても良いし、識別子Nに代わって、南緯を表すデータであることを示す識別子Sをつけることで、北緯と南緯を区別して表しても良い。西経も同様に、データ列の頭に東経を表すEとは異なる識別子Wを付与すればよい。
また、車両情報取得部14は、今回取得した位置情報と、前回以前の位置情報の差分に基づいて自車の進行方向を算出する。例えば、前回の位置情報が示す地点から現在の位置情報が示す地点への移動方向を進行方向とする。進行方向は、北を基準とし、時計回りを正の角度で表すものとすればよい。例えば北を0度、東を90度、南を180度、西を270度として表す。
なお、進行方向は、自車両の車体の向きを表す情報、すなわち前方カメラ2が撮影している方向を特定するための情報として用いる。これは、同じ地点で撮影した画像であっても、自車両の車体の向きが異なれば、車両に搭載されている前方カメラ2の撮影方向が異なり、撮影画像の内容は異なるものとなるためである。
また、車両情報取得部14は、今回取得した位置情報が示す地点と前回以前の位置情報を示す地点の距離を、その移動に要した時間で除算することで自車両の車速を算出する。車両情報取得部14が算出した進行方向及び車速(すなわち車速情報)もまた、不具合診断部15に提供される。
なお、本実施形態では一例として、複数の時点における位置情報から、進行方向や、車速を算出する態様とするが、これに限らない。自車両が備えるジャイロセンサや、車速センサ、地磁気センサなどの検出値を取得出来る場合には、それらの検出値を用いて進行方向及び車速を特定してもよい。また、複数の時点における位置情報に基づいて算出した進行方向や車速を、ジャイロセンサや、車速センサ、地磁気センサなどの検出値に基づいて補正して用いてもよい。
不具合診断部15は、画像データ取得部12、日時情報取得部13、車両情報取得部14の各部が取得した情報に基づいて前方カメラ2の不具合が生じているか否かの判断を行う。すなわち、この不具合診断部15が、冒頭で述べた、異なる日時に同一地点、同一方向で撮影した複数の画像を比較して求まる不一致部分の大きさに基づいて前方カメラ2に不具合が生じているか否かを診断する処理を実施する。
また、不具合診断部15は、その判断を行うための準備として、画像データ取得部12が取得した画像データを、その画像データを取得した時点における位置情報、日時情報、進行方向、及び車速と対応付けて記憶部11に保存する。画像データと対応付けて保存する位置情報、日時情報、進行方向、車速は、その画像データを取得した時点における状況を特定するための情報であり、以降では、これらをまとめて属性情報と称する。
一例として本実施形態では不具合診断部15は、画像データ毎の情報を、1つのデータ構造体(いわゆるオブジェクト)で管理することとする。そして、不具合診断部15は、それら画像毎のオブジェクトをリスト化した画像データリストによって、各画像毎のオブジェクトを管理する。
図2に、記憶部11に保存されている画像データリストのデータ構成の一例を示す。図2に示すように、画像データリストは、各画像データに対応するオブジェクトを、時系列順に並べたものである。各画像データのオブジェクトは、その画像データを取得した順を表す番号(データ番号とする)によって管理される。
画像データ自体は、画像データリストとは別に記憶されてあって、各オブジェクトは、その画像データが格納されている記憶領域を指し示すデータ(アドレス情報とする)を備える。不具合診断部15は、アドレス情報を参照することによって、画像データを読み出すことができる。
また、各オブジェクトは、上述のアドレス情報の他に、その画像データを取得した時点における位置情報、日時情報、進行方向、車速を備えている。すなわち、アドレス情報と属性情報とが対応付けて保存されることによって、画像データと種々の属性情報とが対応付けられた状態となる。
例えば、画像データリストの1番目に配置されているオブジェクトは、記憶部11に記憶されている最も古い画像データ(1番目の画像データとする)に対応するオブジェクトである。1番目の画像データは、2014年5月30日の13時5分40秒に、北緯35.1820696、東経136.9023164の地点において、進行方向が北から時計回りに10度回転した方向となっている場合に撮影した画像である。また、そのときの車速は40Km/hである。なお、2番目の画像データは、その1秒後に撮影された画像データである。
なお、記憶部11が備える記憶容量は有限であるため、記憶部11の記憶容量が一杯となった場合には、画像データリストが管理する画像データのうち、日時情報が古いものから順に削除していけばよい。
ところで一般に、同一地点、同一進行方向で撮影した画像であっても、その撮影日時が異なれば、各画像に含まれる移動体の種類や、撮影画像内における位置、数、色合いなどは異なる。このため、各画像間の不一致部分の大きさに基づいて前方カメラ2が正常に動作しているか否かを診断する上で、移動体を含んだままの画像同士を比較すると、不一致部分が大きくなってしまい、診断の精度が劣化してしまう。すなわち、2つの画像を比較する際においては、移動体以外の部分が一致しているかを評価することが好ましい。
そこで、本実施形態の不具合診断部15は、周知の画像認識技術を用いて、画像データのうち、歩行者や自転車、他の車両などの移動体が撮影されている領域(移動体領域とする)を特定し、移動体領域を示すデータ(移動体領域データ)を、その画像データと対応付けて保存する。
より具体的には、不具合診断部15は、画像データに対してエッジ検出などの公知の画像処理を行い、画像に含まれている全ての物体の輪郭を抽出する。そして、画像処理を施した画像データに対して、周知のパターンマッチング処理を行うことによって、予め設定されている検出対象物(ここでは移動体)を検出する。なお、画像処理としては、エッジ検出の他にも、例えば鏡像に変換する鏡像変換やレンズの特性で画像周辺部に生じる歪みを補正する歪み補正等も行う態様としてもよい。
そして、不具合診断部15は、2つの画像データを比較する際に、2つの画像データの少なくとも何れか一方で移動体領域となっている部分については、互いに対応する画素が一致しているか否かの比較を行わない。言い換えれば、不具合診断部15は、2つの画像データの両方において移動体が映っていない部分を比較して、不一致部分を抽出する。
すなわち、移動体領域データは、後述する2つの画像間の不一致部分を抽出する処理(不一致部分抽出処理とする)において、一致しているか否かの比較対象として採用しない領域を定義するデータとして用いられる。また、画像認識処理によって画像中の移動体領域を特定する処理(移動体領域特定処理とする)は、後述する不一致部分抽出処理の精度を向上させるための準備処理と言える。
以降では便宜上、1つの画像データにおいて、移動体領域となっていない領域を比較可能領域と称する。また、2つの画像データのどちらにおいても移動体領域となっていない領域を相互比較可能領域と称する。比較可能領域及び相互比較可能領域には、基準被写体などが含まれている。
例えば、図3に示す前方カメラ2によって撮影された画像において、他車両M1〜M6が移動体として検出される。したがって、図3に示す画像データに対応する移動体領域データは、画像データのうち他車両M1〜M6が写っている領域を指し示すデータとなる。
図4は、図3に対応する図であって、ドット柄のハッチングで指し示す移動体領域Rm1〜6が、不一致部分抽出処理において比較対象として採用されない領域となる。図4において移動体領域Rm1〜6以外の領域が、当該画像データにおける比較可能領域に相当する。
ここで、図5に示すフローチャートを用いて、不具合診断部15が実施する不具合診断関連処理について説明する。不具合診断関連処理は、画像データ取得部12、日時情報取得部13、車両情報取得部14の各部が取得した情報に基づいて前方カメラ2に不具合が生じているか否かを判断するための一連の処理である。図5に示すフローチャートは、逐次(例えば1秒毎に)実施されれば良い。
まず、ステップS100では、画像データ取得部12から画像データを取得してステップS110に移る。ステップS110では、当該画像データに対して前述の移動体領域特定処理を実施してステップS120に移る。すなわち、このステップS110では、ステップS100で取得した画像データに対する移動体領域データを生成する。このステップS110の移動体領域特定処理を実施する不具合診断部15が請求項に記載の移動体領域特定部の一例に相当する。
ステップS120では、日時情報取得部13から日時情報を、車両情報取得部14から位置情報、進行方向、及び車速を取得する。すなわち、ステップS120では、ステップS100で取得した画像データの属性情報を取得して、ステップS130に移る。
ステップS130では、画像保存処理を実施する。この画像保存処理では、ステップS100で取得した画像データを、ステップS120で取得した属性情報と対応付けて記憶部11に保存する。
より具体的には、ステップS100で取得した画像データを記憶部11に格納するとともに、画像データリストに、当該画像データに対応するオブジェクトを追加する。ここで追加されるオブジェクトは、前述の通り、ステップS100で取得した画像データの保存場所を指し示すアドレス情報と種々の属性情報を対応付けたデータである。このステップS130を画像保存処理と称する。
また、本実施形態ではこのステップS130で、ステップS110で生成した移動体領域データを、その元となった画像データと対応付けて保存する。移動体領域データは、当該画像データのオブジェクトに含まれてあっても良いし、独立して備えられてあってもよい。画像データの読み出しに伴って、当該画像データに対応する移動体領域データも読み出されるデータ構成となっていればよい。ステップS130での処理が完了するとステップS140に移る。なお、このステップS130を実施する不具合診断部15が請求項に記載の第1記憶処理部に相当する。
ステップS140では、過去画像検索処理を実施する。この過去画像検索処理では、画像データリストから、ステップS120で取得した(すなわち、現在の)位置情報及び進行方向と一致する位置及び進行方向で撮影された画像データを検索する。なお、このとき、前ステップS130で格納したデータ、すなわち、今回の不具合診断関連処理で追加した画像データ(現在画像データと称する)は、検索の対象外とする。
そして、ステップS140での過去画像検索処理の結果、現在の位置情報及び進行方向と一致する位置及び進行方向で撮影された画像データ(過去画像データとする)が存在する場合には、ステップS149がYESとなってステップS150に移る。一方、現在の位置情報及び進行方向と一致する位置及び進行方向で撮影された画像データが存在しなかった場合には、ステップS149がNOとなって本フローを終了する。
なお、測位結果や進行方向の検出結果は、一般的にある程度の誤差を含むとともに、当該不具合診断関連処理を実行する間隔(ここでは1秒)に起因する誤差も含みうる。したがって、ここでの検索条件は、完全な一致に限らない。現在の位置情報と、過去に取得した画像データの位置情報との差が所定の閾値以下であれば、位置情報が一致していると見なす。また、進行方向についても同様に、完全な一致に限らない。現在の進行方向と、比較の対象としている進行方向との差が所定の閾値以下であれば、進行方向が一致していると見なす。
ステップS150では、不一致部分抽出処理を実施してステップS159に移る。この不一致部分抽出処理については、別途図6に示すフローチャートを用いて説明する。図6に示す不一致部分抽出処理は、図5のステップS150に移った際に開始される。
まず、ステップS151では、ステップS140で見つかった過去画像データを読み出してステップS152に移る。このとき、当該過去画像データの移動体領域データも同時に読み出す。このステップS151を実施する不具合診断部15が請求項に記載の過去画像読み出し部に相当する。
ステップS152では、現在画像データと、ステップS151で読み出した過去画像データとを比較し、不一致となっている部分を抽出する。このステップS152を実施する不具合診断部15が請求項に記載の不一致部分抽出部の一例に相当する。
より具体的には、現在画像データと過去画像データとを、互いに対応する位置の画素が一致しているか否かを判定していく。2つの画像データにおいて互いに対応する位置の画素が一致しているか否かは、例えばそれぞれの画素の輝度や色に基づいて判定すればよい。
例えば、2つの画像データにおいて互いに対応する位置の画素の輝度の差が一定の閾値以内となっている場合には、その画素は一致していると判定する。一方、2つの画像データにおいて互いに対応する位置の画素の輝度の差が一定の閾値以内となっていない場合には、その画素は一致していないと判定する。
ここで用いる閾値は、互いに対応する位置の画素が異なる被写体を映していると判定するための閾値であって、適宜設計されればよい。輝度情報に代わって色情報を用いて各画素が一致しているか否かを判定する場合には、各画素の色が、周知の色空間において所定の閾値以上離れている場合に互いの画素が一致していないと判定すればよい。
ここでの画素毎の一致/不一致の判定処理は、現在画像データと過去画像データとの間で相互比較可能領域となっている部分の画素を母集団として実施する。そして、上述した判定処理を、2つの画像データにおいて比較可能な全ての画素に対して実施し、互いの画素が一致していないと判定した部分(不一致部分)を特定する。
ここで、一例として、図4に示す画像データを現在画像データ、図7に示す画像データを、現在の位置情報及び進行方向と一致する状況で撮影された過去画像データとした場合の、不一致部分について図8、図9を用いて説明する。
なお、図4及び図7においてドット模様のハッチングを施している領域は、移動体領域を表している。また、図4及び図7に示す画像データは、いずれも前方カメラ2に不具合が生じていない状態で撮像された画像データとする。
図8は、図4に示す現在画像と図7に示す過去画像とを、比較のために重ねあわせた概念図である。図8において、破線は過去画像に写っている物体の輪郭を、実線は現在画像に写っている物体の輪郭を示している。図8において、実線と破線とがずれている部分は、現在画像と過去画像との間で互いに対応する被写体の、画像内での位置がずれている部分を表している。
各画像における被写体の位置がずれている部分は、それぞれ別の物体を映しているため、その輝度は異なる値となって不一致部分として抽出される。より具体的には、図9における斜め線のハッチングで示す部分が、図4及び図7に示す画像データ間の不一致部分として抽出される。
なお、図4及び図7に示す画像データは、いずれも前方カメラ2に不具合が生じていない状態で撮像された画像データであるため、現在画像と過去画像との間の不一致部分は相対的に小さい値となる。以降では、現在画像と過去画像との間の不一致部分の大きさを不一致割合で表す。不一致割合とは、2つの画像データにおいて相互比較可能領域となっている画素数に対する不一致部分と判定された画素の数の割合である。
一方、撮影画像の一部に影響を及ぼすような不具合が前方カメラ2に発生している場合、画像データにおいて不具合の影響を受けている部分は、過去の正常な状態であるときに撮影された画像データと異なる画素となる。そのため、その不具合が影響を及ぼしている部分の大きさが大きいほど不一致部分が増大し、不一致割合も増大する。
前方カメラ2に生じている不具合によって、撮影範囲の一部が欠けてしまっている画像の一例を図10に示す。なお、ここでの撮影範囲の一部が欠けた画像とは、画像データの一部が実際の画像とは異なる画像を表すデータとなっている画像を指す。図10中の領域Rxが、前方カメラ2に生じている不具合に起因して、実際とは異なる画像となっている領域(不具合影響領域とする)を表している。
画像データの一部の情報が欠けてしまう原因としては、前方カメラ2が備える撮像素子のうちの一部が破損していたり、撮像素子から出力される信号を伝達及び処理する周辺回路の一部に異常が生じていたりする場合などがある。また、前方カメラ2のレンズにゴミが付着していたり、レンズに衝撃が加わることによって、レンズ自体に欠損が生じている場合にも、同様に、撮影範囲の一部の情報が欠けてしまう。
そして、現在画像データが不具合影響領域Rxを含んでいる場合、画像比較処理の結果、図11に示すように、当該不具合影響領域Rxに対応する領域Rdxは、不一致部分(斜め線のハッチング部分)として抽出される。すなわち、前方カメラ2に不具合が生じている場合には、領域Rdxの分だけ不一致部分の面積が増大し、不一致割合も増加する。
ステップS153では、2つの画像データ間の不一致部分を抽出したデータ(不一致部分データとする)を、位置情報などの属性情報と対応づけて記憶部11に保存して本フローを終了する。すなわち、この不一致部分抽出処理の呼び出し元である不具合診断関連処理に戻ってステップS159に移る。このステップS153を実施する不具合診断部15が請求項に記載の第2記憶処理部の一例に相当する。
なお、現在画像データに含まれる被写体の位置や大きさと、過去画像データに含まれる被写体の位置や大きさは、それぞれを撮影した時の地点や進行方向の許容範囲内の誤差に起因して、微妙に異なっていることが想定される。
そこで、ステップS152での画像比較処理を実施する際には、2つの画像の特徴点が一致するように、何れか一方の画像に対して拡大縮小、平行移動、回転などの画像処理を施すことが好ましい。2つの画像の特徴点が一致させる方法は、周知のものを援用すればよい。なお、現在画像と過去画像のうち、現在画像と過去画像の特徴点が一致するように画像処理を施す画像は、過去画像と現在画像のどちらでもよい。例えば、過去画像を基準として現在画像に対して画像処理を施せば良い。
また、同一地点、同一方向からの撮影した画像であっても、撮影した時間帯や天気によって、撮影画像の明るさは異なると想定される。そこで、ステップS152での画像比較処理を実施する際には、2つの画像の輝度分布や色分布が近くなるように周知の画像処理を施すことが好ましい。または、2つの画像の輝度分布や色分布が所定の閾値以上乖離している場合には、ステップS152を実施しない態様としてもよい。その他、現在画像と過去画像との不一致部分を抽出する精度を向上させるための施策については、別途後述する。
ステップS159では、現在画像データと過去画像データにおける不一致割合を算出する。そして、不一致割合が、所定の閾値以上である場合には、ステップS159がYESとなってステップS160に移る。不一致割合が所定の閾値未満である場合には、ステップS159がNOとなって本フローを終了する。このステップS159を実施する不具合診断部15が請求項に記載の不具合判定部の一例に相当する。
ここで用いる閾値は、撮影画像の一部又は全部に影響を及ぼす不具合が前方カメラ2に発生しているか否かを判定するための閾値である。すなわち、ステップS159がYESと判定したということは、前方カメラ2に不具合が生じていると判定したことを意味する。また、ステップS159がNOと判定したということは、前方カメラ2に不具合が生じていないと判定したことを意味する。このステップS159での判定処理(便宜上、不具合判定処理とする)に用いる閾値は、適宜設定されればよい。
例えば、撮影画像において相対的に小さい領域に影響を及ぼすような不具合も検出させたい場合には、不一致割合が相対的に小さい場合に不具合が発生していると判定する必要があるため、閾値も小さく設定する。その場合には、上述したような現在画像と過去画像との不一致部分を抽出する精度を向上させる必要があるための仕組みを導入することが好ましい。
また、例えば撮影範囲の4分の1に相当する領域など、撮影画像において相対的に大きい領域に影響を及ぼすような不具合を検出できればよい場合には、閾値は相対的に大きく設定すればよい。
ところで、過去画像データが一定時間(例えば1ヶ月)以上過去に取得されたものである場合、ビルが取り壊わされていたり、コンビニエンスストアが別の店舗に変わっていたりする可能性がある。そのようにビルなどの基準被写体が変化していると、その基準被写体の変化に起因して不一致割合が増大し、不具合の判定(ステップS159)が適切にできなくなる可能性がある。
そこで、ステップS140での過去画像検索処理において、日時情報に対して条件を設けることによって、所定の時間以上前に取得した画像データを検索の対象外としてもよい。例えば1ヶ月以降過去のデータは検索対象外とする条件を追加する。なお、1ヶ月以上前に取得した画像データ及びそのオブジェクトは、記憶部11から削除していく態様としてもよい。何れの態様においても、現在から一定時間以内に撮影された画像データを母集団とした過去画像検索処理が行われるようになる。
ステップS160では、前方カメラ2に不具合が生じている旨をドライバに報知するように報知処理部16に依頼する。この不具合診断部15からの報知要求を受けた報知処理部16は、表示部5に前方カメラ2に不具合が生じている旨を表す情報(テキストや画像)を表示する。
また、報知処理部16は、スピーカ6から警報音を出力させたり、前方カメラ2に不具合が生じている旨を表す音声を出力させたりしてもよい。前方カメラ2に不具合が生じている旨の報知は、表示部5とスピーカ6の何れか一方だけを利用して実施されてもよいし、その他の媒体と組み合わせて実施されても良い。例えば、ドライバに対して振動を印加する振動発生装置を報知媒体として用いてもよい。
このステップS160による報知を受けて、ドライバは前方カメラ2に不具合がある旨を認識でき、前方カメラ2の使用を中止したりなどの処置を講ずることができる。
ところで、前方カメラ2が撮影している画像を表示部5に逐次表示するようなシステムとなっている場合には、ドライバは、当該表示部5を見れば前方カメラ2に不具合が生じていることを認識することができる。
しかしながら、近年は、車載カメラが撮影した画像データに基づいてドライバの運転操作を支援する運転支援システムが開発されている。例えば、前方カメラ2が撮影した画像データに基づいて、自車両の先行車両を特定するとともに、先行車両との相対距離や相対速度などを算出し、車間距離を一定に保つACC(Adaptive Cruise Control)システムがある。また、先行車両と接触する可能性が高いと判定した場合には、その旨をドライバに報知したり、自動でブレーキをかけたりするシステムを搭載した車両も販売されている。
前方カメラ2が撮影した画像データを、そのような運転支援システムにおける内部処理(例えば先行車両の認識処理など)に用いる場合、前方カメラ2が撮影した画像を表示部5に表示しない構成も想定される。そのような構成においては、前方カメラ2が撮影した画像が表示部5に表示されないため、前方カメラ2に部分的な不具合が生じていることにドライバは気付きにくい。
また、前方カメラ2が撮影した画像データを、上述したような運転支援システムに用いる場合には、その撮影画像の一部に影響を及ぼすような不具合が発生していると、先行車両を適切に検出できなくなってしまう可能性がある。すなわち、前方カメラ2が撮影した画像データを運転支援システムで用いる場合には、前方カメラ2には、正常に動作していることがより強く求められる。そして、仮に前方カメラ2に不具合が生じた場合には、より精度よく、その不具合の発生を検出する必要がある。すなわち、撮影画像の一部に影響を及ぼすような不具合の発生についても検出する必要がある。
本実施形態の構成によれば、撮影画像の一部に影響を及ぼすような不具合も検出できるため、上述したような運転支援システムに画像データを提供するカメラの診断にも適用することができる。そして、運転支援システムの動作の信頼性を、さらに高めることができる。
また、車載カメラ診断装置1は、運転支援システムが備える画像処理装置に、ソフトウェアとして追加することで実現することができる。すなわち、画像処理装置を既に搭載している車両であれば、本車載カメラ診断装置1のためのハードウェアなどを新たに必要としないため、この車載カメラ診断装置1を車両に搭載するためのコストを抑制することができる。
なお、以上では車載カメラとして、自車両の前方を撮影する前方カメラ2を診断する態様を例示したが、これに限らない。車載カメラ診断装置1の診断対象とする車載カメラは、自車両の後方を撮影する後方カメラであってもよいし、自車両の側方を撮影する側方カメラであってもよい。もちろん、車載カメラ診断装置1は複数の車載カメラに対して診断を実施してもよい。
また、本実施形態では、ステップS159の不具合判定処理で不一致割合が所定の閾値以上であった場合には、不具合が生じていると判定する態様を例示したが、これに限らない。ステップS159の不具合判定処理で不一致割合が所定の閾値以上となっているという判定結果が複数回連続した場合に、不具合が生じていると判定してもよい。
さらに、ステップS159の不具合判定処理を複数回実施し、そのうち、不一致割合が所定の閾値以上となっていると判定された回数が、所定の割合(例えば80%)となっている場合に、不具合が生じていると判定してもよい。
また、本実施形態では、不一致割合を用いて、過去画像データと現在画像データとが異なるか否か、すなわち現在、前方カメラ2に不具合が生じているか否かを判定する態様とした。しかし、過去画像データと現在画像データが一致しているか否かを評価する指標は、不一致割合に限らない。周知の画像間の類似度を計算する手法(例えばPerceptual Hash)を用いてもよい。その場合、算出された類似度が所定の閾値以下である場合に、過去画像データと現在画像データが一致しておらず、何かしらの不具合が前方カメラ2に生じていると判定すれば良い。
<第2の実施形態>
上述した第1の実施形態では、現在画像と過去画像における不一致部分の割合に基づいて不具合が生じているか否かを判定する態様を例示したが、これに限らない。次に、本発明の第2の実施形態について、図を用いて説明する。
第2の実施形態における車載カメラ診断システム100は、第1の実施形態における車載カメラ診断システム100と同様の構成によって実現することができる。便宜上、前述の第1の実施形態の説明に用いた図に示した部材と同一の機能を有する部材については、同一の符号を付し、その説明を省略する。また、構成の一部のみを説明している場合、構成の他の部分については先に説明した第1の実施形態を適用することができる。
第2の実施形態と、第1の実施形態との主たる違いは、不具合診断部15が実施する不具合診断関連処理の内容である。以降では、この第2の実施形態における不具合診断関連処理について、図12に示すフローチャートを用いて説明する。図12に示すフローチャートは、第1の実施形態と同様に、逐次(例えば1秒毎に)実施されればよい。
まず、ステップS200では、画像データ取得部12から画像データを取得してステップS210に移る。ステップS210では、当該画像データに対して前述の移動体領域特定処理を実施してステップS220に移る。すなわち、このステップS210では、ステップS200で取得した画像データに対する移動体領域データを生成する。このステップS210の移動体領域特定処理を実施する不具合診断部15が請求項に記載の移動体領域特定部の一例に相当する。ステップS220では、種々の属性情報、すなわち日時情報、位置情報、進行方向、及び車速を取得して、ステップS230に移る。
ステップS230では、画像保存処理を実施してステップS240に移る。より具体的には、ステップS200で取得した画像データを、ステップS220で取得した属性情報と対応付けて記憶部11に保存する。また、ステップS210で生成した移動体領域データを、ステップS200で取得した画像データと対応付けて記憶部11に保存する。
ステップS240では、画像データリストから、現在の位置情報及び進行方向と一致する位置及び進行方向で撮影された画像データ(すなわち過去画像データ)を検索する。なお、このとき、今回の不具合診断関連処理で取得した現在画像データは、検索の対象外とする。
そして、ステップS240での過去画像検索処理の結果、現在の位置情報及び進行方向と一致する、位置及び進行方向で撮影された過去画像データが存在する場合には、ステップS249がYESとなってステップS250に移る。一方、現在の位置情報及び進行方向と一致する、位置及び進行方向で撮影された過去画像データが存在しなかった場合には、ステップS249がNOとなって本フローを終了する。
ステップS250では、不一致部分抽出処理を実施してステップS259に移る。なお、この不一致部分抽出処理で作成された不一致部分データは、図13に示すように、そのデータが保存されているアドレスの情報、位置情報、作成日時などとの対応付けられた、不一致部分データリストとして管理される。
ステップS259では、不一致部分データが複数存在するか否かを判定する。すなわち、不一致部分データリストが複数の不一致部分データを備えている場合には、ステップS259がYESとなってステップS260に移る。一方、不一致部分データリストが複数の不一致部分データを備えていない場合には、ステップS259がNOとなって本フローを終了する。
ステップS260では、複数の不一致部分データに基づいて、不具合影響領域特定処理を実施する。この不具合影響領域特定処理は、複数の不一致部分データを比較することによって、撮影画像が不具合影響領域を含んでいるか否か、及び撮影画像が不具合影響領域を含んでいる場合には、その位置を特定する処理である。この不具合影響領域特定処理について、図14、図15、図16を用いて説明する。
図14は、ある不一致部分データの概念図であって、図中の斜め線のハッチング部分が、この不一致部分データが示す不一致部分を表している。また、図15は、図14に示す不一致部分データとは別の不一致部分データが示す不一致部分を表している。
不具合影響領域特定処理において不具合診断部15は、図14に示す不一致部分データと、図15に示す不一致部分データを比較して、共通して不一致部分となっている箇所を特定する。図16において網状のハッチングを施した部分Rc1及びRc2は、図14と図15において共通して不一致部分となっている部分を表しており、図16中の破線で囲む部分は、図14と図15の何れか一方でのみ不一致部分となっている領域を表している。
仮に前方カメラ2に不具合が生じてあって、その不具合の影響によって撮影画像の一部が欠けている画像となっている場合、その不具合影響領域は、複数の不一致部分データにおいて共通して不一致部分となっているはずである。すなわち、複数の不一致部分データにおいて共通して不一致部分となっている領域とは、不具合影響領域である可能性が高い。
そこで、この第2に実施形態における不具合診断部15は、複数の不一致部分データにおいて、共通して不一致部分となっている部分を不具合影響領域と判定する。なお、ここでは、2つの不一致部分データにおいて共通して不一致部分となっている部分を不具合影響領域と判定する態様としたが、これに限らない。3つ以上(例えば4つ)の不一致部分データにおいて共通して不一致部分となっている部分を不具合影響領域と判定する態様としてもよい。
より多くの不一致部分データにおいて共通して不一致部分となっているほど、不具合影響領域である可能性が高まる。すなわち、不具合影響領域特定処理で用いる不一致部分データの数が多いほど、より正確な不具合の発見、及びその不具合影響領域の特定を実現することができる。このステップS260の不具合影響領域特定処理を実施する不具合診断部15が、請求項に記載の不具合影響領域特定部の一例に相当する。
ステップS269では、ステップS260での不具合影響領域特定処理において不具合影響領域が検出されたか否かを判定する。ステップS260での不具合影響領域特定処理において、不具合影響領域が検出された場合には、ステップS269がYESとなってステップS270に移る。一方、ステップS260での不具合影響領域特定処理において、不具合影響領域が検出されなかった場合には、ステップS269がNOとなって本フローを終了する。このステップS269を実施する不具合診断部15が請求項に記載の不具合判定部の一例に相当する。
ステップS270では、第1の実施形態におけるステップS160と同様に、前方カメラ2に不具合が生じている旨をドライバに報知するように報知処理部16に依頼する。なお、この第2の実施形態の態様によれば、より具体的に、撮像領域のどの部分が不具合影響領域となっているかを示す情報を報知してもよい。
以上で述べたように、第2の実施形態では第1の実施形態よりも精度良く、前方カメラ2に不具合が生じているか否かを判定する。また、前方カメラ2に不具合が生じている場合には、撮像画像のうち、その不具合の影響を受けている領域を特定することができる。
なお、不具合影響領域特定処理では、画像データの或る領域が不具合影響領域となっている確率(不具合確率とする)を、複数の不一致部分データのうち、その領域を不一致部分として示している不一致部分データの数に基づいて評価してもよい。
例えば、4つの不一致部分データを比較した結果、3つの不一致部分データにおいて不一致部分となっている領域は、不具合確率を75%とする。また、4つの不一致部分データを比較した結果、1つの不一致部分データにおいて不一致部分となっている領域は、不具合確率を25%とする。このような態様では、不具合確率が所定の閾値(例えば80%)以上となっている領域を不具合影響領域と判断すればよい。
また、ステップS270では、画像データの全ての領域に対して不具合影響領域となっている領域の割合に応じて、ドライバに、前方カメラ2に不具合が生じている旨を訴えかける強さを変化させても良い。
例えば、画像データの全領域に対して不具合影響領域が占める割合が許容範囲内(例えば1〜2%)である場合には控えめな報知態様で報知し、一方、不具合影響領域の割合が5%以上である場合には、ドライバに対してより強く訴えかける報知態様で報知を実施する。すなわち、不具合影響領域の割合が高いほど、より強くドライバに訴えかける態様とする。
さらに、画像データの全領域に対する不具合影響領域の割合の大きさや、不具合確率の高さに応じて、ドライバに報知する情報の内容を変更してもよい。例えば、画像データの全ての領域に対して不具合影響領域となっている領域の割合の大きさが大きくなるほど、また、不具合確率が高くなるほど、ドライバに前方カメラ2の点検を行うように促す内容とすればよい。
以上、本発明の第1及び第2の実施形態を説明したが、本発明は上述の実施形態に限定されるものではなく、次に述べる変形例も本発明の技術的範囲に含まれる。さらに、下記以外にも要旨を逸脱しない範囲内で種々変更して実施することができる。
なお、下記の変形例のうち、特に断りを入れていないものついては、第1の実施形態と第2の実施形態のどちらにも適用可能である。また、以降で述べる種々の変形例の中には、不具合診断関連処理を実施しない条件を設けることによって、不具合診断関連処理を実施する場合を限定するものがある。そのような変形例によれば、前方カメラ2に不具合が生じているか否かの判定の精度を上げるとともに、消費電力を抑制することができる。
<変形例1>
自車両が停車している場合には、不具合診断関連処理(特に、画像保存処理)を実施しない態様としてもよい。これは、次の理由による。
自車両が停車している場合には、信号待ちで停車している場合が含まれる。信号待ちで停車している場合には、先行車両との車間距離は車両走行時に対して小さくなりやすく、先行車両が前方カメラ2の撮影画像に大きく映りこんでしまう可能性が高くなる。
そして、先行車両(すなわち移動体)が前方カメラ2の撮影画像に大きく映りこんでいる場合には、画像データにおける移動体領域が占める割合が大きくなってしまい、比較可能領域が相対的に小さくなってしまう。
また、不具合診断関連処理を実施する毎に画像データを保存していくため、停車中においても不具合診断関連処理を実施すると、同一地点における画像データが多数となってしまう。すなわち、記憶部11の記憶領域を効率的に利用できているとは言えない。
以上を鑑みて、停車中においては不具合診断関連処理を実施しない態様としてもよい。なお、自車両が停車しているか否かは、車速に基づいて判定すればよい。すなわち、車速が所定の閾値(例えば5km/h)以下となっている場合に停車していると判定すればよい。言い換えれば、車速が所定の閾値以上となっている場合に不具合診断関連処理を実施する態様とすることが好ましい。ここで用いる閾値は、自車両が停車していると見なすことができる値とすればよく、適宜設計されればよい。
また、シフトポジションを検出するシフトポジションセンサや、サイドブレーキのオン/オフを検出するサイドブレーキセンサなどの車載センサの検出値を取得出来る場合には、その検出値に基づいて自車両が停車しているか否かを判定しても良い。
<変形例2>
前方カメラ2の撮影方向(すなわち自車両前方)に存在する物体との距離を検出する測距センサを備えている場合には、その測距センサの検出結果に基づいて、不具合診断関連処理を実施するか否かを判断してもよい。
例えば、前方カメラ2の撮影方向の、自車両から所定距離(例えば10m)以内に他の物体が存在していることを測距センサが検出している場合には、不具合診断関連処理を実施しない態様としてもよい。これは、前方カメラ2の撮影方向において、自車両から所定距離(例えば10m)以内に他の物体が存在しているということは、自車両前方に存在する物体が前方カメラ2の撮影画像に大きく映りこんでいる可能性が高いことを示唆しているためである。
なお、測距センサとしては、例えば超音波センサや、ミリ波レーダ、レーザーレーダ等の、探査波を逐次送信し、その反射波を逐次受信することで、自車両周辺に存在する物体との距離や位置を検出するセンサを利用することができる。
また、検出している物体が移動体か否かを識別できる場合には、単純に他の物体ではなく、他の移動体が前方カメラ2の撮影方向、自車両から所定距離(例えば10m)以内に存在している場合に不具合診断関連処理を実施しない態様としてもよい。測距センサが検出している物体(検出物とする)が、移動体であるか否かは、その検出物の形状や、その検出物が移動しているか否かに基づいて識別すればよい。例えば検出物の形状が車両などの形状パターンと一致している場合には、その検出物を移動体と見なせば良い。また、検出物が移動している場合に、移動体と見なせばよい。
<変形例3>
さらに、自車両の車速が所定の速度以上(例えば60Km/h)となっている場合には、不具合診断関連処理を実施しない態様としてもよい。自車両が高速で走行している場合、自車両から相対的に近い距離にある被写体は、ピントが合いにくく、撮影画像において被写体の像がぶれて(ぼやけて)しまいやすい。すなわち、画像比較処理において自車両から相対的に近い距離に存在する被写体が写っている領域が不一致部分となりやすい。
したがって、自車両の車速が所定の速度以上となっている場合には、不具合診断関連処理を実施しない態様とすることが好ましい。もちろん、上述した変形例1と組み合わせて、自車両の車速がある一定の範囲内、例えば10Km/h以上であって60Km/h以下となっている場合に不具合診断関連処理を実施する態様としてもよい。
<変形例4>
自車両が、ガソリンスタンド、パーキングエリアなどの店舗の駐車場に停車している場合、自車両周辺には他の移動体(他車両や歩行者など)が相対的に多く存在し、それに伴って、撮影画像における移動体が占める割合が高くなることが想定される。
そこで、自車両が店舗の駐車場に停車している場合には、不具合診断関連処理を実施しない態様としてもよい。言い換えれば、不具合診断部15は、位置情報と地図データに基づいて、自車両が道路上を走行していると判定した場合に、不具合診断関連処理を行う態様としてもよい。
自車両が店舗の駐車場に存在しているか否かは、自車両の位置情報と、図示しないナビゲーション装置が備える地図データに基づいて判定すればよい。なお、この地図データは、道路の接続関係を示す道路網データの他に、施設などの情報を、その所在地と対応付けた情報である施設情報も含んでいるものとする。
また、自車両が道路上を走行しているか否かは、位置情報の時系列データを生成し、その時系列データから定まる自車両の走行軌跡が地図データに示される道路の形状と一致しているか否かに基づいて判定されればよい。その他、車速が所定の閾値(30km/h)となっている場合に道路を走行していると判定してもよい。ここで用いる閾値は、車両が駐車場内を走行する可能性が低い速度、すなわち道路を走行している可能性が高い速度とすればよい。
<変形例5>
また、自車両が自走式立体駐車場の中や、高架上、高架下で併走する他の道路が存在する道路を走行している場合には、緯度、経度の位置情報だけでは、過去に画像を撮影した地点と同一地点にいるか否かを判定することができない。そこで、不具合診断部15は、自車両の位置情報と地図データに基づいて、高さ方向に複数の異なる位置を取りうる場所に自車両が存在していると判定した場合には、不具合診断関連処理を実施しない態様としてもよい。高さ方向に複数の異なる位置を取りうる場所とは、前述の通り、自走式立体駐車場や、高架上、高架下で併走する他の道路が存在する道路などが該当する。
<変形例6>
なお、上述した実施形態において位置情報は、緯度及び経度によって表す態様を例示したが、これに限らない。位置情報は、基準面(例えば海面)からの高さを表す高度情報を含んでいても良い。このような構成によれば、変形例5で述べたような場所においても、自車両が過去画像に対応付けられている地点と同一地点にいるか否かを識別することができる。
<変形例7>
不具合診断部15は、例えば通勤路などの、相対的に自車両が頻繁に走行する道路(日常利用道路とする)を走行している場合に、不具合診断関連処理を実施する態様としてもよい。日常利用道路を走行している時に格納した画像データであれば、後日その地点を同じ進行方向で通過する可能性が高いため、過去画像として画像比較処理で用いられる可能性が高い。
一方、旅先などで取得した画像データは、その画像データを撮影した地点を再び同じ進行方向で走行する可能性は低いため、過去画像として画像比較処理に用いられる可能性もまた低い。すなわち、旅先などの習慣的に走行されない道路を走行している場合には、不具合診断処理を実施しても無駄になる可能性が高い。
そこで、この変形例7のように自車両が日常利用道路を走行している場合に、不具合診断関連処理を実施する態様とすれば、記憶部11に格納している画像データを効率的に利用する事ができる。
日常利用道路は、ユーザによって予め登録されてあっても良いし、自車両の走行軌跡の情報を蓄積することで、所定回数以上走行した道路を自動的に日常利用道路に設定してもよい。日常利用道路としては、通勤経路を構成する道路の他、自宅周辺の道路などが該当する。
また、自宅から所定距離(例えば500m)以内の道路を、日常利用道路として自動的に設定してもよい。すなわち、自車両の現在位置が自宅から所定距離以内となっている場合に、不具合診断関連処理を実施する態様としてもよい。自宅の位置は、ユーザによって登録されてあっても良いし、車両のイグニッション電源が入り切りされた地点の位置情報を蓄積していき、最も頻繁にイグニッション電源が入り切りされた地点を自宅と見なしても良い。
<変形例8>
さらに、例えば自宅の駐車のような、撮影画像の内容が変化しにくい地点を記憶部11に登録しておき、自車両がその地点に存在している場合に不具合診断関連処理を実施する態様としてもよい。
<変形例9>
前方カメラ2が車室内にあってワイパーが撮像範囲に映りこむ場合は、ワイパーが映りこむ事によって不具合の有無の判断が正常に行えない可能性がある。そこで、ワイパーモータが作動している場合には、不具合診断関連処理を実施しない態様としてもよい。
<変形例10>
雨天や濃霧の中では安定した画像を撮像する事が困難になるため、雨天や濃霧などの所定の天候条件となっている場合には、不具合診断関連処理を実施しない態様としてもよい。雨天であるか否かは、車両に搭載されたレインセンサの検出結果に基づいて判定されても良いし、ワイパーモータの駆動状況に基づいて判定されても良い。すなわち、ワイパーモータが駆動している場合には、雨天であると判定すればよい。
また、濃霧であるか否かは、フォグランプが点灯しているか否かによって判定すれば良い。例えばフォグランプが点灯している場合には濃霧が発生していると判定する。なお、現在の天候を表す情報は、車載カメラ診断装置1が利用可能な通信装置を用いて、車両外部、例えば天候情報や交通情報を配信する交通情報センタなどから取得してもよい。
<変形例11>
また、道路の混雑度合いは平日と休日で異なるため、撮影日が平日か休日かによって、画像に映り込む移動体の数や大きさも変化する。したがって、平日の画像データと休日の画像データとを区別して、不具合診断関連処理を実施するようにしてもよい。また、画像データを曜日毎に区別して管理し、過去画像検索処理では、現在の曜日と同じ曜日の画像データを検索の対象とする態様としてもよい。
<変形例12>
前方カメラ2が撮影した画像の上方領域には基準被写体が映りこみやすいため、撮影画像の上方領域を優先的に利用して判定を行う態様としてもよい。
<変形例13>
位置検出器4の測位精度が低い場合には、位置情報の誤りに起因して誤った判定をしてしまう可能性が高まる。このため、位置検出器4の測位精度が低いと見なすことが出来る場合には、不具合診断関連処理を実施しない態様としてもよい。
例えば不具合診断部15は、GPS受信機が捕捉しているGPS衛星の数が3個以下となっている場合や、GPS衛星が補足できず、ジャイロセンサや車速センサから自車位置を推測している場合に、位置検出器4の測位精度が低いとみなせばよい。
<変形例14>
イグニッション電源がオフとなる直前の画像と、その後、イグニッション電源がオンとなった直後に取得した画像とを比較して不具合の判定を実施する態様としてもよい。なお、この変形例14の処理は、イグニッション電源がオフとなった時の位置情報と、オンとなった時の位置情報が等しい場合に実施する態様とした方がより正確な判定が行うことができる。
<変形例15>
現在の位置情報及び進行方向と等しい状況において撮影された画像が、記憶部11に複数記憶されている場合には、それらの複数の画像のうちの何れか1つを下記の(a)〜(c)に示す方針の何れかに基づいて過去画像として採用すればよい。
(a)日時情報が最も新しい画像を過去画像とする。
(b)日時情報のうちの撮影時刻が現在の時刻と最も近い画像を過去画像とする。
(c)撮影時の車速が現在の車速に最も近い画像を過去画像とする。
(a)の方針によれば、過去画像が撮影された時点から現在までの間の経過時間が最も小さいものを選択することに成るため、その間にビルなどの建物の基準被写体が変化(取り壊しや建造など)している可能性を抑制することができる。したがって、基準被写体の変化に起因して不一致部分を増大させてしまう恐れを抑制でき、不具合の有無の判定精度を向上させることができる。
(b)の方針によれば、できるだけ撮影時刻が現在時刻と近い画像を過去画像として採用する。交通状況(混雑度合いなど)は、時間帯によって異なるとともに、時間帯によって日射量、すなわち明るさが異なる。
道路の混雑度合いが異なれば、画像における移動体領域の面積などが変化する。また、明るさが異なれば、同一物を撮影していても画像が備える各画素の輝度情報や色情報は異なってくる。例えば、夕方撮影された画像と、昼間に撮影された画像では、色味は異なる。したがって、できるだけ撮影時刻が現在時刻と近い画像を過去画像として採用したほうが、時刻の差に起因する不一致部分の増大を抑制でき、不具合の有無の判定精度を向上させることができる。
(c)の方針によれば、撮影時の車速が現在の車速に最も近い画像を過去画像として採用する。車速が異なれば、物体に対するピントの合いやすさなどがことなるため、同一物を撮影していても、画像データにおける像は異なってしまう場合がある。
そこで、撮影時の車速が現在の車速に最も近い画像を過去画像として採用することで、車速の違いに応じた不一致部分の増大を抑制でき、不具合の有無の判定精度を向上させることができる。
なお、方針(a)〜(c)の何れか1つに基づいて、複数の過去画像のうちの1つを選択する態様としてもよいし、方針(a)〜(c)を組み合わせて用いてもよい。
<変形例16>
また、第1の実施形態において、現在画像に対応する過去画像が、記憶部11に複数記憶されている場合には、変形例15の他の態様として、それら全ての過去画像のそれぞれと画像比較処理を実施してもよい。そして、複数の過去画像のうちの何れか1つと、不一致部分の割合が所定の閾値以下となっている場合に、不具合が生じていないと判定する態様としてもよい。そのような態様によれば、撮影範囲に生じた偶発的な変化に起因して、不具合が生じていると誤って判定される可能性を抑制することができる。
<変形例17>
不具合診断関連処理のステップS140(又はS240)以降の処理(便宜上、不具合検出処理とする)については、毎回実行するのではなく、一度実行した場合には任意の休止時間(例えば60秒)は判定を行わない態様としてもよい。この休止時間は、ステップS100からS130まで(又はステップS200からS230まで)の処理のみが実行される。すなわち、画像データの蓄積を行う。
この休止時間は、上述したように60秒や30分などの相対的に短い時間としてもよいし、1日(すなわち24時間)や1週間といった相対的に長い時間であってもよい。また、不具合検出処理は、例えば1日のうち、最初に走行を開始した時に実行する態様としてもよい。
<変形例18>
上述した第1、第2の実施形態においてステップS140やステップS240がYESとなった以降の処理を実施するためには、過去に一度、同じ地点を同じ進行方向で走行する必要がある。すなわち、初めて走行する道路ではステップS150(及びステップS250)以降の処理を実行することができない。
そこで、複数の車両で用いられている車載カメラ診断装置1のそれぞれが取得した画像データを互いに共有し、適宜、過去画像として用いる構成としてもよい。例えば車載カメラ診断装置1に周知の移動体通信ネットワーク等を通じて通信を行う通信機を備えさせ、車両外部に設けられたセンターが、各車両で用いられている車載カメラ診断装置1が取得した画像データを収集する。そして、各車載カメラ診断装置1は、センターに集約されている画像データから、現在位置及び現在の進行方向と一致する過去画像データを取得して、画像比較処理を実施する。
このような構成とすれば、不具合診断部15は、自車両が初めて通過する道路を走行している場合でも、ステップS150(及びステップS250)以降の処理を実施する事が可能である。なお、センターでは、車載カメラ診断装置1から取得した画像データを、車種や車両モデル毎に区別して管理していることが好ましい。これは、車種や車両モデル毎に前方カメラ2の搭載位置が異なることが想定されるためである。
<変形例19>
また現在画像データとの比較対象を過去画像データとせずに、ナビゲーション装置等に搭載されている地図情報を元に、本来その位置から撮影可能と思われる対象物が撮影できていない場合に、前方カメラ2に不具合が生じていると判定してもよい。
例えば現在市販されているナビゲーション装置でも、交差点情報として、信号機の設置の有無を含んでいる。そこで、信号機が設置されている交差点から所定距離以内(例えば30m)に存在するにも関わらず、前方カメラ2の撮影画像に信号機の像が含まれていない場合には、前方カメラ2に不具合が生じていると判定する。撮影画像に信号機の像が含まれているか否かは、画像データ内の移動体領域の検出と同様に、周知のパターンマッチング処理を用いて判定すれば良い。