カメラ座標系から世界座標系への変換 ~外部パラメータの逆変換~

外部パラメータは、世界座標系からカメラ座標系へ変換する行列でした。今回は、この外部パラメータの逆変換、すなわちカメラ座標系から世界座標系への変換を考えてみます。

世界座標系からカメラ座標系への変換

まずは復習ですが、外部パラメータを使って世界座標系からカメラ座標系へ変換はこのように行いました。

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

そして、この変換は同次座標系で表された変換でした。同次座標系を使わない場合の変換はこちらになります。

ちょっとこのままでは使いにくいので、回転行列を\(R\)、並進ベクトルを\(t\)とおきます。

この同次座標を使わない形を覚えておいてください。

カメラ座標系から世界座標系への変換

さて、ではいよいよ外部パラメータの逆変換を求めてみましょう。まずはカメラ座標系の原点を世界座標系原点と一致させるように移動させてやります。

式で表すとこうなります。

さらに、カメラ座標系の各座標軸を世界座標系と合うように回転させてやります。

つまり式で表すとこうですね。

これでカメラ座標点から世界座標点へ変換する式を導出できました。これで任意の3次元点をカメラ座標系から世界座標系へ変換することができますね。

個人的にはこの変換は、世界座標系でみたカメラ位置の導出によく使います。すなわち\([X_c, Y_c, Z_c]^T=[0, 0, 0]^T\)の場合です。

コメント