(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2025-01-28
(54)【発明の名称】移動ロボットの地図を構築するためのデータの収集方法、装置
(51)【国際特許分類】
G05D 1/246 20240101AFI20250121BHJP
G05D 1/247 20240101ALI20250121BHJP
G05D 1/244 20240101ALI20250121BHJP
G05D 1/43 20240101ALI20250121BHJP
G05D 1/242 20240101ALN20250121BHJP
【FI】
G05D1/246
G05D1/247
G05D1/244
G05D1/43
G05D1/242
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024539353
(86)(22)【出願日】2022-12-06
(85)【翻訳文提出日】2024-08-26
(86)【国際出願番号】 CN2022136829
(87)【国際公開番号】W WO2023124821
(87)【国際公開日】2023-07-06
(31)【優先権主張番号】202111652063.1
(32)【優先日】2021-12-30
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】519059292
【氏名又は名称】杭州海康机器人股▲ふん▼有限公司
【氏名又は名称原語表記】Hangzhou Hikrobot Co., Ltd.
【住所又は居所原語表記】Room 304, Unit B, Building 2, 399 Dangfeng Road, Binjiang District, Hangzhou, Zhejiang 310051, China
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】李 建禹
(72)【発明者】
【氏名】王 ▲偉▼
(72)【発明者】
【氏名】易 雨亭
(72)【発明者】
【氏名】党 志▲強▼
(72)【発明者】
【氏名】唐 恒博
(72)【発明者】
【氏名】▲孫▼ 元▲棟▼
【テーマコード(参考)】
5H301
【Fターム(参考)】
5H301CC03
5H301CC06
5H301DD17
5H301FF06
5H301FF08
5H301GG09
5H301GG16
(57)【要約】
本発明は、移動ロボットの地図を構築するためのデータの収集方法、装置を開示し、移動ロボットに適用され、該方法は、目標キーノードを取得するステップと、目標キーノードへ移動するステップと、移動中に前記移動ロボットのセンサからデータを収集するステップと、を含み、目標キーノードは、少なくともトポロジカル情報に基づいて決定され、前記トポロジカル情報は、トポロジカル点間の論理的相対位置関係と、トポロジカル点間の論理的接続関係とを含み、実際のシーンにおけるキーノードにビーコンが設けられ、前記トポロジカル点は、実際のシーンにおけるキーノードにおけるビーコンと1対1に対応し、前記論理的接続関係は、キーノード間に接続されたガイドマーカと1対1に対応し、移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しない。
【特許請求の範囲】
【請求項1】
移動ロボットに適用される移動ロボットの地図を構築するためのデータの収集方法であって、
目標キーノードを取得するステップと、
前記目標キーノードへ移動するステップと、
移動中に前記移動ロボットのセンサからデータを収集するステップと、を含み、
前記目標キーノードは、トポロジカル情報に基づいて決定され、前記トポロジカル情報は、トポロジカル点間の論理的相対位置関係と、前記トポロジカル点間の論理的接続関係とを含み、実際のシーンにおけるキーノードにビーコンが設けられ、前記トポロジカル点は、前記実際のシーンにおけるキーノードにおけるビーコンと1対1に対応し、前記論理的接続関係は、前記キーノード間に接続されたガイドマーカと1対1に対応し、
移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しない、
ことを特徴とする移動ロボットの地図を構築するためのデータの収集方法。
【請求項2】
前記トポロジカル情報は、前記トポロジカル点に対応するビーコンをさらに含み、
目標キーノードを取得するステップは、地図構築ソフトウェアから前記目標キーノードのビーコンを取得するステップを含み、前記目標キーノードは、計画経路、前記トポロジカル情報、及び前記移動ロボットが到達した現在のキーノードに対応するトポロジカル点に基づいて、前記地図構築ソフトウェアにより決定される、
ことを特徴とする請求項1に記載の収集方法。
【請求項3】
移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しないことは、
前記移動ロボットがマーカ検出を行い、
ガイドマーカを検出した場合、検出された前記ガイドマーカに従って移動し、
ビーコンを検出した場合、
前記移動ロボットは、該ビーコンと前記地図構築ソフトウェアからの現在の目標キーノードのビーコンとをマッチングし、マッチングが成功した場合、現在の目標キーノードに到達したと判定し、前記地図構築ソフトウェアが次の目標キーノードのビーコンを前記移動ロボットに送信するように、前記地図構築ソフトウェアに前記次の目標キーノードを要求し、
又は、前記移動ロボットは、該ビーコンを前記地図構築ソフトウェアに送信することにより、前記地図構築ソフトウェアが現在のビーコンとトポロジカル情報における各トポロジカル点に対応するビーコンとをマッチングし、マッチングが成功した場合、現在のビーコンに対応するトポロジカル点を取得し、次のトポロジカル点に対応するビーコンを前記移動ロボットの次の目標キーノードのビーコンとして前記移動ロボットに送信するようにすることを含み、
異なるビーコンは、異なるマーキング内容を有する、
ことを特徴とする請求項2に記載の収集方法。
【請求項4】
前記移動ロボットが地図構築ソフトウェアから前記トポロジカル情報と計画経路とを取得するステップをさらに含み、
目標キーノードを取得するステップは、前記移動ロボットが、前記計画経路、前記トポロジカル情報、及び前記移動ロボットが到達した現在のキーノードに対応するトポロジカル点に基づいて目標トポロジカル点を決定し、前記目標トポロジカル点に対応するキーノードを目標キーノードとするステップを含む、
ことを特徴とする請求項1に記載の収集方法。
【請求項5】
前記トポロジカル情報は、前記トポロジカル点に対応するビーコンをさらに含み、
移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しないことは、
前記移動ロボットがマーカ検出を行い、
ガイドマーカを検出した場合、検出された前記ガイドマーカに従って移動し、
ビーコンを検出した場合、該ビーコンとトポロジカル情報における各トポロジカル点に対応するビーコンとをマッチングし、マッチングが成功した場合、現在の目標キーノードに到達したと判定し、次の目標キーノードを取得することを含み、
異なるビーコンは、異なるマーキング内容を有する、
ことを特徴とする請求項4に記載の収集方法。
【請求項6】
移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しないことは、
前記移動ロボットがマーカ検出を行い、
ガイドマーカを検出した場合、検出された前記ガイドマーカに従って移動し、
ビーコンを検出した場合、慣性走行距離計によって記録された、現在検出されたビーコンと検出された前の隣接ビーコンとの間の第1の距離に基づいて、現在検出された前記ビーコンと検出された前記前の隣接ビーコンとが同一のビーコンであるか否かを判断し、
前記第1の距離が設定された距離閾値に等しい場合、現在検出された前記ビーコンと検出された前の隣接ビーコンとが同一のビーコンではないと判断し、現在検出された前記ビーコンと検出された前の隣接ビーコンとの順序と、計画経路における隣接トポロジカル点の順序とのマッチングに基づいて、現在検出された前記ビーコンに対応するトポロジカル点を決定し、次の目標キーノードを取得することを含み、
異なるビーコンは、同じマーキング内容を有する、
ことを特徴とする請求項4に記載の収集方法。
【請求項7】
前記トポロジカル情報は、論理的接続関係を有する2つのトポロジカル点の間の第2の距離をさらに含み、該第2の距離は、前記2つのトポロジカル点にそれぞれ対応する2つのキーノードの間の測定距離であり、
前記距離閾値は、前記第2の距離であり、
慣性走行距離計によって記録された、現在検出されたビーコンと検出された前の隣接ビーコンとの間の第1の距離に基づいて、現在検出された前記ビーコンと検出された前記前の隣接ビーコンとが同一のビーコンであるか否かを判断することは、
前記第1の距離が設定された距離閾値に等しくない場合、現在検出された前記ビーコンに対する検出に誤検出があると判定することをさらに含む、
ことを特徴とする請求項6に記載の収集方法。
【請求項8】
前記計画経路における全ての計画経路により形成される計画経路集合は、移動中に前記移動ロボットが移動する移動経路集合のサブセットであり、前記移動ロボットは、少なくとも前記計画経路集合における各計画経路に従って1回移動し、
移動中に前記移動ロボットのセンサからデータを収集するステップは、移動中に設定された第1のサンプリング頻度に従って前記センサからデータを収集するステップを含み、
前記移動ロボットがマーカ検出を行うことは、現在の走行状態が中断されないように、前記移動ロボットが走行状態のまま、設定された第2のサンプリング頻度に従ってビーコンを取得して検出することを含み、
前記第1のサンプリング頻度及び前記第2のサンプリング頻度は、前記移動ロボットの現在の移動速度に関連する、
ことを特徴とする請求項3、5、6、7のいずれか1項に記載の収集方法。
【請求項9】
移動ロボットの地図を構築するためのデータを用いて地図を構築するステップを含み、
移動ロボットの地図を構築するためのデータは、請求項1~8のいずれか1項に記載の移動ロボットの地図を構築するためのデータの収集方法に従って収集される、
ことを特徴とする地図構築方法。
【請求項10】
移動ロボットの地図を構築するためのデータを用いて地図を構築するステップは、
収集された前記移動ロボットのセンサからのデータを同期するステップと、
収集された画像データを処理し、キーフレームを取得するステップと、
前記キーフレームに基づいて全体的な最適化を行い、全体的な地図情報を取得するステップと、
地図情報を地図フォーマットに変換するステップと、を含む、
ことを特徴とする請求項9に記載の方法。
【請求項11】
移動ロボットの地図を構築するためのデータの収集装置であって、
目標キーノードを取得するための目標キーノード取得モジュールと、
前記目標キーノードへの移動プロセスを制御するための移動制御モジュールと、
移動中に前記移動ロボットのセンサからデータを収集するための収集モジュールと、を含み、
前記目標キーノードは、トポロジカル情報に基づいて決定され、前記トポロジカル情報は、トポロジカル点間の論理的相対位置関係と、前記トポロジカル点間の論理的接続関係とを含み、実際のシーンにおけるキーノードにビーコンが設けられ、前記トポロジカル点は、前記実際のシーンにおけるキーノードにおけるビーコンと1対1に対応し、前記論理的接続関係は、前記キーノード間に接続されたガイドマーカと1対1に対応し、
移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しない、
ことを特徴とする移動ロボットの地図を構築するためのデータの収集装置。
【請求項12】
請求項11に記載の移動ロボットの地図を構築するためのデータの収集装置と、
移動ロボットの地図を構築するためのデータを用いて地図を構築するための地図構築装置と、を含む、
ことを特徴とする地図構築システム。
【請求項13】
前記地図構築装置は、
収集された前記センサからのデータを同期するための同期モジュールと、
収集された画像データを処理し、キーフレームを取得するための追跡モジュールと、
前記キーフレームに基づいて全体的な最適化を行い、全体的な地図情報を取得するための最適化モジュールと、
地図情報を地図フォーマットに変換するための地図生成モジュールと、を含む、
ことを特徴とする請求項12に記載のシステム。
【請求項14】
請求項11に記載の移動ロボットの地図を構築するためのデータの収集装置、及び/又は、請求項12~13のいずれか1項に記載の地図構築システムを含む、
ことを特徴とする移動ロボット。
【請求項15】
コンピュータプログラムが記憶されているコンピュータ可読記憶媒体であって、前記コンピュータプログラムがプロセッサによって実行されると、請求項1~8のいずれか1項に記載の移動ロボットの地図を構築するためのデータの収集方法のステップ、及び/又は、請求項9~10のいずれか1項に記載の地図構築方法のステップが実施される、
ことを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2021年12月30日に提出された、出願番号が202111652063.1である中国特許出願の優先権を要求し、該出願は引用の方式で本明細書に組み込まれる。
【0002】
本発明は、マシンビジョン分野に関し、特に、移動ロボットの地図を構築するためのデータの収集方法に関する。
【背景技術】
【0003】
技術の発展に伴い、視覚ナビゲーション(visual navigation)、レーザナビゲーション(laser navigation)、慣性ナビゲーション(inertial navigation)、又は様々なナビゲーション方式の組み合わせのいずれについても、移動ロボットのナビゲーション・測位のための地図は、自動構築されるようになってきている。地図の自動構築方式の一つは、移動ロボットが計画経路に従って移動し、移動中にリアルタイムで移動ロボットの地図を構築するためのデータを収集し、地図構築ソフトウェアが収集されたデータに基づいて地図を構築することである。
【0004】
移動ロボットが計画経路に従って移動する間に、予め設定された位置姿勢情報を入力して、移動ロボットの移動に対してフィードバックを形成して、適切に介入する必要があり、現在、これらの予め設定された位置姿勢情報はいずれも、例えば、選択されたシーン領域において標識点の真の位置姿勢を測定したり、ロボットの移動中に標識物に基づいて現在の位置姿勢を校正する必要があるため、標識物の位置姿勢校正のための情報を測定したりするなど、大量の手動測定作業に依存している。このような手動測定は、一方では、多くの測定時間がかかり、他方では、手動測定誤差が構築された地図にもたらされるため、構築された地図の精度に影響を与える。
【発明の概要】
【課題を解決するための手段】
【0005】
本発明は、手作業を減らすために、移動ロボットの地図を構築するためのデータの収集方法を提供する。
【0006】
本発明の第1の態様によれば、移動ロボットに適用される移動ロボットの地図を構築するためのデータの収集方法であって、目標キーノードへ移動するステップと、移動中に前記移動ロボットのセンサからデータを収集するステップと、を含み、目標キーノードは、トポロジカル情報に基づいて決定され、前記トポロジカル情報は、トポロジカル点間の論理的相対位置関係と、前記トポロジカル点間の論理的接続関係とを含み、実際のシーンにおけるキーノードにビーコンが設けられ、前記トポロジカル点は、前記実際のシーンにおけるキーノードにおけるビーコンと1対1に対応し、前記論理的接続関係は、前記キーノード間に接続されたガイドマーカと1対1に対応し、移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しない、移動ロボットに適用される移動ロボットの地図を構築するためのデータの収集方法が提供される。
【0007】
好ましくは、前記トポロジカル情報は、トポロジカル点に対応するビーコンをさらに含み、目標キーノードを取得するステップは、地図構築ソフトウェアから目標キーノードのビーコンを取得するステップを含み、目標キーノードは、計画経路、トポロジカル情報、及び移動ロボットが到達した現在のキーノードに対応するトポロジカル点に基づいて、前記地図構築ソフトウェアにより決定される。
【0008】
好ましくは、移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しないことは、移動ロボットがマーカ検出を行い、ガイドマーカを検出した場合、検出されたガイドマーカに従って移動し、ビーコンを検出した場合、前記移動ロボットは、該ビーコンと地図構築ソフトウェアからの現在の目標キーノードのビーコンとをマッチングし、マッチングが成功した場合、現在の目標キーノードに到達したと判定し、地図構築ソフトウェアが次の目標キーノードのビーコンを移動ロボットに送信するように、地図構築ソフトウェアに次の目標キーノードを要求し、又は、前記移動ロボットは、該ビーコンを前記地図構築ソフトウェアに送信することにより、地図構築ソフトウェアが現在のビーコンとトポロジカル情報における各トポロジカル点に対応するビーコンとをマッチングし、マッチングが成功した場合、現在のビーコンに対応するトポロジカル点を取得し、次のトポロジカル点に対応するビーコンを移動ロボットの次の目標キーノードのビーコンとして移動ロボットに送信するようにすることを含み、異なるビーコンは、異なるマーキング内容を有する。
【0009】
好ましくは、該方法は、移動ロボットが地図構築ソフトウェアからトポロジカル情報と計画経路とを取得するステップをさらに含み、目標キーノードを取得するステップは、移動ロボットが、計画経路、トポロジカル情報、及び移動ロボットが到達した現在のキーノードに対応するトポロジカル点に基づいて目標トポロジカル点を決定し、目標トポロジカル点に対応するキーノードを目標キーノードとするステップを含む。
【0010】
好ましくは、移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しないことは、移動ロボットがマーカ検出を行い、ガイドマーカを検出した場合、検出されたガイドマーカに従って移動し、ビーコンを検出した場合、該ビーコンとトポロジカル情報における各トポロジカル点に対応するビーコンとをマッチングし、マッチングが成功した場合、現在の目標キーノードに到達したと判定し、次の目標キーノードを取得することを含み、異なるビーコンは、異なるマーキング内容を有する。
【0011】
好ましくは、前記トポロジカル情報は、トポロジカル点に対応するビーコンをさらに含み、移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しないことは、移動ロボットがマーカ検出を行い、ガイドマーカを検出した場合、検出されたガイドマーカに従って移動し、ビーコンを検出した場合、慣性走行距離計によって記録された、現在検出されたビーコンと検出された前の隣接ビーコンとの間の第1の距離に基づいて、現在検出されたビーコンと検出された前の隣接ビーコンとが同一のビーコンであるか否かを判断し、第1の距離が設定された距離閾値に等しい場合、現在検出されたビーコンと検出された前の隣接ビーコンとが同一のビーコンではないと判断し、現在検出されたビーコンと検出された前の隣接ビーコンとの順序と、計画経路における隣接トポロジカル点の順序とのマッチングに基づいて、現在検出された前記ビーコンに対応するトポロジカル点を決定し、次の目標キーノードを取得することを含み、異なるビーコンは、同じマーキング内容を有する。
【0012】
好ましくは、前記トポロジカル情報は、論理的接続関係を有する2つのトポロジカル点の間の第2の距離をさらに含み、該第2の距離は、前記2つのトポロジカル点にそれぞれ対応する2つのキーノードの間の測定距離であり、前記距離閾値は、第2の距離であり、慣性走行距離計によって記録された、現在検出されたビーコンと検出された前の隣接ビーコンとの間の第1の距離に基づいて、現在検出されたビーコンと検出された前の隣接ビーコンとが同一のビーコンであるか否かを判断することは、第1の距離が設定された距離閾値に等しくない場合、現在検出されたビーコンに対する検出に誤検出があると判定することをさらに含む。
【0013】
好ましくは、前記計画経路における全ての計画経路により形成される計画経路集合は、移動中に前記移動ロボットが移動する移動経路集合のサブセットであり、前記移動ロボットは、少なくとも前記計画経路集合における各計画経路に従って1回移動し、移動中に前記移動ロボットのセンサからデータを収集するステップは、移動中に設定された第1のサンプリング頻度に従って前記センサからデータを収集するステップを含み、前記移動ロボットがマーカ検出を行うことは、現在の走行状態が中断されないように、移動ロボットが走行状態のまま、設定された第2のサンプリング頻度に従ってビーコンを取得して検出することを含み、前記第1のサンプリング頻度及び前記第2のサンプリング頻度は、前記移動ロボットの現在の移動速度に関連する。
【0014】
本発明の第2の態様によれば、移動ロボットの地図を構築するためのデータを用いて地図を構築するステップを含み、移動ロボットの地図を構築するためのデータは、いずれかの前記移動ロボットの地図を構築するためのデータの収集方法に従って収集される、地図構築方法が提供される。
【0015】
好ましくは、前記移動ロボットの地図を構築するためのデータを用いて地図を構築するステップは、収集された各センサからのデータを同期するステップと、収集された画像データを処理し、キーフレームを取得するステップと、キーフレームに基づいて全体的な最適化を行い、全体的な地図情報を取得するステップと、地図情報を地図フォーマットに変換するステップと、を含む。
【0016】
本発明の第3の態様によれば、移動ロボットの地図を構築するためのデータの収集装置であって、目標キーノードを取得するための目標キーノード取得モジュールと、目標キーノードへの移動プロセスを制御するための移動制御モジュールと、移動中に前記移動ロボットのセンサからデータを収集するための収集モジュールと、を含み、目標キーノードは、少なくともトポロジカル情報に基づいて決定され、前記トポロジカル情報は、トポロジカル点間の論理的相対位置関係と、トポロジカル点間の論理的接続関係とを含み、実際のシーンにおけるキーノードにビーコンが設けられ、前記トポロジカル点は、実際のシーンにおけるキーノードにおけるビーコンと1対1に対応し、前記論理的接続関係は、キーノード間に接続されたガイドマーカと1対1に対応し、移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しない、移動ロボットの地図を構築するためのデータの収集装置が提供される。
【0017】
好ましくは、前記トポロジカル情報は、トポロジカル点に対応するビーコンをさらに含み、前記目標キーノード取得モジュールは、地図構築ソフトウェアから目標キーノードのビーコンを取得するように構成され、目標キーノードは、計画経路、トポロジカル情報、及び到達した現在のキーノードに対応するトポロジカル点に基づいて、前記地図構築ソフトウェアにより決定される。
【0018】
好ましくは、前記移動制御モジュールは、マーカ検出を行うように構成されるマーカ検出サブモジュールと、ガイドマーカを検出した場合、検出されたガイドマーカに従って移動し、ビーコンを検出した場合、該ビーコンと地図構築ソフトウェアからの現在の目標キーノードのビーコンとをマッチングし、マッチングが成功した場合、現在の目標キーノードに到達したと判定し、地図構築ソフトウェアが次の目標キーノードのビーコンを前記目標キーノード取得モジュールに送信するように、地図構築ソフトウェアに次の目標キーノードを要求し、又は、地図構築ソフトウェアが現在のビーコンとトポロジカル情報における各トポロジカル点に対応するビーコンとをマッチングし、マッチングが成功した場合、現在のビーコンに対応するトポロジカル点を取得し、次のトポロジカル点に対応するビーコンを次の目標キーノードのビーコンとして目標キーノード取得モジュールに送信するように、該ビーコンを地図構築ソフトウェアに送信するように構成される移動制御サブモジュールと、を含み、異なるビーコンは、異なるマーキング内容を有する。
【0019】
好ましくは、前記目標キーノード取得モジュールは、地図構築ソフトウェアからトポロジカル情報と計画経路とを取得し、計画経路、トポロジカル情報、及び到達した現在のキーノードに対応するトポロジカル点に基づいて目標トポロジカル点を決定し、目標トポロジカル点に対応するキーノードを目標キーノードとするように構成される。
【0020】
好ましくは、前記トポロジカル情報は、トポロジカル点に対応するビーコンをさらに含み、前記移動制御モジュールは、マーカ検出を行うように構成されるマーカ検出サブモジュールと、ガイドマーカを検出した場合、検出されたガイドマーカに従って移動し、ビーコンを検出した場合、該ビーコンとトポロジカル情報における各トポロジカル点に対応するビーコンとをマッチングし、マッチングが成功した場合、現在の目標キーノードに到達したと判定し、次の目標キーノードを取得するように構成される移動制御サブモジュールと、を含み、異なるビーコンは、異なるマーキング内容を有する。
【0021】
好ましくは、前記目標キーノード取得モジュールは、地図構築ソフトウェアからトポロジカル情報と計画経路とを取得し、計画経路、トポロジカル情報、及び到達した現在のキーノードに対応するトポロジカル点に基づいて目標トポロジカル点を決定し、目標トポロジカル点に対応するキーノードを目標キーノードとするように構成される。
【0022】
好ましくは、前記移動制御モジュールは、マーカ検出を行うように構成されるマーカ検出サブモジュールと、ガイドマーカを検出した場合、検出されたガイドマーカに従って移動し、ビーコンを検出した場合、慣性走行距離計によって記録された、現在検出されたビーコンと検出された前の隣接ビーコンとの間の第1の距離に基づいて、現在検出されたビーコンと検出された前の隣接ビーコンとが同一のビーコンであるか否かを判断し、第1の距離が設定された距離閾値に等しい場合、現在検出されたビーコンと検出された前の隣接ビーコンとが同一のビーコンではないと判断し、現在検出されたビーコンと検出された前の隣接ビーコンとの順序と、計画経路における隣接トポロジカル点の順序とのマッチングに基づいて、現在検出されたビーコンに対応するトポロジカル点を決定し、次の目標キーノードを取得するように構成される移動制御サブモジュールと、を含み、異なるビーコンは、同じマーキング内容を有する。
【0023】
好ましくは、前記トポロジカル情報は、論理的接続関係を有する2つのトポロジカル点の間の第2の距離をさらに含み、該第2の距離は、前記2つのトポロジカル点にそれぞれ対応する2つのキーノードの間の測定距離であり、前記距離閾値は、第2の距離であり、前記マーカ検出サブモジュールは、さらに、第1の距離が設定された距離閾値に等しくない場合、現在検出されたビーコンに対する検出に誤検出があると判定するように構成される。
【0024】
好ましくは、前記計画経路における全ての計画経路により形成される計画経路集合は、移動中に前記移動ロボットが移動する移動経路集合のサブセットであり、前記移動ロボットは、少なくとも前記計画経路集合における各計画経路に従って1回移動し、前記収集モジュールは、移動中に設定された第1のサンプリング頻度に従って前記移動ロボットのセンサからデータを収集するように構成され、前記マーカ検出サブモジュールは、現在の走行状態が中断されないように、走行状態のまま、設定された第2のサンプリング頻度に従ってビーコンを取得して検出するように構成され、前記第1のサンプリング頻度及び前記第2のサンプリング頻度は、現在の移動速度に関連する。
【0025】
本発明の第4の態様によれば、上記第3の態様に記載の移動ロボットの地図を構築するためのデータの収集装置と、移動ロボットの地図を構築するためのデータを用いて地図を構築するための地図構築装置と、を含む、地図構築システムが提供される。
【0026】
好ましくは、前記地図構築装置は、収集された前記移動ロボットのセンサからのデータを同期するための同期モジュールと、収集された画像データを処理し、キーフレームを取得するための追跡モジュールと、キーフレームに基づいて全体的な最適化を行い、全体的な地図情報を取得するための最適化モジュールと、地図情報を地図フォーマットに変換するための地図生成モジュールと、を含む。
【0027】
本発明の第5の態様によれば、移動ロボットの地図を構築するためのデータの収集装置、及び/又は、前記地図構築システムを含む、移動ロボットが提供される。
【0028】
本発明の第6の態様によれば、コンピュータプログラムが記憶されているコンピュータ可読記憶媒体であって、前記コンピュータプログラムがプロセッサによって実行されると、いずれかの前記移動ロボットの地図を構築するためのデータの収集方法のステップ、及び/又は、いずれかの前記地図構築方法のステップが実施される、コンピュータ可読記憶媒体が提供される。
【0029】
本発明によって提供される移動ロボットの地図を構築するためのデータの収集方法は、キーノードとビーコンの位置姿勢情報を取得する必要がなく、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、移動中にいずれのキーノードといずれのビーコンの位置姿勢情報を使用せず、目標キーノードへ移動中に移動ロボットの地図を構築するためのデータを収集する。移動中にキーノードとビーコンの位置姿勢情報を取得するために実際に測定する必要がないため、非測定地図構築をサポートし、移動ロボットの移動中に移動ロボットの地図を構築するためのデータの収集の利便性と自動化程度を向上させ、地図構築効率を向上させることができ、移動中にいずれのキーノードといずれのビーコンの位置姿勢情報を使用しないため、ビーコンを柔軟に設けることができ、実際のシーンへの適応性がよく、ビーコン間の距離が制限されず、理論的には無限にすることができ、初期段階で必要なビーコンの数を減らすことができ、事前準備の効率を向上させ、初期段階で実施量が少ない場合に地図構築の複雑な経路をサポートすることができる。移動プロセスは、地図構築のナビゲーション座標に関係なく、測位結果に注目する必要もなく、走行経路が柔軟である。
【図面の簡単な説明】
【0030】
【
図1】本発明の実施例による移動ロボットの地図を構築するためのデータの収集方法のフローを示す概略図である。
【
図2】本発明の実施例によるシーン構成及びトポロジカル図を示す概略図である。
【
図3】本発明の一実施例による移動ロボットが移動ロボットの地図を構築するためのデータの収集を行うフローを示す概略図である。
【
図4】本発明の他の実施例による移動ロボットが移動ロボットの地図を構築するためのデータの収集を行うフローを示す概略図である。
【
図5】本発明の実施例1による地図構築ソフトウェアが地図を構築するフローを示す概略図である。
【
図6】本発明の実施例2によるシーン構成及びトポロジカル図を示す概略図である。
【
図7】本発明の実施例2による巡回経路方式で目標キーノードへ移動するフローを示す概略図である。
【
図8】本発明の実施例2による地図構築ソフトウェアが地図を構築するフローを示す概略図である。
【
図9】本発明の実施例による移動ロボットの地図を構築するためのデータの収集装置を示す概略図である。
【
図10】本発明の実施例による地図構築システムを示す概略図である。
【
図11】本発明の実施例による収集装置、地図構築システム、又は移動ロボットを示す概略図である。
【発明を実施するための形態】
【0031】
本発明の目的、技術的手段及び利点をより明確にするために、以下、図面を参照しながら本発明をさらに詳細に説明する。
【0032】
本発明によって提供される移動ロボットの地図を構築するためのデータの収集方法は、移動ロボットが目標キーノードに移動している間に、前記移動ロボットのセンサを用いてデータを収集し、移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しない。
【0033】
図1に示すように、
図1は、本発明の実施例による移動ロボットの地図を構築するためのデータの収集方法のフローを示す概略図である。該方法は、移動ロボット側に適用され、以下のステップ101~ステップ103を含む。
【0034】
ステップ101において、目標キーノードを取得する。
【0035】
目標キーノードは、計画経路及びトポロジカル情報に基づいて決定され、前記トポロジカル情報は、トポロジカル点間の論理的相対位置関係と、トポロジカル点間の論理的接続関係とを含み、実際のシーンにおけるキーノードにビーコンが設けられ、前記トポロジカル点は、実際のシーンにおけるキーノードにおけるビーコンと1対1に対応し、前記論理的接続関係は、キーノード間に接続されたガイドマーカと1対1に対応する。
【0036】
ステップ102において、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用せずに、目標キーノードへ移動する。
【0037】
ステップ103において、移動中に移動ロボットのセンサからデータを収集する。収集中に、移動ロボットは、設定された第1のサンプリング頻度に従って移動ロボットのセンサからデータを収集し、第1のサンプリング頻度は、前記移動ロボットの現在の移動速度に関連する。
【0038】
本発明は、移動ロボットの地図を構築するためのデータの収集の自動化程度を向上させ、非測定地図構築をサポートすることができる。
【0039】
本発明の理解を容易にするために、以下、具体的な収集方式で収集されたセンサデータと、収集されたセンサデータを用いて地図構築を行うこととを組み合わせて説明する。
【0040】
実施例1
本実施例1では、異なるマーキング内容を有するマーカ情報をビーコンとし、ガイドマーカを巡回経路(patrol route)として、見下ろし視覚テクスチャ地図(downward-looking visual texture map)を構築する。見下ろし視覚テクスチャ地図とは、主に地面の視覚特徴情報及びその相対位置関係からなる地図であり、主に移動ロボットの見下ろし視覚ナビゲーションに用いられる。該地図の主な特徴情報は、地面そのもののテクスチャからなるため、テクスチャ地図と呼ばれる。
【0041】
まず、初期段階の準備を行う。
【0042】
本実施例において、実際のシーンに既存経路が存在し、地図構築ソフトウェアを用いて既存経路に基づいてトポロジカル図を作成し、トポロジカル図に基づいて計画経路を生成する。トポロジカル図は、トポロジカル点間の論理的相対位置関係と、トポロジカル点間の論理的接続関係とを含む。
【0043】
トポロジカル点は、実際のシーンにおけるキーノードと1対1に対応し、キーノードの位置における地面には、異なるマーキング内容を有するビーコン、例えば、QRコード(登録商標、以下同様)ビーコン、又は、文字、数字、アイコンのうちの1つ又はそれらの任意の組み合わせが設けられ、各キーノードにおけるビーコンはそれぞれ異なり、トポロジカル点に対応するビーコン、トポロジカル点間の論理的相対位置関係、論理的接続関係は、トポロジカル図の属性としてトポロジカル図に記憶される。トポロジカル図におけるトポロジカル点間の論理的接続関係に基づいて、トポロジカル図におけるトポロジカル点間の論理的接続関係に対応するために、キーノード間にガイドマーカとしてリボン又は弾性線を貼り付ける。例外として、キーノード間の距離が設定された距離閾値より小さい場合、ガイドマーカを設けなくてもよい。
【0044】
ここで、キーノードにはキーノードの全体的な位置姿勢情報が含まれず、ビーコンの全体的な位置姿勢情報も含まれず、即ち、キーノードにおける位置姿勢情報及びビーコンの位置姿勢情報を手動で測定する必要がない。
【0045】
図2を参照すると、
図2は、シーン構成及びトポロジカル図を示す概略図である。
図2において、左図は実際のシーンにおける既存経路であり、中図は設けられたQRコードとガイドマーカであり、右図は描かれたトポロジカル図である。ここで、トポロジカル図は、トポロジカル点間の論理的相対位置関係、及びトポロジカル点間の論理的接続関係を可視化したものであるため、実際のシーンにおける既存経路の位置や長さ、キーノード位置に対応する等倍画像ではなく、論理的な対応関係である。例えば、実際のシーンにおいて、キーノードAとキーノードBとの間に既存経路が存在し、上記2つのキーノードの間にガイドマーカを設ける際に、厳密に直線である必要はなく、曲率のある曲線や移動ロボットが走行しやすい直線であってもよく、また、例えば、実際のシーンにおいて、キーノードA、E、Fが同じ水平線にあるが、トポロジカル図において、それらが同じ水平線になくてもよい。なお、コンピュータプログラム処理の観点から、トポロジカル図はトポロジカル情報である。
【0046】
そして、移動ロボットを用いて移動ロボットの地図を構築するためのデータの収集を行う。
【0047】
方式1:移動ロボットが移動中にセンサデータを収集するように、地図構築ソフトウェアにより移動ロボットを制御して移動させ、ここで、移動ロボットが移動する移動経路は少なくとも計画経路を含み、即ち、移動ロボットが移動する移動経路は計画経路より多くてもよく、計画経路における各経路に沿って少なくとも1回移動すればよいため、計画経路における全ての計画経路により形成される計画経路集合は、移動ロボットの移動経路集合のサブセットである。
【0048】
図3に示すように、
図3は、本発明の一実施例による移動ロボットが移動ロボットの地図を構築するためのデータの収集を行うフローを示す概略図である。ビーコンがQRコードであることを例として、移動ロボットは、あるキーノードから開始する。
【0049】
ステップ301において、移動ロボットは、現在のビーコンにおけるQRコード情報を読み取って初期化を行い、該ビーコンを地図構築ソフトウェアに送信して、地図構築ソフトウェアが該ビーコンに対応するトポロジカル点を起点とする。
【0050】
ステップ302において、移動ロボットは、地図構築ソフトウェアがトポロジカル図、計画経路、及び現在到着した目標キーノードに基づいて決定した目標トポロジカル点に対応するQRコードを受信し、前記目標トポロジカル点は、現在到着した目標キーノードに隣接する次の目標キーノードに対応し、該QRコードが位置するキーノードは、前記次の目標キーノードであり、移動ロボットが初期化を行う際に、読み取った現在のビーコンは、移動ロボットが現在到着した目標キーノードにおけるビーコンである。
【0051】
移動ロボットは、受信したQRコードに基づいて次の目標キーノードが位置する方向のガイドマーカを決定し、該ガイドマーカの方向を移動ロボットの現在の移動方向とし、ガイドマーカに従って移動し、又は、移動ロボットは、ガイドマーカから、受信されたQRコード(即ち、次の目標キーノード)が位置する方向のガイドマーカを選択し、選択したガイドマーカの方向を移動ロボットの現在の移動方向とし、ガイドマーカに従って移動する。例えば、
図2のC点にある場合、目標トポロジカル点がFであれば、CF線分に従って移動し、目標トポロジカル点がDであれば、CD線分に従って移動する。
【0052】
ステップ303において、移動ロボットは、移動中にマーカ検出を行い、移動ロボットのセンサが収集したデータをリアルタイムで記録する。
【0053】
ガイドマーカを検出した場合、移動ロボットは、現在検出されたガイドマーカに従って移動して、ガイドマーカによって方向の正確性を保証することができる。
【0054】
ビーコンを検出した場合、移動ロボットは、ビーコンにおけるQRコード情報を読み取り、読み取ったQRコードと受信したQRコードとをマッチングし、マッチングが成功した場合、目標キーノードに到達したと判定し、地図構築ソフトウェアに次の目標キーノードを要求し、全ての計画経路を少なくとも1回トラバースするまで、ステップ302に戻り、それ以外の場合、目標キーノードに到達していないと判定し、移動ロボットはガイドマーカに従って移動し、全ての計画経路を少なくとも1回トラバースするまで、ステップ303に戻る。
【0055】
ステップ303の別の方式では、移動ロボットがビーコンにおけるQRコードを読み取った後、読み取ったQRコードを地図構築ソフトウェアに送信し、これにより、地図構築ソフトウェアは、受信したQRコードと各トポロジカル点に対応するQRコードとをマッチングし、受信したQRコードと目標トポロジカル点に対応するQRコードとのマッチングが成功した場合、目標キーノードに到達したと判定し、次の目標トポロジカル点に対応するビーコンを移動ロボットに送信し、該ビーコンが位置するキーノードを目標キーノードとし、それ以外の場合、目標キーノードに到達していないと判定し、地図構築ソフトウェアは、ガイドマーカに従って移動するように移動ロボットに指示する。全ての計画経路をトラバースするまで、移動ロボットが次の目標トポロジカル点に対応するビーコンを受信した場合、ステップ302に戻り、移動ロボットがガイドマーカに従って移動する命令を受信した場合、ステップ303に戻る。
【0056】
上記マーカを検出するプロセスにおいて、移動ロボットがビーコンを読み取る際に、移動ロボットは現在の移動を中断せず、現在の走行状態を維持したまま、設定された第2のサンプリング頻度に従ってビーコン画像を取得するため、移動ロボットがビーコン画像を収集するために停止する必要がなく、地図構築の効率を向上させることに有利である。第2のサンプリング頻度は、現在の移動速度に関連する。
【0057】
方式2:移動ロボットは、計画経路及びトポロジカル図に基づいて移動する。
【0058】
図4に示すように、
図4は、本発明の他の実施例による移動ロボットが移動ロボットの地図を構築するためのデータの収集を行うフローを示す概略図である。ビーコンがQRコードであることを例として、移動ロボットは、あるキーノードから開始する。
【0059】
ステップ401において、移動ロボットは、現在のビーコンにおけるQRコード情報を読み取って初期化を行う。
【0060】
ステップ402において、移動ロボットは、地図構築ソフトウェアから選択されたシーン領域における計画経路及びトポロジカル図を取得し、現在のビーコンに対応するトポロジカル点を起点とする。
【0061】
ステップ403において、計画経路、トポロジカル図、及び現在到着したキーノードに基づいて、目標トポロジカル点、及びそれに対応するQRコードを決定し、該QRコードが位置するキーノードは目標キーノードであり、受信したQRコードに基づいて移動の方向を決定し、ガイドマーカに従って移動する。
【0062】
ステップ404において、移動ロボットは、移動中にマーカ検出を行い、移動ロボットのセンサが収集したデータをリアルタイムで記録する。
【0063】
ガイドマーカを検出した場合、移動ロボットは、現在検出されたガイドマーカに従って移動して、ガイドマーカによって方向の正確性を保証することができる。
【0064】
ビーコンを検出した場合、移動ロボットは、現在検出されたビーコンとトポロジカル図における各トポロジカル点に対応するビーコンとをマッチングし、マッチングが成功した場合、目標キーノードに到達したと判定し、計画経路、トポロジカル図、現在到達した目標キーノードに基づいて、次の目標トポロジカル点、及びそれに対応するビーコンを決定し、現在到達した目標キーノードから移動し、全ての計画経路を少なくとも1回トラバースするまで、ステップ404に戻り、それ以外の場合、目標キーノードに到達していないと判定し、ガイドマーカに従って移動し、全ての計画経路をトラバースするまで、ステップ404に戻る。
【0065】
移動中に、データ収集の効率を向上させるために、移動ロボットは、ガイドマーカに基づいて目標キーノードへ移動することができ、キーノードとビーコンの位置姿勢情報によってフィードバックする必要がなく、このように、ビーコン間の距離が制限されず、必要なビーコンの数を減らすことができ、効率の向上に有利であり、また、ビーコンを柔軟に設けることができ、地図構築の利便性を向上させ、さらに、移動ロボットの移動経路は、シーン状況、データ収集のニーズに応じて移動することができ、計画経路にこだわる必要がなく、計画経路が移動経路集合のサブセットであればよく、例えば、
図2において、移動経路は、ABCDEFCであってもよく、ABCFEDCであってもよく、EDCFCBAであってもよく、又はCBAABCFEDCなどであってもよく、移動経路にAB経路、BC経路、CD経路、ED経路、EF経路、FC経路が含まれていればよく、このように、移動経路は、地図構築のナビゲーション座標に関係なくてもよく、移動経路は柔軟であり、移動プロセス中に測位結果に注目する必要がない。
【0066】
センサによって収集されたデータは、少なくとも見下ろし地面テクスチャ画像及びビーコンの識別情報を含む。さらに、慣性ナビゲーションセンサデータを含んでもよい。
【0067】
最後に、収集されたデータに基づいて、地図構築ソフトウェアを用いて地図構築を行う。
【0068】
移動ロボットは、地図構築ソフトウェアが収集されたデータに基づいて地図構築を行うように、収集されたデータを地図構築ソフトウェアに送信する。
【0069】
図5を参照すると、
図5は、本発明の実施例1による地図構築ソフトウェアが地図を構築するフローを示す概略図である。該地図構築方法は、以下のステップを含む。
【0070】
ステップ501において、収集された移動ロボットのセンサからのデータを同期する。
【0071】
収集された移動ロボットのセンサデータのタイムスタンプが異なるため、収集された移動ロボットのセンサデータの整合を行う。
【0072】
本実施例において、収集されたデータは、画像収集装置からの視覚データ、例えば、見下ろし地面テクスチャ画像、慣性センサからの慣性データ、例えば、ホイール式走行距離計データを含む。
【0073】
ステップ502において、視覚データを処理し、キーフレームを取得して、後続の最適化のために準備する。
【0074】
ここで、前記処理は、データ前処理、特徴抽出、マッチング及び位置姿勢計算、キーフレーム選別などを含む。
【0075】
ステップ503において、キーフレームに基づいて全体的な最適化を行い、全体的な地図情報を取得する。
【0076】
該ステップにおいて、最適化問題(optimization problem)を構築し、構築された最適化問題に基づいて全体的な最適化を行ってもよい。
【0077】
最適化問題は、状態変数(state variable)とその制約関係によって定義されてもよい。本実施例において、状態変数は、視覚フレーム、全体的なビーコンを含む。制約は、走行距離計制約(odometer constraint)、視覚マッチング制約(visual matching constrain)、ループバック制約(loopback constraint)、及び視覚-ビーコン観測制約(visual-beacon observation constraint)を含んでもよい。最適化状態変数の初期値はキーフレームによって与えられてもよく、最適化の前に制約関係に基づいて再計算されてもよい。
【0078】
全体的な最適化は、非線形最小二乗(例えば、LMアルゴリズム)を繰り返し解くことによって解くことができる。
【0079】
最適化が完了した後、全体的に整合性のとれた地図情報を取得することができる。
【0080】
ステップ504において、地図情報を測位ナビゲーション用の地図フォーマットに変換して保存し、最終的な地図の生成が完了する。
【0081】
実施例2
本実施例2では、同じマーキング内容を有するマーカ情報をビーコンとし、ガイドマーカを巡回経路として、見下ろし視覚テクスチャとレーザデータに基づいて視覚レーザ結合地図を構築する。
【0082】
まず、初期段階の準備を行う。
【0083】
本実施例において、実際のシーンに既存経路が存在せず、例えば、シーンにおける局所的な開放エリアでは、地図構築ソフトウェアを用いて地図構築のニーズに応じてトポロジカル図を作成し、トポロジカル図は、トポロジカル点間の論理的相対位置関係と、トポロジカル点間の論理的接続関係とを含む。
【0084】
トポロジカル点間の論理的相対位置関係に基づいて、実際のシーンにおいてキーノードを設け、キーノードにビーコンを設け、各ビーコンは同じマーキング内容のマーカ情報を有し、ビーコンは十字ビーコン、米字ビーコンなどであってもよい。キーノードにはキーノードの全体的な位置姿勢情報が含まれず、ビーコンの全体的な位置姿勢情報も含まれず、即ち、キーノードにおける位置姿勢情報及びビーコンの位置姿勢情報を手動で測定する必要がない。
【0085】
トポロジカル点間の論理的接続関係に基づいて、実際のシーンにおいて、トポロジカル図におけるトポロジカル点間の論理的接続関係に対応するために、キーノード間にガイドマーカとしてリボン又は弾性線を貼り付ける。例外として、キーノード間の距離が設定された距離閾値より小さい場合、ガイドマーカを設けなくてもよい。
【0086】
トポロジカル図におけるトポロジカル点間の論理的相対位置関係、論理的接続関係は、トポロジカル図の属性としてトポロジカル図に記憶される。
【0087】
図6を参照すると、
図6は、本発明の実施例2によるシーン構成及びトポロジカル図を示す概略図である。図中、左図は設けられた十字ビーコンとガイドマーカであり、右図は描かれたトポロジカル図である。ここで、トポロジカル図は、トポロジカル点間の論理的相対位置関係、及びトポロジカル点間の論理的接続関係を可視化したものであるため、実際のシーンにおける経路、キーノードに対応する等倍画像ではなく、論理的な対応関係である。例えば、実際のシーンにおいて、2つのキーノードA、Bの間にガイドマーカを設ける際に、厳密に直線である必要はなく、曲率のある曲線や移動ロボットが走行しやすい直線であってもよい。
【0088】
地図構築ソフトウェアを用いてトポロジカル図に基づいて計画経路を生成し、トポロジカル図と計画経路を移動ロボットに送信し、ここで、計画経路はトポロジカル図におけるトポロジカル点からなる有向経路の集合である。
【0089】
移動ロボットは、トポロジカル図に基づいて目標キーノードを決定し、巡回経路方式で目標キーノードへ移動する。
【0090】
図7に示すように、
図7は、実施例2における巡回経路方式で目標キーノードへ移動するフローを示す概略図である。具体的な移動プロセスは以下の通りである。
【0091】
移動ロボットは、地図構築ソフトウェアからトポロジカル図及び計画経路を取得し、あるキーノードから開始する。
【0092】
ステップ701において、移動ロボットは、初期化を行った後、トポロジカル図における該キーノードに対応するトポロジカル点を起点として設定し、現在のキーノードにおけるビーコンを読み取る。
【0093】
ステップ702において、移動ロボットは、計画経路、現在到達したキーノード、及びトポロジカル図に基づいて、トポロジカル図における目標トポロジカル点を決定し、該目標トポロジカル点に対応するキーノードを目標キーノードとし、目標キーノードに基づいて移動の方向を決定し、ガイドマーカに従って移動する。
【0094】
例えば、
図6のC点にある場合、目標トポロジカル点がFであれば、CF線分に従って移動し、目標トポロジカル点がDであれば、CD線分に従って移動する。
【0095】
ステップ703において、移動ロボットは、移動中にマーカ検出を行い、移動ロボットのセンサが収集したデータをリアルタイムで記録する。
【0096】
ガイドマーカを検出した場合、現在検出されたガイドマーカに従って移動して、ガイドマーカによって方向の正確性を保証することができる。
【0097】
ビーコンを検出した場合、慣性走行距離計(inertial odometer)によって記録された現在のキーノードと前の隣接キーノードとの間の第1の距離(即ち、現在検出されたビーコンと検出された前の隣接ビーコンとの間の第1の距離)に基づいて、現在検出されたビーコンと検出された前の隣接ビーコンとが同一のビーコンであるか否かを判断する。
【0098】
第1の距離が設定された距離閾値に等しい場合、現在検出されたビーコンと検出された前の隣接ビーコンとが異なるビーコンであると判断し、移動ロボットが次のキーノードに移動したことを示し、隣接するビーコンの順序と計画経路における隣接トポロジカル点の順序とのマッチングに基づいて、現在のビーコンに対応するトポロジカル点を決定し、例えば、図において、計画経路はABCDEFCであり、移動ロボットがキーノードAから開始し、ガイドマーカに従ってキーノードBに移動したとき、隣接するビーコンの順序はABであり、計画経路におけるABの順序に従って、ビーコンBに対応するトポロジカル点を決定し、ステップ704を実行する。それ以外の場合、現在検出されたビーコンと検出された前の隣接ビーコンとが同一のビーコンであると判断し、移動ロボットがまだ次のキーノードに移動していないことを示し、ステップ703に戻る。
【0099】
ビーコンの特徴が地面における既存の特徴と重複することによるビーコンの誤検出を避け、例えば、ビーコンが十字ビーコンである場合、地面の十字タイルの継ぎ目を十字マーカとして誤認識すると、十字マーカとトポロジカル図におけるトポロジカル点との対応ミスを引き起こす。
【0100】
誤検出が起こりやすい状況では、ビーコンとして米字特徴のような地面と区別できる特徴を選択する以外に、トポロジカル図における任意の2つのトポロジカル点の間に第2の距離を設置してもよく、該第2の距離は2つのトポロジカル点に対応する2つのキーノードにおけるビーコン間の測定距離であり、好ましくは、前記2つのトポロジカル点は論理的接続関係を有する2つのトポロジカル点である。
【0101】
このように、第2の距離を前記距離閾値とすることができ、第1の距離がトポロジカル図における2つのトポロジカル点の間の第2の距離に等しくない場合、現在のビーコンに誤検出があると判定してもよく、これにより、距離検証により誤検出のビーコンを排除する。
【0102】
ステップ704において、移動ロボットは、計画経路、現在到達した目標キーノード、及びトポロジカル図に基づいて、次の目標トポロジカル点を決定し、全ての計画経路を少なくとも1回トラバースするまで、ステップ703に戻る。ここで、移動ロボットが移動する移動経路は、少なくとも計画経路を含み、即ち、計画経路は、移動ロボットの移動経路集合のサブセットである。
【0103】
移動中に、データ収集の効率を向上させるために、移動ロボットは、ガイドマーカに基づいて目標トポロジカル点へ移動することができ、キーノードとビーコンの位置姿勢情報によってフィードバックする必要がなく、このように、ビーコン間の距離が制限されず、必要なビーコンの数を減らすことができ、効率の向上に有利であり、さらに、移動ロボットの移動経路は、シーン状況、データ収集のニーズに応じて移動することができ、計画経路にこだわる必要がなく、計画経路が移動経路集合のサブセットであればよく、例えば、
図6において、移動経路は、ABCDEFCであってもよく、ABCFEDCであってもよく、EDCFCBAであってもよく、又はCBAABCFEDCなどであってもよく、移動経路にAB経路、BC経路、CD経路、ED経路、EF経路、FC経路が含まれていればよく、このように、移動経路は、地図構築のナビゲーション座標に関係なくてもよく、移動経路は柔軟であり、移動プロセス中に測位結果に注目する必要がない。
【0104】
本実施例において、センサによって収集されたデータは、少なくとも見下ろし地面テクスチャ画像、慣性ナビゲーションセンサデータ、及びレーザデータを含む。
【0105】
最後に、収集されたデータに基づいて、地図構築ソフトウェアを用いて地図構築を行う。
【0106】
移動ロボットは、地図構築ソフトウェアが収集されたデータに基づいて地図構築を行うように、収集されたデータを地図構築ソフトウェアに送信する。
【0107】
図8を参照すると、
図8は、本発明の実施例2による地図構築ソフトウェアが地図を構築するフローを示す概略図である。該地図構築方法は、以下のステップを含む。
【0108】
ステップ801において、収集された移動ロボットのセンサからのデータを同期する。
【0109】
収集された移動ロボットのセンサデータのタイムスタンプが異なるため、収集されたセンサデータの整合を行う。
【0110】
本実施例において、収集されたデータは、画像収集装置からの視覚データ、例えば、見下ろし地面テクスチャ画像、慣性センサからの慣性データ、例えば、慣性走行距離計データ、レーザレーダセンサからのレーザデータを含む。
【0111】
ステップ802において、視覚データ、レーザデータを処理し、キーフレームを取得して、後続の最適化のために準備する。
【0112】
ここで、前記処理は、データ前処理、特徴抽出、マッチング及び位置姿勢計算、キーフレーム選別などを含む。
【0113】
ステップ803において、キーフレームに基づいて全体的な最適化を行い、全体的な地図情報を取得する。
【0114】
該ステップにおいて、最適化問題を構築し、構築された最適化問題に基づいて全体的な最適化を行ってもよい。
【0115】
最適化問題は、状態変数とその制約関係によって定義されてもよい。本実施例において、状態変数は、視覚フレーム、レーザフレーム、グローバルビーコンを含む。制約は、全体的なビーコンを含む。制約は、走行距離計制約、視覚マッチング制約、ループバック制約、視覚-ビーコン観測制約、レーザマッチング制約(laser matching constraint)、及び視覚レーザ関連制約(visual laser association constraint)を含んでもよい。最適化状態変数の初期値はキーフレームによって与えられてもよく、最適化の前に制約関係に基づいて再計算されてもよい。
【0116】
全体的な最適化は、非線形最小二乗(例えば、LMアルゴリズム)を繰り返し解くことによって解くことができる。
【0117】
最適化が完了した後、全体的に整合性のとれた地図情報を取得することができる。
【0118】
ステップ804において、地図情報を測位ナビゲーション用の地図フォーマットに変換して保存し、最終的な地図の生成が完了する。
【0119】
本発明の実施例1、2において、地図構築のタイミングは、全てのデータの収集が完了した後であってもよく、収集されたデータを受信しながら地図を構築してもよく、ニーズ及びセンサに記録された情報に応じて、構築された地図は、視覚地図、レーザ地図、又は視覚-レーザ結合地図であってもよく、本発明は、具体的な地図構築方法について限定せず、最適化に基づくSLAM地図構築方法を用いて地図構築を行ってもよい。前記地図構築ソフトウェアは、PC側、サーバ、又は移動ロボット本体で動作してもよい。
【0120】
図9に示すように、
図9は、本発明の実施例による移動ロボットの地図を構築するためのデータの収集装置を示す概略図であり、該装置は、目標キーノード取得モジュールと、移動制御モジュールと、収集モジュールとを含む。
【0121】
目標キーノード取得モジュールは、目標キーノードを取得するために用いられる。
【0122】
移動制御モジュールは、目標キーノードへの移動プロセスを制御するために用いられる。
【0123】
収集モジュールは、移動中に移動ロボットのセンサからデータを収集するために用いられる。
【0124】
ここで、目標キーノードは、少なくともトポロジカル情報に基づいて決定され、前記トポロジカル情報は、トポロジカル点間の論理的相対位置関係と、トポロジカル点間の論理的接続関係とを含み、実際のシーンにおけるキーノードにビーコンが設けられ、前記トポロジカル点は、実際のシーンにおけるキーノードにおけるビーコンと1対1に対応し、前記論理的接続関係は、キーノード間に接続されたガイドマーカと1対1に対応する。
【0125】
移動中に、ガイドマーカを用いて移動の方向を決定し、ビーコンを用いて到達する目標キーノードを決定し、いずれのキーノードといずれのビーコンの位置姿勢情報を使用しない。
【0126】
前記移動制御モジュールは、マーカ検出サブモジュールと、移動制御サブモジュールとを含む。
【0127】
マーカ検出サブモジュールは、移動中にマーカ検出を行い、ガイドマーカを検出した場合、移動制御サブモジュールに移動命令を出力し、ビーコンを検出した場合、目標キーノード取得モジュールに要求命令を送信するために用いられる。
【0128】
移動制御サブモジュールは、マーカ検出サブモジュールからの移動命令、及び目標キーノード取得モジュールからの目標キーノード情報に基づいて移動するために用いられる。
【0129】
図10を参照すると、
図10は、本発明による地図構築システムを示す概略図であり、該システムは、収集装置と、地図構築装置とを含む。
【0130】
収集装置は、移動ロボットの地図を構築するためのデータを収集するために用いられる。
【0131】
地図構築装置は、移動ロボットの地図を構築するためのデータを用いて地図を構築するために用いられる。
【0132】
前記地図構築装置は、同期モジュール、追跡モジュール、最適化モジュール、及び地図生成モジュールを含む。
【0133】
同期モジュールは、収集された移動ロボットのセンサからのデータを同期するために用いられる。
【0134】
追跡モジュールは、収集された画像データを処理し、キーフレームを取得するために用いられる。
【0135】
最適化モジュールは、キーフレームに基づいて全体的な最適化を行い、全体的な地図情報を取得するために用いられる。
【0136】
地図生成モジュールは、地図情報を地図フォーマットに変換するために用いられる。
【0137】
図11を参照すると、
図11は、本発明の実施例による収集装置、地図構築システム、又は移動ロボットを示す概略図である。メモリとプロセッサとを含み、前記メモリにコンピュータプログラムが記憶されており、前記プロセッサが前記コンピュータプログラムを実行すると、本発明の実施例の移動ロボットの地図を構築するためのデータの収集方法を構築するステップ、及び/又は、地図構築方法のステップが実施される。
【0138】
上記のメモリは、ランダムアクセスメモリ(Random Access Memory、RAM)を含んでもよいし、少なくとも1つのディスクメモリなどの不揮発性メモリ(Non-Volatile Memory、NVM)を含んでもよい。オプションとして、メモリは、プロセッサから離れて位置する少なくとも1つの記憶装置であってもよい。
【0139】
上記プロセッサは、中央処理装置(Central Processing Unit、CPU)、ネットワークプロセッサ(Network Processor、NP)などを含む汎用プロセッサであってもよいし、デジタル信号プロセッサ(Digital Signal Processing、DSP)、特定用途向け集積回路(Application Specific Integrated Circuit、ASIC)、フィールドプログラマブルゲートアレイ(Field-Programmable Gate Array、FPGA)、又は他のプログラマブル論理デバイス、ディスクリートゲート又はトランジスタ論理デバイス、ディスクリートハードウェアコンポーネントであってもよい。
【0140】
本発明の実施例は、コンピュータプログラムが記憶されているコンピュータ可読記憶媒体をさらに提供し、前記コンピュータプログラムがプロセッサによって実行されると、本発明の実施例の移動ロボットの地図を構築するためのデータの収集方法のステップ、及び/又は、地図構築方法のステップが実施される。
【0141】
装置/ネットワーク側デバイス/記憶媒体の実施例について、基本的に方法の実施例と類似するため、その説明が簡単であり、関連箇所は方法の実施例の一部の説明を参照すればよい。
【0142】
本発明では、第1や第2のような関係用語は、ある実体や操作を別の実体や操作から区別するためにのみ使用されており、それらの実体や操作の間に必ずしもそのような実際の関係や順序を要求したり示唆したりするものではない。また、用語「含む」、「含有」またはそのいずれかの他の変形は、非排他的な含有を含むことを意図し、それにより一連の要素を含むプロセス、方法、物品またはデバイスはそれらの要素を含むだけでなく、また明確に列挙されていない他の要素も含み、またはこのようなプロセス、方法、物品またはデバイスの固有の要素も含む。より多くの制限がない場合、文「1つの…を含む」により限定された要素は、前記要素を含むプロセス、方法、物品またはデバイスにさらに他の同じ要素が存在することを排除するものではない。
【0143】
以上は、本発明の好ましい実施例に過ぎず、本発明を限定するものではなく、本発明の趣旨及び原則内で行われたいかなる修正、同等置換、改良などは、いずれも本発明の保護範囲内に含まれるものとする。
【国際調査報告】