gggggraziegrazie

graizegrazieさんのやったこと、学んだことを記録する雑記帳です

コレスキー(Cholesky)分解

コレスキー分解は、LU分解やQR分解と同様に線形方程式を解くのに使われる手法です。LU分解よりも高速かつ省メモリで解くことができます。これは[3]によると、正定値行列の全固有値は正の値を持つため、LU分解で言えばLを求めると勝手にUも求まることになるそ…

QR分解

QR分解は、の実行列を、次の直交行列との上三角行列Rとの積に分解する操作を指します。なおこの分解は必ず成立します[1]。QR分解は線形最小二乗法を解いたり、[4]曰く行列の固有値を求めるために使用されます。その計算手法としては、ハウスホルダー法やグラ…

LU分解

正方行列を、下三角行列(Lower triangular matrix)と上三角行列(Upper triangular matrix)の積に分解する操作を指します。連立方程式の厳密解を求める際に使われます。また の様に左辺が変化する場合は、計算を各方程式毎に行う必要があるため、計算量がとな…

Branch and Bound(分枝限定法)法

分枝限定法とは、組合せ計画問題で厳密解を求めるための手法の1つです。組合せ計画問題とは、ある関数を最大化するパラメータの組の様に、パラメータの有限個の組み合わせの中から目的を満たす組を求める問題です。分枝限定法は、条件分岐を駆使して問題を…

github上のプロジェクトをカスタムしてbitbucket上に自分専用プロジェクトとしてコミットする方法

下記のページがわかりやすいです。 簡単に説明すると、まずbitbucket上にからのレポジトリを作り、そこにgithub上のレポジトリをpullします。その上で変更点をadd & commitするという流れです。Forking a Github repo to Bitbucket · GitHub

プログラムを書く際に注意すべき点

順次追記していきます。 プログラムを書く際、関数の引数として与える数字の単位系・座標系は、クラス毎・ファイル毎に揃えよう 単位系・座標系が入り混じると、想定と異なる単位系・座標系で数値を入力し、想定と異なる挙動に悩まされる可能性が高まります…

英語の文章を書くときに便利なサービス

ここでは説明を省略します。お手数ですがご自身で内容の確認をお願いいたします。 Grammaly : 文法的な間違いや冠詞・単語の使い方が不正確な場合に指摘をしてくれます www.grammarly.com Reverso Translation : 文法というよりも、冠詞・単語の使い方の間違…

ROSにおけるCMakeLists.txtの書き方

ROS

