タグ付けされた質問 「slam」

SLAM(同時ローカリゼーションとマッピング)は、センサーデータ(マッピング)を介して環境のマップを構築し、同時にそのマップ(ローカリゼーション)での自身の位置を追跡するロボットを指します。

8
GPSを使用しない絶対測位
IMUを使用すると、ロボットは開始位置に対する現在位置を推定できますが、これには時間の経過とともにエラーが発生します。GPSは、ローカルエラーの蓄積によって偏らない位置情報を提供するのに特に役立ちます。しかし、GPSは屋内では使用できず、屋外でもむらがある場合があります。 では、GPSを使用せずに(基準のフレームに対して)ローカライズするためにロボットが使用できる方法またはセンサーは何ですか?

2
EKF-SLAM更新ステップ、カルマンゲインが特異になる
SLAMにEKFを使用していますが、更新手順に問題があります。Kが特異であり、とrcond評価されるという警告が表示されnear eps or NaNます。問題の原因はZの反転にあると思います。最後の項を反転せずにカルマンゲインを計算する方法はありますか? 私はこれが問題の原因であるという100%の肯定的ではないので、コード全体をここに入れました。メインエントリポイントはslam2dです。 function [ x, P ] = expectation( x, P, lmk_idx, observation) % expectation r_idx = [1;2;3]; rl = [r_idx; lmk_idx]; [e, E_r, E_l] = project(x(r), x(lmk_idx)); E_rl = [E_r E_l]; E = E_rl * P(rl,rl) * E_rl'; % innovation z = observation - e; Z …

3
ICP一致の品質を判断する方法は?
でSLAMフロントエンドアルゴリズムは極小で立ち往生し、誤った結果を返している場合、2つのマッチング点群との間の関連を同定するための反復最近点(ICP)アルゴリズムを使用して、どのように決定することができますか? この問題は、任意の表面構造の両方のサンプルである2つの点群に一致するものとして定義されており、サンプリングされた領域の重なりは0〜100%であり、不明です。私が知っているトリミングされたICPの変種は、反復的にオーバーラップを決定しようとすることで動作しますが、でもこれは局所的最小値で立ち往生することができます。 単純なアプローチは、識別されたポイントペアの平均二乗誤差を調べることです。しかし、サンプリングの推定がなければ、これは危険なしきい値設定のようです。以下のためのマニュアルではライカサイクロン彼らはペアエラーヒストグラムの手動検査を示唆しています。ガウス形状の場合、フィットは良好です。線形の減衰がある場合、一致はおそらく悪いです。これは私にとってもっともらしいようですが、アルゴリズムで使用されるのを見たことがありません。
14 slam 


1
SLAMアルゴリズムは変化する環境をどのように処理しますか?
私はプロジェクトの土台を作っていますが、SLAM技術の現状について質問があります。 SLAMを装備したデバイスがオブジェクトを検出すると、そのオブジェクトの位置が保存されます。デバイスが生成しているポイントクラウドを見ると、このオブジェクトのポイントが表示され、そこから生成されたモデルにはジオメトリが含まれています。 オブジェクトが以前に空のスペースに配置されている場合、それが検出され、ポイントが追加されます。後続のモデルには、この新しいオブジェクトを記述するジオメトリが含まれます。 そのオブジェクトが削除された場合、デバイスはどのように反応しますか?私が見た限りでは、SLAMシステムはポイントを所定の位置に残す傾向があり、その結果、「ゴースト」ジオメトリが生じます。一時的な接触によって引き起こされた孤立点を無視するアルゴリズムがありますが、ソリッドモデルを構築するのに十分に長く残ったオブジェクトはデバイスのメモリに残ります。以前に占有されていたスペースが空になったことを検出できるシステムはありますか?
13 slam 

2
Rao-Blackwellized粒子フィルターと通常のフィルターの違い
これまで読んだことから、Rao-Blackwellizedパーティクルフィルターは、次の変数をマージナライズした後に使用される通常のパーティクルフィルターであるようです。 p (rt、st| yt)p(rt、st|yt)p(r_t,s_t | y^t) 私はその結論について本当に確信が持てないので、これら2種類のフィルターの正確な違いを知りたいと思います。前もって感謝します。

1
SAMとSLAMの違いは何ですか?
Smoothing and Mapping(SAM)とSimultaneous Localization and Mapping(SLAM)の違いは何ですか?これらの一般的なアプローチは密接に関連しているようです。誰かが違いを説明できますか?
12 slam 

