(58)【調査した分野】(Int.Cl.,DB名)
前記判定部によって前記カメラの位置ずれがないと判定された場合に、前記第2の検出部は前記第2の検出領域中の特徴点の動きを検出しない、請求項1に記載のカメラずれ検出装置。
【発明を実施するための形態】
【0014】
以下、本発明の例示的な実施形態について、図面を参照しながら詳細に説明する。以下の説明では、車両の直進進行方向であって、運転席からハンドルに向かう方向を「前方向」とする。また、車両の直進進行方向であって、ハンドルから運転席に向かう方向を「後方向」とする。また、車両の直進進行方向及び鉛直線に垂直な方向であって、前方向を向いている運転者の右側から左側に向かう方向を「左方向」とする。また、車両の直進進行方向及び鉛直線に垂直な方向であって、前方向を向いている運転者の左側から右側に向かう方向を「右方向」とする。また、本明細書では、カメラの位置ずれのことを、単にカメラずれと表現する場合がある。
【0015】
<1.カメラずれ検出装置の概略>
図1は、本実施の形態に係るカメラずれ検出装置1の構成を示すブロック図である。
【0016】
カメラずれ検出装置1は、車載カメラで撮影された撮影画像に基づいてカメラずれを検出する装置である。カメラずれ検出装置1は、車載カメラを搭載する車両ごとに備えられる。本実施の形態では、カメラずれ検出装置1は、撮影部2から撮影画像を取得して処理して、カメラずれの検出を行う。また、本実施の形態では、カメラずれ検出装置1は、センサ部3から情報を取得して、取得情報に基づいてカメラずれを検出する。
【0017】
撮影部2は、車両周辺の状況を監視する目的で設けられる。撮影部2は、4つのカメラ21〜24を備える。4つのカメラ21〜24は、車載カメラである。
図2は、4つの車載カメラ21〜24が車両4に配置される位置を例示する図である。
【0018】
車載カメラ21は車両4の前端に設けられる。このため、車載カメラ21をフロントカメラ21とも呼ぶ。フロントカメラ21の光軸21aは上からの平面視で車両4の前後方向に沿っている。フロントカメラ21は車両4の前方向を撮影する。車載カメラ22は車両4の後端に設けられる。このため、車載カメラ22をバックカメラ22とも呼ぶ。バックカメラ22の光軸22aは上からの平面視で車両4の前後方向に沿っている。バックカメラ22は車両4の後方向を撮影する。フロントカメラ21及びバックカメラ22の取付位置は、車両4の左右中央であることが好ましいが、左右中央から左右方向に多少ずれた位置であってもよい。
【0019】
車載カメラ23は車両4の左側ドアミラー41に設けられる。このため、車載カメラ23を左サイドカメラ23とも呼ぶ。左サイドカメラ23の光軸23aは上からの平面視で車両4の左右方向に沿っている。左サイドカメラ23は車両4の左方向を撮影する。車載カメラ24は車両4の右側ドアミラー42に設けられる。このため、車載カメラ24を右サイドカメラ24とも呼ぶ。右サイドカメラ24の光軸24aは上からの平面視で車両4の左右方向に沿っている。右サイドカメラ24は車両4の右方向を撮影する。なお、車両4がいわゆるドアミラーレス車である場合には、左サイドカメラ23は左サイドドアの回転軸(ヒンジ部)の周辺にドアミラーを介することなく取り付けられ、右サイドカメラ24は右サイドドアの回転軸(ヒンジ部)の周辺にドアミラーを介することなく取り付けられる。
【0020】
各車載カメラ21〜24の水平方向の画角θは180度以上である。このため、車載カメラ21〜24によって、車両4の水平方向における全周囲を撮影することができる。また、車載カメラ21〜24によって撮影される画像には、車載カメラ21〜24を搭載する車両4のボディが映り込む。
【0021】
なお、本実施の形態では、車載カメラの数を4つとしているが、この数は適宜変更されてよく、複数であっても単数であってもよい。例えば、車両4がバックで駐車することを支援する目的で車載カメラが搭載されている場合には、車載カメラは、バックカメラ22、左サイドカメラ23、右サイドカメラ24の3つで構成されてもよい。
【0022】
図1に戻って、センサ部3は、車載カメラ21〜24が搭載される車両4に関する情報を検出する複数のセンサを有する。車両4に関する情報には、車両自体の情報と、車両周辺の情報とが含まれてよい。本実施の形態では、センサ部3は、例えば、車両の速度を検出する車速度センサ、ステアリングホイールの回転角を検出する舵角センサ、車両の変速装置のシフトレバーの操作位置を検出するシフトセンサ等を含む。本実施の形態では、センサ部3で検出された情報は、カメラずれ検出装置1に直接入力される構成としているが、これは例示にすぎない。例えば、センサ部3で検出された情報は、不図示の車両制御装置や運転支援装置を介してカメラずれ検出装置1に入力されてもよい。
【0023】
図3は、カメラずれ検出装置1によるカメラずれの検出フローの一例を示すフローチャートである。
図3に示すように、例えば自動車メーカー等の工場において、各車両4に対して4つの車載カメラ21〜24が取り付けられる(ステップS1)。各車載カメラ21〜24は、所定の向きに光軸21a〜24aが合された状態で、所定の取付位置に固定される。
【0024】
また、工場においては、車載カメラの初期位置(車両のボディに対する車載カメラの相対初期位置)に関するデータが取得される(ステップS2)。車載カメラの初期位置に関するデータは、車載カメラ21〜24を搭載した車両4が市場に出された後において、車載カメラ21〜24の位置ずれが発生しているか否かの判定を行うために使用されるデータである。本実施の形態において、車載カメラの初期位置に関するデータは、カメラずれ検出装置1を用いて、各車載カメラ21〜24に対して取得される。取得された車載カメラの初期位置に関するデータは、カメラずれ検出装置1が備える後述の記憶部13に記憶される。
【0025】
本実施の形態においては、車載カメラ21〜24を搭載した車両4が市場に出された後、カメラずれ検出装置1によってカメラずれが検出される。カメラずれの検出処理は、各車載カメラ21〜24に対して行われる。カメラずれ検出装置1は、カメラずれの検出処理を開始するタイミングか否かを判断する(ステップS3)。カメラずれ検出装置1は、ステップS3でNoの場合、カメラずれの検出処理を開始するタイミングか否かの判断を繰り返す。
【0026】
カメラずれの検出処理を開始するタイミングは、例えば車両4が所定の速度(例えば5km/h)以下で前方又は後方に直進しているときにすればよい。これより、車両4の移動量をセンサ3の出力に基づいて精度良く推定できる条件下で、カメラずれの検出処理を開始することができる。
【0027】
カメラずれ検出装置1は、カメラずれの検出処理を開始するタイミングであると判断すると(ステップS3でYes)、検出処理を実行する(ステップS4)。
【0028】
検出処理を実行した結果、車載カメラ21〜24の位置ずれが発生していないと判定された場合(ステップS5でYes)、カメラずれ検出装置1は、ステップS3に戻り、次のカメラずれの検出処理開始タイミングを検出した場合にカメラずれの検出処理を繰り返す。カメラの位置ずれが発生していないと判定された場合、カメラずれ検出装置1は、例えば不図示の車両制御装置や運転支援装置等に車載カメラが正常であることを通知してもよい。
【0029】
車載カメラ21〜24の位置ずれが発生していると判定された場合(ステップS5でNo)、カメラずれ検出装置1は、車載カメラ21〜24の位置ずれが発生したことを位置ずれの方向と合わせて報知する(ステップS6)。本実施の形態では、カメラずれ検出装置1は、車載カメラ21〜24の位置ずれが発生したこと及び位置ずれの方向を不図示の表示装置によって報知する。カメラの位置ずれ発生の報知には、音声等が使用されてもよい。さらに、カメラずれ検出装置1は、車両4に搭載されている不図示の通信装置を利用して、ドライバーが所持するスマートフォン等の外部機器にカメラの位置ずれ発生を報知する表示信号や音声信号を送信してもよい。また、カメラずれ検出装置1は、運転支援装置6に車載カメラ21〜24の位置ずれの発生を通知して、運転支援装置6による運転支援を停止させる。なお、本実施の形態では、4つの車載カメラ21〜24が存在するが、4つの車載カメラ21〜24のうちの1つでも位置ずれが発生した場合には、上記報知処理及び停止処理が行われることが好ましい。
【0030】
なお、車載カメラ21〜24の位置ずれが発生していると判定された場合(ステップS5でNo)、自動運転制御部の制御によって、判定開始タイミングを検出した時点の位置に車両4を戻しておくことが好ましい。判定開始タイミングを検出した時点の位置が車両4の安全を確保できる場所(例えば駐車枠内)である可能性が高いからである。
【0031】
カメラずれの発生に伴い、車両のユーザは、例えばディーラにカメラの取付調整を依頼する。これに応じて、ディーラは、車載カメラの取付調整を行う(ステップS7)。また、ディーラは、カメラずれ検出装置1を用いて、上述した車載カメラの初期位置に関するデータの再取得処理を行う(ステップS8)。この後は、ステップS3に戻って、カメラずれ検出装置1は、判定開始タイミングを検出すると、再取得した車載カメラの初期位置に関するデータに基づいて、カメラの位置ずれを判定する。
【0032】
なお、本実施の形態では、カメラずれが発生していると判定された場合に、車載カメラの取付調整が行われる構成としているが、これは例示にすぎない。カメラずれが発生していると判定した場合に、カメラずれ検出装置1は、車載カメラの位置ずれを補正して撮影画像を用いる構成としてもよい。例えば、車載カメラの取付調整を前提とした、ずれ発生の報知処理や、運転支援の停止処理は、車載カメラのずれ状態が不明な場合にのみ行う構成としてもよい。カメラのずれ状態が不明とは、例えば、カメラがどの程度位置ずれや角度ずれを起しているかが不明な状態を指す。車載カメラのずれ状態が明確で補正して使用できる場合には、カメラずれ検出装置1は、ずれ発生の報知処理や、運転支援の停止処理を行わない構成としてよい。
【0033】
<2.カメラずれ検出装置の詳細>
図1に戻って、カメラずれ検出装置1は、取得部11、マイコン12、及び記憶部13を含んで構成される。マイコン12は、不図示のCPU(Central Processing Unit)、RAM(Random Access Memory)、及びROM(Read Only Memory)を含む。記憶部13は、不揮発性のメモリである。マイコン12は、記憶部13に記憶されたプログラムに基づいて情報の処理及び送受信を行う。マイコン12は、有線又は無線で、撮影部2及びセンサ部3に接続される。
【0034】
取得部11は、車載カメラ21〜24からアナログ又はデジタルの撮影画像を所定の周期(例えば、1/30秒周期)で時間的に連続して取得する。すなわち、取得部11によって取得される撮影画像の集合体が車載カメラ21〜24で撮影された動画像である。そして、取得した撮影画像がアナログの場合には、取得部11は、そのアナログの撮影画像をデジタルの撮影画像に変換(A/D変換)する。取得部11は、取得した撮影画像、或いは、取得及び変換した撮影画像をマイコン12に出力する。取得部11から出力される1つの撮影画像が1つのフレーム画像となる。
【0035】
マイコン12は、第1の検出部121と、第2の検出部122と、判定部123と、カメラずれ方向検出部124と、を備える。マイコン12が備えるこれらの各部121〜124の機能は、プログラムに従ってCPUが演算処理を行うことによって実現される。
【0036】
第1の検出部121は、車載カメラ21〜24で撮影された撮影画像内の第1のROI(Region of Interest)中の特徴点の動き(オプティカルフロー)を検出する。例えば、第1のROI中の全ての特徴点の動きをヒストグラム化し、ヒストグラムでの平均値を、第1のROI中の特徴点の動きとすればよい。ここで、「ROI」とは、「カメラで撮影された撮影画像内の特徴点の動きを検出する領域である検出領域」を意味している。本実施の形態では、車載カメラ21〜24の数は4つであり、第1の検出部121による検出処理は、各車載カメラ21〜24ごとに行われる。
【0037】
なお、特徴点とは、際立って検出できる点であり、例えば、路面に描かれた白線のエッジ、路面上のヒビ、路面上のシミ、路面上の砂利等を挙げることができる。第1の検出部121は、特徴点を検出した後、検出した特徴点を見失わないように、検出した特徴点が第1のROIから外れるまで検出した特徴点を追跡する。
【0038】
第2の検出部122は、第1のROIに含まれる第1のROIより小さい第2のROI中の特徴点の動きを検出する。例えば、第2のROI中の全ての特徴点の動きをヒストグラム化し、ヒストグラムでの平均値を、第2のROI中の特徴点の動きとすればよい。本実施の形態では、車載カメラ21〜24の数は4つであり、第2の検出部122による検出処理も、第1の検出部121による検出処理と同様に、各車載カメラ21〜24ごとに行われる。なお、第2の検出部122による検出処理では、第2のROI中の特徴点の動きを一から検出するのではなく、第1の検出部121の検出結果を再構成して、第2のROI中の特徴点の動きを検出することが望ましい。
【0039】
判定部123は、第1の検出部121の検出結果に基づいて車載カメラ21〜24の位置ずれの有無を判定する。例えば、第1のROI中の特徴点の動きから推定される車両4の移動量と、センサ部3の出力から推定される車両4の移動量との差が所定量以上であれば、位置ずれがあると判定すればよい。第1のROI中の特徴点の動きから車両4の移動量を推定する際には、第1のROI中の特徴点が路面上の特徴点であることを前提として、車両4の移動量を推定すればよい。
【0040】
本実施の形態では、車載カメラ21〜24の数は4つであり、判定部123による判定処理も、第1の検出部121による検出処理及び第2の検出部122による検出処理と同様に、各車載カメラ21〜24ごとに行われる。なお、センサ部3の出力から推定される車両4の移動量の代わりに、判定対象である車載カメラ以外のカメラによって撮影された画像から求まる特徴点の動きから推定される移動量を用いてもよい。複数のカメラが同時に位置ずれを起こす可能性は低いからである。
【0041】
カメラずれ方向検出部124は、判定部123によって車載カメラ21〜24の位置ずれがあると判定された場合に、第2の検出部122の検出結果に基づいて車載カメラ21〜24の位置ずれ方向を検出する。カメラずれ方向検出部124による検出処理は、位置ずれがあると判定されたカメラごとに行われる。
【0042】
カメラの位置ずれには、カメラが鉛直軸回りに回転するPAN(パン)、カメラが水平軸回りに回転するTILT(チルト)、及びカメラが光軸又は光軸に平行な軸回りに回転するROLL(ロール)からなる3つの方向のずれが存在する。
【0043】
図4は、フロントカメラ21で撮影した撮影画像P1の一例を示す模式図である。フロントカメラ21は、画角θが180度以上であり、
図4に示すように、撮影画像P1には、車両4のボディ40が映り込む。
図4(a)は、フロントカメラ21が初期位置のまま固定されている状態で撮影された画像である。すなわち、フロントカメラ21が正常な状態で撮影された画像である。
図4(b)は、フロントカメラ21が初期位置からPAN方向にずれ、光軸が車両の右側に傾いた状態で撮影された画像である。
図4(c)は、フロントカメラ21が初期位置からTILT方向にずれ光軸が上向きに傾いた状態で撮影された画像である。
図4(d)は、フロントカメラ21が初期位置からROLL方向にずれ撮影領域が反時計回りに回転した状態で撮影された画像である。
【0044】
<3.カメラずれの検出処理の詳細>
図5は、カメラずれの検出処理の詳細、すなわち
図3のステップS4の詳細を示すフローチャートである。
【0045】
ステップS4の処理が開始されると、まず第1の検出部121が、車載カメラ21〜24で撮影された撮影画像内の第1のROI中の特徴点の動きを検出する(ステップS41)。
【0046】
その後、判定部123は、第1の検出部121の検出結果に基づいて車載カメラ21〜24の位置ずれの有無を判定する(ステップS42)。
【0047】
位置ずれが無いと判定されれば、そのままステップS4の処理を終了する。一方、位置ずれがあると判定されれば、第2の検出部122が、車載カメラ21〜24で撮影された撮影画像内の第2のROI中の特徴点の動きを検出する(ステップS43)。
【0048】
ステップS43に続くステップS44において、カメラずれ方向検出部124が、第2の検出部122の検出結果に基づいて車載カメラ21〜24の位置ずれ方向を検出し、その後、ステップS4の処理を終了する。
【0049】
上述した
図5に示すフローチャートでは、判定部123によって位置ずれが無いと判定されているときに、言い換えれば、第2の検出部122による第2のROI中の特徴点の動きの検出が不要なときに、第2の検出部122が第2のROI中の特徴点の動きを検出しない。これにより、カメラずれ検出装置1の処理負荷を軽くすることができる。
【0050】
車載カメラ21〜24の位置ずれは非常に稀にしか起こらない。このため、第2の検出部122による第2のROI中の特徴点の動きの検出が不要なときに、第2の検出部122が第2のROI中の特徴点の動きを検出しないことによる処理負荷の軽減効果は、非常に大きい。
【0051】
また、上述した
図5に示すフローチャートでは、判定部123によって位置ずれがあると判定されているときに、第2の検出部122が第1のROIに含まれる第1のROIより小さい第2のROI中の特徴点の動きを検出する。第1のROI中の特徴点の動きの検出結果からはカメラの位置ずれの方向が検出し難い場合があるが、そのような場合でも第2のROI中の特徴点の動きの検出結果からカメラの位置ずれの方向を精度良く検出することができる。
【0052】
例えば
図6に示すように第1のROI5を設定した場合、特徴点が第1のROI5全体にほぼ均一に分布していると、カメラの位置ずれの方向にPAN方向やROLL方向が含まれていても、第1のROI5の左半分に位置する特徴点の動きと第1のROI5の右半分に位置する特徴点の動きとが打ち消しあってヒストグラムでの平均値が小さくなってしまう。
【0053】
したがって、例えば
図7に示すように撮影画像の左側領域に第2のROI61を設定し、撮影画像の右側領域に第2のROI62を設定した場合、第2のROI61の特徴点の動きの平均値と第2のROI62の特徴点の動きの平均とによって、カメラの位置ずれの方向に含まれ得るPAN方向やROLL方向を精度良く検出することできる。
【0054】
例えば
図6に示すように第1のROI5を設定した場合、特徴点が第1のROI5の上側よりも下側の方に密に分布していると、カメラの位置ずれの方向にTILT方向が含まれていても、ヒストグラムでの平均値が小さくなってしまう。
【0055】
したがって、例えば
図8に示すように撮影画像の中央領域に第2のROI63を設定した場合、第2のROI63の特徴点の動きの平均値によって、カメラの位置ずれの方向に含まれ得るTILT方向を精度良く検出することできる。
【0056】
つまり、カメラずれ方向検出部124がPAN方向およびROLL方向のずれ方向を検出するときに用いる第2の検出部122の検出結果と、カメラずれ方向検出部124がTILT方向のずれ方向を検出するときに用いる第2の検出部122の検出結果とを、異なる第2のROIにおける検出によって得ることが望ましい。なお、上述した
図8に示すように、第2のROI61及び62と第2のROI63とは一部が重複していてもよい。当然の事ながら、
図9に示すように、第2のROI61及び62と第2のROI63とは全く重複していなくてもよい。
【0057】
また、第2の検出部122は、第1のROI中の特徴点の分布に応じて第2のROIを設定、より詳細には第2のROIの大きさや位置を設定することが望ましい。これにより、第2のROI中に特徴点が含まれていない等の不具合を防止することができる。第2のROIは、予め定められた複数の第2のROI候補の中から第2の検出部122が第1のROI中の特徴点の分布に応じて選択してもよく、第2の検出部122が第1のROI中の特徴点の分布に応じて任意に大きさや位置を決めてもよい。なお、カメラは、必ずしも自動車に搭載される必要はなく、自動車のほか、二輪車、鉄道、船舶等の移動体に用いられるものであればよい。
【0058】
<4.変形例等>
本明細書中に開示されている種々の技術的特徴は、上記実施形態のほか、その技術的創作の主旨を逸脱しない範囲で種々の変更を加えることが可能である。また、本明細書中に示される複数の実施形態及び変形例は可能な範囲で組み合わせて実施されてよい。
【0059】
以上に示した実施形態では、プログラムに従ったCPUの演算処理によってソフトウェア的にマイコンの各種の機能が実現されていると説明したが、これらの機能のうちの少なくとも一部は電気的なハードウェア回路により実現されてもよい。また逆に、ハードウェア回路によって実現されるとした機能のうちの少なくとも一部は、ソフトウェア的に実現されてもよい。