strasdat / ScaViSLAM

This is a general and scalable framework for visual SLAM. It employs "Double Window Optimization" (DWO).
GNU Lesser General Public License v3.0
334 stars 132 forks source link

a camera projection issue #17

Closed pinglin closed 12 years ago

pinglin commented 12 years ago

Hi Hauke,

In the function cameraProject(..) you use a genuine intrinsic matrix for projecting points from camera coord. to image coord directly. I think the projection should take OpenGL's projection pipeline into account, which for the rest you probably missed is the NCC to viewport coord. transform, since you are using a dense tracking that exploits all rendered pixels.

The projection function can be found in Pangolin: ProjectionMatrixRUB_BottomLeft(...)

Perhaps this is the bug that the tracking does not work for the phantom video? Or am I misunderstanding something here?

Pinglin

strasdat commented 12 years ago

Hi Pinglin, sorry for the late response. I am not sure I understand. Are you talking about the 0.5 pixel offset? I thought I took care off it. Unfortunately, I won't be able to have a look before January 6. Happy holidays, Hauke

strasdat commented 12 years ago

Answer: ScaViSLAM is using a different coordinate system from OpenGL. It is using X=left, Y=down, Z=forward, which is right-handed too. Thus, eveything should be fine!