4
ステレオカメラから密な点群を取得する方法は?
シーンの再構成にステレオカメラを使用しようとしていますが、通常は疎な点群しか取得できません(つまり、画像の半分以上には適切な深度情報がありません)。 ステレオ処理アルゴリズムは、画像内のテクスチャの存在に依存しており、視差範囲や相関ウィンドウサイズなど、より良い結果を得るために微調整できるいくつかのパラメーターがあることを理解しています。ただし、これらのパラメーターを調整する限り、Kinectなどのアクティブセンサーを使用して取得できる結果にリモートで近い結果を得ることができません。 私が欲しいのは、隣接する領域に対応する点群が一致を取得するのに十分なオーバーラップを持たないことが非常に多いため、再構成が著しく損なわれるためです。 コンピュータビジョンの専門家への私の質問は次のとおりです。一般に、(オフィス環境を恣意的に変更せずに)より高密度の点群を取得するにはどうすればよいですか?

1
誰が「SLAM」という言葉を作り出した(または普及させた)のですか?
SLAMに関するWikipediaの記事によると、元のアイデアは1986年にRandal SmithとPeter Cheeseman(空間的不確実性の推定と表現について [PDF])から生まれ、Hugh F. Durrant-WhyteとJJ Leonard(同時マップ作成)によって洗練されましたと 1991年の自律移動ロボットのローカリゼーション。 ただし、どちらの論文も「SLAM」という用語を使用していません。その用語はどこから(いつ)由来したのですか?それを普及させた特定の著者またはホワイトペーパーはありましたか?
10 slam 

