以下、添付の図面を用いて、本実施形態にかかる周辺監視装置を適用した車両について説明する。
図1は、本実施形態にかかる車両の車室の一部が透視された状態が示された例示的な斜視図である。図2は、本実施形態にかかる車両の一例を示す平面図(俯瞰図)である。車両1は、例えば、内燃機関(エンジン)を駆動源とする自動車(内燃機関自動車)であっても良いし、電動機(モータ)を駆動源とする自動車(電気自動車、燃料電池自動車等)であっても良いし、それらの双方を駆動源とする自動車(ハイブリッド自動車)であっても良い。また、車両1は、種々の変速装置を搭載することができるし、内燃機関や電動機を駆動するのに必要な種々の装置(システム、部品等)を搭載することができる。また、車両1における車輪3の駆動に関わる装置の方式、個数、レイアウト等は、種々に設定することができる。
図1に示すように、本実施形態にかかる車両1の車体2は、乗員が乗車する車室2aを構成している。車室2a内には、乗員としての運転者の座席2bに臨む状態で、操舵部4、加速操作部5、制動操作部6、変速操作部7等が設けられている。本実施形態では、操舵部4は、ダッシュボード(インストルメントパネル)から突出したステアリングホイールである。加速操作部5は、運転者の足下に位置されたアクセルペダルである。制動操作部6は、運転者の足下に位置されたブレーキペダルである。変速操作部7は、センターコンソールから突出したシフトレバーである。
また、車室2a内には、表示装置8、音声出力装置9が設けられている。表示装置8は、例えば、LCD(Liquid Crystal Display)、OELD(Organic Electroluminescent Display)等である。音声出力装置9は、スピーカである。また、本実施形態では、表示装置8は、透明な操作入力部10(例えば、タッチパネル等)で覆われている。乗員等は、操作入力部10を介して表示装置8の表示画面に表示される映像(画像)を視認できる。また、乗員等は、表示装置8の表示画面に表示される映像(画像)に対応した位置を、手指等で触れたり押したり動かしたりして操作することで、操作入力部10を介して各種操作を入力できる。
また、表示装置8、音声出力装置9、操作入力部10等は、ダッシュボードにおいて、車両1の車幅方向(左右方向)の中央部に位置されたモニタ装置11に設けられている。モニタ装置11は、スイッチ、ダイヤル、ジョイスティック、押しボタン等の操作入力部を有しても良い。また、車室2a内の他の位置に他の音声出力装置を設けることも可能であり、モニタ装置11の音声出力装置9と他の音声出力装置から、音声を出力することが可能である。また、モニタ装置11は、ナビゲーションシステムやオーディオシステムと兼用されているが、周辺監視装置用のモニタ装置を、これらシステムとは別に設けても良い。
また、図1および図2に示すように、車両1は、四輪車(四輪自動車)であり、左右二つの前輪3Fと、左右二つの後輪3Rと、を有する。そして、車両1は、例えば、前輪3Fのタイヤ角が操舵部4(ステアリングホイール)の操作に対応して変化(転舵)する。
また、図2に示されるように、車両1の車体2には、複数(例えば、4つ)の撮像部16(16a〜16d)が設けられている。撮像部16は、例えば、CCD(Charge Coupled Device)やCIS(CMOS Image Sensor)等の撮像素子を内蔵するデジタルカメラである。撮像部16は、所定のフレームレートで撮像画像(動画像、フレームデータ)を出力できる。撮像部16は、広角レンズまたは魚眼レンズを有し、当該広角レンズまたは魚眼レンズを用いて、車両1の周囲を撮像する。本実施形態では、撮像部16は、水平方向には例えば140°〜190°の範囲(視野角)を撮像できる。また、撮像部16の光軸は下方(例えば、鉛直方向や斜め下方)に向けて設定可能である。よって、撮像部16は、車両1が移動可能な路面を含む車体2の周辺の外部の環境を撮像して得られた撮像画像を出力する。
撮像部16aは、車体2の前側の端部2c(例えば、フロントバンパー)に、車両1の前方を撮像可能に設けられている。撮像部16bは、車体2の左側の端部2d(例えば、左側のドアミラー2g)に、車両1の側方を撮像可能に設けられている。撮像部16cは、車体2の後側の端部2e(例えば、リヤトランクのドア2hの下方の壁部)に、車両1の後方を撮像可能に設けられている。撮像部16dは、車体2の右側の端部2f(例えば、右側のドアミラー2g)に、車両1の側方を撮像可能に設けられている。撮像部16の車載方法は、上述した車載方法に制限されるものではなく、車両1の前方、車両1の側方、車両1の後方を撮像可能に設置されれば良い。
図3は、本実施形態にかかる車両の周辺監視システムの一例を示すブロック図である。図3に示すように、車両1は、モニタ装置11、撮像部16等の他、ECU24、操舵システム13、ブレーキシステム18、舵角センサ19、アクセルセンサ20、シフトセンサ21、車輪速センサ22等が、電気通信回線としての車内ネットワーク23を介して電気的に接続されている。車内ネットワーク23は、CAN(Controller Area Network)等である。また、本実施形態では、車両1に2個の加速度センサ26(26a、26b)が設けられている。
操舵システム13は、電動パワーステアリングシステムやSBW(Steer By Wire)システム等である。操舵システム13は、アクチュエータ13aと、トルクセンサ13bとを有する。操舵システム13は、後述するECU(Electronic Control Unit)24等によって電気的に制御されて、アクチュエータ13aを動作させる。操舵システム13は、アクチュエータ13aによって操舵部4にトルク(アシストトルク)を付加して操舵力を補って、前輪3Fを操舵する。または、操舵システム13は、前輪と後輪が独立または関連して操舵されるように構成しても良い。トルクセンサ13bは、トルクをECU24に送信する。
ブレーキシステム18は、アクチュエータ18aと、ブレーキセンサ18bと、を有する。ブレーキシステム18は、アクチュエータ18aを介して、車輪3に制動力を与える。ブレーキセンサ18bは、制動操作部6の可動部としてのブレーキペダルの位置をECU24へ送信する。
舵角センサ19は、ステアリングホイール等の操舵部4の操舵量を検出するセンサである。舵角センサ19は、運転者による操舵部4の操舵量、および自動操舵時の各車輪3の操舵量等の舵角情報をECU24へ送信する。
アクセルセンサ20は、加速操作部5の可動部としてのアクセルペダルの位置を検出する変位センサである。アクセルセンサ20は、加速操作部5の位置をECU24へ送信する。
シフトセンサ21は、変速操作部7の可動部の位置を検出するセンサであり、変速操作部7の可動部の位置をシフト情報としてECU24へ送信する。
車輪速センサ22は、車輪3の回転量や単位時間当たりの回転数を検出するセンサである。車輪速センサ22は、検出した回転数を示す車輪速パルス数を車輪速情報としてECU24へ送信する。
ECU24は、車内ネットワーク23を通じて制御信号を送ることで、操舵システム13、ブレーキシステム18等を制御する。また、ECU24は、車内ネットワーク23を介して、トルクセンサ13b、ブレーキセンサ18b、舵角センサ19、アクセルセンサ20、シフトセンサ21、車輪速センサ22、加速度センサ26等の検出結果、操作入力部10等の操作信号を受け取る。
ECU24は、CPU(Central Processing Unit)24aと、ROM(Read Only Memory)24bと、RAM(Random Access Memory)24cと、表示制御部24dと、音声制御部24eと、SSD(Solid State Drive)24fとを備える。CPU24a、ROM24b、およびRAM24cは、同一パッケージ内に集積されていてもよい。
CPU24aは、表示装置8で表示される画像に対する画像処理、車両1の移動経路の演算等の各種の演算処理を実行する。CPU24aは、ROM24b等の不揮発性の記憶装置に記憶されたプログラムを読み出し、当該プログラムにしたがって各種の演算処理および制御を実行する。
ROM24bは、各種プログラムおよびプログラムの実行に必要なパラメータ等を記憶する。RAM24cは、CPU24aでの演算で用いられる各種のデータを一時的に記憶する。表示制御部24dは、ECU24での演算処理のうち、主として、撮像部16から撮像画像を取得してCPU24aへ出力する処理、CPU24aから表示用の画像を取得して表示装置8に表示させる処理等を実行する。音声制御部24eは、ECU24での演算処理のうち、音声出力装置9に出力する音声に対する処理を実行する。SSD24fは、書き換え可能な不揮発性の記憶部である。
CPU24a、ROM24b、RAM24c等は、同一パッケージ内に集積される。また、ECU24は、CPU24aに替えて、DSP(Digital Signal Processor)等の他の論理演算プロセッサや論理回路等が用いられる構成であっても良い。また、SSD24fに替えてHDD(Hard Disk Drive)が設けられても良いし、SSD24fやHDDは、ECU24とは別の回路基板に設けられても良い。
図4は、本実施形態にかかる車両が有するECU内に実現される周辺監視装置の機能構成を示すブロック図である。図3のECU24が含むCPU24aが、ROM24b(コンピュータ読み取り可能な記録媒体)内に格納されたソフトウェアを実行することで、図4に示される、取得部401、描画部402、補正部403、および表示処理部404を実現する。ソフトウェア(プログラム)は、コンピュータ読み取り可能な他の記録媒体を介して提供されても良い。
取得部401は、撮像部16から、当該撮像部16により車両1の周囲を撮像して得られる撮像画像を取得する。取得部401により取得される撮像画像は、撮像部16が有するレンズの特性によって、歪曲収差等の歪みを含む。特に、撮像部16が有するレンズが魚眼レンズや広角レンズである場合、取得部401により取得される撮像画像が含む歪みが増加する。
描画部402は、取得部401により取得される撮像画像に対して、進行線を描画する。本実施形態では、描画部402は、実空間における車両1が進行する経路を表す線を、撮像画像における座標系の進行線に変換して、当該撮像画像に描画する。具体的には、描画部402は、舵角センサ19から受信する舵角情報、アクセルセンサ20により検出されるアクセルペダルの位置、シフトセンサ21から受信するシフト情報等に基づいて、車両1が進行する経路を決定する。そして、描画部402は、決定した経路を表す線を、撮像画像における座標系の線である進行線に変換して、撮像画像に対して描画する。本実施形態では、描画部402は、撮像画像に対して、進行線を描画するが、撮像画像が、車両1が進行する経路を表す線(例えば、白線)を含む場合には、描画部402は、進行線を新たに描画しなくても良い。
補正部403は、撮像画像が含む進行線において、撮像部16が有するレンズの特性によって歪んだ部分である部分線を検出する。そして、補正部403は、撮像画像が含む進行線に対して、部分線内の2点を結ぶ線を直線化する補正処理を実行する。これにより、撮像部16が有するレンズの特性等によって生じる歪曲収差等の歪みを含む撮像画像を表示装置8に表示する場合に、撮像画像が含む進行線が複雑に歪んで表示されることを防止できるので、撮像画像から、車両1の経路を把握し易くすることができる。本実施形態では、補正部403は、撮像画像が含む進行線から、撮像部16が有するレンズの特性によって歪んだ部分を部分線として検出する処理を行っているが、進行線内に、撮像部16が有するレンズの特性によって歪んだ部分があるか否かに関わらず、進行内の一部の部分線に対して、当該部分線内の2点を結ぶ線を直線化する補正処理を実行しても良い。例えば、補正部403は、撮像画像が含む進行線において、予め設定された位置(撮像画像の端近傍など、撮像部16が有するレンズの特性によって歪みが生じ易い箇所)に存在する部分線内の2点を結ぶ線を直線化する補正処理を実行する。
本実施形態では、補正部403は、部分線内の2点を直線で結ぶ補正処理を実行するが、部分線内の2点を結ぶ線を直線化するものであれば、これに限定するものではない。例えば、補正部403は、部分線内の変曲点のうち、進行線が全体として膨らむ方向と同一方向に膨らむ変曲点を直線で結ぶ補正処理を実行しても良い。表示処理部404は、補正処理後の進行線を含む撮像画像を、表示装置8に表示させる。
次に、図4および図5を用いて、本実施形態にかかる車両1における撮像画像の表示処理の流れの一例について説明する。図5は、本実施形態にかかる車両における撮像画像の表示処理の流れの一例を示すフローチャートである。
取得部401は、撮像部16から、当該撮像部16に関するパラメータであるカメラパラメータ(例えば、車両1において撮像部16が設けられた位置、撮像部16から出力される撮像画像のフレームレート)を取得する(ステップS501)。また、取得部401は、撮像部16が有するレンズに関するパラメータであるレンズパラメータ(例えば、焦点距離、視野角、収差)を取得する(ステップS502)。また、取得部401は、車両1の諸元(例えば、車幅、車長、舵角情報、アクセルペダルの位置、シフト情報)を取得する(ステップS503)。さらに、取得部401は、撮像部16から、当該撮像部16の撮像により得られた撮像画像を取得する。
次いで、描画部402は、取得した撮像画像に対して、取得部401により取得したカメラパラメータ、レンズパラメータ、および車両1の諸元等に基づいて、進行線を描画する(ステップS504)。
図6は、本実施形態にかかる車両の経路の決定処理の一例を説明するための図である。図7は、本実施形態にかかる車両における進行線の描画処理の一例を説明するための図である。図6に示すように、描画部402は、取得部401により取得したカメラパラメータ、レンズパラメータ、および車両1の諸元等に基づいて、実空間における、車両1が横列駐車する駐車領域Aに対する車両1の経路lを決定する。次いで、描画部402は、決定した経路lを、車両1の端(例えば、車両1の後側の端部2e)から撮像部16によって当該車両1の周囲を撮像して得られる撮像画像G(図7参照)における座標系の進行線Lに変換する。そして、描画部402は、図7に示すように、経路lから変換した進行線Lを、撮像画像Gに対して描画する。本実施形態では、描画部402は、撮像画像Gに対して進行線Lを描画しているが、駐車領域Aに引かれた白線WLが撮像画像Gに含まれる場合には、進行線Lを描画しなくても良い。
図5に戻り、その後、補正部403は、撮像画像が含む進行線において、撮像部16のレンズの特性によって歪んだ部分線を検出する。本実施形態では、補正部403は、撮像画像が含む進行線において、異なる方向に歪む変曲点が2点以上存在する部分を部分線として検出する。即ち、補正部403は、撮像画像が含む進行線において、S字状に湾曲した部分を部分線として検出する。
図7に示すように、撮像画像Gには、撮像部16が有するレンズの特性によってS字状に湾曲した進行線Lおよび白線WLが含まれることがある。そこで、補正部403は、撮像画像Gが含む進行線Lおよび白線WLにおいて、異なる方向に膨らんだ部分線、言い換えると、S字状に湾曲した部分線を検出する。
次いで、補正部403は、撮像画像が含む進行線において、異なる方向に膨らむ変曲点を2点以上含むか否かを判断する(ステップS505)。撮像画像が含む進行線において、異なる方向に膨らむ変曲点が2点以上含まれないと判断した場合(ステップS505:No)、補正部403は、撮像画像が含む進行線に対して補正処理を行わない。そして、表示処理部404は、補正処理を行っていない進行線を含む撮像画像を、表示装置8に表示させる(ステップS506)。
一方、撮像画像が含む進行線において、異なる方向に膨らむ変曲点を2点以上含むと判断した場合(ステップS505:Yes)、補正部403は、撮像画像が含む進行線内の部分線を直線化する処理を実行する(ステップS507)。これにより、実空間の座標系とは異なる座標系で表される撮像画像を表示する場合に、撮像画像が含む進行線の歪みを軽減することができるので、撮像画像から、車両1の経路を把握し易くすることができる。本実施形態では、補正部403は、撮像画像が含む進行線から検出した部分線内の2つの点を直線で結ぶ補正処理を実行する。具体的には、補正部403は、部分線内の変曲点のうち、進行線が全体として膨らむ方向と同一方向に膨らむ変曲点を直線で結ぶ補正処理を実行する。すなわち、補正部403は、車両1が進行する経路が膨らむ方向と同一方向に膨らむ変曲点同士を直線で結ぶ。これにより、撮像部16が有するレンズ(本実施形態では、広角レンズまたは魚眼レンズ)の特性によって生じる進行線の歪みを軽減することができるので、撮像画像から、車両1の経路を把握し易くすることができる。
図8〜10は、本実施形態にかかる車両において進行線が含む歪みを直線化する補正処理の一例を示す図である。図8に示すように、補正部403は、撮像画像が含む進行線L(または白線WL)から部分線PLを検出した場合、部分線PL上に複数の点候補PK1,PK2,PK3,...,PKn(nは、1以上の整数)を設定する。以下、点候補PK1,PK2,PK3,...,PKnを区別する必要が無い場合には、点候補PKを記載する。また、図8に示すように、補正部403は、部分線PLの一端を開始点に設定する。さらに、図8に示すように、補正部403は、部分線PL上において、開始点の近傍の点を基準点に設定する。
次いで、図9に示すように、補正部403は、開始点と基準点とを結ぶ直線を基準として、開始点と各点候補PKを結ぶ直線がなす角度が最も大きい点候補PK(例えば、点候補PKn)を選択する。そして、図10に示すように、補正部403は、部分線PL内の開始点と当該選択した点候補PKnとを直線で結ぶ補正処理を、進行線Lに対して実行する。
このように、本実施形態にかかる車両1によれば、撮像部16が有するレンズの特性等によって生じる歪みを含む撮像画像を表示装置8に表示する場合に、撮像画像が含む進行線が複雑に歪んで表示されることを防止できるので、撮像画像から、車両1の経路を把握し易くすることができる。
なお、本実施形態の車両1が有するECU24で実行されるプログラムは、ROM24b等に予め組み込まれて提供される。本実施形態の車両1が有するECU24で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成しても良い。
さらに、本実施形態の車両1のECU24で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態の車両1のECU24で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
本実施形態の車両1のECU24で実行されるプログラムは、上述した各部(取得部401、描画部402、補正部403、および表示処理部404)を含むモジュール構成となっており、実際のハードウェアとしてはCPU24aが上記ROM24bからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、取得部401、描画部402、補正部403、および表示処理部404が主記憶装置上に生成されるようになっている。
以上、本発明の実施形態を例示したが、上記実施形態はあくまで一例であって、発明の範囲を限定することは意図していない。上記実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、組み合わせ、変更を行うことができる。また、各実施形態の構成や形状は、部分的に入れ替えて実施することも可能である。