(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023021098
(43)【公開日】2023-02-09
(54)【発明の名称】マップ構築方法、装置及び記憶媒体
(51)【国際特許分類】
G06T 7/70 20170101AFI20230202BHJP
G06T 17/05 20110101ALI20230202BHJP
G01B 11/00 20060101ALI20230202BHJP
G05D 1/02 20200101ALI20230202BHJP
【FI】
G06T7/70 Z
G06T17/05
G01B11/00 H
G01B11/00 B
G05D1/02 H
【審査請求】未請求
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2022122263
(22)【出願日】2022-07-29
(31)【優先権主張番号】202110873182.3
(32)【優先日】2021-07-30
(33)【優先権主張国・地域又は機関】CN
(71)【出願人】
【識別番号】521254764
【氏名又は名称】北京図森智途科技有限公司
(74)【代理人】
【識別番号】100168583
【弁理士】
【氏名又は名称】前井 宏之
(72)【発明者】
【氏名】劉 光偉
(72)【発明者】
【氏名】趙 季
【テーマコード(参考)】
2F065
5B050
5H301
5L096
【Fターム(参考)】
2F065AA04
2F065AA06
2F065CC11
2F065DD03
2F065FF01
2F065FF11
2F065FF63
2F065FF67
2F065GG04
2F065HH04
2F065JJ03
2F065JJ26
2F065MM06
2F065PP22
2F065QQ31
5B050AA07
5B050BA11
5B050CA01
5B050DA01
5B050EA07
5B050FA02
5H301AA01
5H301BB10
5H301CC03
5H301CC06
5H301CC10
5H301GG08
5H301GG17
5L096AA09
5L096EA31
5L096FA02
5L096FA06
5L096FA62
5L096FA64
5L096FA66
5L096FA67
(57)【要約】 (修正有)
【課題】セマンティック結果と姿勢結果が相互制約関係を形成することができ、セマンティックマップと点群マップを迅速、かつ、正確に得ることができ、さらに、より精確な高精度マップを得ることができ、移動体の自律移動性能を向上させることに有利なマップ構築方法、装置及び記憶媒体を提供する。
【解決手段】方法は、予め設定されたセンサによって収集されたセンサデータを取得するステップと、前記センサデータに基づいて移動体の姿勢制約関係及びセマンティックオブジェクトのセマンティック制約関係を確立するステップと、姿勢制約関係及びセマンティック制約関係に基づいて組合せ最適化求解を行い、セマンティックオブジェクトのセマンティック結果及び移動体の姿勢結果を決定するステップと、セマンティック結果及び姿勢結果に基づいてセマンティックマップ及び点群マップを構築するステップと、を含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
予め設定されたセンサによって収集されたセンサデータを取得するステップと、
前記センサデータに基づいて移動体の姿勢制約関係及びセマンティックオブジェクトのセマンティック制約関係を確立するステップと、
前記姿勢制約関係及び前記セマンティック制約関係に基づいて組合せ最適化求解を行い、前記セマンティックオブジェクトのセマンティック結果及び前記移動体の姿勢結果を決定するステップと、
前記セマンティック結果及び前記姿勢結果に基づいてセマンティックマップ及び点群マップを構築するステップと、を含む、ことを特徴とするマップ構築方法。
【請求項2】
前記センサデータは、画像収集装置によって収集された画像と、点群収集装置によって収集された点群とを含み、前記センサデータに基づいてセマンティックオブジェクトのセマンティック制約関係を確立するステップは、
前記画像及び前記点群に基づいて、各セマンティックオブジェクトに対応する三次元輪郭の観測値を決定するステップと、
前記三次元輪郭の観測値に基づいてセマンティック制約関係を確立するステップと、を含む、ことを特徴とする請求項1に記載の方法。
【請求項3】
前記画像及び前記点群に基づいて、セマンティックオブジェクトに対応する三次元輪郭の観測値を決定する前記ステップは、
前記画像に対してセマンティックセグメンテーション処理を行い、セマンティックオブジェクトが存在する領域の二次元輪郭を得るステップと、
前記点群を前記画像に投影し、かつ前記二次元輪郭に基づいて前記セマンティックオブジェクトに対応するターゲット三次元点を決定するステップと、
前記ターゲット三次元点をフィッティングし、前記セマンティックオブジェクトに対応する三次元輪郭の観測値を得るステップと、を含む、ことを特徴とする請求項2に記載の方法。
【請求項4】
前記ターゲット三次元点をフィッティングし、前記セマンティックオブジェクトに対応する三次元輪郭の観測値を得る前記ステップは、
前記ターゲット三次元点に対して平面フィッティング又は直線フィッティングを行い、対応する空間方程式を得るステップと、
前記二次元輪郭の画素座標、前記画像収集装置の内部パラメータ、及び前記画像収集装置と前記点群収集装置との間の外部パラメータに基づいて前記ターゲット三次元点の三次元座標を決定するステップと、
前記空間方程式及び前記ターゲット三次元点の三次元座標に基づいて前記ターゲット三次元点をフィッティングし、セマンティックオブジェクトに対応する三次元輪郭の観測値を得るステップと、を含む、ことを特徴とする請求項3に記載の方法。
【請求項5】
前記セマンティックオブジェクトは車線を含み、前記車線に対応する三次元輪郭は空間矩形を含み、前記空間矩形の特徴量は中心点、法線ベクトル、長辺ベクトル、長さ、及び幅のうちの少なくとも1つを含み、前記車線に対応するターゲット三次元点に対応するフィッティング方式は平面フィッティングであり、これにより対応する空間平面方程式を得、ここで、各破線車線は、1つの空間矩形に対応し、各実線車線は、その長さ及び曲率に基づいて複数の空間矩形に対応する、ことを特徴とする請求項4に記載の方法。
【請求項6】
前記セマンティックオブジェクトは、道路ポールを含み、前記道路ポールに対応する三次元輪郭は、ピラーを含み、前記ピラーの特徴量は、上面中心点、底面中心点、及び半径のうちの少なくとも1つを含み、前記道路ポールに対応するターゲット三次元点に対応するフィッティング方式は直線フィッティングであり、これにより対応する空間直線方程式を得る、ことを特徴とする請求項5に記載の方法。
【請求項7】
前記三次元輪郭の観測値に基づいてセマンティック制約関係を確立する前記ステップは、
予め設定されたスライディングウィンドウにおける各キーフレームに対して、現在のキーフレームにおける三次元輪郭の観測値とセマンティックオブジェクト状態変数集合との間の関連付けを確立することで、前記セマンティックオブジェクト状態変数集合におけるセマンティックオブジェクト状態変数を更新し、かつ現在のキーフレームにおける各三次元輪郭に対応する誤差関数を確立するステップと、
前記予め設定されたスライディングウィンドウにおける各キーフレームにそれぞれ対応する誤差関数に基づいて、セマンティック制約関係を確立するステップと、を含む、ことを特徴とする請求項6に記載の方法。
【請求項8】
車線に対して、現在のキーフレームにおける三次元輪郭の観測値とセマンティックオブジェクト状態変数集合との間の関連付けを確立することで、前記セマンティックオブジェクト状態変数集合におけるセマンティックオブジェクト状態変数を更新する前記ステップは、
現在のキーフレームにおける各空間矩形に対して、同一座標系において現在の空間矩形の中心点の観測値と車線状態変数集合における各矩形状態変数の中心点との第1距離を計算し、第1の予め設定された距離閾値より小さい第1距離が存在すれば、現在の空間矩形と対応する矩形状態変数とを関連付け、存在しなければ、車線状態変数集合において現在の空間矩形に対応する矩形状態変数を作成するステップを含む、ことを特徴とする請求項7に記載の方法。
【請求項9】
現在のキーフレームにおける誤差関数は、空間矩形に対応する車線誤差関数及び/又はピラーに対応する道路ポール誤差関数を含み、前記車線誤差関数は、各破線車線の誤差関数及び各実線車線の誤差関数を含む、ことを特徴とする請求項7に記載の方法。
【請求項10】
破線車線の誤差関数は、
中心点、法線ベクトル、長辺ベクトル、長さ、及び幅に関する状態変数と観測値との誤差関数と、法線ベクトル及び長辺ベクトルの状態変数のそれぞれと単位ベクトルとの誤差関数とを含む、ことを特徴とする請求項7に記載の方法。
【請求項11】
実線車線の誤差関数は、
法線ベクトル、長辺ベクトル、及び幅に関する状態変数と観測値との誤差関数と、中心点の状態変数と観測中心線との第2の距離と、法線ベクトル及び長辺ベクトルの状態変数のそれぞれと単位ベクトルとの誤差関数とを含む、ことを特徴とする請求項7に記載の方法。
【請求項12】
予め設定されたセンサによって収集されたセンサデータを取得するためのデータ取得モジュールと、
前記センサデータに基づいて移動体の姿勢制約関係及びセマンティックオブジェクトのセマンティック制約関係を確立するための制約関係確立モジュールと、
前記姿勢制約関係及び前記セマンティック制約関係に基づいて組合せ最適化求解を行い、前記セマンティックオブジェクトのセマンティック結果及び前記移動体の姿勢結果を決定するための組合せ求解モジュールと、
前記セマンティック結果及び前記姿勢結果に基づいてセマンティックマップ及び点群マップを構築するためのマップ構築モジュールと、を含む、ことを特徴とするマップ構築装置。
【請求項13】
前記予め設定されたセンサは、全地球航法衛星システムGNSS、慣性測定ユニットIMU、車輪速度計、画像収集装置、及び点群収集装置のうちの1つ又は複数を含み、そのうち、前記IMUは加速度計及びジャイロを含み、
ここで、前記姿勢制約関係は、グローバル姿勢制約関係、IMU事前積分制約関係、速度制約関係、及び点群レジストレーション制約関係のうちの1つ又は複数を含む、ことを特徴とする請求項12に記載の装置。
【請求項14】
前記姿勢制約関係がグローバル姿勢制約関係を含む場合、前記センサデータに基づいて移動体のグローバル姿勢制約関係を確立するステップは、
前回の時刻の姿勢及び前回の時刻から現在の時刻までの対応する姿勢変化量に基づいて、現在の時刻の現在の姿勢を推定するステップであって、姿勢変化量はIMU積分によって得られるステップと、
推定された現在の姿勢と姿勢観測値とのギャップが予め設定されたギャップ閾値よりも小さい場合、姿勢の状態変数及び姿勢観測値に基づいて現在の時刻に対応するグローバル姿勢制約関係を確立し、そうでない場合、現在の時刻に対応するグローバル姿勢制約関係を破棄するステップと、を含む、ことを特徴とする請求項13に記載の装置。
【請求項15】
前記組合せ求解モジュールは、さらに、
前記姿勢制約関係及び前記セマンティック制約関係に基づいて予め設定されたスライディングウィンドウ内の各キーフレームに対応する組合せ最適化目的関数を構築するステップと、
前記組合せ最適化目的関数について求解を行い、各状態変数の推定値を得るステップであって、セマンティックオブジェクト状態変数の推定値をセマンティック結果と表記し、位置状態変数及び姿勢状態変数の推定値を姿勢結果と表記するステップと、を含む、ことを特徴とする請求項13に記載の装置。
【請求項16】
前記マップ構築モジュールは、さらに、
前記セマンティック結果及び幾何学的関係に基づいてセマンティックオブジェクトのコーナーを計算するステップと、
各コーナーに対して繋ぎ合わせ処理を行い、セマンティックオブジェクトの3D輪郭を得るステップと、
各セマンティックオブジェクトの3D輪郭を統合し、セマンティックオブジェクトのセマンティックマップを得るステップと、
前記姿勢結果に基づいて点群を重畳し、点群マップを得るステップと、を含み、
ここで、破線車線に対して、3D輪郭は、空間矩形の4つのコーナーを順次繋ぎ合わせたものに対応し、実線車線に対して、3D輪郭は、長さ方向におけるコーナーを空間順に順次繋ぎ合わせて得られる2つの辺線に対応する、ことを特徴とする請求項15に記載の装置。
【請求項17】
コンピュータプログラムが記憶されたコンピュータ可読記憶媒体であって、該プログラムは、プロセッサによって実行されると、
予め設定されたセンサによって収集されたセンサデータを取得するステップと、
前記センサデータに基づいて移動体の姿勢制約関係及びセマンティックオブジェクトのセマンティック制約関係を確立するステップと、
前記姿勢制約関係及び前記セマンティック制約関係に基づいて組合せ最適化求解を行い、前記セマンティックオブジェクトのセマンティック結果及び前記移動体の姿勢結果を決定するステップと、
前記セマンティック結果及び前記姿勢結果に基づいてセマンティックマップ及び点群マップを構築するステップと、を行う、ことを特徴とするコンピュータ可読記憶媒体。
【請求項18】
前記予め設定されたセンサは、全地球航法衛星システムGNSS、慣性測定ユニットIMU、車輪速度計、画像収集装置、及び点群収集装置のうちの1つ又は複数を含み、そのうち、前記IMUは加速度計及びジャイロを含み、
ここで、前記姿勢制約関係は、グローバル姿勢制約関係、IMU事前積分制約関係、速度制約関係、及び点群レジストレーション制約関係のうちの1つ又は複数を含み、
ここで、前記姿勢制約関係及び前記セマンティック制約関係に基づいて組合せ最適化求解を行い、前記セマンティックオブジェクトのセマンティック結果及び前記移動体の姿勢結果を決定する前記ステップは、
前記姿勢制約関係及び前記セマンティック制約関係に基づいて予め設定されたスライディングウィンドウ内の各キーフレームに対応する組合せ最適化目的関数を構築するステップと、
前記組合せ最適化目的関数について求解を行い、各状態変数の推定値を得るステップであって、セマンティックオブジェクト状態変数の推定値をセマンティック結果と表記し、位置状態変数及び姿勢状態変数の推定値を姿勢結果と表記するステップと、を含む、ことを特徴とする請求項17に記載のコンピュータ可読記憶媒体。
【請求項19】
前記点群レジストレーション制約は、以下の方式で得られ、
予め設定されたスライディングウィンドウ内の各キーフレームの点群に対して、点群における点の曲率情報に基づいて各点を線特徴点と平面特徴点に分割し、
予め設定されたスライディングウィンドウ内の各キーフレームに対して、前のキーフレームの姿勢とIMU積分から得られたフレーム間姿勢変化量とを重畳し、現在のキーフレームに対応する初期レジストレーション姿勢を得、
線特徴点及び平面特徴点について、それぞれ初期レジストレーション姿勢に基づいて最近傍検索を前記予め設定されたスライディングウィンドウにおける各キーフレームの特徴点を含む局所マップで行い、対応する最近傍特徴点セットを得、
対応する最近傍特徴点セットに基づいて線誤差関数及び面誤差関数をそれぞれ確立し、
前記予め設定されたスライディングウィンドウ内の各線誤差関数及び面誤差関数に基づいて点群レジストレーション制約を決定する、ことを特徴とする請求項18に記載のコンピュータ可読記憶媒体。
【請求項20】
線特徴点に対応する最近傍特徴点セットに基づいて線誤差関数を確立することは、
線特徴点に対応する最近傍特徴点セットに基づいて直線フィッティングを行い、線特徴点から対応するフィッティング直線までの距離に基づいて線誤差関数を決定することを含み、
平面特徴点に対応する最近傍特徴点セットに基づいて面誤差関数を確立することは、
平面特徴点に対応する最近傍特徴点セットに基づいて平面フィッティングを行い、平面特徴点から対応するフィッティング平面までの距離に基づいて面誤差関数を決定することを含む、ことを特徴とする請求項19に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施例は、高精度マップ技術分野に関し、特に、マップ構築方法、装置、デバイス及び記憶媒体に関する。
【背景技術】
【0002】
自動運転技術、インテリジェントロボット技術の発展に伴い、自動運転車両とインテリジェントロボットの正確な走行をいかに保証するかがホット点問題となっている。自動運転技術においては、一般的に、高精度マップ(High Definition Map)が適用され、高精度マップは、主に、点群マップとセマンティックマップとを含む。そのうち、点群マップは、空間位置情報を含む三次元(3-dimension、3D)点群であってもよく、主にレジストレーションに基づくオンライン位置特定に用いられ、セマンティックマップは、車線、道路ポール又は信号機などの道路情報を含むマップであってもよく、オンライン位置特定及び経路計画などに用いられてもよく、ここで、車線、道路ポール又は信号機などの交通要素がセマンティックオブジェクトと呼ばれることができる。
【0003】
現在、高精度の点群マップ及び車線マップを構築する方法は、主に2つあり、1つは、高精度の複合ナビゲーション装置を利用してリアルタイム姿勢を計算し、そして得られた姿勢に基づいて、レーザレーダの走査によって得られた点群を世界座標系に変換し、一定時間又は一定距離におけるデータを累積すれば高密度の点群マップを得ることができ、その後、点群マップにおける異なる物体の反射率の違いに基づいて、セマンティックマップを手動で描くことである。もう1つは、伝統的な位置特定とマップ作成の同時実行(Simultaneous Localization and Mapping、SLAM)方法により、姿勢推定及び疎な点群マップの構築を実現し、その上で二次元(2-dimension、2D)画像に対してセマンティックセグメンテーションを行って道路情報に関連する点を得、さらにセマンティックマップを構築することである。
【0004】
しかしながら、従来の解決策では、車線を手動で描く方式は、コストが高く、かつ効率が低く、また、点群の反射率は、路面材質、湿度、及びレーザレーダ取り付け高さなどの外的要因による外乱を受けやすく、実際の道路シーンにおいて、点群反射率により全ての道路情報を正確に認識することは困難である。また、視覚的方法により直接取得されるのは2D情報であり、精度が低く、構築したセマンティックマップの誤差が大きい。このように、既存の高精度マップの構築方法は未だ不十分であり、改善が求められている。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の実施例は、既存の高精度マップの構築方法を最適化することができるマップ構築方法、装置、デバイス及び記憶媒体を提供する。
【課題を解決するための手段】
【0006】
第1の態様において、本発明の実施例は、マップ構築方法を提供し、前記方法は、
予め設定されたセンサによって収集されたセンサデータを取得するステップと、
前記センサデータに基づいて移動体の姿勢制約関係及びセマンティックオブジェクトのセマンティック制約関係を確立するステップと、
前記姿勢制約関係及び前記セマンティック制約関係に基づいて組合せ最適化求解を行い、前記セマンティックオブジェクトのセマンティック結果及び前記移動体の姿勢結果を決定するステップと、
前記セマンティック結果及び前記姿勢結果に基づいてセマンティックマップ及び点群マップを構築するステップと、を含む。
【0007】
第2の態様において、本発明の実施例は、マップ構築装置を提供し、前記装置は、
予め設定されたセンサによって収集されたセンサデータを取得するためのデータ取得モジュールと、
前記センサデータに基づいて移動体の姿勢制約関係及びセマンティックオブジェクトのセマンティック制約関係を確立するための制約関係確立モジュールと、
前記姿勢制約関係及び前記セマンティック制約関係に基づいて組合せ最適化求解を行い、前記セマンティックオブジェクトのセマンティック結果及び前記移動体の姿勢結果を決定するための組合せ求解モジュールと、
前記セマンティック結果及び前記姿勢結果に基づいてセマンティックマップ及び点群マップを構築するためのマップ構築モジュールと、を含む。
【0008】
第3の態様において、本発明の実施例は、メモリと、プロセッサと、メモリに記憶され、プロセッサ上で実行可能なコンピュータプログラムとを含むコンピュータ装置であって、前記プロセッサは、前記コンピュータプログラムを実行すると、本発明の実施例によって提供されるマップ構築方法を実現する、コンピュータ装置を提供する。
【0009】
第4の態様において、本発明の実施例は、コンピュータプログラムが記憶されたコンピュータ可読記憶媒体であって、該プログラムは、プロセッサによって実行されると、本発明の実施例によって提供されるマップ構築方法を実現する、コンピュータ可読記憶媒体を提供する。
【発明の効果】
【0010】
本発明の実施例で提供されるマップ構築方法は、予め設定されたセンサによって収集されたセンサデータに基づいて、移動体の姿勢制約関係及びセマンティックオブジェクトのセマンティック制約関係を確立し、姿勢制約関係及びセマンティック制約関係に基づいて組合せ最適化求解を行い、セマンティック結果及び移動体の姿勢結果を決定し、最後に、セマンティック結果及び姿勢結果に基づいてセマンティックマップ及び点群マップを構築する。上記技術案を採用することで、セマンティックマップの構築過程と点群マップの構築過程を融合し、姿勢制約関係とセマンティック制約関係を利用して組合せ求解を行うことで、セマンティック結果と姿勢結果が相互制約関係を形成することができ、セマンティックマップと点群マップを迅速かつ正確に得ることができ、さらにより精確な高精度マップを得ることができ、移動体の自律移動性能を向上させることに有利である。
【図面の簡単な説明】
【0011】
【
図1】本発明の実施例によって提供されるマップ構築方法の概略フローチャートである。
【
図2】本発明の実施例によって提供されるさらに別のマップ構築方法の概略フローチャートである。
【
図3】本発明の実施例によって提供されるマップ構築過程の原理概略図である。
【
図4】本発明の実施例によって提供される橋梁シーンのマップ構築結果の概略図である。
【
図5】本発明の実施例によって提供されるトンネルシーンのマップ構築結果の概略図である。
【
図6】本発明の実施例によって提供されるマップ構築装置の構造ブロック図である。
【
図7】本発明の実施例によって提供されるコンピュータ装置の構造ブロック図である。
【発明を実施するための形態】
【0012】
以下、本願の実施例における技術案を、本願の実施例における図面を参照して、明確かつ完全に説明するが、明らかに、説明された実施例は、本願の一部の実施例に過ぎず、全ての実施例ではない。本願における実施例に基づいて、創造的な労働をすることなく当業者によって得られる他の全ての実施例は、本願の保護範囲に属する。
【0013】
なお、本願の明細書、特許請求の範囲、及び、上記図面において、「第1」、「第2」などの用語は、類似の対象を区別するために用いられるものであり、必ずしも特定の順序又は前後順序を記述するために用いられるものではない。このように使用されるデータは、本明細書に記載の本願の実施例のために、適宜、交換されてもよいことが理解されるべきである。さらに、「含む」及び「有する」という用語ならびにそれらの任意の変形は、非排他的包含をカバーすることを意図しており、例えば、一連のステップ又はユニットを含むプロセス、方法、システム、製品又は装置が、必ずしも明確に列挙されたそれらのステップ又はユニットに限定されるわけではなく、明確に列挙されていないステップ又はユニット、又はそのようなプロセス、方法、製品又は装置に固有の他のステップ又はユニットを含むことができる。
【0014】
本願を当業者がよりよく理解するために、まず、本願の実施例に現れる技術用語の一部を以下に説明する。
移動体:車両、移動ロボット、及び航空機などのマップ収集が可能な物体を意味し、移動体にレーザレーダやカメラなどの各種センサを搭載してもよい。
位置特定とマップ作成の同時実行:未知環境において、移動体は、位置推定とマップに基づいて自己位置特定を行い、同時に自己位置特定に基づいてマップを増分的に構築する。
マップ作成(Mapping):推定した車両や移動ロボットのリアルタイム姿勢、及びレーザレーダなどの視覚センサの収集データに基づいて、現在のシーンを描写する高精度マップを構築する。
姿勢(Pose):位置と向きの総称で、3つの位置自由度と3つの向き自由度を含む6つの自由度を含むものである。向きの3つの自由度は、通常、ピッチ角(Pitch)、ロール角(Roll)、ヨー角(Yaw)で表される。
フレーム(Frame):センサが1回の観測を完了して受信した測定データであり、例えばカメラの1フレームのデータは1枚の画像であり、レーザレーダの1フレームのデータは1組のレーザ点群である。
レジストレーション(Registration):同一領域の異なる時刻、異なる位置での観測結果をマッチングし、2つの観測時刻間の相対的な姿勢関係を得る。
非線形最適化(Nonlinear Optimization):一連の未知の実関数からなる方程式組及び不等式の最適化問題を求解する。
キーフレーム(Keyframe):非線形最適化法又は他の方法を用いてマルチセンサ融合を行うとき、システムの計算量を削減するために、通常、距離変化量又は姿勢変化量がある閾値を超えたときに1つのキーフレームを作成し、かつ最適化の際にキーフレームを最適化することが一般的である。
GNSS:Global Navigation Satellite System、全地球航法衛星システムであり、GPSや北斗測位システムなどを含むことができる。
GPS:Global Positioning System、全地球測位システム。
IMU:Inertial Measurement Unit、慣性測定ユニットであり、物体の3軸姿勢角(又は角速度)及び加速度を測定する装置である。
複合ナビゲーション装置:例えばGNSS及びIMUを含む複合ナビゲーション装置。
【0015】
本願のいくつかの実施例では、「車両」という用語は、例えば、航空機、船舶、宇宙船、自動車、トラック、バン型トラック、セミトレーラ、オートバイ、ゴルフカート、オフロード車両、倉庫輸送車両、又は農業用車両、ならびに電車又は列車、及び他の鉄道車両などのレール上を走行する輸送手段を含む、任意の移動体を含むものとして広く解釈される。本願における「車両」は、典型的には、動力システム、センサシステム、制御システム、周辺機器、及びコンピュータシステムを含んでもよい。いくつかの実施例では、車両は、より多い、より少ない、又は異なるシステムを含んでもよい。
【0016】
図1は、本発明の実施例によって提供されるマップ構築方法の概略フローチャートであり、該方法は、高精度マップ構築の応用シーンに適用可能であり、マップ構築装置によって実行されてもよく、ここで該装置は、ソフトウェア及び/又はハードウェアによって実現されてもよく、一般的には、コンピュータ装置に集積されることができる。ここでのコンピュータ装置は、移動体に集積されてもよいし、移動体に外付けされたり移動体と通信したりしてもよい。
図1に示すように、該方法は、ステップ101~ステップ104を含む。
【0017】
ステップ101、予め設定されたセンサによって収集されたセンサデータを取得する。
【0018】
例示的に、予め設定されたセンサは、前記移動体に搭載されることができ、具体的な搭載方式は限定されず、移動体に集積されたり移動体に外付けされたりなどしてもよい。予め設定されたセンサのタイプは、限定されず、姿勢制約関係を確立するために用いられる任意のセンサであってもよく、例えば、複合ナビゲーション装置(GNSS/IMU)INS、IMU、車輪速度計、画像収集装置、点群収集装置、加速度計、及びジャイロのうちの1つ又は複数を含んでもよく、一部のセンサはまた、一体に集積されてもよく、例えば、IMUには加速度計及びジャイロなどを含んでもよく、GNSS及びIMUは、複合ナビゲーション装置として採用されてもよい。いくつかの実施例では、画像収集装置は、例えば、カメラであり、点群収集装置は、例えば、レーザレーダ、ミリ波レーダ、超音波レーダなどであるが、もちろんこれらに限定されない。
【0019】
ステップ102、センサデータに基づいて移動体の姿勢制約関係及びセマンティックオブジェクトのセマンティック制約関係を確立する。
【0020】
いくつかの実施例では、本開示は、第1のセンサ群によって収集されたセンサデータに基づいて移動体の姿勢制約関係を確立し、第2のセンサ群によって収集されたセンサデータに基づいてセマンティックオブジェクトのセマンティック制約関係を確立する。該セマンティックオブジェクトは、移動体が存在する環境内のセマンティックオブジェクトである。姿勢制約関係は、姿勢に関連する状態変数を含み、セマンティック制約関係は、セマンティックに関連する状態変数を含む。該第1のセンサ群は、例えば、複合ナビゲーション装置、車輪速度計、レーザ収集装置などを含むことができるが、もちろん、画像収集装置を含んでもよい。第2のセンサ群は、画像収集装置と、点群収集装置とを含み、本開示は、画像収集装置によって収集された画像と、レーザ収集装置によって収集された点群とに基づいて、セマンティックオブジェクトの三次元空間表現を生成し、組合せ最適化によってセマンティックオブジェクトの状態量を得る。
【0021】
本願の実施例において、姿勢制約関係の具体的なタイプは限定されず、例えばグローバル姿勢制約関係及び局所一貫性制約関係であってもよく、そのうち、局所一貫性制約関係は、例えばIMU事前積分制約関係、速度制約関係及び点群レジストレーション制約関係などを含むことができる。移動体における予め設定されたセンサの異なる選択に基づいて異なる姿勢制約関係を確立してもよく、確立する必要がある姿勢制約関係に基づいて相応な予め設定されたセンサを移動体に配置することなども可能である。姿勢制約関係を確立するとき、センサデータに基づいて相応な誤差関数を姿勢制約関係として確立してもよく、誤差関数に含まれる状態変数及び誤差関数の具体的な表現形式は限定されず、実際の状況に応じて設定することができる。
【0022】
セマンティックマップには、車線、道路ポール、道路標識、歩道、及び信号機などのような多くのタイプのセマンティックオブジェクトが含まれることがあり、本発明の実施例において、セマンティック制約関係を確立するときに参照されるセマンティックオブジェクトは、1つ又は複数であってもよく、特に限定されず、なお、複数のセマンティックオブジェクトが存在する場合、例えば、セマンティックオブジェクトのタイプが車線であり、セマンティック制約関係を確立するときに複数の車線が参照されるように、同じタイプのセマンティックオブジェクトが含まれることもある。
【0023】
セマンティック制約関係を確立するとき、画像内の2D情報と点群内の3D情報を効果的に結合することができ、セマンティックオブジェクト3D情報の計算精度を向上させ、これにより高精度のセマンティックマップを構築することに有利であり、具体的な結合方式は、実際の状況に応じて設定することができ、2D情報と3D情報に基づいて相応な誤差関数をセマンティック制約関係として確立することができ、誤差関数に含まれる状態変数及び誤差関数の具体的な表現形式は限定されない。
【0024】
ステップ103、前記姿勢制約関係及び前記セマンティック制約関係に基づいて組合せ最適化求解を行い、前記セマンティックオブジェクトのセマンティック結果及び前記移動体の姿勢結果を決定する。
【0025】
例示的に、姿勢制約関係に対応する誤差関数及びセマンティック制約関係に対応する誤差関数に基づいて組合せ誤差関数を確立し、この組合せ誤差関数を一定の求解方式で求解し、各状態変数の推定値を得、推定値のうちセマンティックに関連する状態変数の推定値をセマンティック結果として決定し、推定値のうち姿勢に関連する状態変数の推定値を移動体の姿勢結果として決定することができる。
【0026】
ステップ104、前記セマンティック結果及び前記姿勢結果に基づいてセマンティックマップ及び点群マップを構築する。
【0027】
例示的に、セマンティック結果に対して何らかの処理を行ってセマンティックオブジェクトの3D輪郭を得、さらにセマンティックオブジェクトの3D輪郭に基づいてセマンティックマップを構築することができる。姿勢結果に基づいて点群を重畳し、点群マップを得ることができる。
【0028】
本発明の実施例で提供されるマップ構築方法は、予め設定されたセンサによって収集されたセンサデータに基づいて、移動体の姿勢制約関係及びセマンティックオブジェクトのセマンティック制約関係を確立し、姿勢制約関係及びセマンティック制約関係に基づいて組合せ最適化求解を行い、セマンティック結果及び移動体の姿勢結果を決定し、最後に、セマンティック結果及び姿勢結果に基づいてセマンティックマップ及び点群マップを構築する。上記技術案を採用することで、セマンティックマップの構築過程と点群マップの構築過程を融合し、姿勢制約関係とセマンティック制約関係を利用して組合せ求解を行うことで、セマンティック結果と姿勢結果が相互制約関係を形成することができ、セマンティックマップと点群マップを迅速かつ正確に得ることができ、さらにより精確な高精度マップを得ることができ、移動体の自律移動性能を向上させることに有利である。
【0029】
いくつかの実施例では、センサデータに基づいて収集されたデータは、画像収集装置によって収集された画像と、点群収集装置によって収集された点群とを含み、センサデータに基づいてセマンティックオブジェクトのセマンティック制約関係を確立するステップは、前記画像及び前記点群に基づいて、各セマンティックオブジェクトに対応する三次元輪郭の観測値を決定するステップと、前記三次元輪郭の観測値に基づいてセマンティック制約関係を確立するステップと、を含む。このように設定すると、セマンティックオブジェクトの3D輪郭の観測値に基づいてセマンティック制約関係を確立し、3Dが2D輪郭よりもセマンティックオブジェクト間及びセマンティックオブジェクトと移動体との間の空間的位置関係をよりよく反映することができ、かつ画像と点群とを結合することにより、セマンティックオブジェクトの3D情報の計算精度を向上させることができるという利点がある。
【0030】
いくつかの実施例では、前記画像及び前記点群に基づいて、セマンティックオブジェクトに対応する三次元輪郭の観測値を決定する前記ステップは、前記画像に対してセマンティックセグメンテーション処理を行い、セマンティックオブジェクトが存在する領域の二次元輪郭を得るステップと、前記点群を前記画像に投影し、かつ前記二次元輪郭に基づいて前記セマンティックオブジェクトに対応するターゲット三次元点を決定するステップと、前記ターゲット三次元点をフィッティングし、前記セマンティックオブジェクトに対応する三次元輪郭の観測値を得るステップと、を含む。このように設定すると、より精確な3D輪郭観測値を得ることができるという利点がある。
【0031】
ここで、セマンティックセグメンテーションは深度学習方式を採用して実現することができ、具体的にはセマンティックオブジェクトのタイプに基づいて関連するモデルの訓練を標的に行い、さらに画像におけるセマンティックオブジェクトが存在する領域を正確にセグメンテーションすることができる。続いて、画像収集装置の内部パラメータと、画像収集装置と点群収集装置との間の外部パラメータとにより、点群における3D点をセマンティックセグメンテーション後の画像に投影することができ、セマンティックオブジェクトが存在する領域の二次元輪郭に入る点をターゲット三次元点として決定し、セマンティックオブジェクトの3D輪郭の特性に基づいてターゲット三次元点をフィッティングした後、セマンティックオブジェクトに対応する三次元輪郭の観測値を得ることができる。
【0032】
いくつかの実施例では、前記ターゲット三次元点をフィッティングし、前記セマンティックオブジェクトに対応する三次元輪郭の観測値を得る前記ステップは、前記ターゲット三次元点に対して平面フィッティング又は直線フィッティングを行い、対応する空間方程式を得るステップと、前記二次元輪郭の画素座標、前記画像収集装置の内部パラメータ、及び前記画像収集装置と前記点群収集装置との間の外部パラメータに基づいて前記ターゲット三次元点の三次元座標を決定するステップと、前記空間方程式及び前記ターゲット三次元点の三次元座標に基づいて前記ターゲット三次元点をフィッティングし、セマンティックオブジェクトに対応する三次元輪郭の観測値を得るステップと、を含む。このように設定すると、セマンティックオブジェクトに対応する3D輪郭の観測値をより精確に得ることができるという利点がある。
【0033】
例示的に、セマンティックオブジェクトの3D輪郭の特性に基づいてセマンティックオブジェクトを相応な3D形状に抽象化してもよく、異なるセマンティックオブジェクトに対して、異なる特徴量を設定して相応な3D輪郭を特徴付けることができる。例えば、表面積が大きくかつ厚さが小さいセマンティックオブジェクトは、平面図形として抽象化されてもよく、かつ該平面図形の空間における相対位置又は角度を法線ベクトルなどで特徴付け、これにより空間図形を得、フィッティングを行うとき、平面フィッティングを行うことができ、厚さが大きいと、立方体などの形状として抽象化することができ、各面に対してそれぞれ平面フィッティングなどを行い、また例えば、柱状セマンティックオブジェクトは円柱体として抽象化されてもよく、半径が小さいと、直線フィッティングを行うことができる。また、なお、同じセマンティックオブジェクトは、形状が比較的複雑であり、分解することができ、例えば円柱体と平面画像に分解し、この場合、該セマンティックオブジェクトの異なる構成部分に対してそれぞれフィッティングを行い、対応する空間方程式を得ることができる。ターゲット三次元点の三次元座標は、二次元輪郭の画素座標、画像収集装置の内部パラメータ、及び画像収集装置と点群収集装置との間の外部パラメータに基づいて決定することができる。予め設定された分析方式を採用して空間方程式及びターゲット三次元点の三次元座標と結合してセマンティックオブジェクトに対応する3D輪郭の観測値をフィッティングし、ここで、予め設定された分析方式は例えば主成分分析(Principal Component Analysis、PCA)方式であってもよい。
【0034】
車線は、セマンティックマップにおける最も一般的なセマンティックオブジェクトの1つであり、いくつかの実施例では、前記セマンティックオブジェクトは車線を含み、前記車線に対応する三次元輪郭は、空間矩形(3D矩形とも称され得る)を含み、前記空間矩形の特徴量は、中心点、法線ベクトル、長辺ベクトル、長さ、及び幅のうちの少なくとも1つを含むことができ、前記車線に対応するターゲット三次元点に対応するフィッティング方式は平面フィッティングであり、これにより対応する空間平面方程式を得る。ここで、各破線車線は、1つの空間矩形に対応し、各実線車線は、その長さ及び曲率に基づいて複数の空間矩形に対応する。このように設定すると、車線の3D輪郭を精確に特徴付けることができるという利点がある。破線車線は、一般に、複数のセグメントからなり、各破線車線の幾何学的構造は、矩形に近似されることができ、各破線に対して、1つの空間矩形を用いて表すことができる。実線車線の長さは通常長く、かつ道路には一定の曲率が存在することが多く、マップ作成精度を保証するために、長い実線をその長さ及び曲率に基づいて複数の短い線分に分割し、即ち実線を連続する複数の空間矩形で表し、各線分に対してそれぞれフィッティングを行い、これにより複数の連続する空間矩形の幾何情報を得ることができる。
【0035】
道路ポール(ライトポール又は他の棒状の道路標識を含み得る)は道路シーンにおけるセマンティックマップにおいて最も一般的な道路標識の1つであり、観測された道路ポールを事前マップとマッチングして位置特定することによって、位置特定の精度を効果的に向上させることができる。いくつかの実施例では、前記セマンティックオブジェクトは、道路ポールを含み、前記道路ポールに対応する三次元輪郭は、ピラーを含み、前記ピラーの特徴量は、上面中心点、底面中心点、及び半径のうちの少なくとも1つを含み、前記道路ポールに対応するターゲット三次元点に対応するフィッティング方式は直線フィッティングであり、これにより対応する空間直線方程式を得る。このように設定すると、道路ポールの3D輪郭を精確に特徴付けることができるという利点がある。
【0036】
いくつかの実施例では、前記三次元輪郭の観測値に基づいてセマンティック制約関係を確立する前記ステップは、予め設定されたスライディングウィンドウにおける各キーフレームに対して、現在のキーフレームにおける三次元輪郭の観測値とセマンティックオブジェクト状態変数集合との間の関連付けを確立することで、前記セマンティックオブジェクト状態変数集合におけるセマンティックオブジェクト状態変数を更新し、かつ現在のキーフレームにおける各三次元輪郭に対応する誤差関数を確立するステップと、前記予め設定されたスライディングウィンドウにおける各キーフレームにそれぞれ対応する誤差関数に基づいて、セマンティック制約関係を確立するステップと、を含む。このように設定すると、予め設定されたスライディングウィンドウにおける各キーフレームを融合することで、マップ作成精度を効果的に向上させることができるという利点がある。
【0037】
例示的に、予め設定されたスライディングウィンドウのサイズは、実際の状況に応じて予め設定するか、又は、予め設定された規則に基づいて動的に設定してもよく、予め設定されたスライディングウィンドウには、通常、複数のキーフレームが含まれ、動的に更新されるセマンティックオブジェクト状態変数集合を維持することができ、予め設定されたスライディングウィンドウにおける各キーフレームをフィッティングして得られた三次元輪郭は、セマンティックオブジェクト状態変数集合と関連付けられることができ、さらに、各三次元輪郭に対応する誤差関数を確立し、これらの誤差関数を統合し、セマンティック制約関係を得ることができる。
【0038】
いくつかの実施例では、車線に対して、現在のキーフレームにおける三次元輪郭の観測値とセマンティックオブジェクト状態変数集合との間の関連付けを確立することで、前記セマンティックオブジェクト状態変数集合におけるセマンティックオブジェクト状態変数を更新する前記ステップは、現在のキーフレームにおける各空間矩形に対して、同一座標系において現在の空間矩形の中心点の観測値と車線状態変数集合における各矩形状態変数の中心点との第1距離を計算し、第1の予め設定された距離閾値より小さい第1距離が存在すれば、現在の空間矩形と対応する矩形状態変数とを関連付け、存在しなければ、車線状態変数集合において現在の空間矩形に対応する矩形状態変数を作成するステップを含む。このように設定すると、異なるキーフレームにおける同一の車線矩形のデータを正確に関連付け、移動体の進行に伴って、新たな車線矩形が発生する場合、対応する矩形状態変数を車線状態変数集合に適時に作成し、車線状態変数集合の正確な動的更新を保証するという利点がある。ここで、第1の予め設定された距離閾値は、実際の需要に応じて設定することができる。
【0039】
いくつかの実施例では、道路ポールに対して、現在のキーフレームにおける三次元輪郭の観測値とセマンティックオブジェクト状態変数集合との間の関連付けを確立することで、前記セマンティックオブジェクト状態変数集合におけるセマンティックオブジェクト状態変数を更新する前記ステップは、現在のキーフレームにおける各ピラーに対して、同一座標系において現在のピラーの上面中心点の観測値と道路ポール状態変数集合における各矩形状態変数の上面中心との第3の距離を計算し、及び現在のピラーの底面中心点の観測値と車線状態変数集合における各矩形状態変数の底面中心との第4の距離を計算し、第3の距離が第2の予め設定された距離閾値よりも小さく、第4の距離が第3の予め設定された距離閾値よりも小さいことを同時に満たせば、現在のピラーと対応するピラー状態変数とを関連付け、存在しなければ、現在のピラーに対応するピラー状態変数を道路ポール状態変数集合に作成するステップを含む。このように設定すると、異なるキーフレームにおける同じ道路ポールピラーのデータを正確に関連付け、移動体の進行に伴って、新たな道路ポールピラーが発生する場合、対応するピラー状態変数を道路ポール状態変数集合に適時に作成し、道路ポール状態変数集合の正確な動的更新を保証するという利点がある。ここで、第2の予め設定された距離閾値及び第3の予め設定された距離閾値は、実際の需要に応じて設定することができる。
【0040】
いくつかの実施例では、現在のキーフレームにおける誤差関数は、空間矩形に対応する車線誤差関数及び/又はピラーに対応する道路ポール誤差関数を含み、前記車線誤差関数は、各破線車線の誤差関数及び各実線車線の誤差関数を含む。このように設定すると、セマンティックマップ内のセマンティックオブジェクトのタイプを豊富にし、これによりマップ作成精度をさらに向上させることができるという利点がある。
【0041】
いくつかの実施例では、破線車線の誤差関数は、中心点、法線ベクトル、長辺ベクトル、長さ、及び幅に関する状態変数と観測値との誤差関数と、法線ベクトル及び長辺ベクトルの状態変数のそれぞれと単位ベクトルとの誤差関数とを含む。このように設定すると、破線車線の誤差関数をより網羅的に複数の次元から構築することができ、マップ作成精度を向上させることに有利であるという利点がある。
【0042】
いくつかの実施例では、実線車線の誤差関数は、法線ベクトル、長辺ベクトル、及び幅に関する状態変数と観測値との誤差関数と、中心点の状態変数と観測中心線との第2の距離と、法線ベクトル及び長辺ベクトルの状態変数のそれぞれと単位ベクトルとの誤差関数とを含む。このように設定すると、実線車線が連続しているため、長さに関する誤差関数を省くことができ、実線車線の誤差関数の網羅性と構築速度とを両立し、マップ作成精度の向上及び組合せ求解の計算量の制御に有利であるという利点がある。
【0043】
いくつかの実施例では、道路ポール誤差関数は、上面中心点、底面中心点、及び半径に関する状態変数と観測値との誤差関数を含む。
【0044】
なお、上記各セマンティックオブジェクトに対応する誤差関数を構築するとき、状態変数と観測値とが同一の座標系に存在しなければ、まず両者を同一の座標系に変換してもよく、具体的にどの座標系に変換してよいかは、実際の状況に応じて設定することができ、一般に世界座標系のように状態変数と一致してもよい。
【0045】
いくつかの実施例では、前記姿勢制約関係がグローバル姿勢制約関係を含む場合、収集されたセンサデータに基づいて移動体のグローバル姿勢制約関係を確立するステップは、前回の時刻の姿勢及び前回の時刻から現在の時刻までの対応する姿勢変化量に基づいて、現在の時刻の現在の姿勢を推定するステップであって、姿勢変化量はIMU積分によって得られるステップと、推定された現在の姿勢と姿勢観測値とのギャップが予め設定されたギャップ閾値よりも小さい場合、姿勢の状態変数及び姿勢観測値に基づいて現在の時刻に対応するグローバル姿勢制約関係を確立し、そうでない場合、現在の時刻に対応するグローバル姿勢制約関係を破棄するステップと、を含む。このように設定すると、グローバル姿勢の精度を向上させるという利点がある。ここで、収集されたセンサデータは、複合ナビゲーション装置によって収集されたセンサデータを含んでもよく、姿勢観測値は、複合ナビゲーション装置の姿勢観測値であってもよく、GNSSによって収集されたセンサデータを含んでもよいし、IMUによって収集されたセンサデータを含んでもよい。もちろん、収集したセンサデータは、単一のセンサによって収集されたデータであってもよく、姿勢観測値は、単一のセンサの姿勢観測値を含んでもよい。複合ナビゲーション装置は、移動体のモデリングに通常使用されるセンサであり、比較的高い精度のリアルタイムグローバル姿勢を提供することができるが、遮蔽やマルチパス効果などの要因が位置特定精度に一定の影響を与え、位置特定に失敗する可能性すらあり、誤ったグローバル位置は、著しく精度を低下させる可能性があり、本発明の実施例において、前回の時刻の姿勢及びIMU積分によって得られた姿勢変化量に基づいて、現在の時刻の姿勢を推定し、推定された姿勢と複合ナビゲーション装置が観測した姿勢との差が設定された閾値を超える場合、該時刻の複合ナビゲーション装置の観測が不正確であると考え、破棄して、グローバル姿勢の精度に影響を与えることを回避する。
【0046】
いくつかの実施例では、前記姿勢制約関係及び前記セマンティック制約関係に基づいて組合せ最適化求解を行い、前記セマンティックオブジェクトのセマンティック結果及び前記移動体の姿勢結果を決定する前記ステップは、前記姿勢制約関係及び前記セマンティック制約関係に基づいて予め設定されたスライディングウィンドウ内の各キーフレームに対応する組合せ最適化目的関数を構築するステップと、前記組合せ最適化目的関数について求解を行い、各状態変数の推定値を得るステップであって、セマンティックオブジェクト状態変数の推定値をセマンティック結果と表記し、位置状態変数及び姿勢状態変数の推定値を姿勢結果と表記するステップと、を含む。このように設定すると、予め設定されたスライディングウィンドウを利用して組合せ最適化のデータ範囲を合理的に決定し、マップ作成精度とマップ作成効率を両立することができるという利点がある。本開示は、組合せ最適化を行う状態変数集合に、姿勢を表す状態量とセマンティックオブジェクトを表す状態量の両方を含み、これにより組合せ最適化過程で姿勢状態量とセマンティックオブジェクト状態量の組合せ最適化を実現する。ここで、具体的な求解方式は限定されず、非線形最適化求解方式、例えばCeres-Solverでもよい。
【0047】
いくつかの実施例では、前記セマンティック結果及び前記姿勢結果に基づいてセマンティックマップ及び点群マップを構築するステップは、前記セマンティック結果及び幾何学的関係に基づいてセマンティックオブジェクトのコーナーを計算するステップと、各コーナーに対して繋ぎ合わせ処理を行い、セマンティックオブジェクトの3D輪郭を得るステップと、各セマンティックオブジェクトの3D輪郭を統合し、セマンティックオブジェクトのセマンティックマップを得るステップと、前記姿勢結果に基づいて点群を重畳し、点群マップを得るステップと、を含み、ここで、破線車線に対して、3D輪郭は、空間矩形の4つのコーナーを順次繋ぎ合わせたものに対応し、実線車線に対して、3D輪郭は、長さ方向におけるコーナーを空間順に順次繋ぎ合わせて得られる2つの辺線に対応する。このように設定すると、セマンティクス結果及び姿勢結果を効率的に利用して下流モジュールによる使用のためにセマンティクスマップ及び点群マップを迅速かつ正確に構築するという利点がある。
【0048】
いくつかの実施例では、セマンティックマップ及び点群マップを融合して1つのマップに構築することもでき、例えば点群マップにセマンティックマップを重畳して上記セマンティック結果を提示し、マップ提示の可視性及び利便性を向上させ、データ量を低減する。
【0049】
いくつかの実施例では、前記点群レジストレーション制約は、以下の方式で得られ、予め設定されたスライディングウィンドウ内の各キーフレームの点群に対して、点群における点の曲率情報に基づいて各点を線特徴点と平面特徴点に分割し、予め設定されたスライディングウィンドウ内の各キーフレームに対して、前のキーフレームの姿勢とIMU積分から得られたフレーム間姿勢変化量とを重畳し、現在のキーフレームに対応する初期レジストレーション姿勢を得、線特徴点及び平面特徴点について、それぞれ初期レジストレーション姿勢に基づいて最近傍検索を前記予め設定されたスライディングウィンドウにおける各キーフレームの特徴点を含む局所マップで行い、対応する最近傍特徴点セットを得、対応する最近傍特徴点セットに基づいて線誤差関数及び面誤差関数をそれぞれ確立し、前記予め設定されたスライディングウィンドウ内の各線誤差関数及び面誤差関数に基づいて点群レジストレーション制約を決定する。このように設定すると、フレーム間ローカルマップ(Frame-to-Local Map)のレジストレーション方式を採用し、点群レジストレーションの精度及び効率を向上させることができ、また、予め設定されたスライディングウィンドウ内のキーフレームに対するレジストレーションも、セマンティック制約関係の確立に関連して、後続の組合せ最適化求解と連携して行われるという利点がある。
【0050】
任意選択で、点群レジストレーション制約を確立する前に、採用される点群収集装置の特性に基づいて点群データを前処理することができる。例えば、機械式レーザレーダの観測データは、移動体の動きによる動きの歪みを生じる可能性があり、レーザレーダデータのフレームごとに、まず点群の動き補償を行うことができる。
【0051】
いくつかの実施例では、線特徴点に対応する最近傍特徴点セットに基づいて線誤差関数を確立することは、線特徴点に対応する最近傍特徴点セットに基づいて直線フィッティングを行い、線特徴点から対応するフィッティング直線までの距離に基づいて線誤差関数を決定することを含む。平面特徴点に対応する最近傍特徴点セットに基づいて面誤差関数を確立することは、平面特徴点に対応する最近傍特徴点セットに基づいて平面フィッティングを行い、平面特徴点から対応するフィッティング平面までの距離に基づいて面誤差関数を決定することを含む。このように設定すると、線特徴点及び平面特徴点のそれぞれの特性に基づいて、相応な誤差関数を正確に構築し、さらにマップ作成精度を向上させるという利点がある。
【0052】
図2は、本発明の実施例によって提供されるさらに別のマップ構築方法の概略フローチャートであり、
図3は、本発明の実施例によって提供されるマップ構築過程の原理概略図であり、
図2と
図3を合わせて本発明の実施例を理解することができ、説明を容易にするために、移動体が車両であることを例とする。
【0053】
図2に示すように、該方法は、ステップ201~ステップ211を含むことができる。
【0054】
ステップ201、予め設定されたセンサによって収集されたセンサデータに基づいて車両の姿勢制約関係を確立する。
【0055】
本発明の実施例において、予め設定されたセンサは、複合ナビゲーション装置(例えば、GNSS/IMU)、慣性測定ユニットIMU、車輪速度計、及びレーザレーダを含むことができ、ここで、IMUに加速度計及びジャイロが含まれてもよく、IMUは複合ナビゲーション装置に集積されてもよい。複数の予め設定されたセンサの観測を融合するため、IMU座標系(Iと表記され得る)、車体座標系(Bと表記され得る)、レーザレーダ座標系(Lと表記され得る)、及び世界座標系(Wと表記され得る)が関与し得る。最適化されるべき状態変数は、世界座標系におけるIMU位置PI
W(本来は上付き文字を下付き文字の直上に配置。以下では注記を省略)、姿勢RI
W(本来は上付き文字を下付き文字の直上に配置。以下では注記を省略)、速度vI
W(本来は上付き文字を下付き文字の直上に配置。以下では注記を省略)、ジャイロゼロバイアスbg、加速度計ゼロバイアスba、車線の幾何学的パラメータMW、及び道路ポールの幾何学的パラメータNWを含む。説明を簡単にするために、PI
W、RI
W、vI
W、MW及びNWを、P、R、v、M及びNと略記することができ、P、R及びvをまとめて位置状態変数と呼び、M及びNをまとめて姿勢状態変数と呼ぶことができる。
【0056】
本発明の実施例において、前記姿勢制約関係は、グローバル姿勢制約関係、IMU事前積分制約関係、速度制約関係、及び点群レジストレーション制約関係を含む。以下、各姿勢制約関係の確立過程を概略的に説明する。
【0057】
(1)グローバル姿勢制約関係
グローバル姿勢制約関係は絶対姿勢制約とも呼ばれることができ、前回の時刻の姿勢及び前回の時刻から現在の時刻までの対応する姿勢変化量に基づいて、現在の時刻の現在の姿勢を推定し、ここで、姿勢変化量はIMU積分によって得られ、推定された現在の姿勢と複合ナビゲーション装置の姿勢観測値とのギャップが予め設定されたギャップ閾値よりも小さい場合、姿勢の状態変数及び複合ナビゲーション装置の姿勢観測値に基づいて現在の時刻に対応するグローバル姿勢制約関係を確立し、そうでない場合、現在の時刻に対応するグローバル姿勢制約関係を破棄する。
【0058】
グローバル姿勢制約関係は、次式によって表されることができる。
【0059】
【0060】
ここで、rI(R,P)は、グローバル姿勢制約を表し、rIと略称されることができ、P(本来はハット記号を伴う。以下では注記を省略)は、世界座標系における複合ナビゲーション装置の位置観測値を表し、R(本来はハット記号を伴う。以下では注記を省略)は、世界座標系における複合ナビゲーション装置の姿勢観測値を表し、log()は、リー群からリー代数のマッピングを表す。
【0061】
(2)IMU事前積分制約関係
IMUは、角速度及び加速度をリアルタイムで測定することができ、事前積分を行うことによってIMU位置、姿勢、及び速度に関する制約を得ることができ、状態推定の平滑性を高め、前記IMU事前積分制約は、次式によって表される。
【0062】
【0063】
ここで、rB(R,P,v,ba,bg)は、IMU事前積分制約を表し、rBと略称されることができ、tは、時刻を表し、gは、重力加速度を表し、Δtは、t+1時刻とt時刻との時間差を表し、ΔPt(t+1)は、t時刻からt+1時刻までの位置変化量を表し、ΔRt(t+1)
-1(本来は上付き文字を下付き文字の直上に配置。以下では注記を省略)は、t時刻からt+1時刻までの姿勢変化量の逆数を表し、Δvt(t+1)は、t時刻からt+1時刻までの速度変化量を表し、log()は、リー群からリー代数のマッピングを表す。
【0064】
(3)速度制約関係
車輪速度計は、世界座標系における車輪の動作速度を測定することができる。
【0065】
【0066】
ここで、v(本来はハット記号を伴う。以下では注記を省略)は、車輪速度計の観測値を表し、vは、速度状態変数を表し、e2
T(本来は上付き文字を下付き文字の直上に配置。以下では注記を省略)は、第2項が1、残りが0の3×1ベクトルであり、nvは、車輪速度計の測定ノイズを表す。
【0067】
IMU座標系と車体座標系との間の外部パラメータを結合すると、IMU座標系における速度を得ることができる。
【0068】
【0069】
ここで、ωは、IMUジャイロが測定した角速度を表し、LI
B(本来は上付き文字を下付き文字の直上に配置。以下では注記を省略)は、車体座標系からIMU座標系までのレバーアーム値であり、外部パラメータ校正により得られる。
【0070】
要約すると、車輪速度計及びジャイロ観測に基づいて速度に関する誤差関数を確立することができる。
【0071】
【0072】
ここで、rV(v)は、IMU事前積分制約を表し、rVと略称されることができる。
【0073】
(4)点群レジストレーション制約関係
予め設定されたスライディングウィンドウ(以下、スライディングウィンドウ又はスライドウィンドウと略称する)における各キーフレームに対して、k次元ツリー(KD-Tree)アルゴリズムを順次用いて特徴点のLocal Mapへの関連付けを確立することができ、各キーフレームの姿勢は、KD-Treeによる最近傍検索の初期値として用いられる。現フレームに対して、前回のキーフレームの姿勢とIMU積分によるフレーム間姿勢変化量とを用いて点群レジストレーションの初期値を決定し、その後検索により得られた最近傍特徴点セットに基づいて、各線特徴点及び面特徴点に対応する線誤差関数及び面誤差関数を確立する。つまり、線特徴点及び平面特徴点のそれぞれについてKD-Treeアルゴリズムを採用して、初期レジストレーション姿勢による局所マップの最近傍検索を行い、対応する最近傍特徴点セットを得、かつ対応する最近傍特徴点セットに基づいて線誤差関数及び面誤差関数をそれぞれ確立する。
【0074】
いずれかの線特徴点xlに対して、最近傍点セットに基づいて直線フィッティングを行うことができる。最近傍点セットの共分散行列Cを計算し、対応する固有値V及び固有ベクトルEを得ることができる。固有値の最大値が他の2つよりもはるかに大きい場合、直線フィッティングが成功したと考えられ、最大固有値に対応する固有ベクトルが即ち該直線の方向となる。直線フィッティングが成功した場合、線特徴点から対応するフィッティング直線までの距離に基づいて線誤差関数を決定し、特徴点xlから対応する直線までの距離、線誤差関数は、次式によって表される。
【0075】
【0076】
ここで、rp2lは、特徴点xlから対応するフィッティング直線までの距離を表し、Dは、フィッティング直線の方向を表し、Mは、最近傍特徴点セットの座標平均値を表し、RL
I(本来は上付き文字を下付き文字の直上に配置。以下では注記を省略)及びPL
I(本来は上付き文字を下付き文字の直上に配置。以下では注記を省略)は、レーザレーダ座標系からIMU座標系への外部パラメータを表し、
いずれかの面特徴点xpに対して、最近傍点セットに基づいて平面フィッティングを行う必要がある。平面のフィッティングのために、特異値分解(Singular Value Decomposition、SVD)を使用することが選択され、平面フィッティングの平面方程式は、
【0077】
【0078】
として表され、nは、平面の法線ベクトルを表し、dは、対応する係数である。平面フィッティングが成功した場合、平面特徴点から対応するフィッティング平面までの距離に基づいて面誤差関数を決定し、面特徴点xpから平面までの距離、つまり面誤差関数は、次式によって表される。
【0079】
【0080】
ここで、rp2pは平面特徴点xpから対応するフィッティング平面までの距離を表し、RL
I及びPL
Iは、レーザレーダ座標系からIMU座標系への外部パラメータを表す。
【0081】
したがって、前記点群レジストレーション制約は、次式によって表される。
【0082】
【0083】
ここで、rG(R,P)は、点群レジストレーション制約を表し、rGと略称されることができ、nlは、現在のキーフレームに含まれる線特徴点の数を表し、npは、現在のキーフレームに含まれる平面特徴点の数を表し、Σは、予め設定されたレジストレーション情報行列である。
【0084】
ステップ202、画像収集装置によって収集された画像に対してセマンティックセグメンテーション処理を行い、セマンティックオブジェクトが存在する領域の二次元輪郭を得る。
【0085】
本発明の実施例におけるセマンティックオブジェクトは車線及び/又は道路ポールを含むことができ、説明を容易にするために、以下では車線及び道路ポールを同時に含むことを例とする。まず深度学習に基づくセマンティックセグメンテーション方法によって画像から車線及び道路ポールに対応する画素領域を検出した後、レーザレーダによって提供される深度情報と結合して車線及び道路ポールの3D情報を算出することができる。フレーム間セマンティック情報のデータ関連付け及び組合せ最適化を容易にするために、車線及び道路ポールに対して幾何学的形状でパラメータ化することができる。
【0086】
車線に対して、対応する三次元輪郭は、空間矩形を含み、空間矩形の特徴量は、中心点(C)、法線ベクトル(N)、長辺ベクトル(T)、長さ(L)、及び幅(W)を含み、各破線車線は、1つの空間矩形に対応し、各実線車線は、その長さ及び曲率に基づいて複数の空間矩形に対応する。
【0087】
例示的に、セマンティックセグメンテーションにより、画像から車線に属する画素領域を抽出し、その後、画像処理により車線領域の2D輪郭をさらに得ることができる。
【0088】
道路ポールに対して、対応する三次元輪郭はピラーを含み、ピラーの特徴量は、上面中心点(開始点とも呼ばれ、Sと表記する)、底面中心点(終了点とも呼ばれ、Eと表記する)及び半径(d)を含む。
【0089】
例示的に、セマンティックセグメンテーションにより、画像から道路ポールに属する画素領域を抽出し、その後、画像処理により道路ポールの2D輪郭をさらに得ることができる。
【0090】
ステップ203、点群収集装置によって収集された点群を画像に投影し、かつ二次元輪郭に基づいてセマンティックオブジェクトに対応するターゲット三次元点を決定する。
【0091】
例示的に、カメラ内部パラメータと、カメラとレーザレーダとの間の外部パラメータとによって、レーザレーダによって測定された3D点を画像に投影し、かつ2D輪郭に基づいて車線及び道路ポールに対応するレーザレーダ点を得ることができる。
【0092】
ステップ204、ターゲット三次元点に対して平面フィッティング又は直線フィッティングを行い、対応する空間方程式を得る。
【0093】
車線に対して、対応する領域は通常1つの平面上にあるので、上記レーザレーダ点に対して平面フィッティングを行うことで対応する空間平面方程式を得ることができる。
【0094】
前記空間平面方程式は、次式によって表される。
【0095】
【0096】
ここで、
【0097】
【0098】
は、単位法線ベクトルを表し、dは、画像収集装置座標系における座標原点から空間平面までの距離を表す。
【0099】
道路ポールに対して、道路ポールに属するレーザ点に対して直線フィッティングを行うことにより、道路ポールに対応する直線方程式を得ることができ、かつ道路ポールに属する各レーザ点から該直線までの距離を算出することができ、該距離の平均値を道路ポール半径dとして、かつ方向ベクトル
【0100】
【0101】
と道路ポール上の一点
【0102】
【0103】
とで該直線を表す。
【0104】
ステップ205、二次元輪郭の画素座標、画像収集装置の内部パラメータ、及び画像収集装置と点群収集装置との間の外部パラメータに基づいて、ターゲット三次元点の三次元座標を決定する。
【0105】
車線に対して、幾何学的関係に基づいて、2D輪郭に対応する3D点座標が分かり、つまり、ターゲット三次元点の三次元座標は、次式によって表される。
【0106】
【0107】
ここで、u及びvは、二次元輪郭の点の画素座標を表し、fx、fy、cx、及びcyは、カメラ内部パラメータを表し、
【0108】
【0109】
である。
【0110】
道路ポールに対して、道路ポールの2つの端点の画素座標及び直線方程式が既知であるため、幾何学的関係に基づいて、2つの端点S及びEの三次元座標を得ることができ、つまり、ターゲット三次元点の三次元座標は、次式によって表される。
【0111】
【0112】
ここで、u及びvは、両端点の画素座標を表し、fx、fy、cx、及びcyは、カメラ内部パラメータを表す。
【0113】
ステップ206、空間方程式及びターゲット三次元点の三次元座標に基づいてターゲット三次元点をフィッティングし、セマンティックオブジェクトに対応する三次元輪郭の観測値を得る。
【0114】
車線に対して、PCA法を用いて車線輪郭に対応する3D点セットをフィッティングすることができ、3D矩形の中心点、法線ベクトル、長辺ベクトル、長さ、及び幅を得ることができる。同様に、道路ポールに対して、PCA法を用いて道路ポールに対応する3D点セットをフィッティングすることができ、ピラーの上面中心点、底面中心点、及び半径を得ることができる。
【0115】
ステップ207、予め設定されたスライディングウィンドウにおける各キーフレームに対して、現在のキーフレームにおける三次元輪郭の観測値とセマンティックオブジェクト状態変数集合との間の関連付けを確立することで、セマンティックオブジェクト状態変数集合におけるセマンティックオブジェクト状態変数を更新し、かつ現在のキーフレームにおける各三次元輪郭に対応する誤差関数を確立する。
【0116】
車線に対して、スライディングウィンドウにおける全ての車線の観測を融合してマップ作成精度を向上させるために、動的に更新される車線状態変数集合Mを維持することができる。スライディングウィンドウ内の各フレームのフィッティングから得られた車線矩形は、いずれもMと関連付けられ、かつ誤差関数を確立する。
【0117】
破線空間矩形に対して、中心点座標に基づいて観測とMの関連付けを確立することができ、まず、現フレームのグローバル姿勢に基づいて中心点を座標変換し、該矩形中心点の世界座標系における座標を得、対応する状態変数をある閾値の範囲内で見つけることができる場合、即ち関連付けが成功したと考えられ、1つの誤差関数を確立し、対応する状態変数を見つけることができない場合、新たな状態変数を作成し、かつ誤差関数を確立する。
【0118】
破線車線誤差関数は、次式によって表される。
【0119】
【0120】
ここで、rd(R,P,M)は、破線車線誤差関数を表し、rdと略称されることができ、Pは、現在のキーフレームの世界座標系における位置を表し、Rは、現在のキーフレームの世界座標系における姿勢を表し、Mは、空間矩形状態変数を表し、Cは、中心点を表し、Nは、法線ベクトルを表し、Tは、長辺ベクトルを表し、Lは、長さを表し、Wは、幅を表し、上添え字Wは、状態変数に対応する世界座標系を表し、上添え字Iは慣性航法座標系を表し、観測値に対応する。
【0121】
実線空間矩形に対して、関連付け方式は、破線空間矩形と類似してもよく、つまり、中心点座標に基づいて観測とMの関連付けを確立することができ、まず、現フレームのグローバル姿勢に基づいて中心点を座標変換し、該矩形中心点の世界座標系における座標を得、対応する状態変数をある閾値の範囲内で見つけることができる場合、即ち関連付けが成功したと考えられ、1つの誤差関数を確立し、対応する状態変数を見つけることができない場合、新たな状態変数を作成し、かつ誤差関数を確立する。
【0122】
実線は連続的であり、かつ状態変数と各フレームのフィッティング結果との厳密な対応関係がないため、状態変数の中心点から各観測中心線までの距離を確立する必要があり、矩形の長さを最適化する必要がなく、実線車線誤差関数は、次式によって表される。
【0123】
【0124】
ここで、rs(R,P,M)は、実線車線誤差関数を表し、rsと略称されることができ、Pは、現在のキーフレームの世界座標系における位置を表し、Rは、現在のキーフレームの世界座標系における姿勢を表し、Mは、空間矩形状態変数を表し、Cは、中心点を表し、Nは、法線ベクトルを表し、Tは、長辺ベクトルを表し、Wは、幅を表し、上添え字Wは、状態変数に対応する世界座標系を表し、上添え字Iは慣性航法座標系を表し、観測値に対応する。
【0125】
1フレーム内の全ての車線フィッティング結果を統合することによって、現在のキーフレームにおける空間矩形に対応する車線誤差関数を得ることができ、次式によって表されることができる。
【0126】
【0127】
ここで、rL(R,P,M)は、現在のキーフレームにおける空間矩形に対応する車線誤差関数を表し、rLと略称されることができ、ndは、現在のキーフレームにおける破線車線に対応する空間矩形状態変数の数を表し、nsは、現在のキーフレームにおける実線車線に対応する空間矩形状態変数の数を表し、Σdは、予め設定された破線情報行列を表し、Σsは、予め設定された実線情報行列を表す。
【0128】
道路ポールに対して、スライディングウィンドウにおける全ての道路ポールの観測を融合してマップ作成精度を向上させるために、動的に更新される道路ポール状態変数集合Nを維持することができる。スライディングウィンドウ内の各フレームのフィッティングから得られた道路ポールは、いずれもNと関連付けられ、かつ誤差関数を確立する。道路ポールの2つの端点座標に基づいて観測とNの関連付けを確立することができる。まず、現フレームのグローバル姿勢に基づいて端点座標を座標変換し、該両端点の世界座標系における座標を得る。状態変数集合Nに対して、ある状態変数と現在の道路ポールの両端点との距離差が閾値よりも小さいものがある場合、関連付けが成功したと考えられ、1つの誤差関数を確立し、対応する状態変数を見つけることができない場合、新たな状態変数を作成し、かつ誤差関数を確立する。
【0129】
道路ポール誤差関数は、次式によって表される。
【0130】
【0131】
ここで、rp(R,P,N)は、破線車線誤差関数を表し、rpと略称されることができ、Pは、現在のキーフレームの世界座標系における位置を表し、Rは、現在のキーフレームの世界座標系における姿勢を表し、Sは、ピラー上面中心点座標を表し、Eは、ピラー底面中心点座標を表し、dは、ピラー半径を表す。
【0132】
1フレーム内の全ての道路ポールフィッティング結果を統合することによって、現在のキーフレームにおけるピラーに対応する道路ポール誤差関数を得ることができ、次式によって表されることができる。
【0133】
【0134】
ここで、rP(R,P,N)は、現在のキーフレームにおける空間矩形に対応する車線誤差関数を表し、rPと略称されることができ、npは、現在のキーフレームにおける道路ポールフィッティング結果に含まれる道路ポールの数、つまり道路ポールに対応するピラー状態変数の数を表し、Σpは、予め設定された道路ポール情報行列である。
【0135】
ステップ208、予め設定されたスライディングウィンドウにおける各キーフレームにそれぞれ対応する誤差関数に基づいて、セマンティック制約関係を確立する。
【0136】
例示的に、セマンティック制約関係は、以下のように表されることができる。
【0137】
【0138】
ここで、nkは、予め設定されたスライディングウィンドウにおけるキーフレームの数を表す。
【0139】
ステップ209、姿勢制約関係及びセマンティック制約関係に基づいて予め設定されたスライディングウィンドウ内の各キーフレームに対応する組合せ最適化目的関数を構築する。
【0140】
スライディングウィンドウ内の各フレームの事前積分制約rB、速度制約rV、絶対姿勢制約rI、点群レジストレーション制約rG、車線制約rL、及び道路ポール制約rPを統合することにより、以下のような組合せ最適化目的関数を確立することができる。
【0141】
【0142】
ここで、
【0143】
【0144】
であり、nkは、予め設定されたスライディングウィンドウにおけるキーフレームの数を表し、Σは、予め設定された情報行列を表す。
【0145】
ステップ210、組合せ最適化目的関数について求解を行い、各状態変数の推定値を得、ここで、セマンティックオブジェクト状態変数の推定値をセマンティック結果と表記し、位置状態変数及び姿勢状態変数の推定値を姿勢結果と表記する。
【0146】
例示的に、Ceres-Solverを用いて上記組合せ最適化目的関数を求解し、各状態変数の推定値を得ることができる。
【0147】
ステップ211、セマンティクス結果及び姿勢結果に基づいてセマンティクスマップ及び点群マップを構築する。
【0148】
例示的に、車線にとって、幾何学的関係に基づいてセマンティック結果から空間矩形の4つのコーナーを計算し、各コーナーに対して繋ぎ合わせ処理を行い、車線の3D輪郭を得、全ての車線の3D輪郭を統合し、車線のセマンティックマップを得ることができる。ここで、破線車線に対して、3D輪郭は、空間矩形の4つのコーナーを順次繋ぎ合わせたものに対応し、実線車線に対して、3D輪郭は、長さ方向におけるコーナーを空間順に順次繋ぎ合わせて得られる2つの辺線に対応する。
【0149】
例示的に、道路ポールにとって、幾何学的関係に基づいてセマンティック結果から上面中心点及び底面中心点を決定し、さらに半径に基づいて道路ポールの3D輪郭を構築し、全ての道路ポールの3D輪郭を統合し、道路ポールのセマンティックマップを得ることができる。
【0150】
点群マップに対して、最適化された姿勢を用いて動き補償された点群を重畳すれば、高密度の点群マップを得ることができる。
【0151】
本発明の実施例は、上記技術案を採用することにより、まず、複合ナビゲーション装置、車輪速度計、カメラ、及びレーザレーダの観測データに対して融合モデリングを行うことにより、システム状態に関するグローバル制約及び局所一貫性制約を確立し、姿勢推定の精度及びロバスト性を効果的に向上させ、かつトンネル、海を跨ぐ橋梁などのシーンでの正常なマップ作成を実現することができ、画像に基づくセマンティックセグメンテーション技術により、車線及び道路ポールに属する画素領域を効果的に検出し、その後、レーザレーダの3D観測と結合して、車線及び道路ポールの3D情報を算出し、かつタイミング情報を利用して異なる時刻の車線観測と道路ポール観測に対して組合せ最適化を行い、セマンティックマップの精度及び一貫性を向上させる。
【0152】
本発明の実施例の技術案の有効性を検証するために、GNSS、IMU、車輪速度計、カメラ、レーザレーダなどのセンサを装備したデータ収集車両を用いて、様々な複雑な道路状況における道路データを収集して実験検証を行う。
図4は、本発明の実施例によって提供される橋梁シーンのマップ構築結果の概略図であり、ここで、サブ
図Aは、橋梁シーン図であり、サブ
図Bは、構築された点群マップであり、サブ
図Cは、構築されたセマンティックマップの概略図であり、サブ
図Dは、最適化された位置(X、Y、及びZは、それぞれ、空間座標系における3つの座標成分を表す)と真値との差のプロットである。
図5は、本発明の実施例によって提供されるトンネルシーンのマップ構築結果の概略図であり、サブ
図Aは、トンネルシーン図であり、サブ
図Bは、構築された点群マップであり、サブ
図Cは、構築されたセマンティックマップの概略図であり、サブ
図Dは、最適化された位置(X、Y、及びZは、それぞれ、空間座標系における3つの座標成分を表す)と真値との差のプロットである。収集車両によって
図4に示すような橋梁シーンでの関連データを収集し、及び
図5に示すようなトンネルシーンでの関連データを収集し、本発明の実施例によって提供される技術案を採用してマップ構築を行い、セマンティックオブジェクトが車線であることを例とする。収集車両は、高精度の商用の複合ナビゲーション装置を装備し、その後、処理結果は姿勢の真値として利用可能であり、車線マップの精度を検証するために、一部の車線の破線コーナーの空間位置座標(以下、絶対位置点と略称される)をマップ作成装置によって測定する。
図4及び
図5を参照すると、本発明の実施例によって提供される技術案は、海を跨ぐ橋梁、トンネルなどの複雑な道路状況においても依然としてマップ作成が可能であり、計算で得られた位置と真値との誤差が10cm以内であり、さらに、構築された車線マップのコーナー座標と絶対位置点との差も10cm以内であり、マップ作成の精度と正確度を効果的に保証する。
【0153】
図6は、本発明の実施例によって提供されるマップ構築装置の構造ブロック図であり、該装置は、ソフトウェア及び/又はハードウェアで実現されることができ、一般的にコンピュータ装置に集積されることができ、マップ構築方法を実行することによりマップ構築を行うことができる。
図6に示すように、該装置は、
予め設定されたセンサによって収集されたセンサデータを取得するためのデータ取得モジュール601と、
センサデータに基づいて移動体の姿勢制約関係及びセマンティックオブジェクトのセマンティック制約関係を確立するための制約関係確立モジュール602と、
前記姿勢制約関係及び前記セマンティック制約関係に基づいて組合せ最適化求解を行い、セマンティックオブジェクトのセマンティック結果及び前記移動体の姿勢結果を決定するための組合せ求解モジュール603と、
前記セマンティック結果及び前記姿勢結果に基づいてセマンティックマップ及び点群マップを構築するためのマップ構築モジュール604と、を含む。
【0154】
本発明の実施例で提供されるマップ構築装置は、セマンティックマップの構築過程と点群マップの構築過程を融合し、姿勢制約関係とセマンティック制約関係を利用して組合せ求解を行うことで、セマンティック結果と姿勢結果が相互制約関係を形成することができ、セマンティックマップと点群マップを迅速かつ正確に得ることができ、さらにより精確な高精度マップを得ることができ、移動体の自律移動性能を向上させることに有利である。
【0155】
任意選択で、予め設定されたセンサによって収集されたセンサデータは、画像収集装置によって収集された画像と、点群収集装置によって収集された点群とを含み、制約関係確立モジュールは、具体的には、前記画像及び前記点群に基づいて、各セマンティックオブジェクトに対応する三次元輪郭の観測値を決定することと、前記三次元輪郭の観測値に基づいてセマンティック制約関係を確立することとに用いられる。
【0156】
任意選択で、前記画像及び前記点群に基づいて、セマンティックオブジェクトに対応する三次元輪郭の観測値を決定する前記ステップは、前記画像に対してセマンティックセグメンテーション処理を行い、セマンティックオブジェクトが存在する領域の二次元輪郭を得るステップと、前記点群を前記画像に投影し、かつ前記二次元輪郭に基づいて前記セマンティックオブジェクトに対応するターゲット三次元点を決定するステップと、前記ターゲット三次元点をフィッティングし、前記セマンティックオブジェクトに対応する三次元輪郭の観測値を得るステップと、を含む。
【0157】
任意選択で、前記ターゲット三次元点をフィッティングし、前記セマンティックオブジェクトに対応する三次元輪郭の観測値を得る前記ステップは、前記ターゲット三次元点に対して平面フィッティング又は直線フィッティングを行い、対応する空間方程式を得るステップと、前記二次元輪郭の画素座標、前記画像収集装置の内部パラメータ、及び前記画像収集装置と前記点群収集装置との間の外部パラメータに基づいて前記ターゲット三次元点の三次元座標を決定するステップと、前記空間方程式及び前記ターゲット三次元点の三次元座標に基づいて前記ターゲット三次元点をフィッティングし、セマンティックオブジェクトに対応する三次元輪郭の観測値を得るステップと、を含む。
【0158】
任意選択で、前記セマンティックオブジェクトは車線を含み、前記車線に対応する三次元輪郭は空間矩形を含み、前記空間矩形の特徴量は中心点、法線ベクトル、長辺ベクトル、長さ、及び幅のうちの少なくとも1つを含み、前記車線に対応するターゲット三次元点に対応するフィッティング方式は平面フィッティングであり、これにより対応する空間平面方程式を得、ここで、各破線車線は、1つの空間矩形に対応し、各実線車線は、その長さ及び曲率に基づいて複数の空間矩形に対応する。
【0159】
任意選択で、前記セマンティックオブジェクトは、道路ポールを含み、前記道路ポールに対応する三次元輪郭は、ピラーを含み、前記ピラーの特徴量は、上面中心点、底面中心点、及び半径のうちの少なくとも1つを含み、前記道路ポールに対応するターゲット三次元点に対応するフィッティング方式は直線フィッティングであり、これにより対応する空間直線方程式を得る。
【0160】
任意選択で、前記三次元輪郭の観測値に基づいてセマンティック制約関係を確立する前記ステップは、予め設定されたスライディングウィンドウにおける各キーフレームに対して、現在のキーフレームにおける三次元輪郭の観測値とセマンティックオブジェクト状態変数集合との間の関連付けを確立することで、前記セマンティックオブジェクト状態変数集合におけるセマンティックオブジェクト状態変数を更新し、かつ現在のキーフレームにおける各三次元輪郭に対応する誤差関数を確立するステップと、前記予め設定されたスライディングウィンドウにおける各キーフレームにそれぞれ対応する誤差関数に基づいて、セマンティック制約関係を確立するステップと、を含む。
【0161】
任意選択で、車線に対して、現在のキーフレームにおける三次元輪郭の観測値とセマンティックオブジェクト状態変数集合との間の関連付けを確立することで、前記セマンティックオブジェクト状態変数集合におけるセマンティックオブジェクト状態変数を更新する前記ステップは、現在のキーフレームにおける各空間矩形に対して、同一座標系において現在の空間矩形の中心点の観測値と車線状態変数集合における各矩形状態変数の中心点との第1距離を計算し、第1の予め設定された距離閾値より小さい第1距離が存在すれば、現在の空間矩形と対応する矩形状態変数とを関連付け、存在しなければ、車線状態変数集合において現在の空間矩形に対応する矩形状態変数を作成するステップを含む。
【0162】
任意選択で、現在のキーフレームにおける誤差関数は、空間矩形に対応する車線誤差関数及び/又はピラーに対応する道路ポール誤差関数を含み、前記車線誤差関数は、各破線車線の誤差関数及び各実線車線の誤差関数を含む。
【0163】
任意選択で、破線車線の誤差関数は、中心点、法線ベクトル、長辺ベクトル、長さ、及び幅に関する状態変数と観測値との誤差関数と、法線ベクトル及び長辺ベクトルの状態変数のそれぞれと単位ベクトルとの誤差関数とを含む。
【0164】
任意選択で、実線車線の誤差関数は、法線ベクトル、長辺ベクトル、及び幅に関する状態変数と観測値との誤差関数と、中心点の状態変数と観測中心線との第2の距離と、法線ベクトル及び長辺ベクトルの状態変数のそれぞれと単位ベクトルとの誤差関数とを含む。
【0165】
任意選択で、前記予め設定されたセンサは、GNSS、慣性測定ユニットIMU、車輪速度計、画像収集装置、及び点群収集装置のうちの1つ又は複数を含み、そのうち、前記IMUは加速度計及びジャイロを含み、GNSSはまたIMUと組み合わせて複合ナビゲーション装置と構成することができ、ここで、前記姿勢制約関係は、グローバル姿勢制約関係、IMU事前積分制約関係、速度制約関係、及び点群レジストレーション制約関係のうちの1つ又は複数を含む。
【0166】
任意選択で、制約関係確立モジュールは、具体的には、前記姿勢制約関係がグローバル姿勢制約関係を含む場合、前回の時刻の姿勢及び前回の時刻から現在の時刻までの対応する姿勢変化量に基づいて、現在の時刻の現在の姿勢を推定することであって、姿勢変化量はIMU積分によって得られることと、推定された現在の姿勢と姿勢観測値とのギャップが予め設定されたギャップ閾値よりも小さい場合、姿勢の状態変数及び姿勢観測値に基づいて現在の時刻に対応するグローバル姿勢制約関係を確立し、そうでない場合、現在の時刻に対応するグローバル姿勢制約関係を破棄することとに用いられる。
【0167】
任意選択で、前記組合せ求解モジュールは、具体的には、前記姿勢制約関係及び前記セマンティック制約関係に基づいて予め設定されたスライディングウィンドウ内の各キーフレームに対応する組合せ最適化目的関数を構築することと、前記組合せ最適化目的関数について求解を行い、各状態変数の推定値を得ることであって、セマンティックオブジェクト状態変数の推定値をセマンティック結果と表記し、位置状態変数及び姿勢状態変数の推定値を姿勢結果と表記することとに用いられる。
【0168】
任意選択で、前記マップ構築モジュールは、具体的には、前記セマンティック結果及び幾何学的関係に基づいてセマンティックオブジェクトのコーナーを計算することと、各コーナーに対して繋ぎ合わせ処理を行い、セマンティックオブジェクトの3D輪郭を得ることと、各セマンティックオブジェクトの3D輪郭を統合し、セマンティックオブジェクトのセマンティックマップを得ることと、前記姿勢結果に基づいて点群を重畳し、点群マップを得ることとに用いられ、ここで、破線車線に対して、3D輪郭は、空間矩形の4つのコーナーを順次繋ぎ合わせたものに対応し、実線車線に対して、3D輪郭は、長さ方向におけるコーナーを空間順に順次繋ぎ合わせて得られる2つの辺線に対応する。
【0169】
任意選択で、前記点群レジストレーション制約は、以下の方式で得られ、予め設定されたスライディングウィンドウ内の各キーフレームの点群に対して、点群における点の曲率情報に基づいて各点を線特徴点と平面特徴点に分割し、予め設定されたスライディングウィンドウ内の各キーフレームに対して、前のキーフレームの姿勢とIMU積分から得られたフレーム間姿勢変化量とを重畳し、現在のキーフレームに対応する初期レジストレーション姿勢を得、線特徴点及び平面特徴点について、それぞれ初期レジストレーション姿勢に基づいて最近傍検索を前記予め設定されたスライディングウィンドウにおける各キーフレームの特徴点を含む局所マップで行い、対応する最近傍特徴点セットを得、対応する最近傍特徴点セットに基づいて線誤差関数及び面誤差関数をそれぞれ確立し、前記予め設定されたスライディングウィンドウ内の各線誤差関数及び面誤差関数に基づいて点群レジストレーション制約を決定する。
【0170】
任意選択で、線特徴点に対応する最近傍特徴点セットに基づいて線誤差関数を確立することは、線特徴点に対応する最近傍特徴点セットに基づいて直線フィッティングを行い、線特徴点から対応するフィッティング直線までの距離に基づいて線誤差関数を決定することを含む。平面特徴点に対応する最近傍特徴点セットに基づいて面誤差関数を確立することは、平面特徴点に対応する最近傍特徴点セットに基づいて平面フィッティングを行い、平面特徴点から対応するフィッティング平面までの距離に基づいて面誤差関数を決定することを含む。
【0171】
本発明の実施例は、本発明の実施例によって提供されるマップ構築装置を集積することができるコンピュータ装置を提供する。
図7は、本発明の実施例によって提供されるコンピュータ装置の構造ブロック図である。コンピュータ装置700は、メモリ701と、プロセッサ702と、メモリ701に記憶され、プロセッサ上で実行可能なコンピュータプログラムとを含んでもよく、前記プロセッサ702は、前記コンピュータプログラムを実行すると、本発明の実施例に記載のマップ構築方法を実現する。ここでのコンピュータ装置は、移動体に集積されてもよく、この場合、コンピュータ装置は、移動体自体、例えば車両と見なされてもよく、コンピュータ装置は、移動体に外付けされたり移動体と通信したりしてもよい。
【0172】
本発明の実施例によって提供されるコンピュータ装置は、セマンティックマップの構築過程と点群マップの構築過程を融合し、姿勢制約関係とセマンティック制約関係を利用して組合せ求解を行うことで、セマンティック結果と姿勢結果が相互制約関係を形成することができ、セマンティックマップと点群マップを迅速かつ正確に得ることができ、さらにより精確な高精度マップを得ることができ、移動体の自律移動性能を向上させることに有利である。
【0173】
本発明の実施例は、コンピュータプロセッサによって実行されると、本発明の実施例によって提供されるようなマップ構築方法を実現するコンピュータ実行可能命令を含む記憶媒体をさらに提供する。
【0174】
記憶媒体-任意の様々なタイプのメモリデバイス又は記憶デバイス。「記憶媒体」という用語は、CD-ROM、フロッピーディスク、又は磁気テープ装置などのインストール媒体、DRAM、DDRRAM、SRAM、EDORAM、ラムバス(Rambus)RAMなどのコンピュータシステムメモリ又はランダムアクセスメモリ、フラッシュメモリ、磁気媒体(例えば、ハードディスク又は光学記憶装置)などの不揮発性メモリ、レジスタ、又は他の同様のタイプのメモリ要素などを含むことが意図される。記憶媒体は、他のタイプのメモリ又はそれらの組合せも含んでもよい。また、記憶媒体は、プログラムが実行される第1のコンピュータシステムに配置されてもよく、又は、ネットワーク(インターネットなど)を介して第1のコンピュータシステムに接続される、異なる第2のコンピュータシステムに配置されてもよい。第2のコンピュータシステムは、実行のために第1のコンピュータにプログラム命令を提供することができる。「記憶媒体」という用語は、異なる位置(例えばネットワークを介して接続された異なるコンピュータシステム)に存在し得る2つ以上の記憶媒体を含んでもよい。記憶媒体は、1つ又は複数のプロセッサによって実行可能なプログラム命令(例えば、コンピュータプログラムとして具現化される)を記憶することができる。
【0175】
上記実施例で提供されるマップ構築装置、デバイス及び記憶媒体は、本発明の何れかの実施例によって提供されるマップ構築方法を実行することができ、該方法を実行するための相応な機能モジュール及び有益な効果を備える。上記実施例で詳述しなかった技術的詳細は、本発明の何れかの実施例によって提供されるマップ構築方法を参照することができる。
【0176】
なお、上述したのは、本発明の好適な実施例及び適用した技術原理に過ぎない。当業者は、本発明がここに記載された特定の実施例に限定されず、当業者にとって、本発明の保護範囲から逸脱することなく、様々な明らかな変更、修正、及び置換が可能であることを理解するであろう。したがって、本発明は、上述した実施例を通じてより詳細に説明されたが、本発明は、上述した実施例に限定されるものではなく、本発明の思想を逸脱することなく、より多くの他の均等な実施例も含むことができ、本発明の範囲は、添付の特許請求の範囲によって定められる。