以下の例示的な実施形態等の同様の構成要素には共通の符号を付与して、重複する説明を適宜省略する。
<第1実施形態>
図1は、第1実施形態の画像処理装置が搭載される車両10の平面図である。車両10は、移動体の一例であって、例えば、内燃機関(エンジン、図示されず)を駆動源とする自動車(内燃機関自動車)であってもよいし、電動機(モータ、図示されず)を駆動源とする自動車(電気自動車、燃料電池自動車等)であってもよいし、それらの双方を駆動源とする自動車(ハイブリッド自動車)であってもよい。また、車両10は、種々の変速装置を搭載することができるし、内燃機関や電動機を駆動するのに必要な種々の装置(システム、部品等)を搭載することができる。また、車両10における車輪13の駆動に関わる装置の方式、個数、及び、レイアウト等は、種々に設定することができる。
図1に示すように、車両10は、車体12と、複数(例えば、4個)の撮像部14a、14b、14c、14dとを有する。撮像部14a、14b、14c、14dを区別する必要がない場合、撮像部14と記載する。
車体12は、乗員が乗車する車室を構成する。車体12は、車輪13及び撮像部14等の車両10の構成を収容または保持する。
撮像部14は、例えば、CCD(Charge Coupled Device)、または、CIS(CMOS Image Sensor)等の撮像素子を内蔵するデジタルカメラである。撮像部14は、所定のフレームレートで生成される複数のフレーム画像を含む動画、または、静止画のデータを撮像画像のデータとして出力する。撮像部14は、それぞれ、広角レンズまたは魚眼レンズを有し、水平方向の140°〜190°の範囲を撮像することができる。撮像部14の光軸は、斜め下方に向けて設定されている。従って、複数の撮像部14は、周辺の路面を含む車両10の周辺を撮像した複数の撮像画像のデータを出力する。
撮像部14は、車両10の外周部に設けられている。例えば、撮像部14aは、車両10の前側の左右方向の中央部(例えば、フロントバンパー)に設けられている。撮像部14aは、車両10の前方の周辺を撮像した撮像画像を生成する。撮像部14bは、車両10の後側の左右方向の中央部(例えば、リアバンパー)に設けられている。撮像部14bは、車両10の後方の周辺を撮像した撮像画像を生成する。撮像部14cは、撮像部14a及び撮像部14bと隣接し、車両10の左側部の前後方向の中央部(例えば、左側のサイドミラー12a)に設けられている。撮像部14cは、車両10の左方の周辺を撮像した撮像画像を生成する。撮像部14dは、撮像部14a及び撮像部14bと隣接し、車両10の右側部の前後方向の中央部(例えば、右側のサイドミラー12b)に設けられている。撮像部14dは、車両10の右方の周辺を撮像した撮像画像を生成する。ここで、撮像部14a、14b、14c、14dは、互いに重複する複数の重複領域を含む複数の撮像画像を生成する。
図2は、車両10に搭載される画像処理装置20の構成を説明するブロック図である。図2に示すように、画像処理装置20は、複数の撮像部14と、モニタ装置34と、情報処理装置36と、車内ネットワーク38とを備える。
モニタ装置34は、車室内のダッシュボード等に設けられている。モニタ装置34は、表示部40と、音声出力部42と、操作入力部44とを有する。
表示部40は、情報処理装置36が送信した画像データに基づいて、画像を表示する。表示部40は、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)、または、有機ELディプレイ(OELD:Organic Electroluminescent Display)等の表示装置である。表示部40は、例えば、情報処理装置36が、複数の撮像部14によって撮像された撮像画像をつなげた周辺画像を表示する。
音声出力部42は、情報処理装置36が送信した音声データに基づいて音声を出力する。音声出力部42は、例えば、スピーカである。音声出力部42は、表示部40と異なる車室内の位置に設けられていてもよい。
操作入力部44は、乗員の入力を受け付ける。操作入力部44は、例えば、タッチパネルである。操作入力部44は、表示部40の表示画面に設けられている。操作入力部44は、表示部40が表示する画像を透過可能に構成されている。これにより、操作入力部44は、表示部40の表示画面に表示される画像を乗員に視認させることができる。操作入力部44は、表示部40の表示画面に表示される画像に対応した位置を乗員が触れることによって入力した指示を受け付けて、情報処理装置36へ送信する。
情報処理装置36は、ECU(Electronic Control Unit)等のマイクロコンピュータを含むコンピュータである。情報処理装置36は、撮像部14から撮像画像のデータを取得する。情報処理装置36は、撮像画像等に基づいて生成した周辺画像または音声に関するデータをモニタ装置34へ送信する。情報処理装置36は、CPU(Central Processing Unit)36aと、ROM(Read Only Memory)36bと、RAM(Random Access Memory)36cと、表示制御部36dと、音声制御部36eと、SSD(Solid State Drive)36fとを備える。CPU36a、ROM36b及びRAM36cは、同一パッケージ内に集積されていてもよい。
CPU36aは、ハードウェアプロセッサの一例であって、ROM36b等の不揮発性の記憶装置に記憶されたプログラムを読み出して、当該プログラムにしたがって各種の演算処理および制御を実行する。CPU36aは、例えば、撮像画像を補正し、当該撮像画像をつなげて、表示部40に表示させる周辺画像を生成する。
ROM36bは、各プログラム及びプログラムの実行に必要なパラメータ等を記憶する。RAM36cは、CPU36aでの演算で用いられる各種のデータを一時的に記憶する。表示制御部36dは、情報処理装置36での演算処理のうち、主として、撮像部14で得られた画像の画像処理、表示部40に表示させる表示用の画像のデータ変換等を実行する。音声制御部36eは、情報処理装置36での演算処理のうち、主として、音声出力部42に出力させる音声の処理を実行する。SSD36fは、書き換え可能な不揮発性の記憶装置であって、情報処理装置36の電源がオフされた場合にあってもデータを維持する。
車内ネットワーク38は、例えば、CAN(Controller Area Network)である。車内ネットワーク38は、情報処理装置36と、操作入力部44とを互いに信号及び情報を送受信可能に電気的に接続する。
本実施形態では、情報処理装置36は、ハードウェアとソフトウェア(制御プログラム)が協働することにより、車両10の画像生成処理を司る。情報処理装置36は、撮像部14が撮像した周辺の画像を含む撮像画像を補正し、補正した撮像画像をつなげて周辺画像を生成する。
図3は、情報処理装置36の機能を説明する機能ブロック図である。図3に示すように、情報処理装置36は、処理部50と、記憶部52とを有する。
処理部50は、例えば、CPU36a等の機能によって実現される。処理部50は、補正部54と、生成部56とを有する。処理部50は、例えば、記憶部52に格納された画像生成プログラム58を読み込むことによって、補正部54及び生成部56の機能を実現してよい。補正部54及び生成部56の一部または全ては、ASIC(Application Specific Integrated Circuit)を含む回路等のハードウェアによって構成されてもよい。
補正部54は、複数の重複領域を含む撮像画像を、複数の撮像部14のそれぞれから取得する。換言すれば、補正部54は、少なくとも複数の撮像部14の個数だけ撮像画像を取得する。撮像画像の一例は、動画の1フレームの画像であってよい。補正部54は、撮像画像の各画素を構成する輝度及び色差を補正する。色差は、各画素の色を示す色値の例である。輝度は、例えば、YUV空間におけるY値である。色差は、色信号から輝度を引いた値であって、例えば、YUV空間におけるU値(青信号から輝度を引いた値)及びV値(赤信号から輝度を引いた値)である。補正部54は、複数の重複領域のそれぞれに対象領域を設定する。補正部54は、対象領域の輝度に基づく第1補正によって複数の撮像画像の輝度を補正する。補正部54は、例えば、第1補正において、輝度を線形補間によって補正する。補正部54は、対象領域の色差に基づく第2補正によって複数の撮像画像の色差を補正する。補正部54は、例えば、第2補正において、一の撮像画像内の対象領域の色差の平均値である撮像画像色差平均値と、他の撮像画像内の対象領域の色差の平均値である撮像画像色差平均値とに基づいて、複数の撮像画像を補正する。即ち、補正部54は、第1補正と異なる第2補正によって色差を補正する。撮像画像色差平均値は、撮像画像色値平均値の例である。
例えば、補正部54は、前側の撮像部14aの前側撮像画像の撮像画像色差平均値を基準値として、両側の撮像部14c、14dの左側撮像画像及び右側撮像画像の撮像画像色差平均値が基準値となるように、撮像部14c、14dの補正値を設定して、左側撮像画像及び右側撮像画像を補正する。また、補正部54は、前側の撮像部14aの前側撮像画像の撮像画像色差平均値を基準値として、後側の撮像部14bの後側撮像画像の撮像画像色差平均値が基準値となるように、撮像部14bの補正値を設定して、後側撮像画像を補正する。補正部54は、補正した撮像画像を生成部56へ出力する。
生成部56は、補正部54が補正した複数の撮像画像をつなげて、周辺画像を生成する。生成部56は、生成した周辺画像を表示部40へ出力して、周辺画像を表示させる。
記憶部52は、ROM36b、RAM36c、及び、SSD36fの少なくとも1つの機能として実現される。記憶部52は、処理部50が実行するプログラム及びプログラムの実行に必要なデータを記憶する。例えば、記憶部52は、処理部50が実行する画像生成プログラム58を記憶する。記憶部52は、画像生成プログラム58の実行に必要な数値データ60を記憶する。
図4は、補正部54による撮像画像の補正を説明する図である。
図4の周囲に太線で示す4個の矩形枠は、補正部54が撮像部14a、14b、14c、14dのそれぞれから取得した撮像画像70a、70b、70c、70dを示す。図4の中央に示す太線の矩形枠は、撮像画像70a、70b、70c、70dをつなげて生成された周辺画像72を示す。周辺画像72は、例えば、上方から車両10の周辺を見た俯瞰画像または鳥瞰画像である。周辺画像72は、撮像画像70a、70b、70c、70dが重複する重複領域74FL、重複領域74FR、重複領域74RL及び重複領域74RRを含む。
前側撮像画像70a及び左側撮像画像70cは、互いに重複する重複領域74FLa及び重複領域74FLcを含む。重複領域74FLa及び重複領域74FLcは、重複領域74FLに対応する領域である。前側撮像画像70a及び右側撮像画像70dは、互いに重複する重複領域74FRa及び重複領域74FRdを含む。重複領域74FRa及び重複領域74FRdは、重複領域74FRに対応する領域である。後側撮像画像70b及び左側撮像画像70cは、互いに重複する重複領域74RLb及び重複領域74RLcを含む。重複領域74RLb及び重複領域74RLcは、重複領域74RLに対応する領域である。後側撮像画像70b及び右側撮像画像70dは、互いに重複する重複領域74RRb及び重複領域74RRdを含む。重複領域74RRb及び重複領域74RRdは、重複領域74RRに対応する領域である。
周辺画像72の領域内に示す直線は、境界線76FL、76FR、76RL、76RRである。境界線76FL、76FR、76RL、76RRを区別する必要がない場合、境界線76と記載する。境界線76FLは、前側撮像画像70aと左側撮像画像70cとの境界である。境界線76FRは、前側撮像画像70aと右側撮像画像70dとの境界である。境界線76RLは、後側撮像画像70bと左側撮像画像70cとの境界である。境界線76RRは、後側撮像画像70bと右側撮像画像70dとの境界である。境界線76FL、76FR、76RL、76RRの角度は、予め設定されて数値データ60として記憶部52に格納されている。
境界線76FLと境界線76FRとの間の領域は、前側撮像画像70aが適用される。境界線76FLと境界線76RLとの間の領域は、左側撮像画像70cが適用される。境界線76FRと境界線76RRとの間の領域は、右側撮像画像70dが適用される。境界線76RLと境界線76RRとの間の領域は、後側撮像画像70bが適用される。
補正部54は、周辺画像72の重複領域74FL、74FR、74RL、74RRのそれぞれに、ハッチングで示す対象領域78FL、78FR、78RL、78RRを設定する。対象領域78FL、78FR、78RL、78RRは、ROI(Region of Interest:関心領域)とも呼ばれる。対象領域78FL、78FR、78RL、78RRは、特に限定されるものではないが、設定枠80、境界線76の角度、及び、車両10の幅等によって、重複領域74FL、74FR、74RL、74RR内に補正部54が適宜設定してよい。設定枠80の一例は、予め設定された駐車枠である。対象領域78FL、78FR、78RL、78RRを設定するための設定枠80、境界線76の角度、及び、車両10の幅等は、数値データ60として記憶部52に格納されている。
前側撮像画像70a内の対象領域78FLa及び対象領域78FRaは、それぞれ周辺画像72の対象領域78FL及び対象領域78FRに対応する。後側撮像画像70b内の対象領域78RLb及び対象領域78RRbは、それぞれ周辺画像72の対象領域78RL及び対象領域78RRに対応する。左側撮像画像70c内の対象領域78FLc及び対象領域78RLcは、それぞれ周辺画像72の対象領域78FL及び対象領域78RLに対応する。右側撮像画像70d内の対象領域78FRd及び対象領域78RRdは、それぞれ周辺画像72の対象領域78FR及び対象領域78RRに対応する。
撮像画像70a・・・のそれぞれを区別する必要がない場合、撮像画像70と記載する。重複領域74FL・・・のそれぞれを区別する必要がない場合、重複領域74と記載する。対象領域78FL・・・のそれぞれを区別する必要がない場合、対象領域78と記載する。
次に、補正部54による輝度補正処理について説明する。
補正部54は、前側撮像画像70aの対象領域78FLaに含まれる全ての画素の輝度(=Y値)の平均値(以下、基準左前側輝度平均値)を算出する。補正部54は、前側撮像画像70aの対象領域78FRaに含まれる全ての画素の輝度の平均値(以下、基準右前側輝度平均値)を算出する。補正部54は、後側撮像画像70bの対象領域78RLbに含まれる全ての画素の輝度の平均値(以下、基準左後側輝度平均値)を算出する。補正部54は、後側撮像画像70bの対象領域78RRbに含まれる全ての画素の輝度の平均値(以下、基準右後側輝度平均値)を算出する。
補正部54は、左側撮像画像70cの対象領域78FLcに含まれる全ての画素の輝度の平均値(以下、左前側輝度平均値)を算出する。補正部54は、対象領域78FLaの基準左前側輝度平均値と対象領域78FLcの左前側輝度平均値との差分(以下、左前輝度差分)を算出する。補正部54は、左側撮像画像70cの対象領域78FLcに含まれる全ての画素の輝度に左前輝度差分を足すまたは引くことによって、左前側輝度平均値が基準左前側輝度平均値となるように、左側撮像画像70cの対象領域78FLcの輝度を補正する。
補正部54は、左側撮像画像70cの対象領域78RLcに含まれる全ての画素の輝度の平均値(以下、左後側輝度平均値)を算出する。補正部54は、対象領域78RLbの基準左後側輝度平均値と対象領域78RLcの左後側輝度平均値との差分(以下、左後輝度差分)を算出する。補正部54は、左側撮像画像70cの対象領域78RLcに含まれる全ての画素の輝度に左後輝度差分を足すまたは引くことによって、左後側輝度平均値が基準左後側輝度平均値となるように、左側撮像画像70cの対象領域78RLcの輝度を補正する。
補正部54は、補正後の対象領域78FLcの左前側輝度平均値と対象領域78RLcの左後側輝度平均値とを用いた線形補間によって、対象領域78FLc及び対象領域78RLc以外の左側撮像画像70c内の領域の輝度を補正する。
補正部54は、右側撮像画像70dの対象領域78FRdに含まれる全ての画素の輝度の平均値(以下、右前側輝度平均値)を算出する。補正部54は、対象領域78FRaの基準右前側輝度平均値と対象領域78FRdの右前側輝度平均値との差分(以下、右前輝度差分)を算出する。補正部54は、右側撮像画像70dの対象領域78FRdに含まれる全ての画素の輝度に右前輝度差分を足すまたは引くことによって、右前側輝度平均値が基準右前側輝度平均値となるように、右側撮像画像70dの対象領域78FRdの輝度を補正する。
補正部54は、右側撮像画像70dの対象領域78RRdに含まれる全ての画素の輝度の平均値(以下、右後側輝度平均値)を算出する。補正部54は、対象領域78RRbの基準右後側輝度平均値と対象領域78RRdの右後側輝度平均値との差分(以下、右後輝度差分)を算出する。補正部54は、右側撮像画像70dの対象領域78RRdに含まれる全ての画素の輝度に右後輝度差分を足すまたは引くことによって、右後側輝度平均値が基準右後側輝度平均値となるように、右側撮像画像70dの対象領域78RRdの輝度を補正する。
補正部54は、補正後の対象領域78FRdの右前側輝度平均値と対象領域78RRdの右後側輝度平均値とを用いた線形補間によって、対象領域78FRd及び対象領域78RRd以外の右側撮像画像70d内の領域の輝度を補正する。
次に、補正部54による色差補正処理について説明する。
補正部54は、一の撮像画像70に含まれる全ての対象領域78の色差の平均である撮像画像色差平均値と、他の撮像画像70に含まれる全ての対象領域78の色差の平均である撮像画像色差平均値とに基づいて、色差毎に当該撮像画像70の色差を補正する。
まず、色差のうちU値の補正について具体的に説明する。
補正部54は、撮像画像70毎(即ち、撮像部14毎)の色差(ここでは、U値)の平均値である撮像画像色差平均値を算出する。
具体的には、補正部54は、撮像部14aの前側撮像画像70aの全ての対象領域78FLa、78FRaのU値を全て足した総和を、対象領域78FLa、78FRaの画素数で除算して、前側撮像画像70aのU値の平均値である前側撮像画像U平均値を算出する。
補正部54は、撮像部14bの後側撮像画像70bの全ての対象領域78RLb、78RRbのU値を全て足した総和を、対象領域78RLb、78RRbの画素数で除算して、後側撮像画像70bのU値の平均値である後側撮像画像U平均値を算出する。
補正部54は、撮像部14cの左側撮像画像70cの全ての対象領域78FLc、78RLcのU値を全て足した総和を、対象領域78FLc、78RLcの画素数で除算して、左側撮像画像70cのU値の平均値である左側撮像画像U平均値を算出する。
補正部54は、撮像部14dの右側撮像画像70dの全ての対象領域78FRd、78RRdのU値を全て足した総和を、対象領域78FRd、78RRdの画素数で除算して、右側撮像画像70dのU値の平均値である右側撮像画像U平均値を算出する。
前側撮像画像U平均値、後側撮像画像U平均値、左側撮像画像U平均値、及び、右側撮像画像U平均値は、撮像画像色差平均値及び撮像画像色値平均値の一例であり、それぞれを区別する必要がない場合、撮像画像U平均値と記載する。また、V値の撮像画像色差平均値は、撮像画像V平均値とする。撮像画像U平均値及び撮像画像V平均値を区別する必要がない場合、撮像画像色差平均値と記載する。
補正部54は、前側撮像画像U平均値を基準値として、左側撮像画像U平均値、右側撮像画像U平均値、及び、後側撮像画像U平均値が基準値となるように各撮像部14毎に設定した補正値に基づいて、各撮像画像70のU値を補正する。
具体的には、補正部54は、基準値である前側撮像画像U平均値と左側撮像画像U平均値との差分を、左側の撮像部14cの補正値として算出する。補正部54は、左側の撮像部14cの左側撮像画像70cの全ての画素のU値に当該補正値を足すまたは引くことによって、左側撮像画像U平均値が、前側撮像画像U平均値となるように補正する。例えば、補正部54は、撮像部14cの左側撮像画像U平均値が撮像部14aの前側撮像画像U平均値よりも低い場合、撮像部14cのU値に補正値を足して補正する。補正部54は、撮像部14cの左側撮像画像U平均値が撮像部14aの前側撮像画像U平均値よりも高い場合、撮像部14cのU値から補正値を引いて補正する。
補正部54は、基準値である前側撮像画像U平均値と右側撮像画像U平均値との差分を、右側の撮像部14dの補正値として算出する。補正部54は、右側の撮像部14dの右側撮像画像70dの全ての画素のU値に当該補正値を足すまたは引くことによって、右側撮像画像U平均値が、前側撮像画像U平均値となるように補正する。
補正部54は、補正後の左側撮像画像U平均値(または、右側撮像画像U平均値)と後側撮像画像U平均値との差分を、後側の撮像部14bの補正値として算出する。補正部54は、後側の撮像部14bの後側撮像画像70bの全ての画素のU値に当該補正値を足すまたは引くことによって、後側撮像画像U平均値が、左側撮像画像U平均値(または、右側撮像画像U平均値)となるように補正する。
これにより、補正部54は、左側撮像画像U平均値、右側撮像画像U平均値、及び、後側撮像画像U平均値を、基準値である前側撮像画像U平均値と等しくするように補正する。
同様に、補正部54は、V値を補正する。
図5は、第1実施形態の処理部50が実行する画像生成処理のフローチャートである。処理部50は、画像生成プログラム58を読み込むことによって、画像生成処理を実行する。
図5に示すように、処理部50の補正部54は、複数の撮像部14のそれぞれから互いに重複する重複領域74を含む撮像画像70を取得する(S102)。換言すれば、補正部54は、複数の撮像部14の個数分だけ撮像画像70を取得する。
補正部54は、複数の撮像画像70の輝度を補正する輝度補正処理(第1補正処理)を実行する(S104)。
次に、補正部54は、複数の撮像画像70のU値及びV値を含む色差を補正する色差補正処理(第2補正処理)を実行する(S106)。
生成部56は、補正部54が補正した撮像画像70をつなげて、周辺画像72を生成する(S108)。
生成部56は、生成した周辺画像72を表示部40へ出力して、表示させる(S110)。この後、処理部50は、ステップS102以降を繰り返して、周辺画像72の生成を繰り返す。
図6は、補正部54が実行する輝度補正処理のフローチャートである。
図6に示す輝度補正処理では、補正部54は、前側撮像画像70aの対象領域78FLa、78FRaに含まれる輝度のそれぞれの平均値である基準左前側輝度平均値及び基準右前側輝度平均値を算出する(S202)。補正部54は、後側撮像画像70bの対象領域78RLb、78RRbに含まれる輝度のそれぞれの平均値である基準左後側輝度平均値及び基準右後側輝度平均値を算出する(S204)。
補正部54は、左側撮像画像70cの輝度を補正する(S206)。具体的には、補正部54は、左側撮像画像70cの対象領域78FLcの輝度の平均値である左前側輝度平均値と基準左前側輝度平均値との差分に基づいて、左側撮像画像70cの対象領域78FLcの輝度を補正する。補正部54は、左側撮像画像70cの対象領域78RLcの輝度の平均値である左後側輝度平均値と基準左後側輝度平均値との差分に基づいて、左側撮像画像70cの対象領域78RLcの輝度を補正する。補正部54は、補正後の左前側輝度平均値と左後側輝度平均値とを用いた線形補間によって、対象領域78FLc、78RLc以外の左側撮像画像70cの領域の輝度を補正する。
補正部54は、右側撮像画像70dの輝度を補正する(S208)。具体的には、補正部54は、右側撮像画像70dの対象領域78FRdの輝度の平均値である右前側輝度平均値と基準右前側輝度平均値との差分に基づいて、右側撮像画像70dの対象領域78FRdの輝度を補正する。補正部54は、右側撮像画像70dの対象領域78RRdの輝度の平均値である右後側輝度平均値と基準右後側輝度平均値との差分に基づいて、右側撮像画像70dの対象領域78RRdの輝度を補正する。補正部54は、補正後の右前側輝度平均値と右後側輝度平均値とを用いた線形補間によって、対象領域78FRd、78RRd以外の右側撮像画像70dの領域の輝度を補正する。
これにより、補正部54は、輝度補正処理を終了して、画像生成処理へ戻る。
図7は、補正部54が実行する色差補正処理のフローチャートである。
図7に示すように、補正部54は、撮像画像70毎(または、撮像部14毎)、かつ、色差毎に、対象領域78の色差の平均値である撮像画像色差平均値を算出する(S302)。具体的には、補正部54は、いずれかの撮像画像70(例えば、前側撮像画像70a)に含まれる全ての対象領域78(例えば、対象領域78FLa、78FRa)のU値の総和を、当該全ての対象領域78の画素数で除算して、当該撮像画像70(例えば、撮像画像70a)のU値の撮像画像色差平均値である撮像画像U平均値(例えば、前側撮像画像U平均値)を算出する。同様に、補正部54は、撮像画像70(例えば、前側撮像画像70a)の撮像画像V平均値(例えば、前側撮像画像V平均値)を算出する。上述の処理を繰り返すことによって、補正部54は、全ての撮像部14の撮像画像70の撮像画像U平均値及び撮像画像V平均値を算出する。
補正部54は、左側の撮像部14cの各色差の補正値を算出する(S304)。具体的には、補正部54は、前側の撮像部14aの前側撮像画像70aの前側撮像画像U平均値(即ち、基準値)と、左側の撮像部14cの左側撮像画像70cの左側撮像画像U平均値との差分を、当該撮像部14cのU値の補正値として算出する。補正部54は、撮像部14aの前側撮像画像70aの撮像画像V平均値と、撮像部14cの左側撮像画像70cの撮像画像V平均値との差分を、当該撮像部14cのV値の補正値として算出する。補正部54は、算出したU値及びV値の補正値を撮像部14cと関連付けて、記憶部52に格納する。
補正部54は、左側撮像画像70cの画素のU値及びV値に、当該左側撮像画像70cの撮像部14cのU値及びV値のそれぞれに関連付けられた補正値を足すまたは引くことによって、左側撮像画像70cを補正する(S305)。このように、補正部54は、左側撮像画像70cの左側撮像画像色差平均値が前側撮像画像70aの前側撮像画像色差平均値となるように、左側撮像画像70cを補正する。
補正部54は、右側の撮像部14dの各色差の補正値を算出する(S306)。具体的には、補正部54は、前側の撮像部14aの前側撮像画像70aの前側撮像画像U平均値と、右側の撮像部14dの右側撮像画像70dの右側撮像画像U平均値との差分を、撮像部14dのU値の補正値として算出する。補正部54は、撮像部14aの前側撮像画像70aの撮像画像V平均値と、撮像部14dの右側撮像画像70dの撮像画像V平均値との差分を、当該撮像部14cのV値の補正値として算出する。補正部54は、算出したU値及びV値の補正値を撮像部14dと関連付けて、記憶部52に格納する。
補正部54は、右側撮像画像70dの画素のU値及びV値に、当該右側撮像画像70dの撮像部14dのU値及びV値のそれぞれに関連付けられた補正値を足すまたは引くことによって、右側撮像画像70dを補正する(S307)。このように、補正部54は、右側撮像画像70dの右側撮像画像色差平均値が前側撮像画像70aの前側撮像画像色差平均値となるように、右側撮像画像70dを補正する。
補正部54は、後側の撮像部14bの各色差の補正値を算出する(S308)。具体的には、補正部54は、補正後の左側撮像画像70c(または、補正後の右側撮像画像70d)の左側撮像画像U平均値(または、右側撮像画像U平均値)と、撮像部14bの後側撮像画像70bの後側撮像画像U平均値との差分を、当該撮像部14bのU値の補正値として算出する。ここで、補正後の左側撮像画像70cの左側撮像画像U平均値及び補正後の右側撮像画像70dの右側撮像画像U平均値は、前側撮像画像70aの前側撮像画像U平均値と等しい。従って、補正部54は、前側撮像画像70aの前側撮像画像U平均値を基準値として、撮像部14bのU値の補正値を設定しているといえる。補正部54は、補正後の左側撮像画像70c(または、補正後の右側撮像画像70d)の撮像画像V平均値と、撮像部14bの後側撮像画像70bの撮像画像V平均値との差分を、当該撮像部14bのV値の補正値として算出する。補正部54は、算出したU値及びV値の補正値を撮像部14bと関連付けて、記憶部52に格納する。
補正部54は、後側撮像画像70bの画素のU値及びV値に、当該後側撮像画像70bの撮像部14bのU値及びV値のそれぞれに関連付けられた補正値を足すまたは引くことによって、後側撮像画像70bを補正する(S309)。このように、補正部54は、後側撮像画像70bの後側撮像画像色差平均値が前側撮像画像70aの前側撮像画像色差平均値となるように、後側撮像画像70bを補正する。
これにより、補正部54は、色差補正処理を終了して、画像生成処理へ戻る。
上述したように、第1実施形態の画像処理装置20は、一の撮像画像70の複数の対象領域78の撮像画像色差平均値と、他の撮像画像70の複数の対象領域78の撮像画像色差平均値とに基づいて、他の撮像画像70を撮像した撮像部14の補正値を設定している。このように、画像処理装置20は、互いに重複している撮像画像70の複数の対象領域78の撮像画像色差平均値に基づいて色差を補正することにより、撮像画像70の全体の輝度の平均値を算出する場合に比べて、補正処理の演算負荷を低減しつつ、撮像画像70間の色差の違和感を低減して、周辺画像72の画質を向上することができる。この結果、画像処理装置20は、特に、重複領域74の近傍及び周辺画像72の境界をまたいで、路面等の色が異なる等の画質の劣化を低減できる。
画像処理装置20は、左側撮像画像70c及び右側撮像画像70dの撮像画像色差平均値が、前側撮像画像70aの撮像画像色差平均値となるように、撮像部14c、14dの補正値を設定して、撮像画像70c、70dを補正している。即ち、画像処理装置20は、前側撮像画像70aを基準に、両側の撮像画像70c、70dを補正している。これにより、画像処理装置20は、運転者が最も視認する前側撮像画像70aを補正することなく、両側の撮像画像70c、70dを補正して、周辺画像72を生成する。この結果、画像処理装置20は、運転者が直接視認している状況と、周辺画像72内の前側撮像画像70aとの差異を小さくして、運転者の違和感を低減することができる。
画像処理装置20は、後側撮像画像70bの撮像画像色差平均値が、前側撮像画像70aの撮像画像色差平均値となるように、撮像部14bの補正値を設定して、撮像画像70bを補正している。即ち、画像処理装置20は、前側撮像画像70aを基準に、後側撮像画像70bを補正している。これにより、画像処理装置20は、運転者が最も視認する前側撮像画像70aを補正することなく、後側撮像画像70bを補正して、周辺画像72を生成する。この結果、画像処理装置20は、運転者が直接視認している状況と、周辺画像72内の前側撮像画像70aとの差異を小さくして、運転者の違和感を低減することができる。
尚、上述の実施形態では、前側撮像画像70aを基準に撮像画像70c、70d、70bを補正する例を挙げたがこれに限定されない。例えば、画像処理装置20の補正部54は、車両10の進行方向を推定または検出して、当該推定または検出した車両10の進行方向側の撮像画像70を基準として、他の撮像画像70を補正してもよい。補正部54は、シフトレバーのシフトポジション、または、車輪速センサの出力値の方向(または正負)に基づいて、車両10の進行方向を推定または検出してよい。例えば、補正部54は、シフトポジションがD(即ち、ドライブ)の場合には車両10が前方に進んでいると判定し、前側撮像画像70aを基準として他の撮像画像70c、70d、70bを補正してよい。これにより、画像処理装置20は、より一層運転者が直接視認している状況と、周辺画像72を合わせることができる。
画像処理装置20は、撮像画像70間の輝度の補正と、色差の補正とを異なる方法で行っている。これにより、画像処理装置20は、輝度と同じ方法で色差を補正した場合にいずれかの撮像画像70に生じる白とび及び黒つぶれ等を低減することができる。この結果、画像処理装置20は、撮像部14の特性及び取り付け位置等に起因する撮像画像70間の色差のずれを適切に補正して、撮像画像70をつなげて生成する周辺画像72の画質を向上させることができる。
画像処理装置20は、撮像画像70内の一部の重複領域74に設定された対象領域78の撮像画像色差平均値に基づいて、撮像画像70を補正している。これにより、画像処理装置20は、撮像画像70の全体の画素の色差の平均値に基づいて、補正する場合に比べて、演算処理の負荷を低減することができる。
<第2実施形態>
次に、上述した色差補正処理を部分的に変更した第2実施形態について説明する。第2実施形態の補正部54は、予め定められた条件に基づいて、色差の補正(即ち、第2補正)を実行するか否かを判定してよい。
例えば、補正部54は、対象領域78の色差の平均値である色差平均値(U平均値及びV平均値)と、予め定められた色差平均閾値とに基づいて、色差の補正を実行するか否かを判定してよい。色差平均閾値は、色値平均閾値の例であって、数値データ60として記憶部52に格納されている。
補正部54は、対象領域78の色差のばらつきと、予め定められたばらつき閾値とに基づいて、色差の補正を実行するか否かを判定してよい。ばらつき閾値は、数値データ60として記憶部52に格納されている。
補正部54は、一の撮像画像70に含まれる複数の対象領域78(例えば、対象領域78FLa、78FRa)の色差平均値の差分(U差分またはV差分を含む)と、予め定められた差分閾値(U差分閾値またはV差分閾値を含む)とに基づいて、色差の補正を実行するか否かを判定してよい。差分閾値は、数値データ60として記憶部52に格納されている。
また、補正部54は、予め定められた条件の場合、補正値を変更してもよい。
例えば、補正部54は、色差を補正するために設定した補正値と、予め定められた上限補正値とに基づいて、色差の補正値を上限補正値に変更するか否かを判定してよい。上限補正値は、補正値の上限を示す値であって、数値データ60として記憶部52に格納されている。
図8は、第2実施形態の補正部54が実行する色差補正処理のフローチャートである。第1実施形態と同様のステップには、同じステップ番号を付与して説明を省略する。
図8に示すように、第2実施形態の色差補正処理では、補正部54は、ステップS354〜S362までの処理を、対象領域78の個数分(ここでは、8個分)実施する(S352)。
補正部54は、複数の対象領域78のうち、補正の可否を判定するための対象領域78を設定する(S354)。対象領域78の設定順序は特に限定されるものではないが、偶数回目に設定される対象領域78が、1つ前の奇数回目に設定された対象領域78と同じ撮像画像70内であればよい。例えば、補正部54は、対象領域78FLaを最初に設定して、時計回りに、対象領域78FRa、78FRd、・・・、78FLcの順序で設定してよい。
補正部54は、設定した対象領域78の色差平均値(U平均値及びV平均値)を算出する(S356)。
補正部54は、色差の補正を実行するか否かを判定する色差平均値判定処理を実行する(S358)。
図9は、補正部54が実行する色差平均値判定処理のフローチャートである。補正部54は、色差平均値判定処理によって、撮像画像70が灰色を含まない場合、即ち、路面を含まない場合の色差の補正値の設定を禁止する。
図9に示すように、色差平均値判定処理では、補正部54は、対象領域78のU平均値の絶対値が予め定められたU平均閾値よりも大きいか否かを判定する(S402)。U平均閾値は、例えば、U値が±128階調の間の値の場合、“50”である。
補正部54は、対象領域78のU平均値の絶対値がU平均閾値以下と判定すると(S402:No)、補正部54は、対象領域78のV平均値の絶対値が予め定められたV平均閾値よりも大きいか否かを判定する(S404)。V平均閾値は、例えば、V値が±128階調の間の値の場合、“50”である。補正部54は、対象領域78のV平均値の絶対値がV平均閾値以下と判定すると(S404:No)、色差平均値判定処理を終了して、ステップS360を実行する。
一方、補正部54は、対象領域78のU平均値の絶対値がU平均閾値より大きいと判定すると(S402:Yes)、または、対象領域78のV平均値の絶対値がV平均閾値より大きいと判定すると(S404:Yes)、色差の補正をすることなく、画像生成処理を終了する(図8の円内のA参照)。
図8に戻って、補正部54は、色差の補正を実行するか否かを判定する色差ばらつき判定処理を実行する(S360)。
図10は、補正部54が実行する色差ばらつき判定処理のフローチャートである。補正部54は、色差ばらつき判定処理によって、撮像画像70に白線等を含む場合の色差の補正値の設定を禁止して、当該補正値に起因する擬色を防止する。
図10に示すように、色差ばらつき判定処理では、補正部54は、対象領域78のU値の最大値と最小値との差であるU値のばらつきを算出する(S412)。補正部54は、U値のばらつきが予め定められたUばらつき閾値よりも大きいか否かを判定する(S414)。Uばらつき閾値は、例えば、U値が256階調の場合、“20”である。
補正部54は、対象領域78のU値のばらつきがUばらつき閾値以下と判定すると(S414:No)、対象領域78のV値の最大値と最小値との差であるV値のばらつきを算出する(S416)。補正部54は、V値のばらつきが予め定められたVばらつき閾値よりも大きいか否かを判定する(S418)。Vばらつき閾値は、例えば、V値が256階調の場合、“20”である。補正部54は、対象領域78のV値のばらつきがVばらつき閾値以下と判定すると(S418:No)、色差ばらつき判定処理を終了して、ステップS362を実行する。
一方、補正部54は、対象領域78のU値のばらつきがUばらつき閾値より大きいと判定すると(S414:Yes)、または、対象領域78のV値のばらつきがVばらつき閾値より大きいと判定すると(S418:Yes)、色差の補正をすることなく、画像生成処理を終了する(図8の円内のA参照)。
図8に戻って、補正部54は、色差の補正を実行するか否かを一の撮像画像70内の色差の差分で判定する色差差分判定処理を実行する(S362)。
図11は、補正部54が実行する色差差分判定処理のフローチャートである。補正部54は、色差差分判定処理によって、一の撮像画像70内の色差が一様でない場合の色差の補正値の設定を禁止する。
図11に示すように、色差差分判定処理では、補正部54は、ステップS352以降のループの回数が偶数回目か否かを判定する(S422)。尚、偶数回目であることは、今回のループのステップS356で算出された色差平均値と同じ撮像部14で撮像された撮像画像70内の他の対象領域78の色差平均値が算出済みであることを意味する。補正部54は、偶数回目でないと判定すると(S422:No)、色差差分判定処理を終了して、ステップS352またはステップS302を実行する。
補正部54は、偶数回目であると判定すると(S422:Yes)、一の撮像画像70内の2つの対象領域78(例えば、対象領域78FLa、78FRa)のU平均値の差分であるU差分を算出する(S424)。補正部54は、U差分が予め定められたU差分閾値よりも大きいか否かを判定する(S426)。U差分閾値は、例えば、U値が256階調の場合、“10”である。
補正部54は、U差分が予め定められたU差分閾値以下と判定すると(S426:No)、一の撮像画像70内の2つの対象領域78(例えば、対象領域78FLa、78FRa)のV平均値の差分であるV差分を算出する(S428)。補正部54は、V差分が予め定められたV差分閾値よりも大きいか否かを判定する(S430)。V差分閾値は、例えば、V値が256階調の場合、“10”である。補正部54は、V差分が予め定められたV差分閾値以下と判定すると(S430:No)、色差差分判定処理を終了して、ステップS352またはステップS302を実行する。
一方、補正部54は、対象領域78のU差分がU差分閾値より大きいと判定すると(S426:Yes)、または、対象領域78のV差分がV差分閾値より大きいと判定すると(S430:Yes)、色差の補正をすることなく、画像生成処理を終了する(図8の円内のA参照)。
図8に戻って、補正部54は、ステップS352のループを対象領域78の個数分実行すると、第1実施形態と同様にステップS302、S304の処理を実行して、左側の撮像部14cの各色差の補正値を算出する。
補正部54は、左側の撮像部14cの補正値を算出すると、当該補正値の上限を判定する補正値上限判定処理を実行する(S366)。
図12は、補正部54が実行する補正値上限判定処理のフローチャートである。補正部54は、補正値上限判定処理によって、大きい補正値の補正による色の大きな変化による周辺画像72の画質の劣化を抑制する。
図12に示すように、補正値上限判定処理では、補正部54は、算出した撮像部14cのU値の補正値が予め定められたU上限値よりも大きいか否かを判定する(S442)。U上限値は、例えば、U値が256階調の場合、“35”である。補正部54は、撮像部14cのU値の補正値がU上限値よりも大きい場合(S442:Yes)、撮像部14cのU値の補正値をU上限値に変更する(S444)。補正部54は、撮像部14cのU値の補正値がU上限値以下の場合(S442:No)、撮像部14cのU値の補正値を変更することなく、維持する。
補正部54は、算出した撮像部14cのV値の補正値が予め定められたV上限値よりも大きいか否かを判定する(S446)。V上限値は、例えば、V値が256階調の場合、“35”である。補正部54は、撮像部14cのV値の補正値がV上限値よりも大きい場合(S446:Yes)、撮像部14cのV値の補正値をV上限値に変更する(S448)。補正部54は、撮像部14cのV値の補正値がV上限値以下の場合(S446:No)、撮像部14cのV値の補正値を変更することなく、維持する。
これにより、補正部54は、補正値上限判定処理を終了する。
図8に戻って、補正部54は、算出した補正値に基づいて、または、上限値に変更した補正値に基づいて、撮像画像70cの色差を補正する(S305)。
補正部54は、第1実施形態と同様にステップS306の処理を実行して、右側の撮像部14dの各色差の補正値を算出すると、当該補正値の上限を判定する補正値上限判定処理を実行する(S368)。ステップS368の補正値上限判定処理は、対象が右側の撮像部14dの補正値である以外、ステップS366の補正値上限判定処理と同じなので説明を省略する。
補正部54は、第1実施形態と同様にステップS307、S308の処理を実行して、撮像画像70cの色差を補正するとともに、後側の撮像部14bの各色差の補正値を算出する。次に、補正部54は、後側の撮像部14bの補正値に対して補正値上限判定処理を実行する(S370)。ステップS370の補正値上限判定処理は、処理の対象が後側の撮像部14bの補正値である以外、ステップS366の補正値上限判定処理と同じなので説明を省略する。
補正部54は、算出した補正値に基づいて、または、上限値に変更した補正値に基づいて、撮像画像70bの色差を補正して(S309)、色差補正処理を終了する。
上述したように第2実施形態では、補正部54が、色差平均値判定処理を実行するので、撮像画像70が路面を含まない場合等に設定された誤った補正値の設定を禁止して、補正による周辺画像72の画質の劣化を抑制する。
補正部54は、色差ばらつき判定処理を実行するので、撮像画像70に白線等を含む場合の色差の補正値の設定を禁止して、当該補正値に起因する擬色を防止して、補正による周辺画像72の画質の劣化を抑制する。
補正部54は、色差差分判定処理を実行するので、一の撮像画像70内の色差が一様でなく、ばらつきの大きい場合等に設定される誤った補正値の設定を禁止して、誤った補正値による周辺画像72の画質の劣化を抑制する。
補正部54は、補正値上限判定処理を実行するので、大きい補正値の補正による色の大きな変化による周辺画像72の画質の劣化を抑制する。
<第3実施形態>
次に、上述した色差補正処理を部分的に変更した第3実施形態について説明する。第3実施形態の補正部54は、予め定められた対象選択条件に基づいて、色差の補正(即ち、第2補正)を実行する撮像画像70を選択してよい。
第3実施形態の補正部54は、撮像画像70毎(即ち、撮像部14毎)に対象領域78の色差(ここでは、U値及びV値)の平均値である撮像画像色差平均値を算出する。具体的には、補正部54は、撮像部14aの前側撮像画像70aの全ての対象領域78FLa、78FRaのU値を全て足した総和を、対象領域78FLa、78FRaの画素数で除算して、前側撮像画像70aのU値の平均値である前側撮像画像U平均値を算出する。同様に、補正部54は、各撮像画像70b、70c、70dの後側撮像画像U平均値、左側撮像画像U平均値、及び、右側撮像画像U平均値を算出する。更に、補正部54は、各撮像画像70a、70b、70c、70dの対象領域78のV値の平均値である前側撮像画像V平均値、後側撮像画像V平均値、左側撮像画像V平均値、及び、右側撮像画像V平均値を算出する。
補正部54は、一の撮像画像70の撮像画像色差平均値と隣接する他の撮像画像70の撮像画像色差平均値との差分を色差毎に算出する。具体的には、補正部54は、前側撮像画像U平均値と左側撮像画像U平均値との差分である左前U差分を算出する。補正部54は、前側撮像画像U平均値と右側撮像画像U平均値との差分である右前U差分、後側撮像画像U平均値と左側撮像画像U平均値との差分である左後U差分、及び、後側撮像画像U平均値と右側撮像画像U平均値との差分である右後U差分を算出する。更に、補正部54は、撮像画像V平均値についても各撮像画像70間の左前V差分、右前V差分、左後V差分及び右後V差分を算出する。左前U差分、右前U差分、左後U差分及び右後U差分、左前V差分、右前V差分、左後V差分及び右後V差分を区別する必要がない場合、U差分、V差分または色差差分と記載する。各色差差分は、上述の実施形態における補正値と同じであってよい。
補正部54は、複数の色差差分と色差閾値との比較に基づいて、色差の補正を実行する撮像画像70を選択する。色差閾値は、色値閾値の例である。具体的には、補正部54は、一の撮像画像70の色差から算出された4個の色差差分の全てが予め定められた色差閾値よりも大きいという対象選択条件を満たし、一の撮像画像70以外の他の撮像画像70が対象選択条件を満たさない場合、当該一の撮像画像70を色差の補正を実行する補正対象として選択する。ここでいう一の撮像画像70の色差から算出された4個の色差差分は、一の撮像画像70が一方の側で隣接する撮像画像70のU値及びV値との色差差分、及び、一の撮像画像70が他方の側で隣接する撮像画像70のU値及びV値との色差差分を含む。
このように、補正部54は、隣接する撮像画像70との両側及び両色差の4個の色差差分の全てが色差閾値よりも大きい撮像画像70が1個の場合、当該撮像画像70を補正対象とする。例えば、補正部54は、左側撮像画像70cのU値及びV値から算出された左前U差分、左後U差分、左前V差分、及び、左後V差分の全てが色差閾値よりも大きいという対象選択条件を満たし、左側撮像画像70c以外の他の撮像画像70のいずれもが対象選択条件を満たさない場合、左前U差分、左後U差分、左前V差分、及び、左後V差分を算出する際に用いた左側撮像画像70cのU値及びV値を補正する。
補正部54は、補正対象が前側撮像画像70aでない場合、上述の実施形態の色差補正処理と同様に前側撮像画像70aを基準として補正対象の撮像画像70の色差を補正してよい。補正部54は、補正対象が前側撮像画像70aの場合、他の撮像画像70の撮像画像色差平均値の平均値を基準として前側撮像画像70aに色差補正処理を実行してよい。
図13は、第3実施形態の補正部54が実行する色差補正処理のフローチャートである。上述の実施形態と同様のステップには、同じステップ番号を付与して説明を簡略化または省略する。
図13に示すように、第3実施形態の色差補正処理において、補正部54は、撮像画像70毎に対象領域78の色差の平均値である撮像画像色差平均値を算出する(S302)。
補正部54は、隣接する撮像画像70間の撮像画像色差平均値の差分である色差差分を色差毎に算出する(S552)。具体的には、補正部54は、4個の撮像画像U平均値のうち、互いに隣接する撮像画像U平均値の4個の差分をU差分として算出する。補正部54は、4個の撮像画像V平均値のうち、互いに隣接する撮像画像V平均値の4個の差分をV差分として算出する。
補正部54は、色差閾値より大きい色差差分(U差分及びV差分を含む)があるか否かを判定する(S554)。補正部54は、色差閾値より大きい色差差分がない場合(S554:No)、色差を補正することなく、色差補正処理を終了する。補正部54は、色差閾値より大きい色差差分がある場合(S554:Yes)、両側の撮像画像70との両色差の色差差分が全て色差閾値よりも大きい撮像画像70が1個か否かを色差毎に判定する(S556)。
補正部54は、両側の撮像画像70との両色差の色差差分が全て色差閾値よりも大きい撮像画像70が1個でない場合(S556:No)、色差を補正することなく、色差補正処理を終了する。補正部54は、両側の撮像画像70との両色差の色差差分が全て色差閾値よりも大きい撮像画像70が1個の場合(S556:Yes)、当該撮像画像70を補正対象として選択する(S558)。即ち、補正部54は、対象選択条件を満たす撮像画像70が1個の場合、当該撮像画像70を補正対象として選択する。
補正部54は、補正対象の補正値を算出する(S560)。例えば、補正対象が前側撮像画像70a以外の場合、補正部54は、前側撮像画像70aの撮像画像色差平均値と補正対象の撮像画像色差平均値との差分を補正値として算出する。補正対象が前側撮像画像70aの場合、補正部54は、左側撮像画像70cの撮像画像色差平均値と右側撮像画像70dの撮像画像色差平均値との平均値と前側撮像画像70aの撮像画像色差平均値との差分を補正値としてよい。
補正部54は、補正対象の撮像画像70の色差に補正値を足すまたは引いて、補正対象の色差を補正する(S562)。
上述したように第3実施形態では、補正部54が、色差差分と色差閾値とを比較して、色差差分が色差閾値よりも大きい撮像画像70、即ち、他の撮像画像70に対して色差が大きく異なる撮像画像70を補正対象として選択している。これにより、補正部54は、各撮像部14が個別に実行したホワイトバランスの補正等によって、他の撮像画像70と色差が大きく異なる撮像画像70の色差を補正して、他の撮像画像70との色味等の違いを低減して、他の撮像画像70との繋がりを向上させることができる。
<第4実施形態>
次に、上述した色差補正処理を部分的に変更した第4実施形態について説明する。第4実施形態の補正部54は、予め定められた補色条件に基づいて、判定対象の撮像画像70に対する色差を補正(即ち、第2補正)するか否かを判定してよい。
第4実施形態の補正部54は、撮像部14から撮像画像70とともに、撮像部14が撮像画像70の補正の基準とする撮像画像70内の領域である基準領域82の情報を取得する。ここでいう撮像画像70の補正は、補色の関係に基づく補正であってよい。補正部54は、判定対象の撮像画像70の対象領域78の色差と撮像画像70の基準領域82の色差とが予め定められた補色条件を満たす場合、当該判定対象を補正する。
図14は、第4実施形態の撮像画像70内の基準領域82を説明する図である。図14に示すように、撮像画像70は、破線で区切られた複数の単位領域81を含む。基準領域82は、ドットハッチングで示すように、複数の単位領域81のいずれかである。複数の基準領域82が、撮像画像70内に設定されていてもよい。基準領域82は、例えば、車両10の乗員等によって設定されてもよく、予め定められた条件に基づいて自動で設定されてもよい。基準領域82は、例えば、撮像部14がホワイトバランスを補正する場合における測光エリアである。この場合、撮像部14は、基準領域82内の色が白色に近づくように補正する。
補正部54は、撮像部14から撮像画像70とともに基準領域82の情報を取得すると、判定対象の撮像画像70の基準領域82の色値の平均値である基準色差平均値と撮像画像色差平均値とが補色条件を満たすか否かによって、当該撮像画像70の色差を補正するか否かを判定する。図15は、補色条件による撮像画像70の判定方法を説明する図である。図15において、横軸であるX軸はU値を示し、縦軸であるY軸はV値を示す。即ち、図15はUV座標系を示す。
補正部54は、補色条件に基づく判定において、ターゲット位置T(xt,yt)をUV座標上に設定する。ターゲット位置のX座標xtは判定対象の撮像画像70の対象領域78の撮像画像U平均値である。ターゲット位置のY座標ytは判定対象の撮像画像70の対象領域78の撮像画像V平均値である。
補正部54は、原点を対称点とする点対称な位置に反転位置A(x
a,y
a)を算出する。補正部54は、式(1)に示すように、ターゲット位置T(x
t,y
t)の各座標の符号を反転させて反転位置A(x
a,y
a)を算出してよい。
補正部54は、反転位置A(x
a,y
a)と原点とを通る直線を、原点の周りで両側に許可角度θだけ回転させて、補正するか否かを判定するための補正許可範囲をUV座標上に設定する。許可角度θの一例は、30°から40°であってよい。具体的には、補正部54は、次の式(2)に基づいて、原点を中心として、反転位置A(x
a,y
a)を両側に許可角度θだけ回転させた正側許可位置B(x
b,y
b)及び負側許可位置C(x
c,y
c)を算出する。補正部54は、原点を中心とする周方向において、原点と正側許可位置B(x
b,y
b)とを通る直線と、原点と負側許可位置C(x
c,y
c)とを通る直線との間を補正許可範囲として設定する。
補正部54は、基準領域82の色差の平均値である基準色差平均値(ここでは基準U平均値及び基準V平均値を含む)に基づいて、判定位置E(xe,ye)を算出する。具体的には、補正部54は、基準領域82の各画素のU値を積算し、積算した値を画素数で割って基準U平均値を算出する。補正部54は、基準領域82の各画素のV値を積算し、積算した値を画素数で割って基準V平均値を算出する。補正部54は、算出した基準U平均値及び基準V平均値をそれぞれ判定位置E(xe,ye)のX座標及びY座標として設定する。複数の基準領域82が撮像画像70に設定されている場合、補正部54は基準領域82毎に判定位置E(xe,ye)を算出する。
補正部54は、判定位置E(x
e,y
e)とターゲット位置T(x
t,y
t)とがほぼ補色関係か否かを、判定位置E(x
e,y
e)が補正許可範囲か否かに基づいて判定する。具体的には、補正部54は、次の式(3)に基づいて、第1算出値α、第2算出値β、第1判定値φ及び第2判定値γを算出する。尚、式(3)では、反転位置A(x
a,y
a)、正側許可位置B(x
b,y
b)、負側許可位置C(x
c,y
c)及び判定位置E(x
e,y
e)をZ成分が“0”の三次元ベクトルとみなす。補正部54は、第1算出値α及び第2算出値βをベクトルの外積によって算出する。従って、第1算出値α及び第2算出値βは、X方向及びY方向の成分が“0”で、Z方向の成分のみを有するベクトルとなる。補正部54は、第1判定値φ及び第2判定値γをベクトルの内積によって算出する。ここで、判定位置E(xe,ye)の方向が正側許可位置B(x
b,y
b)と負側許可位置C(x
c,y
c)との間の方向である場合、第1算出値αのZ成分及び第2算出値βのZ成分は、互いに正負が逆になる。従って、判定位置E(xe,ye)の方向が正側許可位置B(x
b,y
b)と負側許可位置C(x
c,y
c)との間の方向である場合、第1判定値φは、第1算出値αのZ成分と第2算出値βのZ成分とを掛けた負のスカラーとなる。
補正部54は、次の式(4)を満たす場合、判定位置E(x
e,y
e)が補正許可範囲内であるとし、補色条件を満たすとして、判定対象である当該撮像画像70を補正する。複数の基準領域82を含む撮像画像70の場合、補正部54は、式(4)を満たす基準領域82が閾値個数以上であれば、当該撮像画像70を補正してもよい。閾値個数は予め設定された条件に基づいて設定されてよい。例えば、閾値個数は、予め固定された値であってもよく、基準領域82の個数に応じて設定された値(例えば、基準領域82の個数の半分)であってもよい。
補正部54は、式(4)を満たすとともに、原点から判定位置E(x
e,y
e)までの距離Deが予め定められた距離条件を満たす場合、当該撮像画像70が補正許可範囲内として補正してもよい。例えば、補正部54は、距離Deが原点から反転位置A(x
a,y
a)までの距離Daを含む次の式(5)に示す距離条件を満たす場合、当該撮像画像70を補正してもよい。換言すれば、補正部54は、判定位置E(x
e,y
e)が原点から距離Da/λより離れていれば、撮像画像70を補正する。尚、λは予め定められた値であって、例えば、“2”であってよい。
補正部54は、補正対象とした撮像画像70の色差を上述の実施形態と同様に補正値を算出して補正する。
図16は、第4実施形態の補正部54が実行する色差補正処理のフローチャートである。上述の実施形態と同様のステップには、同じステップ番号を付与して説明を簡略化または省略する。
図16に示すように、第4実施形態の色差補正処理では、補正部54は、ステップS302を実行した後、補正するか否かを判定する判定対象として撮像画像70のいずれかを設定する(S670)。尚、補正部54は、前側撮像画像70aを基準に他の撮像画像70の色差を補正する場合、前側撮像画像70a以外の撮像画像70から判定対象を選択してよい。
補正部54は、補正の判定対象である撮像画像70の撮像画像U平均値及び撮像画像V平均値に基づいてターゲット位置T(xt,yt)をUV座標上に設定する(S672)。補正部54は、式(1)に基づいて、ターゲット位置T(xt,yt)の正負を反転させた反転位置A(xa,ya)を算出する(S674)。補正部54は、式(2)及び反転位置A(xa,ya)に基づいて正側許可位置B(xb,yb)及び負側許可位置C(xc,yc)を算出して、補正許可範囲をUV座標上に設定する(S676)。
補正部54は、判定位置E(xe,ye)を算出する(S678)。具体的には、補正部54は、撮像部14から取得した撮像画像70及び基準領域82の情報に基づいて、基準領域82のU値及びV値の平均値である基準U平均値及び基準V平均値を算出する。補正部54は、基準U平均値及び基準V平均値を判定位置E(xe,ye)のX座標及びY座標として設定する。
補正部54は、判定対象の撮像画像70を補正するか否かを判定する(S680)。具体的には、補正部54は、判定位置E(xe,ye)が補正許可範囲か否かで、判定対象を補正するか否かを判定する。この場合、補正部54は、反転位置A(xa,ya)、正側許可位置B(xb,yb)、負側許可位置C(xc,yc)及び判定位置E(xe,ye)を用いた式(3)に基づいて判定値φ、γを算出する。補正部54は、原点から判定位置E(xe,ye)及び反転位置A(xa,ya)までの距離De、Daを算出する。補正部54は、判定値φ、γが式(4)を満たすか否か及び距離De、Daが式(5)満たすか否かに基づいて、判定位置E(xe,ye)が補正許可範囲か否かを判定して、判定対象を補正するか否かを判定する。
補正部54は、判定値φ、γ及び距離De、Daが式(4)及び式(5)の少なくとも一方を満たさず、判定位置E(xe,ye)が補正許可範囲でない場合、判定対象の撮像画像70を補正しないと判定する(S680:No)。この場合、補正部54は、判定対象の撮像画像70の色差を補正することなく、ステップS686以降を実行する。
補正部54は、判定値φ、γ及び距離De、Daが式(4)及び式(5)を満たし、判定位置E(xe,ye)が補正許可範囲である場合、当該撮像画像70の色差を補正すると判定する(S680:Yes)。
補正部54は、補正対象の撮像画像70の色差の補正値を算出する(S682)。具体的には、補正部54は、前側撮像画像70aを基準とする場合、前側撮像画像70aのU値及びV値と、補正対象の撮像画像70のU値及びV値との差分を、U値及びV値の補正値として算出する。
補正部54は、補正対象の撮像画像70の色差を補正値に基づいて補正する(S684)。具体的には、補正部54は、補正対象の撮像画像70のU値及びV値に、算出した補正値を足すまたは引くことによって、補正対象を補正する。
補正部54は、全撮像画像70を判定対象として判定したか否かを判定する(S686)。尚、前側撮像画像70aを色差の補正の基準とする場合、補正部54は、判定対象に前側撮像画像70aを含めなくてよい。補正部54は、全撮像画像70を判定対象としていないと判定すると(S686:No)、ステップS670以降を繰り返す。補正部54は、全撮像画像70を判定対象としたと判定すると(S686:Yes)、色差補正処理を終了する。
上述したように第4実施形態では、補正部54が、対象領域78と基準領域82との補色関係に基づいて、判定対象の撮像画像70を補正するか否かを判定している。これにより、補正部54は、複数の撮像部14のそれぞれが基準領域82の色差の補色関係に基づいて補正することによって他の撮像画像70に対して対象領域78の色味等に違和感が生じた撮像画像70を補正対象として選択することができる。この結果、補正部54は、当該補正対象の撮像画像70の色差を補正することによって、他の撮像画像70に対する色味等の違和感を低減し、他の撮像画像70との繋がりを向上させることができる。
例えば、撮像部14が撮像画像70内の基準領域82の色差を補色関係に基づいてホワイトバランスの補正を実行した場合、基準領域82と補色の関係にある対象領域78の色差平均値はUV空間において原点から離れる。これにより、対象領域78の色味等が他の撮像画像70に対して異なるので、当該撮像部14によって補正された撮像画像70は他の撮像画像70に対して違和感を生じさせる。従って、補正部54は、基準領域82と対象領域78とがほぼ補色の関係にある撮像画像70を補正の対象とすることで、撮像部14の補正によって生じた他の撮像画像70に対する色味等の違和感を低減できる。
<第5実施形態>
次に、第3実施形態及び第4実施形態を組み合わせた第5実施形態について説明する。図17は、第5実施形態の補正部54が実行する色差補正処理のフローチャートである。上述の実施形態と同様のステップには、同じステップ番号を付与して説明を簡略化または省略する。
図17に示すように、第5実施形態の色差補正処理において、補正部54は、ステップS302、S552、S554を実行した後、両側の撮像画像70との両色差の色差差分が全て色差閾値よりも大きい撮像画像70が1個か否かを色差毎に判定する(S556)。
補正部54は、両側の撮像画像70との両色差の色差差分(U差分及びV差分を含む)が全て色差閾値よりも大きい撮像画像70が1個でない場合(S556:No)、色差を補正することなく、色差補正処理を終了する。
補正部54は、両側の撮像画像70との両色差の色差差分が全て色差閾値よりも大きい撮像画像70が1個の場合(S556:Yes)、当該撮像画像70を判定対象として設定する(S670)。
補正部54は、ステップS672、S674、S676、S678を実行した後、判定対象の撮像画像70を補正するか否かを判定する(S680)。補正部54は、判定対象の撮像画像70を補正すると判定すると(S680:Yes)、当該補正対象を補正するための補正値を算出する(S682)。
補正部54は、補正対象の撮像画像70の色差を補正値に基づいて補正すると(S684)、色差補正処理を終了する。尚、第5実施形態では、判定対象となる撮像画像70は多くても1個なので、補正部54はステップS686を実行しない。
第5実施形態は第3実施形態及び第4実施形態を組み合わせた構成を有するので、第3実施形態及び第4実施形態の効果を奏することができる。具体的には、第5実施形態では、補正部54が、撮像画像70間の色差の差分に基づいて撮像画像70のいずれかを判定対象として選択し、当該判定対象を補正するか否かを対象領域78及び基準領域82の色差の補色関係に基づいて判定している。これにより、補正部54は、ホワイトバランスの補正のように補色の関係に基づく補正によって他の撮像画像70と色味等が異なった撮像画像70の色差を補正して、他の撮像画像70に対する色味等の違和感を低減できる。
上述した各実施形態の構成の機能、接続関係、個数、配置等は、発明の範囲及び発明の範囲と均等の範囲内で適宜変更、削除等してよい。各実施形態を適宜組み合わせてもよい。各実施形態の各ステップの順序を適宜変更してよい。
上述の実施形態では、画像生成処理毎に補正値を算出する例を示したが、これに限定されない。例えば、複数回の画像生成処理の間に一度、補正値を算出するようにしてもよく、情報処理装置36の起動時等のみ補正値を算出するようにしてもよい。
上述の実施形態では、重複領域74の一部に設定した対象領域78を輝度及び色差の補正をするための領域とした例を挙げたが、対象領域78は、重複領域74の全体に広げて、重複領域74と一致させてもよい。
上述の第2実施形態では、色差平均値判定処理、色差ばらつき判定処理、色差差分判定処理、及び、補正値上限判定処理の全てを実行する例を挙げたが、これに限定されない。例えば、画像処理装置20は、これらの判定処理のうち、1または複数の判定処理を実行するようにしてもよい。
上述の実施形態では、移動体の例として車両10を挙げたが、これに限定されない。例えば、移動体は、飛行機、船、二輪車等であってもよい。
上述の実施形態では、補正部54が、前側撮像画像色差平均値と、左右両側及び後側の撮像画像色差平均値との差分に基づいて、色差(または色値)を補正する例を挙げたが、これに限定されない。例えば、補正部54が、前側撮像画像色差平均値に対する左右両側及び後側の撮像画像色差平均値の比率に基づいて、色差を補正してもよい。この場合、補正部54は、撮像画像の色差(または色値)を当該比率で割ることによって、色差を補正してよい。
上述の実施形態では、色値の例として、色差を挙げたが、色値はこれに限定されない。色値は、各色の程度を表す値であればよく、例えば、RGB表示における各色(赤色、青色、緑色)の明度(または輝度)等であってもよい。
上述の第1実施形態から第3実施形態では、補正部54が、左側撮像画像色差平均値、右側撮像画像色差平均値、及び、後側撮像画像色差平均値を、前側撮像画像色差平均値と等しくするように補正する例を挙げたが、これに限定されない。例えば、補正部54は、左側撮像画像色差平均値、右側撮像画像色差平均値、及び、前側撮像画像色差平均値を、後側撮像画像色差平均値と等しくするように補正してもよい。即ち、補正部54は、一の撮像画像色差平均値を基準として、当該一の撮像画像色差平均値と、他の撮像画像色差平均値とを等しくするように補正してよい。
上述の実施形態では、補正部54が複数の重複領域74を含む撮像画像70を補正する例を挙げて説明したが、これに限定されない。例えば、補正部54は、1つだけ重複領域74を含む複数の撮像画像70を上述の実施形態の方法に基づいて、補正してもよい。
上述の第4実施形態及び第5実施形態では、補正部54は、式(4)及び式(5)を満たす場合、判定対象の撮像画像70を補正したが、補正するか否かを判定する条件はこれに限定されない。例えば、補正部54は、式(4)を満たした場合、即ち、式(5)に関係なく、判定対象の撮像画像70を補正してもよい。また、判定値φ、γが0の場合、補正部54は、判定対象を補正すると判定してもよい。
上述の第4実施形態において、補正部54は、ターゲット位置T(xt,yt)の反対側に設定した反転位置A(xa,ya)に基づいて補正許可範囲を設定し、判定位置E(xe,ye)が当該補正許可範囲内か否かで判定対象を補正するか否かを判定したが、補正するか否かの判定方法はこれに限定されない。例えば、補正部54は、判定位置E(xe,ye)の反対側に設定した反転位置A(xa,ya)に基づいて補正許可範囲を設定し、ターゲット位置T(xt,yt)が補正許可範囲内か否かに基づいて判定対象を補正するか否かを判定してよい。