1
最小二乗マップ参加
ここには多くの背景があります。質問まで下にスクロールしてください SLAMは線形最小二乗問題からどれだけ離れているかで説明されているマップ結合アルゴリズムを試しています。具体的には、式(36)。私が書いたコードは、ランドマーク位置の2番目のマップの値を常に取るようです。私の質問は、私はテキストを正しく理解しているか、または何らかのエラーを犯しているかです。数式を理解し、コードがそれをどのように実装するかを示しながら、数式を説明します。2つのローカルマップを結合するという単純なケースを実行しようとしています。 論文(36)によると、2つのローカルマップをを最小化状態ベクトルが見つかります。バツj o、I 、N 、R用のE Lバツjo私ん、relX_{join,rel} Σj = 1k(XLj^−Hj 、r eL(XJ O I N 、Rの電子L))T(PLj)− 1(XLj^− HJ 、R のE L(XJ O 、I 、N 、R用のE L))Σj=1k(バツjL^−Hj、rel(バツjo私ん、rel))T(PjL)−1(バツjL^−Hj、rel(バツjo私ん、rel)) \sum_{j=1}^{k}(\hat{X_j^L} - H_{j,rel}(X_{join,rel}))^T(P_j^L)^{-1}(\hat{X_j^L} - H_{j,rel}(X_{join,rel})) 2つのローカルマップバツL1^バツ1L^\hat{X_1^L}とバツL2^バツ2L^\hat{X_2^L}に展開しました。 (XL1^− HJ 、R のE L(XJ O 、I 、N 、R用のE L))T(PL1)− 1(XL1^− HJ 、R のE L(XJ O 、I 、N …
10 slam 

2
点群マップとグラフマップの関係
私は通常、ようなベクトル形式の点群であるSLAMマップに最も精通しています。EKFを使用してこのようなマップを作成する方法も理解しています。< x 、y、θ 、f1 ×、f1つのY、。。。、fn x、fn y><バツ、y、θ、f1バツ、f1y、。。。、fんバツ、fんy> 今日、私は.graphファイル形式に出会いました。これは、予想どおり、形式の頂点とエッジで構成されています。 VERTEX2 id x y orientation EDGE2 observed_vertex_id observing_vertex_id forward sideward rotate inf_ff inf_fs inf_ss inf_rr inf_fr inf_sr 行列とグラフ(隣接行列など)の間に関係があることを知っています。しかし、このグラフ形式のマップが、私がよく知っている点群マップとどのように同等であるかは、はっきりしていません。 関係は何ですか?頂点はポーズとランドマークの両方ですか?それらはグローバル参照フレームにありますか?これは、速度情報と距離/方位センサーからどのように作成されますか?グラフマップと点群の間に変換はありますか?
9 slam  mapping 

2
クワッドローターをターゲットに向けて導く
クワッドローターに取り組んでいます。-私はその位置を知っている私が行ってみたい、 -目標位置、及びそのI計算Aベクターから -私の目標に私を取る単位ベクトルを:b caaabbbccc c = b - a c = normalize(c) クワッドローターは回転せずにどの方向にも移動できるため、私がやろうとしたのは ロボットのヨー角でを回転させるccc コンポーネントに分割するx 、yバツ、yx, y それらをロール角とピッチ角としてロボットに渡します。 問題は、ヨーが0°±5の場合、これは機能しますが、ヨーが+90または-90に近い場合、失敗し、誤った方向に進みます。私の質問は、ここに明らかな何かが足りないのですか?
9 quadcopter  uav  navigation  slam  kinect  computer-vision  algorithm  c++  ransac  mobile-robot  arduino  microcontroller  machine-learning  simulator  rcservo  arduino  software  wifi  c  software  simulator  children  multi-agent  ros  roomba  irobot-create  slam  kalman-filter  control  wiring  routing  motion  kinect  motor  electronics  power  mobile-robot  design  nxt  programming-languages  mindstorms  algorithm  not-exactly-c  nxt  programming-languages  mindstorms  not-exactly-c  raspberry-pi  operating-systems  mobile-robot  robotic-arm  sensors  kinect  nxt  programming-languages  mindstorms  sensors  circuit  motion-planning  algorithm  rrt  theory  design  electronics  accelerometer  calibration  arduino  sensors  accelerometer 

3
いくつかの超音波センサーを使用して探索エリアのマップを作成するためにどのアルゴリズムを使用できますか?
最近、超音波センサーは信じられないほど安価であり、多くの趣味のロボットアプリケーションで人気があります。アルゴリズムを備えたロボットの周りにセンサーの束(たとえば10)を使用して、エリアの大まかなマップを作成します(ロボットはそれを探索します。)この段階では、動いているオブジェクトを処理することには興味がなく、静止しているものを特定するだけです。GPSを使用して位置を特定します。レーザースキャナーなどの他のコンポーネントを使用すると、はるかに正確な結果が得られると思いますが、そのようなデバイスも天文学的に高価です。 この目的のためのアルゴリズムはありますか?

1
実際には、カメラベースの視覚オドメトリ/ SLAMメソッドの精度は、自律カーナビゲーションのLIDARベースのメソッドにどのくらい近いですか?
Andreessen HorowitzのゼネラルパートナーであるBenedict Evansは、「ほぼすべての自治」プロジェクトがSLAMにLIDARを使用しており、そのすべてがHDマップを使用しているわけではないと主張しています。 MITグループは、HDマップのない公道で自動運転車をテストしています。 私の質問は、LIDARとカメラの誤差の差が大きいかどうかです。ベネディクトエヴァンスなどは、自動運転車の十分な精度のSLAMにはライダーが必要であると主張していますが、一見すると、KITTIベンチマークデータはその主張に矛盾しているようです。その印象を確認または反論したい。 視覚オドメトリ/ SLAMメソッドのKITTI Visionベンチマークリーダーボードでは、最初にV-LOAMと呼ばれるLIDARベースのメソッドが、4番目にSOFT2と呼ばれるステレオカメラベースのメソッドが示されています。それらは同じ回転誤差を持ち、それぞれの並進誤差のパーセントポイント差は0.05です。 自律カーナビゲーションに関して、翻訳精度の0.05パーセントポイントの違いは大きいですか、それとも重要ではありませんか? オドメトリ/ SLAMメソッド用のKITTI Visionベンチマークリーダーボード:

3
KINECTを使用してモバイル自律ロボットのマップを改善するにはどうすればよいですか
私の狙いの背景 私は、未知の領域の周りをナビゲートし、障害物を回避し、さまざまなタスクを実行するために音声入力を受信する必要がある移動自律ロボットを構築しています。また、顔やオブジェクトなども認識しなければなりません。Kinectセンサーとホイールオドメトリデータをセンサーとして使用しています。公式ドライバーとSDKがすぐに利用できるので、私はC#を主要言語として選択しました。ビジョンとNLPモジュールを完了し、ナビゲーション部分に取り組んでいます。 私のロボットは現在、Arduinoを通信用のモジュールとして使用し、ラップトップ上のIntel i7 x64ビットプロセッサをCPUとして使用しています。 これはロボットとその電子機器の概要です: 問題 エンコーダーからロボットの位置を取得するシンプルなSLAMアルゴリズムを実装し、Kinectを使用して(3D点群の2Dスライスとして)見えるものをマップに追加します。 これは私の部屋の地図が現在どのように見えるかです: これは私の実際の部屋の大まかな表現です: ご覧のとおり、それらは非常に異なり、非常に悪いマップです。 これは推測航法だけを使用することから予想されますか? 私はそれを洗練して実装する準備ができている粒子フィルターを知っていますが、この結果を改善する方法は何ですか? 更新 私の現在のアプローチについて言及するのを忘れていました(以前は忘れていました)。私のプログラムは大まかにこれを行います:(私は動的テーブルを格納するためにハッシュテーブルを使用しています) Kinectから点群を取得 シリアルオドメトリデータの受信を待つ タイムスタンプベースの方法を使用して同期する ウィキペディアの方程式とエンコーダーデータを使用してロボットのポーズ(x、y、theta)を推定する 点群の「スライス」を取得する 私のスライスは基本的にXおよびZパラメータの配列です 次に、ロボットのポーズとXおよびZパラメータに基づいてこれらのポイントをプロットします 繰り返す

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.