|
void | ColorMapOptimization (geometry::TriangleMesh &mesh, const std::vector< std::shared_ptr< geometry::RGBDImage >> &images_rgbd, camera::PinholeCameraTrajectory &camera, const ColorMapOptimizationOption &option) |
|
template<typename VecInTypeDouble , typename VecInTypeInt , typename MatOutType , typename VecOutType > |
std::tuple< MatOutType, VecOutType, double > | ComputeJTJandJTrNonRigid (std::function< void(int, VecInTypeDouble &, double &, VecInTypeInt &)> f, int iteration_num, int nonrigidval, bool verbose) |
|
template std::tuple< Eigen::MatrixXd, Eigen::VectorXd, double > | ComputeJTJandJTrNonRigid (std::function< void(int, Eigen::Vector14d &, double &, Eigen::Vector14i &)> f, int iteration_num, int nonrigidval, bool verbose) |
|
std::tuple< float, float, float > | Project3DPointAndGetUVDepth (const Eigen::Vector3d X, const camera::PinholeCameraTrajectory &camera, int camid) |
|
std::tuple< std::vector< std::vector< int > >, std::vector< std::vector< int > > > | CreateVertexAndImageVisibility (const geometry::TriangleMesh &mesh, const std::vector< std::shared_ptr< geometry::Image >> &images_depth, const std::vector< std::shared_ptr< geometry::Image >> &images_mask, const camera::PinholeCameraTrajectory &camera, double maximum_allowable_depth, double depth_threshold_for_visiblity_check) |
|
template<typename T > |
std::tuple< bool, T > | QueryImageIntensity (const geometry::Image &img, const Eigen::Vector3d &V, const camera::PinholeCameraTrajectory &camera, int camid, int ch, int image_boundary_margin) |
|
template<typename T > |
std::tuple< bool, T > | QueryImageIntensity (const geometry::Image &img, const ImageWarpingField &field, const Eigen::Vector3d &V, const camera::PinholeCameraTrajectory &camera, int camid, int ch, int image_boundary_margin) |
|
void | SetProxyIntensityForVertex (const geometry::TriangleMesh &mesh, const std::vector< std::shared_ptr< geometry::Image >> &images_gray, const std::vector< ImageWarpingField > &warping_field, const camera::PinholeCameraTrajectory &camera, const std::vector< std::vector< int >> &visiblity_vertex_to_image, std::vector< double > &proxy_intensity, int image_boundary_margin) |
|
void | SetProxyIntensityForVertex (const geometry::TriangleMesh &mesh, const std::vector< std::shared_ptr< geometry::Image >> &images_gray, const camera::PinholeCameraTrajectory &camera, const std::vector< std::vector< int >> &visiblity_vertex_to_image, std::vector< double > &proxy_intensity, int image_boundary_margin) |
|
void | SetGeometryColorAverage (geometry::TriangleMesh &mesh, const std::vector< std::shared_ptr< geometry::Image >> &images_color, const camera::PinholeCameraTrajectory &camera, const std::vector< std::vector< int >> &visiblity_vertex_to_image, int image_boundary_margin) |
|
void | SetGeometryColorAverage (geometry::TriangleMesh &mesh, const std::vector< std::shared_ptr< geometry::Image >> &images_color, const std::vector< ImageWarpingField > &warping_fields, const camera::PinholeCameraTrajectory &camera, const std::vector< std::vector< int >> &visiblity_vertex_to_image, int image_boundary_margin) |
|
template<typename VecInTypeDouble , typename VecInTypeInt , typename MatOutType , typename VecOutType >
std::tuple< MatOutType, VecOutType, double > open3d::color_map::ComputeJTJandJTrNonRigid |
( |
std::function< void(int, VecInTypeDouble &, double &, VecInTypeInt &)> |
f, |
|
|
int |
iteration_num, |
|
|
int |
nonrigidval, |
|
|
bool |
verbose = true |
|
) |
| |
Function to compute JTJ and Jtr Input: function pointer f and total number of rows of Jacobian matrix Output: JTJ, JTr, sum of r^2 Note: this function is almost identical to the functions in Utility/Eigen.h/cpp, but this function takes additional multiplication pattern that can produce JTJ having hundreds of rows and columns.