(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024138997
(43)【公開日】2024-10-09
(54)【発明の名称】検出装置、検出方法及びプログラム
(51)【国際特許分類】
G01S 13/931 20200101AFI20241002BHJP
G01S 13/89 20060101ALI20241002BHJP
【FI】
G01S13/931
G01S13/89
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023049752
(22)【出願日】2023-03-27
(71)【出願人】
【識別番号】000005290
【氏名又は名称】古河電気工業株式会社
(71)【出願人】
【識別番号】391045897
【氏名又は名称】古河AS株式会社
(74)【代理人】
【識別番号】100114292
【弁理士】
【氏名又は名称】来間 清志
(74)【代理人】
【識別番号】100145713
【弁理士】
【氏名又は名称】加藤 竜太
(72)【発明者】
【氏名】眞子 凌
(72)【発明者】
【氏名】山村 隆介
(72)【発明者】
【氏名】大谷 栄介
【テーマコード(参考)】
5J070
【Fターム(参考)】
5J070AB18
5J070AC02
5J070AC06
5J070AF03
5J070AH12
5J070AH31
5J070AK13
5J070BD01
(57)【要約】
【課題】環境要因に影響されず、高い精度で障害物を検出することができる検出装置、検出方法及びプログラムを提供すること。
【解決手段】検出装置1は、移動体2の周囲環境に向けて送信波を送信するとともに、移動体2の周囲環境に存在する障害物40からの反射波を受信し、当該反射波を処理することによって、点群の位置情報を周期的に取得するレーダ装置10と、点群の位置情報に基づいて、所定距離内で隣接している点群同士を仮想的に結び、点群(に対応する障害物)が列状に並んでいる場所を推定するための推定領域を生成する生成部24と、生成部24で生成された推定領域と移動体2との距離に基づいて、移動体2を制御する走行制御部25と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
移動体の周囲環境に向けて送信波を送信するとともに、前記移動体の周囲環境に存在する障害物からの反射波を受信し、当該反射波を処理することによって、点群の位置情報を周期的に取得するレーダ処理部と、
前記点群の位置情報に基づいて、所定距離内で隣接している点群同士を仮想的に結び、前記点群が列状に並んでいる場所を推定するための推定領域を生成する生成部と、
前記生成部で生成された前記推定領域と前記移動体との距離に基づいて、前記移動体を制御する走行制御部と、
を備える検出装置。
【請求項2】
前記生成部は、
前記点群の位置情報を、前記レーダ処理部の座標系から前記移動体の中心の座標系へ変換する座標変換部と、
前記座標変換部によって変換された前記点群を蓄積する点群蓄積部と、
前記点群蓄積部によって蓄積された前記点群に基づいて、前記推定領域を生成する推定領域生成部と、
を備える請求項1に記載の検出装置。
【請求項3】
前記推定領域生成部は、
前記点群蓄積部によって蓄積された前記点群を、所定間隔で区切り、
区切られた所定間隔内の前記点群のうち、直線の算出に利用する点群を選択し、
選択された前記点群を用いて、前記推定領域を近似的に算出し、
算出した前記推定領域を蓄積し、
前記推定領域の時間変化が所定量以上である場合、過去の推定領域を採用し、前記推定領域の時間変化が所定量未満である場合、現在の推定領域を採用する、
請求項2に記載の検出装置。
【請求項4】
前記走行制御部は、
前記推定領域に基づいて、前記移動体と前記障害物とが衝突する危険性がある距離を示す衝突危険距離を設定し、
前記推定領域に基づいて、前記移動体と前記障害物とが衝突する危険性が低い距離を示す安全走行距離を算出し、
前記安全走行距離が前記衝突危険距離を超える場合、前記移動体が安全に走行可能であると判定し、
前記安全走行距離が前記衝突危険距離以下の場合、前記移動体と前記障害物とが衝突する危険性が高いと判定し、前記移動体の走行を停止させる危険度判定部を備える、
請求項3に記載の検出装置。
【請求項5】
前記走行制御部は、前記推定領域に基づいて、前記移動体が走行する基準となる参照情報を算出し、算出した前記参照情報及び前記移動体の進行方向に基づいて前記移動体の走行方位を算出し、算出した前記走行方位を用いて前記移動体の走行方向を修正する走行方位算出部を備える、請求項3又は4に記載の検出装置。
【請求項6】
レーダ装置により、移動体の周囲環境に向けて送信波を送信するとともに、前記移動体の周囲環境に存在する障害物からの反射波を受信し、当該反射波を処理することによって、点群の位置情報を周期的に取得するステップと、
生成部により、前記点群の位置情報に基づいて、所定距離内で隣接している点群同士を仮想的に結び、障害物に対応する前記点群が列状に並んでいる場所を推定するための推定領域を生成するステップと、
走行制御部により、前記生成部で生成された前記推定領域と前記移動体との距離に基づいて、前記移動体を制御するステップと、
を備える検出方法。
【請求項7】
コンピュータに、
移動体の周囲環境に向けて送信波を送信するとともに、前記移動体の周囲環境に存在する障害物からの反射波を受信し、当該反射波を処理することによって、点群の位置情報を周期的に取得するステップと、
前記点群の位置情報に基づいて、所定距離内で隣接している点群同士を仮想的に結び、前記点群が列状に並んでいる場所を推定するための推定領域を生成するステップと、
生成された前記推定領域と前記移動体との距離に基づいて、前記移動体を制御するステップと、
を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、検出装置、検出方法及びプログラムに関する。
【背景技術】
【0002】
従来、移動体に取り付けたセンサ装置により、移動体の周囲環境に存在する障害物を検出する技術が提案されている(例えば特許文献1参照)。特許文献1は、距離センサとしてLIDAR(Light Detection and Ranging, Laser Imaging Detection and Ranging)を備え、圃場に存在する複数の物体に向かってレーザ光を照射し、物体からの反射光を受光することによって、物体各々の距離情報を取得し、距離情報に基づいて作物列を認識する作業車両を開示している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の作業車両は、LIDARを用いているため、レーザ光は、直進性が高く、検知対象である作物列の手前に物体(葉、枝、人など)がある場合、その物体が障害となり、その物体の延長線上にある作物列自体の検出が困難になる場合がある。また、LIDARは、土埃、霧などがある環境では作物を検知できない場合がある。
【0005】
本願発明の一つの目的は、環境要因に影響されず、高い精度で障害物を検出することができる検出装置、検出方法及びプログラムを提供することである。
【課題を解決するための手段】
【0006】
上記の、及び他の目的を達成するために、本発明に係る検出装置は、移動体の周囲環境に向けて送信波を送信するとともに、前記移動体の周囲環境に存在する障害物からの反射波を受信し、当該反射波を処理することによって、点群の位置情報を周期的に取得するレーダ処理部と、前記点群の位置情報に基づいて、所定距離内で隣接している点群同士を仮想的に結び、前記点群が列状に並んでいる場所を推定するための推定領域を生成する生成部と、前記生成部で生成された前記推定領域と前記移動体との距離に基づいて、前記移動体を制御する走行制御部と、を備える。
【0007】
前記生成部は、前記点群の位置情報を、前記レーダ処理部の座標系から前記移動体の中心の座標系へ変換する座標変換部と、前記座標変換部によって変換された前記点群を蓄積する点群蓄積部と、前記点群蓄積部によって蓄積された前記点群に基づいて、前記推定領域を生成する推定領域生成部と、を備えてもよい。
【0008】
前記推定領域生成部は、前記点群蓄積部によって蓄積された前記点群を、所定間隔で区切り、区切られた所定間隔内の前記点群のうち、直線の算出に利用する点群を選択し、選択された前記点群を用いて、前記推定領域を近似的に算出し、算出した前記推定領域を蓄積し、前記推定領域の時間変化が所定量以上である場合、過去の推定領域を採用し、前記推定領域の時間変化が所定量未満である場合、現在の推定領域を採用してもよい。
【0009】
前記走行制御部は、前記推定領域に基づいて、前記移動体と前記障害物とが衝突する危険性がある距離を示す衝突危険距離を設定し、前記推定領域に基づいて、前記移動体と前記障害物とが衝突する危険性が低い距離を示す安全走行距離を算出し、前記安全走行距離が前記衝突危険距離を超える場合、前記移動体が安全に走行可能であると判定し、前記安全走行距離が前記衝突危険距離以下の場合、前記移動体と前記障害物とが衝突する危険性が高いと判定し、前記移動体の走行を停止させる危険度判定部を備えてもよい。
【0010】
前記走行制御部は、前記推定領域に基づいて、前記移動体が走行する基準となる参照情報を算出し、算出した前記参照情報及び前記移動体の進行方向に基づいて前記移動体の走行方位を算出し、算出した前記走行方位を用いて前記移動体の走行方向を修正する走行方位算出部を備えてもよい。
【0011】
本発明の他の態様は、レーダ処理部により、移動体の周囲環境に向けて送信波を送信するとともに、前記移動体の周囲環境に存在する障害物からの反射波を受信し、当該反射波を処理することによって、点群の位置情報を周期的に取得するステップと、生成部により、前記点群の位置情報に基づいて、所定距離内で隣接している点群同士を仮想的に結び、前記点群が列状に並んでいる場所を推定するための推定領域を生成するステップと、走行制御部により、前記生成部で生成された前記推定領域と前記移動体との距離に基づいて、前記移動体を制御するステップと、を備える検出方法である。
【0012】
本発明のさらに他の態様は、コンピュータに、移動体の周囲環境に向けて送信波を送信するとともに、前記移動体の周囲環境に存在する障害物からの反射波を受信し、当該反射波を処理することによって、前記点群の位置情報を周期的に取得するステップと、前記点群の位置情報に基づいて、所定距離内で隣接している点群同士を仮想的に結び、前記点群が列状に並んでいる場所を推定するための推定領域を生成するステップと、生成された前記推定領域と前記移動体との距離に基づいて、前記移動体を制御するステップと、を実行させるコンピュータプログラムである。
【発明の効果】
【0013】
本発明によれば、環境要因に影響されず、高い精度で障害物を検出することができる検出装置、検出方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0014】
【
図1】本実施態様に係る検出装置の概略構成図を示す図である。
【
図2】レーダ装置が搭載された移動体を上面から視た平面概略図である。
【
図3】本実施形態における検出装置の処理の概要を例示するフローチャートである。
【
図4】レーダ検出処理の動作を具体的に示すフローチャートである。
【
図5】推定領域生成処理の動作を具体的に示すフローチャートである。
【
図6】点群を蓄積するための所定範囲の一例について示す図である。
【
図7】領域生成処理の動作を具体的に示すフローチャートである。
【
図9】衝突危険度判定処理の動作を具体的に示すフローチャートである。
【
図10】衝突危険距離及び安全走行距離の一例を示す図である。
【
図11】走行方位算出処理の動作を具体的に示すフローチャートである。
【発明を実施するための形態】
【0015】
以下、本発明の一実施形態に係る検出装置について説明する。なお、以下の実施の形態により本発明が限定されるものでない。また、以下の説明において参照する各図は、本発明の内容を理解でき得る程度に形状、大きさ、及び位置関係を概略的に示してあるに過ぎない。即ち、本発明は、各図で例示された形状、大きさ、及び位置関係のみに限定されるものでない。
【0016】
図1は、本実施態様に係る検出装置1の概略構成を示す図である。検出装置1は、レーダ装置10と、生成部24と、走行制御部25と、を備える。
【0017】
検出装置1は、レーダ装置10によって得られる移動体2の走路における障害物40の検出結果を受けて、移動体2の自動操舵などの処理を行うための上位装置100に接続されている。
図1には、1台のレーダ装置10のみを表示しているが、検出装置1は複数台のレーダ装置10を備えてもよい。また、各装置間の接続は、有線で構成してもよいし、無線ネットワークを介して接続してもよい。また、検出装置1は、制御装置として、例えば1以上のプロセッサ等を備え、記憶装置として1以上のメモリ、ハードディスクドライブ等を備える。
【0018】
レーダ装置10は、所定の周波数帯の信号を、周期的に(例えば50msごとに)送受信するものであって、農機や、建機、一般自動車等の移動体2の周囲(例えば、移動体2の前方方向(フロント又はフロントコーナー)、移動体2の後方方向(リア又はリアコーナー)又は移動体2の側方(サイド)、又はそれらの組み合わせ)に搭載される。また、レーダ装置10は、制御装置として、例えば1以上のプロセッサ等を備え、記憶装置として1以上のメモリ、ハードディスクドライブ等を備える。
【0019】
ここで、作物等のような、列状に配置された1以上の障害物40が存在する周囲環境を移動体2が走行する状況を想定する。
図2は、レーダ装置10が搭載された移動体2を上面から視た平面概略図である。
図2に示すように、レーダ装置10は、移動体2の周囲環境に向けて送信波を送信するとともに、移動体2の周囲環境に存在する障害物40からの反射波を受信し、当該反射波を処理することによって、点群Pの位置情報を周期的に取得する。なお、障害物40は、作物に限定されず、植生、樹木等であってもよい。
【0020】
図1に戻り、レーダ装置10は、送信アンテナ11と、受信アンテナ12と、信号生成部13と、送信制御部14と、発振部15と、スイッチ16と、ADC(Analog to Digital Converter)17と、距離演算部18と、速度演算部19と、閾値設定部20と、検出部21と、角度演算部22と、補正部23を備える。
【0021】
送信アンテナ11は、1つ又は複数のアンテナ素子で構成され、発振部15で発振された送信波S1を障害物40に向けて放射する。受信アンテナ12は、1つ又は複数のアンテナ素子で構成され、障害物40によって反射された電磁波R1(反射信号)を受信する。
【0022】
信号生成部13は、周期的な送信信号の信号パターンを生成する。送信制御部14は、信号生成部13に接続され、信号生成部13の動作を制御する。発振部15は、信号生成部13に接続され、信号生成部13からの信号パターンに基づいて送信信号を発振する。
【0023】
ADC17は、受信アンテナ12に接続され、受信アンテナ12で受信した信号をデジタル信号へ変換する。発振部15とADC17とは、スイッチ16により直接接続することができる。距離演算部18は、変換されたデジタル信号に基づいてレーダ装置10に対する障害物40の相対距離を算出する。
【0024】
速度演算部19は、変換されたデジタル信号に基づいて移動体2の速度を算出する。閾値設定部20は、検出部21で利用する検出閾値を設定する。検出部21は、距離方向のピークを検出する。角度演算部22は、検出部21で検出された距離において、到来角度(水平角及び仰角)を求める。
【0025】
補正部23は、検出方向のずれをIMU(Interial Measurement Unit)情報を利用して補正する。検出装置1のレーダ装置10は、FCM(Fast Chirp Modulation)方式を採用しているが、FCM方式に限定されず、パルス方式でもよい。
【0026】
生成部24は、レーダ装置10によって取得された点群の位置情報に基づいて、所定距離内で隣接している点群同士を仮想的に結び、点群に対応する障害物40が列状に並んでいる場所を推定するための推定領域を生成する。走行制御部25は、生成部24で生成された推定領域と移動体2との距離に基づいて、移動体2を制御する。
【0027】
また、生成部24は、座標変換部241と、点群蓄積部242と、推定領域生成部243と、を備える。走行制御部25は、危険度判定部251と、走行方位算出部252と、を備える。
【0028】
座標変換部241は、点群の位置情報を、レーダ装置10の座標系から移動体2の中心の座標系へ変換する。点群蓄積部242は、座標変換部241によって変換された点群を蓄積する。推定領域生成部243は、点群蓄積部242によって蓄積された点群に基づいて、推定領域を生成する。
【0029】
また、推定領域生成部243は、点群蓄積部242によって蓄積された点群を、所定間隔で区切り、区切られた所定間隔内の点群のうち、直線の算出に利用する点群を選択する。次に、推定領域生成部243は、選択された点群を用いて、推定領域を近似的に算出し、算出した推定領域を蓄積する。
【0030】
次に、推定領域生成部243は、推定領域の時間変化が所定量以上である場合、過去の推定領域を採用し、推定領域の時間変化が所定量未満である場合、現在の推定領域を採用する。
【0031】
危険度判定部251は、推定領域に基づいて、移動体2と障害物40とが衝突する危険性がある距離を示す衝突危険距離dsを設定し、推定領域に基づいて、移動体2と障害物40とが衝突する危険性が低い距離を示す安全走行距離dcを算出する。
【0032】
次に、危険度判定部251は、安全走行距離dcが衝突危険距離dsを超える場合、移動体2が安全に走行可能であると判定し、安全走行距離dcが衝突危険距離ds以下の場合、移動体2と障害物40とが衝突する危険性が高いと判定し、移動体2の走行を停止させる。
【0033】
走行方位算出部252は、推定領域に基づいて、移動体2が走行する基準となる参照情報を算出し、算出した参照情報及び移動体2の進行方向に基づいて移動体2の走行方位を算出し、算出した走行方位を用いて移動体2の走行方向を修正する。
【0034】
生成部24及び走行制御部25は、各部の機能をプログラムで記述し、プロセッサと記憶装置を備えたコンピュータによって実行することにより、各部の機能を実施しているが、各部を個別のハードウェアやソフトウェアによって構成してもよい。プログラムは、コンピュータの記憶装置に格納されている。このコンピュータには、上位装置100とのデータ通信を行う通信部、検出装置1へのデータ入出力インタフェースを構成する入出力部も含まれる。
【0035】
以上の構成、機能を有する検出装置1によって実行される処理について説明する。
図3は、本実施形態における検出装置1の処理の概要を例示するフローチャートである。
図3に例示する処理により、移動体2は、列状に配置された障害物40を検知して、走行方位を必要に応じて修正しつつ、障害物40への衝突を避けながら走行可能とされる。検出装置1による処理は、例えば移動体2を起動して検出装置1に電源が供給されることによって開始される。
【0036】
ステップS1において、生成部24は、移動体2においてレーダ装置10が取り付けられている位置、高さ及び地面に対する角度等のようなレーダ取り付け情報を、移動体2の記憶装置(図示せず)から取得する。レーダ取り付け情報は、後述の推定領域生成処理における座標変換の際に用いられる。
【0037】
ステップS2において、レーダ装置10は、移動体2の周囲の障害物40における検出点を周期的に検出して、検出情報を生成部24に提供する(レーダ検出処理(
図4に関して後述))。検出情報は、障害物40とレーダ装置10の相対速度、検出点ごとの障害物40の高さを含む三次元位置情報及び反射波の受信強度を含む。検出情報は、各周期に対応するフレームごとに、時系列的に、検出装置1の記憶装置(図示せず)に記憶される。
【0038】
ステップS3において、検出装置1は、推定領域生成処理を実行する。ステップS3の推定領域生成処理については、
図5を参照して後述する。ステップS4において、検出装置1は、推定領域生成処理が成功したか否かを判定する。推定領域生成処理が成功した場合(ステップS4:YES)、処理は、ステップS5へ移り、推定領域生成処理が失敗した場合(ステップS4:NO)、処理は、ステップS2へ戻る。
【0039】
ステップS5において、検出装置1は、衝突危険度判定処理を実行する。ステップS5の衝突危険度判定処理については、
図9を参照して後述する。ステップS6において、検出装置1は、衝突危険度判定処理において、衝突危険度が高いか否かを判定する。衝突危険度が高いと判定された場合(ステップS6:YES)、処理は、ステップS7へ移り、衝突危険度が低いと判定された場合(ステップS6:NO)、処理は、ステップS8へ移る。
【0040】
ステップS7において、検出装置1は、移動体2の走行を停止し、処理を終了する。ステップS8において、検出装置1は、走行方位算出処理を実行する。ステップS8の走行方位算出処理については、
図11を参照して後述する。ステップS9において、検出装置1は、ステップS8において算出した走行方位を用いて移動体2の走行方向を修正し、処理を終了する。
【0041】
次に、レーダ検出処理について説明する。
図4は、
図3に例示した検出装置1の処理フローにおけるレーダ検出処理(ステップS2)の動作を具体的に示すフローチャートである。ステップS11において、信号生成部13、送信制御部14及び発振部15は、所定の周波数の送信信号を生成し、送信アンテナ11から移動体2の前方に向けて送信波を放射する送信処理を行う。
【0042】
ステップS12において、受信アンテナ12は、送信波が1又は複数の障害物40によって反射された反射波を、受信信号として受信し、ADC17は、受信信号をデジタル信号に変換する受信処理を行う。
【0043】
ステップS13において、距離演算部18は、デジタル信号に基づいて、レーダ装置10と障害物40との相対距離を求める距離演算を行う。
【0044】
ステップS14において、速度演算部19は、デジタル信号に基づいて速度演算を行う。具体的には、速度演算部19は、受信信号に基づいて、1又は複数の障害物40とレーダ装置10との相対速度情報を算出する。このように速度演算部19は、速度演算により障害物40に対する速度を検出することができる。
【0045】
ステップS15において、閾値設定部20は、検出部21で利用するピークを検出するための検出閾値を設定する。具体的には、閾値設定部20は、受信アンテナ12の取り付け位置、高さ、角度などに基づいて検出閾値を調整する。
【0046】
ステップS16において、検出部21は、CFAR(Constant False Alarm Rate)などの所定の方式を用いて、距離方向のピークを検出する。
【0047】
ステップS17において、角度演算部22は、検出部21で検出された距離において、反射波の到来角度(水平角及び仰俯角)を求める角度演算処理を行い、レーダ装置10の位置を原点として放射方向を基準軸とする仮想空間において、障害物40が存在する方向を算出する。
【0048】
ステップS18において、補正部23は、走路の凹凸などの影響でレーダ装置10が傾いた場合に生じる検出位置のずれをIMU(Interial Measurement Unit)情報を利用することで補正する。補正部23は、補正された検出情報(すなわち、点群)を座標変換部241へ供給し、処理を終了する。
【0049】
次に、検出装置1の処理における推定領域生成処理について説明する。
図5は、
図3に例示した検出装置1の処理フローにおける推定領域生成処理(ステップS3)の動作を具体的に示すフローチャートである。
ステップS21において、座標変換部241は、レーダ装置10によって検出した点群を取得する。点群は、レーダ装置10の位置を原点とした3次元的な位置情報(x,y,z方向における位置情報)、角度、振幅及び速度を含む。
【0050】
ステップS22において、座標変換部241は、点群情報の中心座標を、レーダ装置10の座標系から移動体2の座標系へ変換する。具体的には、座標変換部241は、ステップS1において取得したレーダ取付情報を用いて、点群の位置情報を、レーダ装置10の座標系から、移動体2の中心の座標系へ変換する。
【0051】
具体的には、レーダ装置10が、移動体2の左側方及び右側方に1台ずつ搭載されている場合、2台のレーダ装置10のそれぞれで検出された重複検知エリアにある障害物40が同一のものであることを識別できるようにするためには、それぞれで検出された点群の位置情報を共通の座標系に変換する必要がある。
【0052】
例えば、2台のレーダ装置10のそれぞれで検出した点群の位置情報を距離と方位角からなる極座標系で表し、共通の座標系として2台のレーダ装置10の中間点を原点とする直交座標系(xy座標系)で表す。なお、各レーダ装置10で用いる座標系及び共通の座標系は、これに限定されず任意に選択することができる。
【0053】
座標変換部241は、2台のレーダ装置10のそれぞれで検出した点群の位置情報を、2台のレーダ装置10に共通する座標系に変換する。上記の例では、2台のレーダ装置10のそれぞれで設定された極座標系の点群の位置情報を、共通の直交座標系の点群の位置情報に変換する。これにより、2台のレーダ装置10のそれぞれで検出された点群の位置情報は、直交座標系の点群の位置情報(x,y)に変換される。
【0054】
座標変換部241は、変換された直交座標系の点群の位置情報(x,y)を、移動体2の中心(移動体2の重心)の座標系(直交座標系)に修正する。
【0055】
更に、座標変換部241は、上述したステップS1において取得したレーダ取り付け情報を用いて、点群の位置情報(x,y)を調整する。これにより、直交座標系の点群の位置情報(x,y)は、移動体2においてレーダ装置10が取り付けられている位置、高さ及び地面に対する角度などを考慮した値となる。上述では、レーダ装置10が移動体2の左側と右側に1台ずつ搭載される場合の座標変換について説明したが、これに限定されず、レーダ装置10が移動体2の正面側に1台のみ搭載される場合にも適用可能である。
【0056】
ステップS23において、生成部24は、点群について、振幅、高さ及び速度の情報を用いてフィルタ処理を行う。このようなフィルタ処理によって、列状に配置された障害物40以外の他の物体の点群情報を除去する。このように生成部24は、他の物体の点群を、高さ情報や振幅情報を用いて除去することによって、点群のノイズを除去し、高い精度で障害物40を検出することができる。振幅のフィルタは、所定の値を設定してもよいし、周辺地点の点群の振幅値を利用した相対的な閾値を作成してもよい。
【0057】
ステップS24において、点群蓄積部242は、座標変換部241によって変換された点群を蓄積する。
【0058】
ステップS25において、点群蓄積部242は、蓄積された点群が、移動体2を中心とした所定範囲内だけでなく、所定範囲外にも存在するか否かを判定する。蓄積された点群が、所定範囲外にも存在する場合、点群の蓄積が完了した(ステップS25:YES)と判定し、処理は、ステップS26の領域生成処理(
図7に関して後述)へ移る。一方、点群蓄積部242は、蓄積された点群が、所定範囲内だけに存在し、所定範囲外に存在しない場合、点群の蓄積が完了していない(ステップS25:NO)と判定し、処理は、ステップS27へ移り、取得されている点群に基づく移動体2の速度制御を実行する。
【0059】
なお、上記では、所定範囲は、移動体2を中心としたが、移動体2の中心に限定されるものではない。所定範囲において、移動体2の側方及び移動体2の進行方向に対して、それぞれ所定の長さが定められる。所定範囲は、2次元的な範囲に限定されるものではなく、3次元的な範囲であってもよい。
【0060】
図6は、点群を蓄積するための所定範囲の一例について示す図である。
図6に示すように、移動体2の進行方向に対する長さは、側方の障害物40の間隔に相当する長さlen_dとすることが望ましい。len_dは、予め所定の値を設定してもよく、又はレーダ装置10が検出した点群をクラスタリングなどの手法で分類し、2つの障害物の間隔を求めた値であってもよい。
【0061】
len_dの値を側方の障害物40の間隔以上とした場合、潤沢なデータを用いて次の領域生成処理(ステップS26)を行うため、推定精度を向上させることができる。しかし、データの蓄積に必要以上に時間を要するため、len_dは、側方の障害物40の間隔に相当する長さであることが好ましい。
【0062】
移動体2の側方に対する長さlen_sは、移動体2と障害物40の列との間の側方距離に相当する長さをlen_tとし、所定のオフセット量をlen_oとすると以下の式のように表される。
len_s = (len_t)+(len_o)
【0063】
len_tは、予め所定の値を設定してもよく、又はレーダ装置10が検出した点群から障害物40の列までの側方距離を算出し、逐次的に求めた値であってもよい。
【0064】
ステップS25における判定に用いる点群は、最新フレームのデータだけでなく、過去に検出したフレームの点群も利用する。過去に検出したフレームの点群については、直近に検出した所定数のフレームの点群を利用することが好ましい。
【0065】
なお、所定数のフレームを超えた古いフレームの点群は随時削除される。レーダ装置10の検出結果を利用して障害物40の列を検出する際、最新フレームの点群のみでは情報量が不足することがあるため、障害物40の列の検出が難しい場合がある。過去の検出結果を利用することによって安定した障害物40の列検出を可能とすることができる。また、このように点群を扱うことによって領域生成処理時に用いる点群が増えるため、領域生成処理時のばらつきを抑制することができる。
【0066】
ステップS26において、推定領域生成部243は、領域生成処理を実行し、その後処理を終了する。具体的には、推定領域生成部243は、領域生成処理において、点群蓄積部242によって蓄積された点群に基づいて、推定領域を生成する。領域生成処理の詳細については後述する。
【0067】
ステップS25において点群の蓄積が完了していない場合、ステップS27において、走行制御部25は、移動体2の速度を遅くするように制御する。また、走行制御部25は、検出した点群と移動体2との間の距離dist_pvを算出し、距離dist_pvが所定の距離以下である場合、移動体2を停止させてもよく、移動体2の走行方位を修正してもよい。
図5の推定領域生成処理を抜けると、処理は
図3の検出装置1の処理フローに戻る。
【0068】
次に、
図5の推定領域生成処理における領域生成処理について説明する。
図7は、上述した領域生成処理(
図5のステップS26)の動作を具体的に示すフローチャートである。ステップS31において、推定領域生成部243は、列状の障害物40が存在する位置を示す直線(推定領域)を算出するために、点群蓄積部242によって蓄積された点群を、所定間隔で区切り、区切られた所定間隔内の点群のうち、直線の算出に利用する点群を選択する。
【0069】
図8は、選択した点群の一例について示す図である。ここで、推定領域生成部243は、点群を2次元的に区切ってもよく、又は3次元的に区切ってもよい。推定領域生成部243は、点群を選択する際に、障害物40の中心を求めたい場合、点群の平均的な位置を選択してもよい。または、推定領域生成部243は、障害物40の最も近接する位置を求めたい場合、移動体2側の最近接となる点群を選択してもよく、障害物40の中心位置から所定のオフセットを加えた位置の点群を選択してもよい。
【0070】
図7に戻り、ステップS32において、推定領域生成部243は、ステップS31において選択された点群を用いて、障害物40が存在する位置を示す推定領域を近似的に生成及び算出する。具体的には、推定領域生成部243は、選択された点群を用いて、推定領域として直線を近似的に算出する。直線の算出には、例えば、最小二乗法などの手法を利用する。また、直線近似は、1次近似に限定されない。直線については、推定領域生成部243は、取得した点群のうち移動体2の進行方向において、直線を最も遠い点群まで引いてもよいし、所定の長さまで引いてもよい。
【0071】
また、推定領域生成部243は、必ずしも近似しなくてもよく、例えば、点群同士を仮想的に直接結ぶことによって直線を生成してもよい。更に、推定領域生成部243は、直線に限らず、推定領域として平面状の領域を生成してもよい。このように平面状の領域を生成することによって、移動体2よりも上側に障害物40がある場合、推定領域生成部243は、当該障害物40が移動体2の走行に支障がないと判断することができる。また、推定領域生成部243は、推定領域として、点群同士を仮想的に直接結ぶことによって曲線を生成してもよい。
【0072】
ステップS33において、推定領域生成部243は、ステップS32において生成した推定領域を蓄積する。推定領域生成部243は、例えば、推定領域として直線を算出した場合、直線の傾き及び切片を保持する。
【0073】
ステップS34において、推定領域生成部243は、推定領域の変化を処理に織り込むため、推定領域の生成回数が2回目以上であるか否かを判定する。推定領域の生成回数が2回目以上である場合(ステップS34:YES)、処理は、ステップS35へ移る。一方、推定領域の生成回数が1回目である場合(ステップS34:NO)、処理は、ステップS38へ移る。
【0074】
ステップS35において、推定領域生成部243は、過去に算出した推定領域と、今回生成した推定領域とを比較し、推定領域の時間変化を算出する。
ステップS36において、推定領域生成部243は、推定領域の時間変化が所定量以上であるか否かを判定する。推定領域の時間変化が所定量以上である場合(ステップS36:YES)、処理は、ステップS37へ移る。一方、推定領域の時間変化が所定量未満である場合(ステップS36:NO)、処理は、ステップS38へ移る。
【0075】
ステップS37において、推定領域生成部243は、推定領域の時間変化が所定量以上であるため、過去の推定領域を採用し、終了する。推定領域生成部243は、過去の推定領域として、直近の推定領域を用いてもよく、所定回数分の推定領域の移動平均を用いてもよい。このように過去の推定領域を利用することで、例えば樹木の幹から突出した枝葉などに影響される推定領域のばらつきを抑制することができる。
ステップS38において、推定領域生成部243は、推定領域の時間変化が所定量未満である場合、現在の推定領域を採用し、終了する。
【0076】
次に、
図3の検出装置1の処理における衝突危険度判定処理について説明する。衝突危険度判定処理により、検出装置1が得た推定領域と移動体2の位置とに基づいて、移動体2の衝突危険度を判定される。
図9は、上述した衝突危険度判定処理(ステップS5)の動作を具体的に示すフローチャートである。ステップS41において、危険度判定部251は、推定領域に基づいて、移動体2と障害物40とが衝突する危険性がある距離を示す衝突危険距離d
sを設定する。具体的には、危険度判定部251は、推定領域が直線の場合、当該直線を基準として、衝突危険距離d
sを設定する。
【0077】
図10は、衝突危険距離d
s及び安全走行距離d
cの一例を示す図である。
図10に示すように、危険度判定部251は、推定領域L1から移動体2の進行方向に向かって衝突危険距離d
sを設定するとともに、推定領域L2から移動体2の進行方向に向かって衝突危険距離d
sを設定する。ここで、衝突危険距離d
sの大きさは、移動体2が停止するために必要な距離であることが好ましい。すなわち、危険度判定部251は、推定領域だけでなく、移動体2の速度にも依存して、衝突危険距離d
sを設定する。
【0078】
ステップS42において、危険度判定部251は、推定領域に基づいて、移動体2と障害物40とが衝突する危険性が低い距離を示す安全走行距離dcを算出する。具体的には、危険度判定部251は、推定領域が直線の場合、推定領域L1(又は推定領域L2)と移動体2との間の距離を安全走行距離dcとして算出する。
【0079】
ステップS43において、危険度判定部251は、安全走行距離dcが衝突危険距離dsを超えるか否か、すなわち、(衝突危険距離ds)<(安全走行距離dc)であるか否かを判定する。安全走行距離dcが衝突危険距離dsを超える場合(ステップS43:YES)、処理は、ステップS44へ移る。一方、安全走行距離dcが衝突危険距離ds以下の場合(ステップS43:NO)、処理は、ステップS45へ移る。
【0080】
ステップS44において、危険度判定部251は、危険度が低く、移動体2が安全に走行可能であると判定し、処理を終了する。
ステップS45において、危険度判定部251は、危険度が高いと判定し、移動体2の走行を停止させ、処理を終了する。
【0081】
次に、
図3の検出装置1の処理における走行方位算出処理について説明する。
図11は、上述した走行方位算出処理(
図3のステップS8)の動作を具体的に示すフローチャートである。ステップS51において、走行方位算出部252は、推定領域生成処理において生成した推定領域を取得する。
【0082】
ステップS52において、走行方位算出部252は、推定領域に基づいて、移動体2が走行する基準となる基準点を算出する。具体的には、
図10に示すように、走行方位算出部252は、推定領域L1及びL2のように、推定領域としての直線が2つ存在する場合、一定距離ごとに、2つの直線の平均である基準点P1、P2、P3及びP4を算出する。
【0083】
ステップS53において、走行方位算出部252は、ステップS52において算出した基準点に基づいて移動体2が走行する基準となる参照情報を算出する。具体的には、
図10に示すように、走行方位算出部252は、基準点P1、P2、P3及びP4を結ぶ直線L3を参照情報として算出する。
【0084】
ステップS54において、走行方位算出部252は、算出した参照情報及び移動体2の進行方向に基づいて移動体2の走行方位を算出し、算出した走行方位を用いて移動体2の走行方向を修正する。具体的には、
図10に示すように、走行方位算出部252は、参照情報としての直線L3と、移動体2の進行方向D1とのなす角度θ
dを算出する。例えば、走行方位算出部252は、直線である推定領域L1及びL2が生成される場合、推定領域L1と推定領域L2との平均的な直線の傾きを算出することによって角度θ
dを算出してもよく、若しくは推定領域L1又は推定領域L2のいずれかの直線の傾きを利用することによって、角度θ
dを算出してもよい。そして、走行方位算出部252は、走行方位として角度θ
dを用いて移動体2の走行方向を修正し、その後処理を終了する。
【0085】
なお、ステップS52において、推定領域としての直線が1つだけ存在する場合、走行方位算出部252は、当該直線を参照情報として、ステップS53及びステップS54における処理を実行する。また、検出装置1は、移動体2を自動走行させる場合、上述した参照情報を、移動体2が走行する際の走行基準地点として設定してもよい。
【0086】
以上説明した実施形態によれば、以下のような効果を奏する。
本実施形態に係る検出装置1は、移動体2の周囲環境に向けて送信波を送信するとともに、移動体2の周囲環境に存在する障害物40からの反射波を受信し、当該反射波を処理することによって、点群の位置情報を周期的に取得するレーダ装置10と、点群の位置情報に基づいて、所定距離内で隣接している点群同士を仮想的に結び、点群が列状に並んでいる場所を推定するための推定領域を生成する生成部24と、生成部24で生成された推定領域と移動体2との距離に基づいて、移動体2を制御する走行制御部25と、を備える。
【0087】
これにより、検出装置1は、レーダ装置10によって取得される点群から、点群が列状に並んでいる場所を推定するための推定領域を生成するため、環境要因に影響されず、作物、樹木列等のような列状に配置された障害物40を検知し、移動体2を制御することができる。
【0088】
また、検出装置1において、レーダ装置10から送信される電波は回り込むため、列状に配置された障害物40手前に別の物体が存在する場合でも、列状に配置された障害物40を検出できる。また、検出装置1は、レーダ装置10を用いることによって、検出点間の距離に依存せず、列状に配置された障害物40を検知できる。
【0089】
また、生成部24は、点群の位置情報を、レーダ装置10の座標系から移動体2の中心の座標系へ変換する座標変換部241と、座標変換部241によって変換された点群を蓄積する点群蓄積部242と、点群蓄積部242によって蓄積された点群に基づいて、推定領域を生成する推定領域生成部243と、を備える。
【0090】
これにより、検出装置1は、推定領域を生成することによって、障害物40の位置を推定するため、安定した障害物40の検出を行うことが可能になる。また、検出装置1は、このようなデータの取り扱いをすることで、推定領域処理時に用いる情報量が増えるため、障害物40の推定領域処理時におけるばらつきを抑制することができる。
【0091】
また、推定領域生成部243は、点群蓄積部242によって蓄積された点群を、所定間隔で区切り、区切られた所定間隔内の点群のうち、直線の算出に利用する点群を選択し、選択された点群を用いて、推定領域を近似的に算出し、算出した推定領域を蓄積し、推定領域の時間変化が所定量以上である場合、過去の推定領域を採用し、推定領域の時間変化が所定量未満である場合、現在の推定領域を採用する。
【0092】
一般的に、レーダ装置10の検出結果を利用して列状に配置された障害物40を検出する際、最新フレームの点群のみでは情報量が不足することがある。本実施形態に係る検出装置1は、過去の検出結果を利用することによって、安定した障害物40の検出を行うことが可能になる。また、検出装置1は、このようなデータの取り扱いをすることで、推定領域処理時に用いる情報量が増えるため、障害物40の推定領域処理時におけるばらつきを抑制することができる。
【0093】
また、走行制御部25は、推定領域に基づいて、移動体2と障害物40とが衝突する危険性がある距離を示す衝突危険距離dsを設定し、推定領域に基づいて、移動体2と障害物40とが衝突する危険性が低い距離を示す安全走行距離dcを算出し、安全走行距離dcが衝突危険距離dsを超える場合、移動体2が安全に走行可能であると判定し、安全走行距離dcが衝突危険距離ds以下の場合、移動体2と障害物40とが衝突する危険性が高いと判定し、移動体2の走行を停止させる危険度判定部251を備える。
【0094】
これにより、検出装置1は、移動体2と障害物40との距離に応じて移動体2を制御することができる。
【0095】
また、走行制御部25は、推定領域に基づいて、移動体2が走行する基準となる参照情報を算出し、算出した参照情報及び移動体2の進行方向に基づいて移動体2の走行方位を算出し、算出した走行方位を用いて移動体2の走行方向を修正する走行方位算出部252を備える。これにより、検出装置1は、推定した障害物40の位置を用いて、移動体2の走行方向を適切に修正することができる。
【0096】
以上、本願の実施の形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、本明細書に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【符号の説明】
【0097】
1 検出装置
2 移動体
10 レーダ装置
11 送信アンテナ
12 受信アンテナ
13 送信制御部
14 信号生成部
15 発振部
16 スイッチ
17 ADC
18 距離演算部
19 速度演算部
20 閾値設定部
21 検出部
22 角度演算部
23 補正部
24 生成部
241 座標変換部
242 点群蓄積部
243 推定領域生成部
25 走行制御部
251 危険度判定部
252 走行方位算出部
40 障害物
100 上位装置