(57)【要約】【課題】処理負荷を抑制しつつ走行中の路面と連続する走行可能な路面を検出できる「路面検出システム、パーソナルモビリティ及び路面検出方法」を提供する。【解決手段】全点群(ａ１）を対象とする平面検出を行って平面４０１が走行中の路面として検出されたならば平面４０１を走行可能路面(ａ２）に追加すると共に、全点群(ａ１）から、平面４０１の点群を除去した検出用検出用点群データを生成し（ｂ１）、この検出用検出用点群データを対象として平面検出が行って検出した平面４０２が、走行中路面中の平面４０１に隣接する、平面４０１からパーソナルモビリティ１００が移動可能な平面であれば、走行可能路面に追加する（ｂ２）。【選択図】図４
2020197388.tif 000002
【特許請求の範囲】
【請求項１】
移動体が走行可能な路面を走行可能路面として検出する路面検出システムであって、
前記移動体周辺を三次元計測して点群を生成する三次元計測部と、
点群から平面を検出する平面検出部と、
前記平面検出部に前記三次元計測部が生成した点群から平面を検出させ、検出された平面が前記移動体が走行中の路面に相当する平面である場合に、当該平面を走行中平面として検出し、前記走行可能路面に含める走行中平面検出部と、
前記三次元計測部が生成した点群から前記走行中平面の点群を除去した点群である検出対象点群を生成し、前記平面検出部に検出対象点群から平面を検出させ、検出された平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める隣接路面検出部とを有することを特徴とする路面検出システム。
【請求項２】
請求項１記載の路面検出システムであって、
前記隣接路面検出部は、前記検出対象点群から前記平面検出部が平面を検出したときに、検出した前記検出対象点群を、当該検出対象点群から前記平面検出部が検出した平面の点群を除去した点群である検出対象点群に更新し、前記平面検出部に更新した検出対象点群から平面を検出させ、検出された平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める処理をｍ（但し、ｍは１以上の整数）回行うことを特徴とする路面検出システム。
【請求項３】
移動体が走行可能な路面を走行可能路面として検出する路面検出システムであって、
前記移動体周辺を三次元計測して点群を生成する三次元計測部と、
点群から平面を検出する平面検出部と、
前記平面検出部に前記三次元計測部が生成した点群から平面を検出させ、検出された平面が前記移動体が走行中の路面に相当する平面である場合に、当該平面を走行中平面として検出し、前記走行可能路面に含める走行中平面検出部と、
左方向と右方向と前方向とのうちの少なくとも一つの方向を検出方向として、各検出方向について、前記三次元計測部が生成した点群のうちの、前記走行中路面の当該検出方向側の空間中の点群を検出対象点群に設定し、前記平面検出部に、前記検出対象点群から平面を検出させ、検出された平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める隣接路面検出部とを有することを特徴とする路面検出システム。
【請求項４】
請求項３記載の路面検出システムであって、
前記隣接路面検出部は、前記検出対象点群から前記平面検出手段が検出した平面を前記走行可能路面に含めたときに、当該前記検出対象点群から前記平面検出手段が検出し前記走行可能路面に含めた平面を対象平面として、少なくとも、前記対象平面が前記走行可能路面中の平面に隣接していない方向となる検出方向について、前記三次元計測部が生成した点群のうちの、前記対象平面の当該検出方向側の空間中の点群に前記検出対象点群を更新し、前記平面検出部に、更新した検出対象点群から平面を検出させ、検出された平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める処理をｍ（但し、ｍは１以上の整数）回行うことを特徴とする路面検出システム。
【請求項５】
請求項１、２、３または４記載の路面検出システムを搭載した、前記移動体であるパーソナルモビリティであって、
前記走行可能路面と、前記三次元計測部が生成した点群のうちの前記走行可能路面中の平面を除去した点群とから、当該パーソナルモビリティ周辺の障害物を検出する障害物検出部を備えたことを特徴とするパーソナルモビリティ。
【請求項６】
請求項５記載のパーソナルモビリティであって、
前記障害物検出部が検出した障害物の警告する処理と、当該障害物の回避動作を当該パーソナルモビリティに行わせる処理とのうちの少なくとも一方を行う障害物対応部を有することを特徴とするパーソナルモビリティ。
【請求項７】
移動体周辺を三次元計測して生成した点群から、移動体が走行可能な路面を走行可能路面として検出する路面検出方法であって、
前記三次元計測して生成した点群から平面を検出し、検出された平面が前記移動体が走行中の路面に相当する平面である場合に、当該平面を走行中平面として検出し、前記走行可能路面に含める走行中平面検出ステップと、
前記三次元計測して生成した点群から前記走行中平面の点群を除去した点群である検出対象点群を生成し、検出対象点群から平面を検出し、検出された平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める隣接路面検出ステップとを有することを特徴とする路面検出方法。
【請求項８】
請求項７記載の路面検出方法であって、
前記隣接路面検出ステップにおいて、当該隣接路面検出ステップで前記検出対象点群から前記平面を検出したときに、前記検出対象点群を、当該検出対象点群から検出した平面の点群を除去した点群である検出対象点群に更新し、更新した検出対象点群から平面を検出し、検出された平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める処理をｍ（但し、ｍは１以上の整数）回行うことを特徴とする路面検出方法。
【請求項９】
移動体周辺を三次元計測して生成した点群から、移動体が走行可能な路面を走行可能路面として検出する路面検出方法であって、
前記三次元計測して生成した点群から平面を検出し、検出された平面が前記移動体が走行中の路面に相当する平面である場合に、当該平面を走行中平面として検出し、前記走行可能路面に含める走行中平面検出ステップと、
左方向と右方向と前方向とのうちの少なくとも一つの方向を検出方向として、各検出方向について、前記三次元計測して生成した点群のうちの、前記走行中路面の当該検出方向側の空間中の点群を検出対象点群に設定し、前記検出対象点群から平面を検出し、検出した平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める隣接路面検出ステップとを有することを特徴とする路面検出方法。
【請求項１０】
請求項９記載の路面検出方法であって、
前記隣接路面検出ステップにおいて、当該隣接路面検出ステップで前記検出対象点群から検出した平面を前記走行可能路面に含めたときに、少なくとも、前記検出対象点群から検出し前記走行可能路面に含めた平面が前記走行可能路面中の平面に隣接していない方向となる検出方向について、前記三次元計測して生成した点群のうちの、前記検出対象点群から検出し前記走行可能路面に含めた平面の当該検出方向側の空間中の点群に前記検出対象点群を更新し、更新した検出対象点群から平面を検出し、検出した平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める処理をｍ（但し、ｍは１以上の整数）回行うことを特徴とする路面検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パーソナルモビリティ等の移動体が走行可能な路面を検出する技術に関するものである。
【背景技術】
【０００２】
移動体が走行可能な路面を検出する技術としては、３次元計測で計測した移動体周辺の物体表面の３次元座標を持つ点の群である点群データから、移動体の上下方向を法線とする面である基準面を分割した区域毎に、前記基準面の法線方向に当該区域と重なる空間内にある平面を、RANSAC(Random Sample Consensus)等の推定アルゴリズムを用いて推定面として算定し、移動体近傍が走行中である区域である走行中区域から、当該走行中区域に近い順に順次、高さや勾配の差が、走行中区域の推定面、もしくは、他の探索された推定面と連続的である推定面を探索していき、走行中区域の推定面と探索した推定面とを移動体が走行可能な路面として検出する技術が知られている（たとえば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７-９９０６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述した移動体の上下方向を法線とする面である基準面を分割した区域毎に算出した推定面を用いて移動体が走行可能な路面として検出する技術によれば、各区域について各々平面を算定する必要があるため、処理負荷が大きく、走行可能な路面の迅速な検出の妨げとなっていた。
【０００５】
一方で、３次元計測で計測した全空間を対象として一つの平面を算定することとすると、走行中の路面を検出できたとしても、走行中の路面に連続する、実際には走行可能な路面を走行可能な路面として検出できなくなる場合がある。たとえば、走行中の歩道から車道に降りるための傾斜路などは、走行中の歩道とは異なる平面であるために、走行中の歩道を走行中の路面として検出できた場合であっても、走行可能な路面として検出できなくなる。
【０００６】
そこで、本発明は、処理負荷を抑制しつつ、走行中の路面と連続する走行可能な路面についても、これを走行可能な路面として検出することを課題とする。
【課題を解決するための手段】
【０００７】
前記課題達成のために、本発明は、移動体が走行可能な路面を走行可能路面として検出する路面検出システムに、前記移動体周辺を三次元計測して点群を生成する三次元計測部と、点群から平面を検出する平面検出部と、前記平面検出部に前記三次元計測部が生成した点群から平面を検出させ、検出された平面が前記移動体が走行中の路面に相当する平面である場合に、当該平面を走行中平面として検出し、前記走行可能路面に含める走行中平面検出部と、前記三次元計測部が生成した点群から前記走行中平面の点群を除去した点群である検出対象点群を生成し、前記平面検出部に検出対象点群から平面を検出させ、検出された平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める隣接路面検出部とを設けたものである。
【０００８】
ここで、このような路面検出システムは、前記隣接路面検出部において、前記検出対象点群から前記平面検出部が平面を検出したときに、検出した前記検出対象点群を、当該検出対象点群から前記平面検出部が検出した平面の点群を除去した点群である検出対象点群に更新し、前記平面検出部に更新した検出対象点群から平面を検出させ、検出された平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める処理をｍ（但し、ｍは１以上の整数）回行うように構成してもよい。
【０００９】
このような路面検出システムによれば、平面検出の対象とする検出対象点群から検出した平面を除去しながら、平面検出を比較的少ない回数繰り返すだけで、効率良く、走行中の平面から走行可能につながる走行可能な平面を、走行可能な路面として検出できることが期待できる。
【００１０】
また、前記課題達成のために、本発明は、移動体が走行可能な路面を走行可能路面として検出する路面検出システムに、前記移動体周辺を三次元計測して点群を生成する三次元計測部と、点群から平面を検出する平面検出部と、前記平面検出部に前記三次元計測部が生成した点群から平面を検出させ、検出された平面が前記移動体が走行中の路面に相当する平面である場合に、当該平面を走行中平面として検出し、前記走行可能路面に含める走行中平面検出部と、左方向と右方向と前方向とのうちの少なくとも一つの方向を検出方向として、各検出方向について、前記三次元計測部が生成した点群のうちの、前記走行中路面の当該検出方向側の空間中の点群を検出対象点群に設定し、前記平面検出部に、前記検出対象点群から平面を検出させ、検出された平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める隣接路面検出部とを備えたものである。
【００１１】
ここで、このような路面検出システムは、前記隣接路面検出部において、前記検出対象点群から前記平面検出手段が検出した平面を前記走行可能路面に含めたときに、当該前記検出対象点群から前記平面検出手段が検出し前記走行可能路面に含めた平面を対象平面として、少なくとも、前記対象平面が前記走行可能路面中の平面に隣接していない方向となる検出方向について、前記三次元計測部が生成した点群のうちの、前記対象平面の当該検出方向側の空間中の点群に前記検出対象点群を更新し、前記平面検出部に、更新した検出対象点群から平面を検出させ、検出された平面が走行可能路面中の平面に隣接した、走行可能路面中の平面から前記移動体が走行して移動して走行可能な平面である場合に、当該検出された平面を前記走行可能路面に含める処理をｍ（但し、ｍは１以上の整数）回行うように構成してもよい。
【００１２】
このような路面検出システムによれば、平面検出の対象とする検出対象点群を、走行可能なことを検出して走行可能路面に含めた平面に応じて更新しながら平面検出を比較的少ない回数繰り返すだけで、効率良く、走行中の平面から走行可能につながる走行可能な平面を走行可能な路面として検出できる。
【００１３】
また、本発明は、以上の路面検出システムを搭載した、前記移動体であるパーソナルモビリティであって、前記走行可能路面と、前記三次元計測部が生成した点群のうちの前記走行可能路面中の平面を除去した点群とから、当該パーソナルモビリティ周辺の障害物を検出する障害物検出部を備えたパーソナルモビリティを提供する。
【００１４】
ここで、このようなパーソナルモビリティには、前記障害物検出部が検出した障害物の警告する処理と、当該障害物の回避動作を当該パーソナルモビリティに行わせる処理とのうちの少なくとも一方を行う障害物対応部を設けるようにしてよい。
【発明の効果】
【００１５】
以上のように、本発明によれば処理負荷を抑制しつつ、走行中の路面と連続する走行可能な路面についても、これを走行可能な路面として検出することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係るパーソナルモビリティを示す図である。
【図２】本発明の実施形態に係る走行システムの構成を示すブロックである。
【図３】本発明の実施形態に係る走行可能路面算出処理を示すフローチャートである。
【図４】本発明の実施形態に係る走行可能路面算出処理の処理例を示す図である。
【図５】本発明の実施形態に係る走行可能路面算出処理の処理例を示す図である。
【図６】本発明の実施形態に係る他の走行可能路面算出処理を示すフローチャートである。
【図７】本発明の実施形態に係る隣接移動可能平面検出処理を示すフローチャートである。
【図８】本発明の実施形態に係る他の走行可能路面算出処理の処理例を示す図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態について説明する。
図１ａ、ｂに、本実施形態に係るパーソナルモビリティ１００を示す。
図１ａはパーソナルモビリティ１００の右側面を、図１ｂはパーソナルモビリティ１００の上面を表している。
図示するように、本実施形態に係るパーソナルモビリティ１００は、利用者が着座する椅子を備えた四輪の装置であり、人力によらずに走行するための走行システムを備えている。
【００１８】
そして、走行システムは、図２に示すように、パーソナルモビリティ１００の自走動作を担う自走システム１と、パーソナルモビリティ１００の前方の障害物を検出して、検出した障害物の位置を自走システム１に通知する障害物検出システム２とを備えている。
【００１９】
自走システム１は、パーソナルモビリティ１００の制動を行うブレーキ装置１１、パーソナルモビリティ１００の駆動輪を回転させる走行用モータ１２、パーソナルモビリティ１００の舵角を制御する操舵装置１３、ブレーキレバーやアクセルレバーやハンドル等の運転装置１４、ナビゲーションシステム１５、自走制御部１６を備えている。
【００２０】
自走システム１は、ユーザが設定できる走行モードとして、マニュアルモードと自動運転モードとを備えており、自走制御部１６は、マニュアルモードが設定されているときには、運転装置１４の操作に従って走行用モータ１２やブレーキ装置１１や操舵装置１３の動作を制御して、パーソナルモビリティ１００を走行、停止させる。
【００２１】
また、自走制御部１６は、自動運転モードが設定されているときには、予めユーザによってナビゲーションシステム１５に設定されているルートに従って当該ルートの目的地まで走行するように、走行用モータ１２やブレーキ装置１１や操舵装置１３の動作を制御して、パーソナルモビリティ１００を走行させる。
【００２２】
また、自走制御部１６は、障害物検出システム２から通知された障害物情報が示す障害物の位置に所定レベル以上接近したたならば、所定の注意喚起音を出力して障害物の接近を警告し、障害物に衝突しないようにパーソナルモビリティ１００を停止させる処理を行う。ここで、自走制御部１６は、走行用モータ１２やブレーキ装置１１や操舵装置１３の動作を制御して、障害物検出システム２から位置を通知された障害物を迂回してパーソナルモビリティ１００を走行させる処理なども行うようにしてよい。
【００２３】
次に、障害物検出システム２は、パーソナルモビリティ１００の前方の三次元計測を行う三次元測位センサ２１、三次元測位センサ２１で計測したパーソナルモビリティ１００の前方の物体表面の三次元座標を持つ点のの群である点群のデータを点群データとして格納した点群データメモリ２２、点群データメモリ２２の点群データからパーソナルモビリティ１００の前方のパーソナルモビリティ１００が走行可能な路面を識別する路面識別部２３、点群データメモリ２２の点群データのうち、路面識別部２３が識別したパーソナルモビリティ１００が走行可能な路面の点群を除去した路面除去点群データを生成する路面除去部２４、路面識別部２３が識別したパーソナルモビリティ１００が走行可能な路面と路面除去点群データからパーソナルモビリティ１００の前方の障害物の存在と位置を検出し、検出した障害物の位置を自走制御部１６に通知する障害物検出部２５を備えている。
【００２４】
ここで、三次元測位センサ２１としては、たとえば、ステレオカメラを用いて三次元計測を行うセンサや、レーザを用いて三次元計測を行う3D-LiDARやToF等を用いることができる。そして、三次元測位センサ２１は、図１ａ、ｂに示すように、パーソナルモビリティ１００の前部に配置されて、当該位置からパーソナルモビリティ１００の前方の三次元計測を行う。
【００２５】
次に、路面識別部２３は、平面検出部２３１と、走行可能路面算出部２３２とを備えている。
平面検出部２３１は、点群データから、一つの平面を、RANSAC(Random Sample Consensus)や、LMedS(Least Median of Squares)や、M推定(M-estimation)等のロバスト推定アルゴリズムを用いて検出する
すなわち、平面検出部２３１は、RANSACによって平面を検出する場合には、点群中の点（３次元座標）をランダムに所定数抽出し、抽出した点が表す平面の方程式を推定し、推定した平面の方程式と、点群中の他の点の整合性を評価する処理を、充分によい評価が得られるまで、もしくは、所定回数回繰り返し、評価が最も良かった平面の方程式を平面の方程式として決定する。
【００２６】
また、平面検出部２３１は、決定した面の方程式に整合する３次元座標の点群の点が存在する領域を平面の領域として抽出する。
次に、走行可能路面算出部２３２は、平面検出部２３１を利用して、パーソナルモビリティ１００が走行可能な路面を算出する。
図３に、走行可能路面算出部２３２が、所定時間間隔で繰り返し行う走行可能路面算出処理の手順を示す。
図示するように、走行可能路面算出処理において走行可能路面算出部２３２は、まず、点群データメモリ２２の点群データからの平面検出を平面検出部２３１に行わせる（ステップ３０２）。
【００２７】
そして、次に、走行可能路面算出部２３２は、平面検出部２３１によって、平面として走行中の平面が検出されたかどうかを調べ（ステップ３０４）、走行中の平面が検出されていなければ走行可能路面算出処理を終了し、走行中の平面が検出されていれば、検出された平面を走行可能路面に追加する（ステップ３０６）。
【００２８】
ここで、平面検出部２３１によって検出された平面が走行中の平面であるかどうかは、たとえば、検出された平面の領域がパーソナルモビリティ１００の直ぐ前の領域であり、かつ、当該平面のパーソナルモビリティ１００に最寄りの位置の高さがパーソナルモビリティ下端の高さとほぼ等しく、当該平面の勾配が所定のしきい値以下である場合に、検出された平面が走行中の平面であると判定すること等により行う。ここで、当該平面の勾配のしきい値は、パーソナルモビリティ１００が安全に走行可能な勾配の最大値とする。
【００２９】
そして、走行中の平面を走行可能路面に追加したならば（ステップ３０６）、点群データメモリ２２の点群データから、検出された平面の点を除去した点群データを検出用点群データとして生成する（ステップ３０８）。
【００３０】
そして、次に、iを１に設定し（ステップ３１０）、検出用点群データからの平面検出を平面検出部２３１に行わせる（ステップ３１２）。
そして、平面検出部２３１によって検出された平面が、走行可能路面からパーソナルモビリティ１００が移動可能な平面であるかどうかを調べる（ステップ３１４）。
ここで、ステップ３１４では、平面検出部２３１によって検出された平面が、走行可能路面中の任意の平面に所定長以上の長さに渡って接する形態で隣接しており、かつ、検出された平面の勾配が所定のしきい値以下であり、検出された平面の隣接する走行可能路面中の平面との勾配の差が所定のしきい値以下である場合に、検出された平面が、走行可能路面からパーソナルモビリティ１００が移動可能な平面であると判定する。ここで、前記所定長は、安全な通行に、パーソナルモビリティ１００が左右方向に要する長さとし、検出された平面の勾配のしきい値は、パーソナルモビリティ１００が安全に走行可能な勾配の最大値とし、検出された平面の隣接する走行可能路面中の平面との勾配の差の差のしきい値は、パーソナルモビリティ１００が走行して、平面から他の平面に安全に移動できる勾配の差の最大値とする。
【００３１】
そして、検出された平面が走行可能路面からパーソナルモビリティ１００が移動可能な平面でなければ（ステップ３１４）、そのままステップ３１８に進み、移動可能な平面であれば、検出された平面を走行可能路面に追加した上で（ステップ１６）、ステップ３１８に進む。
次に、このようにして、ステップ３１８に進んだならば、ｉが予め設定した１以上の整数であるｎに達したかどうかを調べ、達していなければステップ３１２で検出した平面の点群のデータを検出用点群データから除去し（ステップ３２２）、iを１増加した上で（ステップ３２４）、ステップ３１２からの処理に戻る。
【００３２】
一方、ｉがｎに達していれば（ステップ３１８）、走行可能路面を路面除去部２４と障害物検出部２５に通知し（ステップ３２６）、走行可能路面算出処理を終了する。
以上、走行可能路面算出部２３２が行う走行可能路面算出処理について説明した。
なお、以上の走行可能路面算出処理のステップ３１２で平面検出部２３１に行わせる平面検出では、平面検出の対象とする空間を限定した平面検出を平面検出部２３１に行わせるようにしてもよい。すなわち、たとえば、走行可能路面算出処理のステップ３１２において、iが１であるときには検出用点群データの点群のうちの走行中の平面または走行可能路面の左側の空間中にある点群からのみの平面検出を平面検出部２３１に行わせ、iが２であるときには検出用点群データの点群のうちの走行中の平面または走行可能路面の右側の空間中にある点群からのみの平面検出を平面検出部２３１に行わせ、iが３であるときには検出用点群データの点群のうちの走行中の平面または走行可能路面の前側の空間中にある点群からのみの平面検出を平面検出部２３１に行わせるようにしてもよい。
または、たとえば、走行可能路面算出処理のステップ３１２では、検出用点群データの点群のうちの、走行中路面中の平面または走行中路面中の最寄りの平面の高さ（標高）との差の絶対値が所定値以下となる高さの範囲を持つ空間中にある点群からのみの平面検出を平面検出部２３１に行わせるようにしてもよい。
【００３３】
さて、このような走行可能路面算出処理による走行可能路面の算出例を図４、５に示す。
図４は、ｎが３であり、図４ａ１のように、パーソナルモビリティ１００の三次元測位センサ２１で三次元計測が行われる空間中に、パーソナルモビリティ１００が走行中の平面４０１、走行中の平面４０１に左方において隣接する、左下方に向けて緩やかに傾斜する平面４０２、走行中の平面４０１に右方において隣接する、右下方に向けて緩やかに傾斜する平面４０３、走行中の平面４０１に前方において隣接する、前上方に向けて緩やかに傾斜する平面４０４、平面４０１-４０４に対して段差のある地面４１０、走行中の平面４０１から起立する物体４１１が存在する場合についてのものである。なお、図中のメッシュは、平面４０１を包含する平面を表している。
【００３４】
この場合、まず、図４ａ１の点群データメモリ２２の全点群を対象とする平面検出が行われて、平面４０１が走行中の平面として検出され、図４ａ２に示す走行可能路面に追加される。
【００３５】
次に、図４ａ１の点群データメモリ２２の点群データの点群から、平面４０１の点群を除去した図４ｂ１の検出用検出用点群データが生成され、この検出用検出用点群データを対象として、平面検出が行われて走行中路面中の平面４０１に左方において隣接する平面４０２が走行中路面からパーソナルモビリティ１００が移動可能な平面として検出され、図４ｂ２に示すように走行可能路面に追加される。
【００３６】
そして、図４ｂ１の検出用検出用点群データの点群から、平面４０２の点群を除去した図４ｃ１の検出用検出用点群データが生成され、この検出用検出用点群データを対象として、平面検出が行われて走行中路面中の平面４０１に右方において隣接する平面４０３が走行中路面からパーソナルモビリティ１００が移動可能な平面として検出され、図４ｃ２に示すように走行可能路面に追加される。
【００３７】
次に、図４ｃ１の検出用検出用点群データの点群から、平面４０３の点群を除去した図４ｄ１の検出用検出用点群データが生成され、この検出用検出用点群データを対象として、平面検出が行われて走行中路面中の平面４０１に前方において隣接する平面４０４が走行中路面からパーソナルモビリティ１００が移動可能な平面として検出され、図４ｄ２に示すように走行可能路面に追加される。
そして、この時点で、i＝ｎとなるので、走行可能路面算出処理から、平面４０１、４０２、４０３、４０４よりなる走行可能路面が路面除去部２４と障害物検出部２５に通知される。
【００３８】
路面除去部２４は、図４ａ１点群データメモリの全点群のうちから、走行可能路面である平面４０１、４０２、４０３、４０４を構成する点を除去し、図４ｅに示すような地面４１０、物体４１１の点群を表す路面除去点群データを生成し、障害物検出部２５は、路面除去点群データの点群が示す物体と走行可能路面との位置関係や、走行可能路面の途切れ等より障害物を検出する処理を行い、地面４１０による段差や物体４１１を障害物として検出する。
【００３９】
次に、図５は、ｎが２であり、図５ａ１のように、パーソナルモビリティ１００の三次元測位センサ２１で三次元計測が行われる空間中に、パーソナルモビリティ１００が走行中の水平な平面５０１、走行中の平面５０１に左方において隣接する、左下方に向けて緩やかに傾斜する平面５０２、平面５０２の左方において隣接する水平な平面５０３が存在する場合についてのものである。
【００４０】
この場合、まず、図５ａ１の点群データメモリ２２の全点群を対象とする平面検出が行われて、平面５０１が走行中の平面として検出され、図５ａ２に示す走行可能路面に追加される。
【００４１】
次に、図５ａ１の点群データメモリ２２の点群データの点群から、平面５０１の点群を除去した図５ｂ１の検出用検出用点群データが生成され、この検出用検出用点群データを対象として、平面検出が行われて走行中路面中の平面５０１に左方において隣接する平面５０２が走行中路面からパーソナルモビリティ１００が移動可能な平面として検出され、図５ｂ２に示すように走行可能路面に追加される。
【００４２】
次に、図５ｂ１の検出用検出用点群データの点群から、平面５０２の点群を除去した図５ｃ１の検出用検出用点群データが生成され、この検出用検出用点群データを対象として、平面検出が行われて走行可能路面中の平面５０２に左方において隣接する平面５０３が走行中路面からパーソナルモビリティ１００が移動可能な平面として検出され、図５ｃ２に示すように走行可能路面に追加される。
そして、この時点で、i＝ｎとなるので、走行可能路面算出処理から、平面５０１、５０２、５０３よりなる走行可能路面が路面除去部２４と障害物検出部２５に通知される。
【００４３】
以上、本発明の実施形態について説明した。
このように本実施形態によれば、図４、５に例示したように、平面検出の対象とする点群を当該点群から検出した平面の点群を除去することにより更新しながら、平面検出を比較的少ない回数繰り返すだけで、効率良く、走行中の平面から走行可能につながる走行可能な平面も、走行可能路面として検出できることが期待できる。
【００４４】
さて、以上の実施形態において走行可能路面算出部２３２は、図３の走行可能路面算出処理に代えて、図６に示す走行可能路面算出処理を行うようにしてもよい。
すなわち、この図６に示す走行可能路面算出処理では、走行可能路面算出部２３２は、まず、全空間を検出対象空間として設定し、平面検出を平面検出部２３１に行わせる（ステップ６０２）。
【００４５】
ここで、平面検出部２３１は、設定された検出対象空間内の点群を対象として平面の検出を行う。また、検出対象空間は全空間がである場合、平面検出部２３１は、点群データメモリ２２の全ての点群を対象として平面検出を行う。
【００４６】
そして、次に、走行可能路面算出部２３２は、平面検出部２３１によって、平面として走行中の平面が検出されたかどうかを調べ（ステップ６０４）、走行中の平面が検出されていなければ走行可能路面算出を終了し、走行中の平面が検出されていれば、検出された平面を走行可能路面に追加する（ステップ６０６）。
【００４７】
そして、検出した平面を対象平面として設定し、引数Ｇ＝１を設定した隣接移動可能平面検出処理を起動し（ステップ６０８）、起動した隣接移動可能平面検出処理からの完了通知をまって（ステップ６１０）、走行可能路面を路面除去部２４と障害物検出部２５に通知し（ステップ６１２）、走行可能路面算出処理を終了する。
【００４８】
次に、上述の隣接移動可能平面検出処理について説明する。
図７に、この隣接移動可能平面検出処理の手順を示す。
図示するように、隣接移動可能平面検出処理では、左、右、前の各々を順次対象方向としながら（ステップ７０２、７１６-７２２）、左、右、前の各対象方向について以下のステップ７０４-７１４の処理を行う。
【００４９】
すなわち、まず、対象平面が対象方向側で走行中路面中の任意の平面に隣接しているかどうかを調べる（ステップ７０４）。すなわち、対象方向が左であれば、対象平面が左方で走行中路面中の任意の平面に隣接しているかどうかを調べる。
【００５０】
そして、対象平面が対象方向側で走行中路面中の平面に隣接していれば（ステップ７０４）、現在の対象方向についての処理を終了する。
一方、対象平面が対象方向側で走行中路面中の平面に隣接していなければ（ステップ７０４）、対象平面の対象方向側にある空間を検出対象空間とする平面検出を平面検出部２３１に行わせる（ステップ７０６）。すなわち、対象方向が左であれば、平面検出部２３１に、対象平面より左側の空間を検出対象空間とする、対象平面の左側の空間中の点群からの平面検出を行わせる。
【００５１】
そして、平面検出部２３１によって検出された平面が、走行可能路面からパーソナルモビリティ１００が移動可能な平面であるかどうかを調べる（ステップ７０８）。
ここで、ステップ７０８では、上述のように、平面検出部２３１によって検出された平面が、走行可能路面中の任意の平面に所定長以上の長さに渡って接する形態で隣接しており、かつ、検出された平面の勾配や隣接する走行可能路面中の平面との勾配の差が所定値以下である場合に、検出された平面が、走行可能路面からパーソナルモビリティ１００が移動可能な平面であると判定する。
【００５２】
そして、検出された平面が走行可能路面からパーソナルモビリティ１００が移動可能な平面でなければ（ステップ７０８）、現在の対象方向についての処理を終了する。
一方、検出された平面が走行可能路面からパーソナルモビリティ１００が移動可能な平面であれば（ステップ７０８）、検出された平面を走行可能路面に追加する（ステップ７１０）。
【００５３】
そして、自処理に設定された引数Ｇが予め設定した１以上の整数であるｎであるかどうかを調べ（ステップ７１２）、ｎであれば、現在の対象方向についての処理を終了する。
一方、引数Ｇがｎでなければ、ステップ７０６で検出した平面を対象平面として設定し、引数Ｇ＝Ｇ＋１を設定した他の隣接移動可能平面検出処理を起動し（ステップ７１４）、現在の対象方向についての処理を終了する。
【００５４】
そして、左、右、前の各対象方向について、以上のステップ７０４-７１４の処理が終了したならば、自処理において、他の隣接移動可能平面検出処理を一つも起動していないかどうかを調べ（ステップ７２４）、起動していない場合には、自処理の起動元の処理（走行可能路面算出処理または他の隣接移動可能平面検出処理）に完了通知を発行し（ステップ７２８）、処理を終了する。
【００５５】
一方、自処理において、他の隣接走行可能路面検出処理を起動している場合には（ステップ７２４）、自処理において起動した他の全ての隣接移動可能平面検出処理からの完了通知をまって（ステップ７２６）、自処理の起動元の処理に完了通知を発行し（ステップ７２８）、処理を終了する。
【００５６】
以上、隣接移動可能平面検出処理について説明した。
以下、このような図６の走行可能路面算出処理と図７の隣接移動可能平面検出処理による処理例を図８ａ、ｂに示す。
図８ａは、ｎ＝１であり、図４ａ１に示した場合と同様に、パーソナルモビリティ１００の三次元測位センサ２１で三次元計測が行われる空間中に、パーソナルモビリティ１００が走行中の平面４０１、走行中の平面４０１に左方において隣接する、左下方に向けて緩やかに傾斜する平面４０２、走行中の平面４０１に右方において隣接する、右下方に向けて緩やかに傾斜する平面４０３、走行中の平面４０１に前方において隣接する、前上方に向けて緩やかに傾斜する平面４０４、平面４０１-４０４に対して段差のある地面４１０、走行中の平面４０１から起立する物体４１１が存在する場合についてのものである。
【００５７】
この場合、まず、走行可能路面算出処理において、全空間が検出対象空間に設定され、点群データメモリ２２の全点群を対象とする平面検出が行われて、平面４０１が走行中の平面として検出され、走行可能路面に追加される。
【００５８】
そして、次に、平面４０１が対象平面として、１が引数Ｇとして設定された隣接移動可能平面検出処理が起動され、隣接移動可能平面検出処理において、平面４０１の左方の空間４２１を検出対象空間として検出対象空間４２１内の点よりなる点群を対象とする平面検出が行われて、平面４０２が走行可能路面からパーソナルモビリティ１００が移動可能な平面として検出され、走行可能路面に追加される。
【００５９】
また、同様に、平面４０１を対象平面とする隣接移動可能平面検出処理において、平面４０１の右方の空間４２２を検出対象空間として検出対象空間４２２内の点よりなる点群を対象とする平面検出が行われて、平面４０３が走行可能路面からパーソナルモビリティ１００が移動可能な平面として検出され、走行可能路面に追加される。
【００６０】
また、平面４０１を対象平面とする隣接移動可能平面検出処理において、平面４０１の前方の空間４２３を検出対象空間として検出対象空間４２３内の点よりなる点群を対象とする平面検出が行われて、平面４０４が走行可能路面からパーソナルモビリティ１００が移動可能な平面として検出され、走行可能路面に追加される。
そして、平面４０１を対象平面とする隣接移動可能平面検出処理の引数Ｇ＝ｎ＝１であるので、隣接移動可能平面検出処理から完了通知が走行可能路面算出処理に送られる。
【００６１】
また、この完了通知を受けた走行可能路面算出処理によって、平面４０１、４０２、４０３、４０４よりなる走行可能路面が路面除去部２４と障害物検出部２５に通知される。
なお、隣接移動可能平面検出処理において、検出対象空間に設定する空間４２１、４２２、４２３は、空間の高さ（標高）の範囲を、対象平面４０１の当該空間に近接する部分との高さの差の絶対値が所定値以下となる範囲とするなどして、その範囲をより制限するようにしてもよい。
【００６２】
次に、図８ｂは、ｎ＝２であり、図５ａ１に示した場合と同様に、パーソナルモビリティ１００の三次元測位センサ２１で三次元計測が行われる空間中に、パーソナルモビリティ１００が走行中の水平な平面５０１、走行中の平面５０１に左方において隣接する、左下方に向けて緩やかに傾斜する平面５０２、平面５０２の左方において隣接する水平な平面５０３が存在する場合についてのものである。
【００６３】
この場合、まず、走行可能路面算出処理において、全空間が検出対象空間に設定され、点群データメモリ２２の全点群を対象とする平面検出が行われて、平面５０１が走行中の平面として検出され、走行可能路面に追加される。
【００６４】
そして、次に、走行可能路面算出処理によって、平面５０１が対象平面として、１が引数Ｇとして設定された隣接移動可能平面検出処理が起動され、隣接移動可能平面検出処理において、平面５０１の左方の空間５１１を検出対象空間として検出対象空間５１１内の点よりなる点群を対象とする平面検出が行われて、平面５０２が走行可能路面からパーソナルモビリティ１００が移動可能な平面として検出され、走行可能路面に追加される。
【００６５】
また、平面５０１を対象平面とする隣接移動可能平面検出処理によって、平面５０２が対象平面として、２が引数Ｇとして設定された隣接移動可能平面検出処理が起動され、平面５０２を対象平面とする隣接移動可能平面検出処理において、平面５０２の左方の空間５１２を検出対象空間として検出対象空間５１２内の点よりなる点群を対象とする平面検出が行われて、平面５０３が走行可能路面からパーソナルモビリティ１００が移動可能な平面として検出され、走行可能路面に追加される。
【００６６】
そして、平面５０２を対象平面とする隣接移動可能平面検出処理の引数Ｇ＝ｎ＝２であるので、隣接移動可能平面検出処理から完了通知が、平面５０１を対象平面とする隣接移動可能平面検出処理に送られ、この完了通知を受けた平面５０１を対象平面とする隣接移動可能平面検出処理によって完了通知が、走行可能路面算出処理に送られる。
【００６７】
また、この完了通知を受けた走行可能路面算出処理によって、平面５０１、５０２、５０３よりなる走行可能路面が路面除去部２４と障害物検出部２５に通知される。
図８ａ、ｂに例示したように、図６の走行可能路面算出処理と図７の隣接移動可能平面検出処理によれば、平面検出の対象とする検出対象空間を検出して走行可能路面に含めた平面に応じて更新しながら、平面検出を比較的少ない回数繰り返すだけで、効率良く、走行中の平面から走行可能につながる走行可能な平面を、走行可能路面として検出するできる。
【００６８】
なお、以上の実施形態で示した走行可能な路面を検出する技術は、電動車いすやシニアカー等のパーソナルモビリティ１００以外の、自走式の台車や、自走もしくは歩行するロボット等の任意の移動体について同様に適用することができる。
【符号の説明】
【００６９】
１…自走システム、２…障害物検出システム、１１…ブレーキ装置、１２…走行用モータ、１３…操舵装置、１４…運転装置、１５…ナビゲーションシステム、１６…自走制御部、２１…三次元測位センサ、２２…点群データメモリ、２３…路面識別部、２４…路面除去部、２５…障害物検出部、１００…パーソナルモビリティ、２３１…平面検出部、２３２…走行可能路面算出部。
【図１】
2020197388.tif 000003
【図２】
2020197388.tif 000004
【図３】
2020197388.tif 000005
【図４】
2020197388.tif 000006
【図５】
2020197388.tif 000007
【図６】
2020197388.tif 000008
【図７】
2020197388.tif 000009
【図８】
2020197388.tif 000010