
ARや3Dについて最近勉強を始めたものです。
添付画像のような透視変換を使用して、2次元のデバイス(カメラ)座標系を3次元の論理座標系に変換しているみたいなのですが、
変換行列の(3,3)成分が1になっている理由がよくわからずに困っています。
乗算を行うと
Wi=gXi+hYi+1
となり、Wiがプラス方向に1平行移動することになりますが、これが目的なのでしょうか?
調べても4次元の同次座標を用いた変換の説明しかなく、是非ご教授いただきたいです。
英語の説明ならありますがあまり理解できませんでした…
http://alumni.media.mit.edu/~cwren/interpolator/

A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
これは平面から平面への写像でしょう。
カメラというより(光が飛ぶ向きを逆にして)プロジェクタだと思った方が、少しは分かり易いかと。点光源を原点とし、画角の中心と点光源を結ぶ直線をz軸とした3次元直交座標系おいて、z=1の平面上に2次元の像(スライド)がある。スライド上の像の中の1点の座標が(xi, yi)(zまで含めて考えると(xi, yi, 1))だというんでしょう。で、これを、ある勝手な所に置かれた平面状のスクリーンに投影する。ただし予め、スクリーン上に2次元の直交座標系(X,Y)を決めておく。
さて、スライド上の点(xi, yi)が投影されるスクリーン上での位置を(Xi, Yi)とする。言い換えれば、直線(xi w, yi w, w) (w>0)とスクリーンの平面との交点の座標をスクリーンに固定された座標系で測ったものが(Xi, Yi)です。
スクリーンの置き方には、回転と平行移動の自由度が6つあり、従って6個のパラメータを含む変換によって(Xi, Yi)が決まることになります。(xi,yi)から(Xi,Yi)への写像をフツーに素直に定式化すれば、
Xi = ξ(xi, yi, スクリーンの位置を表すパラメータ6個)
Yi = ζ(xi, yi, スクリーンの位置を表すパラメータ6個)
という格好になるでしょう。(頑張って、右辺の具体的な式を書き下してみると良いと思います。理解が深まるでしょうから。)
さてここで
ui = Xi wi
vi = Yi wi
とおくと、この写像はご質問にある8個のパラメータを含む行列の格好にまとめることができちゃいます。しかし本当の自由度は6つだけなので、これら8個のパラメータはもちろん互いに独立ではない。パラメータ相互の依存関係を表す式があと2つ存在します。でも、その関係式は敢えて書いてない。
これはどういうことかというと、「パラメータ間の依存関係が非線形のヤヤコシイ関数で表されるんで、そんなのは敢えて無視し、あたかも独立なパラメータが2個余計にある線形変換のような格好に、むりやり表した」ということです。つまり、(「変換行列の(3,3)成分が1になっている」どころのサワギじゃなくて)「本来6個しかないはずのパラメータが8個に増えている」ということにこそ、この行列表現のミソがあるんです。
で、問題は、「スライドの像は分かっている。それをスクリーンに投影した像も分かっている。このとき、スクリーンがどこにどう置かれているかを知りたい」ということ。スライドの多数の点について、その座標(xi, yi)と、スクリーン上での対応する像の座標(Xi, Yi)が(i=1,2,…N, N≧4)について分かっているときに、8個のパラメータの値を「それらしく」算出することが課題です。
(ただし、各点(xi, yi)が投影された像がスクリーン上の沢山の点のうちのどれなのか、を同定することができなくては、以下の議論は成立ちません。ここでは、たとえば「点 i=1,2,…がそれぞれ異なる色をしているんで、対応は簡単に分かる」ということにでもしておきましょう。)
本来の自由度は6だから、Nは3以上なら本来充分なんですが、パラメータ間の依存関係を使わなかったことの報いとして、データが余計に必要になるんですね。
また、「それらしく」というのは、線形最小二乗法の意味で最適に、ということ。だけど「非線形の関数で表されるパラメータ間の依存関係を敢えて無視して」いるために、その解は真の意味での最小二乗解にはならないんです。また、解の8個のパラメータが本来満たすべき依存関係も、正確に満たされる訳ではない。この事情を「それらしく」と言ってみた訳でして。
このように、本来は非線形最小二乗法で扱うべき問題を、ムリヤリ線形最小二乗法の形に焼き直して解く(その代わりに、真の意味での最小二乗解を得ることは諦めて「それらしく」で我慢する)というのは、実務上はちょいちょいやるテクニックなんです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
二次関数
-
右下の小さい数字について
-
座標(x,y)間(=2点)の...
-
「原点に返る」と「原点に戻る...
-
座標上の多角形面積を求める公...
-
なぜベクトルの外積の向きが右...
-
座標のS/I方向について
-
斜距離の算出公式はありますか?
-
円柱と球の共通部分の表面積
-
二次関数に内接する長方形の問...
-
重分積分の極座標変換について
-
大阪市立大 2003年数学の過去...
-
等角螺旋(らせん)の3次元的...
-
高校数学におけるパラメータや...
-
角度の起点
-
高校1年の数学なのですが 因数...
-
数学の解説をお願い致します‼︎
-
座標平面上の点(a,b)って問題で...
-
赤線の部分 y=a(x-p)(x-q) で...
-
複素数平面と座標平面の対応に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
座標(x,y)間(=2点)の...
-
右下の小さい数字について
-
「原点に返る」と「原点に戻る...
-
測量座標と算数座標の違い
-
三角関数 範囲が-πからπのとき...
-
重分積分の極座標変換について
-
距離と方向角から座標を求める...
-
なぜベクトルの外積の向きが右...
-
高校1年の数学なのですが 因数...
-
AB=2である2定点A、Bに対して...
-
【数学】 解説の下から4行目が...
-
等角螺旋(らせん)の3次元的...
-
2点からその延長線上にある点の...
-
距離、方位角から座標を求める方法
-
対数螺旋の方程式と書き方について
-
空間上の測定された点群から最...
-
3点との座標との距離によってあ...
-
エクセルでグラフの作り方 軌...
-
座標のS/I方向について
-
複数の点(x,y)を通る曲線を,指...
おすすめ情報