Main Page   Modules   Compound List   File List   Compound Members   File Members  

cameraf.h File Reference

#include <stdio.h>
#include <gandalf/common/misc_defs.h>
#include <gandalf/vision/camera_defs.h>
#include <gandalf/linalg/3x3matrixf.h>
#include <gandalf/linalg/3vectorf.h>

Go to the source code of this file.

Compounds

struct  Gan_Camera_f
 Structure containing camera parameters in single precision. More...


Typedefs

typedef Gan_Camera_f Gan_Camera_f
 Structure containing camera parameters in single precision.


Functions

Gan_Bool gan_cameraf_build_va (Gan_Camera_f *camera, Gan_CameraType type, float zh, float fx, float fy, float x0, float y0,...)
 Constructs a structure representing a camera.

Gan_Bool gan_cameraf_internalize (Gan_Camera_f *camera)
 Builds the internals of a camera.

Gan_Bool gan_cameraf_set_gamma (Gan_Camera_f *camera, float gamma)
 Sets the gamma for images taken with this camera.

Gan_SquMatrix33_f gan_cameraf_fill_matrix_s (Gan_Camera_f *camera)
 Fills and returns a 3x3 upper triangular camera matrix.

Gan_Bool gan_cameraf_project_point_gen (Gan_Camera_f *camera, Gan_Vector3_f *X, Gan_Vector3_f *p, Gan_Matrix22_f *HX, Gan_Camera_f HC[2], int *error_code)
 Macro: Projects a point from the scene onto the image.

Gan_Bool gan_cameraf_project_point (Gan_Camera_f *camera, Gan_Vector3_f *X, Gan_Vector3_f *p, int *error_code)
 Macro: Projects a point from the scene onto the image.

Gan_Bool gan_cameraf_project_point_q (Gan_Camera_f *camera, Gan_Vector3_f *X, Gan_Vector3_f *p)
 Macro: Projects a point from the scene onto the image.

Gan_Bool gan_cameraf_project_point_i (Gan_Camera_f *camera, Gan_Vector3_f *X)
 Macro: Projects a point from the scene onto the image.

Gan_Bool gan_cameraf_backproject_point (Gan_Camera_f *camera, Gan_Vector3_f *p, Gan_Vector3_f *X, int *error_code)
 Macro: Back-projects an image point into the scene.

Gan_Bool gan_cameraf_backproject_point_q (Gan_Camera_f *camera, Gan_Vector3_f *p, Gan_Vector3_f *X)
 Macro: Back-projects an image point into the scene.

Gan_Bool gan_cameraf_backproject_point_i (Gan_Camera_f *camera, Gan_Vector3_f *p)
 Macro: Back-projects an image point into the scene.

Gan_Bool gan_cameraf_add_distortion (Gan_Camera_f *camera, Gan_Vector3_f *pu, Gan_Vector3_f *p, int *error_code)
 Macro: Applies non-linear distortion to an image point.

Gan_Bool gan_cameraf_add_distortion_q (Gan_Camera_f *camera, Gan_Vector3_f *pu, Gan_Vector3_f *p)
 Macro: Applies non-linear distortion to an image point.

Gan_Bool gan_cameraf_add_distortion_i (Gan_Camera_f *camera, Gan_Vector3_f *p)
 Macro: Applies non-linear distortion to an image point.

Gan_Bool gan_cameraf_remove_distortion (Gan_Camera_f *camera, Gan_Vector3_f *p, Gan_Vector3_f *pu, int *error_code)
 Macro: Removes non-linear distortion from an image point.

Gan_Bool gan_cameraf_remove_distortion_q (Gan_Camera_f *camera, Gan_Vector3_f *p, Gan_Vector3_f *pu)
 Macro: Removes non-linear distortion from an image point.

Gan_Bool gan_cameraf_remove_distortion_i (Gan_Camera_f *camera, Gan_Vector3_f *p)
 Macro: Removes non-linear distortion from an image point.

Gan_Bool gan_cameraf_project_line_q (Gan_Camera_f *camera, Gan_Vector3_f *L, Gan_Vector3_f *l)
 Macro: Projects a line from the scene onto the image.

Gan_Bool gan_cameraf_project_line_i (Gan_Camera_f *camera, Gan_Vector3_f *L)
 Macro: Projects a line from the scene onto the image.

Gan_Bool gan_cameraf_backproject_line_q (Gan_Camera_f *camera, Gan_Vector3_f *l, Gan_Vector3_f *L)
 Macro: Back-projects an image line into the scene.

Gan_Bool gan_cameraf_backproject_line_i (Gan_Camera_f *camera, Gan_Vector3_f *l)
 Macro: Back-projects an image line into the scene.


Detailed Description

Module: Camera definitions and building functions

Part of: Gandalf Library

Revision: Last edited: Author:

Copyright: (c) 2000 Imagineer Software Limited


Function Documentation

Gan_Bool gan_cameraf_build_va Gan_Camera_f   camera,
Gan_CameraType    type,
float    zh,
float    fx,
float    fy,
float    x0,
float    y0,
...   
 

Constructs a structure representing a camera.

Parameters:
camera Pointer to the camera structure to be filled
type Type of camera e.g. GAN_LINEAR_CAMERA
zh Third homogeneous image coordinate
fx Focal distance measured in x-pixels
fy Focal distance measured in y-pixels
x0 x-coordinate of image centre
y0 y-coordinate of image centre
... Extra arguments depending on camera type
Returns:
GAN_TRUE on successfully building camera structure, GAN_FALSE on failure.
Constructs a structure representing a camera.

See also:
gan_camera_build_va().

Gan_SquMatrix33_f gan_cameraf_fill_matrix_s Gan_Camera_f   camera
 

Fills and returns a 3x3 upper triangular camera matrix.

Parameters:
camera Pointer to the camera structure to be read
Fills and returns a 3x3 upper triangular camera matrix using the linear parameters of the provided camera. Gandalf only stores lower triangular matrices explicitly, so the transpose camera matrix is actually returned.

Single precision version of gan_camera_fill_matrix_q().

Returns:
The filled 3x3 upper triangular matrix.

Gan_Bool gan_cameraf_internalize Gan_Camera_f   camera
 

Builds the internals of a camera.

Parameters:
camera Pointer to the camera structure to be filled
Returns:
GAN_TRUE on successfully internalising camera structure, GAN_FALSE on failure.
Builds the internal thresholds and callbacks of a camera given that the type and parameters have already been set.

See also:
gan_camera_internalize().

Gan_Bool gan_cameraf_set_gamma Gan_Camera_f   camera,
float    gamma
 

Sets the gamma for images taken with this camera.

Parameters:
camera Pointer to the camera structure
gamma The new gamma value
Sets the gamma for images taken with this camera. The default value is one, set when the camera structure was built. This is the single precision version of the function.

Returns:
GAN_TRUE on successfully setting the gamma, GAN_FALSE on failure.


Generated on Mon Oct 13 16:14:40 2003 by doxygen1.3-rc1