JP7365958B2 - Positioning systems, methods and programs - Google Patents
Positioning systems, methods and programs Download PDFInfo
- Publication number
- JP7365958B2 JP7365958B2 JP2020074108A JP2020074108A JP7365958B2 JP 7365958 B2 JP7365958 B2 JP 7365958B2 JP 2020074108 A JP2020074108 A JP 2020074108A JP 2020074108 A JP2020074108 A JP 2020074108A JP 7365958 B2 JP7365958 B2 JP 7365958B2
- Authority
- JP
- Japan
- Prior art keywords
- positioning
- data
- current time
- time
- positioning information
- 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
Links
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Navigation (AREA)
- Optical Radar Systems And Details Thereof (AREA)
Description
本発明は対象の測位を行う測位システム、方法及びプログラムに関する。 The present invention relates to a positioning system, method, and program for positioning an object.
測位技術として様々な従来手法が存在し、測位精度の向上が図られている。 Various conventional methods exist as positioning techniques, and efforts are being made to improve positioning accuracy.
特許文献1(「SLAMマップからのワイドエリア位置推定」)では、ローカルでSLAM(Simultaneous Localization and Mapping, 自己位置推定とマップ作成の同時実行)を開始する際に、その初期位置をグローバル座標を推定するサーバに問い合わせて決定する。特許文献2(「画像処理を用いたグローバル座標取得装置」)では、GPS(全地球測位システム)が利用できない悪条件下においても精度よくグローバル座標を測量すべく、GPSを用いたグローバル座標と、センサや画像で求めたローカル座標の変換式を計算することにより、グローバル座標が無い場合も当該座標を得られるようにしている。 In Patent Document 1 ("Wide area position estimation from SLAM map"), when locally starting SLAM (Simultaneous Localization and Mapping, simultaneous execution of self-position estimation and map creation), the initial position is estimated using global coordinates. Determine by inquiring the server to be used. Patent Document 2 ("Global coordinate acquisition device using image processing") discloses global coordinates using GPS, in order to accurately measure global coordinates even under adverse conditions where GPS (Global Positioning System) cannot be used. By calculating the conversion formula for local coordinates obtained from sensors and images, it is possible to obtain the relevant coordinates even when there are no global coordinates.
特許文献3(「移動体の位置推定装置・方法」)では、走行中の振動の影響やカメラキャリブレーション実施時の誤差の影響があっても移動体の測位精度を向上させるものとして、走行中のSLAM座標を補正している。特許文献4(「位置推定装置・方法」)では、移動体に搭載されるカメラで撮像した画像より移動体の位置を推定する際に、周辺環境条件の変化による位置推定精度の低下を抑制すべく、異なる環境条件に対応した複数の地図から算出される位置を補正計算に用いて精度向上させている。 Patent Document 3 (``Moving object position estimation device and method'') proposes a system that improves the positioning accuracy of a moving object even if there is an effect of vibration during driving or an error during camera calibration. SLAM coordinates are corrected. Patent Document 4 ("Position estimation device/method") discloses a method for suppressing a decrease in position estimation accuracy due to changes in surrounding environmental conditions when estimating the position of a moving object from an image captured by a camera mounted on the moving object. In order to improve accuracy, positions calculated from multiple maps corresponding to different environmental conditions are used in correction calculations.
非特許文献1では、ノイズの乗った点群のペアから最もうまく変換する式を導き出し、全体平均として精度よく動きを推定している。非特許文献2では、GPSのグローバル座標とセンサによるローカル座標の誤差を補正している。
In Non-Patent Document 1, a formula that best converts a pair of points containing noise is derived, and movement is accurately estimated as an overall average. Non-Patent
しかしながら、以上のような従来手法においては、2つ以上の測位手法の結果を相互に補正する等により精度を向上させる手法が採用されているが、何らかの制約が存在しており、必ずしも簡素に精度を向上させることができなかった。 However, in the conventional methods described above, a method is adopted to improve accuracy by mutually correcting the results of two or more positioning methods, but there are some restrictions and it is not always easy to improve accuracy. could not be improved.
特許文献1は、端末側でSLAMを開始する際に、グローバル座標を参照することで、その対応付けを得ることができる。しかし、前提としてグローバル座標の推論システムが正しいこととしているが、実際にはノイズが大きく、一度ずれるとズレたままとなってしまう。特許文献2では、グローバル座標とローカル座標の変換式を用いて、グローバル座標が得られないときもローカル座標から変換して得られるようにしているが、あくまで1つのペアを使っており、これに誤差が含まれることを考慮しておらず計算結果が安定しない。
According to Patent Document 1, when starting SLAM on the terminal side, the correspondence can be obtained by referring to the global coordinates. However, although it is assumed that the global coordinate inference system is correct, in reality there is a lot of noise, and once a deviation occurs, the deviation remains.
特許文献3では、あくまでローカル座標内でのノイズを考慮して、精度を向上させる技術であって、グローバル座標は加味されていない。特許文献4では、グローバル位置推定の精度が低い場合に他のペアから補完計算を行うが、SLAMの誤差やグローバル位置推定の誤認を判定する方法が無い。また複数の地図を用いて最も精度が高いものを使うために、環境条件に応じた複数の地図を用意しておくという手間が発生する。
非特許文献1などでは、ノイズの乗った点群のペアから最もうまく変換する式を導き出しているが、SLAM等の測位手法に固有の誤差を考慮しておらず、単純に全体平均としてよい結果を求める。しかし、SLAMにおける誤差の挙動のように、急にまとまってずれる場合など、正しい結果が得られない。非特許文献2では、GPSのグローバル座標とセンサによるローカル座標の誤差を補正しているが、車を想定し走行する道からずれないように補正するという手段をとっている。しかし車以外の移動体では、車の場合における走行可能な道に対応するものを定義して設定することが困難であるため、車以外の移動体の測位には不向きである。
In Non-Patent Document 1, etc., formulas are derived to best convert pairs of noisy point clouds, but they do not take into account the errors inherent in positioning methods such as SLAM, and the result is simply the overall average. seek. However, correct results cannot be obtained in cases where errors occur suddenly in clusters, such as the behavior of errors in SLAM. Non-Patent
上記従来技術の課題に鑑み、本発明は、2つの測位手法を補完的に使用する際に、互いの測位座標の関係を正しく得て、簡素に測位精度を向上させることができる測位システム、方法及びプログラムを提供することを目的とする。 In view of the problems of the prior art described above, the present invention provides a positioning system and method that can correctly obtain the relationship between the positioning coordinates of each other and simply improve positioning accuracy when two positioning methods are used complementarily. and programs.
上記目的を達成するため、本発明は測位システムであって、対象の測位をローカルに行うことで、位置及び向きの時系列データとして第1測位情報を取得する第1測位部と、前記対象の測位をグローバルに行うことで、位置及び向きの時系列データとして第2測位情報を取得する第2測位部と、前記第1測位情報は誤差として連続的な累積誤差と突発的な変動とを伴うものであり、前記第2測位情報は誤差として非連続の揺らぎと突発的な外れ値とを伴うものであることに基づき、前記第1測位情報及び前記第2測位情報の誤差影響を除外したものとして、同一測位結果としての前記第1測位情報と前記第2測位情報との対応関係を推定し、当該対応関係に基づいて前記対象の測位情報を得る補完部と、を備えることを特徴とする。また、当該測位システムに対応する方法及びプログラムであることを特徴とする。 In order to achieve the above object, the present invention is a positioning system, which includes a first positioning unit that acquires first positioning information as time-series data of the position and orientation by locally performing positioning of the target; a second positioning unit that acquires second positioning information as time-series data of position and orientation by performing positioning globally; and the first positioning information has continuous cumulative errors and sudden fluctuations as errors. Based on the fact that the second positioning information is accompanied by discontinuous fluctuations and sudden outliers as errors, the influence of errors in the first positioning information and the second positioning information is excluded. and a complementing unit that estimates a correspondence between the first positioning information and the second positioning information as the same positioning result and obtains the positioning information of the target based on the correspondence. . Further, the present invention is characterized in that it is a method and a program compatible with the positioning system.
本発明によれば、同一の対象を測位した第1測位情報及び第2測位情報の互いに異なる誤差の挙動を踏まえることで、前記第1測位情報及び前記第2測位情報の誤差影響を除外したものとして、簡素に前記対象の第1測位情報と第2測位情報との対応関係を得ることができる。この対応関係を用いて、一方の測位情報からもう一方の測位情報を正しく補完することができる。 According to the present invention, the influence of errors in the first positioning information and the second positioning information is excluded by taking into account the mutually different error behavior of the first positioning information and the second positioning information that are used to position the same target. , it is possible to simply obtain the correspondence between the first positioning information and the second positioning information of the target. Using this correspondence relationship, it is possible to correctly complement one positioning information with the other positioning information.
図1は、一実施形態に係る測位システムの構成図であり、測位システム10はインターネット等のネットワークNWを介して相互に通信可能とされる端末1及びサーバ2を備える。端末1は、スマートフォン等のモバイルデバイス又は車載装置等として構成することができる移動体であり、測位システム10において測位する対象となるものである。一実施形態では測位システム10には端末1のみが含まれサーバ2が含まれない構成により、端末1が単独で自身の測位を行うようにしてもよい。一実施形態では測位システム10は端末1及びサーバ2を含み、端末1の測位を行う際に必要となる処理の一部をサーバ2が担うようにしてもよい。
FIG. 1 is a configuration diagram of a positioning system according to an embodiment, and the
図2は、一実施形態に係る測位システム10の機能ブロック図であり、測位システム10は、計測部11、第1測位部12、第1DB(データベース)13、撮影部21、第2測位部22、第2DB23及び補完部30を備える。補完部30はさらに差分計算部31、フィッティング部32、回転成分計算部33、スケール計算部34、並進成分計算部35及び変換部36を備える。
FIG. 2 is a functional block diagram of the
図2に示される各機能部は、測位システム10の端末1又はサーバ2のいずれかに備わっていればよいが、測位システム10による測位の対象となる端末1の測位を可能とするために、端末1には少なくとも計測部11及び撮影部21が設置され、端末1の存在する環境においてそれぞれ計測及び撮影を行うようにすればよい。図2に示される各機能部のうち計測部11及び撮影部21以外のものは、端末1ではなくサーバ2に備わるものであってもよい。
Each functional unit shown in FIG. 2 may be provided in either the terminal 1 or the
図3は、一実施形態に係る測位システム10による測位の動作のフローチャートである。以下、図3の各ステップを説明する。
FIG. 3 is a flowchart of positioning operations by the
ステップS1では、リアルタイムの現時刻t(t=1,2,3…)において、第1測位部12が端末1の測位を第1測位方式によって行うことで第1測位情報P1(t)を取得し、且つ、同時刻tにおいて第2測位部22が端末1の測位を第2測位方式によって行うことで第2測位情報P2(t)を取得し、これら測位情報P1(t),P2(t)を補完部30へと出力して補完部30において記録してから、ステップS2へと進む。
In step S1, the
ステップS1にて第1測位部12は第1測位方式として例えばSLAMや、オドメーター、加速度・ジャイロセンサ等を用いることにより、端末1の位置及び向きをローカルなものとして取得して、第1測位情報P1(t)を得ることができる。SLAMの場合、計測部11は例えばLiDAR(レーザ画像検出と測距)センサとして構成し、このLiDARセンサの現時刻tでの計測結果を第1測位部12で参照して第1測位情報P1(t)を得るようにすればよい。また画像を用いたSLAMの場合、計測部11は例えばステレオカメラとして構成し、このステレオカメラの現時刻tでのステレオ画像を第1測位部12で参照して、点対応を求めて三角測量等により第1測位情報P1(t)を得るようにすればよい。オドメーターや加速度・ジャイロセンサの場合は、それらをセンサとして構成し、このセンサから得られる位置や角度の増減成分を累積計算して、第1測位情報P1(t)を得るようにすればよい。第1測位部12において第1測位情報P1(t)を求める際に必要となる情報(カメラパラメータや、リファレンスとなる特徴点等の情報)は第1DB13に保存しておき、この情報を参照して第1測位部12は第1測位情報P1(t)を算出するようにすればよい。
In step S1, the
ステップS1にて第2測位部22は第2測位方式として例えばVPS(Visual Positioning System)やマーカ検出等を用いることにより、端末1の位置及び向きをグローバルなものとして取得して、第2測位情報P2(t)を得ることができる。VPSの場合、撮影部21は通常の単眼カメラとして構成し、当該カメラよって現時刻tにおいて撮影された画像を第2測位部22で参照し、特徴点及び特徴量(例えばSIFT特徴などによる特徴点及び特徴量)を抽出し、第2DB23に予めグローバル座標(3次元世界座標)が紐付けられて保存されているリファレンスの特徴点及び特徴量との間で照合を行い、照合結果として、第2測位情報P2(t)を出力することができる。マーカ検出の場合、撮影部21は通常の単眼カメラとして構成し、当該カメラによって現時刻tにおいて撮影された画像を第2測位部22で参照し、画像内に撮影されているマーカ(拡張現実で用いる正方マーカ等)を検出することにより、第2DB23に予めマーカのグローバル座標(3次元世界座標)が紐付けられて保存されているリファレンス情報と照合し、第2測位情報P2(t)を得るようにすればよい。
In step S1, the second positioning unit 22 uses, for example, VPS (Visual Positioning System) or marker detection as a second positioning method to acquire the position and orientation of the terminal 1 as global ones, and provides second positioning information. We can obtain P2(t). In the case of VPS, the photographing
ステップS2では、現時刻tまでにおいて、ステップS1により記録され蓄積済みとなっている測位情報{P1(k),P2(k)}(k=t,t-1,t-2,…)が一定期間に渡って存在するか否かを判定し、一定期間分の記録が存在していればステップS3へと進み、存在していなければステップS1へと戻り、次のタイミングの現時刻t+1について同様に測位を継続する。 In step S2, the positioning information {P1(k),P2(k)}(k=t,t-1,t-2,...) recorded and accumulated in step S1 up to the current time t is It is determined whether the records exist for a certain period of time, and if the records for a certain period of time exist, the process proceeds to step S3; if the records do not exist, the process returns to step S1, and the current time t+ of the next timing is determined. Continue positioning for 1 in the same way.
ステップS2では、現時刻tまでの記録がしきい値のN個(例えばN=8)の時刻に関して蓄積済みであれば、(すなわち、N個の記録済みの測位情報{P1(k),P2(k)}(k=t,t-1,t-2,…,t-N+1)が存在していれば、)肯定判定を得てステップS3へ進み、そうではない場合、すなわち、現時刻tを含めN-1個以下の時刻についてのみ測位情報{P1(k),P2(k)}が得られている場合には否定判定を得てステップS1へ戻り、N個の蓄積が得られるまで記録を継続すればよい。 In step S2, if the records up to the current time t have been accumulated for the threshold N times (for example, N=8), (that is, N recorded positioning information {P1(k),P2 If (k)} (k=t,t-1,t-2,...,t-N+1) exists, an affirmative determination is obtained and the process proceeds to step S3; otherwise, that is, If positioning information {P1(k),P2(k)} is obtained only for N-1 or less times including the current time t, a negative determination is obtained and the process returns to step S1, where N accumulated information is obtained. Just keep recording until you get it.
ステップS2よりも後にあるステップS3からS10までの処理は、補完部30による処理であり、これらの処理によってN個の記録済みの第1及び第2の測位情報{P1(k),P2(k)}(k=t,t-1,t-2,…,t-N+1)を相互の誤差の挙動を踏まえて誤差が低減されるように統合した結果として、最終的にステップS10において、現時刻tの端末1の測位結果としての位置及び向きが出力されることとなる。 The processes from steps S3 to S10 that follow step S2 are processes performed by the complementation unit 30, and these processes calculate the N recorded first and second positioning information {P1(k),P2(k )}(k=t,t-1,t-2,…,t-N+1) are integrated so that the error is reduced based on the mutual error behavior, and finally in step S10 , the position and orientation as the positioning results of the terminal 1 at the current time t will be output.
ここで、ステップS3以降の補完部30による処理の詳細を説明する前に、本実施形態において第1、第2の測位情報を統合して端末1の測位結果(位置及び向き)を得る原理に関して概略的に説明する。図4は、当該原理を説明するための前提となる、第1測位情報及び第2測位情報の挙動を模式的に示す図である。 Here, before explaining the details of the processing by the complementing unit 30 after step S3, let us explain the principle of integrating the first and second positioning information to obtain the positioning result (position and orientation) of the terminal 1 in this embodiment. Briefly explain. FIG. 4 is a diagram schematically showing the behavior of the first positioning information and the second positioning information, which is a premise for explaining the principle.
図4にてグラフG1は第1測位情報を4つの連続する時刻について取得した結果のデータd1,d2,d3,d4を示しており、3次元xyz座標空間内において位置を白丸(○)で表現し、向きを当該白丸を始点とするベクトル矢印で表現することにより、位置及び向きで構成される第1測位情報の時間変化の挙動を模式的に示している。既に説明したように第1測位情報はローカルなものとして取得され、第2測位情報のようにグローバルな座標情報は有せず、第1測位情報の取得を開始した時点での位置及び姿勢を基準とした相対的な測位情報となる。グラフG1のデータd1,d2,d3,d4にも模式的に示されるように、第1測位情報は第2測位情報と比べてノイズ等による影響で非連続に揺らぐことは少ないが、誤差が連続的に累積し、また、SLAM等のロストにより、まれにではあるが座標系が急にずれる挙動を示すものである。(この急にずれる挙動は図4のグラフG1内では示されていない。) In Figure 4, graph G1 shows data d1, d2, d3, d4 as a result of acquiring the first positioning information at four consecutive times, and the position is expressed as a white circle (○) in the three-dimensional xyz coordinate space. By expressing the direction with a vector arrow starting from the white circle, the time-varying behavior of the first positioning information composed of the position and direction is schematically shown. As already explained, the first positioning information is acquired as local information, does not have global coordinate information like the second positioning information, and is based on the position and orientation at the time when acquiring the first positioning information is started. This is relative positioning information. As schematically shown in the data d1, d2, d3, and d4 of graph G1, the first positioning information fluctuates less discontinuously due to the influence of noise etc. than the second positioning information, but the error is continuous. In addition, due to loss of SLAM, etc., the coordinate system suddenly shifts, although in rare cases. (This sudden deviation behavior is not shown in graph G1 of Figure 4.)
図4にてグラフG2は第2測位情報を3つの連続する時刻について取得したデータd11,d12,d13を示しており、グラフG1と同様に白丸で位置を、向きをベクトル矢印で表現することで、位置及び向きで構成される第2測位情報の時間変化の挙動を模式的に示している。既に説明したように、第2測位情報はグローバル座標で表現されるグローバルなものとして取得される。グラフG2のデータd11,d12,d13にも模式的に示されるように、グローバル座標で表現される第2測位情報は、ノイズ等による影響で非連続の揺らぎが発生しやすく、また、まれに外れ値が混ざるという挙動を示すものである。 In Fig. 4, graph G2 shows data d11, d12, and d13 obtained from the second positioning information at three consecutive times.Similar to graph G1, the position is represented by a white circle and the direction is represented by a vector arrow. , schematically shows the temporal change behavior of the second positioning information composed of position and orientation. As already explained, the second positioning information is acquired as global information expressed in global coordinates. As schematically shown in data d11, d12, and d13 of graph G2, the second positioning information expressed in global coordinates is prone to discontinuous fluctuations due to the influence of noise, etc., and in rare cases This shows the behavior of mixing values.
以上のように、第1測位情報及び第2測位情報は、誤差等が全く存在しない理想的な状況においては、同じ時刻の端末1についての同一の測位結果を表すものとなるべきであるところ、実際に取得される時間変化の挙動には以下のような特徴C1がある。
<特徴C1>
第1測位情報…ローカル座標で定義され、誤差が連続的に累積し、稀に急に大幅なずれを生じる(突発的な変動を生じる)。
第2測位情報…グローバル座標で定義され、非連続の揺らぎがあり、稀に外れ値が出る(突発的な外れ値を有する)。
As described above, in an ideal situation where there is no error or the like, the first positioning information and the second positioning information should represent the same positioning result for the terminal 1 at the same time. The behavior of the time change that is actually obtained has the following characteristic C1.
<Feature C1>
First positioning information: Defined by local coordinates, errors continuously accumulate, and in rare cases, sudden and large deviations occur (sudden fluctuations occur).
Second positioning information: Defined in global coordinates, has discontinuous fluctuations, and rarely has outliers (has sudden outliers).
上記の特徴C1は、第1測位方式と第2測位方式との相違によるものである。すなわち、根本的な違いとして、第1測位方式は動きの差分を累積する方法であり、例えば加速度成分や、連続する画像間の相対位置を積分し、現在の位置を推定するものである。そのため、急な動きや画像のブレが発生し、前情報との比較ができなくなると非連続的に大きくずれ、そこからまた累積計算していく動きが続くこととなる。これが誤差の累積、突発的な変動の要因となる。 The above feature C1 is due to the difference between the first positioning method and the second positioning method. That is, the fundamental difference is that the first positioning method is a method of accumulating movement differences, for example, integrating acceleration components and relative positions between successive images to estimate the current position. Therefore, if a sudden movement or blurring of the image occurs and it becomes impossible to compare with the previous information, there will be a discontinuous large deviation, and from there the cumulative calculation will continue. This causes accumulation of errors and sudden fluctuations.
一方、第2測位方式は、逆に基準となる情報があり、その基準に対してどのような位置になるかを推定するものである。そのため、誤差が累積することはないが、RANSAC(ランダムサンプルコンセンサス)などに起因するランダムなノイズ成分の除外計算を行うことで、全く同じ情報を与えても、毎回計算結果がわずかに異なったり、場合によっては全く違う値を出してしまうという特徴がある。これが、非連続な揺らぎ、突発的な外れ値の要因である。 On the other hand, in the second positioning method, there is reference information, and the position relative to the reference is estimated. Therefore, errors do not accumulate, but by performing calculations that exclude random noise components caused by RANSAC (Random Sample Consensus), even if the exact same information is given, the calculation results may be slightly different each time. It has the characteristic of producing completely different values in some cases. This is the cause of discontinuous fluctuations and sudden outliers.
補完部30ではステップS3~S10において、本来であれば同一内容であるべき第1測位情報及び第2測位情報を、上記のような実際の値における挙動の相違(統計的な相違)を考慮して統合することにより、誤差等の影響を低減した安定的な測位結果を得ることができる。 In steps S3 to S10, the complementation unit 30 converts the first positioning information and the second positioning information, which should normally have the same content, by considering the difference in behavior (statistical difference) in the actual values as described above. By integrating these two positions, it is possible to obtain stable positioning results with reduced effects of errors and the like.
以下、この詳細としてのステップS3~S10を説明する。説明の前提として、第1及び第2の測位情報{P1(k),P2(k)}(k=t,t-1,t-2,…,t-N+1)における位置及び向きを次のように表記するものとする。すなわち、時刻kの第1測位情報P1(k)における位置(ローカル座標)をLPkとし、向きをLRkとする。また、時刻kの第2測位情報P2(k)における位置(グローバル座標)をGPkとし、向きをGRkとする。これら位置LPk, GPkはxyz座標の値として要素数3のベクトルで与えられ、向きLRk, GRkはサイズ3×3の回転行列として与えることができるが、以下に説明する各計算の際には、コンピュータグラフィックス等の分野で周知のように、斉次座標表現によりこれら座標(ベクトル)LPk, GPkや回転行列LRk, GRkを扱うようにしてもよい。
Hereinafter, steps S3 to S10 will be explained in detail. As a premise of the explanation, the position and orientation in the first and second positioning information {P1(k),P2(k)} (k=t,t-1,t-2,...,t-N+1) are It shall be written as follows. That is, let the position (local coordinates) in the first positioning information P1(k) at time k be LP k , and the direction be LR k . Further, the position (global coordinates) in the second positioning information P2(k) at time k is set as GP k , and the direction is set as GR k . These positions LP k and GP k can be given as xyz coordinate values as vectors with 3 elements, and the directions LR k and GR k can be given as rotation matrices of
ステップS3では、差分計算部31が、第1及び第2の測位情報{P1(k),P2(k)}(k=t,t-1,t-2,…,t-N+1)におけるN個の同時刻の向きに関して、その差分としての回転成分(以下、「差分回転成分」や「差分の回転成分」と表現する場合もある)RDiffkを以下の式(1)のように計算してから、ステップS4へと進む。式(1)においてinv()は逆行列を表す(inv(LRk)=LRk
-1)ものである。
RDiffk=GRk・inv(LRk) …(1)
In step S3, the difference calculation unit 31 calculates the first and second positioning information {P1(k),P2(k)}(k=t,t-1,t-2,...,t-N+1) Regarding the N simultaneous orientations at After the calculation, proceed to step S4. In Equation (1), inv() represents an inverse matrix (inv(LR k )=LR k −1 ).
RDiff k =GR k・inv(LR k ) …(1)
原理に関して既に説明した通り、式(1)による差分としてのN個の回転成分RDiffk(k=t,t-1,t-2,…,t-N+1)は、誤差等が全く存在しないと仮定した理想的な状況においては、N個の値が全て等しくなるべきものであるが、実際には前述した特徴C1が反映された誤差によるばらつきが発生する。 As already explained regarding the principle, the N rotational components RDiff k (k=t,t-1,t-2,...,t-N+1) as the difference according to equation (1) have no errors. In an ideal situation where it is assumed that the N values are not equal, all N values should be equal, but in reality, variations occur due to errors reflecting the above-mentioned characteristic C1.
ステップS4では、ステップS3で得たN個の時系列データとしての回転成分{RDiffk}(k=t,t-1,t-2,…,t-N+1)に対して、フィッティング部32がRANSAC(ランダムサンプルコンセンサス)等のロバスト推定により外れ値を許容した回帰直線を計算したものとしてフィッティング結果を得てからステップS5へと進む。 In step S4, the fitting unit applies rotational components {RDiff k } (k=t,t-1,t-2,...,t-N+1) as the N time series data obtained in step S3. 32 calculates a regression line that allows outliers by robust estimation such as RANSAC (Random Sample Consensus), and then proceeds to step S5 after obtaining a fitting result.
ステップS5では、フィッティング部32がさらに、ステップS4で得た回帰直線と、フィッティング対象としてのN個の時系列データである回転成分{RDiffk}(k=t,t-1,t-2,…,t-N+1)と、を比較し、回転成分{RDiffk}の値が回帰直線に対して外れ値となっていると閾値判定されるような要素が、後ろ側(時刻kが現時刻tに近い側)に指定数TH以上連続しているか否かを判定し、否定の場合(外れ値が後ろ側に指定数TH以上連続していない場合)にはステップS51へと進み、肯定の場合(外れ値が後ろ側に指定数TH以上連続している場合)にはステップS52へと進む。 In step S5, the fitting unit 32 further combines the regression line obtained in step S4 with rotational components {RDiff k } (k=t, t-1, t-2, ..., t-N+1), and the element for which the value of the rotational component {RDiff k } is determined to be an outlier with respect to the regression line is determined by the threshold value, It is determined whether or not the outliers are consecutive for a specified number of times TH or more (on the side closer to the current time t), and if negative (when the outliers are not consecutive for the specified number of times or more on the rear side), the process proceeds to step S51. If affirmative (if there are consecutive outliers for the specified number TH or more on the back side), the process advances to step S52.
なお、指定数THは、回転成分の個数Nよりも小さい所定の閾値として設定しておけばよく、例えばN=8の場合にTH=2等として設定してよい。また、ステップS5では以下の手順により当該判定を行えばよい。
(手順1)N個の各回転成分{RDiffk}(k=t,t-1,t-2,…,t-N+1)につき、当該時刻kにおける回帰直線の値と比較し、差(絶対値)が閾値以上であれば外れ値であるものと判断し、閾値以上でなければ外れ値ではないものと判断する。
(手順2)上記の手順1で外れ値と判断されたものが1個以上ある場合に、当該外れ値が、N個の時系列データのうちの後ろ側所定範囲(最も後ろ側である現時刻tを含む所定範囲)内に属しており、且つ、当該属しているものが指定数TH以上連続して存在する場合に、肯定判定を得る。これ以外の場合に関しては、否定判定を得る。
Note that the designated number TH may be set as a predetermined threshold smaller than the number N of rotational components, and for example, when N=8, TH may be set as 2, etc. Further, in step S5, the determination may be made according to the following procedure.
(Step 1) For each of the N rotational components {RDiff k } (k=t,t-1,t-2,...,t-N+1), compare it with the value of the regression line at the relevant time k, and calculate the difference. If (absolute value) is greater than or equal to the threshold value, it is determined that it is an outlier, and if it is not greater than the threshold value, it is determined that it is not an outlier.
(Step 2) If there is one or more outliers that were determined to be outliers in step 1 above, the outlier is within a predetermined range at the back of the N time series data (current time which is the backmost). (a predetermined range including t), and if there are a specified number TH or more of the items that belong consecutively, an affirmative determination is obtained. In other cases, a negative determination is obtained.
ステップS51では、フィッティング部32がさらに、N個の各回転成分{RDiffk}(k=t,t-1,t-2,…,t-N+1)のうち、ステップS5で外れ値とみなされたもの(手順1で外れ値とされたもの)を、第2測位情報による非連続な揺らぎに起因するものであると推定して除外したものを、以降での計算処理の対象集合Wとして設定してからステップS6へと進む。ここで、RANSACの結果をより安定させるために2回以上繰り返してもよい。すなわち、外れ値を除外した要素のみを用いて再度、RANSACの回帰直線を計算し、除外される外れ値の個数がしきい値以下となった際のものを計算処理の対象集合Wとして設定してからステップS6へと進むようにしてもよい。 In step S51, the fitting unit 32 further determines outliers among the N rotational components {RDiff k } (k=t, t-1, t-2,..., t-N+1) in step S5. Those that are considered to be outliers (outliers in step 1) are estimated to be caused by discontinuous fluctuations due to the second positioning information, and are excluded from the target set W for the subsequent calculation process. After setting as , the process proceeds to step S6. Here, RANSAC may be repeated two or more times to make the results more stable. In other words, the RANSAC regression line is calculated again using only the elements excluding outliers, and the line when the number of excluded outliers is less than the threshold is set as the target set W for calculation processing. After that, the process may proceed to step S6.
ステップS52では、フィッティング部32がさらに、N個の各回転成分{RDiffk}(k=t,t-1,t-2,…,t-N+1)においては、後ろ側(現時刻tに近い側)の要素が、第1測位情報における大幅なずれが発生した後の状態になっているものと推定し、N個の全データのうち当該後ろ側の要素のみを用いて再度、回帰直線を計算し、当該後ろ側の要素を以降での計算処理の対象集合Wとして設定してからステップS6へと進む。 In step S52 , the fitting unit 32 further calculates the rear side (current time t It is estimated that the elements on the side closer to the first positioning information are in the state after a large deviation has occurred in the first positioning information, and regression is performed again using only the elements on the rear side among all N pieces of data. After calculating the straight line and setting the rear element as the target set W for subsequent calculation processing, the process proceeds to step S6.
ステップS52で後ろ側の要素について回帰直線を計算する際は、RANSACを用いてもよいし、用いなくともよい。用いる場合、ステップS51と同様に、RANSACの結果がより安定するように2回以上繰り返してもよい。また、後ろ側の要素の個数については、現時刻tを含むTH個又はTH個以上(N個未満)の所定数のサンプルを対象に、回帰直線を計算すればよい。 When calculating the regression line for the rear elements in step S52, RANSAC may or may not be used. If used, similar to step S51, it may be repeated two or more times to make the RANSAC results more stable. Regarding the number of elements on the rear side, a regression line may be calculated for TH samples including the current time t or a predetermined number of samples greater than or equal to TH (less than N).
ステップS6では、回転成分計算部33が、回帰直線上での値として、現時刻tでの回転成分RDiff(t)を計算してから、ステップS7へと進む。 In step S6, the rotational component calculation unit 33 calculates the rotational component RDiff(t) at the current time t as a value on the regression line, and then proceeds to step S7.
なお、ステップS6で当該計算するために用いる回帰直線は、ステップS51からステップS6へと至った場合にはステップS4で計算した回帰直線(外れ値を除外しながらRANSACを2回以上繰り返した場合はその最後の回帰直線)であり、ステップS52からステップS6へと至った場合には、ステップS52で後ろ側の要素のみについて再度計算された回帰直線(外れ値を除外しながらRANSACを2回以上繰り返した場合はその最後の回帰直線)である。
Note that the regression line used for the calculation in step S6 is the regression line calculated in step S4 when going from step S51 to step S6 (or the regression line calculated in step S4 when RANSAC is repeated two or more times while excluding outliers). If step S52 leads to step S6, the regression line calculated again for only the rear elements in step S52 (RANSAC is repeated two or more times while excluding outliers). the last regression line).
ステップS7では、スケール計算部34が、計算対象集合W(ステップS51又はS52において設定されている集合W)に属する(k∈W)第1測位情報のローカル座標LPk及び第2測位情報のグローバル座標GPkを用いて、集合W内でのローカル座標LPkの平均値LPave及び集合W内でのグローバル座標GPkの平均値GPaveを計算し、以下の式(2)の特異値分解を行う。
U・Σ・VT=SVD((LPk-LPave)T・(GPk-GPave)) …(2)
In step S7 , the
U・Σ・V T =SVD((LP k -LP ave ) T・(GP k -GP ave )) …(2)
式(2)において、右辺のSVD()は括弧内の引数を対象として特異値分解を行う旨を表しており、当該特異値分解された結果が左辺となり、行列Σの対角成分に集合W内の各要素についてのスケール計算結果が現れることとなる。説明のため、この行列Σの対角成分を配列Sとする。また、上付きTは転置演算であり、以下同様とする。 In equation (2), SVD() on the right side indicates that singular value decomposition is performed on the arguments in parentheses, and the result of the singular value decomposition becomes the left side, and the diagonal components of the matrix Σ are set W The scale calculation results for each element within will appear. For the sake of explanation, the diagonal elements of this matrix Σ are assumed to be array S. Also, the superscript T is a transposition operation, and the same applies hereafter.
ステップS7ではさらに、スケール計算部34が上記の配列Sを用いて以下の式(3)により、ローカル座標(第1測位情報)に対するグローバル座標(第2測位情報)のスケールCを計算してから、ステップS8へと進む。式(3)において、sumは、配列S内での各要素の総和であり、count(W)は集合Wの要素数であり、average()は集合Wでの平均値演算である。
In step S7, the
ステップS8では、並進成分計算部35が、ステップS6で得られている回転成分RDiff(t)と、ステップS7で得られているスケールCと、を用いることによりさらに、ローカル座標・グローバル座標間での並進成分としての並進ベクトルT(転置演算を表す上付きTとは異なる)を以下の式(4)により求めてから、ステップS9へと進む。
T=-C・RDiff(t)・(LPave)T+(GPave)T …(4)
In step S8, the translational
T=-C・RDiff(t)・(LP ave ) T +(GP ave ) T …(4)
ステップS9では、ステップS6で得られている回転成分RDiff(t)と、ステップS7で得られているスケールCと、ステップS8で得られている並進ベクトルTと、を用いて、変換部36が以下の式(5)の結合処理により、ローカル座標・グローバル座標間での射影行列M(t)を求める。回転成分RDiff(t)はサイズ3×3の行列であり、並進ベクトルTはサイズ1×3の行列(ベクトル)であるため、以下の式(5)の結合によりサイズ3×4の射影行列M(t)が得られることとなる。
M(t)=( C・RDiff(t), T) …(5)
In step S9, the
M(t)=( C・RDiff(t), T) …(5)
ステップS9ではさらに、変換部36が上記求めた射影行列Mを用いて、以下の式(6)により現時刻tのローカル座標(右辺の斉次座標表現)をグローバル座標(左辺の斉次座標表現)に変換したものとして、位置に関する測位結果を得てから、また、以下の式(7)により現時刻tのローカル座標での向きLRをグローバル座標での向きGRに変換したものとして、向きに関する測位結果を得てから、ステップS10へと進む。式(6),(7)でのローカル座標(LPx,LPy,LPz)及びローカル座標での向きLRは、第1測位部12で現時刻tについて取得したデータである。
(GPx,GPy,GPz,1)T=M(t)・(LPx,LPy,LPz,1)T …(6)
GR = RDiff(t)・LR …(7)
In step S9, the
(GP x ,GP y ,GP z ,1) T =M(t)・(LP x ,LP y ,LP z ,1) T …(6)
GR = RDiff(t)・LR …(7)
ステップS10では、現時刻tについてのグローバル座標での補完された測位結果として、ステップS9で得たグローバル座標(式(6),(7)の位置及び向き)の値を補完部30より出力してから、ステップS1へと戻る。当該戻ったステップS1では次の現時刻t+1について第1測位部12及び第2測位部22による第1、第2の測位情報の取得が行われ、同様にしてさらにステップS10に至った際に、次の現時刻t+1についての測位結果が出力される。この補正されたグローバル座標は、既存手法によりグローバル座標で得られた測位情報に対して、既存手法における非連続な揺らぎや外れ値が補正されたものとなっている。また補正元のローカル座標に生じる累積誤差もグローバル座標に基づいて随時対応関係が再計算されるため、累積誤差の影響を小さく抑えられている。
In step S10, the interpolation unit 30 outputs the values of the global coordinates (position and orientation in equations (6) and (7)) obtained in step S9 as the interpolated positioning result in the global coordinates for the current time t. Then, return to step S1. In the returned step S1, the first and second positioning information is acquired by the
以上のように、図3のフローはリアルタイムで実行することができ、各時刻tにおいてステップS1での測位結果をもとに、当該時刻tでの補完された測位情報がステップS10において出力されることとなる。(なお、測位情報を時系列データとして予め取得しておき、オフラインで同様の処理を行うようにしてもよい。)以上においては、第1測位部12と第2測位部22とでの測位結果が同一時刻に取得されることを前提として説明してきたが、第1測位部12の測位タイミング(測位頻度)と第2測位部22の測位タイミング(測位頻度)とを異ならせてもよい。例えば、第2測位部22の測位の方がシステム全体的として高負荷である場合には、第2測位部22の測位頻度を第1測位部12の測位頻度よりも低くすることにより、システム全体の負荷を抑制することができる。この場合、時刻tに得られた、M(t)やRDiff(t)をt以降の補完計算に用いてもよい。例えば第1測位部12の測位処理を30fps(フレーム毎秒)で動作させ、第2測位部22の測位処理を1fpsで動作させた場合などでは、M(t)やRDiff(t)の計算は1fpsで行い、それ以外は直前のMやRDiffを再利用してよい。
As described above, the flow in FIG. 3 can be executed in real time, and at each time t, based on the positioning result in step S1, supplemented positioning information at that time t is output in step S10. It happens. (Note that the positioning information may be acquired in advance as time-series data and the same processing may be performed offline.) In the above, the positioning results of the
図5は、本実施形態による誤差低減の効果を説明するための模式例として、ステップS3での差分の回転成分時系列データ{RDiffk}(k=t,t-1,t-2,…,t-N+1)の模式例を示す図である。既に説明したように、この時系列データは誤差などのない理想的な状況では一定値となるべきものであるが、実際には図5の例のように、誤差影響によってばらつく挙動を示す。 FIG. 5 shows rotational component time series data {RDiff k } (k=t, t-1, t-2,... , t-N+1). As already explained, this time-series data should have a constant value in an ideal situation without errors, but in reality, as shown in the example of FIG. 5, it exhibits a behavior that varies due to the influence of errors.
図5のウィンドウWは現時刻t=8におけるものであり、サンプル数N=8である当該ウィンドウW(k=1,2,3,…,8)内を対象として、ステップS4でのフィッティング結果が得られることとなる。時刻t=1~4のデータ群DAや時刻t=5,7,8のデータ群DCは、特徴Cのうち、第2測位情報における揺らぎの誤差と、第1測位情報における時間進行に沿った累積的な誤差(フィッティング直線LCで表現される)と、の影響が現れたものに相当する。時刻t=6のデータDBは、第2測位情報における外れ値の影響が現れたものに相当するが、本実施形態によれば、RANSAC等のロバスト推定によりこのようなデータを除外し、その誤差影響を低減することができる。図5の例では、フィッティング直線LCにおける現時刻t=8の値をRDiff(8)の値として利用することで、諸々の誤差影響を低減することができる。 The window W in FIG. 5 is at the current time t=8, and the fitting results in step S4 are targeted within the window W (k=1,2,3,...,8) where the number of samples is N=8. will be obtained. The data group DA at times t=1 to 4 and the data group DC at times t=5, 7, 8 are characterized by the fluctuation error in the second positioning information and the time progression in the first positioning information among the characteristics C. It corresponds to the cumulative error (represented by the fitting straight line LC) and the effect of . The data DB at time t=6 corresponds to the data affected by outliers in the second positioning information, but according to this embodiment, such data is excluded by robust estimation such as RANSAC, and the error is The impact can be reduced. In the example of FIG. 5, the influence of various errors can be reduced by using the value of the current time t=8 on the fitting straight line LC as the value of RDiff(8).
図5ではまた、時刻t=8からt=9へと移った際に、特徴Cのうち、第1測位情報における大幅なずれ(SLAM等のロストによる突発的な変動)が発生したことによる影響が現れている。このように、第1測位情報における座標値のロスト後は、ロスト前の値は廃棄してロスト後の時系列のみを使う必要があるが、本実施形態によればステップS52の処理により、このようにロスト後の時系列のみを利用すること可能となり、誤差を低減することができる。なお、図5においてロスト後の時刻t=9~16のデータ群DDは、データ群DA,DBと同様に、特徴Cのうち、第1測位情報における時間進行に沿った累積的な誤差(フィッティング直線LDで表現される)と、第2測位情報における揺らぎの誤差と、の影響が現れたものに相当する。 Figure 5 also shows the effect of a large shift in the first positioning information (sudden fluctuation due to lost SLAM, etc.) in feature C when moving from time t=8 to t=9. is appearing. In this way, after the coordinate values in the first positioning information are lost, it is necessary to discard the values before the loss and use only the time series after the loss. In this way, it is possible to use only the lost time series, and errors can be reduced. In addition, in Fig. 5, the data group DD from time t=9 to 16 after the loss is similar to the data groups DA and DB, and the cumulative error (fitting (represented by a straight line LD) and the fluctuation error in the second positioning information.
図6は、一般的なコンピュータ装置70におけるハードウェア構成の例を示す図である。測位システム10における端末1及びサーバ2はそれぞれ、このような構成を有する1台以上のコンピュータ装置70として実現可能である。なお、2台以上のコンピュータ装置70で測位システム10を実現する場合、ネットワーク経由で処理に必要な情報の送受を行うようにしてよい。コンピュータ装置70は、所定命令を実行するCPU(中央演算装置)71、CPU71の実行命令の一部又は全部をCPU71に代わって又はCPU71と連携して実行する専用プロセッサとしてのGPU(グラフィックス演算装置)72、CPU71(及びGPU72)にワークエリアを提供する主記憶装置としてのRAM73、補助記憶装置としてのROM74、通信インタフェース75、ディスプレイ76、マウス、キーボード、タッチパネル等によりユーザ入力を受け付ける入力インタフェース77、測位のためのセンシングハードウェアとしての計測部11及び撮影部21と、これらの間でデータを授受するためのバスBSと、を備える。
FIG. 6 is a diagram showing an example of the hardware configuration of a general computer device 70. The terminal 1 and the
測位システム10における端末1及びサーバ2の各機能部は、各部の機能に対応する所定のプログラムをROM74から読み込んで実行するCPU71及び/又はGPU72によって実現することができる。なお、CPU71及びGPU72は共に、演算装置(プロセッサ)の一種である。ここで、表示関連の処理が行われる場合にはさらに、ディスプレイ76が連動して動作し、データ送受信に関する通信関連の処理が行われる場合にはさらに通信インタフェース75が連動して動作する。測位システム10による測位結果等はディスプレイ76で表示して出力してよい。
Each functional unit of the terminal 1 and the
10…測位システム、1…端末、2…サーバ
11…計測部、12…第1測位部、13…第1DB、21…撮影部、22…第2測位部、23…第2DB、30…補完部、31…差分計算部、32…フィッティング部、33…回転成分計算部、34…スケール計算部、35…並進成分計算部、36…変換部
10...positioning system, 1...terminal, 2...server
11...Measuring section, 12...First positioning section, 13...First DB, 21...Photographing section, 22...Second positioning section, 23...Second DB, 30...Completion section, 31...Difference calculation section, 32...Fitting section, 33...Rotational component calculation section, 34...Scale calculation section, 35...Translational component calculation section, 36...Conversion section
Claims (10)
グローバル座標系において、測位誤差が累積しない第2測位手法により前記対象の測位を行うことで、位置及び向きの時系列データとして第2測位情報を取得する第2測位部と、
補完部と、を備え、
前記補完部は、
前記第1測位情報における向きの時系列データと前記第2測位情報における向きの時系列データとの差分である差分回転成分時系列データに対して外れ値を許容した第1回帰直線を計算し、
前記差分回転成分時系列データのうち現時刻に近い側のデータに、前記第1回帰直線からの外れ値に該当するデータの個数が閾値以上連続して存在するか否かを判定し、
前記存在すると判定された場合は、前記閾値以上連続して存在するデータに対して第2回帰直線を計算して当該第2回帰直線上での現時刻データを現時刻差分回転として定め、
前記存在しないと判定された場合は、前記第1回帰直線上での現時刻のデータを現時刻差分回転として定め、
前記第1測位部で取得された現時刻の向きに対して前記現時刻差分回転を適用したものを、前記第2測位部で取得された現時刻の前記グローバル座標系での向きを補完した結果として得ることを特徴とする測位システム。 a first positioning unit that acquires first positioning information as time-series data of position and orientation by positioning a target using a first positioning method in which positioning errors accumulate in a local coordinate system ;
a second positioning unit that acquires second positioning information as time-series data of position and orientation by positioning the target using a second positioning method in which positioning errors do not accumulate in the global coordinate system ;
Comprising a complementary part,
The complementing section is
Calculating a first regression line that allows outliers for differential rotation component time series data that is the difference between the orientation time series data in the first positioning information and the orientation time series data in the second positioning information,
Determining whether the number of data corresponding to outliers from the first regression line continuously exists in data closer to the current time among the differential rotation component time series data than a threshold value;
If it is determined that the data exists, a second regression line is calculated for the data that continuously exists at or above the threshold value, and the current time data on the second regression line is determined as the current time difference rotation;
If it is determined that the above does not exist, the current time data on the first regression line is determined as the current time difference rotation,
The result of applying the current time difference rotation to the orientation of the current time acquired by the first positioning unit and complementing the orientation of the current time in the global coordinate system acquired by the second positioning unit A positioning system characterized by obtaining as follows .
前記第2測位情報における時系列データとしての第2誤差は第2挙動を示し、当該第2挙動は、誤差の値がゼロの周辺で揺らぎ続ける第21挙動と、当該第21挙動の途中で突発的に発生する、誤差の値が揺らぎの範囲から逸脱した外れ値を示す第22挙動と、を含むものであることを特徴とする請求項1に記載の測位システム。The second error as time series data in the second positioning information indicates a second behavior, and the second behavior includes a 21st behavior in which the error value continues to fluctuate around zero, and a sudden occurrence in the middle of the 21st behavior. 2. The positioning system according to claim 1, wherein the positioning system includes a twenty-second behavior in which the error value is an outlier that deviates from the fluctuation range.
前記補完部では、前記差分回転成分時系列データのうち現時刻に近い側のデータに、前記第1回帰直線からの外れ値に該当するデータの個数が閾値以上連続して存在しないと判定された場合に、前記差分回転成分時系列データの中から、前記第1回帰直線からの外れ値に該当するデータを除外したデータを計算対象集合として設定し、The interpolation unit determines that the number of data corresponding to outliers from the first regression line does not continuously exist in the data closer to the current time of the differential rotation component time series data than a threshold value. In this case, data obtained by excluding data corresponding to outliers from the first regression line from the differential rotation component time series data is set as a calculation target set,
当該計算対象集合に属する要素に対応する時刻における前記第1測位情報の各時刻での前記ローカル座標系における位置(LPThe position (LP) in the local coordinate system at each time of the first positioning information at the time corresponding to the element belonging to the calculation target set kk )と、当該計算対象集合に属する要素に対応する時刻における前記第2測位情報の各時刻での前記グローバル座標系における位置(GP), and the position in the global coordinate system at each time of the second positioning information at the time corresponding to the element belonging to the calculation target set (GP kk )と、を少なくとも用いることにより、前記ローカル座標系における前記第1測位情報の位置座標の長さ尺度に対する、前記グローバル座標系における前記第2測位情報の位置座標の長さ尺度の比率を表すスケール(C)を推定することを特徴とする請求項1ないし4のいずれかに記載の測位システム。) and a scale representing the ratio of the length scale of the position coordinate of the second positioning information in the global coordinate system to the length scale of the position coordinate of the first positioning information in the local coordinate system. 5. The positioning system according to claim 1, wherein the positioning system estimates (C).
前記スケール(C)、前記並進成分(T)及び前記現時刻差分回転(RDiff(t))を用いて、前記ローカル座標系(LPk)と前記グローバル座標系(GPk)との間の射影行列(M(t))を算出し、
前記第1測位部で取得された現時刻での前記第1測位情報における位置である(LPx,LPy,LPz)に対して前記射影行列(M(t))を以下の式(6)による斉次座標表現での乗算の形で適用することで、前記第2測位部で取得された現時刻での前記第2測位情報における位置を補完したものである(GPx,GPy,GPz)を得ることを特徴とする請求項6または7に記載の測位システム。
A projection matrix ( M(t)),
The projection matrix (M(t)) is uniformly calculated using the following equation (6) for the position (LPx, LPy, LPz) in the first positioning information at the current time acquired by the first positioning unit. By applying the multiplication in the following coordinate representation , obtain (GPx, GPy, GPz) which is a complement of the position in the second positioning information at the current time acquired by the second positioning unit. The positioning system according to claim 6 or 7 , characterized by:
グローバル座標系において、測位誤差が累積しない第2測位手法により前記対象の測位を行うことで、位置及び向きの時系列データとして第2測位情報を取得する第2測位段階と、
補完段階と、を備え、
前記補完段階は、
前記第1測位情報における向きの時系列データと前記第2測位情報における向きの時系列データとの差分である差分回転成分時系列データに対して外れ値を許容した第1回帰直線を計算し、
前記差分回転成分時系列データのうち現時刻に近い側のデータに、前記第1回帰直線からの外れ値に該当するデータの個数が閾値以上連続して存在するか否かを判定し、
前記存在すると判定された場合は、前記閾値以上連続して存在するデータに対して第2回帰直線を計算して当該第2回帰直線上での現時刻データを現時刻差分回転として定め、
前記存在しないと判定された場合は、前記第1回帰直線上での現時刻のデータを現時刻差分回転として定め、
前記第1測位段階で取得された現時刻の向きに対して前記現時刻差分回転を適用したものを、前記第2測位段階で取得された現時刻の前記グローバル座標系での向きを補完した結果として得ることを特徴とする測位方法。 a first positioning step of acquiring first positioning information as time-series data of position and orientation by positioning the target using a first positioning method in which positioning errors accumulate in the local coordinate system ;
a second positioning step of acquiring second positioning information as time-series data of position and orientation by positioning the target using a second positioning method in which positioning errors do not accumulate in the global coordinate system ;
a complementation stage;
The complementation step includes:
Calculating a first regression line that allows outliers for differential rotation component time series data that is the difference between the orientation time series data in the first positioning information and the orientation time series data in the second positioning information,
Determining whether the number of data corresponding to outliers from the first regression line continuously exists in data closer to the current time among the differential rotation component time series data than a threshold value;
If it is determined that the data exists, a second regression line is calculated for the data that continuously exists at or above the threshold value, and the current time data on the second regression line is determined as the current time difference rotation;
If it is determined that the above does not exist, the current time data on the first regression line is determined as the current time difference rotation,
The result of applying the current time difference rotation to the orientation of the current time obtained in the first positioning step and complementing the orientation in the global coordinate system of the current time obtained in the second positioning step. A positioning method characterized by obtaining as follows.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2020074108A JP7365958B2 (en) | 2020-04-17 | 2020-04-17 | Positioning systems, methods and programs |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2020074108A JP7365958B2 (en) | 2020-04-17 | 2020-04-17 | Positioning systems, methods and programs |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2021169990A JP2021169990A (en) | 2021-10-28 |
| JP7365958B2 true JP7365958B2 (en) | 2023-10-20 |
Family
ID=78150212
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2020074108A Active JP7365958B2 (en) | 2020-04-17 | 2020-04-17 | Positioning systems, methods and programs |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7365958B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2023171341A1 (en) * | 2022-03-08 | 2023-09-14 | 株式会社Nttドコモ | Display control device |
| CN120427009B (en) * | 2025-06-27 | 2025-09-23 | 国家基础地理信息中心 | Indoor positioning method based on feature point identification |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2014228495A (en) | 2013-05-24 | 2014-12-08 | 株式会社Ihi | Self-position estimation device and method |
| JP2016017796A (en) | 2014-07-07 | 2016-02-01 | 多摩川精機株式会社 | Vehicle position measuring apparatus and method |
| WO2019202806A1 (en) | 2018-04-20 | 2019-10-24 | 本田技研工業株式会社 | Self-location estimation method |
-
2020
- 2020-04-17 JP JP2020074108A patent/JP7365958B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2014228495A (en) | 2013-05-24 | 2014-12-08 | 株式会社Ihi | Self-position estimation device and method |
| JP2016017796A (en) | 2014-07-07 | 2016-02-01 | 多摩川精機株式会社 | Vehicle position measuring apparatus and method |
| WO2019202806A1 (en) | 2018-04-20 | 2019-10-24 | 本田技研工業株式会社 | Self-location estimation method |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2021169990A (en) | 2021-10-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20250130045A1 (en) | Square-Root Multi-State Constraint Kalman Filter for Vision-Aided Inertial Navigation System | |
| CN114013449B (en) | Data processing method and device for automatic driving vehicle and automatic driving vehicle | |
| US8295547B1 (en) | Model-based feature tracking in 3-D and 2-D imagery | |
| CN114217665B (en) | Method and device for synchronizing time of camera and laser radar and storage medium | |
| CN113029128B (en) | Visual navigation method and related device, mobile terminal and storage medium | |
| KR101909953B1 (en) | Method for vehicle pose estimation using LiDAR | |
| CN116182905B (en) | Spatiotemporal extrinsic parameter calibration methods, devices and systems for lidar and combined inertial navigation | |
| JP7365958B2 (en) | Positioning systems, methods and programs | |
| US11859979B2 (en) | Delta position and delta attitude aiding of inertial navigation system | |
| CN113327270B (en) | Visual inertial navigation method, device, equipment and computer readable storage medium | |
| US20210398292A1 (en) | Movement amount estimation device, movement amount estimation method, and computer readable medium | |
| CN115601431B (en) | Control method for stability of visual inertial odometer and related equipment | |
| WO2022179047A1 (en) | State information estimation method and apparatus | |
| CN114812601A (en) | State estimation method and device of visual inertial odometer and electronic equipment | |
| CN112556699A (en) | Navigation positioning method and device, electronic equipment and readable storage medium | |
| CN114913500B (en) | Pose determination method and device, computer equipment and storage medium | |
| CN119359796B (en) | A method for determining posture and electronic equipment | |
| CN115824250A (en) | Intelligent ship augmented reality navigation information display method | |
| CN120580369A (en) | Three-dimensional modeling system and robot | |
| CN116883460B (en) | Visual perception positioning method and device, electronic equipment and storage medium | |
| JP7573004B2 (en) | Location Estimation Device | |
| CN114663605B (en) | Real-time positioning map construction method, unmanned mobile device and computer program product | |
| CN116929343A (en) | Pose estimation method, related equipment and storage medium | |
| CN116051767A (en) | A three-dimensional map construction method and related equipment | |
| CN121430587B (en) | Pose estimation method and device, storage medium and electronic equipment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220607 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230308 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230315 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230511 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230623 |
|
| 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: 20231004 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231010 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7365958 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |