• 3D to 2D Projection for the OAK-pro Wide Camera

I need to project my 3D points (in Spatials) back to 2D using the OAK-pro Wide intrinsic parameters and I used this formular in doing so:

xin_2d = (xin_3d * focallength / z_in3d) + principalaxis (x)

yin_2d = (yin_3d * focallength / z_in_3d) + principal_axis (y),

where principalaxis (x) and principalaxis (y) are the image center along x and y respectively.

However, the 2D points obtained are not the same as the previous 2D points before projecting to 3D (Spatials). I mean I previously have 2D points and I used these 2D points to estimate the depth for each of this point to obtain them in 3D (Spatials). Now, I want to project these 3D points back to 2D to obtain the same previous 2D points. But when I used the projection formular stated above, the 2D results were not the same as the previous. Can anyone help me with this? Is this conversion formular wrong? What am I missing? Or is there an inbuilt function of the camera that can do this for me?

I look forward to your help! Thanks.

    Hi Mubarak
    Have you tried using the cv2.projectPoints function? It should do exactly what you need.

    Thanks,
    Jaka