JP2023122597A - 情報処理装置、情報処理方法及びプログラム - Google Patents
情報処理装置、情報処理方法及びプログラム Download PDFInfo
- Publication number
- JP2023122597A JP2023122597A JP2020127444A JP2020127444A JP2023122597A JP 2023122597 A JP2023122597 A JP 2023122597A JP 2020127444 A JP2020127444 A JP 2020127444A JP 2020127444 A JP2020127444 A JP 2020127444A JP 2023122597 A JP2023122597 A JP 2023122597A
- Authority
- JP
- Japan
- Prior art keywords
- map
- distance
- processor
- information processing
- point cloud
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000010365 information processing Effects 0.000 title claims description 85
- 238000003672 processing method Methods 0.000 title claims description 6
- 238000005259 measurement Methods 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims description 51
- 238000000034 method Methods 0.000 claims description 43
- 230000008569 process Effects 0.000 claims description 25
- 238000001914 filtration Methods 0.000 claims description 13
- 238000004891 communication Methods 0.000 description 50
- 238000001514 detection method Methods 0.000 description 42
- 238000010586 diagram Methods 0.000 description 33
- 238000003384 imaging method Methods 0.000 description 27
- 238000012937 correction Methods 0.000 description 24
- 230000002194 synthesizing effect Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 230000033001 locomotion Effects 0.000 description 10
- 230000009466 transformation Effects 0.000 description 10
- 230000015572 biosynthetic process Effects 0.000 description 8
- 238000003786 synthesis reaction Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 239000000284 extract Substances 0.000 description 7
- 238000012217 deletion Methods 0.000 description 6
- 230000037430 deletion Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000000844 transformation Methods 0.000 description 5
- 230000007423 decrease Effects 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 238000009434 installation Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 2
- 240000004050 Pentaglottis sempervirens Species 0.000 description 2
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 230000010267 cellular communication Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000002485 combustion reaction Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011049 filling Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000000611 regression analysis Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
Abstract
【課題】自己位置測定の誤差を低減する。【解決手段】情報処理装置は、プロセッサを備える。前記プロセッサは、移動装置に搭載された測距センサから得られる点群データと、前記点群データの示す測距対象までの距離又は方向の少なくともいずれか1以上の条件と、に基づいて、それぞれ異なる前記点群データを用いた少なくとも2以上の地図を生成する。【選択図】図1
Description
本開示は、情報処理装置、情報処理方法及びプログラムに関する。
今日、自律して移動する移動体に関する開発が活発に行われている。このような移動体は、自律移動するためには、周囲の状況を取得する必要があり、この状況の取得の一環として、自己位置推定が重要な技術となっている。自己位置推定は、SLAM(Simultaneous Localization and Mapping)により事前に作成された地図を元にマッチングにより実行されたり、さらには、SLAMによる地図作成と並行して実行されたりする。これらの技術は、いずれもセンサにより取得した周辺環境を、過去に取得した周辺環境と比較することにより、自己位置が算出される。
センサが意図的若しくは取り付け誤差等により走行面に対して斜めに取り付けられている場合、又は、センサによって測定される障害物が斜面になっているの場合等、センサの測定方向と走行面、障害物等の測定面が平行出ない場合には、障害物との距離に応じて発生する観測結果の深度ずれが発生する。このような現象が発生すると、自己位置測定におけるマッチングが適切に行われずに、自己位置推定の精度の低下を招く。ロボットの設計においては、障害物の回避等の判断にこの自己位置推定を用いるため、測距センサを足下の領域には一することが多く、このような状況は、頻繁に発生しうる。
このような距離に応じた観測結果のずれが生じないように、利用する点群を一部の距離領域に制限するといった手法をとることもできるが、利用できる点群の絶対数が低下し、この点群の低下自体が自己位置推定の精度低下を招くことにもなる。
そこで、本開示では、自己位置推定の誤差を低減する情報処理装置、情報処理方法及びプログラムを提供する。
一実施形態によれば、情報処理装置は、プロセッサを備える。前記プロセッサは、移動装置に搭載された測距センサから得られる点群データと、前記点群データの示す測距対象までの距離又は方向の少なくともいずれか1以上の条件と、に基づいて、それぞれ異なる前記点群データを用いた少なくとも2以上の地図を生成する。
前記プロセッサは、前記点群データに対して、前記距離又は方向に基づいてフィルタ処理を実行し、フィルタ処理を実行された前記点群データに基づいて前記2以上の地図を生成してもよい。
前記プロセッサは、前記点群データを所定距離と比較し、前記所定距離より近い距離の第1点群データから第1地図を生成し、前記所定距離より遠い距離の第2点群データから第2地図を生成してもよい。
前記プロセッサは、前記第1点群データ及び前記第2点群データの双方を含むフィルタ処理をしていない前記点群データから第3地図を生成してもよい。
前記プロセッサは、前記第3地図に基づいて、前記第1地図の歪み及び前記第2地図の歪みを補正してもよい。
前記プロセッサは、補正された前記第1地図及び補正された前記第2地図の差異を抽出してもよい。
前記プロセッサは、抽出された前記差異を前記第3地図に描画してもよい。
前記プロセッサからの要求にしたがい表示をする、表示装置、をさらに備えてもよく、前記プロセッサは、前記表示装置に、前記差異が描画された前記第3地図を前記表示装置に表示し、ユーザからの処理を受け付けてもよい。
前記プロセッサにユーザからの要求を入力する、入力インタフェースをさらに備えてもよく、前記プロセッサは、前記第3地図に対して、前記入力インタフェースを介して受け付けた処理を実行して更新してもよい。
前記プロセッサは、更新された前記第3地図に基づいて、前記移動装置の自己位置推定を行ってもよい。
前記プロセッサは、抽出された前記差異に基づいて、前記第3地図を修正して更新してもよい。
前記プロセッサは、少なくとも、前記第1地図に基づく自己位置推定結果と、前記第2地図に基づく自己位置推定結果と、を統合して自己位置推定を実行してもよい。
前記プロセッサは、拡張カルマンフィルタを用いて、前記第1地図に基づく自己位置推定結果と、前記第2地図に基づく自己位置推定結果と、を統合してもよい。
前記プロセッサは、前記第1地図と前記第2地図の差異点に対応する前記第3地図上の地点に、前記差異点が検出可能な距離をラベルとして設定してもよい。
前記プロセッサは、前記差異点に基づいて自己位置推定を行う場合、前記差異点までの距離と前記差異点に設定されたラベルとに基づいて、自己位置推定を行うか否かを決定してもよい。
一実施形態によれば、情報処理方法は、プロセッサにより、上記に記載の地図を生成する方法である。
一実施形態によれば、プログラムは、プロセッサに、上記に記載の地図を生成する方法を実行させる。
以下、図面を参照して本開示における実施形態の説明をする。図面は、説明のために用いるものであり、実際の装置における各部の構成の形状、サイズ、又は、他の構成とのサイズの比等が図に示されている通りである必要はない。また、図面は、簡略化して書かれているため、図に書かれている以外にも実装上必要な構成は、適切に備えるものとする。数値を比較する場合における以下、以上等の表現は、それぞれ適切に、未満、より大きいと書き換えることができることに留意されたい。
(第1実施形態)
図1は、第1実施形態に係る情報処理装置の構成を示すブロック図である。情報処理装置1は、フィルタ100と、記憶部102と、第1生成部104と、第2生成部106と、第3生成部108と、補正部110、比較部112と、合成部114と、出力部116と、入力部118と、更新部120と、を備える。情報処理装置1は、センサ2が取得した情報に基づいて、自己位置を測定する地図を更新し、必要な情報を出力する。
図1は、第1実施形態に係る情報処理装置の構成を示すブロック図である。情報処理装置1は、フィルタ100と、記憶部102と、第1生成部104と、第2生成部106と、第3生成部108と、補正部110、比較部112と、合成部114と、出力部116と、入力部118と、更新部120と、を備える。情報処理装置1は、センサ2が取得した情報に基づいて、自己位置を測定する地図を更新し、必要な情報を出力する。
センサ2は、例えば、LiDAR(Light Detection and Ranging)等の測距装置であり、取得した距離情報を情報処理装置1へと出力する。例えば、センサ2は、移動体(移動装置)に備え付けられ、移動体の周辺の環境に対する距離を測定する。
フィルタ100は、センサ2が取得した情報をその距離情報に基づいて分類する。フィルタ100は、例えば、閾値と、センサ2が取得した情報のうち、距離情報とを比較して、閾値以上の距離、閾値未満の距離で場合分けする。フィルタ100は、例えば、距離が閾値未満である観測点を第1生成部104へと出力し、距離が閾値以上である観測点を第2生成部106へと出力する。
閾値は、1つではなく2つあってもよく、近距離の点群を取得する第1閾値以下のデータを第1生成部104に出力し、遠距離の点群を取得する第2閾値以上のデータを第2生成部106に出力してもよい。例えば、第1閾値<第2閾値であり、この間にある点群については、第1生成部104、第2生成部106のいずれにも出力されない形態としてもよい。
図2は、移動体と、距離との一例を示す図である。例えば、移動体の先端にセンサが搭載されている場合、図2に示すように距離の範囲が指定される。例えば、フィルタ100は、閾値よりも近い位置にある観測点を距離範囲1の点として取得し、第1生成部104へと出力する。一方で、フィルタ100は、閾値よりも遠い位置にある観測点を距離範囲2の点として取得し、第2生成部106へと出力する。
図2においては、点線で示すように、距離範囲2につても限界の距離が設定されているがこれには限られない。例えば、距離範囲2は、単に閾値よりも遠い距離であって、観測可能な点と定義してもよい。
図3は、移動体と、距離との別の例を示す図である。図2と同様の移動体にセンサを備える場合の図を示す。この図3に示すように、フィルタ100は、複数の閾値により3以上の距離範囲において観測された点をそれぞれの距離範囲としてフィルタリングしてもよい。例えば、フィルタ100は、小さい方の閾値において、距離範囲1の観測点と、距離範囲2の観測点とをフィルタリングし、大きい方の閾値において、距離範囲2の観測点と、距離範囲3の観測点とをフィルタリングしてもよい。
また、上述したように2つの閾値を用いて2つの範囲にフィルタリングしてもよい。この場合、図3において、フィルタ100は、距離範囲2の観測点については、第1生成部104及び第2生成部106のいずれにも出力されない形態とすればよい。
図1に戻り、記憶部102は、情報処理装置1の動作に必要な情報を格納する。例えば、センサ2から受信した情報は、記憶部102に格納されてもよい。予め取得していた地図情報、更新した地図情報等のデータが記憶部102に格納されてもよい。また、ソフトウェアによる情報処理がハードウェア資源を用いて具体的に実現されて情報処理装置1の動作を実行する場合には、この処理に必要となるプログラム等の情報が、記憶部102に格納されていてもよい。なお、図面においては、記憶部102とのデータの接続が省略されているが、記憶部102は、必要に応じて適宜、各構成要素からアクセスされる。
第1生成部104は、フィルタ100により分類されたデータを用いて、地図を作成する。例えば、上記のようにフィルタ100が閾値よりも低い点群についてのデータを第1生成部104へと出力する場合には、第1生成部104は、近距離地図(第1地図)を生成する。作成した地図は、記憶部102に格納してもよい。
第2生成部106は、フィルタ100により分類されたデータを用いて、地図を作成する。例えば、上記のようにフィルタ100が閾値よりも高い点群についてのデータを第2生成部106へと出力する場合には、第2生成部106は、遠距離地図(第2地図)を生成する。作成した地図は、記憶部102に格納してもよい。
一方で、第3生成部108は、センサ2から取得した全てのデータを用いて全体地図(第3地図)を生成する。
上記では、各生成部の動作の実装については記載されていないが、これは任意でよい。例えば、3つの生成部が並列処理によりそれぞれの地図を作成してもよい。この場合、例えば、第1生成部104と、第2生成部106と、第3生成部108とが同一のプロセッサ又は異なるプロセッサにおいて同じタイミングで自己位置推定及び地図作成を実行する。
別の例としては、3つの生成部がシリアルな処理を実行してもよい。この場合、例えば、第1生成部104の第1地図の生成が終了した後に、第2生成部106の第2地図の生成をし、その後に第3生成部108の処理を実行してもよい。この動作は、同じ関数を用いて点群データを変更することにより実行してもよい。
さらに別の例として、第1生成部104及び第2生成部106の処理を先に実行し、これらの実行結果、又は、実行途中において計算された数値を用いて、第3生成部108が第3地図の生成をしてもよい。また、逆に、第3生成部108の処理を先に実行し、この結果又は途中経過を用いて、第1生成部104及び第2生成部106が処理を実行してもよい。
補正部110は、第3地図に基づいて、第1地図、第2地図の歪みを補正する。この歪みの補正は、一般的な手法で実行されてもよい。補正部110は、例えば、第1地図、第2地図、第3地図から同じ時刻に移動体が存在した位置を、複数の時刻において抽出し、当該抽出した位置に基づいて、第3地図に合わせるように第1地図、第2地図の歪みを補正する。
比較部112は、歪みが補正された第1地図と、第2地図とを比較する。比較部112は、第1地図と、第2地図とを比較することにより、例えば、近距離において計測した結果と、遠距離において計測した結果とで地図が異なる点、箇所、領域等を抽出する。
合成部114は、第3地図上に、比較部112が抽出した差異点、差異領域等を合成する。
出力部116は、差異点、差異領域が合成された第3地図を出力する。出力部116は、例えば、表示するディスプレイを備え、このディスプレイに、差異点、差異領域が合成された第3地図を表示する。
入力部118は、ユーザからの入力を受け付ける。例えば、出力部116がディスプレイを介して第3地図を出力した後、ユーザからの入力を待機する。そして、ユーザが処理を指示する場合に、入力部118は、この指示を受け付ける。
更新部120は、入力部118を介して受信した処理に基づいて、合成された第3地図に処理を実行し、第3地図を更新する。そして、この更新された地図に基づいて、例えば、移動体は、自律移動をする。
第1生成部104、第2生成部106、第3生成部108は、センサ2からの入力の他に、他のセンサ3からの入力により、地図の精度を高めてもよい。例えば、センサ3として、慣性センサ(IMU:Inertial Measurement Unit)、車輪エンコーダ等を想定してもよい。この慣性センサ、車輪エンコーダ等からの出力と、フィルタ100からの出力に基づいて、上記の距離ごと、又は、全体の地図を生成してもよい。情報処理装置1は、地図を生成するために必要となる情報のうち少なくとも距離情報を含む情報を取得するセンサ2を備えればよいが、その他のセンサ3を備えていてもよい。
また、センサ3を備える別の例として、センサ2は、距離情報だけを取得するセンサであってもよい。この場合、センサ2とセンサ3が連動して、センサ3が取得した情報に対してセンサ2が距離情報を付加してもよい。距離情報が付加された情報をフィルタ100により分類することにより、各生成部が地図の生成を実行してもよい。
すなわち、情報処理装置1の実装としては、距離の異なる状況において取得された情報から、それぞれに地図を形成できる構成であればよい。センサ2とセンサ3により取得された情報に基づいて、各生成部は、例えば、SLAM(Simultaneous Localization and Mapping)の手法により、自己位置推定とともに環境地図を生成する。この場合、全体としての第3地図は、例えば、取得した全ての情報から地図を構成してもよい。
これらの構成要素は、その一部又は全部がCPU(Central Processing Unit)、GPU(Graphics Processing Unit)等の処理回路(プロセッサ)により実現されてもよい。また、少なくとも一部がASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等により実装されてもよく、ASIC、FPGA等のアナログ回路又はデジタル回路も、以下においてはプロセッサと記載する。すなわち、全ての構成要素は、プロセッサにより実現されてもよい。
上記の構成においては、移動体と、情報処理装置1の関係性が描画されていないが、これは任意の形態でよい。少なくともセンサ2(及びセンサ3)は、移動体に搭載される必要があるが、これ以外の構成については、任意に配置することができる。
例えば、情報処理装置1は、移動体の内部に備えられ、出力部は、有線又は無線のネットワークを介して出力してもよい。
別の例として、移動体とは別の筐体があり、当該筐体に情報処理装置1が備えられてもよい。筐体は、インターネットを介して備えられるサーバ等であってもよい。また、クラウド内に存在するサーバ等を利用することもできる。
あるいは、さらに別の例として、構成要素の一部が移動体に実装され、他の構成要素が別のサーバ等に実装されてもよい。このように、各構成要素は、移動体、又は、その他の筐体に任意に配置することができる。
図4は、本実施形態に係る全体的な処理を示すフローチャートである。
まず、情報処理装置1は、センサ2(及びセンサ3)が取得した情報に基づいて、事前地図データを取得する(S10)。事前地図データは、例えば、移動体が事前に自律走行、又は、遠隔操縦等されて走行して、種々の環境情報を取得することにより生成される地図データである。この走行中に、SLAM等の自己位置推定及び環境地図生成を実行する。
例えば、移動体が走行しながらセンサ2等により周辺の環境情報を取得する。環境情報は、例えば、移動体の位置及びセンサ2の方向により、点データとして取得される。例えば、移動体は、移動しながら、所定角度における距離情報を移動体の位置とセンサ2の角度とに基づいた点のデータとして取得する。点データは、移動体の位置と測定した距離及びセンサ2の方向情報として取得される。そして、複数の点群のデータである点群データを取得する。この所定角度は、センサ2の性能により複数であってもよい。そして、センサ2は、取得したデータと距離情報を情報処理装置1へと送信する。
図5は、移動体がセンサ2により点群データを取得する様子を模式的に示す図である。例えば、移動体の先端にセンサ2が備えられるとする。矢印は、移動体の進行方向をしめす。移動体は、ある位置において、図5に示すように、複数の方向に対して測距し、障害物等の点データの集合である点群データを取得する。この例では、壁W1の位置として点P1、P2、P3、P4が、壁W2の位置として点P5、P6のデータが距離データとともに取得される。このように、各位置において1又は複数の点群データを情報処理装置1は、センサ2を介して取得する。
図6は、図5の状態よりも時間が進んだ状態を示す。同様に、移動体に搭載されているセンサ2は、壁W1の位置として、点P’1、P’2、P’3、P’4、P’5、壁W2の位置として点P’6の情報を点群データとして取得する。移動体は、移動しながらこのように各位置において点のデータを取得し、情報処理装置1は、全体としての点群データを取得する。
S10においては、移動体が、自動的に移動する領域内において点群データを取得しつつ、情報処理装置1がSLAM(自己位置推定と地図生成)を実行して事前地図データを取得する。
図7は、一実施形態に係る地図生成(S10)の処理を示すフローチャートである。
まず、情報処理装置1は、センサ2から点群データを取得する(S100)。点群データは、上述したように、例えば、移動体に搭載されているセンサ2により取得されたデータであり、点に対する距離と方向とを示すデータである。点群データは、記憶部102に格納されてもよい。
次に、フィルタ100は、点群データを所定距離と比較することによりフィルタリングする(S102)。
一例として、図5の例であれば、点P1、P2、P5、P6は、図示している所定距離より短い距離で観測された点であるので、近距離地図(第1地図)生成用の点群データ(第1点群データ)としてフィルタリングされる。一方で、点P3、P4は、所定距離より長い距離で観測された点であるので、遠距離地図(第2地図)生成用の点群データ(第2点群データ)としてフィルタリングされる。
図5とは時間が異なる図6の例であれば、点P’1、P’2、P’3、P’4、P’6は、所定距離より短い距離で観測された点であるので、第1地図生成用の点群データとしてフィルタリングされる。一方で、点P’5は、所定距離より長い距離で観測された点であるので、第2地図生成用の点群データとしてフィルタリングされる。
このようにフィルタリングされたデータは、それぞれの地図生成用のデータとして、記憶部102に格納されてもよい。
次に、第1生成部104は、第1地点群データを用いて第1地図を生成し、第2生成部106は、第2点群データを用いて第2地図を生成する(S104)。
図8は、第1生成部104により生成された第1地図の一例を示す図である。実線で示す箇所が第1点群データから生成された地図内の境界を示す。点線は、参考として描画する壁の位置である。
例えば、図5の状況においては、第1生成部104は、それまでの近距離の点群データと、図5の状態において取得された点群データにより、図8に斜線で示す領域を障害物の位置を第1地図として作成する。第1生成部104は、例えば、SLAMの手法を用いることによりこの地図を生成する。第1生成部104は、点群データを、障害物を示す斜線領域と通路を示す領域との境界上の点として判断して、このような地図を生成する。
図9は、第1生成部104により生成された第1地図の一例を示す図である。例えば、図6の状況においては、第1生成部104は、上記と同様の処理で図9に示す第1地図を生成する。
図10は、第2生成部106により図6のタイミングにおいて生成された第2地図の一例を示す図である。第2生成部106は、第2点群データを用いて、上記の第1生成部104と同様の処理により、第2地図を生成する。
図9と図10を見比べるとわかるように、第1地図と第2地図とでは異なる地図が生成される。フィルタ100で点群データの距離によりフィルタリングすることにより、このように近距離で測定した地図と、遠距離で測定した地図と、を生成することができる。
図7に戻り、一方で、第3生成部108は、フィルタリングをしていない点群データ、すなわち、近距離及び遠距離の双方のデータを含んだ点群データを用いて第3地図を生成する(S106)。
図11は、第3生成部108により図6のタイミングにおいて生成された第3地図の位置例を示す図である。第3生成部108は、フィルタフィリングをしていない点群データを用いて近距離点群、遠距離点群を分けずに第3地図を生成する。図8から図11における例では、近距離と遠距離の差が出ていない理想的な場合を示している。このような場合、図9の第1地図と図10の第2地図を合成したものが第3地図として取得される。
図7に示すフローチャートにより、図4のS10の処理が実行される。情報処理装置1は、上記の処理の結果、第1地図、第2地図、第3地図が事前地図として、生成、取得する。
なお、この地図生成の処理は、必要な地図情報が取得されるまで繰り返し実行されてもよい。例えば、センサ2の点群データの取得フレームごとに、情報処理装置1は、地図生成が終了するまで、地図生成を繰り返し実行する。地図生成は、例えば、移動体が移動可能な範囲を移動し終えるまで、又は、所定時間の移動をし終えるまで等、適切な終了条件まで繰り返し実行されてもよい。
図4に戻り、情報処理装置1は、事前地図を生成した後、これらの事前地図の調整を実行する(S20)。事前地図の調整は、例えば、地図の歪みの補正、第1地図と第2地図における差異の修正の処理である。
図12は、図4のS20の処理をより具体的に示すフローチャートである。
まず、補正部110は、記憶部102から事前地図を取得する(S200)。
次に、補正部110は、取得した第3地図に基づいて、第1地図及び第2地図の歪み補正を実行する(S202)。異なる点群データを用いてSLAMにより地図を作成すると、異なる最適化計算が実行される可能性がある。このような場合、上記のフィルタリングした点群データを用いると、地図同士に歪みが発生する。本処理では、この歪みを補正する。
補正部110は、例えば、多くの点群データを用いた第3地図に対して第1地図、第2地図の歪みを算出し、第1地図、第2地図をそれぞれ補正する。この補正は、例えば、相似変換、アフィン変換、射影変換、Rubber-Sheeting、又は、非線形変換等の任意の手法を用いて実行することが可能である。また、これらの手法は一例としてあげたものであり、これらに限られるものではない。
相似変換としては、スケール、回転、並進、鏡像の変換、アフィン変換としては、相似変換にせん断変換を加えた変換、Rubber-Sheetingとしては、Polynomial、Thin Plate Spline等の手法が挙げられるが、これらも上記と同様であり、これらに限定されるものではない。
図13は、補正部110による補正の一例を模式的に示す図である。この図に示すように、第1地図と第3地図において同じ時間における点のデータを取得し、制御点を設定する。図中に円で示されているのが制御点である。この制御点を一致させるように、上記の変換を実行することにより、第1地図の歪みを第3地図に合わせるように補正する。
第2地図も同様に補正を行う。図13においては、第1地図、第2地図との補正で同じ制御点を用いているが、これには限られない。例えば、第1地図と第2地図とでは取得できる点群データが異なる。このため、同じ制御点を取得できるとは限らない。そこで、第1地図と第3地図との間で制御点を設定して第1地図を補正し、第2地図と第3地図との間で制御点を設定して第2地図を補正する。
このように、補正部110は、第1地図、第2地図に対してそれぞれに制御点を設定し、当該制御点に対する第3地図上の点をそれぞれに取得して、第1地図と、第2地図とを補正する。この歪みの補正を実行することにより、情報処理装置1は、第1地図と第2地図とを同じスケールを有する地図として利用することができる。
図12に戻り、次に、比較部112は、補正部110が補正した第1地図と、第2地図との間の差異を抽出する(S204)。第1点群データと、第2点群データとにおいて、同一の地点を示すデータが地図上において同じ位置に投射される場合には、これらの差異は生じない。しかしながら、一般的には、次のような差異が生じる。
図14は、近距離で取得した点データと、遠距離で取得した同じ位置を検出するべき点データとの一例を示す図である。図14に示すように、床に障害物がある場合を考える。移動体には、センサ2が備えられるが、このセンサ2は、意図的に、又は、意図的ではなく、床に対して微少な角度を有している。
センサ2により測距すると、例えば、遠距離における計測では、センサ2は、移動体と障害物の距離は、ほぼ正確に求めることが可能である。一方で、近距離における計測においては、障害物との距離が正しい距離とは大きく異なる。例えば、図14のような場合、センサ2は、本来よりも約3~4倍程度の距離を計測する。
図15は、近距離で取得した点データと、遠距離で取得した同じ位置を検出するべき点データとの別の例を示す図である。図14では、遠距離の測距データの方が正確であったが、これには限られない。例えば、図15に示す場合は、近距離の測距データの方が遠距離の測距データよりも正確である。このように、一意的に遠距離又は近距離の方が正確であると決定することはできない。
また、障害物の反射面が、ガラスであったり、反射率の高いものであったり、又は、反射率が極端に低いものであったりする場合にも、どちらが正確なデータであるかは一概に判断することはできない。
このような点群データにより地図を生成すると、同じ障害物の位置を示す点が、第1地図と第2地図において大きく異なる場合がある。比較部112は、このように第1地図と第2地図とで異なる点を示すような領域を、第1地図と第2地図とを比較することにより抽出する。
図16は、取得された第1地図と、第2地図とで差異が出る一例を示す模式図である。この図16に示すように、例えば、第1地図における障害物の位置と、第2地図における障害物との位置に差異が生じる。比較部112は、第1地図と第2地図とを比較することにより、このような地図上の領域を抽出する。
図12に戻り、次に、合成部114は、比較部112が抽出した領域を第3地図に合成する(S206)。例えば、合成部114は、第3地図に比較部112が抽出した差異領域を描画し、出力部116を介して出力してもよい。出力部116は、例えば、表示装置としてディスプレイを備えていてもよく、情報処理装置1は、合成部114が合成した第3地図をこのディスプレイに表示させてもよい。
図17は、ディスプレイに表示される合成された第3地図の一例を示す図である。情報処理装置1は、例えば、出力部116に、左上がりの斜線で示すような領域で、比較部112により差異が検出された領域を出力する。
図12に戻り、次に、情報処理装置1は、第3地図の修正を行い、第3地図を更新する(S208)。この更新には、いくつか方法が考えられる。本実施形態においては、合成部114が合成した第3地図を、出力部116を介して出力し、ユーザに処理を要求する。
図18は、出力部116として表示装置を備える場合、表示装置に表示されるユーザインタフェースの一例を示す図である。表示装置には、例えば、第3地図が表示される。そして、この出力装置を見ながら、ユーザは、例えば、領域の削除を指示することができる。図18に示すように、一例として、表示装置には、領域削除のボタンが備えられてもよい。
ユーザは、入力部118である任意の入力インタフェースを用いて、この領域削除のボタンを押下することにより、情報処理装置1は、例えば、図に示すようにカーソルを消しゴム型に変化させてもよい。ユーザは、入力部118を用いて、領域を設定することにより、この領域を第3地図から削除することもできる。入力インタフェースは、例えば、マウス、トラックボール、キーボード、タッチパネル等である。タッチパネルの場合、ディスプレイとタッチパネルが一体型に整形されたタッチディスプレイであってもよい。
更新部120は、削除の要求を受けた領域を第3地図上から削除してもよい。また、この領域を不明領域として、第3地図上に記憶させてもよい。あるいは、削除の要求がされた場合には、新たな境界を設定するように、出力部116に出力させてもよい。この場合、ユーザは、任意で新たな境界を設定してもよい。ユーザから境界の設定がない場合には、更新部120は、上記のように不明領域として記憶する他、最も内側の境界を、仮の境界として設定してもよい。
情報処理装置1は、第3地図に関する処理について、他の選択肢をユーザに示してもよい。例えば、自動削除ボタンを用意し、自動削除が選択された場合には、比較部112が抽出した差異の生じている領域を自動的に削除する形態としてもよい。これらには限られず、領域を操作したり、境界を操作したりする他の処理が選択可能であってもよい。更新部120は、ユーザが選択した処理に基づいて第3地図の処理を実行してもよい。
更新部120は、更新した第3地図を例えば、記憶部102に格納してもよい。また、別の例としては、出力部116を介して外部へと出力してもよい。
図4に戻り、S20の処理が終了し、第3地図が更新された後、移動体は、当該第3地図を用いて自己位置推定を実行する(S30)。このように、第3地図を事前に生成しておくことにより、移動体は、自己位置の推定を精度よく高速に実行することが可能となる。
例えば、第3地図に不明な領域がある場合には、移動体は、センサ2が取得した情報と、当該不明な領域とのマッチングを行うことなく、自己位置を推定してもよい。最も内側の境界を仮の境界としている場合には、当該仮の境界に基づいて、自律移動を実行してもよい。ユーザにより正しい境界が指定されて第3地図に合成された場合には、この合成された強化に基づいて自律移動をしてもよい。このように、更新された第3地図を用いて、自律移動をすることが可能となる。この場合、自己位置推定と地図作成を同時に実行するSLAMの手法により、自己位置推定をしてもよい。
以上のように、本実施形態によれば、測定結果が近距離であった第1点群データから作成した第1地図と、測定結果が遠距離であった第2点群データから作成した第2地図とに基づいて、全体の地図である第3地図を更新することが可能である。このように第3地図を更新することにより、第3地図を用いた自己位置推定をする場合の精度を向上させることが可能となる。
なお、上記においては、点群データは、所定距離により近距離と遠距離とに2分されたが、この分割に限られるものではない。例えば、近距離、中距離、遠距離の3つの範囲に分けてもよいし、さらに多くの4以上の範囲に点群データを分割してもよい。この場合、点群データをフィルタリングした範囲ごとに、地図を作成し、それとは別に、全体の点群データを用いた地図(上記の第3地図)を作成する。その上で、上記の他の処理を実行してもよい。
(第2実施形態)
上記においては、出力部116及び入力部118が備えられる構成としたが、これには限られない。例えば、ユーザに処理を要求するのではなく、合成部114が合成した地図情報に基づいて、自動的に第3地図を更新する構成であってもよい。すなわち、出力部116及び入力部118は、必須の構成ではなく、これらがない構成において、自動的に地図を更新する構成であってもよい。処理の流れは、上述の実施形態と同様に、図4に示す処理の順番であってもよい。
上記においては、出力部116及び入力部118が備えられる構成としたが、これには限られない。例えば、ユーザに処理を要求するのではなく、合成部114が合成した地図情報に基づいて、自動的に第3地図を更新する構成であってもよい。すなわち、出力部116及び入力部118は、必須の構成ではなく、これらがない構成において、自動的に地図を更新する構成であってもよい。処理の流れは、上述の実施形態と同様に、図4に示す処理の順番であってもよい。
例えば、図16のような差異領域が抽出され、第1地図の境界の方が、第2地図の境界よりも右側にあるとする。このような場合、差異領域において段差があることが考えられる。移動体の車輪の大きさが十分である場合等は、このような段差は移動に問題がないことがある。そこで、移動体は、事前に得られた第3地図において、上記のように、第1地図の境界が手前にある場合には、自らが越えられる段差であると判断してもよい。この場合、これらの領域において、移動時にマッチングを行わないで自己位置推定をしてもよい。
この判断は、例えば、第1地図における境界と第2地図における境界の移動体に対する相対的な位置と、これらの境界同士の距離に基づいて決定してもよい。例えば、第2地図における境界の方が移動体に近く、第1地図と第2地図における境界の距離が所定距離以上離れている場合には、越えられる段差として判断し、所定距離以内である場合には、越えられない段差と判断してもよい。
このような処理は、情報処理装置1において第3地図上に不明領域として境界を含む領域を指定しておき、不明領域においては、移動体の自己位置推定をする段階において、第1地図と第2地図とを参照する構成としてもよい。もちろん、第3地図に第1地図及び第2地図の境界を付与した情報として格納しておいてもよい。また、別の例としては、更新部120は、第3地図を更新する処理において上記の条件を満たす領域等を、越えられる段差のある領域として第3地図を修正してもよい。
以上のように、本実施形態によれば、ユーザによる判断をするだけではなく、自動的に第3地図を自動的に修正、更新してもよい。また、第3地図を自動的に段差等の情報を付加する修正をすることには限られず、第3地図に第1地図及び第2地図それぞれにおける境界を自動的に追加する修正をしてもよい。この場合には、移動体が移動をするタイミングにおいて、第3地図に付加されている第1地図及び第2地図の異なる境界の情報を用いることが可能である。
別の例として、更新部120は、合成部114の合成した第3地図において、自動的に処理ができる場合は自動的に更新をし、自動的に処理ができない場合には、ユーザの処理を要求してもよい。例えば、合成した第3地図において、第1地図と第2地図の比較結果が大きくずれており、自動的に更新できない場合に、ユーザにどのような処理をするかを要求してもよい。例えば、障害物の存在する位置が第1地図と第2地図において閾値以上の距離の相違がある場合には、出力部116がアラートを出力する構成であってもよい。
(第3実施形態)
上述したように、フィルタ100は、距離を2分するのではなく、複数の距離帯に分けてもよい。本実施形態も、第2実施形態と同様に、処理の流れは、図4と同様であってもよい。
上述したように、フィルタ100は、距離を2分するのではなく、複数の距離帯に分けてもよい。本実施形態も、第2実施形態と同様に、処理の流れは、図4と同様であってもよい。
この場合、図7のフローチャートと同様に、各距離帯に対応する生成部が備えられ、各距離帯の生成部の処理により、各距離帯において取得された点群データを用いてそれぞれの地図を生成する。ただし、フィルタリングしていない点群データを用いた第3地図を作成するか否かは、アルゴリズムによって異なる。例えば、第3地図を生成するS106の処理は、省略してもよい。例えば、後の処理である各距離帯において取得される地図と、フィルタリングしていない点群データにおいて取得される地図とを比較する場合には、この処理は、もちろん省略せずに実行する。
図19は、本実施形態に係る図4のS20の処理を示すフローチャートである。
情報処理装置1は、作成された各距離帯の地図を読み込んだ(S200)後、これら複数の生成部から取得された地図を、補正部110が補正する(S210)。補正の方法は、第1実施形態に示したとおりである。この補正の処理は、合成処理のアルゴリズムによっては、省略することができる。このため、本実施形態においては、用いる手法により、補正部110は、必須の構成ではない。
次に、アルゴリズムによって必要であれば、比較部112は、各地図の比較を実行する(S212)。この処理は、必須ではなく、アルゴリズムによっては省略することができる。このため、本実施形態においては、用いる手法により、比較部112は、情報処理装置1に備えられなくてもよい。
次に、合成部114は、各種距離により取得されたデータを合成する(S214)。この合成は、例えば、拡張カルマンフィルタの処理により実行される。
このように、センサ2が取得できる情報を、距離ごとに任意の個数に分割し、それぞれの範囲で独自にSLAMを実行してもよい。そして、地図を作成した後に、地図を所定のアルゴリズムに基づいて合成してもよい。
別の例としては、自己位置推定までを全ての距離ごとに独立して実行し、地図作成を自己位置推定の結果を合成することにより実行してもよい。この場合も同様に、拡張カルマンフィルタ等のアルゴリズムを適用することが可能である。
本実施形態によれば、距離帯ごとの自己位置推定結果に基づいて地図作成をすることが可能となる。また、この場合、センサ3からの別の情報をも拡張カルマンフィルタ等のアルゴリズムに反映させてもよい。
上記では、拡張カルマンフィルタを用いるとしたが、これに限られるものではない。例えば、単純な平均値、重回帰分析、共分散解析、Unscentedカルマンフィルタ、アンサンブルカルマンフィルタ等種々の線形又は非線形の手法を用いることが可能である。
(第4実施形態)
前述の第3実施形態では、距離帯ごとに求めた地図を、地図として合成して1つの地図を作成する手法を説明したが、距離帯ごとに求めた境界を、1つの地図に合成して埋め込んでもよい。本実施形態に係る処理は、図4、図7(ただし、フィルタリングは、2ではなく3以上の距離帯に分割とする。)と同様である。前述の図19を用いて、S20の処理について説明する。
前述の第3実施形態では、距離帯ごとに求めた地図を、地図として合成して1つの地図を作成する手法を説明したが、距離帯ごとに求めた境界を、1つの地図に合成して埋め込んでもよい。本実施形態に係る処理は、図4、図7(ただし、フィルタリングは、2ではなく3以上の距離帯に分割とする。)と同様である。前述の図19を用いて、S20の処理について説明する。
本実施形態においては、事前地図の作成として、フィルタリングせずに作成された第3地図と、距離帯ごとの地図とを作成する。
次に、補正部110は、第3地図に基づいて、各距離帯の地図の歪みを補正する(S210)。
次に、比較部112は、各距離帯の地図の差異を抽出する(S212)。例えば、図16に示すような第1地図、第2地図の境界が距離帯ごとに抽出される。なお、全ての距離帯で異なることもあるし、いくつかの距離帯で同じ境界を有していることもある。
次に、合成部114は、各距離帯における境界の位置を、第3地図に埋め込む合成を実行する(S214)。すなわち、第3地図には、フィルタリングしない状態における地図に、各距離帯に障害物等が検出された位置(少なくとも境界)の情報が埋め込まれる。
この距離帯ごとの境界の埋め込みは、少なくとも、比較部112により距離の差異が検出された領域のみに実行すればよい。合成部114は、このように情報が埋め込まれた第3地図のデータを記憶部102に記憶させる。例えば、第3地図において、距離帯ごとにラベリングした障害物等の境界を示すデータを埋め込んでもよい。
移動体は、この更新された第3地図を参照することにより、自己位置推定(及び地図作成)を実行することができる。
例えば、センサ2による測距結果と、第3地図とを参照する。もし、センサ2がとらえた点のデータが第3地図において差異のある領域である場合には、第3地図に埋め込まれている距離帯のデータを用いる。より具体的には、測距結果が含まれる距離帯の境界の位置(ラベリングしたデータ)と、測距された位置のデータとをマッチングすることにより、自己位置推定(及び地図作成)を実行することができる。
逆に、センサ2において観測した点におけるラベリングデータと、測距した距離とが合致しない場合には、当該位置におけるマッチングを実行しない処理としてもよい。
以上のように、本実施形態によれば、距離帯により障害物等の境界の位置に差異がある場合に、全体の地図に埋め込まれた距離帯ごとのデータとマッチングをすることにより、事前に取得される地図データを用いた自己位置推定を実行することが可能となる。ラベリングデータを参照することにより、測距した結果に基づいて、位置推定処理におけるマッチングを行うか、行わないかを、情報処理装置1は決定することが可能となる。
(第5実施形態)
図20は、一実施形態に係るセンサ2の点データの取得できる領域の一例を示す図である。例えば、センサ2は、この図20に示すように、光軸又は受信センサ(受光センサ)との方向により、探索できる範囲が変形(光芒変形)することがある。
図20は、一実施形態に係るセンサ2の点データの取得できる領域の一例を示す図である。例えば、センサ2は、この図20に示すように、光軸又は受信センサ(受光センサ)との方向により、探索できる範囲が変形(光芒変形)することがある。
このようなセンサを用いる場合には、フィルタ100は、距離によってフィルタリングを行うのではなく、センサ2と、対象となる点との位置関係、より具体的には、センサ面の設置方向との角度の関係により、フィルタリングを実行してもよい。
図21は、フィルタ100が角度により範囲をフィルタリングする場合の各範囲を模式的に示す図である。例えば、センサ2の取り付け方向に基づいて、この角度範囲が設定されてもよい。
フィルタ100は、例えば、センサ2の感知範囲において、中心から左右(又は上下等であってもよい)に所定角度の範囲を角度範囲1と定義して、この範囲における観測点を第1生成部104へと出力してもよい。そして、フィルタ100は、それよりも外側の角度の範囲である、角度範囲2、角度範囲3における観測点を、他の生成部、例えば、第2生成部106へと出力してもよい。
また、角度範囲2と角度範囲3の領域においては、同じ生成部に出力してもよいが、他の生成部へと出力してもよい。すなわち、センサ2から見て左側と右側とで別の生成部へとデータが出力され、別々に地図が生成されてもよい。
図21においては、角度範囲は、3つに分割されているが、これには限られない。上述した距離範囲と同様に、それぞれの角度範囲間にマージンを設定してもよいし、さらに多くの角度範囲に分割してもよい。
例えば、図5の例では、点P1と点P6、点P2と点P5、点P3と点P4がそれぞれセンサ面から互いに反対方向に同じ角度だけずれているとする。この場合には、点P1、P6の方向による観測結果、点P2、P5の方向による観測結果、点P3、P4の方向による観測結果をそれぞれ分けるようにフィルタリングしてもよい。
フィルタ100による分類が終了した後の処理については、前述の各実施形態と同様である。例えば、角度により地図を作成して、差異のある領域を抽出してもよい。第3地図との合成は、ユーザによる要求に基づいてもよいし、自動的に実行してもよい。
角度帯ごとに領域を分割して、複数の角度帯に対応する地図を作成し、これを拡張カルマンフィルタ等の手法により合成してもよい。また、角度帯によって取得された観測データごとにSLAMを実行して、複数の地図を作成し、差異がある場合には、角度帯ごとのラベリングをしてもよい。
さらに、方向だけでフィルタリングするのではなく、距離と、方向と、の双方を考慮してフィルタリングしてもよい。例えば、近距離と遠距離とを、所定距離によりフィルタリングするとともに、正面と側面とを、所定距離によりフィルタリングしてもよい。この場合、4つの地図+全体の地図の5つの地図を作成し、それぞれに前述の各実施形態と同様の処理を実行してもよい。もちろん、正面、側面の2分割に限られず、3以上の分割をしてもよい。
上記においては、一例として、センサ2の光軸等に対して水平方向の左右方向でフィルタリングする例を説明したが、これには限られない。例えば、センサ2の受光面等が傾いている可能性がある。センサ2の光軸に対して水平方向の左右で別の角度帯を割り当ててもよい。フィルタ100は、例えば、右側面、正面、左側面を2つの所定角度を用いてフィルタリングする。さらに、近距離と遠距離のフィルタリングをすると、6通りの地図を生成することができる。これと全体地図である第3地図と用いて、前述の各実施形態に適用してもよい。
以上のように、本実施形態によれば、前述の各実施形態において誤差の原因となったセンサ2のピッチ方向のずれだけではなく、センサ2のロール方向のずれにも対応することが可能となる。このように、方向に基づいてフィルタリングを行うことにより、さらに精度の高い自己位置推定及び地図作成を実現することが可能となる。
図22は、一実施形態に係る情報処理装置の限定しない実装例を示す図である。情報処理装置1は、例えば、移動体であるロボット4と、端末5に実装される。なお、端末5は、ロボット4内に搭載されていてもよく、この場合、ロボット4が全ての構成要素を備える。
ロボット4は、センサ2、センサ3、フィルタ100、記憶部102、第1生成部104、第2生成部106、第3生成部108、事前地図保持部122を備える。前述した形態と同じ符号を付しているものは同じ動作をする構成要素であり、同様の動作を実行する。
それぞれの生成部は、生成した地図を、事前地図保持部122に格納する。事前地図保持部122は、例えば、記憶部102内に備えられていてもよい。ロボット4と端末5が通信を行う場合には、事前地図保持部122は、通信インタフェースからアクセスしやすい領域に備えられてもよい。
事前地図保持部122は、端末5へとそれぞれの生成部から出力された地図を出力する。
端末5は、記憶部102と、事前地図管理部124と、補正部110と、比較部112と、合成部114と、出力部116と、入力部118と、更新部120と、事前地図出力部126と、を備える。記憶部には、ロボット4と同じ符号を付しているがこれは、別のものであってもよいし、同じものであってもよい。また、ロボット4の各構成要素と同様に、前述した携帯と同じ符号を付しているものは、同じ動作をする構成要素であり、同様の動作を実行する。
事前地図管理部124は、事前地図保持部122から事前地図を取得する。そして、補正部110以降の各構成要素は、この事前地図管理部124が受け取った事前地図に基づいて、上記の各処理を実行する。
事前地図出力部126は、更新された第3地図を事前地図として、事前地図管理部124へと出力する。
事前地図管理部124は、事前地図出力部126から取得した事前地図情報を、ロボット4の事前地図保持部122へと出力する。
ロボット4は、図示しない制御部等により、この事前地図を用いて、センサ2、3から取得した情報に基づいて、SLAMを実行し、移動に必要となる地図情報を取得してもよい。制御部は、この地図情報に基づいて、移動体の移動処理を実現してもよい。
ロボット4と、端末5は、例えば、有線又は無線の通信経路を用いて通信する。双方には、この通信を行うための通信インタフェースが備えられてもよい。端末5は、例えば、コンピュータであってもよいし、スマートフォン、タブレット型端末等のポータブル端末であってもよい。また、端末5の構成要素は、全て端末5内に備えられている必要なく、例えば、出力部116、入力部118がポータブル端末であり、その他の構成要素は、備え付けのコンピュータ又は通信ネットワーク内に存在する任意の計算機であってもよい。
以上のように、情報処理装置1は、任意の形態で、任意の動作単位に分割して実装することも可能である。
本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、自動車、電気自動車、ハイブリッド電気自動車、自動二輪車、自転車、パーソナルモビリティ、飛行機、ドローン、船舶、ロボット、建設機械、農業機械(トラクター)などのいずれかの種類の移動体に搭載される装置として実現されてもよい。
図23は、本開示に係る技術が適用され得る移動体制御システムの一例である車両制御システム7000の概略的な構成例を示すブロック図である。車両制御システム7000は、通信ネットワーク7010を介して接続された複数の電子制御ユニットを備える。図23に示した例では、車両制御システム7000は、駆動系制御ユニット7100、ボディ系制御ユニット7200、バッテリ制御ユニット7300、車外情報検出ユニット7400、車内情報検出ユニット7500、及び統合制御ユニット7600を備える。これらの複数の制御ユニットを接続する通信ネットワーク7010は、例えば、CAN(Controller Area Network)、LIN(Local Interconnect Network)、LAN(Local Area Network)又はFlexRay(登録商標)等の任意の規格に準拠した車載通信ネットワークであってよい。
各制御ユニットは、各種プログラムにしたがって演算処理を行うマイクロコンピュータと、マイクロコンピュータにより実行されるプログラム又は各種演算に用いられるパラメータ等を記憶する記憶部と、各種制御対象の装置を駆動する駆動回路とを備える。各制御ユニットは、通信ネットワーク7010を介して他の制御ユニットとの間で通信を行うためのネットワークI/Fを備えるとともに、車内外の装置又はセンサ等との間で、有線通信又は無線通信により通信を行うための通信I/Fを備える。図23では、統合制御ユニット7600の機能構成として、マイクロコンピュータ7610、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660、音声画像出力部7670、車載ネットワークI/F7680及び記憶部7690が図示されている。他の制御ユニットも同様に、マイクロコンピュータ、通信I/F及び記憶部等を備える。
駆動系制御ユニット7100は、各種プログラムにしたがって車両の駆動系に関連する装置の動作を制御する。例えば、駆動系制御ユニット7100は、内燃機関又は駆動用モータ等の車両の駆動力を発生させるための駆動力発生装置、駆動力を車輪に伝達するための駆動力伝達機構、車両の舵角を調節するステアリング機構、及び、車両の制動力を発生させる制動装置等の制御装置として機能する。駆動系制御ユニット7100は、ABS(Antilock Brake System)又はESC(Electronic Stability Control)等の制御装置としての機能を有してもよい。
駆動系制御ユニット7100には、車両状態検出部7110が接続される。車両状態検出部7110には、例えば、車体の軸回転運動の角速度を検出するジャイロセンサ、車両の加速度を検出する加速度センサ、あるいは、アクセルペダルの操作量、ブレーキペダルの操作量、ステアリングホイールの操舵角、エンジン回転数又は車輪の回転速度等を検出するためのセンサのうちの少なくとも一つが含まれる。駆動系制御ユニット7100は、車両状態検出部7110から入力される信号を用いて演算処理を行い、内燃機関、駆動用モータ、電動パワーステアリング装置又はブレーキ装置等を制御する。
ボディ系制御ユニット7200は、各種プログラムにしたがって車体に装備された各種装置の動作を制御する。例えば、ボディ系制御ユニット7200は、キーレスエントリシステム、スマートキーシステム、パワーウィンドウ装置、あるいは、ヘッドランプ、バックランプ、ブレーキランプ、ウィンカー又はフォグランプ等の各種ランプの制御装置として機能する。この場合、ボディ系制御ユニット7200には、鍵を代替する携帯機から発信される電波又は各種スイッチの信号が入力され得る。ボディ系制御ユニット7200は、これらの電波又は信号の入力を受け付け、車両のドアロック装置、パワーウィンドウ装置、ランプ等を制御する。
バッテリ制御ユニット7300は、各種プログラムにしたがって駆動用モータの電力供給源である二次電池7310を制御する。例えば、バッテリ制御ユニット7300には、二次電池7310を備えたバッテリ装置から、バッテリ温度、バッテリ出力電圧又はバッテリの残存容量等の情報が入力される。バッテリ制御ユニット7300は、これらの信号を用いて演算処理を行い、二次電池7310の温度調節制御又はバッテリ装置に備えられた冷却装置等の制御を行う。
車外情報検出ユニット7400は、車両制御システム7000を搭載した車両の外部の情報を検出する。例えば、車外情報検出ユニット7400には、撮像部7410及び車外情報検出部7420のうちの少なくとも一方が接続される。撮像部7410には、ToF(Time Of Flight)カメラ、ステレオカメラ、単眼カメラ、赤外線カメラ及びその他のカメラのうちの少なくとも一つが含まれる。車外情報検出部7420には、例えば、現在の天候又は気象を検出するための環境センサ、あるいは、車両制御システム7000を搭載した車両の周囲の他の車両、障害物又は歩行者等を検出するための周囲情報検出センサのうちの少なくとも一つが含まれる。
環境センサは、例えば、雨天を検出する雨滴センサ、霧を検出する霧センサ、日照度合いを検出する日照センサ、及び降雪を検出する雪センサのうちの少なくとも一つであってよい。周囲情報検出センサは、超音波センサ、レーダ装置及びLIDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)装置のうちの少なくとも一つであってよい。これらの撮像部7410及び車外情報検出部7420は、それぞれ独立したセンサないし装置として備えられてもよいし、複数のセンサないし装置が統合された装置として備えられてもよい。
ここで、図24は、撮像部7410及び車外情報検出部7420の設置位置の例を示す。撮像部7910,7912,7914,7916,7918は、例えば、車両7900のフロントノーズ、サイドミラー、リアバンパ、バックドア及び車室内のフロントガラスの上部のうちの少なくとも一つの位置に設けられる。フロントノーズに備えられる撮像部7910及び車室内のフロントガラスの上部に備えられる撮像部7918は、主として車両7900の前方の画像を取得する。サイドミラーに備えられる撮像部7912,7914は、主として車両7900の側方の画像を取得する。リアバンパ又はバックドアに備えられる撮像部7916は、主として車両7900の後方の画像を取得する。車室内のフロントガラスの上部に備えられる撮像部7918は、主として先行車両又は、歩行者、障害物、信号機、交通標識又は車線等の検出に用いられる。
なお、図24には、それぞれの撮像部7910,7912,7914,7916の撮影範囲の一例が示されている。撮像範囲aは、フロントノーズに設けられた撮像部7910の撮像範囲を示し、撮像範囲b,cは、それぞれサイドミラーに設けられた撮像部7912,7914の撮像範囲を示し、撮像範囲dは、リアバンパ又はバックドアに設けられた撮像部7916の撮像範囲を示す。例えば、撮像部7910,7912,7914,7916で撮像された画像データが重ね合わせられることにより、車両7900を上方から見た俯瞰画像が得られる。
車両7900のフロント、リア、サイド、コーナ及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7922,7924,7926,7928,7930は、例えば超音波センサ又はレーダ装置であってよい。車両7900のフロントノーズ、リアバンパ、バックドア及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7926,7930は、例えばLIDAR装置であってよい。これらの車外情報検出部7920~7930は、主として先行車両、歩行者又は障害物等の検出に用いられる。
図23に戻って説明を続ける。車外情報検出ユニット7400は、撮像部7410に車外の画像を撮像させるとともに、撮像された画像データを受信する。また、車外情報検出ユニット7400は、接続されている車外情報検出部7420から検出情報を受信する。車外情報検出部7420が超音波センサ、レーダ装置又はLIDAR装置である場合には、車外情報検出ユニット7400は、超音波又は電磁波等を発信させるとともに、受信された反射波の情報を受信する。車外情報検出ユニット7400は、受信した情報に基づいて、人、車、障害物、標識又は路面上の文字等の物体検出処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、降雨、霧又は路面状況等を認識する環境認識処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、車外の物体までの距離を算出してもよい。
また、車外情報検出ユニット7400は、受信した画像データに基づいて、人、車、障害物、標識又は路面上の文字等を認識する画像認識処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した画像データに対して歪補正又は位置合わせ等の処理を行うとともに、異なる撮像部7410により撮像された画像データを合成して、俯瞰画像又はパノラマ画像を生成してもよい。車外情報検出ユニット7400は、異なる撮像部7410により撮像された画像データを用いて、視点変換処理を行ってもよい。
車内情報検出ユニット7500は、車内の情報を検出する。車内情報検出ユニット7500には、例えば、運転者の状態を検出する運転者状態検出部7510が接続される。運転者状態検出部7510は、運転者を撮像するカメラ、運転者の生体情報を検出する生体センサ又は車室内の音声を集音するマイク等を含んでもよい。生体センサは、例えば、座面又はステアリングホイール等に設けられ、座席に座った搭乗者又はステアリングホイールを握る運転者の生体情報を検出する。車内情報検出ユニット7500は、運転者状態検出部7510から入力される検出情報に基づいて、運転者の疲労度合い又は集中度合いを算出してもよいし、運転者が居眠りをしていないかを判別してもよい。車内情報検出ユニット7500は、集音された音声信号に対してノイズキャンセリング処理等の処理を行ってもよい。
統合制御ユニット7600は、各種プログラムにしたがって車両制御システム7000内の動作全般を制御する。統合制御ユニット7600には、入力部7800が接続されている。入力部7800は、例えば、タッチパネル、ボタン、マイクロフォン、スイッチ又はレバー等、搭乗者によって入力操作され得る装置によって実現される。統合制御ユニット7600には、マイクロフォンにより入力される音声を音声認識することにより得たデータが入力されてもよい。入力部7800は、例えば、赤外線又はその他の電波を利用したリモートコントロール装置であってもよいし、車両制御システム7000の操作に対応した携帯電話又はPDA(Personal Digital Assistant)等の外部接続機器であってもよい。入力部7800は、例えばカメラであってもよく、その場合搭乗者はジェスチャにより情報を入力することができる。あるいは、搭乗者が装着したウェアラブル装置の動きを検出することで得られたデータが入力されてもよい。さらに、入力部7800は、例えば、上記の入力部7800を用いて搭乗者等により入力された情報に基づいて入力信号を生成し、統合制御ユニット7600に出力する入力制御回路などを含んでもよい。搭乗者等は、この入力部7800を操作することにより、車両制御システム7000に対して各種のデータを入力したり処理動作を指示したりする。
記憶部7690は、マイクロコンピュータにより実行される各種プログラムを記憶するROM(Read Only Memory)、及び各種パラメータ、演算結果又はセンサ値等を記憶するRAM(Random Access Memory)を含んでいてもよい。また、記憶部7690は、HDD(Hard Disc Drive)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等によって実現してもよい。
汎用通信I/F7620は、外部環境7750に存在する様々な機器との間の通信を仲介する汎用的な通信I/Fである。汎用通信I/F7620は、GSM(登録商標)(Global System of Mobile communications)、WiMAX(登録商標)、LTE(登録商標)(Long Term Evolution)若しくはLTE-A(LTE-Advanced)などのセルラー通信プロトコル、又は無線LAN(Wi-Fi(登録商標)ともいう)、Bluetooth(登録商標)などのその他の無線通信プロトコルを実装してよい。汎用通信I/F7620は、例えば、基地局又はアクセスポイントを介して、外部ネットワーク(例えば、インターネット、クラウドネットワーク又は事業者固有のネットワーク)上に存在する機器(例えば、アプリケーションサーバ又は制御サーバ)へ接続してもよい。また、汎用通信I/F7620は、例えばP2P(Peer To Peer)技術を用いて、車両の近傍に存在する端末(例えば、運転者、歩行者若しくは店舗の端末、又はMTC(Machine Type Communication)端末)と接続してもよい。
専用通信I/F7630は、車両における使用を目的として策定された通信プロトコルをサポートする通信I/Fである。専用通信I/F7630は、例えば、下位レイヤのIEEE802.11pと上位レイヤのIEEE1609との組合せであるWAVE(Wireless Access in Vehicle Environment)、DSRC(Dedicated Short Range Communications)、又はセルラー通信プロトコルといった標準プロトコルを実装してよい。専用通信I/F7630は、典型的には、車車間(Vehicle to Vehicle)通信、路車間(Vehicle to Infrastructure)通信、車両と家との間(Vehicle to Home)の通信及び歩車間(Vehicle to Pedestrian)通信のうちの1つ以上を含む概念であるV2X通信を遂行する。
測位部7640は、例えば、GNSS(Global Navigation Satellite System)衛星からのGNSS信号(例えば、GPS(Global Positioning System)衛星からのGPS信号)を受信して測位を実行し、車両の緯度、経度及び高度を含む位置情報を生成する。なお、測位部7640は、無線アクセスポイントとの信号の交換により現在位置を特定してもよく、又は測位機能を有する携帯電話、PHS若しくはスマートフォンといった端末から位置情報を取得してもよい。
ビーコン受信部7650は、例えば、道路上に設置された無線局等から発信される電波あるいは電磁波を受信し、現在位置、渋滞、通行止め又は所要時間等の情報を取得する。なお、ビーコン受信部7650の機能は、上述した専用通信I/F7630に含まれてもよい。
車内機器I/F7660は、マイクロコンピュータ7610と車内に存在する様々な車内機器7760との間の接続を仲介する通信インタフェースである。車内機器I/F7660は、無線LAN、Bluetooth(登録商標)、NFC(Near Field Communication)又はWUSB(Wireless USB)といった無線通信プロトコルを用いて無線接続を確立してもよい。また、車内機器I/F7660は、図示しない接続端子(及び、必要であればケーブル)を介して、USB(Universal Serial Bus)、HDMI(登録商標)(High-Definition Multimedia Interface、又はMHL(Mobile High-definition Link)等の有線接続を確立してもよい。車内機器7760は、例えば、搭乗者が有するモバイル機器若しくはウェアラブル機器、又は車両に搬入され若しくは取り付けられる情報機器のうちの少なくとも1つを含んでいてもよい。また、車内機器7760は、任意の目的地までの経路探索を行うナビゲーション装置を含んでいてもよい。車内機器I/F7660は、これらの車内機器7760との間で、制御信号又はデータ信号を交換する。
車載ネットワークI/F7680は、マイクロコンピュータ7610と通信ネットワーク7010との間の通信を仲介するインタフェースである。車載ネットワークI/F7680は、通信ネットワーク7010によりサポートされる所定のプロトコルに則して、信号等を送受信する。
統合制御ユニット7600のマイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、各種プログラムにしたがって、車両制御システム7000を制御する。例えば、マイクロコンピュータ7610は、取得される車内外の情報に基づいて、駆動力発生装置、ステアリング機構又は制動装置の制御目標値を演算し、駆動系制御ユニット7100に対して制御指令を出力してもよい。例えば、マイクロコンピュータ7610は、車両の衝突回避あるいは衝撃緩和、車間距離に基づく追従走行、車速維持走行、車両の衝突警告、又は車両のレーン逸脱警告等を含むADAS(Advanced Driver Assistance System)の機能実現を目的とした協調制御を行ってもよい。また、マイクロコンピュータ7610は、取得される車両の周囲の情報に基づいて駆動力発生装置、ステアリング機構又は制動装置等を制御することにより、運転者の操作に拠らずに自律的に走行する自動運転等を目的とした協調制御を行ってもよい。
マイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、車両と周辺の構造物や人物等の物体との間の3次元距離情報を生成し、車両の現在位置の周辺情報を含むローカル地図情報を作成してもよい。また、マイクロコンピュータ7610は、取得される情報に基づき、車両の衝突、歩行者等の近接又は通行止めの道路への進入等の危険を予測し、警告用信号を生成してもよい。警告用信号は、例えば、警告音を発生させたり、警告ランプを点灯させたりするための信号であってよい。
音声画像出力部7670は、車両の搭乗者又は車外に対して、視覚的又は聴覚的に情報を通知することが可能な出力装置へ音声及び画像のうちの少なくとも一方の出力信号を送信する。図23の例では、出力装置として、オーディオスピーカ7710、表示部7720及びインストルメントパネル7730が例示されている。表示部7720は、例えば、オンボードディスプレイ及びヘッドアップディスプレイの少なくとも一つを含んでいてもよい。表示部7720は、AR(Augmented Reality)表示機能を有していてもよい。出力装置は、これらの装置以外の、ヘッドホン、搭乗者が装着する眼鏡型ディスプレイ等のウェアラブルデバイス、プロジェクタ又はランプ等の他の装置であってもよい。出力装置が表示装置の場合、表示装置は、マイクロコンピュータ7610が行った各種処理により得られた結果又は他の制御ユニットから受信された情報を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。また、出力装置が音声出力装置の場合、音声出力装置は、再生された音声データ又は音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。
なお、図23に示した例において、通信ネットワーク7010を介して接続された少なくとも二つの制御ユニットが一つの制御ユニットとして一体化されてもよい。あるいは、個々の制御ユニットが、複数の制御ユニットにより構成されてもよい。さらに、車両制御システム7000が、図示されていない別の制御ユニットを備えてもよい。また、上記の説明において、いずれかの制御ユニットが担う機能の一部又は全部を、他の制御ユニットに持たせてもよい。つまり、通信ネットワーク7010を介して情報の送受信がされるようになっていれば、所定の演算処理が、いずれかの制御ユニットで行われるようになってもよい。同様に、いずれかの制御ユニットに接続されているセンサ又は装置が、他の制御ユニットに接続されるとともに、複数の制御ユニットが、通信ネットワーク7010を介して相互に検出情報を送受信してもよい。
なお、図1を用いて説明した本実施形態に係る情報処理装置1の各機能を実現するためのコンピュータプログラムを、いずれかの制御ユニット等に実装することができる。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体を提供することもできる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
以上説明した車両制御システム7000において、図1を用いて説明した本実施形態に係る情報処理装置1は、図23に示した応用例の統合制御ユニット7600に適用することができる。例えば、情報処理装置1の各構成要素は、統合制御ユニット7600のマイクロコンピュータ7610、記憶部7690、車載ネットワークI/F7680に相当する。例えば、統合制御ユニット7600が地図生成及び自己位置推定をすることにより、自動運転、自律移動の補助をすることができる。
また、図1を用いて説明した情報処理装置1の少なくとも一部の構成要素は、図23に示した統合制御ユニット7600のためのモジュール(例えば、一つのダイで構成される集積回路モジュール)において実現されてもよい。あるいは、図1、図22等を用いて説明した情報処理装置100が、図23に示した車両制御システム7000の複数の制御ユニットによって実現されてもよい。また、出力部116として、例えば、表示部7720を用いてもよい。
前述した実施形態は、以下のような形態としてもよい。
(1)
プロセッサを備え、
前記プロセッサは、
移動装置に搭載された測距センサから得られる点群データと、前記点群データの示す測距対象までの距離又は方向の少なくともいずれか1以上の条件と、に基づいて、それぞれ異なる前記点群データを用いた少なくとも2以上の地図を生成する、
情報処理装置。
プロセッサを備え、
前記プロセッサは、
移動装置に搭載された測距センサから得られる点群データと、前記点群データの示す測距対象までの距離又は方向の少なくともいずれか1以上の条件と、に基づいて、それぞれ異なる前記点群データを用いた少なくとも2以上の地図を生成する、
情報処理装置。
(2)
前記プロセッサは、
前記点群データに対して、前記距離又は方向に基づいてフィルタ処理を実行し、
フィルタ処理を実行された前記点群データに基づいて前記2以上の地図を生成する、
(1)に記載の情報処理装置。
前記プロセッサは、
前記点群データに対して、前記距離又は方向に基づいてフィルタ処理を実行し、
フィルタ処理を実行された前記点群データに基づいて前記2以上の地図を生成する、
(1)に記載の情報処理装置。
(3)
前記プロセッサは、
前記点群データを所定距離と比較し、
前記所定距離より近い距離の第1点群データから第1地図を生成し、
前記所定距離より遠い距離の第2点群データから第2地図を生成する、
(2)に記載の情報処理装置。
前記プロセッサは、
前記点群データを所定距離と比較し、
前記所定距離より近い距離の第1点群データから第1地図を生成し、
前記所定距離より遠い距離の第2点群データから第2地図を生成する、
(2)に記載の情報処理装置。
(4)
前記プロセッサは、
前記第1点群データ及び前記第2点群データの双方を含むフィルタ処理をしていない前記点群データから第3地図を生成する、
(3)に記載の情報処理装置。
前記プロセッサは、
前記第1点群データ及び前記第2点群データの双方を含むフィルタ処理をしていない前記点群データから第3地図を生成する、
(3)に記載の情報処理装置。
(5)
前記プロセッサは、
前記第3地図に基づいて、前記第1地図の歪み及び前記第2地図の歪みを補正する、
(4)に記載の情報処理装置。
前記プロセッサは、
前記第3地図に基づいて、前記第1地図の歪み及び前記第2地図の歪みを補正する、
(4)に記載の情報処理装置。
(6)
前記プロセッサは、
補正された前記第1地図及び補正された前記第2地図の差異を抽出する、
(5)に記載の情報処理装置。
前記プロセッサは、
補正された前記第1地図及び補正された前記第2地図の差異を抽出する、
(5)に記載の情報処理装置。
(7)
前記プロセッサは、
抽出された前記差異を前記第3地図に描画する、
(6)に記載の情報処理装置。
前記プロセッサは、
抽出された前記差異を前記第3地図に描画する、
(6)に記載の情報処理装置。
(8)
前記プロセッサからの要求にしたがい表示をする、表示装置、
をさらに備え、
前記プロセッサは、
前記表示装置に、前記差異が描画された前記第3地図を前記表示装置に表示し、
ユーザからの処理を受け付ける、
(7)に記載の情報処理装置。
前記プロセッサからの要求にしたがい表示をする、表示装置、
をさらに備え、
前記プロセッサは、
前記表示装置に、前記差異が描画された前記第3地図を前記表示装置に表示し、
ユーザからの処理を受け付ける、
(7)に記載の情報処理装置。
(9)
前記プロセッサにユーザからの要求を入力する、入力インタフェース
をさらに備え、
前記プロセッサは、
前記第3地図に対して、前記入力インタフェースを介して受け付けた処理を実行して更新する、
(8)に記載の情報処理装置。
前記プロセッサにユーザからの要求を入力する、入力インタフェース
をさらに備え、
前記プロセッサは、
前記第3地図に対して、前記入力インタフェースを介して受け付けた処理を実行して更新する、
(8)に記載の情報処理装置。
(10)
前記プロセッサは、
更新された前記第3地図に基づいて、前記移動装置の自己位置推定を行う、
(9)に記載の情報処理装置。
前記プロセッサは、
更新された前記第3地図に基づいて、前記移動装置の自己位置推定を行う、
(9)に記載の情報処理装置。
(11)
前記プロセッサは、
抽出された前記差異に基づいて、前記第3地図を修正して更新する、
(6)から(10)のいずれかに記載の情報処理装置。
前記プロセッサは、
抽出された前記差異に基づいて、前記第3地図を修正して更新する、
(6)から(10)のいずれかに記載の情報処理装置。
(12)
前記プロセッサは、
少なくとも、前記第1地図に基づく自己位置推定結果と、前記第2地図に基づく自己位置推定結果と、を統合して自己位置推定を実行する、
(3)に記載の情報処理装置。
前記プロセッサは、
少なくとも、前記第1地図に基づく自己位置推定結果と、前記第2地図に基づく自己位置推定結果と、を統合して自己位置推定を実行する、
(3)に記載の情報処理装置。
(13)
前記プロセッサは、
拡張カルマンフィルタを用いて、前記第1地図に基づく自己位置推定結果と、前記第2地図に基づく自己位置推定結果と、を統合する、
(12)に記載の情報処理装置。
前記プロセッサは、
拡張カルマンフィルタを用いて、前記第1地図に基づく自己位置推定結果と、前記第2地図に基づく自己位置推定結果と、を統合する、
(12)に記載の情報処理装置。
(14)
前記プロセッサは、
前記第1地図と前記第2地図の差異点に対応する前記第3地図上の地点に、前記差異点が検出可能な距離をラベルとして設定する、
(3)に記載の情報処理装置。
前記プロセッサは、
前記第1地図と前記第2地図の差異点に対応する前記第3地図上の地点に、前記差異点が検出可能な距離をラベルとして設定する、
(3)に記載の情報処理装置。
(15)
前記プロセッサは、
前記差異点に基づいて自己位置推定を行う場合、前記差異点までの距離と前記差異点に設定されたラベルとに基づいて、自己位置推定を行うか否かを決定する、
(14)に記載の情報処理装置。
前記プロセッサは、
前記差異点に基づいて自己位置推定を行う場合、前記差異点までの距離と前記差異点に設定されたラベルとに基づいて、自己位置推定を行うか否かを決定する、
(14)に記載の情報処理装置。
(16)
プロセッサにより、(1)から(15)のいずれかに記載の地図を生成する、
情報処理方法。
プロセッサにより、(1)から(15)のいずれかに記載の地図を生成する、
情報処理方法。
(17)
プロセッサに、(1)から(15)のいずれかに記載の地図を生成させる、
プログラム。
プロセッサに、(1)から(15)のいずれかに記載の地図を生成させる、
プログラム。
本開示の態様は、前述した実施形態に限定されるものではなく、想到しうる種々の変形も含むものであり、本開示の効果も前述の内容に限定されるものではない。各実施形態における構成要素は、適切に組み合わされて適用されてもよい。すなわち、特許請求の範囲に規定された内容及びその均等物から導き出される本開示の概念的な思想と趣旨を逸脱しない範囲で種々の追加、変更及び部分的削除が可能である。
1:情報処理装置、
100:フィルタ、
102:記憶部、
104:第1生成部、
106:第2生成部、
108:第3生成部、
110:補正部、
112:比較部、
114:合成部、
116:出力部、
118:入力部、
120:更新部
100:フィルタ、
102:記憶部、
104:第1生成部、
106:第2生成部、
108:第3生成部、
110:補正部、
112:比較部、
114:合成部、
116:出力部、
118:入力部、
120:更新部
Claims (17)
- プロセッサを備え、
前記プロセッサは、
移動装置に搭載された測距センサから得られる点群データと、前記点群データの示す測距対象までの距離又は方向の少なくともいずれか1以上の条件と、に基づいて、それぞれ異なる前記点群データを用いた少なくとも2以上の地図を生成する、
情報処理装置。 - 前記プロセッサは、
前記点群データに対して、前記距離又は方向に基づいてフィルタ処理を実行し、
フィルタ処理を実行された前記点群データに基づいて前記2以上の地図を生成する、
請求項1に記載の情報処理装置。 - 前記プロセッサは、
前記点群データを所定距離と比較し、
前記所定距離より近い距離の第1点群データから第1地図を生成し、
前記所定距離より遠い距離の第2点群データから第2地図を生成する、
請求項2に記載の情報処理装置。 - 前記プロセッサは、
前記第1点群データ及び前記第2点群データの双方を含むフィルタ処理をしていない前記点群データから第3地図を生成する、
請求項3に記載の情報処理装置。 - 前記プロセッサは、
前記第3地図に基づいて、前記第1地図の歪み及び前記第2地図の歪みを補正する、
請求項4に記載の情報処理装置。 - 前記プロセッサは、
補正された前記第1地図及び補正された前記第2地図の差異を抽出する、
請求項5に記載の情報処理装置。 - 前記プロセッサは、
抽出された前記差異を前記第3地図に描画する、
請求項6に記載の情報処理装置。 - 前記プロセッサからの要求にしたがい表示をする、表示装置、
をさらに備え、
前記プロセッサは、
前記表示装置に、前記差異が描画された前記第3地図を前記表示装置に表示し、
ユーザからの処理を受け付ける、
請求項7に記載の情報処理装置。 - 前記プロセッサにユーザからの要求を入力する、入力インタフェース
をさらに備え、
前記プロセッサは、
前記第3地図に対して、前記入力インタフェースを介して受け付けた処理を実行して更新する、
請求項8に記載の情報処理装置。 - 前記プロセッサは、
更新された前記第3地図に基づいて、前記移動装置の自己位置推定を行う、
請求項9に記載の情報処理装置。 - 前記プロセッサは、
抽出された前記差異に基づいて、前記第3地図を修正して更新する、
請求項6に記載の情報処理装置。 - 前記プロセッサは、
少なくとも、前記第1地図に基づく自己位置推定結果と、前記第2地図に基づく自己位置推定結果と、を統合して自己位置推定を実行する、
請求項3に記載の情報処理装置。 - 前記プロセッサは、
拡張カルマンフィルタを用いて、前記第1地図に基づく自己位置推定結果と、前記第2地図に基づく自己位置推定結果と、を統合する、
請求項12に記載の情報処理装置。 - 前記プロセッサは、
前記第1地図と前記第2地図の差異点に対応する前記第3地図上の地点に、前記差異点が検出可能な距離をラベルとして設定する、
請求項3に記載の情報処理装置。 - 前記プロセッサは、
前記差異点に基づいて自己位置推定を行う場合、前記差異点までの距離と前記差異点に設定されたラベルとに基づいて、自己位置推定を行うか否かを決定する、
請求項14に記載の情報処理装置。 - プロセッサにより、移動装置に搭載された測距センサから得られる点群データと、前記点群データの示す測距対象までの距離又は方向の少なくともいずれか1以上の条件と、に基づいて、それぞれ異なる前記点群データを用いた少なくとも2以上の地図を生成する、
情報処理方法。 - プロセッサに、
移動装置に搭載された測距センサから得られる点群データと、前記点群データの示す測距対象までの距離又は方向の少なくともいずれか1以上の条件と、に基づいて、それぞれ異なる前記点群データを用いた少なくとも2以上の地図を生成させる、
プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020127444A JP2023122597A (ja) | 2020-07-28 | 2020-07-28 | 情報処理装置、情報処理方法及びプログラム |
PCT/JP2021/023757 WO2022024602A1 (ja) | 2020-07-28 | 2021-06-23 | 情報処理装置、情報処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020127444A JP2023122597A (ja) | 2020-07-28 | 2020-07-28 | 情報処理装置、情報処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023122597A true JP2023122597A (ja) | 2023-09-04 |
Family
ID=80035472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020127444A Pending JP2023122597A (ja) | 2020-07-28 | 2020-07-28 | 情報処理装置、情報処理方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2023122597A (ja) |
WO (1) | WO2022024602A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7424438B1 (ja) | 2022-09-22 | 2024-01-30 | いすゞ自動車株式会社 | 車両位置推定装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6867120B2 (ja) * | 2016-07-28 | 2021-04-28 | シャープ株式会社 | 地図作成方法及び地図作成装置 |
JP7032062B2 (ja) * | 2017-06-02 | 2022-03-08 | 株式会社Ihi | 点群データ処理装置、移動ロボット、移動ロボットシステム、および点群データ処理方法 |
JP7243014B2 (ja) * | 2018-03-28 | 2023-03-22 | 日本電産シンポ株式会社 | 移動体 |
JP7153511B2 (ja) * | 2018-09-04 | 2022-10-14 | 株式会社Ihi | 自己位置推定装置 |
-
2020
- 2020-07-28 JP JP2020127444A patent/JP2023122597A/ja active Pending
-
2021
- 2021-06-23 WO PCT/JP2021/023757 patent/WO2022024602A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2022024602A1 (ja) | 2022-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11531354B2 (en) | Image processing apparatus and image processing method | |
US11860640B2 (en) | Signal processing device and signal processing method, program, and mobile body | |
US10753757B2 (en) | Information processing apparatus and information processing method | |
JP2019045892A (ja) | 情報処理装置、情報処理方法、プログラム、及び、移動体 | |
WO2017057055A1 (ja) | 情報処理装置、情報端末、及び、情報処理方法 | |
JP7294148B2 (ja) | キャリブレーション装置とキャリブレーション方法およびプログラム | |
US20200241549A1 (en) | Information processing apparatus, moving apparatus, and method, and program | |
US11915452B2 (en) | Information processing device and information processing method | |
WO2017212928A1 (ja) | 画像処理装置、画像処理方法、および車両 | |
US11501461B2 (en) | Controller, control method, and program | |
WO2020116195A1 (ja) | 情報処理装置、情報処理方法、プログラム、移動体制御装置、及び、移動体 | |
CN112119282A (zh) | 信息处理装置、移动装置、方法和程序 | |
CN110691986A (zh) | 用于计算机视觉的设备、方法和计算机程序 | |
US20220292296A1 (en) | Information processing device, information processing method, and program | |
WO2022024602A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
US20220308200A1 (en) | Radar data determination circuitry and radar data determination method | |
JP7363890B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
US20210295563A1 (en) | Image processing apparatus, image processing method, and program | |
US20210042886A1 (en) | Image processing apparatus, image processing method, and program | |
WO2022196316A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
WO2022059489A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
WO2020195969A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
US20230119187A1 (en) | Circuitry and method | |
WO2022044830A1 (ja) | 情報処理装置、および情報処理方法 | |
US20230316546A1 (en) | Camera-radar fusion using correspondences |