(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024025063
(43)【公開日】2024-02-26
(54)【発明の名称】フリースペース検知装置、物体位置の正規化方法
(51)【国際特許分類】
G06V 10/40 20220101AFI20240216BHJP
G06V 20/56 20220101ALI20240216BHJP
G06T 7/00 20170101ALI20240216BHJP
G08G 1/16 20060101ALI20240216BHJP
B60W 30/095 20120101ALI20240216BHJP
B60W 40/02 20060101ALI20240216BHJP
【FI】
G06V10/40
G06V20/56
G06T7/00 300F
G08G1/16 C
B60W30/095
B60W40/02
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022128204
(22)【出願日】2022-08-10
(71)【出願人】
【識別番号】509186579
【氏名又は名称】日立Astemo株式会社
(74)【代理人】
【識別番号】110002365
【氏名又は名称】弁理士法人サンネクスト国際特許事務所
(72)【発明者】
【氏名】早川 仁
(72)【発明者】
【氏名】早瀬 茂規
【テーマコード(参考)】
3D241
5H181
5L096
【Fターム(参考)】
3D241BA31
3D241CE06
3D241DC33Z
5H181AA01
5H181CC03
5H181CC04
5H181CC14
5H181LL01
5H181LL02
5L096FA10
5L096FA66
5L096FA69
(57)【要約】
【課題】精度の高いフリースペースを設定できる。
【解決手段】所定の中心点から放射状に延びる複数の基準線上に、中心点の周辺で検知された物体の検出点に基づいて決定されるフリースペース端点を配置し、複数の基準線上のフリースペース端点を繋いでフリースペースの外縁を抽出するフリースペース検知装置であって、隣接する基準線同士の中間に境界線を設定し、基準線の1つを第1基準線とし、第1基準線を挟み込む2つの境界線のそれぞれを第1境界線とし、第1基準線を中心として第1境界線により挟み込まれる領域を第1角度領域と呼ぶ場合に、第1基準線上におけるフリースペース端点の位置は、第1角度領域に存在する検出点である領域内検出点のうち最も中心点に近い位置、に基づき決定する。
【選択図】
図5
【特許請求の範囲】
【請求項1】
所定の中心点から放射状に延びる複数の基準線上に、前記中心点の周辺で検知された物体の検出点に基づいて決定されるフリースペース端点を配置し、前記複数の前記基準線上の前記フリースペース端点を繋いでフリースペースの外縁を抽出するフリースペース検知装置であって、
隣接する前記基準線同士の中間に境界線を設定し、
前記基準線の1つを第1基準線とし、前記第1基準線を挟み込む2つの前記境界線のそれぞれを第1境界線とし、前記第1基準線を中心として前記第1境界線により挟み込まれる領域を第1角度領域と呼ぶ場合に、
前記第1基準線上における前記フリースペース端点の位置は、前記第1角度領域に存在する前記検出点である領域内検出点のうち最も前記中心点に近い位置、に基づき決定する、フリースペース検知装置。
【請求項2】
請求項1に記載のフリースペース検知装置であって、
前記第1基準線上における前記フリースペース端点の位置は、前記領域内検出点の位置、および前記領域内検出点と前記第1角度領域に含まれない前記検出点とを結ぶ直線が前記第1境界線と交わる交点の位置、のうち最も前記中心点に近い位置に基づき決定する、フリースペース検知装置。
【請求項3】
請求項2に記載のフリースペース検知装置であって、
前記第1角度領域内に前記検出点が存在しない場合に、前記第1角度領域の両側に存在する一対の前記検出点同士を結んだ線と前記交点の位置に基づき、前記フリースペース端点を設定する、フリースペース検知装置。
【請求項4】
請求項1に記載のフリースペース検知装置であって、
前記物体の検知状態に基づいて、前記フリースペース端点に対して属性を設定する端点属性付与部をさらに備える、フリースペース検知装置。
【請求項5】
請求項4に記載のフリースペース検知装置であって、
前記フリースペース端点に付与された属性に基づいて、前記フリースペース端点同士を繋ぐ線分に対して属性を付与する線分属性付与部をさらに備える、フリースペース検知装置。
【請求項6】
所定の中心点から放射状に延びる複数の基準線上に、前記中心点の周辺で検知された物体の検出点に基づいて決定されるフリースペース端点を配置し、前記複数の前記基準線上の前記フリースペース端点を繋いでフリースペースの外縁を抽出するフリースペース検知装置が実行する物体位置の正規化方法であって、
隣接する前記基準線同士の中間に境界線を設定し、前記基準線の1つを第1基準線とし、前記第1基準線を挟み込む2つの前記境界線のそれぞれを第1境界線とし、前記第1基準線を中心として前記第1境界線により挟み込まれる領域を第1角度領域と呼ぶ場合において、
前記第1基準線上における前記フリースペース端点の位置は、前記第1角度領域に存在する前記検出点である領域内検出点のうち最も前記中心点に近い位置に基づき決定することを含む、物体位置の正規化方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、フリースペース検知装置、および物体位置の正規化方法に関する。
【背景技術】
【0002】
自動車の安全性担保および快適性向上を目的として、周辺監視や運転行動の一部を人に代わって車両が行う運転支援機能や自動運転機能を持った車両が登場している。運転支援機能や自動運転機能を実現するためには、自車周辺状況理解のため自車周辺の走行可能領域であるフリースペースを検知し、検知結果に基づいて速度抑制等の運転行動判断を下す必要がある。自車周辺のフリースペースの検知は、車両に搭載したカメラ、レーダ、LIDAR(Light Detection and Ranging)、ソナー等のセンサによって自車から見た障害物の相対位置を検知し、自車から見て障害物のない領域を検知することで行う。運転行動判断は人の操作やセンサによる検知結果等を入力とし、目標速度や目標位置もしくは加減速・操舵等の制御指示を車両に対して出力とするコンピュータソフトウェアによって行われる。
【0003】
運転行動判断をするソフトウェアは、車線維持支援、前走車追従、緊急ブレーキ等、それぞれの運転支援機能や自動運転機能用に作成されており、複数の機能を車両全体として整合させている。センサによる検知結果の出力形式、すなわちフォーマットは動作原理や経済的および技術的な制約によってセンサ毎に異なり、車種や年代が異なると出力形式が異なることがある。一方、各運転支援機能および自動運転機能それぞれの運転行動判断をするソフトウェアを車種ごとに異なるセンサの組み合わせに合わせて準備するのは組み合わせが多くなって非効率となる。そのため、センサによる検知結果を共通形式で表現し、その共通形式に基づいて運転行動を判断するソフトウェアを作成した上で、車種の違いをパラメータ設定等で調整可能にすることが望まれる。
【0004】
センサによる検知結果の表現としては、自車両が道路平面を移動するため障害物位置すなわちフリースペースの境界を2次元で表現し、自車から見た方向と距離で表現する極座標表現がある。極座標で表現された自車周囲の障害物の位置を共通形式とする場合、任意の角度・方向に対する距離で表現すると扱う情報量が増えて処理負荷が増えるため、自車全周を一定の角度に分割して、分割した各方向での障害物までの距離として表現する。しかしながら、共通形式での分割された角度と、センサ検知の角度が一致するとは限らないため、センサで検知された任意の角度を用いて極座標表現された検知位置を、共通形式の分割した各方向での距離という表現に変換する必要がある。
【0005】
特許文献1には、特性が異なる複数のセンサごとに、該センサによって計測された物体の位置情報を用いて、移動体の周囲に存在する物体の第1存在確率を算出し、前記複数のセンサごとに、前記位置情報が得られなかったことを示す未計測情報を取得し、前記第1存在確率と前記未計測情報とに基づいて、前記物体の第2存在確率を決定する処理部を備える、情報処理装置が開示されている。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1に記載されている発明では、検知された障害物の位置までの距離を正確に設定できない。
【課題を解決するための手段】
【0008】
本発明の第1の態様によるフリースペース検知装置は、所定の中心点から放射状に延びる複数の基準線上に、前記中心点の周辺で検知された物体の検出点に基づいて決定されるフリースペース端点を配置し、前記複数の前記基準線上の前記フリースペース端点を繋いでフリースペースの外縁を抽出するフリースペース検知装置であって、隣接する前記基準線同士の中間に境界線を設定し、前記基準線の1つを第1基準線とし、前記第1基準線を挟み込む2つの前記境界線のそれぞれを第1境界線とし、前記第1基準線を中心として前記第1境界線により挟み込まれる領域を第1角度領域と呼ぶ場合に、前記第1基準線上における前記フリースペース端点の位置は、前記第1角度領域に存在する前記検出点である領域内検出点のうち最も前記中心点に近い位置、に基づき決定する。
本発明の第2の態様による物体位置の正規化方法は、所定の中心点から放射状に延びる複数の基準線上に、前記中心点の周辺で検知された物体の検出点に基づいて決定されるフリースペース端点を配置し、前記複数の前記基準線上の前記フリースペース端点を繋いでフリースペースの外縁を抽出するフリースペース検知装置が実行する物体位置の正規化方法であって、隣接する前記基準線同士の中間に境界線を設定し、前記基準線の1つを第1基準線とし、前記第1基準線を挟み込む2つの前記境界線のそれぞれを第1境界線とし、前記第1基準線を中心として前記第1境界線により挟み込まれる領域を第1角度領域と呼ぶ場合において、前記第1基準線上における前記フリースペース端点の位置は、前記第1角度領域に存在する前記検出点である領域内検出点のうち最も前記中心点に近い位置に基づき決定することを含む。
【発明の効果】
【0009】
本発明によれば、精度の高いフリースペースを設定できる。
【図面の簡単な説明】
【0010】
【
図1】第1の実施の形態におけるフリースペース検知装置を搭載する車両のハードウエア構成図
【
図2】第1の実施の形態におけるフリースペース検知装置の機能ブロック図
【
図3】第1の実施の形態における正規化部の処理を示すフローチャート
【
図5】
図3のステップS306の詳細を示すフローチャート
【
図7】フリースペース検知装置のハードウエア構成図
【
図8】第2の実施の形態における正規化部の処理を示すフローチャート
【
図9】
図8のステップS306の詳細を示すフローチャート
【
図11】第2の実施の形態による手法と第1の実施の形態による手法との比較を示す図
【
図12】第2の実施の形態による手法と第2比較例手法との比較を示す図
【
図13】第2の実施の形態による手法と第2比較例手法との比較を示す図
【
図14】第2の実施の形態による手法と第2比較例手法との比較を示す図
【
図15】第3の実施の形態におけるフリースペース検知装置を搭載する車両のハードウエア構成図
【
図16】第3の実施の形態におけるフリースペース検知装置の機能ブロック図
【
図17】第4の実施の形態における正規化部の処理を示すフローチャート
【
図18】第4の実施の形態における正規化部の処理の具体例を示す図
【発明を実施するための形態】
【0011】
―第1の実施の形態―
以下、
図1~
図7を参照して、フリースペース検知装置の第1の実施の形態を説明する。本実施の形態は、車両において、自車の状況を検知し、車両を制御する車両システムに搭載されるフリースペース検知装置の構成及び動作を説明する。車両の制御としては運転者に情報を提示する等間接的なものも含み、車両システムは必ずしも自律的に動作する自動運転機能を実現している必要はない。たとえばフリースペースの情報を音声や画像等で運転者に伝える運転支援機能を有する車両システムであってもよい。
【0012】
図1は、フリースペース検知装置102を搭載する車両101のハードウエア構成図である。ただし
図1では、フリースペース検知装置102との関連性が希薄なハードウエアは記載を省略している。また以下では、車両101を他の車両と区別するために「自車両」もしくは「自車」と呼ぶこともある。車両101は、フリースペース検知装置102、共通バス103、運転行動計画装置104、およびカメラセンサ105を備える。フリースペース検知装置102、運転行動計画装置104、およびカメラセンサ105は共通バス103で接続され、相互に情報を伝達できる。
【0013】
カメラセンサ105は、車両101の周囲を撮影、および撮影して得られた撮影画像から障害物を検知する障害物検知センサである。カメラセンサ105は、撮影画像から障害物を検知すると、自車両101を基準とした障害物の検出点の位置を推定する。検出点の位置の推定は、たとえば画像認識技術と道路面推定による道路面状への障害物位置を射影することで実現できるが、他の手法により実現してもよい。たとえば、撮像素子を複数用意してステレオ視の技術による距離測定で検出点の位置を推定してもよいし、レーダ等他のセンサと組み合わせて距離を測定して検出点の位置を推定して精度を高めてもよい。
【0014】
さらに、便宜的に「カメラ」という名称を付しているが、撮像素子を備えることは必須の構成ではなく、カメラセンサ105は障害物を検知可能な何らかのセンサと処理系とを備えればよい。たとえばカメラセンサ105がレーダセンサを用いて夜間の検知を可能にしてもよいし、LIDAR(Light Detection and Ranging)センサにより精度の高い障害物位置を検知してもよい。
【0015】
また、カメラセンサ105による検知対象は必ずしも実体を伴う障害物がなくてもよい。たとえば、ヘッドライト、影、音などで車両の存在が推定される領域や、障害物の移動予測結果、交通ルール等から自車の侵入が望ましくないと判断される領域の自車に近い側の端点であってもよい。このような実際に障害物のある位置以外の表現を用いることで、センサが直接検知できない危険や未来の予測等、扱うことのできる事象を増やしてもよい。
【0016】
フリースペース検知装置102はカメラセンサ105が検知した検出点の情報を用いて後述するようにフリースペースを検知し、運転行動計画装置104にフリースペース情報を渡す。運転行動計画装置104はフリースペース情報を用いて自車が取るべき行動を決定し、決定した行動に従って車両を制御する。フリースペース検知装置102および運転行動計画装置104はECU(Electronic Control Unit)であり、共通バス103から情報を受信し、ソフトウェアにより処理し、共通バス103に処理結果を送信する。それぞれのECUは、記憶装置に格納されたソフトウェアを中央演算処理装置で実行し、入出力装置を使って共通バス103と情報を送受信する。
【0017】
なお、フリースペース検知装置102および運転行動計画装置104の機能の実現方法はECUに限らない。たとえばシングルボードコンピュータに代表される安価なコンピュータを用いてコストを削減してもよい。なお、運転行動計画装置104は共通バス103から情報を取得し、共通バス103に処理した結果を出力せず、運転行動計画装置104が車両101を直接制御してもよい。
【0018】
運転行動計画装置104が車両101を直接制御する方法は特に限定されない。運転行動計画装置104はたとえば、目標とする速度や操舵の情報を音声等に変換して運転者に伝えることで間接的に車両を制御してもよいし、目標となる機械制御用の液圧等に変換してアクセルやブレーキ、ステアリング等に指示する直接的なものでもよい。これら運転行動計画装置104が車両101を制御する方法は一般的なものであるため詳細説明を省略する。また、運転行動計画装置104の処理内容についても、本発明の中心ではなく、前走車追従や緊急ブレーキ等で一般的な技術であるため、詳細説明を省略する。
【0019】
共通バス103は、少なくともカメラセンサ105が出力する情報をフリースペース検知装置102に伝達でき、かつフリースペース検知装置102が出力する情報を運転行動計画装置104に伝達できる通信バスである。共通バス103はたとえば、CAN(Controller Area Network)などのバス型の通信バスでもよいし、IEEE802.3などのスター型の通信バスでもよい。
【0020】
フリースペース検知装置102、運転行動計画装置104、およびカメラセンサ105はハードウエアとして分割されている必要はない。たとえば、カメラセンサ105の内部にある中央演算処理装置でフリースペース検知装置102と運転行動計画装置104の機能を実行し、装置としてはカメラセンサ105のみという構成にして設置スペースを節約してもよい。この場合は、共通バス103の機能は中央演算処理装置内のメモリコピー等で実現される形態となる。
【0021】
図2はフリースペース検知装置102の機能ブロック図である。フリースペース検知装置102はその機能として、受信部201、正規化部202、および送信部203を備える。受信部201は、カメラセンサ105から共通バス103を介して得られたカメラセンサ105による障害物の検知結果をフリースペース検知装置102内に取り込み、正規化部202に出力する。正規化部202は、障害物の検知結果を用いてフリースペースとしての共通形式に変換し、フリースペース情報として送信部203に出力する。本実施の形態では障害物情報をフリースペースとしての共通形式に変換することを正規化と呼ぶ。情報送信ブロックは正規化部202が共通形式に変換したフリースペースの情報を、共通バス103を介して運転行動計画装置104に送信する。
【0022】
正規化部202は、
図2に示すように端点属性付与部2021および線分属性付与部2022を備えてもよい。ただし端点属性付与部2021および線分属性付与部2022は予備的な構成であり、正規化部202は端点属性付与部2021および線分属性付与部2022の少なくとも一方を備えなくてもよい。端点属性付与部2021は、正規化した障害物の位置情報に物体の属性を付与する。線分属性付与部2022は、正規化した障害物の位置同士を結ぶ線分に対して属性を付与する。属性は、少なくとも障害物の有無を示す情報であり、障害物が存在する場合にはその障害物が移動体および静止物のいずれかを識別可能な情報であってもよい。さらに、障害物の速度および加速度の少なくとも一方が属性として含まれてもよい。
【0023】
フリースペース検知装置102が備えるそれぞれの機能ブロックは、ソフトウェアによる機能として構成されているため、複数のブロックを統合して1つのブロックとして扱ってもよい。たとえば、受信部201と正規化部202と送信部203とを1つの機能ブロックで構成し、ブロック間の情報伝達に伴うオーバーヘッドを削減してもよい。また、機能ブロック間の情報伝達方法には様々な手法を用いることができる。たとえば、共有メモリ上に情報を格納することで情報を伝達してもよいし、それぞれの機能ブロックを異なるコアや装置に配置して機能ブロック間をシリアル通信等の通信路で結合して伝達して、各装置をシンプルな構成にしてもよい。
【0024】
正規化部202が採用する共通形式は、車両101の全周を所定の刻み角度で分割した各方向、すなわち基準角度における障害物までの距離である。たとえば刻み角度が「0.1度」の場合には、車両101の正面を0度とし、時計回りに0.1度ずつ異なる基準角度、すなわち0度から359.9度まで3600個の基準角度を定義し、基準角度ごとに障害物が存在する位置までの距離を設定する。このとき、中心点は車両101の中心でもよいし他の位置でもよい。以下では中心点を「原点」とも呼ぶ。なお、障害物が存在しない可能性もあるため、障害物が検知されなかった方向は障害物がないことを表す値、たとえば負の値を設定する。
【0025】
なお以下では、前述の角度と距離で規定される各点を「フリースペース端点」と呼ぶ。障害物があることを表すフリースペース端点を結んだ領域はフリースペースの外縁を意味し、フリースペース内は自車両101が走行可能であることを意味する。また以下では、原点を通り基準角度を示す直線を「基準線」とも呼ぶ。そのため本実施の形態における共通形式は、それぞれの基準線上に配置するフリースペース端点の位置情報とも言える。全ての基準線は、一端が必ず原点に存在する。基準線はたとえば、まず1本目が0度である車両101の進行方向正面に向かう半直線であり、2本目の基準線は原点を通り1本目の基準線から左側にあり1本目の基準線となす角が刻み角度である半直線である。
【0026】
フリースペースは、障害物が存在しない領域に完全に一致することが理想である。また、フリースペースが理想より狭く表現され、障害物との間に隙間が存在することも許容される。しかし、フリースペースが理想よりも広く表現され、障害物が存在するにもかかわらずフリースペースとして認識されることは許されない。このようなフリースペースの情報を運転行動計画装置104が利用すると、車両101が障害物に衝突する可能性があるからである。
【0027】
本実施の形態では、フリースペースの適切さの指標を”精度”と呼ぶ。たとえば、あるフリースペースが障害物の存在領域を含む場合は、そのフリースペースの精度は非常に低い。また、あるフリースペースが障害物の存在領域を一切含まない場合には、障害物との間隔、すなわち隙間の領域が少ないほど精度が高いと言える。
【0028】
なお、ここで説明したフリースペースを表現する共通形式は本実施の形態における具体例であり、他の定義でもよい。たとえば車両101の正面以外を0度に設定してもよいし、刻み角度を変更してもよい。また、刻み角度は全域にわたって一定でなくてもよく、たとえば、車両101の前方と後方は異なる刻み角度が設定されてもよい。すなわち基準線同士のなす角が一定値でなくてもよい。この場合には、衝突リスクの高い前方の刻み角度を小さくし、後方の刻み角度は大きく設定することが好ましい。このような設定により、データサイズが小さくなり処理負荷が低減される。さらに、点に属性値を設定する代わりに、角度方向で連続する点と点を結ぶ線分に属性値を設定して、連続して同じ属性を持った点を省略して、処理負荷を低減してもよい。
【0029】
図3は正規化部202の処理を示すフローチャートである。ただし
図3では、端点属性付与部2021および線分属性付与部2022の処理は記載を省略している。正規化部202はまずステップS302において、カメラセンサ105が出力する検出点の情報を取得する。検出点は1つだけの場合もあるが、複数であることの方が多いため以下では複数の検出点を「入力点列」とも呼ぶ。ステップS302の処理結果である入力点列は、車両101から見た障害物の検知点である位置の配列、すなわち点列として表現されている。障害物位置はたとえば、車両101の中心を原点とし、車両101の前方をx軸正、車両101の左方をy軸正とした直交座標系上の2次元座標として表現される。ただし、3次元座標を採用して高さ方向の情報を付加し、自車との衝突リスクをより精密に判断できるようにしてもよい。
【0030】
続くステップS303では正規化部202は、入力点列を構成するそれぞれの検出点を極座標変換する。この極座標系の中心は、たとえば車両101の中心である。続くステップS304では正規化部202は、障害物の情報を格納する障害物情報配列を初期化する。続くステップS355では正規化部202は、処理対象とする基準角度を順番に変更してステップS356~S358の処理を繰り返す。具体的には正規化部202は、全ての基準角度を計算して昇順に配列に格納し、その配列インデックスを順番に増やして処理対象を順番に変更する。
【0031】
本実施の形態では基準角度を昇順にすることで入力点列の処理範囲を限定して処理を節約しているが、昇順にせず処理を単純化してもよい。なお、基準角度と基準線と次に説明する基準角度領域は1:1:1の対応関係にあるので、処理対象の基準線や処理対象の基準角度領域を順番に変更してステップS356~S358の処理を繰り返す、とも言える。
【0032】
基準角度領域とは、処理対象の基準角度に対応する基準線に対して右側および左側に隣接する基準線との中線を境界とした領域である。たとえば刻み角度が0.1度の場合には、処理対象の基準角度から-0.05度以上、+0.05度未満の領域が基準角度領域である。なお本実施の形態では中線を隣接する基準角度との中線を境界としたが、必ずしも中線とする必要はない。たとえば、自車から見て前方側を広めにとって障害物の検知を自車の前方側に寄せて自車にとって衝突リスクが高い障害物を強調し、より安全な衝突判断をしやすくしてもよい。
【0033】
ステップS356では正規化部202は、処理対象の基準角度領域内に存在する検出点をすべて特定する。たとえば処理対象の基準角度が「12.5度」で刻み角度が「0.1度」の場合には、角度が「12.45度」以上で「12.55度」未満の検出点を列挙する。続くステップS357では正規化部202は、ステップS356において特定した検出点のうち、原点までの距離が最小の検出点を特定する。以下では、本ステップにおいて特定した検出点の原点までの距離を「最接近距離」と呼ぶ。換言すると、基準角度領域内の検出点のうち、最も原点に近い検出点と原点との距離が最接近距離である。
【0034】
続くステップS358では正規化部202は、ステップS305で対象とした基準角度とステップS307で求めた最近接距離との組み合わせを、ステップS304において初期化した障害物情報配列に追加する。これは、ある基準線上のフリースペース端点の位置を示す情報である。なお、ステップS307で最近接距離が得られなかったことを表す値を設定した場合は、ステップS308にて障害物が存在しないことを表す情報に変換した後に障害物情報配列に追加する。ステップS309では正規化部202は、未処理の基準角度が存在すると判断する場合は処理対象を変更してステップS306に戻り、すべての基準角度を処理対象としてステップS306~S308までの処理を実行した場合は
図3に示す処理を終了する。
【0035】
図3に示す正規化ブロックの処理が完了した際には、ステップS304において初期化した障害物情報配列には、すべての基準角度、すなわち全ての基準線に対応する最接近距離が格納されている。なお、ステップS304の初期化においてあらかじめステップS307で最近接距離を得られなかったことを表す情報を設定し、ステップS307で最近接距離が得られなかった場合はステップS308の処理をスキップすることでステップS308の処理時間を節約してもよい。
【0036】
端点属性付与部2021は、障害物情報配列に含まれる各点に属性を付与する。端点属性付与部2021はたとえば、最接近距離が所定の閾値よりも遠い場合には障害物なしと判断してもよい。また端点属性付与部2021は、障害物情報配列に含まれる各点の値が時系列変化するか否かにより静止物と移動体とを区別してもよいし、受信部201が受信する付加的な情報、たとえば障害物の種別を示す情報を参照して属性を設定してもよい。線分属性付与部2022は、線分の両端の点の属性に基づき線分に属性を付与する。線分属性付与部2022はたとえば、線分の両端の点のうち少なくとも一方が時系列変化する場合にその線分は移動体と判断し、両方の点が静止物の場合のみ線分に静止物の属性を付与してもよい。
【0037】
図4は障害物情報配列の一例を示す図である。配列の各要素は角度401、距離402、および属性403である。ステップS305~S309において処理対象とした順番に基準角度が角度401に格納され、ステップS308において算出された最近接距離が距離402として格納され、ステップS307において最近接距離が得られたか否かが属性403として設定される。属性403は、元の入力点列が持っている情報に従って「静止」または「移動」を設定し、ステップS307で最近接距離を得られなかった場合は「なし」と設定している。なお、元の入力点列が特に情報を有しない場合は、「移動」の扱いとする。
【0038】
障害物の有無および移動の有無を属性403に設定することで、フリースペースの形状が変化する可能性の有無を表現しており、フリースペース情報に基づいて運転行動計画を行う場合の参考情報としている。なお、属性403にて移動もしくは静止という判定に替えて、単に障害物のありなしを設定して処理や情報を単純に書いてもよい。さらに、障害物がある場合は0以上の距離とし、障害物がない場合は負の距離を距離402に設定することで、属性403を省略してメモリや通信帯域を節約してもよい。
【0039】
また、この場合には、障害物が存在しないことを示す値として負の値に替えてセンサ検知距離以上の値を設定してもよい。また、使用するプログラミング言語の制限に対応するために適宜変更を加えてもよい。たとえば使用するプログラミング言語そのもの、または特定の変数の型において負の値を扱えない場合には、負の値の代わりに「0」を使用してもよい。さらに、基準角度があらかじめ設計してあれば、配列の番号から基準角度を計算できるため角度401を省略してメモリや通信帯域を節約してもよい。いずれにしても、ステップS308では運転行動計画装置104で用いる情報を障害物情報配列に設定する。
【0040】
図5は、本実施の形態による共通形式への変換方法を示す図である。
図5は車両101の中心を原点として表現しており、障害物602をセンサが検知した検知点を黒丸で符号608、609、610、611として表現している。なお、原点は車両101の中心に限るものではなく、たとえば車両101の後輪車軸中心として車両の運動計算をしやすくしてもよい。障害物602は大きいため、符号608~611で示すように複数の検知点で検知されている。
【0041】
図5では、4つの基準線C614~C617を一点鎖線で示し、これら基準線の中線603~606を破線で示している。それぞれの基準線を中心とし、中線で挟まれる領域614~617のそれぞれが基準角度領域である。それぞれの基準線上に存在する白抜きの星は、フリースペース端点を表す。
【0042】
本実施の形態の手法では、それぞれの基準角度領域において車両101に最も近い検知点の距離を、その領域の最接近距離とする。すなわち、領域614は検知点608の距離、領域615は検知点610の距離、領域616は検知点611の距離、がそれぞれ最接近距離となる。そのため、
図5において白抜きの星で示す位置がフリースペース端点となる。白抜きの星で示す本実施の形態によるフリースペース端点は、それぞれの基準角度領域における部分点列のうち原点に最も近い点を原点を中心とする円弧上で移動させ、基準線と交わった位置に配置したとも言える。領域617は検知点が存在しないので負の値を設定する。
図5では、本実施の形態の手法により得られるフリースペース領域の外縁が実線の円弧で示されている。
【0043】
図6は比較例手法を示す図である。
図6に示す比較例では、角度だけではなく距離も所定の間隔で区切って格子を作り、角度領域ごとに原点に最も近い障害物の格子よりも原点に近い領域をフリースペース領域とする。
図6ではセンサが検出した障害物を白抜きの四角で示しており、角度領域ごとのフリースペースの境界を実線で示している。たとえば角度領域θ1では中心から4番目の格子と6番目の格子に障害物が存在するので、最も中心に近い4番目よりも原点に近い領域、すなわち中心から3番目までの格子がフリースペースである。角度領域θ2では、障害物が中心から3番目と4番目の間、および5~7番目の格子に存在する。この場合は、最も中心に近い3番目よりも原点に近い領域、すなわち中心から2番目までの格子がフリースペースである。この比較例は、フリースペースの角度だけでなく原点までの距離までもが離散的な値をとるので、本実施の形態よりも精度が低い。
【0044】
図7は、フリースペース検知装置102のハードウエア構成図である。フリースペース検知装置102は、中央演算装置であるCPU41、読み出し専用の記憶装置であるROM42、読み書き可能な記憶装置であるRAM43、および通信装置45を備える。CPU41がROM42に格納されるプログラムをRAM43に展開して実行することで前述の様々な演算を行う。
【0045】
フリースペース検知装置102は、CPU41、ROM42、およびRAM43の組み合わせの代わりに書き換え可能な論理回路であるFPGA(Field Programmable Gate Array)や特定用途向け集積回路であるASIC(Application Specific Integrated Circuit)により実現されてもよい。またフリースペース検知装置102は、CPU41、ROM42、およびRAM43の組み合わせの代わりに、異なる構成の組み合わせ、たとえばCPU41、ROM42、RAM43とFPGAの組み合わせにより実現されてもよい。
【0046】
上述した第1の実施の形態によれば、次の作用効果が得られる。
(1)フリースペース検知装置102は、たとえば車両101の中心など所定の中心点から放射状に延びる複数の基準線、たとえば
図6の直線L101上に、中心点の周辺で検知された物体に基づいて決定されるフリースペース端点を配置し、各基準線上のフリースペース端点を繋いでフリースペースの外縁を抽出する。正規化部202は、隣接する基準線同士の中間に境界線を設定し、基準線の1つを第1基準線(
図6のL101)とし、第1基準線を挟み込む2つの境界線(
図6のL102およびL103)のそれぞれを第1境界線とし、第1基準線を中心として第1境界線により挟み込まれる領域(
図6のハッチング領域)を第1角度領域と呼ぶ場合に、第1基準線上におけるフリースペース端点(
図6の星印)の位置は、第1角度領域に存在する検出点である領域内検出点(丸囲みの「C」~「E」)のうち最も前記中心点に近い位置に基づき決定する。そのため、
図6を参照して説明したように、本実施の形態の手法は比較例よりも精度の高いフリースペースを設定できる。
【0047】
(2)正規化部202は、物体の検知状態に基づいて、フリースペース端点に対して属性を設定する端点属性付与部2021を備える。そのため、フリースペース情報をより適切に利用できる。
【0048】
(3)正規化部202は、フリースペース端点に付与された属性に基づいて、フリースペース端点同士を繋ぐ線分に対して属性を付与する線分属性付与部2022を備える。そのため、フリースペース情報をより適切に利用できる。
【0049】
(変形例1)
カメラセンサ105の出力は、ステップS302の処理結果の表現と一致しなくてもよい。たとえば、カメラセンサ105の出力が直交座標系以外の座標系や、原点や軸が一致しない直交座標系でもよく、この場合には正規化部202がステップS302において座標変換を行う。原点が一致しない場合とはたとえば、カメラセンサ105の座標系がカメラセンサ105の取り付け位置を原点とする場合である。また、カメラセンサ105の出力は障害物の中心位置と大きさの組み合わせでもよく、この場合にはステップS302において障害物の外周位置を算出する。
【0050】
さらにステップS302において自車両101の加減速に伴うロールやピッチ等の自車両101の姿勢による検知補正をしてもよい。また、検知時刻と処理時刻の時間ずれに伴う車両101の移動をカメラセンサ105の出力に反映させてもよいし、カルマンフィルタに代表される統計的な処理を用いるなどにより、検知位置の精度や確実性を高めてもよい。
【0051】
―第2の実施の形態―
図8~
図14を参照して、フリースペース検知装置の第2の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、隣接する基準角度領域内の検出点の情報も用いる点で、第1の実施の形態と異なる。
【0052】
図8は、第2の実施の形態における正規化部202の処理を示すフローチャートである。第1の実施の形態において
図3に示したフローチャートと同一の処理には同一のステップ番号を付して説明を省略する。最初のステップS302の処理は
図3と同様である。ステップS302の次に実行されるステップS393では正規化部202は、入力点列を角度順にソートする。角度表現はatan2関数を用いて求めてもよいし、たとえば点の座標までのユークリッド距離と座標値を用いてsin値およびcos値を求めて座標値の正負と併せて角度の大小関係のみを求めてもよい。後者の場合には、atan2関数に要する処理時間が節約できる。なお、ステップS393におけるソートは、後述するステップS306における処理負荷を低減するため目的で行っているため、ステップS393を削除してステップS306の処理を増やしてもよい。
【0053】
正規化部202は、ステップS393の次にステップS304を実行する。ステップS304の処理は
図3と同様である。続くステップS305では正規化部202は、処理対象とする基準角度を順番に変更してステップS306~S308の処理を繰り返す。具体的には正規化部202は、全ての基準角度を計算して昇順に配列に格納し、その配列インデックスを順番に増やして処理対象を順番に変更する。本実施の形態では基準角度を昇順にすることで入力点列の処理範囲を限定して処理を節約しているが、昇順にせず処理を単純化してもよい。なお、基準角度と基準線は1:1の対応関係にあるので、処理対象の基準線を順番に変更してステップS306~S308の処理を繰り返す、とも言える。
【0054】
ステップS306では正規化部202は、処理対象の基準角度における基準角度領域と重なる部分点列の生成処理を実行する。本ステップにおける処理の概要は
図5を参照して後に詳述する。ステップS307では正規化部202は、ステップS306において生成した部分点列を対象として、部分点列を結ぶ線分上で自車両101に最も近い点までの距離である最近接距離を計算する。ここで、部分点列を結ぶ線分とは、部分点列を構成する点を点列の順序に結んで得られる線分である。部分点列が定義されない場合は、最近接距離を得られなかったことを表す値、たとえば負の値を設定する。
【0055】
続くステップS308では正規化部202は、ステップS305で対象とした基準角度とステップS307で求めた最近接距離との組み合わせを、ステップS304において初期化した障害物情報配列に追加する。これは、ある基準線上のフリースペース端点を示す情報である。なお、ステップS307で最近接距離が得られなかったことを表す値を設定した場合は、ステップS308にて障害物が存在しないことを表す情報に変換した後に障害物情報配列に追加する。ステップS309では正規化部202は、未処理の基準角度が存在すると判断する場合は処理対象を変更してステップS306に戻り、すべての基準角度を処理対象としてステップS306~S308までの処理を実行した場合は
図8に示す処理を終了する。
【0056】
(部分点列生成処理の詳細)
図9は
図8のステップS306における部分点列生成処理の詳細を示すフローチャートである。なお以下に説明する
図5に示す処理の具体例は後述する。
図9に示す処理が開始される前に、ステップS305において処理対象の基準角度、換言すると処理対象の基準線が設定されている。
図9に示す範囲では、処理対象となる基準角度や基準線が変化しないので、基準角度領域も変化しない。
【0057】
正規化部202はまずステップS502において、部分点列用配列、開始番号、および終了番号を初期化する。部分点列用配列の要素は入力点列と同じ形式であり、少なくとも点の座標値を持つ。部分点列用配列には、初期化により点が無効であることを表す座標値、たとえば巨大な値が設定される。なお、配列要素数を可変として配列に必要なメモリを節約してもよく、その場合は初期化において要素数に「0」を設定してもよい。開始番号および終了番号には、後の処理により入力点列の配列番号が格納される。そのため、開始番号および終了番号は初期化により負の値など、配列番号ではないことがわかる値が設定される。
【0058】
続くステップS503では正規化部202は、基準角度領域を計算する。具体的には正規化部202は、基準角度領域の開始角度および終了角度を計算する。たとえば刻み角度が「0.1度」で処理対象の基準角度が「30度」の場合は、開始角度は29.95度であり、終了角度は30.05度となる。前述のように、基準角度領域は基準線を中心とする領域である。ステップS504では正規化部202は、入力点列の配列番号を「0」から順番に増やしていくループを開始する。具体的には正規化部202は、処理対象の配列番号を「1」ずつ増やしながらステップS505~S509の処理を繰り返す。
【0059】
ステップS505では正規化部202は、処理対象の配列番号に対応する入力点の角度を取得する。なお、角度の表現は、開始角度および終了角度と角度を比較可能であれば先に説明したようにatan2で求めた値でもよいし、sin/cosのペアでもよい。続くステップS506では正規化部202は、ステップS505において取得した入力点の角度が、ステップS503において計算した開始点の角度以上であるか否かを判断する。正規化部202は、入力点の角度が開始点の角度以上であると判断する場合はステップS507に進み、入力点の角度が開始点の角度未満であると判断する場合はステップS510に進む。
【0060】
ステップS507では正規化部202は、ステップS502において初期化された開始番号が初期化されたまま、すなわち未設定であれば、処理対象の配列番号を開始番号に設定してステップS508に進む。正規化部202は、開始番号が未設定ではない場合は、何もせずにステップS508に進む。ステップS508では正規化部202は、ステップS505において取得した点の角度がステップS503で計算した終了角度より小さいか否かを判定する。正規化部202は、ステップS505において取得した点の角度がステップS503で計算した終了角度よりも小さいと判断する場合はステップS509に進み、ステップS505において取得した点の角度がステップS503で計算した終了角度以上であると判断する場合はステップS510に進む。
【0061】
ステップS509では正規化部202は、ステップS502において初期化された終了番号が初期化されたまま、すなわち未設定であれば、処理対象の配列番号から「1」だけ引いた値を終了番号に設定してステップS510に進む。正規化部202は、終了番号が未設定ではない場合は、何もせずにステップS510に進む。ステップS510では正規化部202は、処理対象の配列番号が入力点列の最後である場合にはステップS511に進み、処理対象の配列番号が入力点列の最後ではない場合は、処理対象の配列番号を入力点列における次の配列番号に設定してステップS505に戻る。なお、ステップS506やステップS508における角度比較では、角度差分の絶対値が180度以下となるように、角度に360度を加えた値、もしくは360度を減じた値を用いて比較を行う。これは、0度や360度をまたいだことによる大小関係の逆転を抑止することが目的である。
【0062】
ステップS511では正規化部202は、開始番号および終了番号の両方に何らかの値が設定されたか否かを判断する。両方に何らかの値が設定されたと判断する場合はステップS512に進み、少なくとも一方が設定されていないと判断する場合はステップS513に進む。開始番号が設定されているか否かは、ステップS507が実行されたか否かと同義である。基準角度領域内に入力点列に含まれる点が1つも存在しない等の理由で、ステップS507またはステップS509が実行されていない場合は、ステップS511が否定判断される。
【0063】
ステップS512では正規化部202は、入力点列同士を接続する線分と開始角度の交点(以下、「開始交点」と呼ぶ)をステップS502において初期化した部分点列配列の先頭に追加してステップS514に進む。ここで開始交点とは、入力点列の点を順に結んだ線分と、自車両101の中心からステップS503において計算した開始角度方向に伸ばした半直線との交点である。なお、開始交点が存在しない場合は、正規化部202はステップS512の処理にて部分点列配列に開始交点を追加しない。
【0064】
ステップS514では正規化部202は、開始番号および終了番号を含む、開始番号から終了番号までの配列番号が指す入力点列をステップS502において初期化した部分点列配列の末尾に追加する。続くステップS515では正規化部202は、入力点列と終了角度の交点(以下、「終了交点」と呼ぶ)を部分点列配列に追加して
図9に示す処理を終了する。終了交点とは、入力点列に含まれる点を順に結んだ線分と、自車からステップS503で計算した終了角度方向に伸ばした半直線との交点である。終了交点が存在しない場合は、正規化部202はステップS515において部分点列配列に交点を追加しない。
【0065】
ステップS511において否定判断されると実行されるステップS513では正規化部202は、部分点列配列には何も追加せず部分点列配列は空のままとし、
図9に示す処理を終了する。以上説明した
図9に示す処理では、ステップS502において初期化した部分点列用配列の生成を目的としており、部分点列用配列を用いて
図8に示したステップS307以降の処理が実行される。
【0066】
(部分点列生成処理の具体例)
図10は、
図9に示す処理の具体例を示す図である。
図10の上部に示すように、本例では入力点列には丸囲みの「A」から丸囲みの「G」まで7つが順番に格納されている。ステップS503では正規化部202は、開始角度を示すL102と終了角度を示すL103を算出する。直線L102および直線L103により挟まれた、ドットのハッチングで示す領域が基準角度領域である。なお、
図10に示す入力点列の位置、三角囲みの「P」と「Q」、および星マークは説明の便宜のために示しており、ステップS503が完了した時点ではこれらの情報は得られていない。具体的には、基準角度領域には丸囲みの「C」から「E」までが含まれる。
【0067】
前述のように、ステップS504~S510は入力点列の数だけ繰り返し実行される。以下では、繰り返し処理の回数を「ループ」として表現する。たとえば1ループ目では、処理対象の入力点列は丸囲みの「A」であり、入力点列の要素が全部で「7」個なので本例では7ループ目まで処理が行われる。
【0068】
1ループ目では正規化部202は、丸囲みの「A」を処理対象とし、ステップS506において否定判断を行い処理を終了する。2ループ目では正規化部202は、丸囲みの「B」を処理対象とし、1ループ目と同様にステップS506において否定判断を行い処理を終了する。3ループ目では正規化部202は、処理対象である丸囲みの「C」が基準角度領域に含まれているのでステップS506を肯定判断し、ステップS507に進む。ステップS507では正規化部202は、この3ループ目で初めて実行するので、開始番号に配列番号である「3」を格納する。続くステップS508では正規化部202は、直線L103よりは図示右側に存在するので否定判断して処理を終了する。
【0069】
4ループ目および5ループ目では正規化部202は、丸囲みの「D」および「E」を処理対象とし、ステップS506を肯定判断するがステップS507の実行が初回ではないので特に処理を行わない。そしてステップS508では正規化部202は、否定判断を行い処理を終了する。6ループ目では正規化部202は、ステップS506を肯定判断するがステップS507の実行が初回ではないので特に処理を行わない。そしてステップS508では正規化部202は、肯定判断を行いステップS509に進む。ステップS509では正規化部202は、この6ループ目で初めて実行するので終了番号に要素番号の「6」から「1」を引いた「5」を設定して処理を終了する。
【0070】
7ループ目では正規化部202は、丸囲みの「F」を処理対象とし、ステップS506およびステップS508の両方で肯定判断をする。しかし正規化部202は、ステップS507およびステップS509のいずれも初回の実行ではないので具体的な処理は行わずに処理を終了する。この7ループ目の処理が終了すると、ステップS504~S510の処理が完了する。続くステップS511では正規化部202は、開始番号と終了番号の両方が設定されているので肯定判断してステップS512に進む。
【0071】
ステップS512では正規化部202は、入力点列の点を順に結んだ線分と、自車両101の中心からステップS503において計算した開始角度方向に伸ばした半直線との交点である開始交点を算出する。本例では、開始角度を示すL102は丸囲みの「B」と「C」の間を通過しているので、丸囲みの「B」および「C」を接続する線分と直線L102との交点である三角囲みの「P」の座標を算出する。そして正規化部202は、この三角囲みの「P」を部分点列に加える。ステップS514では正規化部202は、開始番号である「3」から終了番号である「5」までの入力点列の要素である、丸囲みの「C」~「E」を部分点列に追加する。
【0072】
ステップS515では正規化部202は、入力点列の点を順に結んだ線分と、自車両101の中心からステップS503において計算した終了角度方向に伸ばした半直線との交点である開始交点を算出する。本例では、終了角度を示すL103は丸囲みの「E」と「F」の間を通過しているので、丸囲みの「E」および「F」を接続する線分と直線L103との交点である三角囲みの「Q」の座標を算出する。そして正規化部202は、この三角囲みの「Q」を部分点列に加える。以上の処理により、部分点列は三角囲みの「P」、丸囲みの「C」、「D」、「E」、三角囲みの「Q」として算出される。以上が
図9に示す処理の具体例である。
【0073】
なおこれらの部分点列が得られると、
図8のステップS307およびステップS308の処理により、部分点列のうち原点に最も近い三角囲みの「P」の距離が最近接距離として算出される。そのため、
図10に示す基準角度領域におけるフリースペース端点は、原点から三角囲みの「P」までと同じ距離を、原点から基準線L101上を進んだ位置、すなわち星印の位置に設定される。
【0074】
(効果)
図11および
図12~
図14を参照して、本実施の形態による共通形式への変換方法と、第1の実施の形態における変換手法と、第2の比較例手法である第2比較例手法による共通形式への変換方法とを比較する。
図11では第1の実施の形態における変換手法と本実施の形態による変換方法とを比較し、
図12~
図14では第2比較例手法と本実施の形態による変換方法とを比較する。
【0075】
図11は、本実施の形態による共通形式への変換方法と第1の実施の形態における変換手法との比較を示す図である。ただし
図11の構成は第1の実施の形態における
図5と同一なので重複する構成の説明は省略する。第1の実施の形態における変換手法は、基準角度領域内で最も近い検知点を用いる。それぞれの基準線上に存在する白抜きの星は、フリースペース端点を表す。白抜きの丸が意味するものは後述する。第1の実施の形態の手法により、この検知点608~611を入力点列としてフリースペースの共通形式に変換すると、
図5を参照して説明したように、フリースペース領域の外縁が実線の円弧で示される位置に設定される。
【0076】
その一方で本実施の形態の手法を用いると、部分点列の算出の過程において、白抜きの丸で示す点612および点613が得られる。障害物602を検知した点列608~611の検知点列上で自車に最も近い点として、領域614では点612、領域615では点610、領域616では点613までの距離がそれぞれ最近接距離として設定され、領域617では検知点が存在しない。
図11では、本実施の形態の手法により得られるフリースペース領域の外縁が破線の円弧で示されている。ただし領域615では第1の実施の形態の手法によるフリースペース領域の外縁と本実施の形態の手法によるフリースペース領域の外縁が重なっている。白抜きの星で示す本実施の形態によるフリースペース端点は、それぞれの基準角度領域における部分点列のうち原点に最も近い点を原点を中心とする円弧上で移動させ、基準線と交わった位置に配置したとも言える。
【0077】
第1の実施の形態の手法と本実施の形態の手法を比較すると、第1の実施の形態の手法は実際に検出された検出点の原点からの距離を最接近距離に使用しており、検出点の確実性を重視している。その一方で第2の実施の形態の手法は、検出点以外にも障害物が存在することを想定し、検出点同士の間を補間して基準線の中線との交点の距離も最接近距離の候補に使用する。第1の実施の形態の手法と第2の実施の形態の手法との間に優劣はなく、センサが検出する検出点に対する考え方が異なる。
【0078】
次に
図12、
図13、
図14を用いて、本実施の形態による共通形式への変換方法と第2比較例手法との比較を示す図である。第2比較例手法は、単純に検知点列と各基準角度の交点を線形補間によって求めることで共通形式に変換する。
図12は、障害物および共通形式に変換する前の検知点を示す図である。
図12では、図示下方に自車両101が存在しており、障害物702および障害物703をセンサが検知している。センサが検知した結果は検知点704、705、706、707であり、これらを結んだ点列708を入力点列とする。なお、障害物702は側壁のように複数検知点が出るような大きさを持った障害物、703はたとえばポールのように1点しか検知点が出ないような小さな障害物である。
【0079】
図13は、
図12の検知結果を第2比較例手法により変換した結果を示す図である。第2比較例手法では、線形補間を利用して共通形式に変換している。
図13において、自車両101から放射状に伸びる半直線801は基準線を表す。入力点列708に対して、基準線801との交点を線形補間により求めたのが点802、803、804、805、806であり、点列807を構成する。
【0080】
点列807では、障害物703の左右が点804および点805となっている。そのため、実際に障害物703が存在する位置よりも遠方までフリースペースが存在することを表現しており、点列807には障害物703の存在が十分に反映されていない。換言すると、障害物703の存在を見落としたフリースペースを表現している。この原因は、検知点列708の各検知点が基準線801の半直線の間に存在するためである。
【0081】
障害物703を見落とした状態のフリースペースに基づいて運転行動を計画すると、障害物703に衝突する計画を定める可能性があり、衝突リスクが高くなる問題がある。線形補間による正規化は、各基準角度での距離を求める方法として計算量が少ない点では優れるが、障害物の存在を見落とすことがあり正確な障害物までの距離を求められないことがわかる。
【0082】
図14は、
図12の検知結果を本実施の形態の手法により変換した結果を示す図である。
図14では、実線で示す基準線801に対して、破線で示す中線901を求めている。すなわち中線901の間の領域それぞれが基準角度領域である。そして、各基準領域内で検知点列708と重なる部分点列を求め、部分点列の線分上で自車に最も近い点902を十字、すなわちプラスのマーカーで示している。点902は、それぞれの基準角度領域内に最大1つずつ存在する。そして、それぞれの基準線801における障害物までの距離として、自車両101から点902までの距離を設定して、各基準線上の自車両101から設定した距離に設定した点903とし、点903を結んだ点列を点列904として示している。点列904を見ると、
図13の点列に比べて、障害物703に近い位置に点903が設定されており、より精密に障害物703を捉えたフリースペースを表現できていることがわかる。
【0083】
上述した第2の実施の形態によれば、次の作用効果が得られる。
(4)フリースペース検知装置102は、第1基準線上におけるフリースペース端点(
図11の星印)の位置は、第1角度領域に存在する検出点である領域内検出点(丸囲みの「C」~「E」)の位置、および領域内検出点と第1角度領域に含まれない検出点とを結ぶ直線が第1境界線と交わる交点(三角囲みの「P」と「Q」)、のうち最も前記中心点に近い位置に基づき決定する。そのため、
図12~
図14を参照して説明したように、本実施の形態の手法は精度の高いフリースペースを設定できる。
【0084】
―第3の実施の形態―
図15~
図16を参照して、フリースペース検知装置の第3の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、車両に複数のセンサが搭載される点で、第1の実施の形態と異なる。
【0085】
図15は、フリースペース検知装置102Aを搭載する車両101Aのハードウエア構成図である。車両101Aは、第1の実施の形態における車両101と同様にカメラセンサ105、共通バス103、および運転行動計画装置104を備える。車両101Aは、レーダセンサ1003およびLIDAR1004をさらに備え、フリースペース検知装置102の代わりにフリースペース検知装置102Aを備える。フリースペース検知装置102Aは、第1の実施の形態におけるフリースペース検知装置102と同じハードウエア構成を有する。
【0086】
図15ではすべてのセンサが共通バス103で接続されているが、各センサの検知結果をフリースペース検知装置102Aに伝達できればよく、接続の形態は限定されない。たとえば、カメラセンサ105、レーダセンサ1003、およびLIDAR1004のそれぞれが異なる通信経路や通信プロトコルを用いてフリースペース検知装置102Aに検知結果を伝達してもよい。これらのセンサはたとえば、LVDS(Low voltage differential signaling)、CAN、IEEE802.3などを用いることができる。このような構成をとることにより、センサに適した通信方式を採用してセンサの開発コストを下げることや、共通バス103故障による通信断絶リスクを低減することができる。
【0087】
フリースペース検知装置102Aは、複数のセンサの検知結果を総合して1つのフリースペース情報に合成し、運転行動計画装置104に伝達する。本実施の形態では、センサを冗長化して耐障害性を高める、検知原理や検知範囲の異なるセンサ間で補い合ってより広い範囲のフリースペース情報を得る、より高信頼なフリースペース情報を得る、などの利点を有する。
【0088】
図16は、フリースペース検知装置102Aの機能ブロック図である。フリースペース検知装置102はその機能として、カメラ検知受信部1101、レーダ検知受信部1102、LIDAR検知受信部1103、センサフュージョン部1104、第1正規化部202-1、第2正規化部202-2、第3正規化部202-3、第4正規化部202-4、および送信部203を備える。カメラ検知受信部1101、レーダ検知受信部1102、およびLIDAR検知受信部1103は、
図1における受信部201と同様の機能を有する。カメラ検知受信部1101、レーダ検知受信部1102、およびLIDAR検知受信部1103は、それぞれカメラセンサ105、レーダセンサ1003、LIDAR1004が検出した障害物情報を受信し、それぞれが対応する正規化部202に入力点列として出力する。
【0089】
第1正規化部202-1、第2正規化部202-2、および第3正規化部202-3は、第1の実施の形態における正規化部202と同様の処理を行う。第1正規化部202-1、第2正規化部202-2、および第3正規化部202-3は、処理対象のデータが異なるのみであり動作に特段の差異はない。第1正規化部202-1、第2正規化部202-2、および第3正規化部202-3は、障害物情報をフリースペースとしての共通形式に変換、すなわち正規化処理を行い、センサフュージョン部1104に出力する。このとき、それぞれの正規化部202が出力するフリースペース情報は原点が一致していなくてもよい。
【0090】
センサフュージョン部1104は、第1正規化部202-1、第2正規化部202-2、および第3正規化部202-3が出力するそれぞれのフリースペース情報を取得し、統一した原点、たとえば自車両101Aの中心を有する座標系の値に変換した上で、その原点から見た角度で並び替える。ただし、3個のフリースペース情報を統合する方法はこれに限定されない。たとえば、3つのフリースペース情報の原点を統一し並べ替えた上で、互いに所定の距離以内に存在する複数の点を重心位置に集約して点の数を減らしてもよい。また、センサフュージョンと呼ばれる技術で一般的なように、カルマンフィルタ等で異なるフリースペースの各点を追跡し、より確からしい点に合成して点の位置の信頼度を高めてもよい。
【0091】
第4正規化部202-4は、センサフュージョン部1104から入力された障害物の情報を入力点列として第1の実施の形態における正規化部202と同様の処理を行って共通形式のフリースペースに変換し、送信部203に出力する。送信部203は、第4正規化部202-4から伝達されたフリースペース情報を送信部203に送信する。
【0092】
本実施の形態では、センサフュージョン部1104の入力および出力の両方に正規化部202を配置することで、センサによる検知結果の出力形式の違いを意識する必要がなくなる。さらに、処理の中で共通形式に合わせた出力となることを保証する仕組みが不要となるため、センサフュージョン部1104の処理を簡素化できる。
【0093】
(第3の実施の形態の変形例)
上述した第3の実施の形態では、センサフュージョン部1104の入力および出力の両方に正規化部202を配置した。しかし、処理負荷を減らすためにセンサフュージョン部1104の入力側の正規化部202を省略してセンサフュージョン部1104の出力側の正規化部202のみとしてもよいし、センサフュージョン部1104の出力側の正規化部202を省略してもよい。ただし、センサフュージョン部1104の入力側の正規化部202を省略した場合は、センサ毎に異なる形式の検知結果にセンサフュージョン部1104が対応する必要がある。また、センサフュージョン部1104の出力側の正規化部202を省略した場合は、センサフュージョン部1104が出力するフリースペースが共通形式とする処理がセンサフュージョン部1104に必要となる。
【0094】
―第4の実施の形態―
図17~
図18を参照して、フリースペース検知装置の第4の実施の形態を説明する。以下の説明では、第2の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第2の実施の形態と同じである。本実施の形態では、正規化部202の動作が第2の実施の形態と異なる。その他の構成および動作は第2の実施の形態と同様なので説明を省略する。
【0095】
図17は、第4の実施の形態における正規化部202の処理を示すフローチャートである。
図17に示すフローチャートは、第2の実施の形態における
図5のステップS511以降に相当する。すなわち、第2の実施の形態における
図8に示す処理の全体、および
図9のステップS502~S510の処理は第1の実施の形態と同様である。正規化部202は、ステップS504~S510に示すループ処理が完了すると、ステップS1202を実行する。
【0096】
ステップS1202では正規化部202は、第1の実施の形態におけるステップS512の処理と同様に開始交点を算出する。なお、第1の実施の形態において説明したように、開始交点が存在しない場合もある。続くステップS1203では正規化部202は、開始交点が存在する場合には開始交点のすぐ右に存在する入力点(以下、「開始右点」と呼ぶ)を算出し、開始交点が存在しない場合は何もしない。なお開始右点は、自車両101から見て開始交点の右側に存在する入力点のうち、最も開始交点に角度が近い点である。ただし、入力点列の値によっては開始右点が存在しない場合もありうる。
【0097】
ステップS1204では正規化部202は、開始交点および開始右点の両方が存在し、かつ開始交点と開始右点が十分近いか否かを判断する。十分に近いことの定義は後述する。正規化部202は、開始交点および開始右点の両方が存在し、かつ開始交点と開始右点が十分近いと判断する場合はステップS1205に進み、開始交点および開始右点のいずれかが存在しない、または開始交点と開始右点が十分近くはないと判断する場合はステップS1206に進む。ステップS1205では正規化部202は、ステップS502において初期化した部分点列配列に開始交点を追加してステップS1206に進む。
【0098】
ステップS1206では正規化部202は、第1の実施の形態におけるステップS511と同様に開始番号および終了番号の両方が設定されているか否かを判断する。正規化部202は、開始番号および終了番号の両方が設定されていると判断する場合はステップS1207に進み、開始番号および終了番号の少なくとも一方が設定されていないと判断する場合はステップS12008に進む。ステップS1207では正規化部202は、第1の実施の形態におけるステップS514と同様に、開始番号から終了番号までの入力点列を部分点列配列に追加してステップS1208に進む。
【0099】
ステップS1208では正規化部202は、第1の実施の形態におけるステップS515と同様に終了交点を算出する。ただし第1の実施の形態で記載したように、終了交点が存在しない場合もある。続くステップS1209では正規化部202は、終了交点が存在する場合は終了交点のすぐ左に存在する入力点(以下、「終了左点」と呼ぶ)を算出し、終了交点が存在しない場合は何もしない。なお終了左点は、自車両101から見て終了交点の左側に存在する入力点のうち最も終了交点に角度が近い点であり、入力点列の値によっては終了右点が存在しない場合もある。
【0100】
続くステップS1210では正規化部202は、終了交点および終了左点が存在し、かつ終了交点と終了左点が十分近いか否かを判断する。終了交点および終了左点の両方が存在し、かつ終了交点および終了左点が十分近いと判断する場合はステップS1211に進み、終了交点および終了左点のいずれかが存在しない、または終了交点と終了左点が十分近くはないと判断する場合は
図17の処理を終了する。ステップS1211では正規化部202は、部分点列配列に終了交点を追加して
図17の処理を終了する。
【0101】
なお、ステップS1204およびステップS1210における”十分近い”とは、両点の距離が所定の値たとえば1mより近いことである。なお、”十分近い”の定義は他の定義でもよい。たとえば、両点の距離が0.1mよりも近いことを”十分近い”と定義してもよく、この場合には障害物が存在しない位置への誤った補間のリスクが低減される。また、2つの点の角度の差が所定の閾値以下であることを”十分近い”と定義してもよく、この場合には誤った補間のリスクが低減される。本実施の形態を採用することにより、基準角度領域内に入力点が含まれない場合でもステップS1204またはステップS1208の条件を満たせばフリースペース端点を補間できる。そのためたとえば、センサによる障害物検知が共通形式より粗い場合にも障害物の位置を補間したフリースペースを生成できる。
【0102】
図18は、本実施の形態における正規化部202の処理の具体例を示す図である。
図18は、第2の実施の形態における
図10と略同一の前提条件であり、基準線L101を中心とする基準角度領域におけるフリースペース端点の算出を説明している。
図10との相違点は、入力点列が少なくなっており、丸囲みの「A」、「B」、「F」、「G」のみである。そのため、ハッチングで示す基準角度領域には入力点列が存在しない。本実施の形態では、ステップS1202により開始交点である三角囲みの「P」が算出され、ステップS1208により終了交点である三角囲みの「Q」が算出される。そのため、ステップS1204、ステップS1206、およびステップS1210の全てで肯定判断がされれば、部分点列として三角囲みの「P」および「Q」が設定される。
【0103】
そして
図8のステップS307およびステップS308の処理により、両者のうち原点に近い三角囲みの「P」と原点との距離が最接近距離として障害物情報配列に追加される。そのため
図15に示す例では、基準線L101上に白抜きの星で示すフリースペース端点の原点までの距離は、三角囲みの「P」から原点までの距離に等しい。
【0104】
上述した第4の実施の形態によれば、次の作用効果が得られる。
(5)正規化部202は、第1基準角度領域内に物体存在点が存在しない場合に、第1基準角度領域の両側に存在する一対の物体存在点同士を結んだ線と第1境界線との交点の位置に基づき、フリースペース端点を設定する。そのため、基準角度領域に入力点列が存在しない場合にもフリースペース端点を形成できる。
【0105】
(第4の実施の形態の変形例)
本実施の形態では
図9のステップS511以降をステップS1201からステップS1211の処理で置き換えたが、ステップS511を残してステップS512以降をステップS1201からステップS1211の処理で置き換えてもよい。この場合は、開始番号または終了番号がない場合には、ステップS513を実行することとなり、基準角度領域内に入力点列がない場合は部分点列を生成しなくなり、本実施の形態にて過剰にフリースペース端点を補間するリスクを下げることができる。
【0106】
上述した各実施の形態では、フリースペース検知装置が搭載される車両は四輪車を想定したが、フリースペース検知装置は四輪車以外に搭載されてもよい。たとえばフリースペース検知装置は、二輪車、バス、トラック、オート三輪、カート、無限軌道車両、鉄道車両等、移動可能な車両に搭載されてもよい。また、フリースペース検知装置は移動体に搭載されなくてもよい。たとえばカートが移動する倉庫内にフリースペース検知装置を設置し、倉庫内に設置したセンサの情報をフリースペース検知装置が処理してもよい。この場合はセンサの設置の自由度を高められる。
【0107】
また、第2の実施の形態のようにフリースペース検知装置が複数のセンサの出力を処理する場合には、その複数のセンサは互いに死角を補い合うように配置することで、検知の信頼性を高められる。また複数のフリースペース検知装置を通信可能に接続して用いてもよく、あるフリースペース検知装置が出力したフリースペース情報を別のフリースペース検知装置が利用してもよい。さらにこの場合に、フリースペース検知装置はフリースペース情報だけでなくセンサの出力を他のフリースペース検知装置に出力してもよく、フリースペース検知装置は他のフリースペース検知装置に接続されたセンサの情報を用いてフリースペース情報を生成できる。フリースペース情報を他の装置に出力する際に、本実施の形態において説明した正規化を行うことで、それぞれのセンサの出力形式を意識する必要がなくなり、監視装置の設計を簡素化できる。
【0108】
上述した各実施の形態および変形例において、機能ブロックの構成は一例に過ぎない。別々の機能ブロックとして示したいくつかの機能構成を一体に構成してもよいし、1つの機能ブロック図で表した構成を2以上の機能に分割してもよい。また各機能ブロックが有する機能の一部を他の機能ブロックが備える構成としてもよい。
【0109】
上述した各実施の形態および変形例において、プログラムは不図示のROM42に格納されるとしたが、プログラムは不揮発性の記憶装置に格納されていてもよい。また、フリースペース検知装置が不図示の入出力インタフェースを備え、必要なときに入出力インタフェースとフリースペース検知装置が利用可能な媒体を介して、他の装置からプログラムが読み込まれてもよい。ここで媒体とは、たとえば入出力インタフェースに着脱可能な記憶媒体、または通信媒体、すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号、を指す。また、プログラムにより実現される機能の一部または全部がハードウエア回路やFPGAにより実現されてもよい。
【0110】
上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
【符号の説明】
【0111】
102、102A:フリースペース検知装置
201 :受信部
202 :正規化部
2021 :端点属性付与部
2022 :線分属性付与部