44 #include <pcl/surface/processing.h> 62 template <
typename Po
intInT,
typename Po
intOutT>
66 typedef shared_ptr<BilateralUpsampling<PointInT, PointOutT> >
Ptr;
67 typedef shared_ptr<const BilateralUpsampling<PointInT, PointOutT> >
ConstPtr;
82 , sigma_color_ (15.0f)
89 0.0f, 1050.0f, 480.0f,
129 setProjectionMatrix (
const Eigen::Matrix3f &projection_matrix) { projection_matrix_ = projection_matrix; }
132 inline Eigen::Matrix3f
148 computeDistances (Eigen::MatrixXf &val_exp_depth, Eigen::VectorXf &val_exp_rgb);
152 float sigma_color_, sigma_depth_;
153 Eigen::Matrix3f projection_matrix_, unprojection_matrix_;
shared_ptr< const BilateralUpsampling< PointInT, PointOutT > > ConstPtr
Eigen::Matrix3f getProjectionMatrix() const
Returns the current projection matrix.
float getSigmaDepth() const
Returns the current sigma depth value.
Defines functions, macros and traits for allocating and using memory.
BilateralUpsampling()
Constructor.
void process(pcl::PointCloud< PointOutT > &output) override
Method that does the actual processing on the input cloud.
void setSigmaColor(const float &sigma_color)
Method that sets the sigma color parameter.
Bilateral filtering implementation, based on the following paper:
float getSigmaColor() const
Returns the current sigma color value.
CloudSurfaceProcessing represents the base class for algorithms that takes a point cloud as input and...
#define PCL_MAKE_ALIGNED_OPERATOR_NEW
Macro to signal a class requires a custom allocator.
void performProcessing(pcl::PointCloud< PointOutT > &output) override
Abstract cloud processing method.
Eigen::Matrix3f KinectSXGAProjectionMatrix
Eigen::Matrix3f KinectVGAProjectionMatrix
void setSigmaDepth(const float &sigma_depth)
Method that sets the sigma depth parameter.
void setWindowSize(int window_size)
Method that sets the window size for the filter.
void setProjectionMatrix(const Eigen::Matrix3f &projection_matrix)
Method that sets the projection matrix to be used when unprojecting the points in the depth image bac...
int getWindowSize() const
Returns the filter window size.
void computeDistances(Eigen::MatrixXf &val_exp_depth, Eigen::VectorXf &val_exp_rgb)
Computes the distance for depth and RGB.
Defines all the PCL and non-PCL macros used.
shared_ptr< BilateralUpsampling< PointInT, PointOutT > > Ptr