以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
なお、以下に示す実施の形態では、本発明に係る画像処理装置によって交差点にいる人人物を正確に検出することを可能とし、交差点に進入する自動車で事故防止のための走行制御を実行させる安全運転支援システムに適用した場合を例に説明する。
(実施の形態1)
図1は、実施の形態1における安全運転支援システムが設置されている交差点の例を示す上方からの斜視図である。図1中の1は、交差点を撮像する撮像装置と一体に構成される画像処理装置である。画像処理装置1は、路側に設置されて所定の高さで道路側に伸びている支柱に取り付けられている。画像処理装置1と一体に構成されている撮像装置のレンズが交差点及びその近傍の範囲を俯瞰するように設置されており、画像処理装置1及び撮像装置は撮像装置のレンズ側を撮影波長帯を透過する素材とした筐体に収められている。図1中の2は路側機であり、画像処理装置1と同様に路側の支柱に取り付けられている。画像処理装置1と路側機2とは通信線により接続されている。
画像処理装置1は、路側機2を介して無線通信によりデータを送受信することが可能である。例えば、図1中には2台の自動車が示されている。各自動車の車載器は、例えばDSRC(Dedicated Short Range Communication)技術により路側機2との無線通信が可能に構成されている。
実施の形態1における安全運転支援システムでは、画像処理装置1が以下に説明する動作を行なうことにより各自動車での走行制御を実現する。画像処理装置1が、交差点を俯瞰するように撮像する撮像装置により得られる画像データから、交差点における自動車、自転車、歩行者、又は落下物等を検出する。そして、画像処理装置1は検出対象の情報を路側機2を介して各自動車に送信する。これにより各自動車では、路側機2を介して受信した情報に基づき、進行方向に歩行者の存在を検知した場合にはブレーキを自動的に作動させるなどの走行制御が実現可能となる。また、緩衝装置を作動させるなど、衝突事故が起こった場合でも衝突による衝撃を軽減させるための安全制御も実現可能となる。
このような安全運転支援システムを実現するために、画像処理装置1が画像データに基づき行なう画像処理、及び画像処理によって得られる各種情報について以下に説明する。
図2は、実施の形態1における安全運転支援システムを構成する画像処理装置1、路側機2、及び撮像装置3の内部構成を示すブロック図である。画像処理装置1は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等を利用して各構成部を制御する制御部10と、EEPROM(Electrically Erasable and Programmable Read Only Memory)、フラッシュメモリ等の不揮発性のメモリを利用した記憶部11と、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)等のメモリを利用した画像メモリ12と、撮像装置3からの画像信号を受け付ける画像取得部13と、路側機2との通信を実現する通信部14とを備える。
制御部10は、内蔵するROM(Read Only Memory)又は記憶部11に記憶されている制御プログラムを読み出して実行することにより各構成部を制御し、後述にて説明する画像処理を行なうようにしてある。記憶部11は制御部10に内蔵される構成としてもよい。制御部10の処理によって発生する各種データは、更に別途備えられる不揮発性のメモリ又は制御部10内蔵のメモリに一時的に記憶される。
画像メモリ12は、画像取得部13により取得された画像データを記憶する。制御部10は、画像取得部13にて画像データを取得した場合に画像メモリ12への書き込みを指示する。
画像メモリ12は、制御部10が内蔵するRAM(Random Access Memory)の一部の記憶領域であってもよい。また、記憶部11又は画像メモリ12は画像処理装置1の外部に設置され、画像処理装置1の制御部10が読み書きが可能なように、画像処理装置1と接続されている構成としてもよい。また、後述にて説明する各処理は、画像メモリ12に記憶されている画像データ、又はその複製に対して行なう。
画像取得部13は撮像装置から出力される画像信号を受け付ける。画像取得部13は、受け付けた画像信号から画像データを取り出し画像メモリ12に記憶する。詳細には、画像取得部13は制御部10からの指示に従い、受け付けている画像信号から画像を構成する画素毎の輝度値又は色差等を特定して画像データとし、画像メモリ12へ書き込む。
通信部14は、路側機2との間を接続する通信線を介した情報の送受信を実現する。制御部10は、画像処理によって得られた情報を通信部14にて路側機2へ送信し、通信部14にて路側機2からの情報を受信する。
路側機2は、CPU又はMPUを利用して各構成部を制御する制御部20と、画像処理装置1との通信を実現する通信部21と、各自動車に搭載されている車載器への通信を無線により実現する無線通信部22とを備える。
通信部21は画像処理装置1の通信部14と対応して情報の送受信が可能である。制御部20は、通信部21が画像処理装置1から送信された情報を受信した場合、通信部21からの通知を受けてこれを受信する。
無線通信部22は、DSRC技術の方式により無線通信が可能である。制御部20は、通信部22により画像処理装置1から受信した情報を無線通信部22により各自動車の車載器へ送信する。なお、無線通信部22は車載器へのDSRC方式による通信のみならず、遠隔地にある交通管制センター内の通信装置宛に情報を送信できるように構成してあってもよい。
撮像装置3は、赤外線レンズ及び遠赤外線撮像素子を備え、遠赤外線波長帯にて撮像を行なう遠赤外線カメラである。赤外線レンズは硫化亜鉛、カルコゲンガラス、ゲルマニウム、ジンクセレン等を原料として作製されている。遠赤外線撮像素子は、酸化バナジウム(VOx)、アモルファスシリコン、SOI(Silicon on Insulator)ダイオード、サーモパイル等を用いた非冷却型のものを用いる。遠赤外線撮像素子が検出可能な波長帯は例えば、8μm〜12μmである。フィルターを備えて他の波長の光を遮断するようにしてもよい。
撮像装置3の遠赤外線撮像素子は、温度差を輝度差に変換して出力する。撮像装置3の遠赤外線撮像素子の画素数は例えば320×240であり、1秒間に約30フレームのレートで生成される画像の画像信号を出力する。
次に、上述のように構成される画像処理装置1の制御部10が、撮像装置3から出力される画像信号から取得した画像データに対して行なう画像処理について詳細を説明する。
制御部10は、画像取得部13にて取得した画像データから人物を検出する。具体的には制御部10は画像データから人物の領域を抽出する。画像データに基づく人物の検出方法としては従来より種々の技術がある。実施の形態1では背景差分の方法を用いる構成とするが、一又は複数フレーム分前の画像データとの差分をとるフレーム差分の方法を用いてもよいし、オプティカルフローと呼ばれる方法を用いてもよい。
図3は、実施の形態1における画像処理装置1の記憶部11に予め記憶されている背景の画像データの内容例を示す説明図である。なお、図3に示すような遠赤外線用の背景の画像データが記憶部11に記憶してある。
図3に示すように、背景の画像データには固定物である路面が写っている。撮像装置3から取得される画像データと背景の画像データとの差分を算出することにより、人物領域候補が抽出される。
なお、画像処理装置1の設置位置、設置高さ、及び撮像装置3の俯角、画角に応じて撮像範囲は決定される。実施の形態1の場合、撮像装置3は交差点を俯瞰するように設置される。したがって画像データ内における位置、特に垂直方向の位置と実空間の交差点における位置とに対応関係がある。図3中の破線で表わされる水平線は夫々、画像データ内における垂直方向の位置に対応する実空間における画像処理装置1からの距離を示している。例えば、図3中の一番下方にある破線上に写る路面の一部は、画像処理装置1が設置される位置から20mの距離に位置する。また、中央にある破線上に写る路面の一部は、画像処理装置1が設置される位置から50mの距離に位置する。一番上方にある破線上に写る路面の一部は、画像処理装置1が設置される位置から100mの距離に位置する。
そして、人物の大きさはある程度決まっており、概ね縦×横×高さが80cm×80cm×2m(身長)の体積以内に収まるはずである。撮像装置3によって人物が撮像された場合、画像データ内の人物領域の大きさは、画像処理装置1から遠いほど小さく、近いほど大きくなる。そして、人物領域の画像データ中における大きさは、撮像装置3から人物までの実空間における距離、及び撮像装置の画角に応じて決まる。
したがって、画像処理装置1から所定の距離に位置する人物領域の画像データ内に占めるべき縦横の大きさを記憶部11に記憶しておく。人物は上述のように80cm×80cm×2m(身長)の体積以内に収まる。画像処理装置1から50mの位置にいる人物が撮像装置3によって撮像された場合、人物の領域が占めるべき領域の大きさは、誤差を考慮して水平方向の大きさ(画素数)が15ピクセル、垂直方向の大きさが30ピクセル以内とする。
なお、人物領域として抽出した領域の画像データ内における位置が、記憶部11に記憶されているサイズ情報に対応する所定の位置(例えば、50mの距離の位置)とは異なる位置である場合、制御部10は、差異に応じて人物領域が占めるべき水平方向及び垂直方向の大きさを算出する。例えば画像処理装置1から100mの距離に対応する位置に、人物領域が位置する場合、所定の50mの距離から2倍の距離であるので、占めるべき大きさは略半分となる。
このように、画像データ中の人物領域が占めるべき縦横の大きさを記憶部11に予め記憶しておく。そして、制御部10は人物領域として抽出した領域の縦横の大きさが、人物の領域が占めるべき領域の大きさの条件に合っているか否かに基づき、抽出した領域が人物領域として妥当か否かを判定する。例えば制御部10は、人物領域として抽出した領域が画像処理装置1から50mの距離に相当する画像データ中の位置にある場合、抽出した領域の水平方向の大きさ(画素数)が45ピクセルであって、垂直方向の大きさが10ピクセルであったときには人物の領域が占めるべき領域の大きさと合わないので妥当でないと判定する。
そして制御部10は、抽出した領域が人物領域として妥当でないということは、人物領域として抽出した領域が反射成分を含んで縦方向に大きくなっていると判定する。
画像処理装置1の制御部10は、上述のように記憶部11に記憶されている情報を用いて以下に示す処理を行なう。図4は、実施の形態1における画像処理装置1の制御部10が行なう画像処理の手順の一例を示すフローチャートである。
制御部10は、画像取得部13へ指示信号を出力することにより、撮像装置3から出力される画像信号に基づく画像データを取得する(ステップS1)。なお、ステップS1における画像データの取得タイミングは任意である。例えば1秒等の一定時間毎に行なう構成としてもよいし、路側機2で車載器からの情報を受信した場合など、自動車が交差点への進入を検知した場合に行なう構成としてもよい。
制御部10は、撮像装置3から出力される画像信号からステップS1で画像取得部13が取得した画像データと、記憶部11に記憶してある遠赤外線用の背景の画像データとの差分データを算出する(ステップS2)。算出された差分データは、画像メモリ12又は制御部10内蔵メモリに一時的に記憶される。これにより、遠赤外線波長帯にて撮像する撮像装置3から得られる画像データから、背景の画像データには写っていない検出対象、即ち人物が存在する領域の候補が抽出される。
制御部10は差分データを例えば以下のようにして算出する。制御部10は画素毎に、背景の画像データと取得した画像データとの輝度値の差分を算出し、差分が所定値以上である画素と、差分が所定値未満である画素とに区別する。制御部10は、画像データを構成する画素毎の、差分が所定値以上であるか否かの真偽を示す1ビット情報の二次元配列を、差分データとして算出する。なお、複数の連続する画素で真である場合以外、即ち、真である画素が連続しない場合は当該画素の1ビット情報を偽としてもよい。ノイズにより差分が所定値以上となった画素を除去するためである。
更に具体的には、制御部10は取得した画像データの画素毎に、以下に示す式1に基づく演算を行なう。
ただし、式1におけるf(x,y)は、取得した画像データを構成する水平方向の位置x及び垂直方向の位置yで特定される各画素の1ビット情報である。なお、水平方向の位置xは画像データの左端からの画素数であり、垂直方向のyは画像データの上端からの画素数とする。Ix,yは取得した画像データにおけるx、yで特定される画素毎の輝度値である。I´x,yは、背景の画像データにおけるx、yで特定される画素毎の輝度値である。thresholdは任意の閾値である。
なお、式1に示すように差分データを算出する際、取得した画像データ及び背景の画像データ夫々にエッジ抽出処理を施すなどした後の輝度値に基づいて算出してもよい。
そして制御部10は、ステップS2で算出された遠赤外線画像データの差分位置、即ち人物領域候補の位置に基づき、画像処理装置1から検出対象の人物までの距離を算出する(ステップS3)。詳細には、制御部10は、ステップS2で算出された差分データの連続領域に外接する矩形を特定し、特定した矩形を抽出された人物領域候補とする。そして、制御部10は人物領域候補の下端の画像データ中における垂直方向の座標を特定する。人物領域の下端は人物の路面との接地点に対応する可能性が高いので、接地点に対応する座標を特定することにより、画像処理装置1から人物までの実空間における距離を算出することができるからである。差分データにおける差分値が所定値以上である画素の連続領域が複数ある場合には夫々の連続領域を人物領域候補とし、人物領域候補毎に距離を算出する。特定される下端の座標と実空間における距離との対応は、図3に示したように予め記憶してあるものに基づいて求める。これにより、演算処理が容易となる。
次に制御部10は、ステップS3で算出した実空間における画像処理装置1から人物までの距離と、人物領域候補が画像データ中に占める領域の大きさとに基づき、検出対象領域候補、即ち人物領域候補が画像データ中に占める領域の大きさは妥当か否かを判定する(ステップS4)。これにより、ステップS2の差分データの算出により抽出された人物領域候補が、反射成分を含んでいるか否かが判定される。
詳細には、制御部10は人物領域候補の水平方向及び垂直方向の画素数(ピクセル)が、人物領域が占めるべき大きさに対応するか否かを判定する。例えば、ステップS3で算出した距離が50mであった場合、画像データ中において人物領域が占めるべき大きさは水平方向15ピクセル、垂直方向30ピクセルであった。誤差を夫々プラスマイナス2ピクセルとすると、人物領域候補の水平方向の大きさ(画素数)が13ピクセル、垂直方向の大きさが25ピクセルであった場合、制御部10は、人物領域の大きさとして妥当であると判定する。制御部10は、外接矩形の水平方向の大きさが14ピクセル、垂直方向の大きさが36ピクセルであった場合は、人物領域の大きさとして妥当でないと判定する。
制御部10はステップS4において上述のように、人物領域候補の大きさが人物領域が占めるべき領域の大きさとして妥当か否かを判定した。したがって、差分データの算出により抽出された領域が人物以外の乗用車、自転車等の車両、又は落下物の領域であった場合も、ステップS4で妥当でないと判定される。実施の形態1では人物を特定の検出対象としている。したがってステップS4における判定では、制御部10は背景差分の算出により抽出された人物領域候補の水平方向の大きさ又は縦横比に基づき、人物領域である可能性が高いか否かを判断する。そして制御部10は、人物領域である可能性が高い場合のみに、人物領域の大きさとして妥当でない場合の処理を行なう。例えば、制御部10はステップS3で算出した距離が50mであった場合に、抽出された人物領域候補の水平方向の大きさが20ピクセル以上であるときには人物領域である可能性は低いと判断する。制御部10は、水平方向の大きさが15ピクセル以下であっても縦横比が1:1であるときには人物領域である可能性は低いと判断する。
そして制御部10は、ステップS4で妥当であると判定した場合(S4:YES)、ステップS3で求めた距離を含む、検出対象である人物の情報を通信部14により送信し(ステップS6)、処理を終了する。
なお、ステップS4で制御部10が、妥当ではないと判定できるものの人物領域である可能性が低いと判断した場合、ステップS6では以下のような処理を行なってもよい。制御部10は、抽出された領域の大きさ又は縦横比から検出対象の種類、例えば乗用車、自転車等を識別し、その種類の情報を検出対象の情報に含めて送信してもよい。
制御部10は、ステップS4で妥当でないと判定した場合(S4:NO)、抽出された人物領域候補が反射成分を含んでいる可能性が高いので反射成分を除去する処理を行なう(ステップS5)。そして制御部10は、反射成分除去後に改めて算出し直された距離を含む、検出された人物の情報を通信部14により送信し(S6)、処理を終了する。ステップS5における反射成分除去の処理及び改めて距離が算出し直される処理については後述にて詳細を説明する。
制御部10は、抽出された人物領域候補が画像データ中に複数存在する場合、夫々の候補に対しステップS3からステップS6までの処理を行なう。
次に、ステップS5における反射成分除去の処理の詳細を説明する。図5は、実施の形態1における画像処理装置1の制御部10が行なう反射成分除去処理の手順の一例を示すフローチャートである。
制御部10は、人物領域候補と同一範囲を画像データから切り出し、当該範囲でエッジ抽出処理を行なう(ステップS501)。制御部10は、例えばPrewittフィルタを用いてエッジ抽出処理を行なうが、勿論他の方法を用いる構成としてもよい。エッジ抽出処理により、エッジ部分(輪郭に相当する部分)の画素の輝度は高くなり、エッジ部分ではない画素の輝度は低くなる。
制御部10は、画像データにおける人物領域候補の上端位置に基づき、画像処理装置1から検出対象の人物までの距離を再び算出する(ステップS502)。上述の図4のフローチャートにおいて制御部10は、画像データにおいて抽出された人物領域候補の下端位置に基づいて距離を算出した。しかしながら、本処理手順は、抽出された人物領域には反射成分が含まれており、抽出された人物領域の下端は人物と路面との接地点に対応していない可能性が高いので、上端に基づいて距離を算出する。
ただし、交差点における異なる位置に人物が立っている様子を撮像して画像データを取得した場合、画像データにおける人物領域夫々の上端は人物の現実の身長の違いによって同じ垂直方向の座標に位置するときがある。そこで、撮像装置3の俯角を適宜調整して設置しておく。例えば、画像データの垂直方向に対応する方向に50m以上現実に離れて立っている人物の上端が画像データ中で一致しないようにしてあることが望ましい。詳細には、俯角は15度から25度までの範囲となるように調整してある。
次に制御部10は、ステップS502で算出した距離に基づき、画像データにおける境界の探索を開始する垂直方向の座標を特定する(ステップS503)。制御部10は、特定した座標から下方へ向けて探索を開始するにあたり、後述する条件を満たす座標の数を計数するためのカウンタをゼロにリセットする。
ここで、ステップS503の垂直方向の座標の特定処理の詳細を図6を参照して説明する。
図6は、制御部10が人物領域候補内で、境界探索開始座標を特定する処理について示す説明図である。図6に示される矩形は、制御部10が画像データから人物領域候補と同一範囲を切り出し、切り出し範囲にエッジ抽出処理を行なった場合の例を模式的に示している。斜線によるハッチングの密度が濃いほど輝度が低く、白い部分は輝度が高い部分を示している。これにより、人物の輪郭が輝度が高い部分で示されていることが判る。更に、切り出し範囲の下部には人物の反射成分と考えられる輝度の高い部分が含まれていることが判る。人間の目で見た場合には下部は反射成分であることを容易に判別することが可能であるが、制御部10が反射成分を判別することは難しい。
制御部10は、切り出し範囲の上端の画像データ中における位置に基づいて上述のステップS501で実空間における画像処理装置1から人物までの距離を算出し直した。制御部10は、算出し直した距離に基づき、当該距離に人物がいる場合に撮像データ中での人物領域が占めるべき大きさを求める。具体的には、距離が50mである場合の人物領域が占めるべき大きさが水平方向に15ピクセル、垂直方向に30ピクセルであった。算出し直した距離が100mであった場合には例えば、水平方向に7.5ピクセル、垂直方向に15ピクセルとなるべきと算出できる。
制御部10は、切り出し範囲の上端から人物領域が占めるべき垂直方向の大きさの分だけ下方の部分を、人物自体の領域と反射成分の領域との境界がある可能性が高い部分と認識する。ここで、画像ノイズにより人物領域の上端が一部欠落する場合、又は人間の身長差などを考慮し、制御部10は、当該部分よりも垂直方向上方に所定量オフセットした座標Y(画像データの下端からの画素数)を特定し、境界の探索を開始する座標(図中の探索開始座標)とする。前記オフセット量は固定値でもよいが、例えば抽出した人物領域の垂直方向の大きさに応じた割合で決定する構成としてもよい。
図5のフローチャートに戻り説明を続ける。次に制御部10は、切り出した範囲内でステップS503で特定した座標から更に下方へ向けて、座標毎に同一水平位置の各画素のエッジ強度に基づき指標値を算出する(ステップS504)。詳細には、制御部10は、切り出した範囲内における水平位置が同一の各画素(同一ライン上の各画素)のエッジ抽出処理後の輝度を取り出す。そして制御部10は、取り出した輝度の内から上位数個(例えば、3つ)の輝度を選択し、選択した輝度の平均値を算出して指標値とする。指標値はライン毎に、エッジが鮮明なほど、そしてエッジが多いほど高い値となる。
次に制御部10は、ステップS504で算出したエッジ強度の指標値は、境界であると判定するための条件を満たすか否かを判断する(ステップS505)。詳細には、制御部10は、エッジ強度の指標値が垂直方向に1画素分上方、即ち一つ上のラインにおいて算出された指標値よりも減少しており、且つ減少幅が所定値よりも小さい場合に条件を満たすと判断する。
更に具体的には、制御部10は各ラインの指標値に対し、以下に示す式2に基づく演算を行なう。
ただし、式2におけるAve(Iy=n-1)は、一つ上のラインにおいて算出された指標値を示し、Ave(Iy=n)は現在のラインにおいて算出した指標値である。yは座標、nは任意の数を示す。thresholdは任意の閾値である。
制御部10は、式2に示した条件を満たさないと判断した場合(S505:NO)、座標を垂直方向に下方へ移し、カウンタをゼロにリセットし(ステップS506)、次のラインについての判断を行なうために処理をステップS504へ戻す。
制御部10は、式2に示した条件を満たすと判断した場合(S505:YES)、座標を垂直方向に下方へ移し、条件を満たす垂直方向の座標(ライン)の数を計数するためのカウンタを1加算する(ステップS507)。そして制御部10は、処理を次へ進める。
次に制御部10は、計数されたカウンタはN(例えば、2)以上であるか否かを判定する(ステップS508)。制御部10は、カウンタがN未満であると判断した場合(S508:NO)、処理をステップS504へ戻して次のラインについての判断を行なう。ただし、前記の値Nは任意の閾値である。
制御部10は、カウンタがN以上であると判断した場合(S508:YES)、カウンタの増加が開始された垂直方向の座標、即ち現在の垂直方向の座標よりもNライン分上の座標を境界と特定する(ステップS509)。即ち、制御部10は、ライン毎のエッジ強度を示す指標値は減少はしているものの減少幅がNライン以上連続して所定値以下となった場合に、エッジ(輪郭)が最も曖昧なラインであると判断する。人物自体の領域と反射成分の領域との境界ではエッジが曖昧となることを利用し、エッジが最も曖昧なラインを境界とするためである。
そして制御部10は、切り出した範囲におけるステップS509で境界と特定したラインよりも下方は反射成分の領域であるから除去し(ステップS510)、図4のフローチャートに示したステップS6へ処理を戻す。
図5のフローチャートに示した処理手順の最後に、境界としたラインの画像データにおける垂直方向の座標を人物と路面との接地点に対応する位置であるとして、制御部10が改めて実空間における画像処理装置1から人物までの距離を算出するようにしてもよい。
図5のフローチャートに示した処理手順では、エッジ強度の弱まり方が鈍るラインを境界と特定する処理を行なった。これは、人物自体の領域と反射成分の領域の境界では、エッジ強度の指標値に以下の傾向があるという所見を得ているためである。具体的には昼間である場合、反射面が乱れている場合など、反射強度が弱い場合又は反射がないときには、境界付近でライン毎のエッジ強度の減少が停止する傾向がある。一方、夜間である場合、反射面が滑らかな場合など、反射強度が強いときには境界付近でライン毎のエッジ強度が増加に転じる傾向がある。したがって、ライン毎のエッジ強度の垂直方向に対する分布の分布曲線における変曲点、極小値に対応する点などの特徴点に相当するラインを境界とする。
更に、ステップS503の処理により、実空間における人物までの距離に基づいて境界探索開始座標を特定するのは、人物自体の領域内でもエッジ強度が弱まり、条件を満たすラインが特定される可能性があるのでこれを有効に回避するためである。
このように、ライン毎のエッジ強度の大きさを示す指標値を算出し、連続するラインで指標値の比較を行なうのみで上述の特徴点を求めることができるので、エッジ強度のピークの有無に依存せず、安定的に境界を特定することが可能となる。なお、反射がない場合であっても同様の処理によって人物自体の領域と路面の領域との境界を特定することができる。
次に、画像処理装置1の制御部10による処理を具体例を示して説明する。図7は、実施の形態1における画像処理装置1の制御部10が行なう画像処理結果の具体例を示す説明図である。図7(a)は、撮像装置3から画像取得部13にて取得される画像データ、即ち遠赤外線画像データの内容例を模式的に示す。
図7(a)の遠赤外線画像データでは斜線によるハッチングが施された領域に示すように路面が写っている。画像データにおける中央右下付近には他の路面よりも輝度値が高い白抜きで示された領域がある。この輝度値が高い領域は人物領域であるとする。ただし、破線で囲まれる範囲は、路面が濡れている場合の路面からの反射成分である。
この場合、制御部10が図4のフローチャートに示した処理を行ない、差分データを算出することにより、図中白抜きで示された領域が人物領域候補として抽出される。制御部10は、抽出した人物領域候補の下端の画像データにおける垂直方向の位置に基づいて人物までの距離を算出する。このとき、下端は反射成分を含んだ下端であるために正確な値ではない。算出した距離に基づいて人物領域が占めるべき大きさを求め、差分データが占める領域の大きさは妥当か否かを判定する。図7(a)に示す例の場合、反射成分の分だけ領域が縦長となっている。したがって、制御部10により妥当でないと判定される。
そこで制御部10は、人物領域候補と同一の範囲を画像データから切り出して反射成分を除去する処理を行なう。図7(b)は、図7(a)から抽出される人物領域候補と同一範囲の画像データに対してエッジ処理を行なった後の画像の拡大図である。白黒の階調は輝度の高低を示し、白い部分は輝度が高く、黒い部分は輝度が低いことを示す。人間の目で見た場合、左方向へ向かって歩行中の人物の輪郭を上半分に認識することが可能である。
制御部10は、切り出された範囲の上端の画像データにおける位置から距離を算出し直す。そして制御部10は、算出し直した距離に人物がいる場合の人物領域が占めるべき領域の垂直方向の大きさから境界である可能性が高い探索開始座標を特定する。そして制御部10は、ライン毎に上位3つの輝度値の平均値を指標値として算出する。制御部10は、指標値が減少し減少幅が所定値未満となったラインを境界として特定する。
図7(c)は、図7(b)に示す人物領域候補に対し、図5のフローチャートに示した処理手順を行なって得られるエッジ強度の垂直方向の分布を示すグラフ図である。横軸にエッジ強度(指標値)を示し、縦軸に人物領域候補の範囲における垂直方向の座標を示す。また縦軸は、図7(b)に示す人物領域候補と対応している。なお、図7(c)では説明を明確とするために、人物領域候補の範囲の垂直方向全体に対するエッジ強度の分布を示しているが、制御部10は探索開始座標から下方、指標値が条件を満たすと判断するまでのみ指標値を算出する。
図7(c)に示すように、人物自体の領域ではエッジ強度は比較的高く、境界へ向けてエッジ強度が減少している。そして、境界ライン付近でエッジ強度の減少の仕方が鈍っている。図7(c)中の黒丸は、制御部10が特定した境界に対応する特徴点である。図7(c)では黒丸の特徴点よりも垂直方向に下方の部分ではピークが不明確である。しかしながら、図5のフローチャートに示したように制御部10は、指標値が条件を満たす特徴点を境界とするのでピークが不明でも有効に境界を特定することが可能である。
このように、検出対象である人物が写っている人物領域候補として抽出された領域の画像データにおける位置から求められる、実空間における距離の情報に基づき、人物領域として妥当か否かを判定して反射成分が含まれるか否かを判定し、反射成分が含まれている場合であっても、距離の情報とエッジ強度の分布の傾向とから精度よく境界を特定することができる。
なお制御部10は、境界を特定する際に、人物自体の下端であるべき座標を特定してから、エッジ強度の分布に基づいて境界を特定する構成としたことにより、境界を誤って特定することを回避して精度よく境界を特定することができる。これにより、効果的に画像データに写る反射成分を除去することができる点、優れた効果を奏する。
(変形例)
上述の実施の形態1における画像処理装置1は、人物領域候補に反射成分が含まれているか否かの判定の際、画像データにおける人物領域候補の位置で人物領域が占めるべき領域の大きさを求め、求めた大きさと実際に抽出された人物領域候補の大きさとを比較した。本発明では、抽出された人物領域候補の大きさから、実空間における人物の大きさを算出し、算出した大きさが人物の大きさとして妥当か否かによって反射成分を含むか否かを判定してもよい。
図8は、実施の形態1の変形例における画像処理装置1の制御部10が行なう画像処理の手順の一例を示すフローチャートである。以下に示す処理手順の内、図4のフローチャートに示した処理手順と共通する手順については同一のステップ番号を付して詳細な説明を省略する。
制御部10は、画像処理装置1から検出対象の人物までの実空間における距離を算出し(S3)、算出した距離に基づいて検出対象の人物の実サイズを算出する(ステップS7)。そして制御部10は、式3により算出した実サイズが人物の大きさとして妥当であるか否かを判定する(ステップS8)。例えば制御部10は、算出した実サイズが1.7mである場合には人物の大きさとして妥当であると判定するが、2.5mである場合には、妥当でないと判定する。
制御部10は、実サイズが妥当であると判定した場合には(S8:YES)、検出対象である人物の情報を送信し(S6)、処理を終了する。一方制御部10は、実サイズが妥当でないと判定した場合には(S8:NO)、反射成分を除去し(S5)、検出対象である人物の情報を送信し(S6)、処理を終了する。
ステップS7における人物の実サイズの算出について詳細を説明する。制御部10は、画像データにおいて、ステップS3の詳細処理にて抽出された人物領域候補の垂直方向の高さHo を画素数単位で求める。そして制御部10は、ステップS3で算出された距離Dと、求めた高さHo と、他の固定値とに基づいて人物の実空間における大きさ(実サイズ)Tを以下に示す式3に基づき算出する。
なお、式3におけるHc は、画像データの垂直方向の画素数である。θv は撮像装置3の画角である。
図9は、実施の形態1の変形例における画像処理装置1の制御部10が、人物の実空間における大きさを算出する原理を模式的に示す説明図である。図9(a)は、撮像装置3が設置される画像処理装置1の位置と、画像処理装置1による検出対象となる交差点中の人物の位置との関係を示している。図9(b)は、画像処理装置1と人物とが図9(a)に示される位置関係にある場合に撮像装置によって撮像される画像データの内容例を模式的に示している。
なお、図9(a)に示す人の画像処理装置1からの距離Dは、上述の実施の形態1に示したように予め記憶部11に記憶してある情報から求めた。具体的には、制御部10は人に相当する領域として抽出された領域の下端の画像データにおける垂直方向の位置Yに対応付けて記憶してある実空間における画像処理装置1からの距離を求める。
ただし、画像データにおける垂直方向の位置Yと、撮像装置3を備える画像処理装置1からの距離Dとの関係は、図9(a)及び図9(b)に示した画角θv 、画像データの垂直方向の画素数Hc に加え、撮像装置3を備える画像処理装置1が設置される高さh、撮像装置3の俯角φc を含む以下の式4に示す関係式により成立する。
式4を記憶部11に記憶しておくことにより、制御部10は検出対象領域(外接矩形)を特定した場合、領域の下端の画像データ中における垂直方向の座標Yを特定し、式4に基づいて実空間における、画像処理装置1から検出対象までの距離Dを算出してもよい。
なお、実施の形態1では式4に基づいて予め算出しておいた座標Yと、距離Dとの対応を記憶部11に記憶しておき、特定される座標Yに対応する距離Dを記憶部11から読み出すことによって実空間における所定位置からの距離を求めた。これにより、演算によらずに簡易に実空間における検出対象の位置(撮像装置3からの距離)を特定することができる。したがって、自動車へ検出対象の人物の情報として交差点内での実空間での位置情報を送信することができ、安全運転支援のために高精度な走行制御を実現することを可能とする。
(実施の形態2)
図10は、実施の形態2における安全運転支援システムが設置されている車両の例を模式的に示す模式図である。図10中の4,5は遠赤外線にて撮像を行なう第1撮像装置及び第2撮像装置である。図10中の6は、画像処理装置であって車載LAN7を介して自動車の走行制御の処理を行なう走行制御装置8に接続されている。また、第1及び第3撮像装置4,5は、信号線9を介して画像処理装置6に接続されている。
第1撮像装置4は自動車の先頭部の左側に前方へ向けて並設されている。第2撮像装置5は、自動車の先頭部の右側に前方へ向けて設置されている。第1及び第2撮像装置4,5は、略同一範囲を撮像範囲とし、同一画角での撮像が可能なように設置方向を調整してある。そして第1及び第2撮像装置4,5はいずれも、通信線9を介して画像処理装置6へ画像信号を出力することが可能に構成されている。
画像処理装置6は、第1及び第2撮像装置4,5から出力される画像信号から画像データを取得し、取得した画像データに基づいて人物を検出した場合、検出した事実と自動車から人物までの距離とを走行制御装置8へ車載LAN7を介して送信する。走行制御装置8は、人物が検出された事実を受信した場合、人物までの距離に基づき、自動的にブレーキングを行なうべく指示する、又は車内外の緩衝装置を起動させる等の制御を行なうことが可能である。
図11は、実施の形態2における安全運転支援システムを構成する第1及び第2撮像装置4,5及び画像処理装置6の内部構成を示すブロック図である。第1及び第2撮像装置4,5の構成の詳細は、実施の形態1における撮像装置3と同様であるので説明を省略する。
画像処理装置6は、制御部60と、記憶部61と、画像メモリ62と、第1画像取得部63及び第2画像取得部64と、車載LAN7を介した走行制御装置への情報の送信を実現する通信部65とを備える。制御部60、記憶部61、画像メモリ62の詳細は、実施の形態1における画像処理装置1の制御部10、記憶部11、画像メモリ12と同様であるので詳細な説明を省略する。
第1画像取得部63及び第2画像取得部64は夫々、実施の形態1における画像処理装置1の画像取得部13と同様に、受け付けた画像信号から画像データを取り出して画像メモリ62に記憶する。詳細には、夫々制御部60からの指示に従い、受け付けている画像信号から画像を構成する画素毎の輝度値又は色差等を特定して画像データとし、画像メモリ62へ書き込む。
通信部65は、CAN(Controller Area Network)、LIN(Local Interconnect Network)、FlexRay(登録商標)等の車載LANの規格に基づき情報を送受信する。制御部60は、通信部65により検出した人物の情報を走行制御装置へ送信する。
上述のように構成される実施の形態2における画像処理装置6は、第1及び第2撮像装置4,5から取得する画像データに対し、実施の形態1で示した画像処理手順と同様の処理を行なう。即ち、第1及び第2画像取得部63,64により画像データを同時的に取得して夫々差分データを算出して人物領域候補を抽出する。ただし、自動車に搭載される第1及び第2撮像装置4,5では、背景は走行中に随時変化するので背景差分ではなくフレーム差分を算出するようにすることが望ましい。
そして、実施の形態2における画像処理装置6の制御部60は、第1撮像装置4と離れて設置された第2撮像装置5から取得される画像データ夫々から抽出された人物領域の、画像データにおける位置の差異に基づき、自動車の車体の先頭部から検出対象である人物までの距離を以下に説明する処理により算出する。
第2撮像装置5は、第1撮像装置4と同一画角となるように設置されているから、第1撮像装置4で撮像される人物を、第2撮像装置5でも撮像可能である。設置方向が異なるので、同一人物を撮像した撮像画像であっても、第2撮像装置5から得られる画像データにおける人物領域の位置は、第1撮像装置4から得られる画像データにおける人物領域の位置と異なる。人物からの光の入射角度が異なるからである。
制御部60は、第1及び第2撮像装置4,5から出力される画像信号に基づく画像データを同時的に取得し、夫々フレーム差分を取って抽出した人物領域候補の形状又は位置等に基づく類似度により、夫々で抽出される人物領域候補を対応付ける。即ち、制御部60は同一人物に対応して抽出される人物領域候補を対応付ける。制御部10は、夫々の同一画角内での位置の差異を求める。位置の差異は入射角の差異であるから、当該入射角の差異、並びに第1及び第2撮像装置4,5間の距離に基づき人物までの実空間における距離を求めることが可能である。そして制御部10は、実施の形態1で示した画像処理手順と同様に、距離情報に基づいて人物領域候補が反射成分を含むか否かを判定し、反射成分を含む場合にはこれを除去する。
このように、第1及び第2撮像装置4,5、並びに画像処理装置6を自動車に搭載する構成により、反射成分の有無判定に必要な検出対象の人物までの距離をステレオ視により精度よく算出することが可能となる。
上述の実施の形態1及び2では、撮像装置3並びに第1及び第2撮像装置は遠赤外線波長帯にて撮像する赤外線カメラを用いる構成とした。しかしながら本発明はこれに限らず、いずれも可視光波長帯又は近赤外線波長帯にて撮像するカメラを用いる構成としてもよい。いずれの場合も、撮像素子は路面による反射成分をも捉えるので、本発明に係る画像処理装置の制御部による処理を行なうことにより、有効に反射成分を除去することが可能となる。
また、実施の形態1においても実施の形態2における構成同様に、異なる角度からの撮像を行なう第3撮像装置を別途備え、ステレオ視によって実空間における距離を算出するようにしてもよい。
上述の実施の形態1及び2では、画像取得部13又は第1及び2画像取得部63,64による画像の取得、並びに画像処理を制御部10,60が行なう構成とした。しかしながら本発明はこれに限らず、画像の取得処理及び画像処理を画像処理部分を分離した集積回路によって実現するように構成してもよい。特に、上述の実施の形態1及び2では図4、図5及び図8のフローチャートに示した処理手順を制御部10が各構成部を制御して行なう構成とした。しかしながら、本発明に係る画像処理装置1は、フローチャートに示した各処理手順を行なうように設計された集積回路を更に集積した特定用途向けの回路(ASIC:Application Specific Integrated Circuit)を有する構成としてもよい。例えば、図4のフローチャートに示したステップS2に対応する差分データを算出する回路、図5及び図8のフローチャートに示したステップS5に対応する反射成分除去の処理を実現する回路、更に詳細には図5のフローチャートに示したステップS501に対応するエッジ抽出処理回路、ステップS503からステップS509までの処理に対応する境界特定回路等を組み合わせたASICを設計して用いることにより、各処理を高速に実行することができる。
更に、実施の形態1及び2は、安全運転支援システムに適用した場合を示した。しかしながら、本発明に係る画像処理装置による移動体の検出は安全運転支援システムに限らず、他の分野にも適用可能である。例えば、防犯システム又は監視システム等、撮像画像に基づき対象を精度よく検出することが可能である。
なお、上述のように開示された本実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。