(57)【要約】【課題】空間上の走査範囲内をスキャンして対象物までの距離を測定する測距システムにおいて、スキャン時間をより短くし、消費電力量も低減することができるようにする。【解決手段】撮影画像を分析することにより、走査範囲内で測距の対象物が存在するオブジェクト領域を検出するオブジェクト領域検出部１２と、検出されたオブジェクト領域の間を結ぶ軌道に沿ってスキャンを行うようなスキャン計画を生成するスキャン計画生成部１３と、生成されたスキャン計画に従ってスキャンを実行することにより、オブジェクト領域内の対象物までの距離を測定する測距部１４とを備え、走査範囲内の全域を１ラインずつ順にスキャンしていく従来方式に比べて、走査範囲内にあるオブジェクト領域間を結ぶ軌道だけをスキャンすれば済むようにして、スキャンすべき軌道の長さを圧倒的に短くすることができるようにする。【選択図】図２
2019203757.tif 000002
【特許請求の範囲】
【請求項１】
空間上の走査範囲内をスキャンして、上記走査範囲内にある対象物までの距離を測定する測距システムであって、
上記空間上の走査範囲をカメラにより撮影することによって得られる撮影画像を取得する撮影画像取得部と、
上記撮影画像取得部により取得された上記撮影画像を分析することにより、上記空間上の走査範囲内で測距の対象物が存在するオブジェクト領域を検出するオブジェクト領域検出部と、
上記オブジェクト領域検出部により検出された上記オブジェクト領域の間を結ぶ軌道に沿って上記スキャンを行うようなスキャン計画を生成するスキャン計画生成部と、
上記スキャン計画生成部により生成された上記スキャン計画に従って上記スキャンを実行し、ビームの照射によって上記オブジェクト領域内の上記対象物までの距離を測定する測距部とを備えたことを特徴とするビームを用いた測距システム。
【請求項２】
上記測距部は、方位角および仰角の制御により上記ビームの照射方向を決定して上記スキャンを行うようになされ、
上記スキャン計画生成部は、上記走査範囲における仰角の一端値から上記スキャンを開始して、設定済みの軌道の終端である軌道終端部と、上記軌道が未通過のオブジェクト領域のうち上記仰角の一端値から最も近い仰角にあるオブジェクト領域である最近オブジェクト領域との間を結ぶ直線を上記軌道として設定するとともに、上記軌道終端部から上記最近オブジェクト領域までの間で上記軌道が通るオブジェクト領域を通過済みのオブジェクト領域として設定することを一行程処理として、当該一行程処理を繰り返すことにより、上記走査範囲内で上記方位角を変位させながら上記仰角が上記走査範囲の一端値から他端値へと一方向に沿って変移していくような軌道を設定することを特徴とする請求項１に記載のビームを用いた測距システム。
【請求項３】
上記スキャン計画生成部は、上記軌道終端部から上記最近オブジェクト領域までの仰角変移ピッチが所定値以上の場合は、上記走査範囲の全方位角の変位を介して上記軌道終端部と上記最近オブジェクト領域との間を結ぶ軌道を設定することを特徴とする請求項２に記載のビームを用いた測距システム。
【請求項４】
上記スキャン計画生成部は、上記オブジェクト領域検出部により検出された上記オブジェクト領域においてのみ上記ビームを照射するような上記スキャン計画を生成することを特徴とする請求項１〜３の何れか１項に記載のビームを用いた測距システム。
【請求項５】
上記測距部は、方位角および仰角の制御により上記ビームの照射方向を決定して上記スキャンを行うようになされ、上記方位角に関しては上記走査範囲を３６０度として、上記ビームの照射方向を一方向に回転させるようにして上記スキャンを行うことを特徴とする請求項１〜４の何れか１項に記載のビームを用いた測距システム。
【請求項６】
上記測距部は、方位角および仰角の制御により上記ビームの照射方向を決定して上記スキャンを行うようになされ、上記方位角に関しては上記走査範囲を３６０度未満として、上記ビームの照射方向を往復移動させるようにして上記スキャンを行うことを特徴とする請求項１〜４の何れか１項に記載のビームを用いた測距システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビームを用いた測距システムに関し、特に、空間上のあらかじめ設定された走査範囲内をスキャンして走査範囲内にある対象物までの距離を測定する測距システムに用いて好適なものである。
【背景技術】
【０００２】
従来、対象物までの距離を測定する技術として、カメラの撮影画像を用いた画像認識技術や、レーダ（電波）を用いたセンシング技術の他に、レーザ（光）を用いたセンシング技術が様々な産業分野で用いられている。特に最近では、測距性能が高い技術の１つとして、ＬｉＤＡＲ（Light Detection and RangingまたはLaser Imaging Detection and Ranging）が注目されている。
【０００３】
ＬｉＤＡＲは、パルス状に発光するレーザ照射に対する散乱光を測定することにより、遠距離にある対象物までの距離を分析するものである。すなわち、ＬｉＤＡＲは、あらかじめ設定された走査範囲の全体をスキャンしてパルス状のレーザを順次照射し、走査範囲内にある対象物から反射して戻ってくるパルスを検出することにより、照射パルスを出してからその反射パルスを受光するまでの時間遅延に照らして対象物までの距離を測定する（例えば、特許文献１，２参照）。
【０００４】
特許文献１には、放出光が水平軸の周りを往復するようにスキャン部を構成することが開示されている。すなわち、スキャン部は可動鏡を含み、ＬｉＤＡＲ装置の光源は、可動鏡に向けて光を放出する。ここで、可動鏡は、放出光を垂直面に沿って上下に移動させるように、水平軸であるピンの周りを往復して回転するように構成される。また、ＬｉＤＡＲ装置は、回転台上で垂直軸の周りを回転するように構成される。これにより、回転台による回転運動と、可動鏡の往復運動との組み合せにより、環境の視野を照明することが可能となる。
【０００５】
また、特許文献２には、レーダビーム（特許文献２の中では、電磁波、光、音波、もしくは超音波のような信号と定義されている）を用いて所定の空間内に物体が存在するか否かを観測するレーダ装置において、レーダビームの方向およびパワーからなるビーム形成計画を作成し、当該ビーム形成計画に沿って各時刻においてレーダビームのパワーおよび方向を指示することにより、定距離ビーム範囲（所定の距離に到達するレーダビームのパワー）を持つレーダビームを形成して空間に照射することが開示されている。
【０００６】
なお、ＬｉＤＡＲは、カメラやレーダを用いた測距技術と比べて測距性能の点では優れているが、走査範囲のスキャンに多くの時間がかかり、また、レーザ照射の電力消費が大きくなるという問題があった。特に、用途に応じて走査範囲を広くすればするほど、スキャンにかかる時間が長くなり、消費電力量も大きくなってしまうという問題があった。
【０００７】
上記特許文献２には、定距離ビーム範囲の種類を複数用い、空白部分がない状態での各レーダビームの定距離ビーム範囲の重複面積を小さくすることにより、所定の空間を走査する時間の短縮を図ることが開示されている。すなわち、特許文献２に記載のレーダ装置では、定距離ビーム範囲が所定の値以上という条件から算出されるビーム到達範囲の大きさについて２種類以上を混成してビーム形成計画を作成し、当該ビーム形成計画の各時刻において、複数種類の定距離ビーム範囲を持つレーダビームを形成する。これにより、１種類では総パワーの最小値が決まっていて所定の空間を走査する時間を短縮できないところ、短い時間で所定の空間を走査することができるようになる。
【０００８】
なお、特許文献３には、カメラを用いた測距技術の一適用例として、全方位カメラにより撮影される画像に基づいて移動体を特定し、当該移動体までの距離および方向を高速に検知して移動体に追従走行するロボットが開示されている。すなわち、特許文献３に記載のロボットは、移動体の画像を時系列に取得し、その複数画像間にて対応点の移動量を算出し、移動体の移動に合致する対応点群より移動体領域を抽出する。そして、抽出した移動体を追従対象として特定し、抽出した移動体領域から特定領域をさらに抽出して、特定領域位置より移動体までの距離と方向を検出する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特表２０１８−５１１０５６号公報
【特許文献２】特開２００１−２２１８５５号公報
【特許文献３】特開２００６−１４６５５１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上記特許文献２には、スキャン時間を短縮するための技術が開示されている。しかしながら、この特許文献２に開示されているレーダ装置は、あらかじめ設定された走査範囲の全域を空白部分がない状態でスキャンするものであり、定距離ビーム範囲の種類を複数用いて定距離ビーム範囲の重複面積を小さくしたとしても、それによって図られるスキャン時間の短縮は十分なものとは言えない。
【００１１】
本発明は、このような問題を解決するために成されたものであり、空間上のあらかじめ設定された走査範囲内をスキャンして、走査範囲内にある対象物までの距離を測定する測距システムにおいて、スキャン時間をより短くし、消費電力量も低減することができるようにすることを目的とする。
【課題を解決するための手段】
【００１２】
上記した課題を解決するために、本発明では、カメラによる撮影画像を分析することにより、空間上の走査範囲内で測距の対象物が存在するオブジェクト領域を検出し、検出されたオブジェクト領域の間を結ぶ軌道に沿ってスキャンを行うようなスキャン計画を生成する。そして、当該生成したスキャン計画に従ってスキャンを実行することにより、オブジェクト領域内の対象物までの距離を測定するようにしている。
【発明の効果】
【００１３】
上記のように構成した本発明によれば、走査範囲内の全域を１水平ラインまたは１垂直ラインずつ順にスキャンしていく従来方式に比べて、走査範囲内にあるオブジェクト領域間を結ぶ軌道だけをスキャンすればよいので、走査範囲内でスキャンすべき軌道の長さを圧倒的に短くすることができる。これにより、空間上のあらかじめ設定された走査範囲内をスキャンして、走査範囲内にある対象物までの距離を測定する測距システムにおいて、スキャン時間をより短くし、消費電力量も低減することができるようになる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態による測距システムが備えるＬｉＤＡＲのハードウェア構成例を示す図である。
【図２】本実施形態による測距システムが備えるコントローラの機能構成例を示す図である。
【図３Ａ】本実施形態によるスキャン計画生成部の動作例を示す図である。
【図３Ｂ】本実施形態によるスキャン計画生成部の動作例を示す図である。
【図３Ｃ】本実施形態によるスキャン計画生成部の動作例を示す図である。
【図３Ｄ】本実施形態によるスキャン計画生成部の動作例を示す図である。
【図３Ｅ】本実施形態によるスキャン計画生成部の動作例を示す図である。
【図３Ｆ】本実施形態によるスキャン計画生成部の動作例を示す図である。
【図３Ｇ】本実施形態によるスキャン計画生成部の動作例を示す図である。
【図３Ｈ】本実施形態によるスキャン計画生成部の動作例を示す図である。
【図３Ｉ】本実施形態によるスキャン計画生成部の動作例を示す図である。
【図３Ｊ】本実施形態によるスキャン計画生成部の動作例を示す図である。
【図３Ｋ】本実施形態によるスキャン計画生成部の動作例を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明の一実施形態を図面に基づいて説明する。本実施形態によるビームを用いた測距システム（以下、単に測距システムという）は、対象物までの距離を測定する技術の１つとして、レーザ（光）を用いたセンシング技術を用いるものである。レーザを用いたセンシング技術の具体例として、ＬｉＤＡＲ（レーザースキャナ）を用いる。すなわち、本実施形態の測距システムでは、ＬｉＤＡＲによって空間上の走査範囲内をスキャンして、当該走査範囲内にある対象物までの距離を測定する。
【００１６】
また、本実施形態の測距システムは、カメラの撮影画像を用いた画像認識技術を組み合わせて使用する。つまり、本実施形態の測距システムは、ＬｉＤＡＲおよびカメラという複数のセンサから得られる情報を融合して対象物までの距離（奥行あるいは深度）を測定するセンサフュージョンと呼ばれる技術を応用したものである。具体的には、カメラによる撮影画像を分析することにより、走査範囲内で測距の対象物が存在するオブジェクト領域を検出し、検出されたオブジェクト領域の間を結ぶ軌道に沿ってスキャンを行うようなスキャン計画を生成する。そして、当該生成したスキャン計画に従ってスキャンを実行することにより、オブジェクト領域内の対象物までの距離を測定する。
【００１７】
ＬｉＤＡＲの走査範囲については、本実施形態では一例として、水平３６０度および垂直１８０度（上方９０度および下方９０度）の空間を走査範囲とする。図１は、このような走査範囲をスキャンするＬｉＤＡＲのハードウェア構成例を示す図である。図１に示すように、ＬｉＤＡＲは回転台１０１を備え、モータ１０２により回転台１０１を水平方向に３６０度回転可能に構成されている。回転台１０１には、レーザ発光部１０３、レーザ受光部１０４、可動ミラー１０５およびモータ１０６が搭載されている。
【００１８】
レーザ発光部１０３は、パルス状のレーザを所定の周期で順次発光する。レーザ発光部１０３により発光されたレーザは、可動ミラー１０５で反射し、走査範囲の一部を照射する。その照射範囲内に対象物が存在すると、レーザは対象物で反射し、可動ミラー１０５を介して戻ってくる。レーザ受光部１０４は、対象物で反射したレーザを可動ミラー１０５を介して受光する。そして、図示しない演算装置（回転台１０１に搭載していてもよいし、他の場所に搭載していてもよい）が、照射パルスを出してからその反射パルスを受光するまでの時間遅延に照らして対象物までの距離を測定する。
【００１９】
可動ミラー１０５は、モータ１０６によって上方に９０度、下方に９０度回転する。このように、本実施形態のＬｉＤＡＲは、回転台１０１によって水平方向に方位角を３６０度、可動ミラー１０５によって垂直方向に仰角を１８０度、レーザの照射方向を回転して制御することができるようになっている。本実施形態では、省電力性と制御のしやすさの観点から、回転台１０１を一方向にのみ定速で回転させながら、可動ミラー１０５も一方向にのみ回転させることにより、水平方向３６０度および垂直方向１８０度（上方９０度および下方９０度）の走査範囲をスキャンする。可動ミラー１０５は、最下方（−９０度とする）から最上方（＋９０度とする）に向かって回転させる。
【００２０】
また、以上のようなＬｉＤＡＲの走査範囲に対応して、カメラは全天球カメラを用いる。全天球カメラは、一度の撮影で３６０度のパノラマ画像を作成できる公知のカメラである。ＬｉＤＡＲの走査範囲と全天球カメラの撮影範囲とのズレをできるだけ小さくするために、全天球カメラはＬｉＤＡＲの近傍位置に設置するのが好ましい。
【００２１】
図２は、本実施形態の測距システムが備えるコントローラ（ハードウェアとしては図示せず）の機能構成例を示すブロック図である。図２に示すように、本実施形態の測距システムが備えるコントローラ１００は、その機能構成として、撮影画像取得部１１、オブジェクト領域検出部１２、スキャン計画生成部１３および測距部１４を備えている。
【００２２】
上記各機能ブロック１１〜１４は、ハードウェア、ＤＳＰ（Digital Signal Processor）、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック１１〜１４は、実際にはコンピュータのＣＰＵ、ＲＡＭ、ＲＯＭなどを備えて構成され、ＲＡＭやＲＯＭ、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。
【００２３】
撮影画像取得部１１は、ＬｉＤＡＲによる空間上の走査範囲を全天球カメラにより撮影することによって得られる撮影画像を取得する。撮影画像取得部１１は、例えば、所定の周期で撮影画像を順次取得する。なお、撮影画像取得部１１が撮影画像を取得する周期は、ＬｉＤＡＲのレーザ発光部１０３が照射パルスを発光する周期よりも長くてよい。
【００２４】
オブジェクト領域検出部１２は、撮影画像取得部１１により取得された撮影画像を分析することにより、ＬｉＤＡＲによる空間上の走査範囲内（≒全天球カメラの撮影範囲内）で測距の対象物が存在するオブジェクト領域を検出する。オブジェクト領域の検出は、公知の画像認識技術や人工知能技術を用いて行うことが可能である。
【００２５】
なお、測距の対象とする対象物は、例えば、撮影画像内に含まれている立体物の全てとすることが可能である。あるいは、撮影画像内に含まれている立体物のうち、移動している移動体のみを測距の対象物としてもよい。あるいは、パターン認識技術等を組み合わせることにより、特定の形状をした立体物のみを測距の対象物としてもよい。あるいは、全撮影範囲のうち所定の一部領域に含まれる立体物のみを測距の対象物としてもよい。
【００２６】
何を測距の対象物とするかについては、用途に応じてあらかじめ決めておけばよい。例えば、可動型ロボットに本実施形態の測距システムを搭載し、周囲にある障害物を回避しながら移動する用途の場合は、撮影画像内に含まれている立体物の全てを測距の対象物とする。また、可動型ロボットに本実施形態の測距システムを搭載し、周囲にある移動体に追従して移動する用途の場合は、撮影画像の所定領域内に含まれている移動体のみを測距の対象物としてもよい。
【００２７】
また、本実施形態のオブジェクト領域検出部１２が検出するオブジェクト領域は、例えば、画像認識技術により検出された対象物の形状（輪郭）を境界とする領域とする。あるいは、画像認識技術により検出された対象物の形状を内接する矩形領域をオブジェクト領域とするようにしてもよい。あるいは、奥行方向に重なり合う複数の立体物や、互いに近接する位置に存在する複数の立体物などをグルーピングして、グルーピングした領域またはそれを内接する矩形領域をオブジェクト領域とするようにしてもよい。
【００２８】
スキャン計画生成部１３は、オブジェクト領域検出部１２により検出されたオブジェクト領域の間を結ぶ軌道に沿ってＬｉＤＡＲのスキャンを行うようなスキャン計画を生成する。具体的には、スキャン計画生成部１３は、走査範囲における仰角の一端値からスキャンを開始して、以下に述べる「一行程処理」を繰り返すことにより、走査範囲内でレーザ照射方向の方位角を変位させながら仰角が走査範囲の一端値から他端値へと一方向に沿って変移していくような軌道をスキャン計画として設定する。
【００２９】
上述したように、可動ミラー１０５を最下方（−９０度）から最上方（＋９０度）に向かって回転させる場合、走査範囲における仰角の一端値は−９０度であり、他端値は＋９０度である。なお、仰角を一方向に沿って変移させていけばよく、上記とは逆に、走査範囲における仰角の一端値を＋９０度、他端値を−９０度として、可動ミラー１０５を最上方から最下方に向かって回転させるようにしてもよい。
【００３０】
上述の一行程処理は、以下のような処理である。すなわち、スキャン計画生成部１３は、それまでの一行程処理によって設定済みの軌道の終端（以下、軌道終端部という）と、軌道が未通過のオブジェクト領域のうち仰角の一端値（−９０度）から最も近い仰角にあるオブジェクト領域（以下、最近オブジェクト領域という）との間を結ぶ直線を新たな軌道として設定する。仰角の一端値（−９０度）から最も近い仰角にあるオブジェクト領域とは、撮影画像の中で最も下方に位置するオブジェクト領域を意味する。スキャン計画生成部１３は、上記のように新たな軌道を設定する際に、軌道終端部から最近オブジェクト領域までの間で軌道が通るオブジェクト領域を通過済みのオブジェクト領域として設定する。以上の処理が一行程処理である。
【００３１】
なお、オブジェクト領域の位置は、当該オブジェクト領域から算出される代表点の位置とする。代表点は任意に設定することが可能である。例えば、オブジェクト領域の重心点を代表点とすることが可能である。あるいは、オブジェクト領域の中でレーザ照射の仰角が最も大きくなる点（撮影画像内においてオブジェクト領域の最も上に位置する点）を代表点としてもよいし、オブジェクト領域の中でレーザ照射の仰角が最も小さくなる点（撮影画像内においてオブジェクト領域の最も下に位置する点）を代表点としてもよい。
【００３２】
スキャン計画生成部１３は、上記のように軌道を設定する際に、軌道終端部から最近オブジェクト領域までの仰角変移ピッチが所定値以上の場合は、走査範囲の全方位角の変位を介して軌道終端部と最近オブジェクト領域との間を結ぶ軌道を設定するのが好ましい。仰角変移ピッチとは、方位角の単位変化量当たりの仰角の変化量を意味する。すなわち、仰角変移ピッチが所定値以上の場合とは、仰角を急激に大きくする場合、つまり可動ミラー１０５の回転速度を所定速度以上にして急速に回転させる場合に相当する。また、走査範囲の全方位角の変位を介して軌道を設定するとは、本例の場合は全方位角が３６０度であるから、回転台１０１を１周させることを介して軌道を設定することを意味する。
【００３３】
可動ミラー１０５の回転速度を上げて仰角を急激に大きく変化させると、モータ１０６の負荷が大きくなる。本実施形態では、これを回避するために、軌道終端部から最近オブジェクト領域までの仰角変移ピッチが所定値以上となるか否かを判定し、所定値以上となる場合は、軌道終端部から回転台１０１を１周させた後に最近オブジェクト領域に至るような軌道を設定する。このようにすることにより、仰角の急激な上昇を回避してモータ１０６の負荷を低減することができる。また、１周している間に軌道が他のオブジェクト領域を通過する可能性もあるので、通過済みのオブジェクト領域を増やすことができるというメリットも有する。
【００３４】
図３Ａ〜図３Ｋは、スキャン計画生成部１３の動作例を示す図である。図３Ａ〜図３Ｋは、ＬｉＤＡＲの走査範囲（≒全天球カメラの撮影範囲）を示したものである。ここでは説明の便宜上、ＬｉＤＡＲの走査範囲を２次元の座標軸で示している。横軸は方位角であり、左端が０度、右端が３６０度（２π）となっている。図１に示した通り、回転台１０１は一方向に回転するので、左端の０度と右端の３６０度とは同じ水平位置を示している。また、縦軸は仰角であり、下端が−４５度（−π／４）、上端が＋４５度（＋π／４）となっている。
【００３５】
また、図３Ａ〜図３Ｋでは、ＬｉＤＡＲの走査範囲（≒全天球カメラの撮影範囲）から２２個のオブジェクト領域ＯＢＴ１〜ＯＢＴ２２が検出された例を示している。ここでは説明の簡便のため、各オブジェクト領域ＯＢＴ１〜ＯＢＴ２２を単純化して矩形領域で示している。また、図３Ａ〜図３Ｋに示す例では、軌道を設定するオブジェクト領域上の代表点として、当該オブジェクト領域から算出される重心点を用いている。
【００３６】
図３Ａ〜図３Ｊのそれぞれは、一行程処理の内容を示している。すなわち、ここに示す例では、図３Ａ〜図３Ｊのように一行程処理を１０回繰り返すことにより、全てのオブジェクト領域ＯＢＴ１〜ＯＢＴ２２をスキャンするような軌道を設定している。また、図３Ｋは、図３Ａ〜図３Ｊに示す１０回の一行程処理によって生成された一連の軌道を全体として示したものである。
【００３７】
まず、図３Ａに示すように、スキャン計画生成部１３は、走査範囲における仰角の下端値（−π／４）および方位角の基準値（０度）の開始点からスキャンを開始して、軌道が未通過のオブジェクト領域のうち仰角の最小値（−π／４）から最も近い仰角にあるオブジェクト領域ＯＢＴ１を最近オブジェクト領域として抽出し、軌道終端部と当該最近オブジェクト領域ＯＢＴ１の重心点とを結ぶ直線を最初の軌道として設定する。なお、図３Ａのように軌道の設定を開始する時点で、既に設定済みの軌道は存在しないので、軌道終端部は存在しない。よって、開始点を軌道終端部として、当該開始点と最近オブジェクト領域ＯＢＴ１の重心点とを結ぶ直線を最初の軌道として設定する。
【００３８】
次に、図３Ｂに示すように、スキャン計画生成部１３は、それまでの一行程処理によって設定済みの軌道の軌道終端部（図３Ｂの場合は、オブジェクト領域ＯＢＴ１の重心点）と、軌道が未通過のオブジェクト領域のうち仰角の最小値から最も近い仰角にある最近オブジェクト領域ＯＢＴ５との間を結ぶ直線を新たな軌道として設定する。
【００３９】
すなわち、図３Ａに示す一行程処理が終わった時点で、軌道が未通過のオブジェクト領域はオブジェクト領域ＯＢＴ２〜ＯＢＴ２２である。この中で、仰角が最も小さくなる位置にあるのはオブジェクト領域ＯＢＴ５であるから、スキャン計画生成部１３はこれを最近オブジェクト領域として抽出する。そして、スキャン計画生成部１３は、設定済みの軌道の軌道終端部（オブジェクト領域ＯＢＴ１の重心点）と、抽出した最近オブジェクト領域ＯＢＴ５の重心点との間を結ぶ直線を新たな軌道として設定する。ここで、回転台１０１の回転方向は一方向のみであり、逆回転はしないことから、方位角が大きくなる方向にのみ軌道を設定する。
【００４０】
また、スキャン計画生成部１３は、上記のように新たな軌道を設定する際に、軌道終端部から最近オブジェクト領域ＯＢＴ５までの間で軌道が通るオブジェクト領域ＯＢＴ２〜ＯＢＴ４を通過済みのオブジェクト領域として設定する。図３Ｂでは、通過済みのオブジェクト領域を点線の矩形領域として示している（以下の図３Ｃ〜図３Ｊも同様）。以上により、図３Ｂに示す２回目の一行程処理が終了する。
【００４１】
次に、スキャン計画生成部１３は、図３Ｃに示す３回目の一行程処理を実行する。図３Ｂに示す２回目の一行程処理が終わった時点で、軌道が未通過のオブジェクト領域はオブジェクト領域ＯＢＴ６〜ＯＢＴ２２である。この中で、仰角が最も小さくなる位置にあるのはオブジェクト領域ＯＢＴ７であるから、スキャン計画生成部１３はこれを最近オブジェクト領域として抽出する。そして、スキャン計画生成部１３は、設定済みの軌道の軌道終端部（オブジェクト領域ＯＢＴ５の重心点）と、抽出した最近オブジェクト領域ＯＢＴ７の重心点との間を結ぶ直線を新たな軌道として設定する。
【００４２】
ここで、軌道終端部と最近オブジェクト領域ＯＢＴ７との方位角の差がそれほど大きくないのに対し、仰角の差が大きくなっているため、軌道終端部から最近オブジェクト領域ＯＢＴ７までの仰角変移ピッチが所定値以上となる。よって、この場合にスキャン計画生成部１３は、オブジェクト領域ＯＢＴ５から回転台１０１を１周させた後に最近オブジェクト領域ＯＢＴ７に至るような軌道を設定する。
【００４３】
また、スキャン計画生成部１３は、上記のように新たな軌道を設定する際に、軌道終端部から最近オブジェクト領域ＯＢＴ７までの間で軌道が通るオブジェクト領域ＯＢＴ６を通過済みのオブジェクト領域として設定する。なお、この軌道はオブジェクト領域ＯＢＴ２〜ＯＢＴ４も通過するが、これらは既に２回目の一行程処理の際に通過済みのオブジェクト領域として設定されているので、改めて通過済みのオブジェクト領域として設定する必要はない。
【００４４】
次に、スキャン計画生成部１３は、図３Ｄに示す４回目の一行程処理を実行する。図３Ｃに示す３回目の一行程処理が終わった時点で、軌道が未通過のオブジェクト領域はオブジェクト領域ＯＢＴ８〜ＯＢＴ２２である。この中で、仰角が最も小さくなる位置にあるのはオブジェクト領域ＯＢＴ８であるから、スキャン計画生成部１３はこれを最近オブジェクト領域として抽出する。そして、スキャン計画生成部１３は、設定済みの軌道の軌道終端部（オブジェクト領域ＯＢＴ７の重心点）と、抽出した最近オブジェクト領域ＯＢＴ８の重心点との間を結ぶ直線を新たな軌道として設定する。
【００４５】
なお、このように新たな軌道を設定する際に、軌道終端部から最近オブジェクト領域ＯＢＴ８までの間で軌道が通る他のオブジェクト領域は存在しない。よって、スキャン計画生成部１３は、この段階で新たに通過済みのオブジェクト領域として設定する処理は実行しない。
【００４６】
次に、スキャン計画生成部１３は、図３Ｅに示す５回目の一行程処理を実行する。図３Ｄに示す４回目の一行程処理が終わった時点で、軌道が未通過のオブジェクト領域はオブジェクト領域ＯＢＴ９〜ＯＢＴ２２である。この中で、仰角が最も小さくなる位置にあるのはオブジェクト領域ＯＢＴ１０であるから、スキャン計画生成部１３はこれを最近オブジェクト領域として抽出する。そして、スキャン計画生成部１３は、設定済みの軌道の軌道終端部（オブジェクト領域ＯＢＴ８の重心点）と、抽出した最近オブジェクト領域ＯＢＴ１０の重心点との間を結ぶ直線を新たな軌道として設定する。
【００４７】
また、スキャン計画生成部１３は、上記のように新たな軌道を設定する際に、軌道終端部から最近オブジェクト領域ＯＢＴ１０までの間で軌道が通るオブジェクト領域ＯＢＴ９を通過済みのオブジェクト領域として設定する。なお、この軌道はオブジェクト領域ＯＢＴ６，ＯＢＴ３も通過するが、これらは既に通過済みのオブジェクト領域として設定されているので、改めて通過済みのオブジェクト領域として設定する必要はない。
【００４８】
次に、スキャン計画生成部１３は、図３Ｆに示す６回目の一行程処理を実行する。図３Ｅに示す５回目の一行程処理が終わった時点で、軌道が未通過のオブジェクト領域はオブジェクト領域ＯＢＴ１１〜ＯＢＴ２２である。この中で、仰角が最も小さくなる位置にあるのはオブジェクト領域ＯＢＴ１４であるから、スキャン計画生成部１３はこれを最近オブジェクト領域として抽出する。そして、スキャン計画生成部１３は、設定済みの軌道の軌道終端部（オブジェクト領域ＯＢＴ１０の重心点）と、抽出した最近オブジェクト領域ＯＢＴ１４の重心点との間を結ぶ直線を新たな軌道として設定する。
【００４９】
また、スキャン計画生成部１３は、上記のように新たな軌道を設定する際に、軌道終端部から最近オブジェクト領域ＯＢＴ１４までの間で軌道が通るオブジェクト領域ＯＢＴ１１〜ＯＢＴ１３を通過済みのオブジェクト領域として設定する。なお、この軌道はオブジェクト領域ＯＢＴ９も通過するが、これは既に通過済みのオブジェクト領域として設定されているので、改めて通過済みのオブジェクト領域として設定する必要はない。
【００５０】
次に、スキャン計画生成部１３は、図３Ｇに示す７回目の一行程処理を実行する。図３Ｆに示す６回目の一行程処理が終わった時点で、軌道が未通過のオブジェクト領域はオブジェクト領域ＯＢＴ１５〜ＯＢＴ２２である。この中で、仰角が最も小さくなる位置にあるのはオブジェクト領域ＯＢＴ１６であるから、スキャン計画生成部１３はこれを最近オブジェクト領域として抽出する。そして、スキャン計画生成部１３は、設定済みの軌道の軌道終端部（オブジェクト領域ＯＢＴ１４の重心点）と、抽出した最近オブジェクト領域ＯＢＴ１６の重心点との間を結ぶ直線を新たな軌道として設定する。
【００５１】
また、スキャン計画生成部１３は、上記のように新たな軌道を設定する際に、軌道終端部から最近オブジェクト領域ＯＢＴ１６までの間で軌道が通るオブジェクト領域ＯＢＴ１５を通過済みのオブジェクト領域として設定する。なお、この軌道はオブジェクト領域ＯＢＴ１１〜ＯＢＴ１３，ＯＢＴ９も通過するが、これらは既に通過済みのオブジェクト領域として設定されているので、改めて通過済みのオブジェクト領域として設定する必要はない。
【００５２】
次に、スキャン計画生成部１３は、図３Ｈに示す８回目の一行程処理を実行する。図３Ｇに示す７回目の一行程処理が終わった時点で、軌道が未通過のオブジェクト領域はオブジェクト領域ＯＢＴ１７〜ＯＢＴ２２である。この中で、仰角が最も小さくなる位置にあるのはオブジェクト領域ＯＢＴ１８であるから、スキャン計画生成部１３はこれを最近オブジェクト領域として抽出する。そして、スキャン計画生成部１３は、設定済みの軌道の軌道終端部（オブジェクト領域ＯＢＴ１６の重心点）と、抽出した最近オブジェクト領域ＯＢＴ１８の重心点との間を結ぶ直線を新たな軌道として設定する。
【００５３】
また、スキャン計画生成部１３は、上記のように新たな軌道を設定する際に、軌道終端部から最近オブジェクト領域ＯＢＴ１８までの間で軌道が通るオブジェクト領域ＯＢＴ１７を通過済みのオブジェクト領域として設定する。
【００５４】
次に、スキャン計画生成部１３は、図３Ｉに示す９回目の一行程処理を実行する。図３Ｈに示す８回目の一行程処理が終わった時点で、軌道が未通過のオブジェクト領域はオブジェクト領域ＯＢＴ１９〜ＯＢＴ２２である。この中で、仰角が最も小さくなる位置にあるのはオブジェクト領域ＯＢＴ２０であるから、スキャン計画生成部１３はこれを最近オブジェクト領域として抽出する。そして、スキャン計画生成部１３は、設定済みの軌道の軌道終端部（オブジェクト領域ＯＢＴ１８の重心点）と、抽出した最近オブジェクト領域ＯＢＴ２０の重心点との間を結ぶ直線を新たな軌道として設定する。
【００５５】
また、スキャン計画生成部１３は、上記のように新たな軌道を設定する際に、軌道終端部から最近オブジェクト領域ＯＢＴ２０までの間で軌道が通るオブジェクト領域ＯＢＴ１９を通過済みのオブジェクト領域として設定する。なお、この軌道はオブジェクト領域ＯＢＴ１１も通過するが、これは既に通過済みのオブジェクト領域として設定されているので、改めて通過済みのオブジェクト領域として設定する必要はない。
【００５６】
最後に、スキャン計画生成部１３は、図３Ｊに示す１０回目の一行程処理を実行する。図３Ｉに示す９回目の一行程処理が終わった時点で、軌道が未通過のオブジェクト領域はオブジェクト領域ＯＢＴ２１〜ＯＢＴ２２である。この中で、仰角が最も小さくなる位置にあるのはオブジェクト領域ＯＢＴ２２であるから、スキャン計画生成部１３はこれを最近オブジェクト領域として抽出する。そして、スキャン計画生成部１３は、設定済みの軌道の軌道終端部（オブジェクト領域ＯＢＴ２０の重心点）と、抽出した最近オブジェクト領域ＯＢＴ２２の重心点との間を結ぶ直線を新たな軌道として設定する。
【００５７】
また、スキャン計画生成部１３は、上記のように新たな軌道を設定する際に、軌道終端部から最近オブジェクト領域ＯＢＴ２２までの間で軌道が通るオブジェクト領域ＯＢＴ２１を通過済みのオブジェクト領域として設定する。
【００５８】
スキャン計画生成部１３は、以上のような１０回の一行程処理により、図３Ｋに示すような一連の軌道を生成する。この例では、回転台１０１を一方向に６周させるだけで、かつ、可動ミラー１０５を一方向に１回回転させるだけで、全てのオブジェクト領域ＯＢＴ１〜ＯＢＴ２２を少なくとも１回は通過する軌道に沿ってＬｉＤＡＲのスキャンを行うようなスキャン計画を生成することができる。
【００５９】
測距部１４は、スキャン計画生成部１３により生成されたスキャン計画に従ってＬｉＤＡＲのスキャンを実行し、オブジェクト領域内の対象物までの距離を測定する。すなわち、測距部１４は、回転台１０１の回転による方位角の制御と、可動ミラー１０５の回転による仰角の制御とにより、レーザビームの照射方向を決定してスキャンを実行することにより、オブジェクト領域内の対象物までの距離を測定する。
【００６０】
ここで、測距部１４は、個々のオブジェクト領域内の全域をスキャンするのではなく、オブジェクト領域内を通る軌道上の点をスキャンするのみである。すなわち、オブジェクト領域内の対象物が複雑な立体形状をしている場合において、その立体形状の各点までの距離を精緻に測距するものではないが、少なくとも対象物が存在する位置までの距離は測定することが可能である。例えば、走行型ロボットが障害物を避けながら移動する用途や、周囲の移動体に追従して走行する用途などの場合には、軌道上の点のスキャンのみで十分である。
【００６１】
以上詳しく説明したように、本実施形態では、カメラによる撮影画像を分析することにより、空間上の走査範囲内で測距の対象物が存在するオブジェクト領域を検出し、検出されたオブジェクト領域の間を結ぶ軌道に沿ってスキャンを行うようなスキャン計画を生成する。そして、当該生成したスキャン計画に従ってスキャンを実行することにより、オブジェクト領域内の対象物までの距離を測定するようにしている。
【００６２】
このように構成した本実施形態によれば、走査範囲内の全域を１水平ラインまたは１垂直ラインずつ順にスキャンしていく従来方式に比べて、走査範囲内にあるオブジェクト領域間を結ぶ軌道だけをスキャンすればよいので、走査範囲内でスキャンすべき軌道の長さを圧倒的に短くすることができる。これにより、空間上のあらかじめ設定された走査範囲内をスキャンして、走査範囲内にある対象物までの距離を測定する測距システムにおいて、スキャン時間をより短くし、消費電力量も低減することができるようになる。
【００６３】
また、本実施形態では、図３Ａ〜図３Ｋに示した手法により、各オブジェクト領域ＯＢＴ１〜ＯＢＴ２２を少なくとも１回通ればよいという前提でスキャン計画を生成しているので、回転台１０１を一方向にのみ回転させ、かつ、可動ミラー１０５も一方向にのみ回転させるだけで、全てのオブジェクト領域ＯＢＴ１〜ＯＢＴ２２を通過する軌道に沿って効率的にスキャンを行うようなスキャン計画を生成することができる。
【００６４】
なお、上記実施形態では、走査範囲内にあるオブジェクト領域間を結ぶ軌道の設定によりスキャン計画を生成する例について説明したが、本発明はこれに限定されない。例えば、スキャン計画生成部１３は、上述した軌道の設定に加えて、オブジェクト領域検出部１２により検出されたオブジェクト領域においてのみビームを照射するようなスキャン計画を生成するようにしてもよい。すなわち、図３Ｋのような軌道を設定する場合、オブジェクト領域ＯＢＴ１〜ＯＢＴ２２を軌道が通過しているときにのみレーザ発光部１０３からレーザを発光し、それ以外の場所ではレーザの発光を停止するようなスキャン計画を生成する。このようにすれば、消費電力量をより低減することができる。
【００６５】
また、上記実施形態では、方位角に関して走査範囲を３６０度として、ビームの照射方向を一方向に回転させるようにしてスキャンを行う例について説明したが、本発明はこれに限定されない。すなわち、方位角に関して走査範囲を３６０度未満（例えば、１８０度）として、ビームの照射方向を往復移動させるようにしてスキャンを行うようにしてもよい。この場合、スキャン計画生成部１３は、例えば方位角が０度の位置を開始点として、方位角を−９０度まで変移させた後に０度に戻し、更に方位角を＋９０度まで変移させた後に０度に戻すまでを一行程処理として、スキャン計画を生成する。なお、これとは逆に、最初に＋９０度まで変移させた後、−９０度まで変移させるようにしてもよい。また、方位角が−９０度の位置または＋９０度の位置を開始点とするようにしてもよい。
【００６６】
また、上記実施形態では、対象物までの距離を測定する技術の１つとして、レーザ（光）を用いたセンシング技術を用いる例について説明したが、レーダ（電波）を用いたセンシング技術を用いる場合にも同様に、本実施形態を適用してスキャン計画を生成するようにすることが可能である。
【００６７】
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００６８】
１１  撮影画像取得部
１２  オブジェクト領域検出部
１３  スキャン計画生成部
１４  測距部
【図１】
2019203757.tif 000003
【図２】
2019203757.tif 000004
【図３Ａ】
2019203757.tif 000005
【図３Ｂ】
2019203757.tif 000006
【図３Ｃ】
2019203757.tif 000007
【図３Ｄ】
2019203757.tif 000008
【図３Ｅ】
2019203757.tif 000009
【図３Ｆ】
2019203757.tif 000010
【図３Ｇ】
2019203757.tif 000011
【図３Ｈ】
2019203757.tif 000012
【図３Ｉ】
2019203757.tif 000013
【図３Ｊ】
2019203757.tif 000014
【図３Ｋ】
2019203757.tif 000015