0
我在世界座標系中有一個輸入3D矢量點。任何人都可以描述或提供一個資源鏈接,這將幫助我理解並實現所需的轉換和矩陣映射以轉換爲相機座標? 圖片此http://www.mathworks.in/help/matlab/visualize/chview3.gif 我知道視點座標世界這個圖像中的座標,並轉換成攝像頭座標如何將3d世界座標轉換爲3d相機座標
我在世界座標系中有一個輸入3D矢量點。任何人都可以描述或提供一個資源鏈接,這將幫助我理解並實現所需的轉換和矩陣映射以轉換爲相機座標? 圖片此http://www.mathworks.in/help/matlab/visualize/chview3.gif 我知道視點座標世界這個圖像中的座標,並轉換成攝像頭座標如何將3d世界座標轉換爲3d相機座標
你必須應用兩種數學運算:通過視圖的座標
例子( '|' 只是表示向量括號)
|x'| |x| - |x_vp|
|y'| = |y| - |y_vp|
|z'| |z| - |z_vp|
Z::
|x''| | cos a -sin a 0 | |x'|
|y''| = | sin a cos a 0 | * |y'|
|z''| | 0 0 1 | |z'|
Y:首先圍繞Z,則此Y.通過兩個旋轉矩陣進行
|x'''| | cos b 0 -sin b | |x''|
|y'''| = | 0 1 0 | * |y''|
|z'''| | sin b 0 cos b | |z''|
例如,如果你的VP是在(1, 1,1),您首先將其移位,以便舊的原點現在位於(-1,-1,-1)處。照相機仍然朝着正x方向看,因此您將圍繞z軸旋轉225度(現在在舊的z軸上觀察),然後繞y軸旋轉45度,直接觀察舊的原點。
但是,您不會旋轉相機,而是旋轉相機周圍的整個空間,因此您必須將角度乘以-1。
您可以在http://en.wikipedia.org/wiki/Rotation_matrix
找到更多的相關信息。如果你不知道矩陣乘法,第一章有顯示它。
如果我們想從視點原點知道曲面座標(世界),如何轉換..?插圖http://bigladdersoftware.com/epx/docs/8-0/engineering-reference/media/image568.jpeg – user2177232 2014-10-20 07:57:35
表面被定義爲bz點,例如,角落。只需轉換點。即使根據數學平面,它們也可以用矢量來表示。只需轉換它們。 – sweber 2014-10-20 08:10:22