setCameraParameters, principal point off center

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

setCameraParameters, principal point off center

MoosHueting
Hi,

The function setCameraParameters taking intrinsic and extrinsic parameters make an assumption (which I must say is a bit poorly documented): it assumes that the principal point of the camera is in the center of its image. It's documented in the form of a comment in pcl_visualizer:cpp (1835):

'  // Get the width and height of the image - assume the calibrated centers are at the center of the image '

The only thing the principal point parameters are used by pcl is for setting the width and height to exactly twice these coordinates - again, something that is not true for all cameras.

Is this functionality supported in some other way? I'm working with the Kinect, and its RGB camera is quite low quality, which among other things manifests itself by having an off-center principal point.
This makes it currently impossible to view the pointcloud in PCL as if I was looking through the RGB cam.

Thanks in advance for your time.

--
Moos Hueting, PhD Student @ University College London
E: [hidden email]
T: +44 (0)74 36842474

_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: setCameraParameters, principal point off center

Radu B. Rusu
Administrator
Moos,

That sounds like an oversight and/or a bug. It would be great to try to get that into a GitHub pull request, so that we can change it for future PCL versions.

Thanks,
Radu.

On Jan 24, 2014, at 5:41 AM, Moos Hueting <[hidden email]> wrote:

> Hi,
>
> The function setCameraParameters taking intrinsic and extrinsic parameters make an assumption (which I must say is a bit poorly documented): it assumes that the principal point of the camera is in the center of its image. It's documented in the form of a comment in pcl_visualizer:cpp (1835):
>
> '  // Get the width and height of the image - assume the calibrated centers are at the center of the image '
>
> The only thing the principal point parameters are used by pcl is for setting the width and height to exactly twice these coordinates - again, something that is not true for all cameras.
>
> Is this functionality supported in some other way? I'm working with the Kinect, and its RGB camera is quite low quality, which among other things manifests itself by having an off-center principal point.
> This makes it currently impossible to view the pointcloud in PCL as if I was looking through the RGB cam.
>
> Thanks in advance for your time.
>
> --
> Moos Hueting, PhD Student @ University College London
> E: [hidden email]
> T: +44 (0)74 36842474
> _______________________________________________
> [hidden email] / http://pointclouds.org
> http://pointclouds.org/mailman/listinfo/pcl-users

_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users