64 int64_t grid_count = 1000,
132 std::shared_ptr<core::Hashmap>
GetHashmap() {
return ctr_hashmap_; }
133 int64_t
Size() {
return ctr_hashmap_->Size(); }
140 int64_t anchor_idx_ = 0;
146 std::shared_ptr<core::Hashmap> ctr_hashmap_;
static const std::string kGrid8NbNormalInterpRatios
8 neighbor grid interpolation ratio for normal per point.
Definition: ControlGrid.h:57
static const std::string kGrid8NbIndices
Definition: ControlGrid.h:53
ControlGrid()=default
Default constructor.
void Touch(const geometry::PointCloud &pcd)
Allocate control grids in the shared camera space.
Definition: ControlGrid.cpp:64
core::Device GetDevice()
Definition: ControlGrid.h:135
int64_t GetAnchorIdx()
Definition: ControlGrid.h:136
void Compactify()
Definition: ControlGrid.cpp:102
std::shared_ptr< core::Hashmap > GetHashmap()
Definition: ControlGrid.h:132
The Image class stores image with customizable rows, cols, channels, dtype and device.
Definition: Image.h:48
int64_t Size()
Definition: ControlGrid.h:133
geometry::PointCloud Parameterize(const geometry::PointCloud &pcd)
Definition: ControlGrid.cpp:168
A pointcloud contains a set of 3D points.
Definition: PointCloud.h:95
geometry::PointCloud Deform(const geometry::PointCloud &pcd)
Non-rigidly deform a point cloud using the control grid.
Definition: ControlGrid.cpp:258
static const Dtype Float32
Definition: Dtype.h:42
Definition: PinholeCameraIntrinsic.cpp:35
std::tuple< core::Tensor, core::Tensor, core::Tensor > GetNeighborGridMap()
Definition: ControlGrid.cpp:134
core::Tensor GetCurrPositions()
Definition: ControlGrid.h:130
RGBDImage A pair of color and depth images.
Definition: RGBDImage.h:40
static const std::string kGrid8NbVertexInterpRatios
8 neighbor grid interpolation ratio for vertex per point.
Definition: ControlGrid.h:55
Definition: ControlGrid.h:49
core::Tensor GetInitPositions()
Get control grid original positions directly from tensor keys.
Definition: ControlGrid.h:123