0
我正在使用Vuforia通過相機識別目標。定義目標是在另一個目標
我有標記:小目標和更大的目標。 我需要定義較小的目標放置在較大的目標內。
我已經可以及時看到兩個標記。我可以得到4x4的目標矩陣。 其中一個想法是將4x4到z0x平面的投影映射到兩個目標,而不是定義一個投影矩陣是否包含第二個投影矩陣(但我不知道該怎麼做)
有些代碼怎麼我得到矩陣
- (void) renderFrameWithState:(const Vuforia::State&)state projectMatrix:(Vuforia::Matrix44F&)projectionMatrix {
//some opengl initializations
for (int i = 0; i < state.getNumTrackableResults(); ++i) {
// Get the trackable
const Vuforia::TrackableResult* result = state.getTrackableResult(i);
const Vuforia::Trackable& trackable = result->getTrackable();
Vuforia::Matrix44F modelViewMatrix = Vuforia::Tool::convertPose2GLMatrix(result->getPose()); //getPose() returns 3x4 matrix
}
}
因此,我應該爲每個目標使用state.getTrackableResult(i),convertPose2GLMatrix(result-> getPose())來獲得4x4矩陣,並使用4x4矩陣進行上述所有計算?據我瞭解,它不考慮飛機,如果較小的目標將在第二個10釐米以上,它可能會說我的小一個是在第二個裏面,這是正確的嗎? – DenFav
我不認爲這是正確的。但是,您可以使用我爲您提供的投影矩陣方法。無論如何,我認爲你應該嘗試其中一種方法或兩種方法 - 應該很容易。如果有幫助,請參閱以下對其矩陣的一些解釋:http://stackoverflow.com/questions/29061257/get-pure-view-matrix-in-vuforia – yakobom
您能否給出4x4矩陣描述的鏈接。我找不到它,我想確保12和13是一箇中心,也想知道其他值以便以某種方式使用(可能有用) – DenFav