2012-07-23 48 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