画像処理

Bundlerのアルゴリズムを追ってみる 特徴点マッチング編 その1

Structure from Motion(SfM)のオープンソース、Bundlerのアルゴリズムを追ってみます。 今回は、特徴点マッチングと、特徴点空間上の距離を使った誤対応の除去について解説してみます。 特徴点マッチング Bu...
開発環境

Bash on Windows + cmderで快適なCUI環境の構築

Windows 10でBash on Windows(BoW)が導入されてから、なんだかんだでターミナル上で開発することが増えてきました。 なので、自分流快適なCUIの開発環境構築をメモします。 今回は、cmderというWindow...
画像処理

Bundlerのアルゴリズムを追ってみる 概要編

Structure from Motionで多分一番有名なOSSである、Bundlerの処理を追ってみます。 何回かに記事を分けて解説していくつもりなので、途中で力尽きたらごめんなさい。。。 Bundlerの公式サイトはこちらです。...
画像処理

バンドル調整とは

SfMとかSLAMの3D系の研究を始めると、必ず出てくるのがバンドル調整(Bundle Adjustment)です。ぶっちゃけただの非線形の最小二乗法なんですけど、今回はこのバンドル調整について解説します。 バンドル調整とはずばり ...
画像処理

透視投影変換を展開してみる

以前、透視投影変換について解説しました。 変換式はこんなのでしたよね。 で、この式の\(s\)って邪魔じゃないですか? こいつがあるせいで、上の式の右辺を計算した後、最後に\(s\)で割るっていう、2段階手順が必要...
画像処理

透視投影変換の意味を解説してみる

3次元系の画像処理の勉強では、透視投影カメラモデルの理解は必須です。 そんなわけで今回は透視投影カメラモデルについて解説してみたいと思います。 (といっても、過去の記事でほぼ解説してしまった気がするので、この記事は簡単にまとめたものなり...
画像処理

内部パラメータの単位の話 ~pixelとmmの変換~

さて、今回は内部パラメータの単位について解説してみたいと思います。 皆さんご存知の通り、透視投影変換は 世界座標 ↓ カメラ座標 ↓ 画像座標 の順で、世界座標を画像座標に変換していて、現実世界の3次元物体が画像上...
画像処理

カメラ内部パラメータとは

前回は外部パラメータの意味を解説しました。 なので今回は、外部パラメータと双璧をなす?内部パラメータの意味を解説してみたいと思います。 内部パラメータとは、一言でいうと 「カメラ座標を画像座標へ変換する行列」のことです。 式...
画像処理

カメラ外部パラメータとは

外部パラメータとはなんぞや?という話ですが、一言でいうと 「世界座標をカメラ座標に変換する行列」のことです。 式で表すとこうですね。   待て待て、それだけ言われてもわからない。 という人の為に、もう少し詳しく解説してみた...