(57)【特許請求の範囲】
【請求項１】
車両前方の、近距離の路面を含む広視野角の第１シ−ンおよび遠距離の路面を含む狭視野角の第２シ−ンを撮影するための撮影装置；
第１シ−ンおよび第２シ−ンの撮影画面の濃度エッジ点を検出する特徴点検出手段；
第１シ−ンおよび第２シ−ンの撮影画面の前記濃度エッジ点の画面上の位置をそれぞれ、車両の前後軸の水平面投影線を１軸とする同一の道路系座標上の位置に変換する座標値変換手段；および、
該道路系座標上の、第１シ−ン起源の濃度エッジ点および第２シ−ン起源の濃度エッジ点の全体の連なりを近似する線を算出する近似線検出手段；
を備える車両前方の路上線検出装置。
【請求項２】
車両の前後軸に対して水平方向に第１角度をなす車両前方の、近距離の路面を含む広視野角の第１シ−ン、および、車両の前後軸に対して水平方向に第２角度をなす車両前方の、遠距離の路面を含む狭視野角の第２シ−ン、を撮影するための撮影装置；
第１シ−ンおよび第２シ−ンの撮影画面の濃度エッジ点を検出する特徴点検出手段；
第１シ−ンの撮影画面の前記濃度エッジ点の画面上の位置を、第１シ−ンの視野中心線の水平面投影線を１軸とする道路系座標上の位置に変換する第１座標値変換手段；
第２シ−ンの撮影画面の前記濃度エッジ点の画面上の位置を、第２シ−ンの視野中心線の水平面投影線を１軸とする道路系座標上の位置に変換する第２座標値変換手段；
第１座標値変換手段が変換した濃度エッジ点の位置を第１角度分回転した、車両の前後軸の水平面投影線を１軸とする道路系座標上の位置に変換する第１回転補正手段；
第２座標値変換手段が変換した濃度エッジ点の位置を第２角度分回転した、前記、車両の前後軸の水平面投影線を１軸とする道路系座標上の位置に変換する第２回転補正手段；
前記、車両の前後軸の水平面投影線を１軸とする道路系座標上の、第１シ−ン起源の濃度エッジ点および第２シ−ン起源の濃度エッジ点の全体の連なりを近似する線を算出する近似線検出手段；および、
第１シ−ン上の、前記近似線対応の濃度エッジ点を追跡するために前記第１角度を変更し、第２シ−ン上の、前記近似線対応の濃度エッジ点を追跡するために前記第２角度を変更する撮影方向制御手段；
を備える車両前方の路上線検出装置。
【請求項３】
撮影方向制御手段は、第１シ−ン上の２つの近似線の実質上中間点を第１シ−ンの中央とする前記第１角度を定め、第２シ−ン上の２つの近似線の実質上中間点を第２シ−ンの中央とする前記第２角度を定める、請求項２記載の車両前方の路上線検出装置。
【請求項４】
装置は更に、第１シ−ン上および第２シ−ン上それぞれ２つの近似線の間に存在する物体を検出する前方物体検出手段；を備え、
撮影方向制御手段は、前方物体検出手段が第１シ−ン領域に物体を検出しているときには該物体を第１シ−ンの実質上中央とする前記第１角度を定め、検出していないときには第１シ−ン上の２つの近似線の実質上中間点を第１シ−ンの中央とする前記第１角度を定め、前方物体検出手段が第２シ−ン領域に物体を検出しているときには該物体を第２シ−ンの実質上中央とする前記第２角度を定め、検出していないときには第２シ−ン上の２つの近似線の実質上中間点を第２シ−ンの中央とする前記第２角度を定める、請求項２記載の車両前方の路上線検出装置。
【請求項５】
近似線検出手段は、濃度エッジ点の全体の連なりを円弧を最小自乗法で算出する、請求項１，請求項２，請求項３又は請求項４記載の車両前方の路上線検出装置。
【請求項６】
撮影装置は、車両前方の近距離の路面を撮影する広視野角の第１カメラおよび車両前後軸に対する水平方向の第１カメラの撮影方向を変更するために該カメラを回転駆動する第１回転駆動装置、および、車両前方の遠距離の路面を撮影する狭視野角の第２カメラおよび車両前後軸に対する水平方向の第２カメラの撮影方向を変更するために該カメラを回転駆動する第２回転駆動装置、を含む請求項１，請求項２，請求項３，請求項４又は請求項５記載の車両前方の物体検出装置。
【請求項７】
撮影装置は、車両前方の近距離の路面を撮影する広視野角の第１カメラおよび車両前後軸に対する水平方向の第１カメラの撮影方向を変更するために該カメラを回転駆動する第１回転駆動装置，車両前方の中距離の路面を撮影する中視野角の第２カメラおよび車両前後軸に対する水平方向の第２カメラの撮影方向を変更するために該カメラを回転駆動する第２回転駆動装置、および、車両前方の遠距離の路面を撮影する狭視野角の第３カメラおよび車両前後軸に対する水平方向の第３カメラの撮影方向を変更するために該カメラを回転駆動する第３回転駆動装置、を含む請求項１，請求項２，請求項３，請求項４又は請求項５記載の車両前方の物体検出装置。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、車両前方の物体検出に関し、特に、これに限定する意図ではないが、車両上において車両前方の、路面を含むシ−ンを撮影し、撮影画面上で、路面上の走行レ−ン（を区画する白線）および先行車両（又は前方障害物）の検出ならびに先行車両に対する自車両の距離を検出する、路上物体検出装置に関する。
【０００２】
【従来の技術】
この種の検出装置の一例が、特開昭６４−１５６０５号公報に開示されている。これにおいては、車両に搭載された撮影装置で得た、車両前方の路面を含むシ−ンをｘ，ｙ直交座標系画面に表わす画像デ−タの、ｘ軸に対して４５度の角度をなす方向の微分値を算出してそれが設定値以上のｘ，ｙ直交座標上の位置を特徴点として、特徴点の連なりを細線に処理し、所定長以上の細線を摘出して、車両上のテレビカメラから前方を撮影した場合の、画面上の白線の特徴に基づいて設定された条件を満す細線を、路面上の白線と認識する。すなわち自車が走行中のレ−ンの左，右端白線を表わす二直線を得る。二直線の交点を求めて、該交点から自車両までの二直線間の領域（３角形領域）で物体の存否を検出し、物体を検出すると自車両から該物体までの距離（物体が先行車両であると車間距離）を算出する。自車が走行中のレ−ン（自車走行レ−ン）が直線である場合、該レ−ン上の先行車両はすべて前記３角形領域に存在する（ル−フは外れても、車底は該領域内にある）。ところが、左，右端白線を近似する二直線は、カメラに近い位置の左，右端白線像に基づいて決定されるので、自車レ−ンが自車前後でカ−ブしていると、あるいは前方でカ−ブしていると、直線レ−ンの場合には無限遠点と見なしうる前記二直線の交点は、自車レ−ンの遠方点よりも左（自車レ−ンが右にカ−ブの場合）又は右（左にカ−ブの場合）にずれる。すなわち、前記交点は、自車レ−ンが右にカ−ブしているときには自車レ−ンの遠方点より左側にずれ、左にカ−ブしているときには右側にずれる。このため、カ−ブがあるところでは、前記３角形領域内での物体探索のみでは、前方物体（先行車両又は障害物）、特に遠方に存在する物体、の検知に失敗する確率が高くなる。
【０００３】
特開平１−２７６２１４号公報は、道路沿いの指標を車両上のカメラで撮影して車両上で車両位置情報を生成し、車両位置情報と目的地情報とを対比して最適経路を決定し、決定した経路に従って車両速度および車輪ステアリングを制御する、との車両自動運転を提案し、道路沿いの指標を撮影するためにカメラの撮影方向を水平方向および垂直方向に変更する、カメラ用の２次元姿勢変更機構を提案している。しかしこの提案は、決定した最適経路の通りに道路が存在すること、ならびに、該道路上に先行車両が存在しないことを前提としている。実際には、現実の道路の追跡（存在確認）および先行車両の有無ならびに車間距離の確実な検出が必要である。
【０００４】
特開平６−１２４３５号公報は、カメラで先行車両を追跡するために、先行車両像が画面上で実質上一定サイズとなるように焦点距離およびズ−ムを制御し、しかも先行車両像が画面上略中央になるようにカメラの姿勢を水平方向および垂直方向に制御する追従装置を提示している。この追従制御は、最初の先行車両の検出又は特定、ならびに追従中の先行車両が道をそれて自車前方から消えたときの、次の先行車両の探索が大前提となるが、これに関する教示はない。また、追従中の先行車両が道をそれて自車進行方向から外れるときの、誤追従に対する処置方の技術の提示もない。
【０００５】
【発明が解決しようとする課題】
道路上の走行レ−ンおよび又は先行車両の検出は、車両が走行しているため、サ−チすべき距離が長い。例えば、先行車両検出に基づいた車間距離自動制御を行なう場合、単純化して言うと、時速４０Ｋｍ程度の走行中には、３０ｍ程度前方までサ−チすれば一応の安全性は確保されるかも知れないが、８０Ｋｍ程度の場合には５０ｍ以上の長区間に渡っての先行車両検知が必要となるかも知れない。いずれにしても、車両走行速度の範囲が広いため、高速走行を想定すれば５０ｍ以上の長区間を、先行車両が存在するか否か自動検出するのが好ましい。
【０００６】
ところが、近距離では隣接車両の側方接近やレ−ン変更に備えるため広角度で車両検出するのが好ましく、カメラを広視野（広角）にするのが良いが、そうすると、遠距離の物体分解能が低下し検出精度が悪くなる。遠距離検出のために狭視野（望遠）にすると、近距離（特に隣接レ−ン）が漏れて直近車両（特に隣接レ−ン）が検知できなくなる。加えて、道路がカ−ブしている場合には、カ−ブの先が画面から外れ、カ−ブの先の車両を認識できない。
【０００７】
したがって、自車レ−ン上を走行する先行車両が確実に特定されている場合にこれをタ−ゲットとして追跡する制御は比較的に簡単であるが、その前段階の、道路状態（カ−ブ／直進路）の検出，先行車両等の存否検出および自車レ−ン前方の車両又は物体の検出又は特定、ならびに、前方の車両又は物体が自車レ−ン上にあるか否かの確認は、難かしい問題があり、高精度でこのように検出又は特定もしくは確認を行なう技術が望まれている。
【０００８】
本発明は、路上前方、特にカ−ブ路前方、の物体を極力早期に（それが遠方にある間に）検出することを第１の目的とし、検出精度を向上することを第２の目的とする。
【０００９】
【課題を解決するための手段】
（１）本発明の第１実施態様の車両前方の路上線検出装置は、車両前方の、近距離の路面を含む広視野角の第１シ−ンおよび遠距離の路面を含む狭視野角の第２シ−ン、を撮影するための撮影装置（１６ｂ，１６ｄ／２６ｂ，２６ｄ／３６ｂ，３６ｄ）；
第１シ−ンおよび第２シ−ンの撮影画面の濃度エッジ点（特徴点）を検出する特徴点検出手段（１００〜３００）；
第１シ−ンおよび第２シ−ンの撮影画面の前記濃度エッジ点（特徴点）の画面上の位置をそれぞれ、車両の前後軸の水平面投影線を１軸（Ｚ軸）とする同一の道路系座標上の位置に変換する座標値変換手段（１００〜３００）；および、
該道路系座標上の、第１シ−ン起源の濃度エッジ点および第２シ−ン起源の濃度エッジ点の全体の連なりを近似する線を算出する近似線検出手段（１００）；
を備える。なお、理解を容易にするためにカッコ内には、図面に示し後述する実施例の対応要素に付した記号又は対応事項を、参考までに付記した。
【００１０】
これによれば、第１シ−ンは、車両前方近距離の左右方向に広い範囲のものであるので、近距離（１０〜３０ｍ）の自車走行レ−ンおよび該レ−ン上の先行車両はもちろん隣接レ−ン上の自車よりやや前方の車両（側方車両）を含み、第１シ−ンの撮影画面上においてこれらの分解能は高い。したがって第１シ−ン撮影画像の画像デ−タに基づいて自車走行レ−ンを区画する左，右白線を確実に検出しうる。
【００１１】
これに対して第２シ−ンは、車両前方遠距離（３０〜６０ｍ，６０〜９０ｍ）を狭視野角で撮影されるものであるので、第２シ−ンの撮影画面上において遠方の路面および車両の分解能が高い。したがって第２シ−ン撮影画像の画像デ−タに基づいて遠方路面上の白線を、高精度で検出しうる。
【００１２】
撮影装置（１６ｂ，１６ｄ／２６ｂ，２６ｄ／３６ｂ，３６ｄ）が、上述の第１シ−ンと第２シ−ンを撮影し、しかも座標値変換手段（１００〜３００）が、第１シ−ンおよび第２シ−ンの撮影画面の前記濃度エッジ点（特徴点）の画面上の位置をそれぞれ、車両の前後軸の水平面投影線を１軸（Ｚ軸）とする同一の道路系座標上の位置に変換するので、車両前方の路面を上方から見おろした形の濃度エッジ点分布、すなわち路面の平面図上の濃度エッジ点分布が得られる。このエッジ点分布は、車両から遠方（３０〜６０ｍ，６０〜９０ｍ）でも、（狭視野角の第２シ−ンとして撮影したものであるので）、精度（分解能）が高い。
【００１３】
しかして、近似線検出手段（１００）が、この道路系座標上の、第１シ−ン起源の濃度エッジ点および第２シ−ン起源の濃度エッジ点の全体の連なりを近似する線を算出するので、得られる線は、車両前方近距離（１０〜３０ｍ）から遠方（３０〜６０ｍ，６０〜９０ｍ）に及ぶ長距離に渡る路上白線の近似線となり、上述のように車両前方近距離（１０〜３０ｍ）から遠方（３０〜６０ｍ，６０〜９０ｍ）に渡って分解能が高いので、近似の信頼度が高い線が得られる。このようにして得た線（通常、自車走行レ−ンを区画する右白線と左白線を近似する２本の線）を先行車両検出のためのサ−チ領域設定の基準とすることにより、先行車両検出精度が向上する。また、道路がカ−ブしている場合には、前方のカ−ブを早期に検知でき、しかもカ−ブ半径Ｒ算出の精度と信頼性も高くなる。
【００１４】
【発明の実施の形態】
（２）本発明の第２実施態様の車両前方の路上線検出装置は、車両の前後軸に対して水平方向に第１角度（Ａ）をなす車両前方の、近距離（１０〜３０ｍ）の路面を含む広視野角の第１シ−ン、および、車両の前後軸に対して水平方向に第２角度（Ｂ，Ｃ）をなす車両前方の、遠距離（３０〜６０ｍ，６０〜９０ｍ）の路面を含む狭視野角の第２シ−ン、を撮影するための撮影装置（１６ｂ，１６ｄ／２６ｂ，２６ｄ／３６ｂ，３６ｄ）；
第１シ−ンおよび第２シ−ンの撮影画面の濃度エッジ点（特徴点）を検出する特徴点検出手段（１００〜３００）；
第１シ−ンの撮影画面の前記濃度エッジ点の画面上の位置を、第１シ−ンの視野中心線の水平面投影線を１軸とする道路系座標上の位置に変換する第１座標値変換手段（１００）；
第２シ−ンの撮影画面の前記濃度エッジ点の画面上の位置を、第２シ−ンの視野中心線の水平面投影線を１軸とする道路系座標上の位置に変換する第２座標値変換手段（２００，３００）；
第１座標値変換手段（１００）が変換した濃度エッジ点の位置を第１角度（Ａ）分回転した、車両の前後軸の水平面投影線を１軸（Ｚ軸）とする道路系座標上の位置に変換する第１回転補正手段（１００）；
第２座標値変換手段（２００，３００）が変換した濃度エッジ点の位置を第２角度（Ｂ，Ｃ）分回転した、前記、車両の前後軸の水平面投影線を１軸（Ｚ軸）とする道路系座標上の位置に変換する第２回転補正手段（２００，３００）；
前記、車両の前後軸の水平面投影線を１軸（Ｚ軸）とする道路系座標上の、第１シ−ン起源の濃度エッジ点および第２シ−ン起源の濃度エッジ点の全体の連なりを近似する線を算出する近似線検出手段（１００）；および、
第１シ−ン上の、前記近似線対応の濃度エッジ点を追跡するために前記第１角度（Ａ）を変更し、第２シ−ン上の、前記近似線対応の濃度エッジ点を追跡するために前記第２角度（Ｂ）を変更する撮影方向制御手段（１１，２１，３１，１６ｅ，２６ｅ，３６ｅ，１００）；を備える。
【００１５】
車両の前後軸に対する撮影装置の撮影方向が固定であると、道路がカ−ブしている場合には、遠方の路面が第１および第２シ−ン（特に第２シ−ン）から外れる可能性が高いが、撮影方向制御手段（１１，２１，３１，１６ｅ，２６ｅ，３６ｅ，１００）が、前記近似線対応の濃度エッジ点を追跡して第１角度（Ａ）および第２角度（Ｂ，Ｃ）を変更するので、第１シ−ンおよび第２シ−ンはいずれも常に路上白線を含むものとなり、道路がカ−ブしていても路上白線が画面から外れる可能性が低減する。すなわちカ−ブ路での遠方の白線検出の信頼性が高い。
【００１６】
（３）上記（２）の一実施例では、撮影方向制御手段（１１，２１，３１，１６ｅ，２６ｅ，３６ｅ，１００）は、第１シ−ン上の２つの近似線の実質上中間点を第１シ−ンの中央とする前記第１角度（Ａ）を定め、第２シ−ン上の２つの近似線の実質上中間点を第２シ−ンの中央とする前記第２角度（Ｂ，Ｃ）を定める。これによれば、第１シ−ンおよび第２シ−ンの画面は共に、自車走行レ−ンを区画する右白線と左白線が画面の略右半分と左半分に存在するものとなり、路上白線の追跡、特にカ−ブ路での追跡の信頼度が高い。
【００１７】
（４）上記（２）の一実施例では、装置は更に、第１シ−ン上および第２シ−ン上それぞれ２つの近似線の間に存在する物体（先行車両／路上障害物）を検出する前方物体検出手段（１００）；を備え、
撮影方向制御手段（１１，２１，３１，１６ｅ，２６ｅ，３６ｅ，１００）は、前方物体検出手段（１００）が第１シ−ン領域に物体（先行車両／路上障害物）を検出しているときには該物体を第１シ−ンの実質上中央とする前記第１角度（Ａ）を定め、検出していないときには第１シ−ン上の２つの近似線の実質上中間点を第１シ−ンの中央とする前記第１角度（Ａ）を定め、前方物体検出手段（１００）が第２シ−ン領域に物体（先行車両／路上障害物）を検出しているときには該物体を第２シ−ンの実質上中央とする前記第２角度を定め、検出していないときには第２シ−ン上の２つの近似線の実質上中間点を第２シ−ンの中央とする前記第２角度（Ａ）を定める。
【００１８】
これによれば、第１シ−ン領域に先行車両があるときにはそれを追跡するように第１角度（Ａ）が変更され、第２シ−ン領域に先行車両があるときにはそれを追跡するように第２角度（Ｂ）が変更される。すなわち先行車両が追跡される。しかし、自車走行レ−ンを区画する右白線と左白線の検出が先行車両検出に先立って行なわれるので、先行車両が自車走行レ−ンを外れると、自動的に走行レ−ン白線の追跡となる。自車走行レ−ンに先行車両が進入すると、それから該先行車両を追跡することになる。
【００１９】
（５）本発明の一実施例では、近似線検出手段（１００）は、濃度エッジ点の全体の連なりを円弧として最小自乗法で算出する。これにより道路がカ−ブしている場合、カ−ブ半径が簡単に求まる。
【００２０】
（６）本発明の第３実施態様では、撮影装置（１６ｂ，１６ｄ／２６ｂ，２６ｄ／３６ｂ，３６ｄ）は、車両前方の近距離（１０〜３０ｍ）の路面を撮影する広視野角の第１カメラ（１６ｂ）および車両前後軸に対する水平方向の第１カメラ（１６ｂ）の撮影方向を変更するために該カメラを回転駆動する第１回転駆動装置（１６ｄ）、および、車両前方の遠距離（３０〜６０ｍ，６０〜９０ｍ）の路面を撮影する狭視野角の第２カメラ（２６ｂ，３６ｂ）および車両前後軸に対する水平方向の第２カメラ（２６ｂ，３６ｂ）の撮影方向を変更するために該カメラを回転駆動する第２回転駆動装置（２６ｄ，３６ｄ）、を含む。
【００２１】
（７）第１〜第３実施態様に共通の一実施例では、撮影装置（１６ｂ，１６ｄ／２６ｂ，２６ｄ／３６ｂ，３６ｄ）は、車両前方の近距離（１０〜３０ｍ）の路面を撮影する広視野角の第１カメラ（１６ｂ）および車両前後軸に対する水平方向の第１カメラ（１６ｂ）の撮影方向を変更するために該カメラを回転駆動する第１回転駆動装置（１６ｄ），車両前方の中距離（３０〜６０ｍ）の路面を撮影する中視野角の第２カメラ（２６ｂ）および車両前後軸に対する水平方向の第２カメラ（２６ｂ）の撮影方向を変更するために該カメラを回転駆動する第２回転駆動装置（２６ｄ）、および、車両前方の遠距離（６０〜９０ｍ）の路面を撮影する狭視野角の第３カメラ（３６ｂ）および車両前後軸に対する水平方向の第３カメラ（３６ｂ）の撮影方向を変更するために該カメラを回転駆動する第３回転駆動装置（３６ｄ）、を含む。
【００２２】
本発明の他の目的および特徴は、図面を参照した以下の実施例の説明より明らかになろう。
【００２３】
【実施例】
図１の（ａ）に本発明の一実施例の構成を示す。それぞれ回転機構１６ｄ，２６ｄおよび３６ｄで支持された第１〜第３テレビカメラ１６ｂ，２６ｂおよび３６ｂは、第１〜第３画像処理装置１００〜３００に接続されている。回転機構１６ｄ，２６ｄおよび３６ｄは、それぞれ回転駆動用の電気モ−タおよび減速機を内蔵するものであり、減速機の出力回転軸にカメラ（１６ｂ，２６ｂ，３６ｂ）が固着されている。
【００２４】
第１〜第３回転機構１６ｄ，２６ｄおよび３６ｄは、１つの支持フレ−ムで支持され図１の（ｂ）に示すように、車両ＭＣＲの車内のフロントウィンドウの中央上部付近に設置されており、第１〜第３テレビカメラ１６ｂ，２６ｂおよび３６ｂのそれぞれは、車両前方のシ−ンを撮影して１フレ−ム当り５１２×５１２画素のアナログ信号を出力する。
【００２５】
第１カメラ１６ｂは広角カメラであり、それより３０ｍ前方の、視野中心線に直交する、略２４ｍ×２４ｍの面積を５１２×５１２画素に投影する。視野中心線は、水平路面の場合で車両の前方略１５ｍで路面と交わる。この交わる点に第１カメラ１６ｂの焦点が合せてある。第１カメラ１６ｂの撮影画面が例えば図２に示すものであり路面が水平であると、画面上のＹ＝１５０にある路面が車両前方３０ｍであり、Ｙ＝３５０にある路面が車両前方１０ｍである。後述の白線検出および車両検出は、Ｙ＝１５０〜３５０の範囲（特徴点検出ウィンドウ２）内で行なわれる。
【００２６】
第２カメラ２６ｂは標準画角カメラであり、それより６０ｍ前方の、視野中心線に直交する、略１９ｍ×１９ｍの面積を５１２×５１２画素に投影する。視野中心線は、水平路面の場合で車両の前方略４５ｍで路面と交わる。この交わる点に第２カメラ２６ｂの焦点が合せてある。この第２カメラ２６ｂの撮影画面上では、Ｙ＝１５０にある路面が車両前方６０ｍであり、Ｙ＝３５０にある路面が車両前方３０ｍである。後述の白線検出および車両検出は、Ｙ＝１５０〜３５０の範囲（特徴点検出ウィンドウ２）内で行なわれる。
【００２７】
第３カメラ３６ｂは望遠カメラであり、それより９０ｍ前方の、視野中心線に直交する、略１３ｍ×１３ｍの面積を５１２×５１２画素に投影する。視野中心線は、水平路面の場合で車両の前方略７５ｍで路面と交わる。この交わる点に第３カメラ３６ｂの焦点が合せてある。この第３カメラ３６ｂの撮影画面上では、Ｙ＝１５０にある路面が車両前方９０ｍであり、Ｙ＝３５０にある路面が車両前方６０ｍである。後述の白線検出および車両検出は、Ｙ＝１５０〜３５０の範囲（特徴点検出ウィンドウ２）内で行なわれる。
【００２８】
第１〜第３カメラ１６ｂ，２６ｂおよび３６ｂそれぞれの、車両前方距離と撮影範囲（画面全体）および、後述の白線検出および車両検出を行なう領域（Ｙ＝１５０〜３５０：特徴点検出ウィンドウ２の領域）を図３に示す。また、図４の（ａ）には、第１〜第３カメラ１６ｂ，２６ｂおよび３６ｂそれぞれの、車両前方距離と撮影横幅との関係を示し、図４の（ｂ）には、車両前方距離と撮影画面上での距離計測の誤差σの関係を示す。
【００２９】
道路がカ−ブしている場合は、視角が狭いカメラほど路面から外れた方向を撮影してしまう可能性が高い。したがってこの実施例では、回転機構１６ｄ，２６ｄおよび３６ｄでカメラ１６ｂ，２６ｂおよび３６ｂを支持して、主に画像処理装置１００の後述のＣＰＵ１１により、車両前方１０ｍ〜９０ｍの走行レ−ン検出および前方車両検出を行ない、前方車両を検出しないときには、図５に示すように、カメラ１６ｂ，２６ｂおよび３６ｂの視野中心をレ−ン中央に合すように、カメラ１６ｂ，２６ｂおよび３６ｂを個別にステアリングする。視野（上述のＹ＝１５０〜３５０）内に車両が存在する（と検出した）カメラは、該車両を視野中心に置くようにステアリングする。
【００３０】
図６に、第１画像処理装置１００の構成を示す。この画像処理装置１００は、マイクロコンピュ−タ（以下ＣＰＵという）１１を中心に構成されており、そのバスラインには、制御プログラムが格納された読み出し専用メモリ（ＲＯＭ）１２，処理中のパラメ−タが格納される読み書きメモリ（ＲＡＭ）１３、および、各種構成要素が接続された入出力ポ−ト（Ｉ／Ｏ）１５，１６等が接続されている。第１カメラ１６ｂが出力するアナログ画信号（ビデオ信号）は、Ａ／Ｄコンバ−タ１６ｃに与えられる。Ａ／Ｄコンバ−タ１６ｃにおいては、第１カメラ１６ｂよりのアナログ画信号を各画素毎に２５６階調（階調０が黒レベル、階調２５５が白レベル）のデジタルデ−タ（階調デ−タ）に変換してイメ−ジメモリ１５ａに与える。なお、イメ−ジメモリ１５ａは、一画面（５１２×５１２画素）の階調デ−タを記憶する領域を一頁とするとその数頁分の階調デ−タ記憶領域と、１ビット情報（２値デ−タ）を数画面分記憶する２値デ−タ記憶領域を有する。
【００３１】
ＣＰＵ１１は、テレビカメラコントロ−ラ１６ａを介して第１カメラ１６ｂの絞りおよび画信号の出力レベル等を制御し、Ａ／Ｄコンバ−タ１６ｃの入出力およびイメ−ジメモリ１５ａの書込み処理等を同期制御する。イメ−ジメモリ１５ａにはＤＭＡ装置１４が接続されており、ＣＰＵ１１が指定したメモリ領域に、画像処理装置２００又は３００から送られる画像デ−タを書込む。
【００３２】
回動機構１６ｄの電気モ−タはステアリングコントロ−ラ１６ｅ（のモ−タドライバ）に接続されており、ＣＰＵ１１がコントロ−ラ１６ｅに目標角度を与え、コントロ−ラ１６ｅは、回動機構１６ｄによる第１カメラ１６ｂのステアリング角度Ａを目標角度Ａｎとするように回転機構１６ｄの電気モ−タを正転駆動（右向き方向）又は逆転駆動（左向き方向）し、第１カメラ１６ｂのステアリング角度Ａが目標角度Ａｎに合致すると電気モ−タを停止する。なお、このステアリング角度Ａは、車両の前後軸（の水平面への投影線）に対するカメラ視野中心線（の水平面への投影線）のなす角度であり、両者が合致するときがステアリング角度＝０である。この実施例では、右方向（＋）に６０°、左方向（−）に６０°がステアリング範囲（角度Ａの調整範囲）である。
【００３３】
図７および図８に、第２画像処理装置２００および第３画像処理装置３００の構成を示す。これらの画像処理システム２００および３００の構成は、第１画像処理装置１００の構成と略同様である。しかし、第２，第３画像処理装置２００，３００のＤＭＡ装置２４，３４は、それぞれメモリ２５ａ，２５ｂの、ＣＰＵ２１，３１が指定した領域の画像デ−タを読出して、第１画像処理装置１００のＤＭＡ装置１４に転送し、ＤＭＡ装置１４は転送を受けた画像デ−タをメモリ１５ａの、ＣＰＵ１１が指定する領域に書込む。
【００３４】
第１画像処理装置１００のＣＰＵ１１には、第２および第３画像処理装置２００，３００のＣＰＵ２１，３１のシリアルデ−タ通信ラインが接続されており、ＣＰＵ１１（マスタ−）が、画像読取，読取画像の補正および画像デ−タ転送を第２および第３画像処理装置２００，３００のＣＰＵ２１，３１（スレ−ブ）に指示する。ＣＰＵ１１は、第１カメラ１６ｂの撮影画像デ−タおよび２００，３００から転送を受けた画像デ−タに基づいて、車両前方１０〜９０ｍの画像上の走行レ−ン（白線）の検出，カ−ブの検出および走行レ−ン上の車両（先行車両／路上障害物の場合もある）の検出を行ない、更に、検出車両があるときにはそれを画面中央とするためのステアリング角、検出車両がないときには走行レ−ン中央を画面中央とするためのステアリング角を、第１〜第３カメラ宛てそれぞれに算出し、カ−ブ情報（カ−ブ半径）および検出車両情報（前方位置）を、通信コントロ−ラ１７を介してホストマイクロコンピュ−タ（ＣＰＵを主体とするコンピュ−タシステム：以下ＭＰＵと称す）１８に転送する。第１カメラ１６ｂ宛てのステアリング角Ａｎはステアリングコントロ−ラ１６ｅに与え、第２，第３カメラ２６ｂ，３６ｂ宛てのステアリング角Ｂｎ，Ｃｎは、シリアル通信ラインを介してＣＰＵ２１および３１に転送する。これらのＣＰＵ２１，３１は、受信したステアリング角Ｂｎ，Ｃｎをステアリングコントロ−ラ２６ｅ，３６ｅに与える。
【００３５】
ＭＰＵ１８は、車両速度制御（定速走行制御／車間距離制御）および車両進行方向制御（各車輪ブレ−キ個別のブレ−キ圧制御）を行なうコンピュ−タシステムであり、ＣＰＵ１１から受信した先行車両情報およびカ−ブ情報を、車両速度制御および車両進行方向制御に用いる。
【００３６】
図９，図１０および図１１に、ＣＰＵ１１の処理動作の概要を示す。ＣＰＵ１１の処理動作の多く部分は、特開平６−２１３６６０号公報（発明の名称：像の近似直線の検出方法）に提示した車両前方の物体検出装置のＣＰＵ１の処理動作と共通又は類似であり、公知である。したがって、図９〜図１１には、該公知の処理動作と実質上同じ処理動作を表わすブロックは太線（太い実線又は太い破線）で表示し、以下においてはその内容の大要のみを記す。本実施例のＣＰＵ１１の上記公報に開示のない処理動作を表わすブロックは細線（細い実線又は細い破線）で表示した。
【００３７】
また、ＣＰＵ２１および３１がＣＰＵ１１と同様に実行する処理動作を表わすブロックは実線（太い実線又は細い実線）で示し、ＣＰＵ１１のみが実行する処理動作を表わすブロックは破線（太い破線又は細い破線）で表示した。以下、図９〜図１１を参照してＣＰＵ１１の処理動作を説明し、合せてＣＰＵ２１および２２の処理動作も説明する。
【００３８】
まず図９を参照する。第１画像処理装置１００のＣＰＵ１１は、それ自身に電源が投入されると入出力ポ−トの初期化，内部レジスタ，内部カウンタの初期化等（初期化Ａ）を行なった後、第２，第３画像処理装置２００，３００のＣＰＵ２１，３１に、画像読取を指令する（Ｔ１）。
【００３９】
次にＣＰＵ１１は、一画面のアナログ画信号を所定周期でデジタル変換してイメ−ジメモリ１５ａの入力デ−タメモリ領域に書込む（画像入力Ｂ）。ＣＰＵ２１，３１も画像読取指令に応答して同様に、一画面の画像デ−タをイメ−ジメモリ２５ａ，３５ａに書込む。
【００４０】
一画面の画像デ−タをメモリに書込むと、ＣＰＵ１１，ＣＰＵ２１およびＣＰＵ３１はそれぞれ、目標ステアリング角度Ａ，ＢおよびＣをステアリングコントロ−ラ１６ｅ，２６ｅおよび３６ｅに与える（Ａ１）。目標ステアリング角度Ａ，ＢおよびＣはそれぞれレジスタＡ，ＢおよびＣに書込まれており、初期値は０であり、後述する「カメラステアリング角の算出」（Ａ４）を実行した後は、それによって算出された値となる。
【００４１】
次にＣＰＵ１１のみ、「特徴点検出ウィンドウ１セット」（Ｃ１）〜「ロ−ル角θｒ，パン移動量Ｘｐ計算」（Ｃ５）を実行する。これらの内容を次に説明する。
【００４２】
Ｃ１．「特徴点検出ウィンドウ１セット」（図１２）
この内容を図１２の（ａ）に示す。図１２の（ｂ）に示すように、第１カメラ１６ｂの撮影画面（画像デ−タは入力デ−タメモリにある階調デ−タ）の左上を原点（０，０）に定めて、一点（０，３５０）ともう一点（５１１，５１１）を対角コ−ナとする画像領域を特徴点検出用の領域（ウィンドウ１）に定める。すなわち、定めようとする領域の左上コ−ナのＸ座標値０をレジスタＸＵＬに、Ｙ座標値３５０をレジスタＹＵＬに、該領域の右下コ−ナのＸ座標値５１１をレジスタＸＬＲに、Ｙ座標値５１１をレジスタＹＬＲに書込む（図１２の（ａ）のステップ１；カッコ内ではステップという語は省略し、ステップＮｏ．のみを記す）。これらのレジスタのそれぞれのデ−タが示す値を以下、レジスタ記号そのもので表わす。
【００４３】
次に説明する「特徴点検出（ＵＰ）」Ｃ２の処理に対して、上述の「特徴点検出ウィンドウセット」Ｃ１により、図１２の（ｂ）に示すように、２点鎖線で示すブロック（特徴点検出ウィンドウ１）が、処理対象領域に指定されたことになる。この領域は、図１２の（ｂ）に示すように、車両のボンネットの先端エッジ像を十分に含むものである。次に「特徴点検出（ＵＰ）」Ｃ２を実行する。
【００４４】
Ｃ２．「特徴点検出（ＵＰ）」Ｃ２
ここでは、特徴点検出ウィンドウ１の左下コ−ナ（０，５１１）よりＹ方向２画素上方の画素（０，５０９）から、Ｙ方向座標値を３５０まで順次小さくするＹ方向の下から上への走査により、該方向（Ｘ＝０の直線上）に分布する画素を順次に注目画素に指定して、各注目画素（Ｘｓ，Ｙｓ）に関して、それより１画素下側の画素（Ｘｓ，Ｙｓ＋１）と２画素下側の画素（Ｘｓ，Ｙｓ＋２）の階調デ−タが表わす輝度の和と、注目画素（Ｘｓ，Ｙｓ）より１画素上側の画素（Ｘｓ，Ｙｓ−１）と２画素上側の画素（Ｘｓ，Ｙｓ−２）の、入力デ−タメモリにある階調デ−タが表わす輝度の和、の差の絶対値すなわち上下方向（Ｙ方向）の階調微分値の絶対値を算出する。これを注目画素点（Ｘｓ，Ｙｓ）の階調微分値Ｄ（Ｘｓ，Ｙｓ）とする。この階調微分値Ｄ（Ｘｓ，Ｙｓ）は、注目点（Ｘｓ，Ｙｓ）の上側２画素の画像濃度和と下側２画素の画像濃度和との差の絶対値であるので、注目点を境にした上下方向（Ｙ）の濃度変化を表わし、画面上の各像の、水平方向に延びる輪郭線のところで大きい値となる。この階調微分値Ｄ（Ｘｓ，Ｙｓ）がしきい値Ｔｈ１（設定値）以上であるかをチェックして、Ｔｈ１以上であると、イメ−ジメモリ１５ａのある領域に割り当てている２値デ−タテ−ブルの、注目画素点（Ｘｓ，Ｙｓ）対応アドレスＥ（Ｘｓ，Ｙｓ）に、「１」を書込む。この情報「１」は、像の水平方向に延びる輪郭線であることを意味する。Ｙ方向にこのような処理を一ライン分（Ｘ＝０，Ｙ＝５０９〜３５０）行なうと、走査線を右方向に移して、次の一ライン分（Ｘ＝１，Ｙ＝５０９〜３５０）につき同様な処理を行なう。以下同様に、最後のライン（Ｘ＝５１１，Ｙ＝５０９〜３５０）まで同様な処理を行なう。
【００４５】
以上の処理により、イメ−ジメモリ１５ａの２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ），Ｘｓ＝０〜５１１，Ｙｓ＝５０９〜３５０）に、特徴点検出ウィンドウ１（図１２のｂ）内の像の水平方向に延びる輪郭線を示す情報が書込まれたことになる。特徴点検出ウィンドウ１は、ボンネットの先端エッジ像を含む領域に設定されているので、２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）にはボンネットの先端エッジを表わす情報が含まれている。この実施例では、ボンネットの先端エッジを直線と見なして、次の「ボンネット検出」Ｃ３で該直線を検出する。
【００４６】
Ｃ３．「ボンネット検出」Ｃ３（図１３）
まず大要を説明するとここでは、公知の「ハフ（Ｈｏｕｇｈ）変換」を用いて直線を検出する。ハフ変換は、直交座標系（Ｘ−Ｙ座標系；例えば特徴点検出ウィンドウ１内の画素分布）で表現されている情報（例えば前記２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ））を、極座標系（ρ−θ座標系）で表現する手法であり、
ρ＝Ｘｃｏｓ（θ）＋Ｙｓｉｎ（θ）
の変換を行なう。Ｘ−Ｙ座標系におけるある一点（画素）はρ−θ極座標系（ρとθを直交２軸の一方と他方に割り当てる直交座標平面）ではある曲線となり、Ｘ−Ｙ座標系において直線上に乗っている各点をρ−θ座標系で各曲線で表わすと、これらの曲線は一点で交わる。この交点をＸ−Ｙ座標系への変換式に代入することにより、Ｘ−Ｙ座標系での直線式が得られる。
【００４７】
したがって、前記２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）上の特徴点情報「１」を有する座標をρ−θ極座標値に変換し、ρ−θ極座標系において曲線の交点を求め、この交点をＸ−Ｙ座標系への変換式に代入することにより、特徴点を結ぶ直線を求めることができる。しかし、単に２点を結ぶ直線はＸ−Ｙ座標系で直接に求めることができ、ρ−θ極座標系への変換を行なう意味はない。ところが、画面上のボンネット輪郭線は、実際のボンネットの先端輪郭線がカ−ブしているとか、ボンネットへの光の当り具合などにより画面上カ−ブしているとかあるいは粗れており、ボンネット輪郭線を直線で近似する場合、単に２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）上の特徴点情報「１」がある２点を結ぶ直線を求めたのでは、近似誤差が大き過ぎるし、ボンネットでないものの輪郭線を摘出してしまうこともあり得る。図１２の（ｂ）および図２に示すように、ボンネット輪郭線は広い領域に分布しているので、２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）上には特徴点情報「１」が多く存在する。したがって、該「１」がある２点（画素）を結ぶ直線は多数得られる。多数得た直線群を代表する右下りの一直線を確定すると、それはボンネットの先端輪郭線の右半分を最も良く近似するものである（図１３のｂ）。同様に、多数得た直線群を代表する左下りの一直線を確定すると、それはボンネットの先端輪郭線の左半分を最も良く近似するものである（図１３のｂ）。しかしながらこのような統計的処理をＸ−Ｙ座標系で行なうと処理がきわめて複雑となる。ところがハフ変換を用いて、２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）上の特徴点情報「１」がある座標（特徴点）をρ−θ極座標系へ変換すると、各特徴点を表わす曲線の交点が２点（ボンネットの右半分輪郭線と左半分輪郭線に対応）に集中する。したがって２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）の特徴点をハフ変換し、ρ−θ極座標系上の各点で、曲線が通る度数（一点を通る曲線の数）をカウントし、度数が最大の点と次に大きい点の二点を選択して、選択した各点をＸ−Ｙ座標系への変換式に代入することによりボンネットの輪郭線の右半分，左半分を表わす直線式が得られる。この実施例ではこのような論理に従って、すなわちハフ変換とρ−θ極座標系上各点を曲線が通る度数のカウントにより、ボンネットの先端輪郭線を検出する。
【００４８】
ところで、ρ−θ極座標系上各点での曲線交鎖度数のカウントを、２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）のサイズ対応の大きさのρ−θ極座標系全領域の各点で行なうと、曲線が通る度数のカウント処理が膨大となり、直線検出処理に長い時間がかかる。そこでこの実施例では、２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）の最下端の左右中間点（Ｘ＝２５５，Ｙ＝５１１）をρ−θ極座標系の原点（０，０）に定め、かつ、２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）を左右に２分して、右半分について、第１ハフ変換で、２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）の特徴点を、低密度（サンプリングピッチが大きい）ρ−θ極座標系に変換して該極座標系の各点を曲線が通る度数（一点を通る曲線の数）をカウントし、度数が最大の点（第１予測点）を求める。次に第２ハフ変換で、第１予測点を中心とする小範囲のρ−θ領域を設定し、該領域の大きさの中密度ρ−θ極座標系に２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）の特徴点を変換してこのρ−θ極座標系の各点を曲線が通る度数をカウントし、度数が最大の点（第２予測点）を求める。そして第３ハフ変換で、第２予測点を中心とする更に小範囲のρ−θ領域を設定し、該領域の大きさの高密度ρ−θ極座標系に２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）の特徴点を変換してこのρ−θ極座標系の各点を曲線が通る度数をカウントし、度数が最大の点（第３予測点）を求める。そしてこの第３予測点で表わされる直線をボンネットの先端輪郭線の右半分と決定する（図１３の１２Ｒ〜１４Ｒ）。２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）の左半分についても、同様に第１ハフ変換，第２ハフ変換および第３ハフ変換を行って、ボンネットの先端輪郭線の左半分を表わす直線を決定する（図１３の１２Ｌ〜１４Ｌ）。
【００４９】
次に図１３の（ａ）を参照して、「ボンネット検出」Ｃ３の内容を詳細に説明する。まずボンネットの先端輪郭線の右半分を近似する直線を検出するためのパラメ−タを設定する（１２Ｒ）。そして該近似する直線対応の点（Ｒｍ３，Ｔｍ３）を検出する（１３Ｒ）。Ｒｍ３はρ−θ極座標系のρ値、Ｔｍ３はθ値である。求めた点の座標値をレジスタＲｍＲ，ＴｍＲに格納する（１４Ｒ）。同様な処理をボンネットの先端輪郭線の左半分を近似する直線を検出するために行なう（１２Ｌ〜１４Ｌ）。ハフ変換により直線を検出する「直線当てはめ」１３Ｒ，１３Ｌの内容は、特願平５−７０１７号に開示のものと同じであるので、ここでの詳細な説明は省略する。なお、「直線当てはめ」１３Ｒはウィンドウ１（図２）の右半分の領域の直線を検出し、「直線当てはめ」１３Ｌは左半分の領域の直線を検出する。
【００５０】
「直線当てはめ」１３Ｒおよび１３Ｌで求めた直線それぞれは、極座標系の点（ＲｍＲ，ＴｍＲ）および（ＲｍＬ，ＴｍＬ）で表わされ、これらの直線をＸ−Ｙ座標系で表わすと、
ＲｍＲ＝Ｘｃｏｓ（ＴｍＲ）＋Ｙｓｉｎ（ＴｍＲ）  および
ＲｍＬ＝Ｘｃｏｓ（ＴｍＬ）＋Ｙｓｉｎ（ＴｍＬ）
となる。これらの直線は、図１３の（ｂ）に示す如きものである。
【００５１】
Ｃ４．「直線交点計算」Ｃ４（図１４）
ＣＰＵ１１は、上述の「ボンネット検出」Ｃ３を終了すると、「直線交点計算」Ｃ４で、これらの直線の交点（Ｘｃ，Ｙｃ）を次のように算出する：
Ｘｃ＝Ｘｃｈ＋〔ＲｍＲ×ｓｉｎＴｍＬ−ＲｍＬ×ｓｉｎＴｍＲ〕／〔ｃｏｓＴｍＲ×ｓｉｎＴｍＬ−ｃｏｓＴｍＬ×ｓｉｎＴｍＲ〕                                                                  ・・・（１）
ｙｃ＝Ｙｃｈ＋〔ＲｍＲ×ｃｏｓＴｍＬ−ＲｍＬ×ｃｏｓＴｍＲ〕／〔ｓｉｎＴｍＲ×ｃｏｓＴｍＬ−ｓｉｎＴｍＬ×ｃｏｓＴｍＲ〕                                                                  ・・・（２）
この計算において、Ｘｃｈは２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）の領域のＸ方向中央位置（Ｘｃｈ＝２５５）、Ｙｃｈは最下端位置（Ｙｃｈ＝５０９）であり、点（Ｘｃｈ，Ｙｃｈ）は前述の直線検出で極座標原点に定めたものである。
【００５２】
Ｃ５．「ロ−ル角，パン移動量計算」Ｃ５（図１４）
ここでロ−ル角とは、図１４の（ａ）に示すように、前記検出した２直線の交わる角を２等分する直線（車両の縦軸線）と撮影画面のＹ軸線とのなす角θｒであり、第１カメラ１６ｂの視野中心線と車両の縦軸線が、それらを水平面に投影した場合になす角度、すなわち第１カメラ１６ｂの視野中心線の、車両の縦軸線に対するロ−ル方向のずれ角である。パン移動量Ｘｐは、撮影画面上での、該画面を左右に２等分する縦軸線に対する、ボンネット先端中央（前記２直線の交点）の横方向ずれ量である。自車から進行方向前方の車両（先行車両）を見てこの車両との車間距離を算出する場合、ロ−ル角θｒあるいはパン移動量Ｘｐが大きいと、自車の進行方向から外れた方向にある車両や物体を自車レ−ン（自車が走行しているレ−ン）上の車両等と誤認する確率が高くなる。この確率を下げるためにはロ−ル角θｒおよびパン移動量Ｘｐが共に零となるように、カメラ１６ｂの取付角を調整すればよいが、この調整はむつかしくわずらわしい。したがってある程度のロ−ル角θｒおよびパン移動量Ｘｐは避けられない。そこでこの実施例では、「画面の校正」Ｃにより、画面上でロ−ル角θｒおよびパン移動量Ｘｐを零に調整するが、この調整代の算出のために、前述のＣ１〜Ｃ４の処理を行ない、かつ「ロ−ル角，パン移動量計算」Ｃ５で、ロ−ル角θｒおよびパン移動量Ｘｐを算出してロ−ル角レジスタθｒおよびパン移動量レジスタＸｐに格納する：
θｒ＝（ＴｍＬ＋ＴｍＲ）／２−π／２        ・・・（３）
Ｘｐ＝Ｘｃ−２５６                          ・・・（４）。
【００５３】
ＣＰＵ１１は、ＣＰＵ間シリアルデ−タ通信ラインにより、算出したロ−ル角θｒおよびパン移動量Ｘｐを、ＣＰＵ２１および３１に送信する（図９のＴ２）。
【００５４】
Ｃ６〜８．「画像補正」Ｃ６〜８
ＣＰＵ１１，２１および３１それぞれは、「画像補正」Ｃ６〜８を実行する。この内容をＣＰＵ１１に関して説明する（ＣＰＵ２１，３１の処理も同様）と、ＣＰＵ１１は、次の、「補正画像メモリイニシャライズ」Ｃ６，「画像回転平行移動」Ｃ７および「補間」Ｃ８を含む「画像補正」により、イメ−ジメモリ１５ａの、入力デ−タメモリ（１画面分の階調デ−タ記憶領域）の各画素の階調デ−タのアドレス（図１４の（ｂ）のｘ，ｙ）を、ロ−ル角θｒおよびパン移動量Ｘｐに対応する回転および平行移動を行なったアドレス（θｒ＝０，Ｘｐ＝０で撮影画像を表わす画面座標系のアドレス；図１４の（ｂ）のｘ’，ｙ’）に変換して、入力デ−タメモリ対応の補正画像メモリ（イメ−ジメモリ１５ａの、１画面分の階調デ−タ記憶領域）に書込む（Ｃ６，Ｃ７）。
【００５５】
Ｃ６．「補正画像メモリイニシャライズ」Ｃ６
このような回転および平行移動を行なうと、補正した画面に階調デ−タが存在しない画素が生ずる。このような画素を後に認識しうるように、「補正画像メモリイニシャライズ」Ｃ６では、補正画像メモリの全アドレスに、撮影画像デ−タ（階調デ−タ）には存在しない「−１」を表わすデ−タを書込む。
【００５６】
Ｃ７．「画像回転平行移動」Ｃ７
これにおいては、入力デ−タメモリのアドレス（ｘ，ｙ）；ｘ＝０〜５１１，ｙ＝０〜５１１、のそれぞれを、θｒ＝０，Ｘｐ＝０で撮影画像を表わす画面座標系（補正画像メモリ）のアドレス（ｘ’，ｙ’）；ｘ’＝０〜５１１，ｙ’＝０〜５１１、に変換して、入力デ−タメモリのアドレス（ｘ，ｙ）の階調デ−タを、補正画像メモリの、該アドレス（ｘ，ｙ）を変換したアドレス（ｘ’，ｙ’）に書込む。これにより、補正画像メモリの階調デ−タを仮に２次元ディスプレイに表示すると、図１４の（ａ）に示すロ−ル角θｒおよびパン移動量Ｘｐ共に実質上零の、図２に示す如き画像が表示される。ただし、この「画像回転平行移動」により、補正画像メモリ上には、階調デ−タが存在しないアドレス（画素＝空白画素）が生じることがあり、その場合そこには、上述の「補正画像メモリイニシャライズ」Ｃ６により、「−１」を示すデ−タが残存していることになる。
【００５７】
Ｃ８．「補間」Ｃ８
「補間」Ｃ８では、階調デ−タが存在しない画素に、その周りの４画素の階調デ−タの平均値を割り当てる。周り４画素のいずれかが空白画素であると、この割り当てはしない。この「補間」Ｃ８においては、補正画像メモリのアドレス（画素）を順次に指定して、指定した画素（注目画素）が空白画素（メモリデ−タが「−１」を示すもの）であるかをチェックして、注目画素が空白画素であると、図１５に示すように、その左隣りの画素ロ，右隣りの画素ハ，上側の画素イおよび下側の画素ニに階調デ−タがあるかをこの順にチェックし、これら４個の画素の１つでも空白画素であるとそこで、該注目画素に対する処理は終了（空白画素のまま放置）し、注目画素を次に移す。前記４画素を１つづつ階調デ−タがあるかチェックしたとき、階調デ−タがあるとそれを累算レジスタＩｓの内容に加算し、得た和を累算レジスタＩｓに更新メモリし、回数レジスタＮｓの内容を１インクレメントする。前記４個の画素のすべてについてこれを終了すると、これらの画素の階調デ−タの平均値Ｉｃ（ｘ，ｙ）を算出して、注目画素にメモリする。
【００５８】
以上で、「画面の校正」Ｃ（図３）を終了し、ＣＰＵ１１，２１，３１は次に、レジスタＮｖｅのデ−タが０（無限遠点追跡に成功している：後述）であるかをチェックする（図１０のＡ２）。後述の「無限遠点計算」（Ｄ４）で、自車両走行レ−ンを区画する左右白線の検出に成功しそれらの交点（これを無限遠点と称す）の算出に成功しているときに、レジスタＮｖｅのデ−タが０である。ＣＰＵ１１は、レジスタＮｖｅのデ−タが０であると、「レ−ン検出ウィンドウ設定」（Ａ３）を実行し、レジスタＮｖｅのデ−タが０でないと、「特徴点検出ウィンドウ２セット」（Ｄ１）を実行する。ＣＰＵ２１，３１も同様な処理を実行する。
【００５９】
Ａ３．「レ−ン検出ウィンドウ設定」（Ａ３）
ここでは、車両前方のシ−ンの中から樹木，路肩等の背景像（外乱）を除去し白線のみのエッジ点を検出するために、エッジ検出を行う範囲を限定するウィンドウを設定する。白線検出の処理速度を高速化するために、レ−ン形状に応じた複数のレ−ン検出ウィンドウを規定するデ−タをＲＯＭ１２に格納しており、前回「無限遠点計算」（Ｄ４）で算出した無限遠点（Ｘｖ，Ｙｖ）および「左右白線間隔（ＷＬ）計算」（Ｄ５）で算出した左，右白線の、画面上の始端位置（ｘＬ，ｙＬ），（ｘｒ，ｙｒ）に基づいて、レ−ン検出ウィンドウを定める。
【００６０】
レ−ン検出ウィンドウ形状は、図１６に示すような逆Ｖ字形で、頂点を５パタ−ン，左右端を各３パタ−ンで構成する合計４５パタ−ンである。各パタ−ンのウィンドウ形状は、常に白線が捕捉できるように、次の観点で定められている。
（１）ウィンドウ幅（Ｗｃ，ＷＬ，Ｗｒ：図１６）
車両のピッチングによるカメラ１６ｂのチルト角の変動が吸収できる幅，
（２）頂点座標（Ｃ０〜Ｃ４：図１６）
車両と白線とのヨ−角，カ−ブ路及び、カメラ１６ｂのステアリングにより、画面上で移動する無限遠点を、常にウィンドウ内に捕える，
（３）左右端座標（Ｌ０，Ｌ１，Ｌ２，ｒ０，ｒ１，ｒ２：図１６）
車両と白線とのヨ−角，カ−ブ路及び、カメラ１６ｂ，２６ｂ，３６ｂのステアリングにより、画面上の左右端に映し出されるレ−ンの位置が変化しても、白線をウィンドウ内に捕える。
【００６１】
図１６に示す寸法（画素単位）は次の通りである：
ウィンドウ頂点Ｃ０〜Ｃ４のピッチ（Ｃｎ−１−Ｃｎ）
カメラ１６ｂ：５０，カメラ２６ｂ：７０，カメラ３６ｂ：８０
なお、中央のＣ２がｘ方向の画面中央である，
ウィンドウ左右端Ｌ０〜Ｌ２，ｒ０〜ｒ２のピッチ
カメラ１６ｂ：６０，カメラ２６ｂ：７０，カメラ３６ｂ：８０
なお、Ｌ１，ｒ１が、基準レ−ン幅で、レ−ンが水平かつ直線のときに車両がその中央を走行しているときに表われる白線（を近似した直線）の画面エッジにおける端部位置である，
ウィンドウ頂点の幅Ｗｃ：
カメラ１６ｂ：５０，カメラ２６ｂ：７０，カメラ３６ｂ：８０
ウィンドウ左右端の幅ＷＬ，Ｗｒ：
カメラ１６ｂ：６０，カメラ２６ｂ：７０，カメラ３６ｂ：８０。
【００６２】
「レ−ン検出ウィンドウ設定」（Ａ３）でＣＰＵ１１は、Ｃ０〜Ｃ４の中の前回検出した無限遠点のｘ座標値（Ｘｖ）に最も近い点（Ｃ０〜Ｃ４の１つＣｉ）を検策し、そのｘ座標値と前回検出した無限遠点のｙ座標値を、レ−ン検出ウィンドウの基準位置（逆ｖ字線）の頂点に定め、前回検出した左，右白線の、画面上の始端位置（ｘＬ，ｙＬ），（ｘｒ，ｙｒ）のｙ座標値（ｙＬ），（ｙｒ）に最も近い点（Ｌ０〜Ｌ２の１つＬｉ，ｒ０〜ｒ２の１つｒｉ）を検索して、前回検出した始端位置のｘ座標値と検出した点のｙ座標値をウィンドウの基準位置（逆ｖ字線）の左，右端に定めて、このように定めた３点とＷｃ，ＷＬ，Ｗｒで規定される画面上の領域（レ−ン検出ウィンドウ）を定める。なお、定めたレ−ン検出ウィンドウを適用するメモリは補正画像メモリである。
【００６３】
Ｄ１．「特徴点検出ウィンドウ２セット」Ｄ１
この内容は、前述の「特徴点検出ウィンドウ１セット」Ｃ１と類似であるが、ウィンドウ２のサイズと位置がウィンドウ１とは異なり、しかも、ウィンドウ２を適用するメモリは補正画像メモリである。図２に示すように、ウィンドウ２は、ウィンドウ１の上側に設定される。
【００６４】
Ｄ２．「特徴点検出（ＵＰ）」Ｄ２
ウィンドウ２を設定すると、補正画像メモリ上の該ウィンドウ２内の特徴点を検出する。この内容は前述の「特徴点検出（ＵＰ）」Ｃ２と同様であり、「特徴点検出（ＵＰ）」Ｄ２でも特徴点を表わす「１」情報は、２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）に書込む。ただし、検出領域がウィンドウ２である点、および、処理対象デ−タが補正画像メモリ上のデ−タである点、が異なる。
【００６５】
レ−ン検出ウィンドウを設定した場合には、補正画像メモリ上の該レ−ン検出ウィンドウの内部領域の特徴点を検出する。
【００６６】
Ｄ３．「左右白線検出」Ｄ３
ここでも前述の「ボンネット検出」Ｃ３と類似の処理で、自車レ−ンの右端白線を近似する直線および左端白線を近似する直線を検出する。ただし、ウィンドウ２（又はレ−ン検出ウィンドウ）がウィンドウ１とサイズおよび位置が異なるので、極座標原点が異なる（図２）。
【００６７】
「直線当てはめ」
「直線当てはめ」は、ウインドウ２（又はレ−ン検出ウィンドウ）の右半分に対して適用される点に注意されたい。ここではまず、２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）上の特徴点をρ−θ極座標系に変換してこの座標系の各点（ｒ，ｔ）の曲線が通る度数カウント値を書込む、イメ−ジメモリ１５ａのある領域に割り当てたデ−タテ−ブルＨＧｎ（ｒ，ｔ）、ここではｎ＝１、のデ−タをクリアする。次にハフ変換パラメ−タ（変換領域およびハフ変換密度）を設定し、第１回のハフ変換（ＨＧ１）を行なう。
【００６８】
「ハフ変換（ＨＧ１）」
これにおいては、２値デ−タテ−ブルＥ（Ｘｓ，Ｙｓ）の、補正画像メモリ対応の一画面の中のウィンドウ２（又はレ−ン検出ウィンドウ）対応領域の右半分、に特徴点（「１」情報）があるかをチェックする。特徴点がある毎に、該点を、Ｘ−Ｙ座標上で原点が（Ｘｃｈ＝２５５，Ｙｃｈ＝３５０）、θが０〜π／２の範囲、かつ、θの単位が（π／２）×（１／３２）の極座標ρ−θ上の位置（ｒ，ｔ）、ｔ＝０〜３１、ｒは
0003588728.tif 000002
で算出される値、に変換し、データテーブルＨＧｎ（ここではｎ＝１）の、位置（ｒ，ｔ）対応のアドレスのデータを１インクレメントする。Ｘ−Ｙ座標上の一点は極座標ρ−θに変換すると極座標ρ−θ上では曲線となるので、前記変換された位置（ｒ，ｔ）は、ｔ＝０〜３１のそれぞれに対応する３２個（それらの連なりが曲線）となる。データテーブルＨＧｎの、これらの位置（ｒ，ｔ）に割り当てたアドレスのデータが１インクレメントされるので、各アドレスのデータは、Ｘ−Ｙ座標上の特徴点それぞれの、ρ−θ座標上の曲線が通る度数を表わすことになる。
【００６９】
上記（５）式を変形すると次の（５ａ）式となる。
【００７０】
0003588728.tif 000003
これは次の（５ｂ）式で表わすことができる。
【００７１】
0003588728.tif 000004
ここで、ａ＝（Ｔｅ−Ｔｓ）／Ｔｄ，ｂ＝Ｔｓ，ｃ＝Ｒｓ，ｄ＝Ｒｄ／（Ｒｅ−Ｒｓ）である。
【００７２】
この（５）式において、（Ｘｃｈ，Ｙｃｈ）は、極座標原点のＸ−Ｙ座標上の位置であり、ここでは
Ｘｃｈ＝２５５、Ｙｃｈ＝３５０
である。Ｘｓは特徴点の、Ｘ−Ｙ座標上のＸ座標値、ＹｓはＹ座標値である。
【００７３】
ここで、
θ＝〔（ｔ・（Ｔｅ−Ｔｓ）／Ｔｄ）＋Ｔｓ〕
と表わすと、
（Ｔｅ−Ｔｓ）／Ｔｄ＝（π／２）／３２、
Ｔｓ＝０
であるので、
0003588728.tif 000005
であり、ｔ＝０〜３１であるので、θ＝０，θ＝π／６４，θ＝２π／６４，θ＝３π／６４，・・・，３１π／６４と、π／６４を最小単位として３２点のρ値ｒが算出される。すなわちこの第１ハフ変換では、ウィンドウ２の右半分の領域の特徴点各点が、θがπ／６４を最小単位とし、かつ０以上π／２未満の範囲の極座標平面上の位置（ｒ，ｔ）に変換される。
【００７４】
上記（５）式の、Ｒｄ／（Ｒｅ−Ｒｓ）は、
Ｒｄ／（Ｒｅ−Ｒｓ）＝３２／２５６
である。これは、θ＝π／６４をｔの１単位としているので、すなわち、π／２を３２分割しているので、これに対応してρの範囲０〜２５６も同様に３２分割するものである。すなわちｒの一単位は２５６／３２である。
【００７５】
要約すると、「ハフ変換（ＨＧ１）」では、（５）式は具体的には次の（５−１）式である。
【００７６】
0003588728.tif 000006
これを（５ｂ）式の形に変形して、
0003588728.tif 000007
で表わすと、ａ１＝π／６４，ｂ１＝０，ｃ１＝０，ｄ１＝１／８  である。
【００７７】
このように第１ハフ変換では、ρ−θ極座標のθの単位をπ／６４と粗いものとし、しかもρの単位を２５６／３２と粗いものとしているので、１つの特徴点（Ｘｓ，Ｙｓ）をρ−θ極座標に変換する演算回数（ｔの切換回数３２すなわち（１）式の演算を行なう回数）が極く少く、ｒデータビット数が少く、特徴点各点をρ−θ極座標へ変換する速度が速く、かつ、度数カウント処理速度が速い。
【００７８】
ＣＰＵ１１は、第１回のハフ変換である「ハフ変換（ＨＧ１）」を終了すると、第１回の「最大点探索」を実行する。
【００７９】
第１回の「最大点探索」
前述のデータテーブルＨＧｎ（ここではｎ＝１）の各アドレス（ｒ，ｔ）のデータ（度数）を順次に読出して、読出したデータをレジスタＧｍのデータと比較して、読出しデータの方が大きいと読出しデータをレジスタＧｍに更新メモリし、かつこの時読出しデータのアドレス（ｒ，ｔ）のｒはレジスタｒｍ１に、ｔはレジスタｔｍ１に更新メモリする。データテーブルＨＧｎのすべてのアドレスに対してこのような処理を終了すると、レジスタＧｍにはデータテーブルＨＧｎにある度数の最大値が、レジスタｒｍ１，ｔｍ１には該最大値があるアドレス（ｒｍ１，ｔｍ１）が格納されていることになる。
【００８０】
ＣＰＵ１１は、第１回の「最大点探索」を終了すると、ｒ−ｔ極座標系で表現された前記アドレス（ｒｍ１，ｔｍ１）を、Ｘ−Ｙ座標系画面に対応するρ−θ極座標系アドレス（Ｒｍ１，Ｔｍ１）に変換する。ここでは、
Ｒｍ１＝ｒｍ１・（Ｒｅ１−Ｒｓ１）／Ｒｄ１  ・・・（６）
Ｔｍ１＝ｔｍ１・（Ｔｅ１−Ｔｓ１）／Ｔｄ１  ・・・（７）
を算出して、算出したＲｍ１をレジスタＲｍ１に、算出したＴｍ１をレジスタＴｍ１に格納する。                  （Ｒｅ１−Ｒｓ１）＝２５６
Ｒｄ１＝３２
（Ｔｅ１−Ｔｓ１）＝π／２
Ｔｄ１＝３２
であり、（６）式は、Ｒｍ１＝８・ｒｍ１  を意味し、（７）式は、Ｔｍ１＝（π／６４）・ｔｍ１
を意味する。アドレス（Ｒｍ１，Ｔｍ１）をＸ−Ｙ座標系への変換式に代入すると、補正画像メモリの画像データを表示する画面上の、ウィンドウ２（又はレ−ン検出ウィンド）の右半分の領域にある、ある直線（低密度ハフ変換６７により検出した直線：以下第１回検出の直線と称す）を示す式が得られる。
【００８１】
次にＣＰＵ１１は、イメージメモリ１５ａのある領域に割り当てたデータテーブルＨＧｎ（ｒ，ｔ）のデータをクリアする。次に第２回のハフ変換である「ハフ変換（ＨＧ２）」の変換パラメータを設定する。前述の第１回のハフ変換ではθの範囲Ｔｓ〜Ｔｅを０〜π／２、単位（Ｔｅ−Ｔｓ）／Ｔｄをπ／６４とし、ρの範囲Ｒｓ〜Ｒｅは０〜２５６、単位Ｒｄ／（Ｒｅ−Ｒｓ）を１／８としたが、ここでは、θおよびρの範囲を、前記（Ｒｍ１，Ｔｍ１）を中心とする小範囲に設定し、θおよびρの単位も小さく設定する。具体的には、
Ｒｓ＝８（ｒｍ１−２）
Ｒｅ＝８（ｒｍ１＋２）
Ｒｄ＝３２
Ｔｓ＝（π／６４）（ｔｍ１−２）
Ｔｅ＝（π／６４）（ｔｍ１＋２）
Ｔｄ＝３２
を設定する。なお、ｒｍ１＝Ｒｍ１／８，ｔｍ１＝Ｔｍ１／（π／６４）である。そして第２回の「ハフ変換（ＨＧ２）」を行なう。
【００８２】
「ハフ変換（ＨＧ２）」
この第２回の「ハフ変換（ＨＧ２）」の内容は、第１回の「ハフ変換（ＨＧ１）」と同様であるが、演算式（前述の（５）式）の内容が異なる。すなわち前記（５）式は具体的には次の（５−２）式となる。
【００８３】
0003588728.tif 000008
これを（５ｂ）式の形に変形して、
0003588728.tif 000009
で表わすと、前述の第１回の変換で、
ａ１＝（π／６４），  ｂ１＝０，            ｃ１＝０，        ｄ１＝１／８
に対して、
ａ２＝（π／５１２），ｂ２＝π（ｔｍ１−２）／６４，ｃ２＝８（ｒｍ１−２），ｄ２＝１
となる。
【００８４】
ｔ＝０〜３１であるので、
θ＝            π（ｔｍ１−２）／６４，
θ＝  （π／５１２）＋π（ｔｍ１−２）／６４，
θ＝  ２（π／５１２）＋π（ｔｍ１−２）／６４，
θ＝  ３（π／５１２）＋π（ｔｍ１−２）／６４，
・
・
・
θ＝３１（π／５１２）＋π（ｔｍ１−２）／６４，
と、（π／５１２）を最小単位として３２点のθに対応するρ値ｒが算出される。すなわちこの第２回のハフ変換では、ウィンドウ２の右半分の領域の特徴点各点が、θが（π／５１２）を最小単位（ｔの１単位がπ／５１２）とし、かつθ＝π（ｔｍ１−２）／６４以上θ＝３１（π／５１２）＋π（ｔｍ１−２）／６４以下の範囲の極座標平面上の位置（ｒ，ｔ）に変換される。ρの範囲は８（ｒｍ１−２）以上８（ｒｍ１＋２）以下で、ρの単位はこの範囲を３２分割するものである。すなわちｒの一単位は３２／３２＝（１／１）＝１である。したがって、第２回のハフ変換はウィンドウ２（又はレ−ン検出ウィンドウ）の右半分の特徴点を、第１のハフ変換よりも、狭い範囲かつ高い密度の極座標に変換するものである。特徴点の１つの極座標変換では、この第２ハフ変換でもｔ＝０〜３１、すなわち３２回の演算を行なうので、第１ハフ変換と処理時間は同程度である。１つの特徴点（Ｘｓ，Ｙｓ）をρ−θ極座標に変換する演算回数が極く少く、ｒデータビット数が少く、特徴点各点をρ−θ極座標へ変換する速度が速く、かつ、度数カウント処理速度が速い。
【００８５】
ＣＰＵ１１は、第２回のハフ変換である「ハフ変換（ＨＧ２）」を終了すると、第２回の「最大点探索」を実行する。その内容は前述の、第１回の「最大点探索」と同様である。この処理を終了すると、レジスタＧｍにはデータテーブルＨＧｎにある度数の最大値が、レジスタｒｍ２，ｔｍ２には該最大値があるアドレス（ｒｍ２，ｔｍ２）が格納されていることになる。
【００８６】
ＣＰＵ１１は、第２回の「最大点探索」を終了すると、ｒ−ｔ極座標系で表現された前記アドレス（ｒｍ２，ｔｍ２）を、Ｘ−Ｙ座標系画面に対応するρ−θ極座標系アドレス（Ｒｍ２，Ｔｍ２）に変換する。演算式は、
Ｒｍ２＝ｒｍ２・（Ｒｅ２−Ｒｓ２）／Ｒｄ２＋Ｒｓ２  ・・・（８）
Ｔｍ２＝ｔｍ２・（Ｔｅ２−Ｔｓ２）／Ｔｄ２＋Ｔｓ２  ・・・（９）
である。算出したＲｍ２をレジスタＲｍ２に、算出したＴｍ２をレジスタＴｍ２に格納する。ここでは、
（Ｒｅ２−Ｒｓ２）＝３２
Ｒｄ２＝３２
（Ｔｅ２−Ｔｓ２）＝π／１６
Ｔｄ２＝３２
であり、（８）式は、具体的には、
Ｒｍ２＝ｒｍ２＋８ｒｍ１−１６                    ・・・（８−１）
であり、（９）式は、具体的には、
Ｔｍ２＝ｔｍ２・（π／５１２）＋（π／６４）・（ｔｍ１−２）  ・・・（９−１）
を意味する。アドレス（Ｒｍ２，Ｔｍ２）をＸ−Ｙ座標系への変換式に代入すると、補正画像メモリの画像データを表示する画面上の、ウィンドウ２（又はレ−ン検出ウィンドウ）の右半分の領域にある、ある直線（中密度ハフ変換により検出した直線：以下第２回検出の直線と称す）を示す式が得られる。
【００８７】
次にＣＰＵ１１は、イメージメモリ１５ａのある領域に割り当てたデータテーブルＨＧｎ（ｒ，ｔ）のデータをクリアする。次に第３回のハフ変換である「ハフ変換（ＨＧ３）」の変換パラメータを設定する。ここでは、θおよびρの範囲を、第２回の「ハフ変換（ＨＧ２）」の場合よりも、前記（Ｒｍ２，Ｔｍ２）を中心とする更に小さい範囲に設定し、θおよびρの単位も小さく設定する。具体的には、
Ｒｓ＝ｒｍ２＋８ｒｍ１−１８
Ｒｅ＝ｒｍ２＋８ｒｍ１−１４
Ｒｄ＝３２
Ｔｓ＝（π／５１２）ｔｍ２＋（π／６４）ｔｍ１−９π／２５６
Ｔｅ＝（π／５１２）ｔｍ２＋（π／６４）ｔｍ１−７π／２５６
Ｔｄ＝３２
を設定する。なお、ｒｍ２，ｔｍ２は、Ｒｍ２，Ｔｍ２に対して上記（８−１）式，（９−１）式で規定されるものである。そして第３回の「ハフ変換（ＨＧ３）」を行なう。
【００８８】
「ハフ変換（ＨＧ３）」
この第３回の「ハフ変換（ＨＧ３）」の内容は、前述の第２回の「ハフ変換（ＨＧ２）」と同様であるが、演算式（前述の（５）式）の内容が異なる。前記（５）式は、この第３回の「ハフ変換（ＨＧ３）」では、具体的には次の（５−３）式となる。
【００８９】
0003588728.tif 000010
これを（５ｂ）式の形に変形して、
0003588728.tif 000011
で表わすと、前述の第１回および第２回の変換で、
ａ１＝（π／６４），  ｂ１＝０，            ｃ１＝０，        ｄ１＝１／８
ａ２＝（π／５１２），ｂ２＝π（ｔｍ１−２）／６４，ｃ２＝８（ｒｍ１−２），ｄ２＝１
に対して、
ａ３＝（π／４０９６），ｂ３＝（π／５１２）ｔｍ２＋（π／６４）ｔｍ１−９π／２５６，
ｃ３＝ｒｍ２＋８ｒｍ１−１８，ｄ３＝８
となる。
【００９０】
ｔ＝０〜３１であるので、
θ＝              （π／５１２）ｔｍ２＋（π／６４）ｔｍ１−９π／２５６，
θ＝  （π／４０９６）＋（π／５１２）ｔｍ２＋（π／６４）ｔｍ１−９π／２５６，
θ＝  ２（π／４０９６）＋（π／５１２）ｔｍ２＋（π／６４）ｔｍ１−９π／２５６，
θ＝  ３（π／４０９６）＋（π／５１２）ｔｍ２＋（π／６４）ｔｍ１−９π／２５６，
・
・
・
θ＝３１（π／４０９６）＋（π／５１２）ｔｍ２＋（π／６４）ｔｍ１−９π／２５６，
と、（π／４０９６）を最小単位として３２点のθ（ｔ＝０〜３１）に対応するρ値ｒが算出される。すなわちこの第３回のハフ変換では、ウィンドウ２（又はレ−ン検出ウィンドウ）の右半分の領域の特徴点各点が、θが（π／４０９６）を最小単位（ｔの１単位がπ／４０９６）とし、かつθ＝（π／５１２）ｔｍ２＋（π／６４）ｔｍ１−９π／２５６以上  θ＝３１（π／４０９６）＋（π／５１２）ｔｍ２＋（π／６４）ｔｍ１−９π／２５６以下  の範囲の極座標平面上の位置（ｒ，ｔ）に変換される。ρの範囲はＲｓ＝ｒｍ２＋８ｒｍ１−１８  以上  Ｒｅ＝ｒｍ２＋８ｒｍ１−１４  以下で、ρの単位はこの範囲を３２分割するものである。すなわちｒの一単位は４／３２＝（１／８）である。したがって、第３回のハフ変換はウィンドウ２（又はレ−ン検出ウィンドウ）の右半分の特徴点を、第２回のハフ変換よりも、更に狭い範囲かつ高い密度の極座標に変換するものである。特徴点の１つの極座標変換では、この第３回のハフ変換でもｔ＝０〜３１であるので、３２回の演算を行なうので、第２回のハフ変換と処理時間は同程度である。１つの特徴点（Ｘｓ，Ｙｓ）をρ−θ極座標に変換する演算回数が極く少く、ｒデータビット数が少く、特徴点各点をρ−θ極座標へ変換する速度が速く、かつ、度数カウント処理速度が速い。
【００９１】
ＣＰＵ１１は、第３回のハフ変換である「ハフ変換（ＨＧ３）」を終了すると、第３回の「最大点探索」を実行する。その内容は前述の、第２回の「最大点探索」と同様である。この処理を終了すると、レジスタＧｍにはデータテーブルＨＧｎにある度数の最大値が、レジスタｒｍ３，ｔｍ３には該最大値があるアドレス（ｒｍ３，ｔｍ３）が格納されていることになる。
【００９２】
ＣＰＵ１１は、第３回の「最大点探索」を終了すると、ｒ−ｔ極座標系で表現された前記アドレス（ｒｍ３，ｔｍ３）を、Ｘ−Ｙ座標系画面に対応するρ−θ極座標系アドレス（Ｒｍ３，Ｔｍ３）に変換する。演算式は、
Ｒｍ３＝ｒｍ３・（Ｒｅ３−Ｒｓ３）／Ｒｄ３＋Ｒｓ３・・・（１０）
Ｔｍ３＝Ｔｍ３・（Ｔｅ３−Ｔｓ３）／Ｔｄ３＋Ｔｓ３・・・（１１）
である。算出したＲｍ３をレジスタＲｍ３に、算出したＴｍ３をレジスタＴｍ３に格納する。ここでは、
（Ｒｅ３−Ｒｓ３）＝４
Ｒｄ３＝３２
（Ｔｅ３−Ｔｓ３）＝π／１２８
Ｔｄ３＝３２
であり、（１０）式は、具体的には、
Ｒｍ３＝（１／８）・ｒｍ３＋ｒｍ２＋８ｒｍ１−１８                            ・・・（１０−１）
であり、（７）式は、具体的には、
Ｔｍ３＝（π／１２８）・ｔｍ３＋（π／５１２）ｔｍ２＋（π／６４）ｔｍ１−９π／２５６  ・・・（１０−１）
を意味する。アドレス（Ｒｍ３，Ｔｍ３）をＸ−Ｙ座標系への変換式に代入すると、補正画像メモリの画像データを表示する画面上の、ウィンドウ２（又はレ−ン検出ウィンドウ）の右半分の領域にある、ある直線（高密度ハフ変換により検出した直線：以下第３回検出の直線と称す）を示す式が得られる。以上で「直線当てはめ」を終了したことになる。
【００９３】
以上で、ウィンドウ２（又はレ−ン検出ウィンドウ）の右半分領域にある画像中の直線（最も代表的な直線）を表わす直線（第３回検出の直線）を得たことになる。ウィンドウ２（又はレ−ン検出ウィンドウ）は、自車レーンの左，右端の白線を検出するに適した領域に設定されており、ウィンドウ２（又はレ−ン検出ウィンドウ）の右半分領域に右端の白線像があると、第３回検出の直線はこの白線を近似する直線である確率が高い。したがって、上述の「直線当てはめ」は、ウィンドウ２（又はレ−ン検出ウィンドウ）の右半分領域での、自車レーンの右端白線の検出である。
【００９４】
ＣＰＵ１１は、次に、第３回検出の直線を表わすデータ（Ｒｍ３，Ｔｍ３）のＲｍ３をレジスタＲｍＲに、Ｔｍ３をレジスタＴｍＲに格納する。すなわち自車レーンの右端白線を表わす直線を表わすデータをレジスタＲｍＲ，ＴｍＲに格納する。
【００９５】
左白線検出
ＣＰＵ１１は次に、以上に説明したウィンドウ２（又はレ−ン検出ウィンドウ）の右半分領域に関する処理と同様な処理を、ウィンドウ２（又はレ−ン検出ウィンドウ）の左半分領域に施して、自車レーンの左端白線を表わす直線を検出し、それを表わすデータをレジスタＲｍＬ，ＴｍＬに格納する。以上で「左右白線検出」Ｄ３を終了する。ＣＰＵ１１は次に、「無限遠点計算」Ｄ４を行なう。
【００９６】
Ｄ４．「無限遠点計算」Ｄ４
ここではまず、「直線交点計算」で、レジスタＲｍＲ，ＴｍＲのデータが表わす直線（自車走行レーン右端白線と推定した）と、レジスタＲｍＬ，ＴｍＬのデータが表わす直線（自車走行レーン左端白線と推定した）との交点（Ｘｃ，Ｙｃ）を算出する。次に、算出した交点（Ｘｃ，Ｙｃ）が、レジスタＸｖ，Ｙｖのデ−タが表わす無限遠点（Ｘｖ，Ｙｖ）を中心とする横６０画素×縦６０画素の領域内に存在するかをチェックする。この領域内であると、今回求めた交点（Ｘｃ，Ｙｃ）が無限遠点である信頼性が高いので、無限遠点データ（Ｘｃ，Ｙｃ）を、今回求めた交点（Ｘｃ，Ｙｃ）に１／８の重み付けをし、これまでの無限遠点データ（Ｘｃ，Ｙｃ）に７／８の重み付けをして加算した値に更新する。そして、無限遠点追跡に失敗した回数をカウントするためのレジスタＮｖｅをクリアする。
【００９７】
今回算出した交点（Ｘｃ，Ｙｃ）が、レジスタＸｖ，Ｙｖのデ−タが表わす無限遠点（Ｘｖ，Ｙｖ）を中心とする前記横６０画素×縦６０画素の領域内にないときには、無限遠点追跡が失敗（今回の交点算出がエラー又はこれまでの無限遠点データ（Ｘｖ，Ｙｖ）がエラー）であるとして、レジスタＮｖｅの内容を１インクレメントし、レジスタＮｖｅの内容が５になったかをチェックする。５になっていると、今回と過去４回の計５回連続して交点算出がエラーであったことになり、これは現在保待している無限遠点データ（Ｘｃ，Ｙｃ）がエラーであると見なして、無限遠点データ（Ｘｃ，Ｙｃ）を今回算出した交点（Ｘｃ，Ｙｃ）に更新する。
【００９８】
Ａ４．「ρ，θ＆無限遠点のフィルタリング」Ａ４
ここでＣＰＵ１１は、「左右白線検出」（Ｄ３）で検出した、直線を表わすパラメ−タρ，θおよび「無限遠点計算」（Ｄ４）で算出した直線交点座標（Ｘｖ，Ｙｖ）をフィルタリングする。すなわち、
ρＬ＝（３・ρＬ＋ＲｍＬ）／４    ・・・（１１Ｌ）
ρＲ＝（３・ρＲ＋ＲｍＲ）／４    ・・・（１１Ｒ）
θＬ＝（３・θＬ＋ＴｍＬ）／４    ・・・（１２Ｌ）
θＲ＝（３・θＲ＋ＴｍＲ）／４    ・・・（１２Ｒ）
を算出して、レジスタρＬ，ρＲ，θＬ，θＲに格納する。上記４式のカッコ内のρＬ，ρＲ，θＬ，θＲはレジスタρＬ，ρＲ，θＬ，θＲの前回値、ＲｍＬ等はレジスタＲｍＬ等のデ−タである。次に、算出したρＬ，ρＲで表わされる直線とθＬ，θＲで表わされる直線の交点（Ｘｖ，Ｙｖ）を算出し、ＸｖをレジスタＸｖに、ＹｖをレジスタＹｖに書込む。
【００９９】
Ｄ５．「左右白線間隔（ＷＬ）計算」Ｄ５
ＣＰＵ１１は次に、自車レーンの右白線と左白線との間隔（レーン幅）ＷＬを算出する。これにおいては、カメラ１６ｂの視野中心線（図１７の２点鎖線）が路面と交わる位置（画面上では画面の中心点）Ｌ１での、画面上の右端白線（ρＲ，θＲ）のＸ位置を路面上位置ＸＲに変換し、画面上の左端白線（ρＬ，θＬ）のＸ位置を路面上位置ＸＬに変換して、間隔ＷＬ＝ＸＲ−ＸＬを、次のように算出する：
ＸＲ＝（Ｓｙ×Ｈｃ×ｓｉｎθＲ）／（Ｓｘ×ｃｏｓθＲ）  ・・・（１３Ｒ）
ＸＬ＝（Ｓｙ×Ｈｃ×ｓｉｎρＲ）／（Ｓｘ×ｃｏｓρＲ）  ・・・（１３Ｌ）
ＷＬ＝ＸＲ−ＸＬ                                  ・・・（１４）
なお、図１７のＳｘおよびＳｙはそれぞれカメラ１６ｂの横方向および縦方向のスケールファクタであり、Ｈｃは、カメラ１６ｂのレンズの中心の、路面からの高さである。
【０１００】
ＣＰＵ１１は次に、算出した、路面上のレーン間隔ＷＬが正しい（自車レーン検出成功）かをチェックする（Ｄ６）。すなわち、基準値ＷＬ３Ｄに対するＷＬの偏差が、許容範囲ＤｗＬ内であるかをチェックする。この実施例では、日本の高速道路のレーン幅が３．５±０．２ｍであるので、基準値ＷＬ３Ｄ＝３．５ｍに、許容値ＤｗＬ＝０．３ｍに定めている。
【０１０１】
基準値ＷＬ３Ｄに対するＷＬの偏差が許容範囲ＤｗＬ内にあると、自車レーン検出に成功しているとして、これを表わす情報「１」をレジスタＦＬに書込み（６１）、基準値ＷＬ３Ｄに対するＷＬの偏差が許容範囲ＤｗＬを外れていると、自車レーン検出に失敗しているとして、これを表わす情報「０」をレジスタＦＬに書込む（６２）。以上で、「自車レーン検出」を終了したことになり、自車レーン検出が成功していると、レジスタＦＬのデータは「１」である。
【０１０２】
「自車レーン検出」Ｄを終了するとＣＰＵ１１は、レジスタＦＬのデータをチェックしてそれが「１」であると、「カ−ブ推定」Ｇ１を実行する。すなわち、
Ｒ＝（Ｌ１／２）・ｓｉｎＡ            ・・・（１５）
でカ−ブ半径Ｒを算出する。Ｌ１は、カメラ１６ｂからその視野中心線が水平路面と交わる点までの距離（Ｌ１＝１５ｍ）、Ａはカメラ１６ｂのステアリング角（図１１のＡ５で算出する）である。次に、算出したカ−ブ半径が２０００ｍ以下（カ−ブしている）かをチェックして（Ｇ２）、そうであると「特徴点選定」Ｇ３を実行する。
【０１０３】
Ｇ３．「特徴点選定」Ｇ３
ＣＰＵ１１は、ウィンドウ２の領域内かつｙ軸方向で無限遠点（Ｙｖ）までの、レジスタρＲ，θＲのデ−タρＲ，θＲが表わす直線上の画素を中心とする、ｙ方向±設定半幅値（路面上で±８０ｃｍ以内）、かつｘ方向±５画素以内の特徴点を、右白線（ここでは道路がカ−ブしているので右曲線）を表わす特徴点として抽出する。同様に、ウィンドウ２の領域内かつｙ軸方向で無限遠点（Ｙｖ）までの、レジスタρＬ，θＬのデ−タρＬ，θＬが表わす直線上の画素を中心とする、ｙ方向±設定半幅値（路面上で±８０ｃｍ以内）、かつｘ方向±５画素以内の特徴点を、左白線（ここでは道路がカ−ブしているので左曲線）を表わす特徴点として抽出する。
【０１０４】
Ｇ４Ａ．「座標変換」Ｇ４Ａ
次にＣＰＵ１１は、「特徴点選定」Ｇ３で抽出した特徴点の座標を、路面の３次元座標系（Ｘ，Ｙ，Ｚ）に変換する。Ｘは水平左右方向，Ｙは垂直上下方向，ＺはＸ，Ｙに直交する水平方向（車両前方向）である。カメラ１６ｂの光学モデルの側面および平面を図１８の（ａ）および（ｂ）に示す。なお、路面は水平な平面（Ｚ軸に平行）と見なす。図１８の（ａ）において、路面上の点Ｐが上述の特徴点の１つｙｐを意味するとする：
ｔａｎ（α−θ）＝ｈｃ／Ｚｐ                          ・・・（１６）
ｔａｎθ＝Ｂ／ｆ                              ・・・（１７）
であり、これらの関係より、点ＰのＺ軸座標値Ｚｐは、
Ｚｐ＝（ｆ＋Ｂ・ｔａｎα）・ｈｃ／（ｆ・ｔａｎα−Ｂ）      ・・・（１８）
となる。また、カメラ１６ｂの下向き角度αは、
ｔａｎα＝（ｙｏ−ＶＰ）／ｆ                          ・・・（１９）
である。（１９）式のｔａｎαを算出し、これを（１８）式に代入してＺｐを算出することができる。ここで、ｙｏはカメラ座標系（画面座標系）の視野中心位置，ｙｐは特徴点の位置，Ｂは、カメラ系のｙ座標上での、視野中心位置に対する特徴点の位置差、ＶＰはカメラ系のｙ座標上での、道路座標系の水平線を投影した位置である。
【０１０５】
毎回、距離計算にｔａｎ関数を使用すると、処理時間が長くなるため、近似計算を考える。関数ｔａｎ（β）と角度βとの関係は、βが０に近いときには、ｔａｎβ＝βと近似できるため、（１６）式，（１７）式は、
α−θ＝ｈｃ／Ｚｐ                          ・・・（１６ａ）
θ＝Ｂ／ｆ＝（ｙｏ−ｙｐ）／ｆ          ・・・（１７ａ）
α＝（ｙｏ−ＶＰ）／ｆ                  ・・・（１９ａ）
となり、（１８）式は、
Ｚｐ＝ｆ・ｈｃ／（ｙｐ−ＶＰ）            ・・・（１８ａ）
と近似できる。ＣＰＵ１１は、この（１８ａ）式の演算で、特徴点のカメラ系のｙ座標値を、道路系のＺ軸座標値Ｚｐに変換する。
【０１０６】
図１８の（ｂ）を参照すると、路面上の点Ｐ（画面上の特徴点の対応位置）と結像面との関係は、
ｔａｎθ＝Ｘｐ／Ｚｐ                          ・・・（２０）
ｔａｎθ＝ｘｐ／ｆ                            ・・・（２１）
となる。ｘｐが、カメラ座標系での、特徴点のｘ座標値である。これら（２０），（２１）式より、道路座標系の点ＰのＸ座標値Ｘｐは、
Ｘｐ＝Ｚｐ・ｘｐ／ｆ                      ・・・（２２）
と算出できる。ＣＰＵ１１は、この（２２）式で表わされる演算で、Ｘｐを算出する。なお、道路座標系（Ｘ，Ｙ，Ｚ）で、特徴点のＹ座標値は、計算処理を単純化するために、すべて０としている。
【０１０７】
Ｇ５Ａ．「特徴点の回転補正」Ｇ５Ａ
レジスタＡ，Ｂ，Ｃには、後述の「カメラステアリング角の算出」Ａ５で算出した、カメラ１６ｂ，２６ｂ，３６ｂのステアリング角度Ａ，Ｂ，Ｃ（図５）が格納される。「特徴点の回転補正」Ｇ５でＣＰＵ１１は、上述のように道路系座標に変換した特徴点位置デ−タ（Ｚｐ，Ｘｐ）を、垂直軸Ｙ（図１８の（ａ））を中心にＡだけ回転した値に変換する。これは、カメラの視野中心線から見た特徴点の方向を、車両の前後軸から見た特徴点の方向に変換することを意味する。すなわち、この回転補正前の特徴点位置デ−タ（Ｚｐ，Ｘｐ）は、Ｚ軸がカメラの視野中心線の水平面投影線と合致する道路座標系のものであるが、上述の回転補正は、特徴点位置デ−タ（Ｚｐ，Ｘｐ）を、Ｚ軸が車両前後軸の水平面投影線に合致する道路座標系のものに変換する。
【０１０８】
以上に説明した、図９の「補正画像メモリイニシャライズ」Ｃ６から図１０を経て図１１の「特徴点の回転補正」Ｇ５までの上述のＣＰＵ１１の処理と同様な処理を、ＣＰＵ２１およびＣＰＵ３１が、それぞれカメラ２６ｂおよび３６ｂで撮影して得た画像デ−タを対象に、実行する。
【０１０９】
Ｔ３Ａ．「補正デ−タの集積」Ｔ３Ａ
次にＣＰＵ１１は、上述のように回転補正を施した特徴点位置デ−タ（右白線対応のものと左白線対応のもの、計２グル−プ）を、メモリ１５ａの特定領域に割り当てたレ−ン領域デ−タテ−ブルの、カメラ１６ｂ撮影デ−タ領域（右白線用領域と左白線用領域）に書込む。
【０１１０】
そして、ＣＰＵ間シリアルデ−タ通信ラインを介して、ＣＰＵ２１に、それが上述のように回転補正を施した特徴点位置デ−タの転送を指示しかつＤＭＡ装置１４に、ＤＭＡ転送装置２４から送られて来るデ−タの、レ−ン領域デ−タテ−ブルのカメラ２６ｂ撮影デ−タ領域への書込みを指示する。ＣＰＵ２１はＣＰＵ１１のこの指示に応じてＤＭＡ装置２４に、回転補正を施した特徴点位置デ−タを格納しているメモリ領域を指定してデ−タ転送を指示する。ＤＭＡ装置２４はこの指示に応答して該メモリ領域のデ−タを読出してＤＭＡデ−タラインに送出し、ＤＭＡ装置１４がそれをメモリ１５ａに書込む。ＤＭＡ２４が送出終了を報知するとＣＰＵ２１は転送終了をＣＰＵ１１に報知する。
【０１１１】
この報知を受けるとＣＰＵ１１は、ＣＰＵ間シリアルデ−タ通信ラインを介して、ＣＰＵ３１に、それが上述のように回転補正を施した特徴点位置デ−タの転送を指示しかつＤＭＡ装置１４に、ＤＭＡ転送装置２４から送られて来るデ−タの、レ−ン領域デ−タテ−ブルのカメラ３６ｂ撮影デ−タ領域への書込みを指示する。ＣＰＵ３１はＣＰＵ１１のこの指示に応じてＤＭＡ装置３４に、回転補正を施した特徴点位置デ−タを格納しているメモリ領域を指定してデ−タ転送を指示する。ＤＭＡ装置３４はこの指示に応答して該メモリ領域のデ−タを読出してＤＭＡデ−タラインに送出し、ＤＭＡ装置１４がそれをメモリ１５ａに書込む。ＤＭＡ３４が送出終了を報知するとＣＰＵ２１は転送終了をＣＰＵ１１に報知する。
【０１１２】
なお、ＣＰＵ２１又はＣＰＵ３１が、ステップＧ２で推定カ−ブ半径Ｒが２０００ｍ超を判定していた場合には、ステップＧ３，Ｇ４Ａ，Ｇ５Ａを実行していないので、該ＣＰＵ２１又はＣＰＵ３１はＣＰＵ１１にデ−タなしを報知する。この場合にはそこでＣＰＵ１１は、後述の「ρ，θの座標変換」Ｇ４Ｂに進む。
Ｇ６Ａ．「曲線検出（最小自乗）」Ｇ６Ａ
ＣＰＵ１１は次に、上述のレ−ン領域デ−タテ−ブルの右白線用領域群の特徴点位置デ−タ（カメラ１６ｂ，２６ｂ，３６ｂそれぞれで得た特徴点の集合）に対して、最小自乗法を適用して、それらの特徴点の分布が表わす円弧（右白線の近似曲線）を算出する。すなわち、Ｚ方向で車両に近い側の円弧端のＸ，Ｚ座標値，遠い側の円弧端のＸ，Ｚ座標値，円弧中心のＸ，Ｚ座標値および半径ＲＲを算出する。これらの座標値はいずれも、この段階では、車両の前後軸の水平面投影線をＺ軸とする道路座標系のものである。このとき、特徴点のサンプル数（存在数）をカウントする。そして同様に、上述のレ−ン領域デ−タテ−ブルの左白線用領域群の特徴点位置デ−タ（カメラ１６ｂ，２６ｂ，３６ｂそれぞれで得た特徴点の集合）に対して、最小自乗法を適用して、それらの特徴点の分布が表わす円弧（左白線の近似曲線）を算出し、特徴点のサンプル数をカウントする。
【０１１３】
Ｇ７．「曲線検出の成否判定」Ｇ７
ＣＰＵ１１は次に、特徴点サンプル数（２組）および半径Ｒ（２組ＲＲ，ＲＬ）をチェックして、特徴点サンプル数の１つでも所定値未満であると、又は、カ−ブ半径Ｒの一方が２０００ｍを越えると、曲線検出不成立と見なして、レ−ンを直線と決定（判定）する。
【０１１４】
Ｇ９．「カ−ブＲのフィルタリング」Ｇ９
特徴点サンプル数のいずれもが所定値以上でしかもカ−ブ半径ＲＲ，ＲＬのいずれもが２０００ｍ以下であると、曲線検出成立と見なして、今回検出した半径ＲＲＲ，ＲＬのそれぞれをフィルタリング処理して、半径レジスタＲＲ，ＲＬに更新書込みする。すなわち、今回算出した半径Ｒが１５０ｍ以下のときには係数Ｋｗを１６に、１５０ｍ超過３００ｍ以下のときには係数Ｋｗを８に、３００ｍを越えるときには係数Ｋｗを４に定めて、
ＲＲ＝〔（Ｋｗ−１）・ＲＲ＋ＲＲ〕／Ｋｗ      ・・・（２３Ｒ）
ＲＬ＝〔（Ｋｗ−１）・ＲＬ＋ＲＬ〕／Ｋｗ      ・・・（２３Ｌ）
を算出し、算出したＲＲおよびＲＬをレジスタＲＲ，ＲＬに更新書込みする。（Ｋｗ−１）・ＲＲ，（Ｋｗ−１）・ＲＬのＲＲおよびＲＬは、それぞれレジスタＲＲおよびＲＬの、更新書込み前のデ−タ値である。Ｋｗを上述のように定めるので、算出したカ−ブ半径ＲＲ，ＲＬが大きいときには、フィルタリング処理値ＲＲ，ＲＬに対する今回算出の半径ＲＲ，ＲＬの寄与比（重み）が大きく、算出値に対するフィルタリング処理値の応答性が高い。算出したカ−ブ半径ＲＲ，ＲＬが小さいときには、フィルタリング処理値ＲＲ，ＲＬに対する今回算出の半径ＲＲ，ＲＬの寄与比（重み）が小さく、算出値に対するフィルタリング処理値の応答性は低い。カ−ブ半径に対応して定められるカメラ１６ｂ，２６ｂ，３６ｂのステアリング角Ａ，Ｂ，Ｃは、カ−ブ半径に略反比例し、ホストＭＰＵ１８が行なうカ−ブ対応の制御の重要度がカ−ブ半径に略反比例し、カ−ブ検出又は算出の誤差が大きい場合やそれらの信頼性が低い場合には、カ−ブ半径が小さいときにカメラが走行レ−ンを見失なうとか、ホストＭＰＵ１８のカ−ブ対応制御がエラ−となるとか、制御の信頼性が低下する。これを改善するために、上述のように、フィルタリング処理値を、大きい算出値ＲＲ，ＲＬに対しては高応答（Ｋｗ小）に、小さい算出値ＲＲ，ＲＬに対しては低応答（Ｋｗ大）に定めた。
【０１１５】
Ｇ４Ｂ．「ρ，θの座標変換」Ｇ４Ｂ
先の「カ−ブ推定」Ｇ１で推定したカ−ブ半径がＲが２０００ｍを越える場合、先の「補正デ−タの集積」Ｔ３Ａで、ＣＰＵ２１又はＣＰＵ３１が転送デ−タなしを報知して来た場合、あるいは、「曲線検出の成否判定」Ｇ７で曲線検出不成立と判定した場合、ＣＰＵ１１は、先の「ρ，θ＆無限遠点のフィルタリング」Ａ４で得た走行レ−ンの左右白線を近似する直線を規定するデ−タ（ρＬ，θＬ），（ρＲ，θＲ）を、カメラの視野中心線の水平面投影線をＺ軸とする道路座標系（Ｘ，Ｙ，Ｚ）の直線を規定するデ−タ（Ｒｏａｄ−ρＬ，Ｒｏａｄ−θＬ），（Ｒｏａｄ−ρＲ，Ｒｏａｄ−θＲ）に変換する。ＣＰＵ２１およびＣＰＵ３１も、先の「カ−ブ推定」Ｇ１で推定したカ−ブ半径Ｒが２０００ｍを越える場合、同様に変換処理を行なう。
【０１１６】
Ｇ５Ｂ．「回転補正」Ｇ５Ｂ
ＣＰＵ１１は、上記変換で得たデ−タ（Ｒｏａｄ−ρＬ，Ｒｏａｄ−θＬ），（Ｒｏａｄ−ρＲ，Ｒｏａｄ−θＲ）に、カメラ１６ｂのステアリング角Ａ相当の回転補正を加えた、車両前後軸を基準とした直線規定デ−タ（ρＬＲ，θＬＲ），（ρＲＲ，θＲＲ）を算出する。すなわち、カメラの視野中心線の水平面投影線をＺ軸とする道路座標系の直線規定デ−タ（Ｒｏａｄ−ρＬ，Ｒｏａｄ−θＬ），（Ｒｏａｄ−ρＲ，Ｒｏａｄ−θＲ）を、車両の前後軸の水平面投影線をＺ軸とする道路座標系の直線規定デ−タ（ρＬＲ，θＬＲ），（ρＲＲ，θＲＲ）に変換する。ＣＰＵ２１およびＣＰＵ３１も同様に変換処理を行なう。
【０１１７】
Ｔ３Ｂ．「補正デ−タの集積」Ｔ３Ｂ
ＣＰＵ１１は、ＣＰＵ間シリアルデ−タ通信ラインを介して、ＣＰＵ２１およびＣＰＵ３１より、それらが変換処理した直線規定デ−タ（ρＬＲ，θＬＲ），（ρＲＲ，θＲＲ）を得る。
【０１１８】
なお、ＣＰＵ２１又はＣＰＵ３１が、ステップＧ２で推定カ−ブＲが２０００ｍ以下を判定していた場合には、ステップＧ４Ｂ，Ｇ５Ｂを実行していないので、該ＣＰＵ２１又はＣＰＵ３１は、ＣＰＵ１１に該当デ−タなしを報知する。この場合にはＣＰＵ１１は、そのまま次の「直線検出」Ｇ６Ｂに進む。
【０１１９】
Ｇ６Ｂ．「直線検出」Ｇ６Ｂ
ＣＰＵ１１は、自己が算出してセ−ブしている直線規定デ−タ（ρＬＲ，θＬＲ），（ρＲＲ，θＲＲ）ならびにＣＰＵ２１およびＣＰＵ３１が転送して来た同様な直線規定デ−タの３者（ただし、ＣＰＵ１１のものだけ（１者のみ）の場合があり、またＣＰＵ２１又はＣＰＵ３１のものとＣＰＵ１１のもの合せて２者の場合もある）が表わす２グル−プの直線（右白線グル−プと左白線グル−プ）の各グル−プを代表する（近似する）右代表直線および左代表直線を規定するデ−タ（ρＲＲｍ，θＲＲｍ）および（ρＬＲｍ，θＬＲｍ）を算出する。これは重み付け平均で行ない、ＣＰＵ１１のものには８／１６の重み付けを、ＣＰＵ２１のものには５／１６の重み付けを、ＣＰＵ３１のものには３／１６の重み付けをする。
【０１２０】
Ｇ１０．「左右レ−ンの推定」Ｇ１０
ＣＰＵ１１は、「カ−ブＲのフィルタリング」Ｇ９からこの「左右レ−ンの推定」Ｇ１０に進んだときには、「カ−ブＲのフィルタリング」Ｇ９で得た半径レジスタＲＲのデ−タとレジスタＲＬのＲＬを比較して右曲りか左曲りかを判定して、右曲りのときには、ＲＲ−ＷＬを右隣接レ−ンの右白線のカ−ブ半径として、ＲＬ＋ＷＬを左隣接レ−ンの左白線のカ−ブ半径として算出し、左曲りのときには、ＲＲ＋ＷＬを右隣接レ−ンの右白線のカ−ブ半径として、ＲＬ−ＷＬを左隣接レ−ンの左白線のカ−ブ半径として算出する。ＷＬは、レジスタＷＬのデ−タであり、「左右白線間隔（ＷＬ）計算」Ｄ５（図１０）でＣＰＵ１１が算出した自車走行レ−ン幅である。
【０１２１】
「直線検出」Ｇ６Ｂからこの「左右レ−ンの推定」Ｇ１０に進んだときには、「直線検出」Ｇ６Ｂで算出した、右代表直線（を規定するデ−タρＲＲｍ，θＲＲｍ）を右にＷＬ分平行移動した直線を規定するデ−タ（ρＲＲＲ，θＲＲＲ）ならびに左代表直線（を規定するデ−タρＬＲｍ，θＬＲｍ）を左にＷＬ分平行移動した直線を規定するデ−タ（ρＬＬＲ，θＬＬＲ）を算出する。
【０１２２】
Ｇ１２．「車両検索エリアの設定」Ｇ１２
曲線検出成立と判定している場合には、「左右レ−ンの推定」Ｇ１０で算出した、右隣接レ−ンの右白線に相当する円弧および左隣接レ−ンの左白線に相当する円弧それぞれの、図３（道路座標系であり車両の前後軸の水平面投影線がＺ軸）に示す１０ｍ，Ｌ１＝１５ｍ，３０ｍ，Ｌ２＝４５ｍ，６０ｍ，Ｌ３＝７５ｍおよび９０ｍ（いずれもＺ軸値）の、それぞれの地点の位置デ−タ（Ｚ，Ｘ）を算出する。
【０１２３】
曲線検出不成立と判定している場合には、「左右レ−ンの推定」Ｇ１０で算出した、右隣接レ−ンの右白線に相当する直線および左隣接レ−ンの左白線に相当する直線それぞれの、図３に示す１０ｍ，Ｌ１＝１５ｍ，３０ｍ，Ｌ２＝４５ｍ，６０ｍ，Ｌ３＝７５ｍおよび９０ｍの、それぞれの地点の位置デ−タ（Ｚ，Ｘ）を算出する。
【０１２４】
これにより、カメラ１６ｂ（ＣＰＵ１１）に撮影が割り当てられた領域（１０〜３０ｍの範囲）に、道路領域（自車走行レ−ン＋右隣接レ−ン＋左隣接レ−ン）を規定する６点（１０ｍ地点で左右各１点，１５ｍ地点で左右各１点および３０ｍ地点で左右各１点）が定められたことになる。
【０１２５】
同様に、カメラ２６ｂ（ＣＰＵ２１）に撮影が割り当てられた領域（３０〜６０ｍの範囲）に、道路領域（自車走行レ−ン＋右隣接レ−ン＋左隣接レ−ン）を規定する６点（３０ｍ地点で左右各１点，４５ｍ地点で左右各１点および６０ｍ地点で左右各１点）が定められたことになる。
【０１２６】
更に同様に、カメラ３６ｂ（ＣＰＵ３１）に撮影が割り当てられた領域（６０〜９０ｍの範囲）に、道路領域（自車走行レ−ン＋右隣接レ−ン＋左隣接レ−ン）自車両走行レ−ン領域を規定する６点（６０ｍ地点で左右各１点，７５ｍ地点で左右各１点および９０ｍ地点で左右各１点）が定められたことになる。
【０１２７】
Ｇ１２．「車両検索エリアの座標逆変換」Ｇ１２
ＣＰＵ１１は、カメラ１６ｂ（ＣＰＵ１１）に撮影が割り当てられた領域の上記６点を、カメラ１６ｂのステアリング角Ａ対応の補正を施してから、すなわちカメラ１６ｂの視野中心線の水平面投影線をＺ軸とする道路座標系の位置に変換してから、カメラ１６ｂの撮影画面上の座標値に逆変換し、同様に、カメラ２６ｂ（ＣＰＵ２１）および３６ｂ（ＣＰＵ３１）に撮影が割り当てられた領域の各６点を、各カメラの撮影画面上の座標値に逆変換する。
【０１２８】
Ｔ４．「車両検索エリア内特徴点の集積」Ｔ４
ここでＣＰＵ１１は、ＣＰＵ間シリアルデ−タ通信ラインを介して、ＣＰＵ２１に、カメラ２６ｂ（ＣＰＵ２１）に撮影が割り当てられた領域の上記６点の上記逆変換した座標値を与えて、該６点で囲まれる領域の特徴点の摘出，座標変換（カメラ視野中心線の水平面投影線をＺ軸とする道路座標系の位置への変換）および回転補正（車両前後軸の水平面投影線をＺ軸とする道路座標系の位置への変換）を指示し、ＣＰＵ３１には、カメラ３６ｂ（ＣＰＵ３１）に撮影が割り当てられた領域の上記６点の逆変換した座標値を与えて、該６点で囲まれる領域の特徴点の摘出，座標変換および回転補正を指示する。そしてＣＰＵ１１は、カメラ１６ｂ（ＣＰＵ１１）に撮影が割り当てられた領域の上記６点の上記逆変換した座標値に基づいて、該６点が囲む領域（折れ線で囲まれる）の、メモリ１５ａ上の特徴点を摘出し、摘出した特徴点に対して、上述の「座標変換」Ｇ４Ａと同様な座標変換処理を実行し、更に、上述の「特徴点の回転補正」Ｇ５Ａと同様な回転補正処理を実行する。このようにして得た特徴点デ−タは、メモリ１５ａの特定領域に割り当てたレ−ン領域デ−タテ−ブルの、カメラ１６ｂ撮影デ−タ領域に書込む。ＣＰＵ２１およびＣＰＵ３１も同様な処理を行なう。
【０１２９】
次にＣＰＵ１１は、ＣＰＵ間シリアルデ−タ通信ラインを介して、ＣＰＵ２１に、このように処理した特徴点デ−タの、メモリ１５ａへのＤＭＡ転送を指示する。このＤＭＡ転送が終了するとＣＰＵ１１は、ＣＰＵ３１に、上述のように処理した特徴点デ−タの、メモリ１５ａへのＤＭＡ転送を指示する。これらのＤＭＡ転送の詳細は、前述の「補正デ−タの集積」Ｔ３Ａの中で説明したＤＭＡ転送と同様である。
【０１３０】
Ｈ．「先行車両認識＆測距」Ｈ
メモリ１５ａの特定領域に割り当てたレ−ン領域デ−タテ−ブルの、カメラ１６ｂ撮影デ−タ領域，カメラ２６ｂ撮影デ−タ領域およびカメラ３６ｂ撮影デ−タ領域の全領域に渡って、特徴点の分布を検索する。すなわち、車両前後軸の水平面投影線をＺ軸とする道路座標系で、自車走行レ−ン，右隣接レ−ンおよび左隣接レ−ンの３レ−ン（道路面領域）に分布する特徴点の、Ｘ方向（左右方向）分布数（Ｚ軸投影ヒストグラム）を検索する。これにおいては、道路面領域をＺ方向で下（車両直近）側から、左から右に水平走査（Ｘ方向走査）して、その走査線上にある特徴点の数をカウントし、カウント値を走査線Ｎｏ．（Ｚ位置）対応でセ−ブする。このＸ走査を道路面領域のＺ方向で下（車両直近）から上側（遠方）へ行なう。
【０１３１】
道路面領域についてこれ（Ｚ軸投影ヒストグラムの作成）を完了すると、特徴点の水平カウント値（Ｘ方向分布数）が設定値以上のＺ方向連続幅（車両に近い始端Ｚ位置と終端Ｚ位置）を、Ｚ方向で下（車両直近）側から検索し、それがあると、そのＺ方向連続幅のＺ始端からＺ終端までの、道路面領域の特徴点を、Ｘ方向で左端から垂直（Ｚ方向）に走査して右端まで、特徴点の垂直分布数を検索（Ｘ軸投影ヒストグラムを作成）する。そしてこのＸ軸投影ヒストグラムから、特徴点の垂直カウント値（Ｚ方向分布数）が設定値以上のＸ方向連続幅（始端Ｘ位置と終端Ｘ位置）を、Ｘ方向で左（左隣接レ−ンの左白線相当位置）側から検索し、それがあると、その中央点（始端Ｘ位置と終端Ｘ位置の中間点（Ｘｔ）を算出し、垂直走査幅（前記水平カウント値が設定値以上のＺ方向連続幅の中間点（Ｚｔ）を算出し、車両デ−タテ−ブルに、（Ｘｔ，Ｚｔ）を書込む。特徴点の水平カウント値が設定値以上の第１のＺ方向連続幅について、左端から右端まで、上述の垂直カウント値が設定値以上のｘ方向連続幅の検索を終了すると、Ｚ軸投影ヒストグラム上の、車両直近から遠方への次の、水平カウント値が設定値以上の第２のＺ方向連続幅を検索する。
【０１３２】
このようにして、まずＺ軸投影ヒストグラムによりＺ方向の、他車両が存在する可能性がある領域を、自車両直近側から遠方側に（Ｚ方向に）順次に検索し、１つの該当領域を検索したときにその領域を、自車両の左方側（左隣接レ−ン）から右方側に（Ｘ方向に）、他車両が存在する可能性がある領域を検索し、それがあると、検索した領域の中心デ−タ（Ｘｔ，Ｚｔ）を、車両デ−タテ−ブルに書込む。これを道路面領域全面について終了すると、カメラ１６ｂ，２６ｂおよび３６ｂで撮影した路面（自車走行レ−ン＋推定の左隣接レ−ン＋推定の右隣性レ−ン）上の存在車両（正確には、車両でない場合もある。例えば貨物車からの落下物）の道路座標系上の位置（Ｘｔ，Ｚｔ）が車両デ−タテ−ブルにあることになる。
【０１３３】
次にＣＰＵ１１は、車両デ−タテ−ブル上の各位置（Ｘｔ，Ｚｔ）が、左隣接レ−ン（推定レ−ン）上か，それと自車走行レ−ンとの間（両レ−ンにまたがる）か、自車走行レ−ン上か、それと右隣接レ−ンとの間か、あるいは、右隣接レ−ン（推定レ−ン）上か、識別し、この区分を表わすデ−タを、車両デ−タテ−ブルの各位置情報（Ｘｔ，Ｚｔ）に付加する。以下においては位置情報（Ｘｔ，Ｚｔ）＋区分デ−タを、他車両デ−タと称す。
【０１３４】
Ｋ．「出力」Ｋ
ＣＰＵ１１は、曲線検出成立の場合にはカ−ブ情報（カ−ブ半径（ＲＲ＋ＲＬ）／２）および車両デ−タテ−ブルの他車両デ−タを、通信コントロ−ラ１７を介してホストＭＰＵ１８に転送する。曲線検出不成立の場合には、直線情報（直線であることを表わすデ−タ）と車両デ−タテ−ブルの他車両デ−タを転送する。
【０１３５】
Ａ５．「カメラステアリング角の算出」Ａ５
ＣＰＵ１１は、車両デ−タテ−ブルの、他車両デ−タの中から、区分デ−タが自車走行レ−ン，それと左又は右隣性レ−ンとの間である車両位置の、距離（Ｚｔ）が１０〜３０ｍの範囲内であって、しかも最短のものを検索する。それがあると、該検索した車両位置（Ｘｔ，Ｚｔ）にカメラ１６ｂの視野中心線（の路面上投影線）を向けるためのステアリング角Ａを算出する。該当する車両位置が無かったときには、自車走行レ−ンの、車両よりＬ１前方（Ｚ位置＝Ｌ１）の幅ＷＬの中央（左，右白線の中間点）にカメラ１６ｂの視野中心線（の路面上投影線）を向けるためのステアリング角Ａを算出する。そして、レジスタＡｎのデータＡｎをレジスタＡに書込み、レジスタＡｎに、今回算出したステアリング角Ａを書込む。
【０１３６】
次にＣＰＵ１１は、車両デ−タテ−ブルの、他車両デ−タの中から、区分デ−タが自車走行レ−ン，それと左又は右隣性レ−ンとの間である車両位置の、距離（Ｚｔ）が３０〜６０ｍの範囲内であって、しかも最短のものを検索する。それがあると、該検索した車両位置（Ｘｔ，Ｚｔ）にカメラ２６ｂの視野中心線（の路面上投影線）を向けるためのステアリング角Ｂを算出する。該当する車両位置が無かったときには、自車走行レ−ンの、車両よりＬ２前方（Ｚ位置＝Ｌ２）の幅ＷＬの中央（左，右白線の中間点）にカメラ２６ｂの視野中心線（の路面上投影線）を向けるためのステアリング角Ｂを算出する。そして、レジスタＢｎのデータＢｎをレジスタＢに書込み、レジスタＢｎに、今回算出したステアリング角Ｂを書込む。
【０１３７】
更にＣＰＵ１１は、車両デ−タテ−ブルの、他車両デ−タの中から、区分デ−タが自車走行レ−ン，それと左又は右隣性レ−ンとの間である車両位置の、距離（Ｚｔ）が６０〜９０ｍの範囲内であって、しかも最短のものを検索する。それがあると、該検索した車両位置（Ｘｔ，Ｚｔ）にカメラ３６ｂの視野中心線（の路面上投影線）を向けるためのステアリング角Ｃを算出する。該当する車両位置が無かったときには、自車走行レ−ンの、車両よりＬ３前方（Ｚ位置＝Ｌ３）の幅ＷＬの中央（左，右白線の中間点）にカメラ３６ｂの視野中心線（の路面上投影線）を向けるためのステアリング角Ｃを算出する。そして、レジスタＣｎのデータＣｎをレジスタＣに書込み、レジスタＣｎに、今回算出したステアリング角Ｃを書込む。
【０１３８】
Ｔ５．「カメラステアリング角の送信」Ｔ５
ＣＰＵ１１は、ＣＰＵ間シリアルデ−タ通信ライン介して、ＣＰＵ２１に、レジスタＢｎのデ−タＢｎを送信し、ＣＰＵ３１にはレジスタＣｎのデ−タＣｎを送信する。
【０１３９】
ＣＰＵ１１，ＣＰＵ２１およびＣＰＵ３１は、先に説明した「カメラステアリング出力」Ａ１で、デ−タＡｎ，ＢｎおよびＣｎを、それぞれステアリングコントロ−ラ１６ｅ，２６ｅおよび３６ｅに与え、これらのコントロ−ラが、カメラ１６ｂ，２６ｂおよび３６ｂの視野中心線（の水平面投影線）が車両前後軸（の水平面投影線）となす角がＡｎ，ＢｎおよびＣｎとなるようにカメラを回転駆動する。これにより、前方車両があるときには、カメラは前方車両を追跡し、前方車両がないときには、自車走行レ−ンの幅中央を追跡することになる。
【０１４０】
「カメラステアリング角の送信」Ｔ５を終了するとＣＰＵ１１は、図９の「画像入力を指令」Ｔ１に進む。これ以降の説明は、ここまでの説明の繰返しになるので、省略する。
【図面の簡単な説明】
【図１】本発明の一実施例の概要を示すブロック図である。
【図２】図１に示すテレビカメラ１６ｂの撮影画面を示す平面図である。
【図３】図１に示すテレビカメラ１６ｂ，２６ｂおよび３６ｂの撮影範囲（車両前方方向）を示す平面図である。
【図４】（ａ）は図１に示すテレビカメラ１６ｂ，２６ｂおよび３６ｂの撮影範囲（左右方向）を示すグラフ、（ｂ）は量子化誤差を示すグラフである。
【図５】図１に示すテレビカメラ１６ｂ，２６ｂおよび３６ｂの撮影範囲およびステアリング角Ａ，Ｂ，Ｃを示す平面図である。
【図６】図１に示す第１画像処理装置１００の構成を示すブロック図である。
【図７】図１に示す第２画像処理装置２００の構成を示すブロック図である。
【図８】図１に示す第３画像処理装置３００の構成を示すブロック図である。
【図９】図６に示すＣＰＵ１１の画像デ−タ処理および先行車両検出の内容の一部を示すフロ−チャ−トである。
【図１０】図６に示すＣＰＵ１１の画像デ−タ処理および先行車両検出の内容の一部を示すフロ−チャ−トである。
【図１１】図６に示すＣＰＵ１１の画像デ−タ処理および先行車両検出の内容の残部を示すフロ−チャ−トである。
【図１２】（ａ）は、図９に示す「特徴点検出ウィンドウ１セット」Ｃ１の内容を示すフロ−チャ−トである。（ｂ）は、図１に示すテレビカメラ１６ｂの撮影画面上の特徴点検出ウィンドウ１の領域を示す平面図である。
【図１３】（ａ）は、図９に示す「ボンネット検出」Ｃ３の内容を示すフロ−チャ−トである。（ｂ）は、図１に示すテレビカメラ１６ｂの撮影画面上の特徴点の分布と、「直線あてはめ」により検出する直線を示す平面図である。
【図１４】（ａ）は、図１に示すテレビカメラ１６ｂの撮影画面上のロ−ル角およびパン移動量を示す平面図、（ｂ）は図９に示す「画像回転平行移動」Ｃ７で用いる計算式を示す。
【図１５】図９に示す「補間」Ｃ８で注目画素の画像デ−タを算出するために参照する画素を示す平面図である。
【図１６】図１０に示す「レ−ン検出ウィンドウ設定」Ａ３で設定されるテレビカメラ１６ｂの撮影画面上のレ−ン検出ウィンドウを示す平面図である。
【図１７】図１に示すテレビカメラ１６ｂ内のレンズおよび撮像素子と車両前方の先行車両との幾何学的関係を示す側面概要図である。
【図１８】（ａ）は図１に示すテレビカメラ１６ｂ内のレンズおよび撮像素子と車両前方の先行車両との幾何学的関係を示す側面概要図、（ｂ）は平面概要図である。
【符号の説明】
１１：ＣＰＵ                      １２：ＲＯＭ
１３：ＲＡＭ                      １５〜１６：入出力ポ−ト
１５ａ：イメ−ジメモリ              １６ａ：カメラコントロ−ラ
１６ｂ：テレビカメラ                １６ｃ：Ａ／Ｄコンバ−タ
１６ｄ：回動機構                    １６ｅ：ステアリングコントロ−ラ
１７：通信コントロ−ラ              １８：ホストＭＰＵ
【図１】
0003588728.tif 000012
【図２】
0003588728.tif 000013
【図３】
0003588728.tif 000014
【図４】
0003588728.tif 000015
【図５】
0003588728.tif 000016
【図６】
0003588728.tif 000017
【図７】
0003588728.tif 000018
【図８】
0003588728.tif 000019
【図９】
0003588728.tif 000020
【図１０】
0003588728.tif 000021
【図１１】
0003588728.tif 000022
【図１２】
0003588728.tif 000023
【図１３】
0003588728.tif 000024
【図１４】
0003588728.tif 000025
【図１５】
0003588728.tif 000026
【図１６】
0003588728.tif 000027
【図１７】
0003588728.tif 000028
【図１８】
0003588728.tif 000029