2012-07-23 41 views
0

基於Opencv跟蹤我試圖覆蓋openGL中的對象,但我看到OpenCV在像素值上工作,OpenGL在OpenGL上工作。OpenCV和OpenGL規模

我現在的窗口大小爲320 x 240.
我知道我必須定義一些東西,以便在跟蹤和疊加之間實現同步。當我在OpenGL函數glTranslatef (positionx, positiony, positionz);僅通過1個像素(即1 OpenGL的單位)我得到的覆蓋對象巨大差異......

改變positiony我認爲這個問題是與opencv的同步和OpenGL規模。 ...

+0

這個問題有什麼問題!!!! – Wazzzy 2012-07-23 07:27:15

+1

爲什麼投票沒有任何理由..... – Wazzzy 2012-07-23 07:54:48

+0

不知道,對我來說似乎沒問題 - 但我試圖回答你的問題。如果不清楚,請告訴我。 – Ani 2012-07-23 13:17:40

回答

1

您需要使用屏幕對齊的正投影映射OpenGL單元1:1與屏幕像素。

glViewport(0,0,320,240); 
    glMatrixMode(GL_PROJECTION); 
    glLoadIdentity(); 
    glOrtho(0,320,0,240,0,1); 
    glMatrixMode(GL_MODELVIEW); 
    glLoadIdentity(); 

希望這有助於!

+0

它的行爲與以前一樣......如果你能幫我解決一些教程代碼,我會非常感激...... – Wazzzy 2012-07-24 05:52:33