(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
以下では、上述した本願発明の内容を明確にするために実施例について説明する。
A.装置構成 :
図1には、車載カメラ10を搭載した車両1の大まかな構成が示されている。図示した例では、車載カメラ10は車両1の後部の位置に、斜め下向きに搭載されており、車両1の後方の状況を斜め上方から撮影することができる。そして、車載カメラ10で撮影した撮影画像は、制御装置20を介してモニター11に表示される。車両1の運転者は、モニター11に表示された画像から、車両1の後方の状況を確認することができる。
【0013】
また、制御装置20は、車載カメラ10が斜め上方から撮影した画像を、あたかも真上から撮影した画像に鳥瞰変換する機能を有している。従って、運転者は、車載カメラ10から得られた撮影画像を、必要に応じて制御装置20で鳥瞰変換して、得られた鳥瞰画像をモニター11に表示させることもできる。
更に、車両1には、車両情報を検出する車両情報センサー12が搭載されており、制御装置20は車両情報センサー12の出力に基づいて車両情報を取得することができる。尚、車両情報センサー12としては、車速センサーや、操舵角センサー、シフトポジションセンサーなどとすることができ、車両情報としては、車速や、操舵角、シフトポジションなどとすることができる。
【0014】
ここで、詳細には後述するが、鳥瞰変換は、車載カメラ10が車両1に対して正しい角度で取り付けられていることを前提として、撮影画像を鳥瞰画像に変換する。もちろん、車両1の工場出荷時には、車載カメラ10の取付角度は正しい角度に調整されているが、長い間の使用によって、あるいは何らかの理由で、車載カメラ10の取付角度にずれが生じることが起こり得る。そして、取付角度にずれが生じると、鳥瞰変換によって得られた鳥瞰画像は歪んだ画像となってしまう。
【0015】
例えば、車両1を後進させて駐車枠の中に駐車させようとしている場合、車載カメラ10の取付角度にずれが生じていなければ、
図1(b)に例示したように、駐車枠を真上から見たような鳥瞰画像がモニター11に表示される。このため、モニター11を確認することによって、車両1と駐車枠との位置関係が、距離感も含めて容易に把握することができる。
ところが、車載カメラ10の取付角度にずれが生じていると、モニター11に表示される駐車枠が、
図1(c)に例示したように歪んでしまうので、車両1と駐車枠との位置関係を把握することが困難となる。従って、このような場合には、車載カメラ10の取付角度を調整する必要がある。こうした点に鑑みて、制御装置20は、車載カメラ10の取付角度を調整し、あるいは取付角度を検出するための機能を搭載している。
尚、本実施例では車両1の後部に車載カメラ10が取り付けられているものとして説明するが、車両1の前方に車載カメラ10が取り付けられている場合にも、同様にして取付角度を調整することが可能である。
【0016】
B.第1実施例 :
図2には、第1実施例の制御装置20の大まかな内部構造を示したブロック図が示されている。図示されるように制御装置20は、撮影画像取得部21と、鳥瞰変換部22と、記憶部23と、カメラ角度解析部24と、車両角度解析部25と、取付角度検出部26とを備えている。
尚、これら6つの「部」は、車載カメラ10の取付角度を調整し、あるいは取付角度を検出するために制御装置20が備える機能に着目して、制御装置20の内部を便宜的に分類した抽象的な概念であり、制御装置20が物理的に6つの部分に区分されることを表すものではない。従って、これらの「部」は、CPUで実行されるコンピュータープログラムとして実現することもできるし、LSIやメモリーを含む電子回路として実現することもできるし、更にはこれらを組合せることによって実現することもできる。
本実施例では、制御装置20は、CPUやROMやRAMなどを備えたマイクロコンピューターによって主に形成されており、CPUが実行するプログラムによって、上記の6つの「部」が実現されている。
【0017】
撮影画像取得部21は、車載カメラ10に接続されており、車載カメラ10で撮影した画像の画像データを取得する。前述したように車載カメラ10は斜め下向きに取り付けられているので、車載カメラ10から得られる撮影画像は、車両1の後方の地面を斜め上方から撮影した画像となる。
また、車載カメラ10の取付角度を調整(あるいは検出)する際には、取付角度調整用の基準図形が形成された地面を撮影する。基準図形には、駐車枠のように、少なくとも3本の直線が既知の角度で交差していれば、どのような図形であっても用いることができる。
【0018】
鳥瞰変換部22は、撮影画像取得部21から撮影画像の画像データを受け取ると、車両1の後方の地面を真上から撮影したような画像(鳥瞰画像)に変換する。本明細書中では、このように撮影対象を真上から撮影したような画像に変換する処理を、鳥瞰変換と称する。
記憶部23には、撮影画像の鳥瞰変換に用いるデータが予め記憶されており、鳥瞰変換部22は記憶部23から必要なデータを読み出して、撮影画像を鳥瞰画像に変換する。そして、得られた鳥瞰画像はモニター11に出力して表示させる。また、車載カメラ10の取付角度を調整(あるいは検出)するために、基準図形が形成された地面を撮影した場合には、その撮影画像から得られた鳥瞰画像を記憶部23にも出力して記憶させる。
【0019】
カメラ角度解析部24は、記憶部23に記憶された鳥瞰画像を読み出して、鳥瞰画像中の基準図形を解析することにより、地面上の基準図形に対して車載カメラ10の光軸がなす角度を決定する。地面上の基準図形に対して車載カメラ10の光軸がなす角度を決定する方法については後述する。
【0020】
また、車両角度解析部25は、車両1が直進した時に少なくとも2箇所で得られた鳥瞰画像を読み出して、それら鳥瞰画像中での基本図形の移動方向を解析することにより、地面上の基準図形に対して車両1がヨウ方向になす角度を決定する。地面上の基準図形に対して車両1がヨウ方向になす角度を決定する方法については後述する。
【0021】
取付角度検出部26は、カメラ角度解析部24での解析結果と、車両角度解析部25での解析結果とに基づいて、車両1に対する車載カメラ10の取付角度を検出する。そして、検出した取付角度をモニター11などの機器に出力する。
【0022】
図3には、車載カメラ10の取付角度を調整する第1実施例の取付角度調整処理のフローチャートが示されている。尚、この処理は、車両1を駐車枠の付近に移動させた後に開始される処理である。
図示されるように、第1実施例の取付角度調整処理では、地面上に形成された駐車枠を含む撮影画像を取得する(S100)。上述したように、車両1は、駐車枠が少なくとも車載カメラ10の撮影範囲内に入るような位置に予め移動されているので、車載カメラ10で撮影した画像を取得すれば、駐車枠を含む撮影画像を取得することができる。
【0023】
次に、取得した撮影画像を鳥瞰画像に変換する(S101)。鳥瞰画像とは、撮影画像に写った箇所をあたかも真上から撮影したかのように、撮影画像を鳥瞰変換して得られた画像である。
図4には、車載カメラ10によって得られる撮影画像と、撮影画像を鳥瞰変換して得られる鳥瞰画像とが例示されている。
車載カメラ10は駐車枠を斜め上方から見下ろすような角度で撮影するので、得られる撮影画像は、
図4(a)に例示したような画像となる。駐車枠の2つの角部A,Bの角度は直角であるが、車載カメラ10は斜め上方から駐車枠を撮影しているので、撮影画像上での2つの角部A,Bの角度は、本来の角度(ここでは直角)とは異なる角度で写っている。
【0024】
仮に、車載カメラ10の取付角度がずれていなければ、
図4(a)に例示した撮影画像を鳥瞰変換することによって、
図4(b)に例示したような鳥瞰画像を得ることができる。
図4(b)に例示したように、鳥瞰画像中での駐車枠の2つの角部A,Bの角度は、本来の角度である直角となっている。
しかし、車載カメラ10の取付角度にずれが生じている場合には、鳥瞰変換しても、駐車枠の2つの角部A,Bは、本来の角度である直角とはならない。
【0025】
図4(c)には、車載カメラ10の取付角度がずれている場合に、撮影画像を鳥瞰変換して得られる鳥瞰画像が例示されている。図示されるように、鳥瞰画像中での駐車枠の角部Aの角度θaや、角部Bの角度θbは、本来の角度である直角とは異なる角度となっている。従って、鳥瞰画像中での駐車枠の2つの角部A,Bが、本来の角度で写っていなければ、車載カメラ10の取付角度がずれているものと判断することができる。
【0026】
そこで、
図3に示した取付角度調整処理では、撮影画像を鳥瞰画像に変換すると(S101)、鳥瞰画像中の駐車枠を形成する各辺が交差する角度(
図4(c)の例では角度θaおよび角度θb)と、駐車枠を形成する任意の一辺が車載カメラ10の光軸に対してなす角度((
図4(c)の例では左側の辺がなす角度θc)とを検出する(S102)。
本実施例では、車両1から見て駐車枠の左側の辺が、本発明における「基準直線」に対応する。
【0027】
続いて、検出した3つの角度に基づいて、駐車枠に対する車載カメラ10の角度(正確には、駐車枠に対して車載カメラ10の光軸がピッチ方向になす角度と、車載カメラ10がロール方向に回転した角度と、駐車枠の左側の辺に対して車載カメラ10の光軸がヨウ方向になす角度)を算出する(S103)。尚、ピッチ方向とは、車載カメラ10の光軸の先端が上下方向(鉛直方向)に移動するよう車載カメラ10を回転させる方向であり、ロール方向とは、車載カメラ10を光軸周りに回転させる方向である。また、ヨウ方向とは、車載カメラ10の光軸の先端が左右方向(水平方向)に移動するよう車載カメラ10を回転させる方向である。
以下では、鳥瞰画像中の駐車枠から検出した3つの角度から、駐車枠に対する車載カメラ10の角度を算出する方法を説明するが、その準備として、先ず始めに、撮影画像を鳥瞰画像に変換する方法について説明する。
【0028】
図5には、撮影画像を鳥瞰画像に変換する方法を説明するために用いる各種の座標系が示されている。図示されるように、車両1を基準とする直交座標系と、車載カメラ10を基準とする直交座標系とを考える。そして、車両1を基準とする直交座標系を形成する各座標軸は、車両1の前後方向に対して直角かつ水平方向に取った座標軸をXo軸とし、車両1の前後方向に取った座標軸をYo軸とし、車両1の前後方向に対して直角かつ鉛直方向に取った座標軸をZo軸とする。また、このような3つの座標軸(Xo軸、Yo軸、Zo軸)による座標を、以下では車両基準座標と称し、座標値を(xo、yo、zo)と表すものとする。
車載カメラ10を基準とする直交座標系を形成する各座標軸についても同様に、車載カメラ10の光軸方向に取った座標軸をCY軸とし、CY軸に直角かつ水平方向に取った座標軸をCX軸とし、CY軸およびCX軸に対して直角かつ上向きに取った座標軸をCZ軸とする。また、このような3つの座標軸(CX軸、CY軸、CZ軸)による座標を、以下ではカメラ基準座標と称し、座標値を(cx、cy、cz)と表すものとする。
【0029】
また、車両基準座標(xo、yo、zo)とカメラ基準座標(cx、cy、cz)との関係は、車両1に取り付けられた車載カメラ10の位置によって変化する。そこで、鳥瞰変換を容易とするために、車両1を基準とする直交座標系の原点Oが、車載カメラ10を基準とする直交座標系の原点COに一致するように、車両1を基準とする直交座標系を平行移動させた新たな直交座標系を考える。この新たな直交座標系の各座標軸の中で、Xo軸に平行な座標軸をX軸とし、Yo軸に平行な座標軸をY軸とし、Zo軸に平行な座標軸をZ軸とする。また、この新たな3つの座標軸(X軸、Y軸、Z軸)による座標は、以下では(解析用の)車両基準座標と称し、座標値を(x、y、z)と表すものとする。
このような(解析用の)車両基準座標を考えると、車載カメラ10のピッチ方向の回転はX軸周りの回転と考えることができ、車載カメラ10のロール方向の回転はY軸周りの回転と、車載カメラ10のヨウ方向の回転はZ軸周りの回転と考えることができる。
【0030】
更に、これら車両基準座標の座標値(xo、yo、zo)と、(解析用の)車両基準座標の座標値(x、y、z)とは、
図6に示す式(1)によって容易に変換することができる。尚、式(1)中のtx、ty、tzは、カメラ基準座標の原点COの車両基準座標でのxo座標、yo座標、zo座標を表している。
このように、車両基準座標の座標値(xo、yo、zo)と、(解析用の)車両基準座標の座標値(x、y、z)とは相互に変換可能であり、また、解析にはもっぱら(解析用の)車両基準座標の座標値(x、y、z)が用いられる。そこで、以下では、(解析用の)車両基準座標の座標値(x、y、z)を、単に、車両基準座標の座標値(x、y、z)と略称する。
【0031】
このような車両基準座標の座標値(x、y、z)と、カメラ基準座標の座標値(cx、cy、cz)とは、
図7中に示した式(2)によって関係づけられている。ここで、式(2)中の[P]は、車両基準座標をピッチ方向に回転させるための回転行列である。また、式(2)中の[R]は、車両基準座標をロール方向に回転させるための回転行列であり、[Y]は、車両基準座標をヨウ方向に回転させるための回転行列である。また、回転行列[P]中の角度θpは、カメラ基準座標の車両基準座標に対するピッチ方向の回転角度であり、回転行列[R]中の角度θrは、カメラ基準座標の車両基準座標に対するロール方向の回転角度である。更に、回転行列[Y]中の角度θpは、カメラ基準座標の車両基準座標に対するヨウ方向の回転角度である。
車載カメラ10で撮影される基準図形(ここでは駐車枠)の車両基準座標の座標値(x、y、z)は、
図7に示した式(2)によって、カメラ基準座標の座標値(cx、cy、cz)に変換される。
【0032】
こうしてカメラ基準座標に変換された基準図形の座標値(cx、cy、cz)は、撮影画像上での座標値(u、v)に変換することができる。尚、撮影画像上での座標値(u、v)を、以下では、画像面座標の座標値(u、v)と称するものとする。
図8には、カメラ基準座標に変換された基準図形の座標値(cx、cy、cz)を、画像面座標の座標値(u、v)に変換する方法が示されている。図示されるように、カメラ基準座標の原点COから適切な距離Lに、車載カメラ10の光軸(座標軸CY)に直交する平面(画像面)を設定する。こうすれば、車載カメラ10の撮影画像は、カメラ基準座標上の撮影対象を、画像面に投影したものと考えることができる。
従って、カメラ基準座標の座標軸CYと画像面との交点を原点として、カメラ基準座標の座標軸CXと平行に座標軸Uを取り、カメラ基準座標の座標軸CZと平行に座標軸Vと取れば、地面に形成された基準図形(ここでは駐車枠)の座標値(cx、cy、cz)は、
図8(c)に示した式(3)によって、画像面上の座標値(u、v)に変換される。
【0033】
図9には、以上に説明した各座標値の関係がまとめて示されている。すなわち、車両基準座標の座標値(x、y、z)は、
図7(b)中の式(2)によってカメラ基準座標の座標値(cx、cy、cz)に変換され、更に、
図8(c)中の式(3)によって画像面座標の座標値(u、v)に変換される。そして、この画像面座標の座標値(u、v)が撮影画像上での座標値に対応する。
このように、車両基準座標の座標値(x、y、z)と、画像面座標の座標値(u、v)とは一対一に対応しているから、
図9中に破線の矢印で示したように、画像面座標の座標値(u、v)を車両基準座標の座標値(x、y、z)に逆変換することも可能である。そして、鳥瞰画像は、車両基準座標の画像をZ軸方向から見た画像であるから、車両基準座標の座標値(x、y、z)のZ軸成分を削除することによって容易に得ることができる。
【0034】
従って、画像面座標の座標値(u、v)を車両基準座標の座標値(x、y、z)に逆変換し、得られた車両基準座標の座標値(x、y、z)からZ軸成分を削除するという一連の変換を行えば、撮影画像を鳥瞰変換することができる。更に、これらの一連の変換を合成した変換を実行する鳥瞰変換モジュールを形成することも可能である。
図3に示した取付角度調整処理のS101では、このような鳥瞰変換モジュールを用いて、撮影画像を鳥瞰画像に変換する。尚、車両基準座標の座標値(x、y、z)のZ軸成分を削除して得られる座標値(x、y)を、鳥瞰座標の座標値(x、y)と称することがあるものとする。
【0035】
また、
図7(b)の式(2)に示されるように、車両基準座標の座標値(x、y、z)からカメラ基準座標の座標値(cx、cy、cz)への変換は、車載カメラ10のピッチ方向の角度θpと、ロール方向の角度θrと、ヨウ方向の角度θyとに依存する。このことから当然に、撮像画像の画像面座標(u、v)を鳥瞰座標の座標値(x、y)に変換する鳥瞰変換も、車載カメラ10のピッチ方向の角度θpと、ロール方向の角度θrと、ヨウ方向の角度θyとに依存する。従って、鳥瞰変換モジュールは、車載カメラ10の取付角度が適切な角度となっていることを前提として設定されている。
そして、
図4(c)に例示したように、基準図形(ここでは駐車枠)の角度が本来の角度とは異なってしまうのは、車載カメラ10の取付角度がずれているためと考えられる。
【0036】
そこで、
図10に示したように、車載カメラ10のピッチ方向の角度θpと、ロール方向の角度θrと、ヨウ方向の角度θyとを、鳥瞰変換モジュールの外部から設定可能としておき、これら3つの角度θp、θr、θyを種々の組合せに変更して、撮影画像を鳥瞰画像に変換する。そして、得られた鳥瞰画像中の基準図形(駐車枠)から、
図4(c)に示した3つの角度θa、θb、θcを検出して、それら3つの角度θa、θb、θcを、
図11に例示した評価関数Hを用いて評価する。
その結果、評価関数Hの値が最も小さくなった(あるいは評価関数Hの値が所定の許容値よりも小さくなった)角度θp、θr、θyの組合せを、車載カメラ10の光軸が基準図形(駐車枠)に対して成す角度として決定する。
図3に示した取付角度調整処理のS103では、以上のようにして、駐車枠に対する車載カメラ10の角度を算出する。
【0037】
もっとも、車載カメラ10の駐車枠に対する角度を求めても、直ちに、車載カメラ10の取付角度を調整可能となるわけではない。これは、車載カメラ10の取付角度の調整は、車両1に対する取付角度を調整するのであって、車両1の駐車枠に対する角度が分からなければ、たとえ車載カメラ10の駐車枠に対する角度が分かっても、調整するべき(車載カメラ10の車両1に対する)取付角度は分からないためである。そして、特に車両1が駐車枠に対してヨウ方向になす角度については、ピッチ方向やロール方向の角度に比べて変動の影響が避けられない。この点について、
図12を用いて説明する。
【0038】
例えば、駐車枠に対してできるだけ傾かないように車両1を停車した後、鳥瞰画像に写った駐車枠の画像を解析して、車載カメラ10の駐車枠に対する角度を求めたところ、ヨウ方向には角度θyだけずれていたものとする。
車両1は駐車枠に対してできるだけ傾かないように停車しているから、
図12(a)に示したように、車両1が駐車枠に対して傾いていないとすれば、車載カメラ10が車両1に対してヨウ方向に角度θyだけずれていることになる。
しかし、車両1を駐車枠に対して傾かないように停車させることは難しいので、
図12(b)に示したように、車両1が駐車枠に対して角度θyだけ傾いていることも考えられる。この場合は、車載カメラ10は車両1に対しては真っ直ぐに取り付けられていることになる。
もちろん、実際には、
図12(c)に示したように、車両1が駐車枠に対してヨウ方向に角度θys傾いて、その車両1に対して車載カメラ10が角度θyc傾いたために、結果として、車載カメラ10が駐車枠に対して角度θy傾いたものと考えられる。
【0039】
同様なことは、ピッチ方向およびロール方向の角度についても起こり得る。しかし、車両1の駐車枠に対するピッチ方向およびロール方向の傾きは、車両1の乗員や積載状態(積載量や積載位置など)を一定にすることで、同じ角度に揃えることができる。このため、車両1の駐車枠に対するピッチ方向およびロール方向の角度は、予め見積もっておくことも可能である。
これに対して、車両1の駐車枠に対するヨウ方向の傾きについては、常に一定の傾きとなるように条件を揃えることが困難である。従って、車両1の駐車枠に対するヨウ方向の角度θysを何らかの方法で検出しなければ、車載カメラ10の車両1に対するヨウ方向の角度θycを知ることができず、車載カメラ10の取付角度を調整することもできなくなる。
【0040】
そこで、
図3に示した取付角度調整処理では、駐車枠に対する車載カメラ10の角度を算出すると(S103)、車両1を一定距離だけ直進させて、新たに撮影した駐車枠の撮影画像を取得する(S104)。
尚、車両1を移動させる距離は、原理的には、距離が長いほど、車両1の駐車枠に対するヨウ方向の角度θysを精度良く検出することができる。しかし実際には、車両1を移動させる距離があまりに長くなると、車載カメラ10の撮影範囲内から駐車枠が外れてしまう。また、たとえ車載カメラ10の撮影範囲内に入っていても、駐車枠が車載カメラ10から遠くなると、車載カメラ10の解像度や、得られる像が歪み易くなる関係で、駐車枠の正確な形状を検出することが困難になる。このため、実際には、車両1を移動させる距離には適切な範囲が存在しており、本実施例では、2メートル〜3メートルの範囲で車両1を直進させる。
【0041】
続いて、新たに取得した撮影画像を鳥瞰画像に変換する(S105)。そして、新たに得られた鳥瞰画像と、車両1を直進させる前に得られていた鳥瞰画像とを比較して、鳥瞰画像中での駐車枠の移動方向を検出することにより、車両1の駐車枠に対するヨウ方向の角度θysを検出する(S106)。
すなわち、
図13(a)に示されるように、モニター11に表示された鳥瞰画像上で駐車枠が移動するのは、
図13(b)に示すように、車両1が移動したことによって駐車枠が車両1から遠ざかったためである。従って、鳥瞰画像上での駐車枠の移動方向は、車両1が駐車枠に対して移動する方向となっており、そして、車両1が直進しているのであれば、車両1が駐車枠に対して移動する方向は、車両1の駐車枠に対する角度θysとなる。このことから、鳥瞰画像上での駐車枠の移動方向を検出すれば、車両1の駐車枠に対する角度θysを求めることができる。
【0042】
鳥瞰画像上で駐車枠が移動する方向は、例えば2つの鳥瞰画像間で画像相関を取ることによっても求めることもできるが、簡易的には、鳥瞰画像中の特徴点が移動する方向を検出することによって求めることができる。
例えば、
図13(a)に例示したように、駐車枠の角部A、あるいは角部Bの位置を特徴点として検出して、2つの鳥瞰画像間で角部Aあるいは角部Bが移動する方向を求めることによって、車両1の駐車枠に対する角度θysを求めることができる。
図3に示した取付角度調整処理のS106では、このようにして、車両1の駐車枠に対する角度θysを検出する。
【0043】
その後、S103で求めておいた車載カメラ10の駐車枠に対するヨウ方向の角度θyから、S106で求めた車両1の駐車枠に対するヨウ方向の角度θysを減算することにより、車載カメラ10の車両1に対するヨウ方向の取付角度θycを算出する(S107)。
【0044】
以上のようにして、車載カメラ10の駐車枠に対するピッチ方向の角度θpおよびロール方向の角度θrと、車載カメラ10の車両1に対するヨウ方向の取付角度θycとが得られたら、これらの角度に基づいて、車載カメラ10の車両1に対する取付角度を調整する(S108)。
すなわち、ヨウ方向については、車載カメラ10の車両1に対する取付角度θycが求められているので、この取付角度θycが適切な値となるように調整することができる。
また、ピッチ方向およびロール方向については、車両1の駐車枠に対する傾きが同じとなるように乗員や積載状態(積載量や積載位置など)を揃えた状態で、車載カメラ10の駐車枠に対するピッチ方向の角度θpおよびロール方向の角度θrが適切な値となるように、車載カメラ10の取付角度を調整することができる。
あるいは、乗員や積載状態(積載量や積載位置など)を揃えた状態で、車両1が駐車枠に対してピッチ方向およびロール方向に傾く角度を予め見積もっておき、車載カメラ10の駐車枠に対するピッチ方向の角度θpおよびロール方向の角度θrから、これら見積もっておいた角度を減算してもよい。こうすれば、車載カメラ10の車両1に対するピッチ方向およびロール方向の取付角度を求めることができるので、求めた角度が適切な角度となるように、車載カメラ10の取付角度を調整することができる。
【0045】
尚、以上の説明では、車両1を直進させる前と後とで駐車枠の画像を撮影して鳥瞰画像に変換し、直進前の鳥瞰画像に基づいて車載カメラ10の駐車枠に対する角度を算出し、直進前後の鳥瞰画像から、車両1の駐車枠に対する角度を検出するものとして説明した。
しかし、直進後の鳥瞰画像に基づいて、車載カメラ10の駐車枠に対する角度を算出することとしても良い。
【0046】
また、車両1の駐車枠に対する角度を検出するために用いた2つの鳥瞰画像の中の一方は、車載カメラ10の駐車枠に対する角度を算出するために用いた鳥瞰画像であるものとして説明した。
しかし、車載カメラ10の駐車枠に対する角度を算出するために用いた鳥瞰画像とは別に、車両1の直進前後で新たな2つの鳥瞰画像を取得して、それらの鳥瞰画像に基づいて車載カメラ10の駐車枠に対する角度を算出することとしても良い。
【0047】
以上に説明した第1実施例では、車両1の直進前と直進毎で撮影した基準図形(ここでは駐車枠)の画像を鳥瞰画像に変換し、それらの鳥瞰画像を解析することによって、車載カメラ10の車両1に対する取付角度を調整することができる。このため、例えば車両1の後方あるいは前方には車載カメラ10を搭載しているが、左右には搭載していない車両1であっても、車載カメラ10の取付角度を調整することができる。
【0048】
また、車両1を基準図形(駐車枠)の近くに移動させて車載カメラ10で基準図形の画像を撮影した後、車両1を直進させてもう一度、基準図形の画像を撮影すれば、車載カメラ10の車両1に対する取付角度を求めることができる。このため、車載カメラ10の取付角度を簡単に調整することが可能となる。
【0049】
加えて、始めに、基準図形(駐車枠)の近くで画像を撮影しているので、撮影画像中(あるいは鳥瞰画像中)での基準図形を容易に且つ確実に検出することができる。その後、車両1の直進中に基準図形をトラッキングしておけば、たとえ基準図形が遠くの位置で画像を撮影した場合でも、撮影画像中(あるいは鳥瞰画像中)での基準図形を誤検出することがない。
【0050】
C.第2実施例 :
上述した第1実施例では、1つの鳥瞰画像に基づいて車載カメラ10の基準図形(ここでは駐車枠)に対する角度を算出し、2つの鳥瞰画像に基づいて車両1の基準図形(駐車枠)に対する角度を検出するものとして説明した。しかし、複数の鳥瞰画像を用いて、車載カメラ10の基準図形に対する角度を算出し、2つよりも多くの鳥瞰画像を用いて、車両1の基準図形に対する角度を検出してもよい。
こうすれば、それぞれの角度を算出あるいは検出する際に混入する誤差の影響を小さくすることができるので、車載カメラ10の取付角度をより正確に調整することができる。
【0051】
図14には、第2実施例の制御装置20の大まかな内部構成が示されている。第2実施例の制御装置20は、
図2を用いて前述した第1実施例の制御装置20に対して、直進監視部27が追加されている点が異なるが、その他の点については同様である。以下では、第1実施例の制御装置20との相違点を中心として、第2実施例の制御装置20について説明する。
【0052】
直進監視部27は、車両1の車両情報センサー12に接続されており、車両情報センサー12から車両1の操舵角に関する情報を取得することによって、取付角度の検出中に車両1が直進状態にあるか否かを監視する。そして、取付角度の検出中に車両1が直進状態から逸脱した場合には、その旨を取付角度検出部26に出力する。ここで、前述したように取付角度検出部26とは、カメラ角度解析部24での解析結果と、車両角度解析部25での解析結果とを用いて、車両1に対する車載カメラ10の取付角度を検出する部である。第2実施例の取付角度検出部26は、取付角度の検出中に車両1が直進状態から逸脱した旨の情報を、取付角度検出部26から受け取ると、それまでの検出途中の結果を破棄して、始めから取付角度の検出を開始する。
また、直進監視部27は、取付角度の検出中に車両1が直進状態から逸脱したことを検出すると、取付角度の検出中は車両1の直進状態を維持する旨の警告を、スピーカー30などから出力する。
【0053】
このような直進監視部27を備える第2実施例の制御装置20は、車両1が直進状態にあるか否かを監視することができるので、複数の鳥瞰画像を用いて、車載カメラ10の基準図形に対する角度や、車両1の基準図形に対する角度を検出することが可能となる。以下では、第2実施例の制御装置20が、車載カメラ10の取付角度を調整するために実施する取付角度調整処理について説明する。
【0054】
図15、
図16、および
図17には、第2実施例の取付角度調整処理のフローチャートが示されている。この処理も、前述した第1実施例の取付角度調整処理と同様に、車両1を基準図形(ここでは駐車枠)の付近に移動させた後に開始される。
図示されるように、第2実施例の取付角度調整処理でも、先ず始めは、基準図形(駐車枠)の撮影画像を車載カメラ10から取得する(S200)。
【0055】
続いて、第2実施例の取付角度調整処理では、取得した撮影画像中の駐車枠を検出して、撮影画像中に予め設定しておいた所定範囲内に駐車枠が写っているか否かを判断する(S201)。
その結果、撮影画像中の所定範囲内に駐車枠が写っていない場合は(S201:no)、車両1を停車した位置が適切でない旨の警告を、スピーカー30やモニター11などから出力する(S202)。そして、取得した撮影画像を破棄した後(S203)、S200に戻って、もう一度、駐車枠を撮影した撮影画像を取得する。
【0056】
詳細には後述するが、第2実施例の取付角度調整処理では、予め設定されている制限距離内で車両1を移動させながら、駐車枠の撮影画像を取得する。従って、始めに車両1を駐車枠に対して正しい位置に停車していなければ、制限距離内で車両1を移動させている間に、駐車枠が車載カメラ10の撮影範囲から外れてしまう可能性がある。
そこで、始めに駐車枠の撮影画像を取得したら、その撮影画像中で適切な範囲内に駐車枠が写っているか否かを判断し(S201)、適切な範囲内に駐車枠が写っていない場合は(S201:no)、その旨を運転者に警告することとしている。
【0057】
これに対して、撮影画像中の適切な範囲内に駐車枠が写っていると判断した場合は(S201:yes)、車両1を直進させながら、新たな撮影画像の取得を継続する(S204)。
そして、車両情報センサー12から検出した車速が、許容速度以内か否かを判断して(S205)、許容速度を超えていた場合は(S205:no)、車速が高い旨の警告を、スピーカー30あるいはモニター11を用いて出力する(S206)。尚、車速が許容速度より高い場合に警告する理由については後述する。
また、車速が許容速度以内であった場合は(S205:yes)、運転者に対する警告は行わない。
【0058】
続いて、車両1が直進状態か否かを判断する(S207)。車両1が直進状態か否かは、車両情報センサー12から操舵角に関する情報を取得することによって判断することができる。
その結果、車両1が直進状態でなかった場合は(S207:no)、車両1の直進状態を保つ旨の警告を、スピーカー30あるいはモニター11を用いて出力する(S208)。そして、それまでに取得した全ての撮影画像を破棄した後(S209)、処理の先頭に戻って、駐車枠の撮影画像を取得する処理(S200)からやり直す。ここで、全ての撮影画像を破棄する(S209)のは、車両1の駐車枠に対する角度θysは、車両1が直進状態にあることを前提として検出しているので(
図13参照)、車両1が直進状態から逸脱すると、それまでの撮影画像は使えなくなるためである。
【0059】
一方、車両1が直進状態を保っていた場合は(S207:yes)、取得した撮影画像の枚数が、目標枚数(たとえば50枚)に達したか否かを判断する(S210)。
その結果、撮影画像の枚数が目標枚数に達していない場合は(S210:no)、車両1の移動距離が制限距離に達したか否かを判断する(S211)。これは、第1実施例で説明したように、駐車枠が車両1から遠くなると、駐車枠を精度良く検出することが困難となるためである。第2実施例の取付角度調整処理では、制限距離が2メートル〜3メートルの範囲から選択された所定の距離に設定されている。
そして、車両1の移動距離が制限距離に達していない場合は(S211:no)、S205に戻って、車速が許容速度以内か否かを判断した後、続く上述した一連の処理(S206〜S211)を繰り返す。
【0060】
このような処理を繰り返しているうちに、撮影画像の枚数が目標枚数に達する前に(S210:no)、車両1の移動距離が制限距離に達した場合には(S211:yes)、撮影画像の取得を中断する(
図16のS212)。
そして、車両1の移動距離が制限距離を超えた旨の警告を、スピーカー30あるいはモニター11などから出力し(S213)、更に、車両1を一旦停止させて進行方向を反転させる旨の指示を、運転者に対して出力する(S214)。ここで、撮影画像の取得を中断し、車両1の進行方向を反転させる旨を指示しているのは、車両1がそれ以上に駐車枠から離れると、駐車枠の検出精度が低下する虞が生じるためである。
尚、第2実施例では、車両1の停止と進行方向の反転とを運転者に対して指示するものとして説明する。しかし、運転者に対して指示するのではなく、制御装置20が車両1の各種アクチュエータに対して指示することによって、車両1の停止と進行方向の反転とを自動で実行してもよい。
【0061】
その後、進行方向を反転させて車両1が進行を開始したか否かを判断する(S215)。車両1が進行を開始したか否か、および進行方向が反転しているか否かは、車両情報センサー12から車両情報を取得することによって判断することができる。
その結果、進行方向を反転させて車両1が進行を開始していないと判断した場合には(S215:no)、同様の判断を繰り返すことによって、そのまま待機状態となる。その結果、反転した方向に進行を開始したと判断したら(S215:yes)、撮影画像の取得を再開する(S216)。その後は、
図15のS205に戻って、車速が許容速度以内か否かを判断した後、続く上述した一連の処理(S206〜S211)を繰り返す。
【0062】
ここで、第2実施例の取付角度調整処理では、車両1の車速が許容速度を超えると、車速が高い旨を警告する(S206)理由について説明する。
上述したように第2実施例の取付角度調整処理では、車両1を制限距離内で移動させながら、目標枚数の撮影画像を取得する。従って、車両1の車速が高いと、取得した撮影画像が目標枚数に達するまでの間に、何度も車両1を停止させて進行方向を反転させなければならなくなるので、目標枚数の撮影画像を取得するために要する時間が長くなってしまう。
また、車両1を停止させて、進行方向を反転させる回数が増えるほど、車両1が直進状態から逸脱する可能性が高くなる。そして、直進状態から逸脱した場合には、それまでに取得した撮影画像は破棄されてしまうので、目標枚数の撮影画像を取得するために要する時間は、更に長くなってしまう。
従って、車両1の移動速度は、あまり高くない方が望ましい。そこで、第2実施例の取付角度調整処理では、車両1の車速が許容速度を超えている場合には(S205:no)、車速が高い旨を警告する(S206)こととしている。
【0063】
尚、車両1の理想的な移動速度としては、車両1を1回往復させる間に、撮影画像の取得枚数が目標枚数に達する程度の速度が望ましい。そこで、このような理想的な移動速度を含む目標速度範囲を設定しておき、車両情報センサー12で検出した車速が目標速度範囲より高くなった場合だけでなく、目標速度範囲よりも低くなった場合にも、その旨を警告するようにしても良い。
【0064】
以上のようにして、車両1を往復動させながら撮影画像を取得した結果、取得した撮影画像が目標枚数に達したと判断したら(S210:yes)、取得した全ての撮影画像を鳥瞰画像に変換して、それぞれの鳥瞰画像中から駐車枠を検出する(
図17のS217)。
そして、それぞれの鳥瞰画像中から検出した駐車枠の座標値を平均することによって、平均駐車枠を算出する(S218)。平均駐車枠は、目標枚数の鳥瞰画像中から検出した駐車枠を平均して算出されているので、たとえ個々の鳥瞰画像から検出した駐車枠の位置にノイズが混入していた場合でも、ノイズの影響を除去することができる。その結果、駐車枠を精度良く検出することができる。
【0065】
こうして得られた平均駐車枠に対して、前述した第1実施例の取付角度調整処理と同様に、鳥瞰画像中の駐車枠を形成する各辺が交差する角度と、駐車枠を形成する任意の一辺が車載カメラ10の光軸に対してなす角度とを検出する(S219)。
続いて、前述した第1実施例の取付角度調整処理と同様に、検出した各辺の角度に基づいて、駐車枠に対する車載カメラ10の角度を算出する(S220)。
【0066】
続いて、S217で変換した各鳥瞰画像に基づいて、鳥瞰画像上での駐車枠の移動方向を検出することにより、駐車枠に対する車両1のヨウ方向の角度θys(
図13参照)を検出する(S221)。第2実施例の取付角度調整処理では、目標枚数の鳥瞰画像を用いて、鳥瞰画像上での駐車枠の移動方向を検出することができる。このため、個々の鳥瞰画像にノイズが混入していた場合でも、ノイズの影響を受けることなく、鳥瞰画像上での駐車枠の移動方向を精度良く検出することができ、その結果、駐車枠に対する車両1のヨウ方向の角度θysも精度良く検出することができる。
【0067】
その後の処理は、前述した第1実施例の取付角度調整処理と同様である。すなわち、S219で求めておいた車載カメラ10の駐車枠に対するヨウ方向の角度θyから、S221で求めた車両1の駐車枠に対するヨウ方向の角度θysを減算することにより、車載カメラ10の車両1に対するヨウ方向の取付角度θycを算出する(S222)。
その後、車載カメラ10の駐車枠に対するピッチ方向の角度θpおよびロール方向の角度θrと、車載カメラ10の車両1に対するヨウ方向の取付角度θycとに基づいて、車載カメラ10の車両1に対する取付角度を調整する(S223)。
【0068】
以上に説明した第2実施例の取付角度調整処理では、複数の撮影画像に基づいて車載カメラ10の取付角度を検出するので、ノイズの影響を受けることなく、確実に且つ精度良く取付角度を検出することができ、その結果、取付角度を正確に調整することができる。
また、複数の撮影画像を撮影するためには、車両1の直進状態を保ったまま、車両1を往復させればよいので、何ら作業が複雑になったり、煩雑になったりすることがなく、簡単に車載カメラ10の取付角度を調整することができる。
加えて、車両1が直進状態にあるか否かを監視して、直進状態から逸脱した場合には、その旨を警告する。このため、車両1が直進状態から逸脱したことに気付かないまま、車載カメラ10の取付角度の検出を継続して、取付角度を誤検出してしまうことも回避することができる。
【0069】
以上、各種の実施例について説明したが、本発明は上記の実施例に限られるものではなく、その要旨を逸脱しない範囲において種々の態様で実施することができる。
【0070】
例えば、上述した各種の実施例では、車両1を直進させることによって、車両1の駐車枠に対するヨウ方向の角度θysを求めるものとして説明した。しかし、車両1に搭載された操舵角センサーの情報を用いれば、車両1を必ずしも直進させなくても、駐車枠に対するヨウ方向の角度θysを求めることが可能である。
すなわち、車両1の操舵角および車速が分かれば、駐車枠に対する車両1の相対位置の変化およびヨウ方向の角度の変化を推定することができる。従って、仮に、車載カメラ10の車両1に対するヨウ方向の取付角度θycが設計値通りであれば、撮影画像を鳥瞰変換して得られた画像中での駐車枠の移動量および移動方向は、推定した移動量および移動方向と一致するはずである。逆に、一致していないのであれば、車載カメラ10の車両1に対するヨウ方向の取付角度θycが設計値からずれていることになる。
そこで、ヨウ方向の取付角度θycを様々な値に仮定して、鳥瞰変換した画像中での駐車枠の移動量および移動方向を算出する。そして、車両1の操舵角および車速から推定した値に最も近い値が得られる角度を、車載カメラ10の車両1に対するヨウ方向の取付角度θycとする。こうすれば、車両1を直進させない場合でも、車載カメラ10の取付角度を簡単に検出して調整することが可能となる。