JP6639734B2 - マップデータ生成装置および方法 - Google Patents

マップデータ生成装置および方法 Download PDF

Info

Publication number
JP6639734B2
JP6639734B2 JP2019511060A JP2019511060A JP6639734B2 JP 6639734 B2 JP6639734 B2 JP 6639734B2 JP 2019511060 A JP2019511060 A JP 2019511060A JP 2019511060 A JP2019511060 A JP 2019511060A JP 6639734 B2 JP6639734 B2 JP 6639734B2
Authority
JP
Japan
Prior art keywords
data
map data
time
processing unit
map
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.)
Active
Application number
JP2019511060A
Other languages
English (en)
Other versions
JPWO2018185972A1 (ja
Inventor
麻美 成瀬
麻美 成瀬
清高 渡邊
清高 渡邊
亮輔 川西
亮輔 川西
麻里奈 高坂
麻里奈 高坂
関 真規人
真規人 関
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2018185972A1 publication Critical patent/JPWO2018185972A1/ja
Application granted granted Critical
Publication of JP6639734B2 publication Critical patent/JP6639734B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C3/00Measuring distances in line of sight; Optical rangefinders
    • G01C3/02Details
    • G01C3/06Use of electric means to obtain final indication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3863Structures of map data
    • G01C21/3867Geometry of map features, e.g. shape points, polygons or for simplified maps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/61Scene description

Description

本発明は、3次元空間のマップデータを作成する技術に関する。
2次元の画像データから3次元のマップデータを作成する場合、それぞれ異なる位置から撮像され、撮像範囲の一部分が重なった画像データと、当該画像データ中の対象物までの距離データとからなる計測データ同士を合成して3次元のマップデータを作成することが一般的である。例えば、特許文献1では、2次元カメラと深度カメラから計測データ取得し、既存のマップデータと新しい計測データを対応づけるマッピング処理を繰り返すことで、マップデータを作成する技術が開示されている。
このようにマップデータを新たに取得した計測データで逐次更新して広範囲なマップデータを作成する場合、マッピングを更新していく途中で、マップデータの更新が適切に行われないことがある。例えば、計測中の空間を突然人が横切った場合や、計測データを取得する計測センサの移動する場所や速さが適切ではなくなった場合等に、マップデータの更新が適切に行われない。その結果、マップデータの更新が適切に行われないまま、その後も新たな計測データの情報を繋ぎ合せてマップを更新していくと、誤差が蓄積されてゆき、最終的に完成するマップデータの精度が低下することが一般的である。
国際公開第2012/106069号
特許文献1等に示された従来のマップデータの作成の仕方では、マップデータの作成中に更新が適切に行われなかった場合に、最初からマップデータの作成をやり直す必要がある。本発明はマップデータの作成途中で、誤差が発生した場合においても、最初からやり直すことなく、途中からマップデータの作成をやり直すことで、マップデータの作成を効率よく行うことを目的とする。
この発明に係るマップデータ生成装置は、連続的に撮像され、他の画像データの少なくとも一つと一部撮像範囲が重なる複数の2次元の画像データと、画像データ中の対象物までの距離データとを計測データとして取得する計測データ取得部18と、取得された計測データと、計測データを時系列に対応づけてデータベースに記憶する為の時刻データとを対応付けて記憶する計測データデータベースと、複数の計測データに基づいて作成された3次元のマップデータを計測データが取得される度に更新するマップデータ生成処理部と、順次更新される毎のマップデータと、マップデータが更新されたときに利用された計測データに対応する時刻データとを対応付けて記憶するマップデータデータベースと、所望の指定時刻の入力を受け付ける入力部と、入力部で受け付けた指定時刻を時刻データとして、マップデータデータベースに照合して指定時刻に対応するマップデータを特定する編集処理部とを備え、マップデータ生成処理部は、入力部で指定時刻が受け付けられた場合に、入力部で指定時刻が受け付けられた後に新たに取得された計測データを用いて、編集処理部により特定されたマップデータの更新をやり直すことを特徴とする。
本発明により、3次元のマップデータの作成を効率的に行うことができる。
本発明の実施の形態1によるマップデータ生成装置を示すブロック図である。 利用者が実施の形態1のマップデータ生成装置により計測対象をスキャンして3次元マップデータを作成している様子を示す平面図である。 本発明の実施の形態1のマップデータ生成処理部の内部処理を示すブロック図である。 図1のマップ生成装置の動作を示すフローチャートである。 マップ生成処理装置の構成を示すハードウェア構成図である。 本発明の実施の形態2によるマップデータ生成装置を示すブロック図である。 本発明の実施の形態2のマップデータ生成中の表示画面を示す図である。 本発明の実施の形態2によるマップデータ生成一時中断時の表示画面を示す図である。 本発明の実施の形態3によるマップデータ生成装置を示すブロック図である。 本発明の実施の形態3によるマップデータ生成一時中断時の表示画面を示すブロック図である。 本発明の実施の形態4によるマップデータ生成装置を示すブロック図である。 図11のマップデータ生成処理部の動作を示すフローチャートである。 本発明の実施の形態4によるマップデータ生成中の表示画面を示す図である。 本発明の実施の形態4によるマップデータ生成一時中断時の表示画面を示す図である。 本発明の実施の形態4によるマップデータ生成処理装置の動作を示すフローチャートである。 本発明の実施の形態4によるマップデータ生成中の表示画面を示す図である。 本発明の実施の形態4によるマップデータ生成一時中断時の表示画面を示す図である。 本発明の実施の形態5によるマップデータ生成一時中断時の表示画面を示す図である。 本発明の実施の形態5によるマップデータ生成処理装置の動作を示すフローチャートである。 本発明の実施の形態5によるマップデータ生成一時中断時の表示画面を示す図である。 本発明の実施の形態6によるマップデータ生成中の表示画面を示す図である。 本発明の実施の形態7によるマップデータ生成処理装置の動作を示すフローチャートである。 図22のステップS14の詳細なフローを示す図である。 本発明の実施の形態7によるマップデータ生成一時中断時の表示画面を示す図である。 本発明の実施の形態7によるマップデータ生成処理装置の動作を示すフローチャートである。 本発明の実施の形態7によるマップデータ生成中の表示画面を示す図である。
以下、この発明を実施するための形態について、図面を参照して説明する。
実施の形態1.
図1は、本発明の実施の形態1によるマップデータ生成装置1を含む構成を示すブロック図である。図1は、マップデータ生成装置1と、データ入力装置2と、入力装置3と、出力装置4とからなる。
データ入力装置2は、3次元のマップデータを作成する為の、計測対象の計測データと、その計測データがそれぞれ取得された位置である自己位置データを取得する。取得した計測データを計測データ取得部18に送信する。ここで、計測データは、画像データや、それぞれの画像データに対応する画像データ中の対象物までの距離の距離データ等、複数のデータからなる。画像データは、3次元のマップデータ作成対象を撮影したRGB画像等の2次元の画像データをいう。この画像データは連続的に撮像され、他の画像データの少なくとも一つと一部撮像範囲が重なる。画像データと対応する距離データは連続的に取得される。この連続的に取得される計測データのひとつひとつをフレームと呼ぶ。
距離データは、ToF(Time of Flight)方式、またはプロジェクタとカメラを用いたシステムによるパターン投光を利用したアクティブステレオ方式など、種々の方式で得たものである。自己位置データは、例えば並進・回転の6自由度に対応したデータである。GPSデータなどを自己位置データとして用いても良い。
データ入力装置2は、利用者が手で保持して歩きながら計測機器で計測データや自己位置データを取得するような装置でもよいし、台車等に設置した計測機器で、台車で動かすことによって計測データや自己位置データを取得するような装置でもよく、装置の形は限定されない。また、自己位置データとしては、マップデータ生成処理部11にてマップデータを作成する際に内部的に生成される自己位置推定データを用いても良い。
入力装置3は、キーボードやマウスのような入力装置であってよいし、タッチパネルのように画面を押すことで入力を受け付けるものでもよく、形式は限定されない。入力装置がマウスとなる場合は、後述する表示画面を通じてマウスで入力する。また、出力装置とは、ディスプレイ等をいい、作成するマップデータや作成中の計測データ等を表示するもので、画面表示できるものならなんでもよく限定されない。
図2は、利用者が実施の形態1のマップデータ生成装置により計測対象をスキャンして空間のマップデータを作成する様子を示す平面図である。図2に示すように、マップデータ生成処理装置1としてタブレットPCを用い、データ入力装置2をマップデータ生成処理装置1に固定した場合、利用者はマップデータ生成装置を手で保持して、移動したり回転したりすることができる。
すなわち、マップデータ生成装置の位置と向きは、並進・回転の6自由度で表すことができる。図2では、時刻t1からt2、t2からt3での利用者の位置を示す。利用者は、このように時刻t1からt3にかけて移動する。利用者は、データ入力装置2から、前の時刻の計測データと比べて一部重なる領域があるように、それぞれの時刻の計測データを取得する。
マップデータ生成処理装置1は、マップデータ生成処理部11、マップデータDB12、計測データDB13、編集処理部14、計測データ取得部18、入力部19、を有している。計測データ取得部18は、データ入力装置2で取得された計測データや自己位置データを取得して、マップデータ生成処理部11に送る。入力部19は入力装置から入力された信号を取得して編集処理部14へ送る。計測データDB13は取得された計測データと時刻とを対応付けて記憶する。ここで、マップデータDB12、計測データDB13とはマップデータデータベース、計測データデータベースをいう。
マップデータ生成処理部11は、取得した計測データから、計測対象の特徴を抽出し、その後抽出した特徴を用いてマッピング処理を行うことで、マップデータの作成及び更新を行う。マップデータDB12は、作成及び更新されたマップデータを、マップデータが作成及び更新されたときに利用される計測データに対応する時刻と対応付けて記憶する。このように時系列に対応づけてデータベースに記憶する為の時刻を今後、時刻データという。
編集処理部14は、入力装置3から入力された制御信号に基づいて、マップデータの作成及び更新の中断や再開等の編集処理を行う。詳細については後述する。ここで時刻データとは計測データとマップデータを対応づけるもので、どのマップデータがどの計測データで更新されているかを特定する為の情報である。時刻データの例は、計測データを取得した時刻、マップデータを更新した時刻、画像データを撮像した時刻等であり、計測データと、その計測データにより作成されたマップデータを対応付けるものであれば限定されない。時刻データと計測データが対応付けて計測データデータベースに記憶される。つまり画像データと距離データと時刻データが対応付けて記憶される。入力部19は入力装置3から受け付けた入力を取得する。
図3は、マップデータ生成処理部11の処理を細分化したブロック図である。マップデータ生成処理部11はさらに、特徴抽出部111、マッピング処理部112、データ格納処理部113から構成される。特徴抽出部111は、画像データから特徴の抽出を行う。特徴とは、形状的特徴やプリミティブ等をいう。例えば、形状的特徴は、稜線等の直線、頂点等の点、直線の方向、面の法線などをいう。
また、プリミティブは、例えば円、四角および球などをいう。特徴抽出方法として、頂点の抽出には、例えば曲率算出法を用いることができる。また、稜線の抽出には、例えばハフ変換法を用いることができる。さらに、プリミティブの抽出には、例えば、3次元モデルを利用したモデルフィッティング法を用いることができる。このように、一般的な方法で形状的特徴やプリミティブは抽出できる。
マッピング処理を行うマッピング処理部112は、抽出した特徴を用いて、撮影位置が異なり撮影範囲の一部が重なっている計測データを位置合わせして合成し、マップデータの作成および更新を行う。マッピング処理部112は、最初に計測データと撮像位置が異なり撮像範囲の一部が重なっている計測データを合成して、マップデータを作成する。
次にマッピング処理部112は、取得される計測データと取得される一つ前の計測データを合成して、作成されたマップデータを更新して順次マップデータを更新していく。順次更新していくことで、マップデータの範囲は広がっていき、広範囲の空間のマップデータを生成することができる。マッピング処理部は、このように少なくとも2つの計測データを合成し、それぞれの特徴を3次元空間上で対応付ける。
ここで、抽出した特徴を用いるとは、ふたつの計測データから共通した特徴を見つけることである。そして、マップデータ生成処理部11は、3次元空間上で計測データの特徴が重なるように座標変換する。例えば、マップデータ生成処理部11は、新しく得たフレームの計測データよりひとつ前の計測データを基準として、移動後の計測データ中の特徴が、移動前の計測データの特徴と重なるように、移動後の計測データを座標変換する。
ここの際、データ入力装置2の移動前に対する移動後の位置姿勢関係(自己位置データ)が得られる。自己位置データは、点や線、面などの特徴の少なくとも1種類を用いて変換行列を計算することで得ることができる。なお、マッピングに使用する計測データは計測データDB13から取得することができる。
また、データ格納処理部113は、データ入力装置2から得た計測データと、生成したマップデータとを、計測データDB13とマップデータDB12とに同一時刻データを付与して(同期して)新規に格納する。時刻データは、時系列的に計測データやマップデータと対応付けて記憶すればよく、計測データが取得された時刻を記憶して対応付けてもよいし、画像データが撮像された時刻を記憶して対応付けてもよい。
また、マップデータ生成処理部11は、編集処理部14から入力されるマップデータ生成に関する制御信号に基づき、マップデータ生成中断、再生成開始、生成終了処理を行う。詳細は後の処理の流れの説明にて述べる。さらに、マップデータ生成処理部11は、マップデータ生成処理を行うごとに、最新のマップデータおよび計測データを、出力装置4に出力する。計測データを表示させてもよいし、計測データとマップデータの両方を表示させてもよく限定されない。
マップデータDB12は、最新のマップデータを含む、過去に作成・更新したマップデータを、時刻データとともに格納するデータベースである。また、計測データDB13は、データ入力装置2によって取得した計測データを、時刻データとともに格納するデータベースである。
ここで、編集処理部14の説明前に、入力装置3と出力装置4について述べる。入力装置3は、マップデータ生成の開始、中断、生成を途中からやり直す時刻の指定、マップデータ再生成開始、生成終了など、マップデータ生成に関わる制御データを入力する。例えば、CUI(Character User Interface)などの入力インタフェースを通じてコマンドや文字列を入力する方法が挙げられる。また、CUIには限定されず、GUI(Graphical User Interface)を通じて入力してもよい。なお、GUIでの入力についての詳細は後述する。また、入力装置3で入力された制御データは入力部19で受け付けられる。
ここで、入力されるマップデータの生成をやり直したい時刻を指定時刻という。受け付けた指定時刻で後述する仕組みによりマップデータを更新する場合は、指定時刻を受け付けて更に再生ボタン等のボタンがおされてから、つまりマップデータの更新要求を受け付けた場合に、マップデータの生成をやり直すようにしてもよいし、指定時刻の受付をトリガーとしてマップデータの生成をやり直すようにしてもよい。ここでマップデータの生成をやり直すとは、マップデータの更新を途中の地点からやり直すことをいう。マップデータは更新されながら最終的なマップデータとなるが、このマップデータの作成を途中からやり直したい場合に、途中の地点に戻ってそこから、マップデータを更新し直して最終的なマップデータを完成させる。
出力装置4は、利用者がマップデータ生成に関わる制御データを入力するために必要な情報を出力する端末である。例えばタブレットPCであれば、入力装置3および出力装置4としてタッチパネル一体型のディスプレイを用いることができるが、この限りではない。
編集処理部14は、入力装置3から入力された制御信号に基づいて、マップデータの編集処理を行う。開始、中断、生成終了の制御信号の場合は、編集処理部14は、マップデータ生成処理部11に制御信号を送り、それぞれ開始、中断、生成終了の処理を実行させる。編集処理部14は、入力装置3から、マップデータのやり直し時刻である指定時刻が入力された場合は、その指定時刻を時刻データとして、対応する計測データを計測データDB13から特定し、対応するマップデータをマップデータDB12から特定する。図示されない描画処理部は、特定されたマップデータと計測データを出力装置4に出力する。
これらは、利用者が過去のやり直ししたい時点に戻るための手掛かりとして出力されるものである。このとき、描画処理部は、計測データか計測データとマップデータの両方を表示してもかまわない。例えば、図2において、現状の時刻が時刻t3で、指定時刻として時刻t1が指定されたとすると、出力装置4には指定時刻である時刻t1の時点の計測データが出力される。その計測データの情報をもとに、時刻t1の位置姿勢に近くなるように利用者がデータ入力装置2を移動する。
マップデータ再生成開始の信号を入力装置3から得た場合、それ以前に指定時刻の入力がなかった場合は、マップデータ生成処理部11はマップデータ生成を再開する。指定時刻の入力があった場合は、マップデータDB12および計測データDB13の当該指定時刻のマップデータおよび計測データを最新時刻としてそれ以降のデータを消去し、マップデータ生成処理部11はマップデータ生成を再開する。ただし指定された指定時刻以降のデータは使用せず残しておいてもかまわない。
図4は、図1のマップ生成装置の動作を示すフローチャートである。本実施の形態のマップデータ生成装置に関する全体の処理の流れを、図4のフローチャートを用いて説明する。処理を開始すると、マップデータ生成処理装置1の計測データ取得部18は、データ入力装置2から計測データを取得し(ステップS1)、計測データから特徴を抽出する(ステップS2)。次に、計測データと、連続する他の計測データの特徴を重ねあわせるマッピング処理を行う(ステップS3)。マッピング処理を行うことで3次元のマップデータを作成または更新する。複数の計測データに基づいて作成された3次元のマップデータを計測データが取得される度に更新する(ステップS4)。
マッピング処理時には、マップデータ生成処理部11は、計測データDB13から取得した最新の計測データと、データ入力装置2から取得した計測データとを合成してマップデータを作成もしくは更新する。合成する計測データの取得はこれに限定されず、計測データDB13から取得されたもの同士で合成してもよい。
そして、マップデータ生成処理装置11は、最新の計測データと作成または更新したマップデータを、同一の時刻データを付与してそれぞれマップデータDB12と計測データDB13に格納し、出力装置4に最新のマップデータを表示する(ステップS5)。マップデータの表示は必須ではなく、表示しなくともよい。その後、編集処理部14が入力装置3を通じてマップデータ生成中断の入力を受け付けているかを確認する(ステップS6)。マップデータ生成中断の入力がない場合は、マップデータ生成終了の入力を編集処理部14が受け付けているかを確認し(ステップS13)、なければ再び新しい計測データの取得を行い(ステップS1)、以後同じ処理を繰り返す。
入力部19が入力装置3からマップデータ生成中断の入力を受け付けた場合(ステップS6)は、編集処理部14は、マップデータ生成処理を中断する制御信号をマップデータ生成処理部11に送り、マップデータ生成処理部11は現在進行している計測データによるマップデータ生成・更新処理を終わらせた後、新たなマップデータ更新を停止し、入力装置3からの新たな入力を待つ(ステップS7)。入力部19がマップデータ生成をやり直す時刻(指定時刻)の入力を入力装置3から受け付けた場合(ステップS8)描画処理部は、入力された指定時刻を時刻データとして計測データDB13から対応する計測データを取得し、出力装置4に出力する(ステップS9)。
入力部19が、入力装置3から再生成開始の入力を受け付けるまで(ステップS11)、編集処理部14は、指定時刻の入力受付(ステップS8)があれば計測データの出力装置4への出力(ステップS9)を繰り返す。このときデータ入力装置2は、出力された指定時刻の計測データを確認した利用者により、それを手掛かりに、次に新しく取得される計測データが、指定時刻の計測データに一部重ると推定される位置まで、入力装置3は移動される(ステップS10)。
再生成開始の入力を入力部19が受け付けると(ステップS11)、マップデータ生成処理部11は指定時刻を時刻データとしてマップデータDB12と計測データDB13に照合して対応するマップデータおよび計測データを特定し、特定されたマップデータおよび計測データをマップデータDB12および計測データDB13内で最新のデータとして設定し、その後、当該時刻以降のマップデータDB12および計測データDB13内のマップデータと計測データを消去するなどの編集処理を実行する(ステップS12)。
その後、入力部19がマップデータ生成終了の入力を入力装置3から受け付けない場合、ステップS1に戻り、マップデータ生成処理部11は、入力部19で指定時刻が受け付けられた後に新たに取得された計測データを用いて、編集処理部14により特定されたマップデータの作成をやり直す。
入力部19で指定時刻が受け付けられた場合に、入力装置3からマップデータ生成処理の終了を指示する入力を入力部19が受付けると、マップデータ生成処理部11はマップデータ生成処理を終了する(ステップS13)。ここでは、指定時刻の入力とマップデータ更新要求である再生成開始の入力をトリガーとしてマップデータの更新処理をしているが、これに限定されるものではなく、指定時刻の入力をトリガーとしてマップデータを更新するようにしてもよい。
このようなマップデータ生成装置によれば、利用者がマップデータ生成途中にマップデータの更新に誤差の発生等を確認して更新が適切に行われていないと判断した場合、過去(誤差が発生する前)の時刻のマップデータを再び取得し、その時点から新たに計測データを合成し、マップデータを再生成できる。そのことにより、最初からマップデータ生成をやり直したり、マップデータ生成後にマップデータの編集を行ったりすることなく、利用者のマップデータ生成作業を効率化することができる。
なお、実施の形態1のマップデータ生成装置におけるマップデータ生成処理開始は、入力装置3からマップデータ生成開始の制御信号が入力されてから開始しても、マップデータ生成装置でシステムを起動してからすぐにマップデータ生成を開始しても良い。また、マッピング処理のステップS3は、特徴の抽出ステップS2にて十分な特徴が取得されなかった場合(閾値を設定し、ある閾値に満たない場合)に、その後の処理は実施せず、ステップS1に再び戻っても良い。
マップデータ生成中における最新マップデータ(および計測データ)の出力装置4への出力はなくてもよく、代わりにマップデータ生成中断時において出力装置4に最新のマップデータを表示しても良い。すなわち、利用者に対して、マップデータ生成中に出力装置4へ常に最新マップデータをフィードバックせず、マップデータ生成を一時中断した場合にのみフィードバックするようにしてもよい。
さらに、計測データ取得部18は、予め取得されていた計測データ・自己位置データを読み込んで、マップデータ生成処理部11に入力してもいい。この場合、計測データや自己位置データが記憶される場所はクラウド上でもよく場所は限定されない。ステップS8において指定時刻が入力された後、データ入力装置2を移動させて新たな計測データを取得するとは、記憶されてある指定時刻の計測データとつながる他の計測データからマップデータを更新するものも含む概念である。
図5はマップ生成処理装置1の構成を示すハードウェア構成図である。本マップ生成処理装置は入力インタフェース21、CPU(Central Processing Unit)22、記憶装置23、出力インタフェース24とからなる。インタフェースは以降IFと表記する。マップデータDB12や計測データDB13等のデータは記憶装置23によって実現され、マップデータ生成処理部11、編集処理部14等の機能は、CPU22がプログラムを実行することによって実現される。計測データ取得部18や入力部19は入力IF、描画処理部は、出力IFからなる。
なお、IFはケーブル用ポートなどの有線ポート、USBポート、直接接続のポート、無線ネットワークのポートである。記憶装置23はHDDやSSD、フラッシュメモリなどの記憶媒体である。また、マップデータ生成装置1を構成するコンピュータとしては、例えばタブレットPC(板状パーソナルコンピュータ)やノートPCを用いることができる。
実施の形態2.
本実施の形態ではGUI(Graphical User Interface)を通じて、入力する方法についての方法を記載する。実施の形態1との違いは、GUIを描画する描画処理部15を有する部分である。それ以外のマップデータの作成および更新処理については実施の形態1と変わらない。
実施の形態1のマップデータ生成装置1では、利用者がマップデータ生成をやり直すために、指定時刻を指定する。そして、その時点の計測データやマップデータを確認して、やり直す時点として適切かどうか判断し、適切でなければ別の指定時刻を入力し、その時点からマップデータを再生成することを可能にする。しかし、利用者は適切な指定時刻を見つけるまで繰り返し指定時刻を入力する必要があり、入力操作が煩雑である。
この点に鑑み、本実施の形態では、指定時刻の入力をはじめとするマップデータ生成の制御を、GUIを用いて入力できるようにすることで、利用者が簡便に入力することを可能にする。その具体的方法について、以下に説明する。
図6は、本発明の実施の形態2によるマップデータ生成処理装置1Bを示すブロック図である。マップデータ生成処理装置1Bは、マップデータ生成処理装置1(図1)の構成に加えて、さらに入力イベント処理部16を有している。
描画処理部15は、マップデータ生成状況と、マップデータを編集するための入力手段、その他マップデータ生成を制御するために必要な入力手段をグラフィカルに画面として描画し、出力装置4に出力する処理を行う。描画処理部15は、画面を構成する画像部品を計算機上の論理座標系上に配置する。画像部品は例えば、ボタン、シークバーなどの操作インタフェースを示す画像部品や、計測データ、マップデータなどである。
操作インタフェースを示す画像部品は、描画処理部15内に予め格納されている。そして、描画処理部15は、一般的に普及している画像表示システムの座標変換方法によって物理座標系に座標変換し、ディスプレイなどの出力装置4に出力する。描画処理は、マップデータ生成処理部11や編集処理部14からの描画更新命令に従って行われる。描画内容については後述する。
入力イベント処置部16は、入力部19を介し出力装置4上の画像部品に対して入力された入力装置3からの利用者の操作を、操作イベントとして区別し、それぞれに割りつけられた制御信号を編集処理部14に送る。操作イベントの区別は、入力された物理座標系上の座標を論理座標系上の座標に変換することで操作された画像部品を特定し、その操作内容に応じた操作イベントを一般的に知られた方法で判別することにより行われる。そして、入力イベント処理部16は、操作イベントに対応した制御信号を編集処理部14に送る。なお、本実施の形態では、操作イベントおよび制御信号の情報は計算機上に記憶されている。
実施の形態2の編集処理部14は、入力イベント処理部16から送られた制御信号を元に、実施の形態1と同様の方法でマップデータ生成処理部11のマップデータ生成制御を行う。また、制御信号によっては、描画処理部15に対して描画更新命令を送る。
実施の形態2のマップデータ生成処理部11は、マップデータを生成した際に、最新の計測データとマップデータを描画処理部15に送る。また、指定時刻が入力された場合にも、指定時刻に対応する計測データやマップデータを画面に表示することで、利用者がマップデータの更新をやり直ししたい場所を、計測データやマップデータを確認して決めることができる。
ここで計測データとは、計測データ中の画像データをいい、利用者は画像データを確認することで、利用者がどの時刻にどの時点にいたかを判断することができる。以下、マップデータ生成処理装置1Bの処理の流れを、出力装置4に表示される画面例を用いて説明する。なお、マップデータ生成処理の内容については実施の形態1と同様である。
図7は、マップデータ生成中に、出力装置4にて描画される画面例である。描画部品は、シークバー41、マップデータ描画領域42、計測データ描画領域43、マップデータ生成の制御を行うための制御ボタン群44等がある。シークバー41は、スライダ411、バー412、マップデータ生成開始時刻413、マップデータ生成経過時刻414、指定時刻415の描画部品から構成されている。バー412が計測の時間軸を表している。バー412の下部には時刻情報が表示される。
この例では、左端に計測開始時刻413、右端にマップデータ生成開始から経過したトータル時間であるマップデータ生成経過時刻、バーが指し示す時刻である指定時刻415が表示されている。マップデータ生成開始時刻は「0:00」である。この例では、バー412の横幅は固定であり、マップデータ生成が継続される限り、マップデータ生成経過時刻414は一定時刻ごと、例えば1秒ごとに更新され、バー412の単位時間当たりの長さは変動してゆく。
スライダ411は、バー412上に表示されるものであり、左右に移動する。ただし、マップデータ生成中は、スライダ411は、ある時刻(例えばマップデータ生成経過時刻414)の位置に固定表示されている。または、非表示になっていても良い。スライダが左右に移動されることにより、指定時刻が受付けられ入力されるが、これに限定される訳ではなく、直接指定時刻を指定してもよいし、指定のされ方はなんでもよい。
マップデータ描画領域42には、マップデータ生成中において最新のマップデータ421aが表示される。マップデータ421aは、例えば3次元座標系のある座標から俯瞰した形で表示される。計測データ描画領域43には、マップデータ421を作成するために利用した最新の計測データ431(例えばRGB画像)を表示する。
これらマップデータ描画領域42、計測データ描画領域43は、マップデータ生成処理部11がマップデータを新たに生成した後のタイミングで、当該マップデータと計測データ、およびそれらの描画更新命令がマップデータ生成処理部11から描画処理部15に送られ、描画処理部15が描画を更新する。
マップデータ421は、描画処理部15がマップデータを3次元の論理座標系に配置し、ある3次元座標からの視点画像を生成したものである。マップデータ生成が進むにつれてマップデータ421の描画がマップデータ描画領域42に収まらなくなったときは、描画処理部15が3次元座標系の縮尺を調整するなどマップデータ421を縮小または拡大して描画する。
制御ボタン群44としては、マップデータの生成開始、中断、再生成開始、終了を表す制御ボタンが表示される。マップデータ生成中には、例えばマップデータ生成中断ボタン441、マップデータ生成終了ボタン442が表示されている。
マップデータ生成中断ボタン441が利用者により操作されると、入力部19を通じて入力イベント処理部16の処理を通じて編集処理部14がその制御信号を受け付け、編集処理部14はマップデータ生成処理部11にマップデータ生成を一時中断させ、マップデータ生成を過去のある時点からやり直すための指定時刻の指定画面を描画処理部15に指示し、当該画面が出力装置4に描画される。
図8は、マップデータ生成の一時中断時の表示画面(指定時刻の指定画面)の一例を示したものである。当該画面は、例として、シークバー41、マップデータ描画領域42、計測データ表示領域45、制御ボタン群44から構成されている。シークバー41のスライダ411は、マップデータ生成中断中には左右の並行移動が可能となり、利用者はスライダ411を操作することで、過去の戻りたい指定時刻を指定し、指定時刻が入力部19で受付けられる。このとき、当該指定時刻に最も近い計測データ432とマップデータ422を描画し、利用者に提示する。ここで計測データは主に画像データをいう。
つまり、指定時刻が受付けられた場合に、編集処理部14は、指定時刻を時刻データとして計測データデータベースに照合して前記画像データを特定し、描画処理部15は、編集集処理部で特定された画像データまたは編集処理部14で特定されたマップデータを画面に表示する。計測データ432は、本例ではスライダ411の上に配置された計測データ表示領域45に描画されるが、計測データ表示領域45はマップデータ描画領域42の横に表示してもよく、表示方法はこの限りではない。
スライダ411を操作した際の処理の流れを以下に示す。中断中に、入力イベント処理部16がスライダ411の移動を検知すると指定時刻の指定の操作イベントとして判別し、スライダ411の移動量を取得したのち制御信号とともに編集処理部14へ送る。編集処理部14は、描画処理部15にスライダ411の描画更新を命令する。
描画処理部15はスライダ411の描画位置を計算すると同時に、更新後の時刻をスライダ411の位置から算出し、編集処理部14に指定時刻を時刻データとして計測データDB13とマップデータDB12にそれぞれ照合して、指定時刻の計測データとマップデータを取得するよう要求する。
その後編集処理部14は、計測データDB13およびマップデータDB12から、当該時刻に最も近い計測データ432とマップデータ422を特定し、描画処理部15へ送る。これを受けて、描画処理部15はマップデータ422と計測データ432、および移動後のスライダ411を描画する。これらの一連の処理は、スライダ411の操作イベントが発生している間(移動している間)繰り返し実行される。
制御ボタン群には、上述のマップデータ生成終了ボタン442と、マップデータ再生成開始ボタン443が表示されている。マップデータ生成をやり直す指定時刻を利用者が決めたのち、実施の形態1と同様、データ入力装置2を移動させ、マップデータ再生成開始ボタン443を操作すると、マップデータ生成処理部11は、画面表示を生成中画面に切替え、かつシークバー41の描画を更新し、指定時刻を時刻データとして、その時点のマップデータから再び計測データの情報を繋ぎ合せ、マップデータを生成する。
ここで、マップデータ再生開始ボタン443が操作されるとは、マップデータ更新要求を受け付けることをいう。マップデータ更新要求を受け付けるやり方は限定されない。マップデータ生成処理部11が、描画処理部15により指定時刻で特定した画像データまたはマップデータが表示されている間に、入力部19でマップデータの更新を要求するマップデータ更新要求を受け付けた場合に、マップデータ更新要求を受け付けた時点からマップデータの作成をやり直す。シークバーの描画更新は、やり直し時刻がバー412の右端に位置するように再計算し、それに応じて描画しなおすことにより行う。
マップデータ再生成開始ボタンを操作した後の具体的な処理手順は、実施の形態1で示した内容、および本実施の形態2で述べた内容と同じである。このようなマップデータ生成装置によれば、マップデータ生成途中にマップデータに誤差を確認した場合、利用者はシークバーのスライダを移動させ、そのスライダ位置(時刻)に連動して表示される過去の計測データとマップデータを確認しながら、マップデータ生成をやり直す時刻を決定することができる。つまり、マップデータ生成入力を利用者が容易に行えるようになり、マップデータ生成作業の効率が向上する。
なお、実施の形態2のシークバー41のバー412の横幅(時間軸の長さ)は必ずしも固定である必要はなく、マップデータ生成時間が増加するたびに、バー412の表示を一定幅ずつ伸ばしていく表示でも良い。この場合、シークバー41の領域内にバー表示がおさまらない場合は、別途スクロールバーを設けてスクロール表示(マップデータ生成中は常に最新時刻を表示)しても良い。
また、マップデータ描画領域42に表示するマップデータ421、過去のマップデータ422は、ある決まった3次元座標の視点から固定表示する方法ではなく、データ入力装置2の自己位置データを用い、データ入力装置2の3次元座標および向きから観測され得るマップデータを描画処理部15が生成・描画しても良い。
さらに、指定時刻を指定する際、利用者への手掛かりとして、現在のデータ入力装置2の計測データを取得・表示し、指定時刻の計測データと比較しながら利用者が指定時刻の位置に戻れるようにしてもよい。なお、本実施の形態では実施の形態1と異なる部分を説明した。それ以外の部分については実施の形態1と同様であるとする。
実施の形態3.
実施の形態2のマップデータ生成装置は、マップデータ生成をやり直す時刻(指定時刻)を指定する際、利用者が過去の場所に戻るための手掛かりとして、指定された時刻の計測データ(画像データ)、マップデータを提示していた。しかし、これらの情報だけでは、利用者は計測データが撮影されたデータ入力装置2の位置姿勢を判断しづらく、適切な位置に戻るのに時間を要することがある。
この点に鑑み、本実施の形態では、データ入力装置2が移動した軌跡であり、データ入力装置2の位置情報である自己位置データを、マップデータ生成をやり直す時刻に戻る際に利用者に提示することで、指定した指定時刻の位置姿勢を容易に利用者に再現し、スムーズにマップデータ生成を再開できるようにする。その具体的な方法について、以下に説明する。
図9は、本実施の形態のブロック図である。マップデータ生成処理装置1Cは、実施の形態2の構成に加えて、自己位置データDB20を備えている。自己位置データDB20は、毎フレーム取得する自己位置データを時刻データと共に蓄積する。他の実施の形態との違いは、編集処理部14が、受け付けた指定時刻から自己位置データを特定し、描画処理部15が自己位置データを画面等の出力装置に表示することである。
処理方法としては、図4のフローチャートにおいて、マッピング処理を行った後に計測データ・マップデータを保存するステップS5と、指定時刻の計測データを出力するステップS9に処理が追加される。まずステップS5にて、マップデータ生成処理部11は、計測データDB13およびマップデータDB12に最新の計測データとマップデータを保存する際に、それらと同じ時刻データと当該フレームで得た自己位置データを、自己位置データDB20に蓄積する。
また、マップデータ生成処理を中断し、入力された指定時刻の計測データを出力するステップS9において、マップデータ上にデータ入力装置2の位置姿勢および撮影範囲を描画する処理を行う。編集処理部14は、指定時刻が入力されると、計測データ、マップデータとともに、指定時刻を時刻データとして自己位置データDB20に照合して、指定時刻の自己位置データを取得する。
画処理部15に、計測データ、マップデータとともにデータ入力装置2の位置姿勢の描画を命令し、自己位置データを送る。描画処理部15は、マップデータを描画した後、取得した自己位置データに基づき、マップデータ上にデータ入力装置2の位置姿勢を描画する。ここではマップデータと自己位置データが画面に表示されることとしたが、これに限定されるものでなく、自己位置データだけ、マップデータだけ画面に表示させてもよい。また計測データも画面に表示させてもよい。
図10は、本実施の形態におけるマップデータ生成の一時中断時の表示画面(指定時刻の指定画面)の一例を示したものである。図7の画面に加え、位置姿勢表示4231と計測範囲4232が描画される。並進・回転に対応する6自由度の自己位置データである場合、描画処理部15はデータ入力装置2を示す表示(位置姿勢表示4231)を3次元論理座標系上に描画する。さらに、描画処理部15は当該時刻の計測データ画像を3次元論理座標系上で投影し、その結果を計測範囲4232として描画し、出力装置4へ出力処理を行う。ここで自己位置データの位置情報とはデータ入力装置2の3次元上での位置だけでなく、データ入力装置2の姿勢までを含んだ概念である。
上記の処理により、利用者はマップデータ上に表示された指定時刻のデータ入力装置2の位置姿勢、および計測範囲を参考にすることで、戻る場所、再開時にデータ入力装置2で計測すべき領域の判断が容易になり、スムーズに当該時刻の場所まで移動し、マップデータ生成することができるようになる。
なお、描画処理部15の位置姿勢表示4231と計測範囲4232はどちらか一方を表示するだけでもかまわない。また、編集処理部14は、指定された時刻以前の自己位置データを取得し、描画処理部15にデータ入力装置2が指定時刻以前に移動した軌跡を含めて描画させてもよい。なお、本実施の形態では実施の形態1と2と異なる部分を説明した。それ以外の部分については実施の形態1と2と同様であるとする。
実施の形態4.
上記のマップデータ生成装置を用いた空間マップデータ計測では、利用者はマップデータに誤差が発生した時刻以前の時刻を指定するために、順次入力した時刻の計測データ、マップデータを毎回確認しながら、誤差が発生した時刻を探す。マップデータ誤差の発生要因の一つとしては、マッピング時に計測データ同士のマッチングができない(ロスト)状態になりマップデータ生成が中断した後に、マップデータの更新が続けられるので、環境によっては誤ったマッピング処理を行う場合が挙げられる。
このようにロスト発生してから再度更新処理したポイントでは、マップデータの更新に誤差が発生している可能性が高くなるが、現状では利用者はこの誤差が発生している部分を自力で探すしかない。例えば利用者は時系列の計測データやマップデータを見ながら探すことになり、どの時点でマップデータの更新に誤差が発生している可能性があるのかを自ら判断する必要があり、誤差を探し出すのに時間がかかる。
ロストとは計測データ同士がマッチングできず、当該計測データではマップデータの作成および更新が不可能な状態をいう。ロストがあった場合は、その後、ロストと判定されたときの計測データではない新たな計測データを受け付けてマップデータの作成および更新処理を続行する。
この点を鑑み、本実施の形態では、ロストを検知し、ロスト発生期間を利用者に表示することで、利用者がマップデータ誤差の発生可能性がある時刻を容易に把握し、指定時刻の指定をスムーズにできるようにする。
図11は、実施の形態4のマップ生成装置の構成例である。実施の形態3の構成に加え、マップデータ生成処理装置1Dとしてマッピング評価DB17を備えている。マッピング評価DB17は、ロスト発生成否を時刻データとともに時系列に格納する。他の実施の形態と異なる点は、マップデータ生成処理部11がロストを判定し、描画処理部15がロストを判定したことを画面等の出力装置に表示することである。ロストの判定は、計測データを取得する度に、取得された計測データ及び計測データと連続する他の計測データのそれぞれから複数の特徴を抽出して、複数の特徴のうちで一致する特徴の数である特徴一致数が閾値以下であるかどうかで判定する。詳細は後述する。
図12は、実施の形態4のマップデータ生成処理部11の動作を示すフローチャートである。本処理の流れを、図12のマップデータ生成処理部11の処理ステップを示すフローチャートを用いて説明する。図12は、図4の全体のフローチャートから一部を抜き出し、ロスト判定に関するステップ(ステップS31、ステップS32、ステップS51)を追加したものである。まずマップデータ生成処理部11は、計測データを取得し(ステップS1)、特徴抽出処理を実施する(ステップS2)。
ここで、マップデータ生成処理部11は、マッピング処理に最低限必要な数の特徴があるかどうかを判定し(ステップS21)、なければ再び計測データを取得し(ステップS1)、当該処理を行う。あれば、抽出した特徴を元にマッピング処理を実施する(ステップS3)。
この際、マップデータ生成処理部11は、計測データ同士を重ね合わせた際に、特徴点の一致度を算出する(ステップS31)。具体的には、マップデータ生成処理部11は、少なくとも2つの計測データから共通した特徴を見つけ、3次元空間上で各計測データの特徴が重なるように座標変換をした後、計測データ内の全特徴のうち共通した特徴の数(特徴一致数)を算出する。その後、マップデータ生成処理部11は、特徴一致数が閾値以下であるかどうかを判定することで、ロストが発生するか判定する(ステップS32)。
マップデータ生成処理部11は、閾値を超えていれば、マップデータの更新処理をし(ステップS4)、超えていなければ、ロストと判定し、最新の計測データおよびマップデータを時刻データとともに対応付けて保存するステップS5へ進む。ここで、ロストと判定された時刻には、前回処理と同じ(直前の時刻と同じ)マップデータを保存する。その後、マップデータ生成処理部11は、ステップS5と同じ時刻データを用いて、ロスト判定結果をマッピング評価DB17に保存する。
ロスト判定結果とは具体的には、時刻データを格納し、それに紐付ける形で、例えばロストが発生していなければ0、ロストが発生していれば1などの数値を格納する。そして、マップデータ生成処理部11は、現フレームの計測データとマップデータ、時刻データとともに、ロスト判定結果(0または1)を描画処理部15に送る。次に、描画処理部15の処理について説明する。
図13は、マップデータ生成中に出力装置4にて描画される画面例である。シークバー41内バー412上には、ロストが発生した時刻または期間を示すロスト表示部品4121が表示されている。描画処理部15は、ロスト判定結果がロスト発生を示すものであれば、バー412上の最新時刻位置にロスト表示部品4121を表示する。
描画処理部15は、例えば前回フレーム処理時のロスト判定結果を保持しており、前回フレームのロスト判定結果を参照して、ロスト状態が連続していれば、複数時間分に跨るロスト表示部品4121を描画する。離散的であれば、新たなロスト表示部品4121を描画する。これを、毎フレームの処理ごと、マップデータ生成時刻が増加するにつれて、実施の形態2と同様、バー412上の単位時間当たりの表示領域を調節しながら、描画を更新する。
次に、マップデータ生成を一時中断し、指定時刻を入力する際の処理について説明する。マップデータ生成が一時中断され、指定時刻が入力された際、編集処理部14は、上記の処理に加えて、マッピング評価DB17から格納されている全ての時刻データとロスト判定結果を取得する。その後、描画処理部15に一時中断画面の描画命令とともに、ロスト判定結果を送る。描画処理部15は、一時中断画面の描画処理を行う。
図14は、本実施の形態におけるマップデータ生成の一時中断時に出力装置4に描画される画面(指定時刻の指定画面)の一例を示したものである。シークバー41内バー412上には、ロストが発生した時刻または期間を示すロスト表示部品4121が表示されている。描画処理部15は、編集処理部14から送られた時刻データおよびロスト判定結果を元に、バー412上のロスト発生時刻(ロスト判定結果が1の時刻データ)に当たる位置にロスト表示部品を表示する。なお、ロストと判定したことを画面等の出力装置に表示すればよく、形式は限定されない。ロスト表示部品4121の表現方法はこの限りではない。また、シークバー41の表示は、マップデータ生成時に最後に描画したものをそのまま用いても良い。
スライダ411の操作が発生し、描画処理部15がスライダ411の移動後の時刻を計算した際、移動後の時刻がロスト期間であるかを判定する。例えば、算出時刻に該当するロスト判定結果を参照する方法、スライダ411の描画位置がロスト表示部品を構成する領域に含まれるかを判別する方法などを用いて判定を行う。
シークバー上41に表示されているのは、スライダがロスト表示部品上に重なっている場合の計測データ表示領域45´である。判定の結果、移動後の時刻がロスト期間であれば、利用者にロスト期間であることを提示する表示(例ではハッチング表示)を計測データ表示領域45´のように描画する。マップデータを再び生成する指定時刻が入力されマップデータを更新する場合は、編集処理部14は、前述の処理と同様に、指定時刻より新しいマップデータを更新する。
上記の構成および処理により、シークバー上にロスト期間が提示され、利用者は一目でロストが発生した時刻を把握できる。マップデータを再生成する時刻を指定する際、ロスト時刻周辺に絞って、戻る時刻のマップデータの状態の確認を行うことが可能になるため、適切な時刻を設定するための作業負荷が低減する。また、マップデータ生成中にロスト発生を確認できるようになるため、マップデータ生成を中断するタイミングを決めるための手掛かりが増加し、早期にマップデータ生成のやり直しができるようになる。
なお、マップデータ生成中にロストが発生した場合に、描画処理部15は計測データ描画領域43や、マップデータ描画領域42上に、ロストを示す表示(例えばハッチング表示)を描画しても良い。また、計測データ表示領域45´のようにロスト期間をハッチング表示せず、前述の実施の形態における計測データ表示領域45のように表示しても良い。また、マップデータ表示領域42上にロスト期間を示す表示(ハッチング表示など)を描画しても良い。
さらに、計測中にロストが発生した場合には、描画処理部15は利用者にロストが発生している旨や、その対処方法(少し前の計測箇所まで戻るなど)の指示をメッセージとして提示しても良い。描画処理部15が、マップデータ生成処理部11がロストと判定した場合にロストと判定したことを画面に表示し、その表示のされ方は限定されない。
ロストはマップデータの精度低下の要因となりうる1つの可能性を示す現象であり、マップデータの精度が必ずしも低下するとは限らない。例えば、計測データが前フレームと重ならないような早さでデータ入力装置2を動かしロストが発生したとしても、環境中に特徴が多くある場合などは、元の位置に戻ればマップデータ精度を損なわず再生成を続行できることもある。
そこで、この点に鑑み、本実施の形態のマップデータ生成装置では、更に生成中にマッピングの精度を評価し、その評価の結果を時系列で可視化することで、マップデータ精度低下を利用者がマップデータ生成をやり直すための手掛かりとして提示するようにしてもよい。
他の実施の形態と異なる部分は、マップデータ生成処置部11が、さらにマップデータ精度の評価ステップを加え、マッピング評価DB17が、マップデータ精度の評価結果を格納し、描画処理部15が、マッピング評価値を出力する部分である。
図15は例として実施の形態4の処理ステップに本実施の形態の処理ステップを追加した、マップデータ生成装置のフローチャートである。これを用いてマップデータ生成処理部11の処理を説明する。計測データの取得(ステップS1)から、マップデータの更新(ステップS4)までは前述の処理と同じである。
マップデータ生成処理部11は、マップデータ更新後(ステップS4)、現フレームの特徴を用いてマップデータを更新した結果の評価(ステップS44)を実施する。マップデータの誤差が発生する要因としては、例えばデータ入力装置2を構成するセンサの物理的な計測誤差や、データ入力装置2の自己位置データの誤差(自己位置推定誤差や、位置姿勢の計測誤差)、3次元空間にマッピングした特徴点の座標の誤差が存在する。
マップデータを更新した結果を評価する方法の一つとしては、例えば特徴の再投影誤差を用いる評価方法がある。これは、新たにマッピングした3次元空間上の特徴の位置(座標)を、計測データ(2D画像)上に再投影し、元の計測データの特徴の座標との誤差を算出するものであり、誤差が小さいほど精度が高いマップデータ生成が実施されたと判断することができる。これは、当該技術分野のベーシックな評価方法の1つである。
また、別の方法としては、データ入力装置2のセンサの計測視野内の特徴の分布の偏り及び密度の少なくともいずれか一方を評価値として用いることができる。特徴の分布が比較的広範囲であるほど、また特徴の数が多いほど、マッピングした際の誤差は小さくなる傾向にあるため、マップデータ生成精度が高いと判断される。また、特徴の分布が比較的狭い範囲に偏在しているほど、特徴の数が少ないほど、マッピング時の誤差は大きくなる傾向にあるため、マップデータ生成精度が低いと判断される。
上記いずれか、または両方の手段によりマップデータ生成処理部11は、マップデータ評価を行い、統計量に基づきマッピング評価値を算出する。評価値はたとえば数段階の値として算出される。その後、マップデータ生成処理部11は、最新の計測データとマップデータを保存(ステップS5)した後、マッピング評価値を保存する。マッピング評価値は、計測データおよびマップデータと同じ時刻データとともに、マッピング評価DB17に格納される。その後、マップデータ生成処理部11は、描画処理部15にマッピング評価値を含む画面更新に必要なデータを送る。
図16は、マップデータ生成中に出力装置4に表示される画面の例である。シークバー41のバー412上には、取得したマッピング評価値に基づいたマッピング精度低下期間4122が描画されている。図16の例では、マッピング評価値が良い・悪いの2段階である場合の表示を示している。ただしこれには限らず、多段階の評価値を設定しさらに細かく表示を分けても良い(例えば、特に良い期間、良い期間、悪い期間、特に悪い期間などが分かるように描画するなど)。描画方法については、前述のロスト状態の表示と同様である。
図17は、マップデータ生成を一時中断している状態の画面表示の例である。この場合においてもバー412上にマッピング評価値4122が同じく表示される。スライダ411がマッピング精度低下期間4122の時刻にある際は、前述の方法と同じく、マッピング精度低下を示す表示(例えばハッチング)を計測データ45’’上に描画する。描画方法については、前述のロスト状態の表示と同様である。
上述の構成および処理により、ある計測フレームの計測データを用いてマッピング処理の実行結果の精度を評価でき、その結果を利用者に提示することができる。これにより、計測中に於いては、マッピング精度が低くなった時点を把握することができるようになり、その時点でマップデータ生成処理を中断し、やり直すことが可能となる。さらに、マップデータ生成をやり直す時刻を指定する際に、マッピング精度低下箇所を追加の手掛かりとして決定することができ、マップデータ生成効率が向上する。
なお、計測中にマッピング精度が低下した場合、描画処理部15はその旨および対処方法をメッセージとしてユーザに伝えても良い。なお、本実施の形態では実施の形態1、2、3と異なる部分を説明した。それ以外の部分については実施の形態1、2、3と同様であるとする。
実施の形態5.
上述のマップデータ生成装置は、マップデータ生成をやり直す過去の時刻を入力した後、その時点からのマップデータ生成処理をやり直すことができる。しかし、ある期間のマップデータ精度のみが低下している場合においても、その後の正常なマップデータ精度である期間も含め、マップデータ精度低下以前から生成をやり直す必要がある。
この点に鑑み、本実施の形態のマップデータ生成装置では、指定した期間のマップデータを削除(ドロップ)できるようにする。本マップデータ生成装置は、入力イベント処理部16が、ドロップ処理に関するイベントを判別し、編集処理部14がドロップ処理を行い、描画処理部15がドロップするためのインタフェースを描画することが他の実施の形態と異なる。実施の形態4の構成を元に説明する。
ドロップ処理は、マップデータ生成を一時中断している状態において実行される。処理の流れとしては、ドロップ編集開始の要求が利用者から入力されると、ドロップ用インタフェースを用いてドロップ開始時刻およびドロップ終了時刻を設定し、確定後ドロップ処理を実行する流れで行われる。指定されたドロップ開始時刻とドロップ終了時刻とを時刻データとしてマップデータDB12に照合してドロップ開始時刻からドロップ終了時刻までに更新されたマップデータを特定し、特定されたマップデータを削除する。詳細については後述する。
入力イベント処理部16は、ドロップ編集開始イベント、ドロップ開始時刻・終了時刻の操作イベント、ドロップ処理実行イベントを検知し、編集処理部14に送る。編集処理部14は、ドロップ処理を行うための描画処理を描画処理部15に命令するとともに、指定されたドロップ期間の計測データ、マップデータ、自己位置データを、それぞれ計測データDB13、マップデータDB12、自己位置データDB20から削除する。描画処理部15は、ドロップ期間を指定するインタフェース、マップデータ上へのドロップ対象箇所の可視化、ドロップ実行を指令するためのインタフェースを描画する。
図18は、本実施の形態によるマップデータ生成一時中断時の表示画面を示す図である。図18のマップデータ生成中断時に出力される画面を用いて、具体的な処理の流れを説明する。図18上には、新たに、ドロップ開始バー4131、ドロップ終了バー4132、ドロップ期間4133、ドロップ対象マップデータ424、ドロップ処理実行ボタン444が配置されている。
入力イベント処理部16は、まずマップデータ生成一時中断時に、入力部10を通じてされた入力をドロップ編集開始イベントを検知し、編集処理部14に信号を送る。たとえば、シークバー41上を長押しするとそのように検知したり、別途ドロップ編集開始ボタンを配置しても良い。その後、編集処理部14は、ドロップ期間を指定するためのインタフェース(ドロップ開始バー4131、ドロップ終了バー4132、ドロップ期間4133の描画命令を描画処理部15に送り、描画処理部15が描画処理を実行する。
その後入力部19を通じて、入力イベント処理部16がドロップ開始バー4131、ドロップ終了バー4132の操作イベントを検知して編集処理部14に信号を送る。編集処理部14は、ドロップ期間のマップデータを取得する。具体的には、指定されたドロップ開始時刻とドロップ終了時刻とを時刻データとしてマップデータDB12に照合して、ドロップ開始時刻からドロップ終了時刻までに更新されたマップデータを特定し、特定された前記マップデータを削除する。
より具体的には、ドロップ終了時刻のマップデータと、ドロップ開始時刻より一つ前の時刻のマップデータを取得し、2つのマップデータの差分を算出することで、ドロップ期間に追加されたマップデータを取得する。その後、編集処理部14は、ドロップ開始バー4131、ドロップ終了バー4132の描画更新および、ドロップ期間の追加マップデータを可視化する命令、および差分のマップデータを描画処理部15に対して送る。
描画処理部15は、ドロップ開始バー4131、ドロップ終了バー4132、その間のドロップ期間4133の描画を更新し、かつ、マップデータ422上にドロップ対象マップデータ424を描画・更新を行う。ここで、2つのマップデータの差分とは、マップデータ中のドロップ期間中に更新された部分をいう。例えば、マップデータの中の一部の範囲が更新された部分に相当する。
ドロップ処理実行ボタン444の入力を入力イベント処理部16が検知すると、編集処理部14はドロップ処理を実行する。編集処理部14は、計測データDB13、マップデータDB12、自己位置データDB20から、ドロップ期間に含まれる時刻データの計測データおよびマップデータ、自己位置データをそれぞれ削除する。
そして、編集処理部14は、マップデータDB12に格納されている、ドロップ終了時刻以降の時刻データの全てのマップデータから、算出した差分のマップデータを削除する処理を実行する。この削除が実行されることで、ドロップ期間中に更新された部分が、マップデータから削除される。削除された部分はデータがなくなるので、表示上黒塗り等にして表示される。
マップデータDB12からの削除処理終了後、編集処理部14は描画処理部15に描画更新命令を送る。描画処理部15は、シークバー41にてドロップ期間を除いたバー412を描画し、ドロップ開始バー4131・ドロップ終了バー4132の描画をやめる。スライダ411がドロップ期間の時刻に設定されていた場合は例えば前後に移動させ、その時刻に一番近い時刻データのマップデータ422を、編集処理部14を通じてマップデータDB12から取得し描画する。なお、ドロップ対象マップデータ424の描画は消去する。
上述の処理により、マップデータ作成途中に一部精度の低い期間がある場合において、その期間に追加されたマップデータのみを削除する処理が可能となる。これにより、利用者は容易に精度の低いマップデータのみを削除でき、ある時刻以降のマップデータ生成を全てやり直す必要がなくなり、マップデータ生成作業の効率が向上する。
なお、ドロップ処理実行時に、編集処理部14はドロップした各種データを別途保存しておき、ドロップ処理を行った後に再び元に戻せる(アンドゥできる)ようにしても良い。また、ドロップ処理による削除、新たなマップデータ生成による追加のマップデータの差分を管理し、マップデータ生成・ドロップ処理実行前に戻れるようにしても良い。
このように、精度が低下した場合などある一定期間に作成・更新されたマップデータを手動で削除(ドロップ)できるマップデータ生成装置の例を示した。しかし、利用者は削除を実行する毎に、精度低下の有無を確認し、マップデータ生成を一時中断し、期間を手動で入力する必要があり、精度の悪い箇所が多いほど利用者の作業負荷が高くなる傾向がある。
この点に鑑み、本実施の形態のマップデータ生成装置は、精度の低下した期間を自動でドロップできるようにしてもよい。実施の形態4のマップデータ生成装置の処理ステップにおいて、マッピング評価を行った結果、マッピング精度が低いと判断された場合、そのマッピング処理結果をマップデータに反映させない処理を追加してもよい。この場合、マップデータ生成処理部11は、マップデータの評価結果を踏まえて計測データおよびマップデータの更新処理の制御を行う。
図19は、マップデータ生成処理装置の処理を示すフローチャートである。マップデータ生成処理部11は、マップデータ更新、マップデータ評価を実施した後(ステップS4〜S44)、マップデータ評価値によって処理を分岐させる(ステップS45)。評価値が設定されているある閾値に満たなかった場合は、計測データおよびマップデータのデータベースへの保存およびマッピング評価値の保存(ステップS5、ステップS51)を行わず、評価値低下を示す信号を生成し、当該フレーム処理を終了する。つまりマップデータ評価値が閾値以上の場合は、計測データおよびマップデータのデータベースへの保存およびマッピング評価値の保存するステップに進む。
また、マップデータ生成処理部11は描画処理部15に対して、最新の計測データおよびマップデータは送信せず、当該フレームの時刻データを作成し、評価値低下信号とともに描画処理部15に送る。描画処理部15は評価値低下信号を受け取ると、シークバー41の描画更新処理を行う(マップデータ422、自己位置データ4231は前回のまま更新しない)。
図20は、マップデータ生成中断中画面の一例である。シークバー上にドロップ期間4123、計測データ表示領域上にドロップ表示433が描画される。描画処理部15は、評価値低下信号と時刻データを用いて、当該時刻にドロップ期間を描画する。また、スライダ411がドロップ期間上に操作された際、実施の形態4のロストを示す描画と同じように、計測データ表示領域43や上にドロップ表示を描画する。なお、マップデータ描画領域42上に、現フレームのマッピング精度が低くドロップしたことを示す表示(例えばハッチング表示)を描画しても良い。
このようなマップデータ生成装置を用いると、マッピング精度が低いマッピング結果はマップデータとして更新されなくなるため、精度が低下した場合においても利用者が手動でマップデータをドロップする必要がなくなり、精度の高いマップデータの生成効率がさらに向上する。なお、本実施の形態では実施の形態1、2、3、4と異なる部分を説明した。それ以外の部分については実施の形態1、2、3、4と同様であるとする。
実施の形態6.
マップデータ生成を中断し、指定時刻からやり直すに、指定された時刻の計測データを表示することで、利用者に戻るべき位置を提示する。しかし、戻る際に移動させたデータ入力装置2が撮影する範囲を利用者は把握できないため、指定時刻や指定時刻の計測データとデータ入力装置2の撮影範囲が適切に重ならない場合があり、マップデータ生成再開時のマッピング精度が低下する可能性がある。
この点に鑑み、マップ生成装置は、マップデータ生成を中断しやり直す時刻(指定時刻)を設定する際に、データ入力装置2が現在計測している計測データを表示できるようにしてもよい。編集処理部14は、マップデータ生成中断時にデータ入力装置2から毎フレーム計測される計測データ(例えばRGB画像)を取得し、その都度描画処理部15に送る。
図21は、描画処理部15により描画される画面の一例を示したものであり、図10にさらに現計測データ描画領域46、現計測データ461が配置されている。現計測データ461は描画処理部15が受け取るデータ入力装置2の計測データであり、描画処理部15は毎フレーム描画を更新する。
このように過去の位置に戻る際に、現在のデータ入力装置2が計測する現計測データ461が可視化されることで、利用者は過去の計測データ432と比較することができ、より迅速に適切な位置まで戻ることができる。なお、本実施の形態では実施の形態1、2、3、4、5と異なる部分を説明した。それ以外の部分については実施の形態1、2、3、4、5と同様であるとする。
実施の形態7.
実施の形態6のマップデータ生成装置では、過去の計測データと現計測データ、および過去のマップデータなどの情報を手掛かりに、マップデータ生成をやり直す時刻の設定、当該時刻の場所への移動、マップデータ生成再開を行う。しかし、設定した時刻の場所に利用者が適切に戻れたとしても、その場の特徴が少ない場合などでは、繋ぎ合せが開始できない場合や、マッピング精度が低下する場合が発生する。このような場合、利用者はマップデータ生成を再開した後、再び指定時刻を設定したり、マップデータ生成をやり直ししたりする必要がある。
この点に鑑み、本実施の形態のマップデータ生成装置は、マップデータ生成をやり直す際に、その場の計測データと設定時刻のマップデータを用いて再開処理を行った際に、適切に繋ぎ合せ(マッピング)処理ができるかどうかを評価し、評価結果を利用者に提示できるようにする。利用者は評価結果をみてマップデータの更新を再開できるので、無駄な間違ったマップデータの作成のやり直しをする手間を省くことができる。
他の実施の形態と異なる部分は、マップデータ生成処理部11が、マップデータ生成中断中にデータ入力装置2が取得する現計測データを用いてマップデータ生成再開時のマッピング予測精度を評価する処理を行い、編集処理部14が、評価結果をマップデータ生成処理部11から取得し描画処理部15に送信し、描画処理部15が評価結果の描画処理を行うことである。マップデータ生成を一時中断した後の処理について、図22と図23の処理ステップを用いて説明する。
図22は、マップデータ生成一時中断の入力処理から後のステップを示したものである。マップデータ生成処理の停止後(ステップS7)、指定時刻の入力があれば、指定時刻の計測データおよびマップデータを出力(ステップS8,ステップS9)する処理までは同じである。計測データ・マップデータを出力(ステップS9)後、およびステップS8にて指定時刻入力がなかった場合のどちらにおいても、データ入力装置2が現在計測している計測データが指定時刻のマップデータと繋ぎ合せできるか評価する処理を行う(ステップS14)。
図23は、ステップS14の詳細なフローを示す図である。まず、編集処理部14はマップデータ生成処理部11に、現在のデータ入力装置2と指定された指定時刻のマップデータのマッピング予測精度を評価するように信号を送る。この際、編集処理部14が保持する指定時刻のマップデータも同時に送る。以降、マップデータ生成処理部11はステップS14の処理を実行する。マップデータ生成処理部11は評価結果を編集処理部14に送る。
マップデータ生成処理部11は、データ入力装置2から現計測データを取得し(ステップS141)、現計測データから特徴抽出を行う(ステップS142)。この後、マッピング処理が可能かどうか、ロストしないかどうか、マッピング予測精度が低いか、の3つの観点の評価を実施する。本実施の形態では、3つの観点で評価しているが、これに限定されることなく、ロストしないかどうかだけのようにどれか1つの観点だけみてもよいし、2つの観点をみてもよく数は限定されない。ロストの判定の仕方については、実施の形態4で述べた通りである。まず、ステップS143としてマップデータ生成処理部11はマッピングが可能であるかを判定する。現計測データの特徴がマッピングに必要な最低限の特徴数を満たしていれば、次のステップへ進む。
満たしていない場合は、マップデータ生成処理部11は、マッピング不可を示す評価値を生成し、編集処理部14に送り、ステップS14を終了する。次に、最低限の特徴が存在すれば、マップデータ生成処理部11は、マッピング処理を行う(ステップS144)。マッピング処理では、3次元データとして編集処理部14から送られた指定時刻のマップデータを用いる。処理内容は、上述の実施の形態と同様である。その後、マップデータ生成処理部11は、マッピング結果の特徴一致数を算出し(ステップS145)、特徴一致数が閾値以下かどうかを判定して、ロストしているかどうかを判定する(ステップS146)。
特徴一致数が閾値以上でロストと判定されない場合は、次のステップへ移行する。閾値を下回っていれば、ロストを示す評価値を生成し、編集処理部14へ送り、評価処理S14を終了する。なお、これは実施の形態4で述べた処理と同様である。以降のステップでは、現計測データによるマッピング予測精度を評価する。
まず、前ステップで実施したマッピング結果を用いて、指定時刻のマップデータを計算機上で更新する(ステップS147)。その後、マップデータ生成処理部11は、特徴の再投影誤差を用いた評価方法や、現計測データ内の特徴の分布の偏り及び密度の少なくともいずれか一方を評価値とする評価方法で、マッピング精度を評価し、統計量に基づきマッピング評価値を算出する(ステップS148)。
本処理は、実施の形態4で述べた処理と同様であり、マッピング評価値は良し悪しの2段階、多段階のどちらでもよい。マップデータ生成処理部11は、最後に評価値としてマッピング評価値と、現計測データを編集処理部14に送る。編集処理部14は、評価値と現計測データを描画処理部15に送り、描画更新命令を送る(ステップS15)。描画処理部15は現計測データと評価値を元に、描画の更新処理を行う。本実施の形態では評価値を表示しているが、これに限定されるものではなく、マッピング可能かどうかの判定結果や、ロストの有無等を表示させるようにしてもよい。
図24はマップデータ生成処理一時中断時の画面の一例である。実施の形態6と同様、描画処理部15は取得した現計測データ461を現計測データ描画領域46上に描画する。その後、評価値の結果を示す情報を描画する。描画処理部15は現計測データ描画領域46上、計測データ表示領域45上に、現計測データでは繋ぎ合せの精度が低下することを示す情報(例えばハッチング)を描画する。
マッピング評価値を示す描画は、前述の3種類の評価値を区別した表示(マッピング評価値の場合は2段、多段階でもかまわない)、区別せず単純にマッピング予測精度が低い(再開時の繋ぎ合せに支障が出る)ことを示す表示などを描画する。以上の処理は、一定時間ごと、または毎フレーム毎など、マップデータ再生成開始入力があるまで繰り返し実施される。
本マップデータ生成装置により、マップデータ生成一時中断時に、現在のデータ入力装置2の位置姿勢で適切にマップデータ再生成を開始できるかどうかを、利用者は再生成開始前に把握することができる。そのため、マップデータ再生成を開始後に再度やり直す手間が省け、マップデータ生成効率が向上する。なお、上述のように3つに関して評価したが、3つの評価が全てされることに限定されず、1つの評価でもよいし、2つの評価であってもよい。さらに、評価値を示す情報の表示方法は図24の限りではない。
マップデータ生成装置で、マッピング精度の悪い期間を自動的にドロップすることについて述べたが、その後の繋ぎ合せ可否は考慮しておらず、ドロップ処理後に計測データと最新マップデータの特徴一致数が閾値以下(ロストしている)の場合は、誤ったマップデータが生成されることがある。
この点に鑑み、マップデータ生成中に、マッピング精度が低い期間を自動的にドロップし、かつその後の計測データで繋ぎ合せが可能か(ロストしていないか)を判別し、可能であれば繋ぎ合せる処理を繰り返し行うことで、人手でマップデータの編集作業を行わずとも精度が高いマップデータ生成を自動的に行えるようにしてもよい。
この場合、マップデータ生成処理部11は、マッピング精度が低下した期間を自動的にドロップし、かつ繋ぎ合せ可能な場合にのみマッピング処理を実施し、描画処理部15は、その結果を踏まえたマップデータ生成中画面の描画処理を行う。
図25は、マッピング精度が低下した期間を自動的にドロップする処理を示すフローチャートである。このフローチャートを用いて、処理の流れを説明する。マップデータ生成処理部11が処理する、計測データ取得から特徴一致数によるロスト判定までは、前述の処理方法と同様である(ステップS1〜S32)。ここで、ロストがなければ、その後は実施の形態5と同様のマッピング評価値が低い場合に自動的にドロップする処理を行う。
処理の結果、マップデータ生成処理部11は、マッピング評価値が低下した旨の信号とその時刻データを編集処理部14に送る。一方、ロストが発生した場合は、ロスト発生を示す信号と時刻データを生成し、描画処理部15に送る。つまり、ロストを回避する計測データを取得するまでマップデータ更新(ステップS4)〜マップデータ・計測データ保存(ステップS5)までは行わずドロップし、繋ぎ合せが可能になればマップデータ生成を再開する処理を行う。
図26は、マップデータ生成中に描画処理部15が描画する画面の一例である。描画処理部15は、マップデータ生成処理部11から時刻データ、評価値、ロストおよびマッピング評価値を示す信号をフレーム処理ごとに受け取り、シークバー41、計測データ描画領域43、マップデータ描画領域42を更新する。バー41上には、ロストおよびマッピング評価値低を示す信号を元にドロップ期間4123が描画される。
このマップデータ生成装置を用いると、繋ぎ合せが可能な計測データを用いてマッピング精度が良い場合のみマッピング処理を行うため、装置が判断するマップデータの精度低下に関して、利用者はマップデータの編集処理を行うことなく空間マップデータを生成できるようになる。この際、ロスト発生防止のためゆっくり計測装置を移動させる、特徴が多く計測できるような位置に毎回移動するなど、データ入力装置2の移動方法を厳密に意識する必要はなく、データ入力装置2を自由に移動することでマップデータ生成を容易に行えるため、マップデータ生成に係る利用者の負荷を低減することができる。
なお、マップデータ計測器としての観点ではマップデータ生成は正常に行えているが、利用者が不要な物体が映り込んでいると判断する場合は、前述のとおり、マップデータ生成を一時中断し、当該期間のマップデータを手動でドロップすることができる。なお、本実施の形態では実施の形態1、2、3、4、5、6と異なる部分を説明した。それ以外の部分については実施の形態1、2、3、4、5、6と同様であるとする。
1 マップデータ生成処理装置、2 データ入力装置、3 入力装置、4 出力装置、11 マップデータ生成処理部、12 マップデータDB、13 計測データDB、14 編集処理部、15 描画処理部。

Claims (8)

  1. 連続的に撮像され他の画像データの少なくとも一つと一部撮像範囲が重なる複数の2次元の画像データと、前記画像データ中の対象物までの距離データとを計測データとして取得する計測データ取得部と、
    取得された前記計測データと、前記計測データを時系列に対応づけてデータベースに記憶する為の時刻データとを対応付けて記憶する計測データデータベースと、
    複数の前記計測データに基づいて作成された3次元のマップデータを前記計測データが取得される度に更新するマップデータ生成処理部と、
    順次更新されるごとの前記マップデータと、前記マップデータが更新されたときに利用された前記計測データに対応する前記時刻データとを対応付けて記憶するマップデータデータベースと、
    所望の指定時刻の入力を受け付ける入力部と、
    前記入力部で受け付けた前記指定時刻を前記時刻データとして、前記マップデータデータベースに照合して前記指定時刻に対応する前記マップデータを特定する編集処理部とを備え、
    前記マップデータ生成処理部は、
    前記入力部で前記指定時刻が受け付けられた場合に、前記入力部で前記指定時刻が受け付けられた後に新たに取得された前記計測データを用いて、前記編集処理部により特定された前記マップデータの更新をやり直す
    ことを特徴とするマップデータ生成装置。
  2. 前記編集処理部が、
    前記指定時刻が受付けられた場合に、前記指定時刻を前記時刻データとして前記計測データデータベースに照合して前記画像データを特定し、
    前記編集処理部で特定された前記画像データまたは前記編集処理部で特定された前記マップデータを画面に表示する描画処理部を備え、
    前記入力部が
    前記マップデータの更新を要求するマップデータ更新要求を受け、
    前記マップデータ生成処理部が、
    前記描画処理部により前記指定時刻で特定した前記画像データまたは前記マップデータが表示されている間に、前記入力部で前記マップデータ更新要求を受け付けた場合に、前記マップデータの更新をやり直す
    ことを特徴とする請求項1に記載のマップデータ生成装置。
  3. 前記描画処理部が、
    前記計測データ取得部で、前記計測データが取得される毎に、取得された前記画像データを画面に表示する
    ことを特徴とする請求項2に記載のマップデータ生成装置。
  4. 前記画像データが撮像された時の前記画像データを取得して前記計測データ取得部に送信するデータ入力装置の位置情報である自己位置データと前記時刻データとを記憶する自己位置データデータベースを備え、
    前記編集処理部が、
    前記指定時刻を前記時刻データとして前記自己位置データデータベースに照合して前記自己位置データを特定し、
    前記描画処理部が、
    特定された前記自己位置データを画面に表示する
    ことを特徴とする請求項2または請求項3に記載のマップデータ生成装置。
  5. 前記編集処理部が、
    指定されたドロップ開始時刻とドロップ終了時刻とを前記時刻データとして前記マップデータデータベースに照合して前記ドロップ開始時刻から前記ドロップ終了時刻までに更新された前記マップデータを特定し、特定された前記マップデータを削除する
    ことを特徴とする請求項2から請求項4のいずれか一項に記載のマップデータ生成装置。
  6. 前記マップデータ生成処理部が、
    前記計測データを取得する度に、取得された前記計測データ及び前記計測データと連続する他の前記計測データのそれぞれから複数の特徴を抽出して、前記複数の特徴のうちで一致する特徴の数である特徴一致数が閾値以下の場合に、前記マップデータの更新が不可能であるロストと判定し、
    前記描画処理部が、
    前記マップデータ生成処理部が前記ロストと判定した場合に前記ロストと判定したことを画面に表示する
    ことを特徴とする請求項2から請求項5のいずれか一項に記載のマップデータ生成装置。
  7. 前記マップデータ生成処理部が、
    前記入力部で前記指定時刻が受け付けられた場合に、前記マップデータの更新をやり直す前に、前記新たに取得された前記計測データでの前記マップデータの更新が不可能であるかどうかの前記ロストを判定し、
    前記描画処理部が
    前記判定の結果を画面に表示する
    ことを特徴とする請求項6に記載のマップデータ生成装置。
  8. 連続的に撮像され、他の画像データの少なくとも一つと一部撮像範囲が重なる複数の2次元の画像データと、前記画像データ中の対象物までの距離データとを計測データとして取得するステップと、
    前記取得された計測データと、計測データを時系列に対応づけてデータベースに記憶する為の時刻データとを対応付けて計測データデータベースに記憶するステップと、
    複数の前記計測データに基づいて作成された3次元のマップデータを前記計測データが取得される度に更新するステップと、 順次更新される毎の前記マップデータと、前記マップデータが更新されたときに利用された前記計測データに対応する前記時刻データとを対応付けてマップデータデータベースに記憶するステップと、
    所望の指定時刻の入力を受け付けるステップと、
    入力部で受け付けた前記指定時刻を前記時刻データとして、前記マップデータデータベースに照合して前記指定時刻に対応する前記マップデータを特定するステップと、
    前記入力部で前記指定時刻が受け付けられた場合に、前記マップデータの更新を中断し、前記入力部で前記指定時刻が受け付けられた後に新たに取得された前記計測データを用いて、特定された前記マップデータの更新をやり直すステップと、
    からなることを特徴とするマップデータ生成方法。
JP2019511060A 2017-04-03 2017-11-27 マップデータ生成装置および方法 Active JP6639734B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017073600 2017-04-03
JP2017073600 2017-04-03
PCT/JP2017/042402 WO2018185972A1 (ja) 2017-04-03 2017-11-27 マップデータ生成装置および方法

Publications (2)

Publication Number Publication Date
JPWO2018185972A1 JPWO2018185972A1 (ja) 2019-07-18
JP6639734B2 true JP6639734B2 (ja) 2020-02-05

Family

ID=63712095

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019511060A Active JP6639734B2 (ja) 2017-04-03 2017-11-27 マップデータ生成装置および方法

Country Status (5)

Country Link
US (1) US11423005B2 (ja)
EP (1) EP3608629B1 (ja)
JP (1) JP6639734B2 (ja)
CN (1) CN110520691B (ja)
WO (1) WO2018185972A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11393114B1 (en) * 2017-11-08 2022-07-19 AI Incorporated Method and system for collaborative construction of a map
CN111324677A (zh) * 2018-12-13 2020-06-23 中国移动通信集团山西有限公司 用户位置数据的获取方法、装置、设备及介质
KR102238522B1 (ko) * 2019-09-27 2021-04-09 주식회사 서울로보틱스 3차원 공간에 대응되는 맵을 생성하는 차량 및 방법
CN114762007A (zh) * 2019-12-10 2022-07-15 索尼集团公司 信息处理系统、信息处理方法和程序
JP7248599B2 (ja) * 2020-01-15 2023-03-29 株式会社モリタ製作所 情報処理装置およびデータ処理方法
JP2023550985A (ja) * 2020-11-26 2023-12-06 テクノロジカル リソーシーズ プロプライエタリー リミテッド 運搬道路の漸増的マッピングのための方法及び装置
US11265106B1 (en) * 2020-12-29 2022-03-01 Imperva, Inc. Streaming-friendly technology for detection of data

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3495641B2 (ja) * 1999-04-15 2004-02-09 日本電信電話株式会社 更新地図情報配信システム、更新地図情報配信サーバシステム、更新地図情報配信クライアントシステム、方法、及びその方法を記録した記録媒体
JP2003006680A (ja) * 2001-06-20 2003-01-10 Zenrin Co Ltd 3次元電子地図データの生成方法
CN1305006C (zh) * 2001-07-12 2007-03-14 杜莱布斯公司 向图象处理装置提供格式化信息的方法和系统
US20090228194A1 (en) * 2005-06-10 2009-09-10 Naoto Imasaka Navigation apparatus, data updating method, and data updating program
JP2007298850A (ja) * 2006-05-02 2007-11-15 Nissan Motor Co Ltd 地図データ処理装置、地図データ処理方法および地図データ処理システム
JP4979289B2 (ja) * 2006-07-21 2012-07-18 日立オートモティブシステムズ株式会社 画像処理装置
JP2009193240A (ja) 2008-02-13 2009-08-27 Toyota Motor Corp 移動ロボット及び環境地図の生成方法
JP2010128799A (ja) * 2008-11-27 2010-06-10 Mitsubishi Electric Corp 複合メディア合成装置及び複合メディア表示システム及び複合メディア合成方法及び複合メディア合成プログラム
JP5471626B2 (ja) * 2010-03-09 2014-04-16 ソニー株式会社 情報処理装置、マップ更新方法、プログラム及び情報処理システム
JP2011203824A (ja) * 2010-03-24 2011-10-13 Sony Corp 画像処理装置、画像処理方法及びプログラム
JP5926516B2 (ja) * 2010-09-30 2016-05-25 株式会社東芝 磁気共鳴イメージング装置
US8587583B2 (en) 2011-01-31 2013-11-19 Microsoft Corporation Three-dimensional environment reconstruction
JP2012190299A (ja) * 2011-03-11 2012-10-04 Sony Corp 画像処理装置および方法、並びにプログラム
KR101818778B1 (ko) * 2012-03-23 2018-01-16 한국전자통신연구원 실감 파노라마 영상 생성을 위한 3d 데이터 포맷 생성/소비 장치 및 방법
KR20140016735A (ko) * 2012-07-31 2014-02-10 삼성전자주식회사 3d 영상 변환 방법 및 이를 적용한 디스플레이 장치
US9432636B2 (en) * 2013-11-26 2016-08-30 Microsoft Technology Licensing, Llc Large-scale surface reconstruction that is robust against tracking and mapping errors
CN105809664B (zh) * 2014-12-31 2020-03-17 北京三星通信技术研究有限公司 生成三维图像的方法和装置
US9891057B2 (en) * 2015-03-23 2018-02-13 Kabushiki Kaisha Toyota Chuo Kenkyusho Information processing device, computer readable storage medium, and map data updating system
CN108474653B (zh) * 2016-01-20 2020-03-20 三菱电机株式会社 三维计测装置及其计测辅助处理方法

Also Published As

Publication number Publication date
CN110520691A (zh) 2019-11-29
JPWO2018185972A1 (ja) 2019-07-18
EP3608629A4 (en) 2020-04-15
CN110520691B (zh) 2021-09-10
US11423005B2 (en) 2022-08-23
WO2018185972A1 (ja) 2018-10-11
EP3608629A1 (en) 2020-02-12
EP3608629B1 (en) 2021-06-09
US20200226119A1 (en) 2020-07-16

Similar Documents

Publication Publication Date Title
JP6639734B2 (ja) マップデータ生成装置および方法
US10147398B2 (en) Display control method and device
JP6498872B2 (ja) 2dビューを用いた3dモデル化オブジェクトの設計
US20180191988A1 (en) Manufacturing-state display system, manufacturing-state display method, and computer-readable recording medium
JP3574202B2 (ja) 図形入出力装置
JP7073850B2 (ja) 入力装置および入力装置の入力方法
JP6841608B2 (ja) 振る舞い検知システム
US11163298B2 (en) Monitoring system and monitoring method
JP2021196705A (ja) 画像処理装置、画像処理方法およびプログラム
JP2003288372A (ja) Cad用解析結果データ処理装置及びcad用解析結果データ処理方法並びにcad用解析結果データ処理プログラム
KR101751697B1 (ko) 건물 외곽 텍스처링 및 bim 데이터 연계를 통한 투명 객체 가시화 방법 및 장치
WO2017003424A1 (en) Metric 3d stitching of rgb-d data
JP5933126B2 (ja) 解析用メッシュデータ生成方法および解析用メッシュデータ生成装置
JP2017130049A (ja) 画像処理装置、画像処理方法及びプログラム
JPH0816824A (ja) 3次元計算機支援設計装置及び方法
US20070146359A1 (en) CAD apparatus, CAD method and recording medium storing CAD program thereof
US11176360B2 (en) Work skill supporting device and work skill supporting system
JP2010152863A (ja) 境界節点抽出システム、境界節点抽出方法及びプログラム
JP6350640B2 (ja) 表示制御装置、表示制御方法、表示制御プログラム
KR100782152B1 (ko) 3차원 수치지도를 제작하기 위하여 항공사진 db로부터건물의 3차원 데이터를 획득하는 방법
JP6204891B2 (ja) 画像表示装置、方法、及びプログラム
JP2015088057A (ja) 表示プログラム、補助情報自動配置装置、及び方法
JP4267997B2 (ja) 建物プラン検索システム及びその方法
JP6687556B2 (ja) 画像表示制御装置、および、プログラム
JP2004070506A (ja) 3次元形状表示システム、3次元形状表示方法、プログラム、及び記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190402

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191126

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191224

R150 Certificate of patent or registration of utility model

Ref document number: 6639734

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250