(57)【要約】【課題】一つの側面として、撮像装置で撮像した画像に含まれる移動体が有体物か無体物かを判別する。【解決手段】画像処理装置３は、路面を移動する移動体の画像から、移動体に路面と交差する面が含まれるか否かを推定し、移動体に路面と交差する面が含まれる場合、移動体は車両４等の有体物であると判定する。【選択図】図１２
2016224647.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
路面を移動する移動体を撮像した画像から、前記移動体に前記路面と交差する面が含まれるか否かを推定し、
前記移動体に前記路面と交差する面が含まれる場合に、前記移動体は有体物であると判定する
ことを含む処理を実行させるための画像処理プログラム。
【請求項２】
前記画像に複数の前記移動体が撮像されている場合、前記移動体毎に前記路面と交差する面が含まれるか否かを推定し、
前記移動体毎に、前記移動体が有体物であるか判定する
請求項１記載の画像処理プログラム。
【請求項３】
コンピュータに、
撮像領域を固定して、路面を移動する同じ移動体を異なるタイミングで撮像した第１の画像及び第２の画像の各々から、前記移動体が有する、画像の水平方向に沿った複数の水平線を抽出し、
前記第１の画像から抽出した前記複数の水平線の各々に対して、前記第２の画像から抽出した前記複数の水平線の中で前記移動体の同じ箇所を示す水平線を対応付け、
前記第１の画像に含まれる前記複数の水平線から選択した第１の水平線ペアを境界線とする第１の面と、前記第１の水平線ペアに対応し、かつ、前記第２の画像から抽出した第２の水平線ペアを境界線とする第２の面と、の複数の組み合わせの中に、前記第１の面及び第２の面が前記路面と交差する組み合わせが含まれる場合に、前記移動体は前記路面と交差する面を有すると推定する
ことを含む処理を実行させるための画像処理プログラム。
【請求項４】
前記移動体の進行方向と、前記第１の画像及び前記第２の画像の撮像位置から前記第１の水平線ペア及び前記第２の水平線ペアの各水平線を各々結ぶ複数の直線と、の成す角度によって表される、前記複数の直線の各々の傾きを用いた条件式に基づいて、前記第１の面及び前記第２の面が前記路面と交差するか否かを推定する
請求項３記載の画像処理プログラム。
【請求項５】
前記条件式は、前記第１の面及び前記第２の面が共に前記路面に平行である場合に予め定めた値になるよう設定された式であり、
前記第１の水平線ペア及び前記第２の水平線ペアの各水平線に対応する前記複数の直線の傾きから算出した前記条件式の値の絶対値が閾値以上である場合に、前記第１の面及び前記第２の面が前記路面と交差すると推定する
請求項４記載の画像処理プログラム。
【請求項６】
前記第１の水平線ペアは、前記第１の画像から抽出した前記複数の水平線のうち、隣り合う水平線のペアであり、
前記第１の面は、前記第１の水平線ペアによって形成される面であり、
前記第１の面に、前記移動体の画像が含まれないとみなせる場合、前記第１の画像を前記第１の面の位置で前記第１の水平線ペアに沿って分割し、前記第１の画像を分割した分割画像毎に、前記分割画像に撮像されている前記移動体が前記路面と交差する面を有するか否かを推定する
請求項３〜請求項５の何れか１項に記載の画像処理プログラム。
【請求項７】
コンピュータに、
路面を移動する移動体を撮像した画像から、前記移動体に前記路面と交差する面が含まれるか否かを推定し、
前記移動体に前記路面と交差する面が含まれる場合に、前記移動体は有体物であると判定する
ことを含む処理を実行させる画像処理方法。
【請求項８】
コンピュータに、
撮像領域を固定して、路面を移動する同じ移動体を異なるタイミングで撮像した第１の画像及び第２の画像の各々から、前記移動体が有する、画像の水平方向に沿った複数の水平線を抽出し、
前記第１の画像から抽出した前記複数の水平線の各々に対して、前記第２の画像から抽出した前記複数の水平線の中で前記移動体の同じ箇所を示す水平線を対応付け、
前記第１の画像に含まれる前記複数の水平線から選択した第１の水平線ペアを境界線とする第１の面と、前記第１の水平線ペアに対応し、かつ、前記第２の画像から抽出した第２の水平線ペアを境界線とする第２の面と、の複数の組み合わせの中に、前記第１の面及び第２の面が前記路面と交差する組み合わせが含まれる場合に、前記移動体は前記路面と交差する面を有すると推定する
ことを含む処理を実行させる画像処理方法。
【請求項９】
路面を移動する移動体を撮像した画像から、前記移動体に前記路面と交差する面が含まれるか否かを推定する推定部と、
前記推定部により、前記移動体に前記路面と交差する面が含まれると推定した場合に、前記移動体は有体物であると判定する判定部と、
を含む画像処理装置。
【請求項１０】
撮像領域を固定して、路面を移動する同じ移動体を異なるタイミングで撮像した第１の画像及び第２の画像の各々から、前記移動体が有する、画像の水平方向に沿った複数の水平線を抽出する抽出部と、
前記抽出部により前記第１の画像から抽出した前記複数の水平線の各々に対して、前記抽出部により前記第２の画像から抽出した前記複数の水平線の中で前記移動体の同じ箇所を示す水平線を対応付ける対応付け部と、
前記第１の画像に含まれる前記複数の水平線から選択した第１の水平線ペアを境界線とする第１の面と、前記第１の水平線ペアに対応し、かつ、前記第２の画像から抽出した第２の水平線ペアを境界線とする第２の面と、の複数の組み合わせの中に、前記第１の面及び第２の面が前記路面と交差する組み合わせが含まれる場合に、前記移動体は前記路面と交差する面を有すると推定する推定部と、
含む画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理プログラム、画像処理方法、及び画像処理装置に関する。
【背景技術】
【０００２】
近年、道路を通行する人または車両といった移動体の通行量等を調査する交通流調査に適用可能な技術として、例えば道路上の予め定めた範囲をカメラで撮像し、撮像した画像から移動体の通行量を取得する画像処理システムが提案されている。
【０００３】
図２５は、例えば車両の交通流調査を実施する際の状況を、道路面（路面）に対向した位置から見た場合の一例を示す図である。図２５に示す交通流調査の例では、道路６の路側帯に設置したカメラ８５で、矢印８で示される進行方向に向かって移動する車両８４を撮像する。なお、カメラ８５は固定され、予め定めた撮像範囲７の画像を撮像する。
【０００４】
図２６は、図２５に示したカメラ８５で撮像した画像を、左から右に向かって時系列順に並べた図である。前述の画像処理システムは、時間の経過と共に画像上の位置が変化する物体を移動体（この場合は車両８４）として捉えることで、画像から車両８４の通過を検知し、道路６を通過する車両８４の通行量等を調査する。
【０００５】
また、例えば、図２７に示すように、隣接する道路６Ａ及び道路６Ｂのうち、一方の道路（例えば道路６Ａ）の通行量等を、カメラ８５を用いて調査する場合もある。この場合、太陽の位置の関係から、時間帯によっては道路６Ｂを通過する車両８４の影が道路６Ａに投影されることがある。
【０００６】
図２８は、図２７に示したカメラ８５で撮像した画像を、左から右に向かって時系列順に並べた図である。この場合、図２８に示すように、カメラ８５で撮像した画像には、車両８４の影８９が時間の経過と共に移動する状況が撮像される。従って、時間の経過と共に撮像位置が変化する物体を移動体として捉える移動体の検知方法を用いた場合、道路６Ａ上に投影される影８９を、道路６Ａを通行する車両８４と検知してしまい、正しい交通流調査が実施できない状況が発生する恐れがある。そのため、カメラ８５で撮像した移動体の形状を推定する手法が提案されている。
【０００７】
例えば、物体に向けて光を照射してから物体で反射した反射光を受光するまでの時間に基づいて物体との距離を測定する距離センサを用いて、移動体の形状を推定する手法が提案されている。また、全天の偏光状況及び被写体の偏光情報を用いて被写体の表面の法線を推定することで、被写体の形状を推定する手法が提案されている。また、異なる方向から撮像した被写体の複数の画像の同一箇所を対応付け、数値計算により被写体の立体形状を復元する手法(SFM：Structure From Motion)が提案されている。
【０００８】
更に、画像に含まれる移動体の輪郭等のうち、画像の水平方向に沿った線である移動体が有する水平線に着目して、移動体が有する２本の水平線を境界線として生成される面（部分形状面）の向きを推定する手法が提案されている。具体的には、水平線上の点を射影変換した際の不変量である複比を用いて、部分形状面が路面に対して垂直な垂直面である場合に成り立つ条件式、及び、部分形状面が路面に平行な水平面である場合に成り立つ条件式を導出する。そして、画像に含まれる移動体の部分形状面に対して導出した条件式を評価することで、移動体の形状を推定する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１０−２７９０４４号公報
【非特許文献】
【００１０】
【非特許文献１】藤木淳著、「点対応を用いた複数の２次元画像からの３次元形状復元−因子分解法の数理−」、統計数理、統計数理研究所、２００１年、第４９巻、第１号、p.77-107
【非特許文献２】Kazunori Onoguchi,“Overlap Vehicle Detection by Tracking Horizontal Lines”,MVA2009 IAPR Conference Machine Vision Applications,May20-22,2009,Yokohama,JAPAN
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、距離センサを用いて移動体の形状を推定する場合には、カメラ８５の他に、移動体までの距離を計測する距離センサが必要になる。また、被写体の表面の法線を推定する場合には、全天を撮像するレンズと、移動体を撮像するレンズと、を別々に用意する必要があり、何れの手法も既存の画像処理システムをそのまま利用することができない。
【００１２】
一方、ＳＦＭを用いて移動体の形状を推定する場合には、各々の画像から特徴点を抽出し、画像間で特徴点のマッチングを行い、カメラ８５の位置及び撮影角度を考慮した特徴点群を生成する。そして、生成した特徴点群を用いて各特徴点の３次元座標を計算してメッシュデータを作成し、作成したメッシュデータに各々の画像を貼り付け、３Ｄデータを生成する必要がある。
【００１３】
従って、ＳＦＭを用いる場合には各種計算が必要となり、移動体の形状を推定するまでに要する処理時間が、他の手法に比べて長くなる傾向にある。特に、車両８４の通行量の多い道路６での交通流調査を行う場合、画像に含まれる移動体が車両８４か否かの判別に要する処理時間の短さは重要な指標であり、処理時間がより短い手法が求められる。
【００１４】
また、複比に基づいて導出された条件式は、カメラ８５及び移動体を結ぶ光軸と、道路６と、が成す角度ができるだけ小さいことを前提として導出されている。一般的にカメラ８５は移動体の通行の邪魔にならないように支柱または道路６を跨いで設置される陸橋等、移動体の高さより高い位置に取り付けられる場合が多い。従って、例えば移動体の高さより高い位置に設置されたカメラ８５で移動体を撮像する利用形態の場合、移動体の部分形状面が水平面か垂直面かを評価する条件式をそのまま適用することができないことがある。
【００１５】
このように、上述した各手法は、既存の画像処理システムを利用して、移動体が車両８４のような実体を有する有体物か、或いは影８９のように実体を有さない無体物かを判別することは困難である。
【００１６】
一つの側面として、本発明は、撮像装置で撮像した画像に含まれる移動体が有体物か無体物かを判別することを目的とする。
【課題を解決するための手段】
【００１７】
一つの態様では、画像処理プログラムは、コンピュータに、路面を移動する移動体の画像から、移動体に路面と交差する面が含まれるか否かを推定し、移動体に路面と交差する面が含まれる場合、移動体は有体物であると判定することを含む処理を実行させる。
【発明の効果】
【００１８】
一つの側面として、本発明は、撮像装置で撮像した画像に含まれる移動体が有体物か無体物かを判別することができる、という効果を有する。
【図面の簡単な説明】
【００１９】
【図１】車両の外観の一例を示す図である。
【図２】車両等によって生成される影の一例を示す図である。
【図３】撮像画像の一例を示す図である。
【図４】撮像空間の座標系の一例を示す図である。
【図５】撮像画像の座標系の一例を示す図である。
【図６】異なる時刻における車両の位置の一例を示す図である。
【図７】車両のフロントグリル面を形成する輪郭線の位置の一例を示す図である。
【図８】車両のフロントガラス面を形成する輪郭線の位置の一例を示す図である。
【図９】車両のルーフ面を形成する輪郭線の位置の一例を示す図である。
【図１０】原点と、水平線に対応する点と、を結ぶ直線の傾きの一例を示す図である。
【図１１】画像処理システムの一例を示す図である。
【図１２】第１実施形態に係る画像処理装置の構成の一例を示す図である。
【図１３】第１実施形態に係る画像処理装置をコンピュータで実現する場合の構成の一例を示す図である。
【図１４】第１実施形態に係る画像処理の流れの一例を示すフローチャートである。
【図１５】Sobelフィルタの一例を示す図である。
【図１６】撮像画像から抽出した水平線の一例を示す図である。
【図１７】フレーム間での水平線の対応付けについて説明した図である。
【図１８】面種別推定処理の流れの一例を示すフローチャートである。
【図１９】第２実施形態に係る撮像画像の一例を示す図である。
【図２０】第２実施形態に係る画像処理装置の構成の一例を示す図である。
【図２１】第２実施形態に係る画像処理装置をコンピュータで実現する場合の構成の一例を示す図である。
【図２２】第２実施形態に係る画像処理の流れの一例を示すフローチャートである。
【図２３】撮像画像から抽出した水平線の一例を示す図である。
【図２４】撮像画像に第２実施形態に係る画像処理を実行した結果の一例を示す図である。
【図２５】交通流調査を実施する際の状況の一例を示す模式図である。
【図２６】車両が含まれる撮像画像の一例を時系列順に並べた図である。
【図２７】交通流調査を実施する際の状況の一例を示す模式図である。
【図２８】車両の影が含まれる撮像画像の一例を時系列順に並べた図である。
【発明を実施するための形態】
【００２０】
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。なお、同じ働きを担う構成要素または処理には、全図面を通して同じ符号を付与し、重複する説明を適宜省略する場合がある。
【００２１】
なお、開示の技術に係る画像処理システムは、如何なる移動体に対しても適用可能であるが、以降では車両４の交通流調査を例にして、開示の技術に係る画像処理システムを説明する。
【００２２】
図１は、図２５の車両８４に相当する、開示の技術に用いられる車両４の外観の一例を示す図である。図１に示すように、車両４は立体的な外面形状を有し、車両４の外面には路面と交差する面、例えばフロントグリル面４Ａ、またはフロントウインドシールド面（以下、フロントガラス面と略称する）４Ｂ等を含む。
【００２３】
一方、図２は、図２５のカメラ８５に相当する、開示の技術におけるカメラ５で撮像した画像（撮像画像）に含まれる車両４等の影９の一例を示す図である。影９は太陽光の光束のうち車両４によって遮られた部分が路面に投影されたものであるため、影９は立体的な形状を含まず、路面に平行な面のみを含む。
【００２４】
従って、撮像画像に含まれる移動体が路面と交差する面を含んでいれば、撮像画像に含まれる移動体は車両４であると判別することができる。また、反対に、撮像画像に含まれる移動体が路面と平行な面しか含んでいない場合には、撮像画像に含まれる移動体は影９であると判別することができる。
【００２５】
以下では、撮像画像に含まれる移動体が車両４か車両４等の影９かを判別するための基本原理について説明する。
【００２６】
（基本原理）
まず、撮像画像に含まれる移動体が車両４か車両４等の影９かを判別するため、幾つかの前提条件を設定する。
【００２７】
第１の前提条件として、撮像に使用するカメラ５の属性、すなわちカメラパラメータは既知とする。ここでカメラパラメータとは、カメラ５の物理的特性を示す値である。カメラパラメータには、例えばカメラ５の焦点距離、路面に対するカメラ５の設置高、カメラの取り付け方向、撮像素子サイズ、撮像画像における中心座標等が含まれる。
【００２８】
第２の前提条件として、車両４の進行方向は既知とする。
【００２９】
第３の前提条件として、車両４は、その外面が、車両４の進行方向及び路面の法線方向と交差する車両４に含まれる２本の線を境界線とする面で、かつ、路面と交差する面を含む。具体的には、車両４に含まれる線とは、車両４または車両４に取り付けられた部品の外面の輪郭線等をいい、例えばフロントガラスの上下の取り付け枠の輪郭線、またはフロントグリルの上下の輪郭線を指す。また、車両４の進行方向及び路面の法線方向と交差する、車両４に含まれる２本の線を境界線とする面とは、例えば図１に示したフロントグリル面４Ａ、またはフロントガラス面４Ｂ等を指す。
【００３０】
第４の前提条件として、車両４の進行方向及び路面の法線方向と交差する２本の線が、撮像画像上で撮像画像の水平方向に対して平行に表示されるように、カメラ５の取り付け方向を調整しておく。
【００３１】
図３は、第４の前提条件に従ってカメラ５の取り付け方向を調整した場合の撮像画像の一例を示した図である。図３に示すように、フロントガラスの上方の取り付け枠の輪郭線Ｌ１、フロントガラスの下方の取り付け枠の輪郭線Ｌ２、フロントグリルの上方の輪郭線Ｌ３、及びフロントグリルの下方の輪郭線Ｌ４の各々は、撮像画像の水平方向に平行となる。なお、第４の前提条件を満たす撮像画像内の車両４の輪郭線等を「水平線」という場合がある。
【００３２】
次に、説明を明確にするため、カメラ５によって撮像される空間の座標系と、カメラ５によって撮像された撮像画像の座標系を定義する。
【００３３】
図４はカメラ５によって撮像される空間（撮像空間）の座標系の一例を示す図である。図４に示すように、カメラ５を原点とし、車両４の進行方向をＹ軸、カメラ５に対する鉛直方向、すなわち路面に対する高さ方向をＺ軸、並びに、Ｙ軸及びＺ軸に対して各々垂直な方向をＸ軸とした３次元座標系を撮像空間に定義する。
【００３４】
一方、図５は、撮像画像の座標系の一例を示す図である。撮像画像の左上の点Ｐを原点とし、撮像画像の水平方向をＵ軸、及び撮像画像の垂直方向をＶ軸とした２次元座標系を撮像画像に定義する。
【００３５】
ここで、図６に示すように、カメラ５を用いて異なるタイミング、例えば時刻ｔ及び時刻ｔ＋１の各時刻において、移動する同じ車両４を撮像する。この場合、各々の撮像画像には、時刻ｔから時刻ｔ＋１までの期間の車両４の移動距離に応じた異なる位置に車両４が表示される。
【００３６】
図７〜図９は、時刻ｔ及び時刻ｔ＋１の各時刻における車両４の各部の輪郭線の位置をＸＹＺ空間からＹＺ平面に射影した結果の一例を示す図である。具体的には、図７は、時刻ｔ及び時刻ｔ＋１の各時刻における車両４のフロントグリル面４Ａ（図６参照）の境界線を形成する、Ｚ軸方向に上下にずれた輪郭線の位置を、ＹＺ平面に射影した際の一例を示す図である。
【００３７】
フロントグリル面４Ａの上下の輪郭線のようにＸ軸に平行な輪郭線は、ＹＺ平面では点で表される。従って、図７では、時刻ｔにおけるフロントグリル面４Ａの下方の輪郭線を表す点をＰ１(ｙ１,ｚ１)、時刻ｔにおけるフロントグリル面４Ａの上方の輪郭線を表す点をＰ２(ｙ２,ｚ２)とする。また、時刻ｔ＋１におけるフロントグリル面４Ａの下方の輪郭線を表す点をＰ３(ｙ３,ｚ３)、時刻ｔ＋１におけるフロントグリル面４Ａの上方の輪郭線を表す点をＰ４(ｙ４,ｚ４)とする。
【００３８】
図６に示したように、フロントグリル面４Ａは、路面に対して垂直な平面、すなわち垂直面とみなすことができる。従って、点Ｐ１(ｙ１,ｚ１)と点Ｐ２(ｙ２,ｚ２)とを結ぶ直線４０、及び、点Ｐ３(ｙ３,ｚ３)と点Ｐ４(ｙ４,ｚ４)とを結ぶ直線４１は、Ｚ軸に平行になる。
【００３９】
また、図８は、時刻ｔ及び時刻ｔ＋１の各時刻における車両４のフロントガラス面４Ｂ（図６参照）の境界線を形成する、Ｚ軸方向に上下にずれた取り付け枠の輪郭線の位置を、ＹＺ平面に射影した結果の一例を示す図である。
【００４０】
フロントガラス面４Ｂの上下の取り付け枠の輪郭線もまた、Ｘ軸に平行な輪郭線であるため、ＹＺ平面では点で表される。従って、図８では、時刻ｔにおけるフロントガラス面４Ｂの下方の取り付け枠の輪郭線を表す点をＰ１(ｙ１,ｚ１)、時刻ｔにおけるフロントガラス面４Ｂの上方の取り付け枠の輪郭線を表す点をＰ２(ｙ２,ｚ２)とする。また、時刻ｔ＋１におけるフロントガラス面４Ｂの下方の取り付け枠の輪郭線を表す点をＰ３(ｙ３,ｚ３)、時刻ｔ＋１におけるフロントガラス面４Ｂの上方の取り付け枠の輪郭線を表す点をＰ４(ｙ４,ｚ４)とする。
【００４１】
図６に示したように、フロントガラス面４Ｂは、路面に対して斜め方向（０°＜交差角度＜９０°）に交差する傾斜面とみなすことができる。従って、点Ｐ１(ｙ１,ｚ１)と点Ｐ２(ｙ２,ｚ２)とを結ぶ直線４２、及び、点Ｐ３(ｙ３,ｚ３)と点Ｐ４(ｙ４,ｚ４)とを結ぶ直線４３は、Ｙ軸及びＺ軸の何れの座標軸とも非平行となる。
【００４２】
図９は、時刻ｔ及び時刻ｔ＋１の各時刻における車両４のルーフ面４Ｃ（図６参照）の境界線を形成する、Ｙ軸方向に前後にずれた輪郭線の位置を、ＹＺ平面に射影した結果の一例を示す図である。
【００４３】
ルーフ面４Ｃの前後の輪郭線もまた、Ｘ軸に平行な輪郭線であるため、ＹＺ平面では点で表される。従って、図９では、時刻ｔにおけるルーフ面４Ｃの左方の輪郭線を表す点をＰ１(ｙ１,ｚ１)、時刻ｔにおけるルーフ面４Ｃの右方の輪郭線を表す点をＰ２(ｙ２,ｚ２)とする。また、時刻ｔ＋１におけるルーフ面４Ｃの左方の輪郭線を表す点をＰ３(ｙ３,ｚ３)、時刻ｔ＋１におけるルーフ面４Ｃの右方の輪郭線を表す点をＰ４(ｙ４,ｚ４)とする。
【００４４】
図６に示したように、ルーフ面４Ｃは、路面に平行な平面、すなわち水平面とみなすことができる。従って、点Ｐ１(ｙ１,ｚ１)と点Ｐ２(ｙ２,ｚ２)とを結ぶ直線４４、及び、点Ｐ３(ｙ３,ｚ３)と点Ｐ４(ｙ４,ｚ４)とを結ぶ直線４５は、Ｙ軸に平行になる。
【００４５】
ここで、図１０を用いて、ＹＺ平面における原点Ｏと、点Ｐ１、点Ｐ２、点Ｐ３、及び点Ｐ４の各々と、を結ぶ各直線の傾きについて説明する。
【００４６】
今、原点Ｏと点Ｐ１とを結ぶ直線ＯＰ１の傾きをｋ１、原点Ｏと点Ｐ２とを結ぶ直線ＯＰ２の傾きをｋ２、原点Ｏと点Ｐ３とを結ぶ直線ＯＰ３の傾きをｋ３、原点Ｏと点Ｐ４とを結ぶ直線ＯＰ４の傾きをｋ４とする。この場合、各直線は（１）式〜（４）式で表される。
【００４７】
【数１】
2016224647.tif 000003
【００４８】
一方、Ｙ軸は車両４の進行方向であることから、路面はＹ軸に平行となる。従って、時刻ｔ及び時刻ｔ＋１の各時刻における、ＹＺ平面上の車両４の同一箇所の輪郭線を表す点の位置のＺ軸成分は変化しないことから、（５）式及び（６）式が得られる。
【００４９】
【数２】
2016224647.tif 000004
【００５０】
また、図７に示したように、フロントグリル面４Ａのような路面に垂直な垂直面の場合、点Ｐ１(ｙ１,ｚ１)と点Ｐ２(ｙ２,ｚ２)とを結ぶ直線、及び、点Ｐ３(ｙ３,ｚ３)と点Ｐ４(ｙ４,ｚ４)とを結ぶ直線は、Ｚ軸に平行になる。従って、時刻ｔ及び時刻ｔ＋１の各時刻において、ＹＺ平面上の車両４の垂直面を表す点の位置のＹ軸成分は同じ値となることから、（７）式及び（８）式が得られる。
【００５１】
【数３】
2016224647.tif 000005
【００５２】
従って、車両４の外面に含まれる２本の輪郭線を境界線とする面が垂直面であれば、（１）式〜（８）式から変数ｙ及び変数ｚを消去することで、（９）式が得られる。
【００５３】
【数４】
2016224647.tif 000006
【００５４】
すなわち（９）式は、車両４の外面に含まれる２本の輪郭線を境界線とする面が垂直面である場合に成立する条件式である。従って、（９）式を変形した条件式である次の（１０）式のｄｖの値が０であれば、車両４の外面に含まれる２本の輪郭線を境界線とする面は垂直面であるといえる。
【００５５】
【数５】
2016224647.tif 000007
【００５６】
一方、図９に示したように、ルーフ面４Ｃのような路面に平行な水平面の場合、何れの時刻においても、ＹＺ平面上での水平面の境界を表す点Ｐ１(ｙ１,ｚ１)、点Ｐ２(ｙ２,ｚ２)、点Ｐ３(ｙ３,ｚ３)、及び点Ｐ４(ｙ４,ｚ４)の位置のＺ軸成分は同じになる。従って、（１１）式が得られる。
【００５７】
【数６】
2016224647.tif 000008
【００５８】
また、図９に示したように、ルーフ面４Ｃのような路面に平行な水平面の場合、何れの時刻においても水平面のＹ軸方向の長さは変化しないことから、（１２）式が成立する。
【００５９】
【数７】
2016224647.tif 000009
【００６０】
従って、車両４の外面に含まれる２本の輪郭線を境界線とする面が水平面であれば、（１）式〜（６）式、（１１）式、及び（１２）式から変数ｙ及び変数ｚを消去することで、（１３）式が得られる。
【００６１】
【数８】
2016224647.tif 000010
【００６２】
すなわち（１３）式は、車両４の外面に含まれる２本の輪郭線を境界線とする面が水平面である場合に成立する条件式である。従って、（１３）式を変形した条件式である次の（１４）式のｄｈの値が０であれば、車両４の外面に含まれる２本の輪郭線を境界線とする面は水平面であるといえる。
【００６３】
【数９】
2016224647.tif 000011
【００６４】
従って、原点Ｏと、異なる時刻において車両４の外面に含まれるＸ軸に平行な２本の同じ輪郭線を表す各々の点と、を結ぶ各直線の傾きｋ１〜ｋ４がわかれば、（１０）式及び（１４）式から、２本の輪郭線を境界線とする面が垂直面か水平面かを推定できる。
【００６５】
一方、前述した第１の前提条件よりカメラ５のカメラパラメータは既知であることから、傾きｋ１〜ｋ４は、カメラ５の撮像画像から取得可能である。
【００６６】
例えば、カメラ５の取付け方向に関して、カメラ５の撮像光軸とＸ軸とが成す角度、すなわちカメラ５のＸ軸方向の回転角を“θｘ”とし、カメラ５の撮像光軸とＹ軸とが成す角度、すなわちカメラ５のＹ軸方向の回転角を“θｙ”とする。また、カメラ５の撮像光軸とＺ軸とが成す角度、すなわちカメラ５のＺ軸方向の回転角を“θｚ”とすれば、カメラ５の取付け方向に対応する回転行列Ｒｘ、Ｒｙ、及びＲｚは、（１５）式〜（１７）式で表すことができる。
【００６７】
【数１０】
2016224647.tif 000012
【００６８】
また、カメラ５の焦点距離をｆ、カメラ５の撮像素子に含まれる単一の撮像セル（画素）の１つのサイズ（縦×横）を（Ｓｖ×Ｓｕ）、カメラ５の撮像画像における中心座標を（Ｃｖ×Ｃｕ）とする。この際、以下に示す（１８）式を用いて２次元で表される撮像画像の各画素の座標（ｕｉ,ｖｉ）（ｉは整数）を、３次元で表される撮像空間の座標（ｘｉ,ｙｉ,ｚｉ）に各々射影変換することができる。
【００６９】
【数１１】
2016224647.tif 000013
【００７０】
ここで、“ｈ”は比例定数である。ＹＺ平面上における点と原点Ｏとを結ぶ直線の傾きｋｉは“ｋｉ＝ｚｉ／ｙｉ”で表される。従って、ＹＺ平面において、原点Ｏと、カメラ５の撮像画像に含まれる水平線に対応する点と、を結ぶ直線の傾きｋｉは、既知のカメラパラメータを用いて（１８）式で表されるｙｉ及びｚｉの値から算出することができる。
【００７１】
（第１実施形態）
図１１は、第１実施形態に係る画像処理システムの一例を示す図である。図１１に示すように、画像処理システム１は、撮像装置であるカメラ５と画像処理装置３を含む。カメラ５は道路６を見下ろす位置に取り付けられ、画像処理装置３によって、カメラ５の撮像画像に基づいて道路６を車両４等の移動体が通過したか否かを推定することで、道路６の交通流調査を実施する。
【００７２】
なお、図１１ではカメラ５を１台のみ示しているが、１台の画像処理装置３に複数台のカメラ５が接続されていてもよい。また、画像処理装置３は、画像処理装置３の処理結果を収集して、所定の処理を行う図示しない情報処理装置に接続されていてもよい。所定の処理としては、例えば画像処理装置３によって計数された車両４の通行量の時間帯毎の集計、或いは通行した各車両４が写っている画像の保存、或いは通行した各車両４のナンバープレートの認識等の処理が挙げられる。
【００７３】
なお、ここでは一例としてカメラ５は道路６を移動する移動体の動画像を撮像するものとして説明する。しかし、動画像は各々「フレーム」と呼ばれる複数の静止画像の集まりであるため、カメラ５は必ずしも動画像の撮像に対応している必要はなく、静止画像が撮像できればよい。
【００７４】
図１２は、画像処理装置３の構成の一例を示す図である。画像処理装置３は、入力部１０、抽出部１２、対応付け部１４、選択部１６、推定部１８、判定部２０、及び出力部２２を含む。
【００７５】
入力部１０は、カメラ５で撮像した撮像動画像を画像処理装置３に取り込む。
【００７６】
抽出部１２は、入力部１０で取得された撮像動画像から撮像時刻が異なる２つのフレームを選択し、選択したフレーム毎に移動体の有無を判定する。また、抽出部１２は、選択したフレームに移動体が存在していると判定した場合、選択したフレーム毎に移動体が有する全ての水平線を抽出する。
【００７７】
対応付け部１４は、抽出部１２で撮像動画像から選択されたフレーム間で、各々のフレームから抽出した、移動体の同じ箇所を表す水平線同士を対応付ける。
【００７８】
選択部１６は、抽出部１２で撮像動画像から抽出された一方のフレームの水平線の中から、２本の水平線（水平線ペア）を選択する。更に、選択部１６は、抽出部１２で撮像動画像から抽出された他方のフレームの水平線の中から、一方のフレームで選択した水平線ペアに対応する水平線ペアを選択する。
【００７９】
推定部１８は、選択部１６でフレーム毎に選択された各々の水平線ペアを組み合わせる。そして、推定部１８は、組み合わせた各々の水平線ペアによって生成される部分形状面に対して（１０）式及び（１４）式で示した条件式が成立するか判定し、条件式の判定対象である部分形状面の面種別、すなわち部分形状面が垂直面であるか、水平面であるか、または傾斜面であるかを推定する。
【００８０】
判定部２０は、選択部１６でフレーム毎に選択した水平線ペアによって生成される部分形状面の面種別の推定結果に基づいて、撮像画像に表示される移動体が車両４であるか、または車両４の影９であるかを判定する。
【００８１】
出力部２２は、判定部２０での判定結果を例えば図示しない記録装置等に出力し、図示しない記録装置等に道路６を通過する車両４の台数を記録する。
【００８２】
次に、図１３に、画像処理装置３をコンピュータで実現する場合の構成の一例を示す。
【００８３】
コンピュータ１００は、ＣＰＵ１０２、メモリ１０４、及び不揮発性の記憶部１０６を含む。ＣＰＵ１０２、メモリ１０４、及び記憶部１０６は、バス１０８を介して互いに接続される。また、コンピュータ１００は、入力装置１１２、出力装置１１４、及びカメラ５と、コンピュータ１００と、を接続して、互いにデータを送受信するためのＩ／Ｏ（Input/Output）１１０を備え、Ｉ／Ｏ１１０はバス１０８に接続される。
【００８４】
入力装置１１２は、コンピュータ１００の操作者がコンピュータ１００に指示を与えるためのデバイス、例えばキーボード及びマウスを含む。また、入力装置１１２は、例えばＣＤ−ＲＯＭ又はフラッシュメモリ等といった記録媒体１１６に記録されるデータを読み取るための読取装置を含んでもよい。
【００８５】
出力装置１１４は、コンピュータ１００での処理結果を出力するための装置、例えばディスプレイ等を含む。また、出力装置１１４は、記録媒体１１６にコンピュータ１００での処理結果を書き込むための書込み装置を含んでもよい。
【００８６】
なお、Ｉ／Ｏ１１０に接続される各種装置は一例であり、必ずしもＩ／Ｏ１１０に、入力装置１１２及び出力装置１１４が接続される必要はない。また、記憶部１０６は、ＨＤＤ(Hard Disk Drive)又はフラッシュメモリ等によって実現できる。
【００８７】
記憶部１０６には、コンピュータ１００を図１２に示す画像処理装置３として機能させるための画像処理プログラム１２０が記憶される。記憶部１０６に記憶される画像処理プログラム１２０は、入力プロセス１２２、抽出プロセス１２４、対応付けプロセス１２６、選択プロセス１２８、推定プロセス１３０、判定プロセス１３２、及び出力プロセス１３４を含む。
【００８８】
ＣＰＵ１０２は、画像処理プログラム１２０を記憶部１０６から読み出してメモリ１０４に展開し、画像処理プログラム１２０に含まれる各プロセスを実行する。
【００８９】
ＣＰＵ１０２が、画像処理プログラム１２０を記憶部１０６から読み出してメモリ１０４に展開し、画像処理プログラム１２０を実行することで、コンピュータ１００が図１２に示す画像処理装置３として動作する。
【００９０】
また、ＣＰＵ１０２が入力プロセス１２２を実行することで、コンピュータ１００が図１２に示す入力部１０として動作する。また、ＣＰＵ１０２が抽出プロセス１２４を実行することで、コンピュータ１００が図１２に示す抽出部１２として動作する。また、ＣＰＵ１０２が対応付けプロセス１２６を実行することで、コンピュータ１００が図１２に示す対応付け部１４として動作する。また、ＣＰＵ１０２が選択プロセス１２８を実行することで、コンピュータ１００が図１２に示す選択部１６として動作する。また、ＣＰＵ１０２が推定プロセス１３０を実行することで、コンピュータ１００が図１２に示す推定部１８として動作する。また、ＣＰＵ１０２が判定プロセス１３２を実行することで、コンピュータ１００が図１２に示す判定部２０として動作する。また、ＣＰＵ１０２が出力プロセス１３４を実行することで、コンピュータ１００が図１２に示す出力部２２として動作する。
【００９１】
なお、コンピュータ１００は、例えば半導体集積回路、より詳しくはＡＳＩＣ(Application Specific Integrated Circuit)等で実現することも可能である。
【００９２】
次に、画像処理装置３の作用について説明する。画像処理装置３は、例えば電源がオンされて起動されたことを契機として画像処理を実行する。
【００９３】
図１４は、画像処理装置３で実行される画像処理の流れの一例を示すフローチャートである。
【００９４】
まず、ステップＳ１０において、入力部１０は、撮像動画像をカメラ５から受信したか否かを判定する。否定判定の場合には撮像動画像を受信するまでステップＳ１０の処理を繰り返す。一方、肯定判定の場合には、入力部１０は受信した撮像動画像を例えばメモリ１０４の予め定めた領域に記憶し、ステップＳ２０に移行する。
【００９５】
ステップＳ２０において、抽出部１２は、ステップＳ１０の処理でメモリ１０４に記憶された撮像動画像から、撮像時刻が異なる２つのフレームを選択し、選択した各々のフレームに移動体が含まれるか判定する。この判定には、例えば移動体がない状態の道路６をカメラ５で予め撮像した背景画像と、各々のフレームと、を比較する等、公知の画像判定手法を使用することができる。なお、背景画像は、メモリ１０４の予め定めた領域に予め記憶しておけばよい。そして、抽出部１２は、移動体を含み、かつ、撮像時刻が異なる２つのフレームを選択する。
【００９６】
ここでは一例として、撮像動画像から時刻ｔにおけるフレーム（第１のフレーム）と、時刻ｔ＋１におけるフレーム（第２のフレーム）を選択するものとして説明を行う。なお、選択する２つのフレームは撮像時刻が異なっていればよく、必ずしも時系列に沿って連続したフレームである必要はない。
【００９７】
ステップＳ３０において、抽出部１２は、ステップＳ２０の処理で選択した第１のフレーム及び第２のフレームの各々から、移動体が有する全ての水平線を抽出する。
【００９８】
なお、第１のフレーム及び第２のフレーム（以降、「各々のフレーム」と称す場合がある）から移動体が有する水平線を抽出する手法としては、撮像動画像から物体の所定方向の輪郭等を抽出する公知のエッジ抽出手法を使用することができる。例えば、各々のフレームに含まれる各画素の画素値に対して、図１５に示すＶ軸方向のSobelフィルタを適用することで、各フレームから水平線を抽出することができる。また、ハフ変換によって各フレームから直線を抽出し、抽出した直線の中でＵ軸に平行な直線を水平線として抽出する手法を使用してもよい。
【００９９】
図１６は、各々のフレームから抽出した水平線の一例を示す図である。図１６は、第１のフレームから、例えばＬ１(t)、Ｌ２(t)、Ｌ３(t)、及びＬ４(t)の４本の水平線が抽出され、第２のフレームから、例えばＬ１(t＋１)、Ｌ２(t＋１)、Ｌ３(t＋１)、及びＬ４(t＋１)の４本の水平線が抽出された例を示している。
【０１００】
ステップＳ４０において、対応付け部１４は、ステップＳ３０の処理で各々のフレームから抽出した各々のフレーム間の水平線に対して、移動体の同じ箇所を表す水平線同士を対応付ける。
【０１０１】
各々のフレームにおいて、移動体の同じ箇所を表す水平線同士を対応付ける手法としては、図１７に示すように、画像間で各々の水平線を含む周辺画像の類似度を比較する手法を使用することができる。
【０１０２】
例えば対応付け部１４は、ステップＳ３０で抽出した第１のフレームに含まれる水平線Ｌ１(t)、Ｌ２(t)、Ｌ３(t)、及びＬ４(t)の周辺画像を第１のフレームから抽出する。更に、対応付け部１４は、ステップＳ３０で抽出した第２のフレームに含まれる水平線Ｌ１(t＋１)、Ｌ２(t＋１)、Ｌ３(t＋１)、及びＬ４(t＋１)の周辺画像を第２のフレームから抽出する。なお、水平線の周辺画像とは、例えば水平線を含むように撮像動画像のＵ軸に沿って抽出した画像をいう。
【０１０３】
そして、対応付け部１４は、第１のフレームから抽出した水平線の周辺画像毎に、第２のフレームから抽出した各周辺画像との類似度を算出し、予め定めた類似度より高く、かつ、最も類似度が高い周辺画像に対応する水平線同士を対応付ける。
【０１０４】
なお、周辺画像の類似度を算出する手法としては、例えば各々の周辺画像の各画素値の差分を用いる手法、または、各々の周辺画像の相関を算出する手法等、公知の手法を使用することができる。
【０１０５】
ここでは、一例として、図１６における水平線Ｌ１(t)と水平線Ｌ１(t＋１)、水平線Ｌ２(t)と水平線Ｌ２(t＋１)、水平線Ｌ３(t)と水平線Ｌ３(t＋１)、及び水平線Ｌ４(t)と水平線Ｌ４(t＋１)が各々対応付けられるものとする。
【０１０６】
ステップＳ５０において、選択部１６は、第１のフレームから抽出した水平線の中から、予め定めた選択ルールに従って２本の水平線、すなわち水平線ペアを選択する。そして、選択部１６は、ステップＳ４０の処理により、選択した第１のフレームの水平線ペアに対応付けられた水平線ペアを、第２のフレームから抽出した水平線の中から選択する。
【０１０７】
なお、水平線ペアの選択ルールに特に制限はない。例えば、第１のフレームに含まれる水平線ペアの全ての組み合わせの中から各水平線ペアを順次選択するようにしてもよい。或いは、水平線Ｌ１(t)と水平線Ｌ２(t)、及び、水平線Ｌ２(t)と水平線Ｌ３(t)のように、Ｖ軸方向に隣り合う水平線ペアのみを順次選択するようにしてもよい。
【０１０８】
また、選択部１６は、まず第１のフレームから抽出した水平線の中から水平線ペアを選択し、選択した水平線ペアに対応する水平線ペアを第２のフレームから抽出した水平線の中から選択するものとして説明したが、水平線ペアの選択順序はこれに限られない。例えば、選択部１６は、先に第２のフレームから抽出した水平線の中から水平線ペアを選択し、選択した水平線ペアに対応する水平線を第１のフレームから抽出した水平線の中から選択するようにしてもよい。
【０１０９】
ステップＳ６０において、推定部１８は、ステップＳ５０の処理で各々選択した、第１のフレームの水平線ペアと、第２のフレームの水平線ペアを組み合わせる。そして、推定部１８は、組み合わせた第１のフレームの水平線ペアによって生成される部分形状面、及び第２のフレームの水平線ペアによって生成される部分形状面に対して、後述する面種別推定処理を実行し、部分形状面の面種別を推定する。
【０１１０】
ステップＳ７０において、選択部１６は、第１のフレームから抽出した水平線の中に、未選択の水平線ペアが存在するか否かを判定し、肯定判定の場合にはステップＳ５０に移行する。そして、選択部１６は、予め定めた選択ルールに従って第１のフレームから抽出した水平線の中から未選択の水平線ペアを選択すると共に、選択した第１のフレームの水平線ペアに対応付けられた第２のフレームの水平線ペアを選択する。従って、ステップＳ５０〜Ｓ７０の処理を繰り返すことで、各々のフレームに含まれる移動体が有する全ての部分形状面の面種別を推定することができる。
【０１１１】
一方、ステップＳ７０の判定処理が否定判定、すなわち、各々のフレームに含まれる移動体が有する全ての部分形状面の面種別を推定した場合には、ステップＳ８０に移行する。
【０１１２】
ステップＳ８０において、判定部２０は、各々のフレームに存在する移動体の外面に含まれる各部分形状面の中に、面種別が垂直面または傾斜面と推定された部分形状面が少なくとも１つ存在する場合に、撮像動画像に含まれる移動体は車両４であると判定する。一方、判定部２０は、各々のフレームに存在する移動体の外面に含まれる各部分形状面の面種別が水平面と推定された場合に、撮像動画像に含まれる移動体は影９であると判定する。
【０１１３】
そして、出力部２２は、判定部２０が撮像動画像に含まれる移動体は車両４であると判定した場合に、例えばメモリ１０４等に記憶した、道路６における車両４の通行台数を１つ増加し、車両４の通行台数を例えば出力装置１１４に出力する。
【０１１４】
以上により、図１４に示す画像処理を終了すると共に、再び図１４に示す画像処理を実行して、カメラ５から送信される次の撮像動画像を受信し、撮像動画像に存在する移動体が車両４か否かを判定することで、車両４の総通行台数を計数する。
【０１１５】
次に、図１４に示す画像処理のステップＳ６０の処理である面種別推定処理について説明する。図１８は、面種別推定処理の流れの一例を示すフローチャートである。
【０１１６】
まず、ステップＳ６００において、推定部１８は、第１のフレームの水平線ペア及び第２のフレームの水平線ペアの各水平線、すなわち４本の水平線の中から、１本の水平線を選択する。
【０１１７】
ステップＳ６１０において、推定部１８は、（１８）式を用いてステップＳ６００の処理で選択した水平線を撮像空間に射影変換し、ＹＺ平面における原点Ｏと、ＹＺ平面における水平線に対応する点と、を結ぶ直線の傾きを算出する。
【０１１８】
ステップＳ６２０において、推定部１８は、ステップＳ６００の処理における４本の水平線の中に未選択の水平線が存在するか否かを判定し、肯定判定の場合にはステップＳ６００に移行する。このように、ステップＳ６００〜Ｓ６２０の処理を繰り返すことで、ステップＳ６００の処理で未選択の水平線が選択され、結果として、各水平線ペアの各々の水平線に対応する直線の傾きｋ１〜ｋ４を算出することができる。
【０１１９】
ステップＳ６３０において、推定部１８は、第１のフレームの水平線ペア及び第２のフレームの水平線ペアの各々によって生成される部分形状面を垂直面と仮定して、垂直面の条件式を評価する。具体的には、推定部１８は、ステップＳ６１０の処理で算出した、各水平線に対応する直線の傾きｋ１〜ｋ４を用いて、（１０）式に示したｄｖの値を算出する。
【０１２０】
ステップＳ６４０において、推定部１８は、第１のフレームの水平線ペア及び第２のフレームの水平線ペアの各々によって生成される部分形状面を水平面と仮定して、水平面の条件式を評価する。具体的には、推定部１８は、ステップＳ６１０の処理で算出した、各水平線に対応する直線の傾きｋ１〜ｋ４を用いて、（１４）式に示したｄｈの値を算出する。
【０１２１】
ステップＳ６５０において、推定部１８は、ステップＳ６３０の処理で算出したｄｖの値、及びステップＳ６４０の処理で算出したｄｈの値を用いて、水平線ペアによって生成される部分形状面の面種別を推定する。
【０１２２】
例えば、（１０）式においてｄｖの値が“０”であれば、水平線ペアによって生成される部分形状面は垂直面であることから、ステップＳ６３０の処理で算出したｄｖの値の絶対値が閾値ｔｈｖより小さい場合、当該部分形状面を垂直面とみなすことができる。
【０１２３】
また、（１４）式においてｄｈの値が“０”であれば、水平線ペアによって生成される部分形状面は水平面であることから、ステップＳ６４０の処理で算出したｄｈの値の絶対値が閾値ｔｈｈより小さい場合、当該部分形状面を水平面とみなすことができる。
【０１２４】
また、ステップＳ６３０の処理で算出したｄｖの値の絶対値が閾値ｔｈｖ以上で、かつ、ステップＳ６４０の処理で算出したｄｈの値の絶対値が閾値ｔｈｈ以上である場合には、水平線ペアによって生成される部分形状面を傾斜面とみなすことができる。
【０１２５】
なお、閾値ｔｈｖ、ｔｈｈは、部分形状面を垂直面または水平面とみなすことができる境界の値に設定された値である。閾値ｔｈｖ、ｔｈｈは、画像処理装置３の実機による実験や画像処理装置３の設計仕様に基づくコンピュータシミュレーション等により予め求められ、例えばメモリ１０４の予め定めた領域に予め記憶される。なお、閾値ｔｈｖ、ｔｈｈは、同一の値でもよいし、異なる値でもよい。
【０１２６】
このように第１実施形態によれば、移動体の高さより高い位置に設置されたカメラ５の撮像動画像だけから、ＳＦＭより短い処理時間で、撮像動画像に含まれる移動体が車両４等の有体物であるか、影９等の無体物であるかを判定することができる。すなわち、道路６を通過する有体物の影９を有体物と誤判定してしまう回数をより低減することができるため、交通流調査の精度をより向上させることができる。
【０１２７】
（第２実施形態）
第１実施形態では、撮像動画像の１つのフレームに１台の車両４が含まれる場合を例にして、画像処理装置３における画像処理を説明した。第２実施形態では、図１９に示すように、撮像動画像の１つのフレームに複数の移動体である車両４が含まれる場合を例にして、画像処理装置の画像処理を説明する。なお、フレーム内の複数の車両４は重複しておらず、各々の車両４の間には、路面が写っているものとする。
【０１２８】
図２０は、第２実施形態に係る画像処理装置３Ａの一例を示す図である。画像処理装置３Ａが第１実施形態に係る画像処理装置３と異なる点は、選択部１６が選択部１６Ａに、判定部２０が判定部２０Ａにそれぞれ置き換えられた点である。
【０１２９】
選択部１６Ａは、抽出部１２で選択された２つのフレームのうち一方のフレームから、車両４等の移動体の間に存在する路面を検出し、各々の路面を境にして、フレームをＵ軸に沿って分割する。そして、選択部１６Ａは、分割したフレームの画像（分割画像）毎に、第１実施形態に係る選択部１６と同じ処理を実行して、分割画像毎に水平線ペアを選択する。
【０１３０】
判定部２０Ａは、選択部１６Ａで分割画像毎に選択された水平線ペアによって生成される全ての部分形状面の面種別の推定結果に基づいて、分割画像に表示される移動体が車両４であるか、または影９であるかを判定する。
【０１３１】
次に、図２１に、画像処理装置３Ａをコンピュータで実現する場合の構成の一例を示す。図２１に示す画像処理装置３Ａの構成が、図１３に示す第１実施形態に係る画像処理装置３の構成と異なる点は、選択プロセス１２８が選択プロセス１２８Ａに、判定プロセス１３２が判定プロセス１３２Ａにそれぞれ置き換えられた点である。
【０１３２】
ＣＰＵ１０２は、画像処理プログラム１２０Ａを記憶部１０６から読み出してメモリ１０４に展開し、画像処理プログラム１２０Ａに含まれる各プロセスを実行する。
【０１３３】
ＣＰＵ１０２が、画像処理プログラム１２０Ａを記憶部１０６から読み出してメモリ１０４に展開し、画像処理プログラム１２０Ａを実行することで、コンピュータ１００Ａが図２０に示す画像処理装置３Ａとして動作する。
【０１３４】
また、ＣＰＵ１０２が選択プロセス１２８Ａを実行することで、コンピュータ１００Ａが図２０に示す選択部１６Ａとして動作する。また、ＣＰＵ１０２が判定プロセス１３２Ａを実行することで、コンピュータ１００Ａが図２０に示す判定部２０Ａとして動作する。
【０１３５】
なお、コンピュータ１００Ａは、例えば半導体集積回路、より詳しくはＡＳＩＣ等で実現することも可能である。
【０１３６】
次に、画像処理装置３Ａの作用について説明する。画像処理装置３Ａは、例えば電源がオンされて起動されたことを契機として画像処理を実行する。
【０１３７】
図２２は、画像処理装置３Ａで実行される画像処理の流れの一例を示すフローチャートである。図２２に示す画像処理のフローチャートが図１４に示す第１実施形態に係る画像処理のフローチャートと異なる点は、ステップＳ４２〜Ｓ４８、及びステップＳ９０の処理が追加された点である。
【０１３８】
ステップＳ４２において、選択部１６Ａは、ステップＳ３０の処理で第１のフレームから抽出した水平線の中から、Ｖ軸方向に隣り合う水平線ペアを選択する。
【０１３９】
図２３は、ステップＳ３０の処理で第１のフレームから抽出した水平線の一例を示す図である。図２３の例の場合、選択部１６Ａは、例えばＬ１(t)とＬ２(t)、またはＬ２(t)とＬ３(t)といったＶ軸方向に隣り合う水平線ペアを選択する。
【０１４０】
ステップＳ４４において、選択部１６Ａは、ステップＳ４２の処理で選択した水平線ペアの各々の水平線を境界線とする面、すなわち水平線ペア間の領域が、移動体を含まない路面のみの背景画像を表示している領域であるかを判定する画像認識を実行する。具体的には、選択部１６Ａは、選択した水平線ペア間の領域の画像と、当該領域に該当する背景画像の領域の画像と、の類似度を算出する。そして、算出した類似度が予め定めた類似度より高い場合に、選択部１６Ａは、選択した水平線ペア間の領域の画像を背景画像と認識する。なお、画像間の類似度を算出する手法としては、公知の手法を使用することができる。
【０１４１】
そして、選択部１６Ａは、背景画像と認識された水平線ペア間の領域の座標情報をメモリ１０４の予め定めた領域に記憶する。
【０１４２】
ステップＳ４６において、選択部１６Ａは、Ｖ軸方向に隣り合う水平線ペアから、全ての水平線ペアを選択したか否かを判定する。否定判定の場合にはステップＳ４２に移行し、ステップＳ４２〜Ｓ４６の処理を繰り返すことで、Ｖ軸方向に隣り合う全ての水平線ペア間の領域毎に、当該領域が背景画像であるか判定することができる。一方、肯定判定の場合にはステップＳ４８に移行する。
【０１４３】
ステップＳ４８において、選択部１６Ａは、背景画像と認識した水平線ペア間の領域の座標情報をメモリ１０４から取得する。そして、選択部１６Ａは、取得した背景画像の座標情報に基づいて、背景画像を境にして第１のフレームをＵ軸に沿って分割する。
【０１４４】
なお、選択部１６Ａは、ステップＳ４２の処理において、第１のフレームから抽出した水平線の中から、Ｖ軸方向に隣り合う水平線ペアを選択するように説明したが、第２のフレームから抽出した水平線の中から、Ｖ軸方向に隣り合う水平線ペアを選択してもよい。この場合、背景画像を境にして第２のフレームが分割されることになる。
【０１４５】
以降、分割した分割画像を１つ選択し、選択した分割画像を第１のフレームとして、ステップＳ５０〜Ｓ８０の処理を実行することで、分割画像に含まれる移動体が有する全ての部分形状面の面種別を推定し、当該移動体が車両４であるか影９であるかを判定する。
【０１４６】
また、ステップＳ９０において、選択部１６Ａは、未選択の分割画像があるか否かを判定する。肯定判定の場合にはステップＳ５０に移行し、未選択の分割画像を選択することで、分割画像に含まれる移動体が車両４であるか影９であるかを分割画像毎に判定する。
【０１４７】
図２４は、図１９に示す時刻ｔにおけるフレームに対して、図２２に示した画像処理を実行した結果を示す図である。図２４に示すように、フレームは背景画像３１を境にして、フレーム上方の分割画像３０と、フレーム下方の分割画像３２と、に分割される。この場合、画像処理装置３Ａは、分割画像３０及び分割画像３２にそれぞれ車両４が含まれると判定することから、車両４の通行台数を２つ増加する。
【０１４８】
このように第２実施形態によれば、画像処理装置３Ａは、背景画像３１をフレームから検出し、背景画像３１を境にしてフレームを分割して、分割画像毎に画像処理を行う。従って、画像処理装置３Ａは、１つフレームに複数の移動体が含まれる場合であっても、カメラ５の撮像動画像だけから、ＳＦＭより短い処理時間で、撮像動画像に含まれる移動体が車両４等の有体物であるか、影９等の無体物であるかを判定することができる。
【０１４９】
なお、画像処理システム１は、交通流調査の他、例えばベルトコンベア等によって搬送される物品数の計数等にも適用することができる。具体的には、荷物の取り扱い数の計数、及び製品の生産数の計数等に適用することができる。
【０１５０】
また、各実施形態では、図１４または図２２のステップＳ５０〜Ｓ７０の処理を繰り返すことで、移動体が有する全ての部分形状面の面種別を推定したが、これに限定されるものではない。例えば、部分形状面の面種別が水平面でないと推定された部分形状面が現れた時点でステップＳ５０〜Ｓ７０の処理を中断し、移動体を車両４と判定するようにしてもよい。
【０１５１】
また、各実施形態では、図１４または図２２のステップＳ８０の処理において、面種別が垂直面または傾斜面と推定された部分形状面が少なくとも１つ存在する場合に、撮像動画像に含まれる移動体は車両４であると判定した。しかし、判定基準はこれに限られるものではなく、例えば全ての部分形状面の面種別が水平面と推定された場合に、撮像動画像に含まれる移動体は影９であると判定するようにしてもよい。
【０１５２】
以上、各実施形態を用いて開示の技術を説明したが、開示の技術は各実施形態に記載の範囲には限定されない。開示の技術の要旨を逸脱しない範囲で各実施形態に多様な変更又は改良を加えることができ、当該変更又は改良を加えた形態も開示の技術の技術的範囲に含まれる。例えば、開示の技術の要旨を逸脱しない範囲で処理の順序を変更してもよい。
【０１５３】
以上の第１実施形態及び第２実施形態を含む実施形態に関し、更に以下の付記を開示する。
【０１５４】
（付記１）
コンピュータに、
路面を移動する移動体を撮像した画像から、前記移動体に前記路面と交差する面が含まれるか否かを推定し、
前記移動体に前記路面と交差する面が含まれる場合に、前記移動体は有体物であると判定する
ことを含む処理を実行させるための画像処理プログラム。
【０１５５】
（付記２）
前記画像に複数の前記移動体が撮像されている場合、前記移動体毎に前記路面と交差する面が含まれるか否かを推定し、
前記移動体毎に、前記移動体が有体物であるか判定する
付記１記載の画像処理プログラム。
【０１５６】
（付記３）
コンピュータに、
撮像領域を固定して、路面を移動する同じ移動体を異なるタイミングで撮像した第１の画像及び第２の画像の各々から、前記移動体が有する、画像の水平方向に沿った複数の水平線を抽出し、
前記第１の画像から抽出した前記複数の水平線の各々に対して、前記第２の画像から抽出した前記複数の水平線の中で前記移動体の同じ箇所を示す水平線を対応付け、
前記第１の画像に含まれる前記複数の水平線から選択した第１の水平線ペアを境界線とする第１の面と、前記第１の水平線ペアに対応し、かつ、前記第２の画像から抽出した第２の水平線ペアを境界線とする第２の面と、の複数の組み合わせの中に、前記第１の面及び第２の面が前記路面と交差する組み合わせが含まれる場合に、前記移動体は前記路面と交差する面を有すると推定する
ことを含む処理を実行させるための画像処理プログラム。
【０１５７】
（付記４）
前記移動体の進行方向と、前記第１の画像及び前記第２の画像の撮像位置から前記第１の水平線ペア及び前記第２の水平線ペアの各水平線を各々結ぶ複数の直線と、の成す角度によって表される、前記複数の直線の各々の傾きを用いた条件式に基づいて、前記第１の面及び前記第２の面が前記路面と交差するか否かを推定する
請求項３記載の画像処理プログラム。
【０１５８】
（付記５）
前記条件式は、前記第１の面及び前記第２の面が共に前記路面に平行である場合に予め定めた値になるよう設定された式であり、
前記第１の水平線ペア及び前記第２の水平線ペアの各水平線に対応する前記複数の直線の傾きから算出した前記条件式の値の絶対値が閾値以上である場合に、前記第１の面及び前記第２の面が前記路面と交差すると推定する
付記４記載の画像処理プログラム。
【０１５９】
（付記６）
前記第１の水平線ペアは、前記第１の画像から抽出した前記複数の水平線のうち、隣り合う水平線のペアであり、
前記第１の面は、前記第１の水平線ペアによって形成される面であり、
前記第１の面に、前記移動体の画像が含まれないとみなせる場合、前記第１の画像を前記第１の面の位置で前記第１の水平線ペアに沿って分割し、前記第１の画像を分割した分割画像毎に、前記分割画像に撮像されている前記移動体が前記路面と交差する面を有するか否かを推定する
付記３〜付記５の何れか１項に記載の画像処理プログラム。
【０１６０】
（付記７）
コンピュータに、
路面を移動する移動体を撮像した画像から、前記移動体に前記路面と交差する面が含まれるか否かを推定し、
前記移動体に前記路面と交差する面が含まれる場合に、前記移動体は有体物であると判定する
ことを含む処理を実行させる画像処理方法。
【０１６１】
（付記８）
前記画像に複数の前記移動体が撮像されている場合、前記移動体毎に前記路面と交差する面が含まれるか否かを推定し、
前記移動体毎に、前記移動体が有体物であるか判定する
付記７記載の画像処理方法。
【０１６２】
（付記９）
コンピュータに、
撮像領域を固定して、路面を移動する同じ移動体を異なるタイミングで撮像した第１の画像及び第２の画像の各々から、前記移動体が有する、画像の水平方向に沿った複数の水平線を抽出し、
前記第１の画像から抽出した前記複数の水平線の各々に対して、前記第２の画像から抽出した前記複数の水平線の中で前記移動体の同じ箇所を示す水平線を対応付け、
前記第１の画像に含まれる前記複数の水平線から選択した第１の水平線ペアを境界線とする第１の面と、前記第１の水平線ペアに対応し、かつ、前記第２の画像から抽出した第２の水平線ペアを境界線とする第２の面と、の複数の組み合わせの中に、前記第１の面及び第２の面が前記路面と交差する組み合わせが含まれる場合に、前記移動体は前記路面と交差する面を有すると推定する
ことを含む処理を実行させる画像処理方法。
【０１６３】
（付記１０）
前記移動体の進行方向と、前記第１の画像及び前記第２の画像の撮像位置から前記第１の水平線ペア及び前記第２の水平線ペアの各水平線を各々結ぶ複数の直線と、の成す角度によって表される、前記複数の直線の各々の傾きを用いた条件式に基づいて、前記第１の面及び前記第２の面が前記路面と交差するか否かを推定する
付記９記載の画像処理方法。
【０１６４】
（付記１１）
前記条件式は、前記第１の面及び前記第２の面が共に前記路面に平行である場合に予め定めた値になるよう設定された式であり、
前記第１の水平線ペア及び前記第２の水平線ペアの各水平線に対応する前記複数の直線の傾きから算出した前記条件式の値の絶対値が閾値以上である場合に、前記第１の面及び前記第２の面が前記路面と交差すると推定する
付記１０記載の画像処理方法。
【０１６５】
（付記１２）
前記第１の水平線ペアは、前記第１の画像から抽出した前記複数の水平線のうち、隣り合う水平線のペアであり、
前記第１の面は、前記第１の水平線ペアによって形成される面であり、
前記第１の面に、前記移動体の画像が含まれないとみなせる場合、前記第１の画像を前記第１の面の位置で前記第１の水平線ペアに沿って分割し、前記第１の画像を分割した分割画像毎に、前記分割画像に撮像されている前記移動体が前記路面と交差する面を有するか否かを推定する
付記９〜付記１１の何れか１項に記載の画像処理方法。
【０１６６】
（付記１３）
路面を移動する移動体を撮像した画像から、前記移動体に前記路面と交差する面が含まれるか否かを推定する推定部と、
前記推定部により、前記移動体に前記路面と交差する面が含まれると推定した場合に、前記移動体は有体物であると判定する判定部と、
を含む画像処理装置。
【０１６７】
（付記１４）
前記推定部は、前記画像に複数の前記移動体が撮像されている場合、前記移動体毎に前記路面と交差する面が含まれるか否かを推定し、
前記判定部は、前記移動体毎に、前記移動体が有体物であるか判定する
付記１３記載の画像処理装置。
【０１６８】
（付記１５）
撮像領域を固定して、路面を移動する同じ移動体を異なるタイミングで撮像した第１の画像及び第２の画像の各々から、前記移動体が有する、画像の水平方向に沿った複数の水平線を抽出する抽出部と、
前記抽出部により前記第１の画像から抽出した前記複数の水平線の各々に対して、前記抽出部により前記第２の画像から抽出した前記複数の水平線の中で前記移動体の同じ箇所を示す水平線を対応付ける対応付け部と、
前記第１の画像に含まれる前記複数の水平線から第１の水平線ペアを選択すると共に、前記第１の水平線ペアに対応し、かつ、前記第２の画像から抽出した第２の水平線ペアを選択する選択部と、
前記選択部により選択された前記第１の水平線ペアを境界線とする第１の面と、前記選択部により選択された前記第２の水平線ペアを境界線とする第２の面と、の複数の組み合わせの中に、前記第１の面及び第２の面が前記路面と交差する組み合わせが含まれる場合に、前記移動体は前記路面と交差する面を有すると推定する推定部と、
含む画像処理装置。
【０１６９】
（付記１６）
前記推定部は、前記移動体の進行方向と、前記第１の画像及び前記第２の画像の撮像位置から前記第１の水平線ペア及び前記第２の水平線ペアの各水平線を各々結ぶ複数の直線と、の成す角度によって表される、前記複数の直線の各々の傾きを用いた条件式に基づいて、前記第１の面及び前記第２の面が前記路面と交差するか否かを推定する
付記１５記載の画像処理装置。
【０１７０】
（付記１７）
前記条件式は、前記第１の面及び前記第２の面が共に前記路面に平行である場合に予め定めた値になるよう設定された式であり、
前記推定部は、前記第１の水平線ペア及び前記第２の水平線ペアの各水平線に対応する前記複数の直線の傾きから算出した前記条件式の値の絶対値が閾値以上である場合に、前記第１の面及び前記第２の面が前記路面と交差すると推定する
付記１６記載の画像処理装置。
【０１７１】
（付記１８）
前記第１の水平線ペアは、前記第１の画像から抽出した前記複数の水平線のうち、隣り合う水平線のペアであり、
前記第１の面は、前記第１の水平線ペアによって形成される面であり、
前記選択部は、前記第１の面に、前記移動体の画像が含まれないとみなせる場合、前記第１の画像を前記第１の面の位置で前記第１の水平線ペアに沿って分割し、
前記推定部は、前記第１の画像を分割した分割画像毎に、前記分割画像に撮像されている前記移動体が前記路面と交差する面を有するか否かを推定する
付記１５〜付記１７の何れか１項に記載の画像処理装置。
【０１７２】
（付記１９）
コンピュータに、
路面を移動する移動体を撮像した画像から、前記移動体に前記路面と交差する面が含まれるか否かを推定し、
前記移動体に前記路面と交差する面が含まれる場合に、前記移動体は有体物であると判定する
ことを含む処理を実行させるための画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【０１７３】
（付記２０）
コンピュータに、
撮像領域を固定して、路面を移動する同じ移動体を異なるタイミングで撮像した第１の画像及び第２の画像の各々から、前記移動体が有する、画像の水平方向に沿った複数の水平線を抽出し、
前記第１の画像から抽出した前記複数の水平線の各々に対して、前記第２の画像から抽出した前記複数の水平線の中で前記移動体の同じ箇所を示す水平線を対応付け、
前記第１の画像に含まれる前記複数の水平線から選択した第１の水平線ペアを境界線とする第１の面と、前記第１の水平線ペアに対応し、かつ、前記第２の画像から抽出した第２の水平線ペアを境界線とする第２の面と、の複数の組み合わせの中に、前記第１の面及び第２の面が前記路面と交差する組み合わせが含まれる場合に、前記移動体は前記路面と交差する面を有すると推定する
ことを含む処理を実行させるための画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【符号の説明】
【０１７４】
１・・・画像処理システム、３,３Ａ・・・画像処理装置、４・・・車両、５・・・カメラ、６・・・道路、７・・・撮像範囲、９・・・影、１０・・・入力部、１２・・・抽出部、１４・・・対応付け部、１６、１６Ａ・・・選択部、１８・・・推定部、２０,２０Ａ・・・判定部、２２・・・出力部、３０・・・分割画像、３１・・・背景画像、３２・・・分割画像、１００、１００Ａ・・・コンピュータ、１０２・・・ＣＰＵ、１０４・・・メモリ、１０６・・・記憶部、１０８・・・バス、１１２・・・入力装置、１１４・・・出力装置、１１６・・・記録媒体、１２０,１２０Ａ・・・画像処理プログラム
【図１】
2016224647.tif 000014
【図２】
2016224647.tif 000015
【図３】
2016224647.tif 000016
【図４】
2016224647.tif 000017
【図５】
2016224647.tif 000018
【図６】
2016224647.tif 000019
【図７】
2016224647.tif 000020
【図８】
2016224647.tif 000021
【図９】
2016224647.tif 000022
【図１０】
2016224647.tif 000023
【図１１】
2016224647.tif 000024
【図１２】
2016224647.tif 000025
【図１３】
2016224647.tif 000026
【図１４】
2016224647.tif 000027
【図１５】
2016224647.tif 000028
【図１６】
2016224647.tif 000029
【図１７】
2016224647.tif 000030
【図１８】
2016224647.tif 000031
【図１９】
2016224647.tif 000032
【図２０】
2016224647.tif 000033
【図２１】
2016224647.tif 000034
【図２２】
2016224647.tif 000035
【図２３】
2016224647.tif 000036
【図２４】
2016224647.tif 000037
【図２５】
2016224647.tif 000038
【図２６】
2016224647.tif 000039
【図２７】
2016224647.tif 000040
【図２８】
2016224647.tif 000041