逐次わかったこと、気づいたことを追記していきます。catkin_package( # ここには自ら(このCMakeLists.txtが含まれているROS Packageのことを書きます INCLUDE_DIRS # headerファイルを探しに行く時のルートディレクトリを記載します → 1)へ LIBRARIES # ad…

PCLの中のGeneralized ICPの使い方

GICPをテストコードを元に使ってみたのですが、うまく収束せず困っていました。そこでgithub上で何かいいサンプルはないかと思って探していたところ、ちょうどよいものがありましたので共有します!ETH ZurichのAutonomous system labが公開しているrepositr…

PCL(Point Cloud Library)の使い方が書かれた資料

PointCloudを使ったコードを書く場合、PCLがよく使われるものと思います。サンプルやテストコードを見ることで使い方を知ることはできますが、解説は殆どありません。今回PCLの中のRegistrationについて書かれた論文がありましたので、メモ代わりに記事にし…

TeXですく数行にまたがった図を貼る方法

TeX

下記の様に、*を付けるとできる。\begin{figure*} \end{figure*} 参考文献 Wide figure/table in a twocolumn/multi-column document – texblog

latexとplatexとuplatex

LaTeXは一般的なtex。platexとuplatexは日本語用の環境を追加されたtex環境。そのため、英文で論文などを書きたい場合はLaTeXを使うこと。反対に、日本で論文を書きたい場合はpLaTeXかupLaTeXを使うこと。 参考文献 Publishing TeX - Wikipedia upTeX,upLaTe…

Dockerで0からコンテナ接続までのコマンドの流れを図にしてみた

Docker初心者のため、どのコマンドを使えばどうなるかの関係がイマイチ覚えづらいです。また少し使った後にしばらく間が空くと、完全に流れを忘れてしまうのが悩みでした。そこで流れを図にしてみました。今回の対象は、pull, build, create, run, start, st…

NDT( Normal Distributions Transform )

NDT[1]とは、2つの点群のマッチングをさせる手法の1つです。点群マッチングとは、ある点群(参照点群と呼ぶ)に対し、ある点群(入力点群と呼ぶ)がどれだけ重なっているか、重ねるためには点群をどの様に移動させるべきかを判断するための手法です。点群…

install scikit-sparse on win7(halfway)

コレスキー分解をWindowsのPython環境で使いたかったので、上記を試してみました。pip install自体は通ったのですが、目的であるコレスキー分解はまだ動いていませんが。。。 構築環境 Windows7 Python 3.6.5 scikit-sparse 0.4.3 pip 10.0.1 IDE: VSCode 1.…

"図解・ベイズ統計「超」入門 あいまいなデータから未来を予測する技術"を読んで

従来の統計学とベイズ統計学の違い 乗法定理 ベイズの定理 例題1. 理由不十分の原則 ベイズ更新 例題2. 1回目のデートで良を得る確率 事前準備 確率分布 例題3. 従来の統計学とベイズ統計学の違い 従来の統計学 - データについての不確実性を確率で表現・推…

NVIDIA製GPU搭載のハイスペックノートPCを探してみた

画像処理などをリアルタイムで行いたい場合、CPUはもちろん、ハイスペックなGPUが搭載されているとストレスがないです。またDeep Learningなどの機械学習を行う場合、OSSのライブラリはCUDAが必要なことが多い気がします。CUDAのインストールには、NVIDIA性…

under-determinedなシステム

under-determinedなシステムとは、変数の数に対して制約事項が足らないシステムのことです。参考文献のwikipediaを見ると、Fig.1の様な連立方程式があります。under-determinedなシステムでは、必ずしも解が求まるとは限りません。解が求まる場合は、ガウス…

Lpノルムとマンハッタン距離、ノルム

ノルムとは、次元のベクトルおよびなるに対して、 で表され、と表記する[1]。 そもそもノルムとは、 任意のベクトルがあるとき、下記の3つの性質を満たす関数のこと。 (三角不等式) マンハッタン距離 の時、つまりノルムはマンハッタン距離とも言われる。…

Kaze特徴量

Kazeは、非線形拡散フィルタを用いて算出する特徴量。SIFTやSURFなどのガウシアンフィルタ(線形拡散フィルタ)を使った特徴量は、物体のエッジ部分がぼやけてしまい、局所的な特徴がうまく取れないことがあった。それに対し、非線形拡散フィルタを使うKazeは…

一般物体認識と特定物体認識

一般物体認識とは、画像中に存在する物体について、「魚」などのカテゴリー名を特定する技術である。 Fig. 一般物体認識の認識結果例[2]それに対し特定物体認識とは、画像中から一意に特定できる物体を検出する技術である。例えば「あべのハルカス」などのラ…

ヒューリスティックアルゴリズム

ヒューリスティックアルゴリズムと聞くことがあるが、何を意味するのかずっとわからないままだった。そのため今回ヒューリスティックアルゴリズムが何を指すのか調べて見た。その結果、 ヒューリスティック:経験則から導いた戦略・方式 アルゴリズム :ソフ…

フィッシャーの情報量(情報行列)

(シャノンの)情報量 情報量といった場合、シャノンの情報量を指すことが多い。そもそも情報量とは、ある事象が起こった時、その事象の発生がどれだけ珍しいかを表す量である。事情が珍しい程、値は大きくなる。実生活においても、珍しい出来事が起こった場…

Structure from Motion(SfM)

direct SLAMとも言う。

Probabilistic Robotics - Chap.10 Simultaneous Localization and Mapping

10.1 Introduction SLAM問題は、環境地図へのアクセスが出来ない且つ自分の位置もわからない時に発生する ただしこの時、全ての観測ベクトルと制御ベクトルは既知とする。SLAM問題にはオンラインSLAMとフルSLAMの2種類ある。 オンラインSLAM:ロボットのある…

論文紹介:Information-based Active SLAM via Topological Feature Graphs

どんなもの Topological Feature Graph(TFG)を使ったActive SLAMの提案。占有格子地図(Occupancy Grid Map)に比べ、地図のスケールの精度や長時間実行時のドリフトが少ない。 先行研究と比べてどこがすごい? 特徴量ベースなトポロジカルマップでActive SLAM…

Probabilistic Robotics - Chap.9 Occupancy Grid Mapping

9.1 Introduction 今まではロボットが動作を開始する前に、環境地図が既知であることを仮定していた。ただこれは現実世界では稀なケースである。そこでロボットが自律的に環境地図を知る必要がある。ただし、環境地図の獲得には、下記2つの理由から困難な課…

Probabilistic Robotics - Chap.6 Robot Perception

1.Introduction 6章に記載されているのはEnvironment Measurement Model(環境計測モデル) 確率ロボティクスではセンサデータの計測に伴うノイズもモデル化する確率ロボティクスでは、センサモデルの不正確さに対し、統計的手法を用いて対応する この式は…

Probabilistic Robotics - Chap.7 Mobile Robot Localization: Markov and Gaussian

7 移動ロボットのローカライゼーションとは、環境地図中でロボットの座標を決める問題である 一方で、座標変換の問題とも捉えることができる ローカライゼーションとは、地図座標系とロボットのローカル座標系のマッチングをとるプロセスである ただし残念な…

Probabilistic Robotics - Chap.8 Mobile Robot Localization: Grid And Monte Carlo

8.1 Introduction 8章では下記2つのローカライゼーションアルゴリズムについて述べる。 グリッドローカライゼーション beliefの計算にヒストグラムフィルタを使う。グリッドローカライゼーションは、グリッドを細かくすると、計算負荷が高くなり処理が遅く…