Open3D (C++ API)  0.19.0
Loading...
Searching...
No Matches
open3d::t::geometry::kernel::TransformIndexer Class Reference

Helper class for converting coordinates/indices between 3D/3D, 3D/2D, 2D/3D. More...

#include <GeometryIndexer.h>

Public Member Functions

 TransformIndexer (const core::Tensor &intrinsics, const core::Tensor &extrinsics, float scale=1.0f)
OPEN3D_HOST_DEVICE void RigidTransform (float x_in, float y_in, float z_in, float *x_out, float *y_out, float *z_out) const
 Transform a 3D coordinate in camera coordinate to world coordinate.
OPEN3D_HOST_DEVICE void Rotate (float x_in, float y_in, float z_in, float *x_out, float *y_out, float *z_out) const
 Transform a 3D coordinate in camera coordinate to world coordinate.
OPEN3D_HOST_DEVICE void Project (float x_in, float y_in, float z_in, float *u_out, float *v_out) const
 Project a 3D coordinate in camera coordinate to a 2D uv coordinate.
OPEN3D_HOST_DEVICE void Unproject (float u_in, float v_in, float d_in, float *x_out, float *y_out, float *z_out) const
 Unproject a 2D uv coordinate with depth to 3D in camera coordinate.
OPEN3D_HOST_DEVICE void GetFocalLength (float *fx, float *fy) const
OPEN3D_HOST_DEVICE void GetCameraPosition (float *x, float *y, float *z) const

Detailed Description

Helper class for converting coordinates/indices between 3D/3D, 3D/2D, 2D/3D.

Constructor & Destructor Documentation

◆ TransformIndexer()

open3d::t::geometry::kernel::TransformIndexer::TransformIndexer ( const core::Tensor & intrinsics,
const core::Tensor & extrinsics,
float scale = 1.0f )
inline

intrinsic: simple pinhole camera matrix, stored in fx, fy, cx, cy extrinsic: world to camera transform, stored in a 3x4 matrix

Member Function Documentation

◆ GetCameraPosition()

OPEN3D_HOST_DEVICE void open3d::t::geometry::kernel::TransformIndexer::GetCameraPosition ( float * x,
float * y,
float * z ) const
inline

◆ GetFocalLength()

OPEN3D_HOST_DEVICE void open3d::t::geometry::kernel::TransformIndexer::GetFocalLength ( float * fx,
float * fy ) const
inline

◆ Project()

OPEN3D_HOST_DEVICE void open3d::t::geometry::kernel::TransformIndexer::Project ( float x_in,
float y_in,
float z_in,
float * u_out,
float * v_out ) const
inline

Project a 3D coordinate in camera coordinate to a 2D uv coordinate.

◆ RigidTransform()

OPEN3D_HOST_DEVICE void open3d::t::geometry::kernel::TransformIndexer::RigidTransform ( float x_in,
float y_in,
float z_in,
float * x_out,
float * y_out,
float * z_out ) const
inline

Transform a 3D coordinate in camera coordinate to world coordinate.

◆ Rotate()

OPEN3D_HOST_DEVICE void open3d::t::geometry::kernel::TransformIndexer::Rotate ( float x_in,
float y_in,
float z_in,
float * x_out,
float * y_out,
float * z_out ) const
inline

Transform a 3D coordinate in camera coordinate to world coordinate.

◆ Unproject()

OPEN3D_HOST_DEVICE void open3d::t::geometry::kernel::TransformIndexer::Unproject ( float u_in,
float v_in,
float d_in,
float * x_out,
float * y_out,
float * z_out ) const
inline

Unproject a 2D uv coordinate with depth to 3D in camera coordinate.


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