(57)【特許請求の範囲】
【請求項１】
車輌周辺の撮像画像から作業対象領域と非作業対象領域との境界を検出し、検出した境界に沿って自律走行するよう操舵系を制御する自律走行作業車の走行制御方法において、
前記撮像画像に対し設定した画面領域内において２次元移動平均処理を行い平均化処理画像を得、該平均化処理画像に対し水平軸方向の輝度変化量を算出して輝度微分値画像を得て、
その後、輝度微分量と度数とからなるヒストグラムを作成し、画面領域内の輝度変化量の最大値付近の平均値として該ヒストグラムにおける上位複数データの平均値の略５０％にスライスレベルを設定し、
前記輝度微分値画像から明るさの変化量が前記スライスレベルを越える画素を抽出して２値化画像を生成し、
前記２値化画像からハフ変換によって前記境界を近似する直線を算出することを特徴とする自律走行作業車の走行制御方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、車輌周辺の撮像画像を処理して作業対象領域と非作業対象領域との境界を検出し、検出した境界に沿って自律走行するよう操舵系を制御する自律走行作業車の走行制御方法に関する。
【０００２】
【従来の技術】
従来、無人で自律走行する自律走行車に対しては、自律走行のための自己位置検出として、電線を地下に埋設し、この電線が発する磁界を磁気センサで検出する技術が提案されているが、ゴルフ場、河川敷堤防、公園等の各種フィールドで草刈、芝刈等の作業を無人で行なう自律走行作業車等のように、自律走行領域が広大な場合、領域の地下全てに電線を埋設することは困難であり、設置費用も大きなものとなる。
【０００３】
このため、前記自律走行作業車では、光センサ等の無接触センサあるいは機械的な接触式センサ等を用いてフィールド上の既処理と未処理地との境界部を検出し、検出した境界部に沿った倣い走行を行なうものが多く、最近では、特開昭６１−１３９３０４号公報等に開示されているように、カメラを搭載して作業対象を含む周辺領域を撮像し、撮像画像における明るさの変化量から作業対象領域と非作業対象領域との境界を検出する技術が提案されている。
【０００４】
【発明が解決しようとする課題】
しかしながら、撮像画像における明るさの変化量から境界を検出する技術においては、画面に写る作業対象領域と非作業対象領域との比率によって画像を２値化するためのスライスレベルが変化して的確な２値化画像が得られない、２値化画像から境界を近似する直線を算出する際にノイズの影響を受けやすいといった問題がある。
【０００５】
本発明は上記事情に鑑みてなされたもので、作業対象領域と非作業対象領域との境界に沿った走行制御を行なうため撮像画像から境界を検出する際に、的確に画像を２値化し、この２値化画像から正確な境界近似直線を算出して制御性を向上することのできる自律走行作業車の走行制御方法を提供することを目的としている。
【０００６】
【課題を解決するための手段】
本発明は、車輌周辺の撮像画像から作業対象領域と非作業対象領域との境界を検出し、検出した境界に沿って自律走行するよう操舵系を制御する自律走行作業車の走行制御方法において、前記撮像画像に対し設定した画面領域内において２次元移動平均処理を行い平均化処理画像を得、該平均化処理画像に対し水平軸方向の輝度変化量を算出して輝度微分値画像を得て、その後、輝度微分量と度数とからなるヒストグラムを作成し、画面領域内の輝度変化量の最大値付近の平均値として該ヒストグラムにおける上位複数データの平均値の略５０％にスライスレベルを設定し、前記輝度微分値画像から明るさの変化量が前記スライスレベルを越える画素を抽出して２値化画像を生成し、前記２値化画像からハフ変換によって前記境界を近似する直線を算出することを特徴とする。
【０００７】
【作用】
本発明は、車輌周辺の撮像画像から作業対象領域と非作業対象領域との境界を検出し、検出した境界に沿って自律走行するよう自律走行作業車の操舵系を制御するに際し、撮像画像に対して設定した画面領域内において２次元移動平均処理を行って得た平均化処理画像に対し、水平軸方向の輝度変化量を算出して輝度微分値画像を得て、その後、輝度微分量と度数とからなるヒストグラムを作成する。そして、画面領域内の輝度変化量の最大値付近の平均値として該ヒストグラムにおける上位複数データの平均値の略５０％にスライスレベルを設定し、輝度微分値画像から明るさの変化量が前記スライスレベルを越える画素を抽出して２値化画像を生成して、この２値化画像からハフ変換によって境界を近似する直線を算出する。
【０００８】
【実施例】
以下、図面を参照して本発明の実施例を説明する。図面は本発明の一実施例に係わり、図１は境界検出ルーチンのフローチャート、図２は走行制御ルーチンのフローチャート、図３は芝刈作業車の概略説明図、図４は操舵制御系の基本構成図、図５は境界検出部の回路ブロック図、図６は作業領域を撮像した元画像を示す説明図、図７は平均化処理画像を示す説明図、図８は輝度微分値画像を示す説明図、図９はスライスレベル算出用ヒストグラムを示す説明図、図１０は２値化画像を示す説明図、図１１はハフ変換用２次元ヒストグラムを示す説明図、図１２はウィンドウ内での近似直線式を表わす座標軸を示す説明図、図１３は境界近似直線の認識結果を示す説明図、図１４は最終的に選択した境界近似直線を示す説明図である。
【０００９】
図３において、符号１は無人で自律走行が可能な自律走行作業車を示し、本実施例においてはゴルフ場等の草・芝刈り作業を行う芝刈作業車である。この芝刈作業車１には、草・芝刈作業を行うためのモーア等の刈刃機構部２を車輌本体下部に備えるとともに、作業領域を撮像する撮像手段として例えば固体撮像素子（ＣＣＤ）を使用したＣＣＤカメラ３を備え、さらに、走行履歴を算出するための地磁気センサ４及び車輪エンコーダ５からなる推測航法センサを備えている。
【００１０】
前記芝刈作業車１は、エンジン駆動で走行し、図４に示すように、前輪操舵機構９ａ、後輪操舵機構９ｂが、それぞれ前輪用油圧シリンダ８ａ、後輪用油圧シリンダ８ｂによって独立して駆動されるようになっている。各油圧シリンダ８ａ，８ｂには、それぞれ前輪操舵用油圧制御弁７ａ、後輪操舵用油圧制御弁７ｂを介して、エンジン１ａによって駆動される油圧ポンプ６が接続されており、制御装置２０により制御される。
【００１１】
前記制御装置２０には、前記ＣＣＤカメラ３が接続される境界検出部３０と、前輪操舵用油圧制御弁７ａ及び後輪操舵用油圧制御弁７ｂが接続されるとともに、前輪操舵機構９ａ、後輪操舵機構９ｂにそれぞれ取付けられた舵角センサ１０ａ，１０ｂ、前記地磁気センサ４、前記車輪エンコーダ５等からの各信号が入力される走行制御部４０とが備えられ、それぞれがマイクロコンピュータを中心として構成されている。
【００１２】
前記境界検出部３０では、前記ＣＣＤカメラ３で撮像した車輌周辺の画像から、例えば、ゴルフ場のフェアウェイとラフとの境界や、草・芝刈り作業中の作業済み領域と未作業領域との境界等のような作業対象領域と非作業対象領域との境界（以下、作業境界と称する）を検出し、また、前記走行制御部４０では、作業に関して予め記憶されている走行経路情報に従って、前記境界検出部３０で検出した作業境界に沿った倣い走行を行なうよう操舵系を制御し、地磁気センサ４及び車輪エンコーダ５からの信号により車輌の走行履歴を記録する。
【００１３】
前記境界検出部３０の具体的回路構成は図５に示され、ＣＰＵ５０、ワークデータを保持するためのＲＡＭ５１、制御用固定データ及び制御用プログラムが格納されているＲＯＭ５２、入出力（Ｉ／Ｏ）インターフェース５３を備えたマイクロコンピュータのデータバス５４及びアドレスバス５５に、例えば５１２×５１２画素のフレームメモリからなるビデオメモリ６５が切換回路６４を介して接続されている。
【００１４】
また、前記ビデオメモリ６５には、前記切換回路６４を介してＡＤ変換器６０、アドレス制御回路６１が接続されており、前記ＡＤ変換器６０に、ＣＣＤカメラ３からのビデオ信号を増幅するアンプ５８が接続されるとともに、前記アドレス制御回路６１に、ＣＣＤカメラ３のビデオ信号から同期信号を分離してタイミング信号を生成する同期回路５９が接続されている。
【００１５】
ＡＤ変換器６０では、アンプ５８で増幅されたビデオ信号を、例えば約８ＭＨｚのサンプル速度で同期回路５９からのタイミング信号に同期してデジタルデータに変換し、データバス６２を介して切換回路６４に出力する。また、アドレス制御回路６１は、同期回路５９からのタイミング信号に同期してアドレスデータを生成し、アドレスバス６３を介して切換回路６４に供給する。
【００１６】
前記切換回路６４は、ＣＰＵ５０側のデータバス５４及びアドレスバス５５と、ＡＤ変換器６０側のデータバス６２及びアドレスバス６３とのいずれか一方を選択的にビデオメモリ６５に接続するものであり、アドレス制御回路６１から切換回路６４にアドレスデータが供給されている間はＡＤ変換器６０側のデータバス６２をビデオメモリ６５に接続して画像データを書込み、この間、ＣＰＵ５０によるビデオメモリ６５へのアクセスを禁止する。
【００１７】
そして、ＣＣＤカメラ３からのビデオ信号の供給が停止し、ＣＰＵ５０のビデオメモリ６５へのアクセスが可能になると、ＣＰＵ５０では、ビデオメモリ６５から画像データを読出し、読出した画像データを処理して作業境界を近似する直線の傾き、切片を求めた後、Ｉ／Ｏインターフェース５３を介して前記走行制御部４０に出力する。
【００１８】
以下、境界検出部３０による作業境界検出、次いで、走行制御部４０による倣い制御について説明する。
【００１９】
まず、境界検出部３０にて実行される図１の境界検出ルーチンでは、ステップＳ１０１で、ビデオメモリ６５から画像データを入力すると、ステップＳ１０２で、ノイズや特異点除去のための２次元移動平均処理を行なった後、ステップＳ１０３で、画面上の明るさの変化点（境界）を抽出するため、水平軸方向の輝度変化量を算出する。
【００２０】
例えば、図６に示すような芝刈作業における既刈領域と未刈領域との境界部分を撮像した元画像に対し、２０×２０画素の強度平均値をＸ，Ｙ方向に４画素ずつずらした状態の画素データの平均値を求めることにより２次元移動平均処理を行ない、図７に示すような平均化処理画像を得る。そして、この平均化処理画像に対し、水平軸方向の輝度変化量を算出することにより、図８に示すような輝度微分値画像を得る。
【００２１】
尚、図６中のＷＤはウィンドウを示し、以下の処理で、このウィンドウ内で作業境界を近似する直線を求める。
【００２２】
続いて、ステップＳ１０４では、画像を２値化するためのスライスレベルを算出する。このスライスレベルは、図９に示すように、輝度微分量を横軸、度数を縦軸として作成したヒストグラム等から算出され、設定した画面領域内の輝度変化量の最大値付近の平均値、例えば上位１０データの平均値の約５０％に設定される。このため、全画面の平均値に基づいてスライスレベルを算出する場合等のように、画面に写っている作業対象領域と非作業対象領域との比率によってスライスレベルが変動することがなく、的確に画像を２値化することができる。
【００２３】
その後、ステップＳ１０５へ進み、前記ステップＳ１０４で設定したスライスレベルを越えている画素を、前記ステップＳ１０３で生成した微分値画像から抽出して図１０に示す２値化画像を生成すると、ステップＳ１０６で、この２値化画像から図１１に示すような２次元ヒストグラムを作成し、ハフ変換によって作業境界を近似する直線を算出し、ステップＳ１０７へ進む。
【００２４】
この２次元ヒストグラムは、図１２に示すように、ウィンドウＷＤの中央下部を原点Ｏとし、画面横方向をＸ軸、画面縦方向をＹ軸とするＸ−Ｙ座標系において、ウインドウＷＤ内に含まれる画素２点を結ぶ直線をｘ＝ａｙ＋ｂで表わしたときの傾きｔａｎ−１ａとＸ軸切片ｂとを、画素２点の全組合わせについて求め、傾きｔａｎ−１ａを横軸、切片ｂを縦軸として作成したものであり、図１１中、Ｒｈで示す梨子地部分が最も度数が大きく、次いでＧｈで示す網線部分、Ｂｈで示す斜線部分と度数が小さくなり、他は度数零である。
【００２５】
そして、作成したヒストグラムからピーク点を抽出することにより、図１３に示すように、度数（相関の強さ）４４１の直線Ａ，Ｂ、度数４０６の直線Ｃ、度数３９３の直線Ｄ，Ｅ、度数２８１の直線Ｆ等の複数の直線群が得られ、最小二乗法等に比較してノイズの影響を軽減することができる。
【００２６】
ステップＳ１０７では、複数の直線Ａ，Ｂ，…，Ｆの中で最も度数の高い（相関が強い）直線Ａ（Ｂ）を、図１４に示すように境界近似直線Ｌとして抽出し、この境界近似直線Ｌの傾きと切片とを走行制御部４０に出力してステップＳ１０１へ戻り、新たな画像を入力して以上の処理を繰返す。
【００２７】
このように、草・芝刈作業済みの領域と未作業領域との境界等の草・芝の葉の高さの異なる作業境界が境界検出部３０で検出されると、走行制御部４０では、図２の走行制御ルーチンにより、作業境界に沿った倣い走行を制御する。
【００２８】
この走行制御ルーチンは、１行程毎に往復しながら芝刈作業を行なう形式、あるいは、輪状に芝刈作業を行なう形式等、予め記憶されている走行経路情報と地磁気センサ４及び車輪エンコーダ５からの信号に基づいて算出される走行履歴にとに従って走行を行なう場合の基本ルーチンであり、ステップＳ２０１で、境界検出部３０で検出した画面上における境界近似直線Ｌを入力すると、ステップＳ２０２で、この直線Ｌと、予め設定しておいた画面上の目標直線Ｌ０  （ｙ＝ｐｘ＋ｑ）とを比較し、芝刈作業車１の車輌本体の目標直線Ｌ０  からの偏差量Ｃと進行方向の目標直線Ｌ０  に対する偏差角θとを求める。
【００２９】
次に、ステップＳ２０３へ進み、前記偏差量Ｃ及び前記偏差角θを一定にする前輪目標舵角及び後輪目標舵角を算出し、ステップＳ２０４で、前後輪の各舵角センサ１０ａ，１０ｂからの各信号を入力して前輪舵角、後輪舵角を求め、ステップＳ２０５で、前輪舵角と前輪目標舵角とを比較する。
【００３０】
前記ステップＳ２０５における比較の結果、前輪舵角≧前輪目標舵角の場合には、ステップＳ２０６へ進み、前輪操舵用油圧制御弁７ａをＯＦＦとし、前輪舵角＜前輪目標舵角の場合には、ステップＳ２０７へ分岐して前輪操舵用油圧制御弁７ａをＯＮとし、ステップＳ２０８へ進む。
【００３１】
ステップＳ２０８では、後輪舵角と後輪目標舵角との比較が行なわれ、後輪舵角≧後輪目標舵角の場合、ステップＳ２０９へ進んで、後輪操舵用油圧制御弁７ｂをＯＦＦとし、後輪舵角＜後輪目標舵角の場合には、ステップＳ２１０へ分岐して後輪操舵用油圧制御弁７ｂをＯＮとする。
【００３２】
その後、ステップＳ２１１へ進み、予め設定された時間（例えば、数秒の制御インターバル）が経過したか否かを判定し、この制御インターバルが設定時間だけ経過していない場合には、前述のステップＳ２０４へ戻って前後輪の各舵角センサ１０ａ，１０ｂからの信号により前後輪舵角を検出して同様の過程を繰返して前後輪の舵角が目標舵角に収束するよう制御し、制御インターバルが設定時間以上経過している場合には、ステップＳ２０１へ戻って境界近似直線式を再度入力することにより前後輪目標舵角を修正する。
【００３３】
【発明の効果】
以上説明したように本発明によれば、車輌周辺の撮像画像から作業対象領域と非作業対象領域との境界を検出し、検出した境界に沿って自律走行するよう自律走行作業車の操舵系を制御するに際し、撮像画像に対して設定した画面領域内において２次元移動平均処理を行って得た平均化処理画像に対し、水平軸方向の輝度変化量を算出して輝度微分値画像を得て、その後、輝度微分量と度数とからなるヒストグラムを作成する。そして、画面領域内の輝度変化量の最大値付近の平均値として該ヒストグラムにおける上位複数データの平均値の略５０％にスライスレベルを設定し、輝度微分値画像から明るさの変化量が前記スライスレベルを越える画素を抽出して２値化画像を生成して、この２値化画像からハフ変換によって境界を近似する直線を算出するので、画面に写っている作業対象領域と非作業対象領域との比率によってスライスレベルが変動することが無く適正なスライスレベルが得られ、的確に画像を２値化することができる。従って、この２値化画像に基づき正確な境界近似直線を算出することができ、境界に沿った自律走行作業車の走行制御性を著しく向上することができる。
【図面の簡単な説明】
【図１】境界検出ルーチンのフローチャート
【図２】走行制御ルーチンのフローチャート
【図３】芝刈作業車の概略説明図
【図４】操舵制御系の基本構成図
【図５】境界検出部の回路ブロック図
【図６】作業領域を撮像した元画像を示す説明図
【図７】平均化処理画像を示す説明図
【図８】輝度微分値画像を示す説明図
【図９】スライスレベル算出用ヒストグラムを示す説明図
【図１０】２値化画像を示す説明図
【図１１】ハフ変換用２次元ヒストグラムを示す説明図
【図１２】ウィンドウ内での近似直線式を表わす座標軸を示す説明図
【図１３】境界近似直線の認識結果を示す説明図
【図１４】最終的に選択した境界近似直線を示す説明図
【符号の説明】
１  芝刈作業車（自律走行作業車）
３  ＣＣＤカメラ（撮像手段）
【図１】
0003585948.tif 000002
【図２】
0003585948.tif 000003
【図３】
0003585948.tif 000004
【図４】
0003585948.tif 000005
【図５】
0003585948.tif 000006
【図６】
0003585948.tif 000007
【図７】
0003585948.tif 000008
【図８】
0003585948.tif 000009
【図９】
0003585948.tif 000010
【図１０】
0003585948.tif 000011
【図１１】
0003585948.tif 000012
【図１２】
0003585948.tif 000013
【図１３】
0003585948.tif 000014
【図１４】
0003585948.tif 000015