supereight
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
se::PinholeCamera Class Reference

#include <pinhole_camera.hpp>

Inheritance diagram for se::PinholeCamera:
se::SensorBase< PinholeCamera >

Public Member Functions

 PinholeCamera (const PinholeCameraConfig &config)
 
 PinholeCamera (const PinholeCameraConfig &config, const float downsampling_factor)
 
 PinholeCamera (const PinholeCamera &pinhole_camera, const float downsampling_factor)
 
int computeIntegrationScaleImpl (const Eigen::Vector3f &block_centre, const float map_res, const int last_scale, const int min_scale, const int max_block_scale) const
 
float nearDistImpl (const Eigen::Vector3f &ray_S) const
 
float farDistImpl (const Eigen::Vector3f &ray_S) const
 
float measurementFromPointImpl (const Eigen::Vector3f &point_S) const
 
bool pointInFrustumImpl (const Eigen::Vector3f &point_S) const
 
bool pointInFrustumInfImpl (const Eigen::Vector3f &point_S) const
 
bool sphereInFrustumImpl (const Eigen::Vector3f &centre_S, const float radius) const
 
bool sphereInFrustumInfImpl (const Eigen::Vector3f &centre_S, const float radius) const
 
void computeFrustumVertices ()
 
void computeFrustumNormals ()
 
- Public Member Functions inherited from se::SensorBase< PinholeCamera >
 SensorBase (const ConfigT &c)
 
 SensorBase (const PinholeCamera &d)
 
bool projectToPixelValue (const Eigen::Vector3f &point_S, const se::Image< float > &img, float &img_value, ValidPredicate valid_predicate) const
 Project a point in sensor frame to its image value. More...
 
bool getPixelValue (const Eigen::Vector2f &pixel_f, const se::Image< float > &img, float &img_value, ValidPredicate valid_predicate) const
 Get the image value for a given pixel coordindate. More...
 
int computeIntegrationScale (const Eigen::Vector3f &block_centre_S, const float map_res, const int last_scale, const int min_scale, const int max_block_scale) const
 Computes the scale corresponding to the back-projected pixel size in voxel space. More...
 
float nearDist (const Eigen::Vector3f &ray_S) const
 Return the minimum distance at which measurements are available along the ray passing through pixels x and y. More...
 
float farDist (const Eigen::Vector3f &ray_S) const
 Return the maximum distance at which measurements are available along the ray passing through pixels x and y. More...
 
float measurementFromPoint (const Eigen::Vector3f &point_S) const
 Convert a point in the sensor frame into a depth measurement. More...
 
bool pointInFrustum (const Eigen::Vector3f &point_S) const
 Test whether a 3D point in sensor coordinates is inside the sensor frustum. More...
 
bool pointInFrustumInf (const Eigen::Vector3f &point_S) const
 Test whether a 3D point in sensor coordinates is inside the sensor frustum. More...
 
bool sphereInFrustum (const Eigen::Vector3f &centre_S, const float radius) const
 Test whether a sphere in sensor coordinates is at least partially inside the sensor frustum. More...
 
bool sphereInFrustumInf (const Eigen::Vector3f &centre_S, const float radius) const
 Test whether a sphere in sensor coordinates is at least partially inside the sensor frustum. More...
 

Static Public Member Functions

static std::string typeImpl ()
 
- Static Public Member Functions inherited from se::SensorBase< PinholeCamera >
static std::string type ()
 Return the sensor type as a string. More...
 

Public Attributes

srl::projection::PinholeCamera< srl::projection::NoDistortion > model
 
float scaled_pixel
 
float horizontal_fov
 The horizontal field of view in radians. More...
 
float vertical_fov
 The vertical field of view in radians. More...
 
Eigen::Matrix< float, 3, num_frustum_vertices_frustum_vertices_
 
Eigen::Matrix< float, 4, num_frustum_normals_frustum_normals_
 
- Public Attributes inherited from se::SensorBase< PinholeCamera >
bool left_hand_frame
 
float near_plane
 
float far_plane
 
Eigen::Matrix4f T_BS
 

Static Public Attributes

static constexpr int num_frustum_vertices_ = 8
 
static constexpr int num_frustum_normals_ = 6
 

Constructor & Destructor Documentation

◆ PinholeCamera() [1/3]

se::PinholeCamera::PinholeCamera ( const PinholeCameraConfig config)

◆ PinholeCamera() [2/3]

se::PinholeCamera::PinholeCamera ( const PinholeCameraConfig config,
const float  downsampling_factor 
)

◆ PinholeCamera() [3/3]

se::PinholeCamera::PinholeCamera ( const PinholeCamera pinhole_camera,
const float  downsampling_factor 
)

Member Function Documentation

◆ computeIntegrationScaleImpl()

int se::PinholeCamera::computeIntegrationScaleImpl ( const Eigen::Vector3f &  block_centre,
const float  map_res,
const int  last_scale,
const int  min_scale,
const int  max_block_scale 
) const

◆ nearDistImpl()

float se::PinholeCamera::nearDistImpl ( const Eigen::Vector3f &  ray_S) const

◆ farDistImpl()

float se::PinholeCamera::farDistImpl ( const Eigen::Vector3f &  ray_S) const

◆ measurementFromPointImpl()

float se::PinholeCamera::measurementFromPointImpl ( const Eigen::Vector3f &  point_S) const

◆ pointInFrustumImpl()

bool se::PinholeCamera::pointInFrustumImpl ( const Eigen::Vector3f &  point_S) const

◆ pointInFrustumInfImpl()

bool se::PinholeCamera::pointInFrustumInfImpl ( const Eigen::Vector3f &  point_S) const

◆ sphereInFrustumImpl()

bool se::PinholeCamera::sphereInFrustumImpl ( const Eigen::Vector3f &  centre_S,
const float  radius 
) const

◆ sphereInFrustumInfImpl()

bool se::PinholeCamera::sphereInFrustumInfImpl ( const Eigen::Vector3f &  centre_S,
const float  radius 
) const

◆ typeImpl()

static std::string se::PinholeCamera::typeImpl ( )
static

◆ computeFrustumVertices()

void se::PinholeCamera::computeFrustumVertices ( )

◆ computeFrustumNormals()

void se::PinholeCamera::computeFrustumNormals ( )

Member Data Documentation

◆ model

srl::projection::PinholeCamera<srl::projection::NoDistortion> se::PinholeCamera::model

◆ scaled_pixel

float se::PinholeCamera::scaled_pixel

◆ horizontal_fov

float se::PinholeCamera::horizontal_fov

The horizontal field of view in radians.

◆ vertical_fov

float se::PinholeCamera::vertical_fov

The vertical field of view in radians.

◆ num_frustum_vertices_

constexpr int se::PinholeCamera::num_frustum_vertices_ = 8
static

◆ num_frustum_normals_

constexpr int se::PinholeCamera::num_frustum_normals_ = 6
static

◆ frustum_vertices_

Eigen::Matrix<float, 3, num_frustum_vertices_> se::PinholeCamera::frustum_vertices_

◆ frustum_normals_

Eigen::Matrix<float, 4, num_frustum_normals_> se::PinholeCamera::frustum_normals_

The documentation for this class was generated from the following file: