#include <cameraIntrinsics.h>
Public Member Functions | |
| CameraIntrinsics () | |
| The default constructor currently does nothing. | |
| virtual | ~CameraIntrinsics () |
| The destructor currently does nothing. | |
| virtual dlr::numeric::Vector2D | project (const dlr::numeric::Vector3D &point) const =0 |
| This function should be overridden by derived classes so that it takes points in 3D camera coordinates and projects them into image pixel coordinates. | |
| virtual geometry::Ray3D | reverseProject (const dlr::numeric::Index2D &pixelPosition, bool normalize=true) const |
| This function returns a ray in 3D camera coordinates starting at the camera focus, and passing through the center of the specified pixel. | |
| virtual geometry::Ray3D | reverseProject (const dlr::numeric::Vector2D &pixelPosition, bool normalize=true) const =0 |
| This function should be overridden by derived classes to return a ray in 3D camera coordinates starting at the camera focus and passing through the specified pixel position. | |
There are two coordinate systems referenced in the documentation for this class:
The "camera coordinate system" has its origin at the camera focus, its Z axis pointing in the direction of camera gaze, its X axis pointing to the right (from the camera's perspective), and its Y axis pointing down. The upper left corner of the image has pixel coordinate (0, 0). The center of the upper left pixel of the image has pixel coordinate (0.5, 0.5). The upper left corner of the next-to-leftmost pixel in the top row is at pixel coordinate (1, 0).
Definition at line 43 of file cameraIntrinsics.h.
| dlr::computerVision::CameraIntrinsics::CameraIntrinsics | ( | ) | [inline] |
| virtual dlr::computerVision::CameraIntrinsics::~CameraIntrinsics | ( | ) | [inline, virtual] |
| virtual dlr::numeric::Vector2D dlr::computerVision::CameraIntrinsics::project | ( | const dlr::numeric::Vector3D & | point | ) | const [pure virtual] |
This function should be overridden by derived classes so that it takes points in 3D camera coordinates and projects them into image pixel coordinates.
| point | This argument is the 3D point to be projected. |
Implemented in dlr::computerVision::CameraIntrinsicsPinhole, and dlr::computerVision::CameraIntrinsicsPlumbBob.
| virtual geometry::Ray3D dlr::computerVision::CameraIntrinsics::reverseProject | ( | const dlr::numeric::Vector2D & | pixelPosition, | |
| bool | normalize = true | |||
| ) | const [pure virtual] |
This function should be overridden by derived classes to return a ray in 3D camera coordinates starting at the camera focus and passing through the specified pixel position.
| pixelPosition | This argument is the point in pixel coordinates through which the returned ray should pass. | |
| normalize | This argument indicates whether the ray should be normalized to unit length before being returned. |
Implemented in dlr::computerVision::CameraIntrinsicsPinhole, and dlr::computerVision::CameraIntrinsicsPlumbBob.
| dlr::geometry::Ray3D dlr::computerVision::CameraIntrinsics::reverseProject | ( | const dlr::numeric::Index2D & | pixelPosition, | |
| bool | normalize = true | |||
| ) | const [inline, virtual] |
This function returns a ray in 3D camera coordinates starting at the camera focus, and passing through the center of the specified pixel.
| pixelPosition | This argument is the pixel through which the ray should pass. | |
| normalize | This argument indicates whether the ray should be normalized to unit length before being returned. |
Definition at line 131 of file cameraIntrinsics.h.
1.5.8