Public Member Functions | |
void | backWarpPoints (const std::vector< boost::shared_ptr< opentl::core::State > > &states, const ObjModelPtrVector &objModels, std::vector< math::Vector2 * > &screenPoints, std::vector< math::Vector4 * > &objPoints, std::vector< math::Vector4 * > &objNormals, std::vector< int > &outputTargetIndex, std::vector< int > &outputLinkIndex, int cameraIdx=0, int nPoints=-1) |
BACK-PROJECTION = get back 3D object coordinates, based on window coordinates and depth values. | |
opentl::cvprocess::GlFbo * | getFbo () |
Return FBO handle. | |
opentl::modelprojection::GLScene & | getGLScene () const |
void | initBackProjBuffers (int cameraIdx) |
Initialize frame buffer objects, textures, and shaders for back projection. | |
WarpBack (std::vector< input::ImageSensor * > &sensors, opentl::modelprojection::GLScene &scene) | |
Constructor, link the WarpBack to the respective object/sensor pair. | |
virtual | ~WarpBack () |
Destructor. |
opentl::modelprojection::WarpBack::WarpBack | ( | std::vector< input::ImageSensor * > & | sensors, | |
opentl::modelprojection::GLScene & | scene | |||
) |
virtual opentl::modelprojection::WarpBack::~WarpBack | ( | ) | [virtual] |
Destructor.
void opentl::modelprojection::WarpBack::backWarpPoints | ( | const std::vector< boost::shared_ptr< opentl::core::State > > & | states, | |
const ObjModelPtrVector & | objModels, | |||
std::vector< math::Vector2 * > & | screenPoints, | |||
std::vector< math::Vector4 * > & | objPoints, | |||
std::vector< math::Vector4 * > & | objNormals, | |||
std::vector< int > & | outputTargetIndex, | |||
std::vector< int > & | outputLinkIndex, | |||
int | cameraIdx = 0 , |
|||
int | nPoints = -1 | |||
) |
BACK-PROJECTION = get back 3D object coordinates, based on window coordinates and depth values.
states | Input states | |
objModels | Input object models for each state | |
screenPoints | Input vector of 2D screen coordinates | |
objPoints | Output vector of 3D object coordinates | |
objNormals | Output vector of 3D object coordinates for the object normals | |
outputTargetIndex | Input = expected target index for each point (-1 if "no expectations") Output = vector of found target indices, for each point (-1, if no target has been found there, or if the index differs from the expectation) | |
outputLinkIndex | Output vector of linkId for each point (-1 if no object has been found for this pixel) | |
cameraIdx | Input camera index | |
nPoints | Actual number of processed points (-1 = all of them) Pre-allocated: GLubyte *buffer = full color buffer (unsigned char), obtained from glReadPixels Pre-allocated: GLfloat *depthbuf = full depth buffer (float), obtained from glReadPixels Pre-allocated: std::vector<double *> modelViewMatrices = modelview matrices (for each link) |
opentl::cvprocess::GlFbo* opentl::modelprojection::WarpBack::getFbo | ( | ) | [inline] |
Return FBO handle.
opentl::modelprojection::GLScene& opentl::modelprojection::WarpBack::getGLScene | ( | ) | const [inline] |
void opentl::modelprojection::WarpBack::initBackProjBuffers | ( | int | cameraIdx | ) |
Initialize frame buffer objects, textures, and shaders for back projection.