41 #ifndef PCL_SURFACE_BILATERAL_UPSAMPLING_H_
42 #define PCL_SURFACE_BILATERAL_UPSAMPLING_H_
44 #include <pcl/surface/processing.h>
62 template <
typename Po
intInT,
typename Po
intOutT>
66 typedef boost::shared_ptr<BilateralUpsampling<PointInT, PointOutT> >
Ptr;
67 typedef boost::shared_ptr<const BilateralUpsampling<PointInT, PointOutT> >
ConstPtr;
81 : KinectVGAProjectionMatrix ()
82 , KinectSXGAProjectionMatrix ()
84 , sigma_color_ (15.0f)
86 , projection_matrix_ ()
87 , unprojection_matrix_ ()
89 KinectVGAProjectionMatrix << 525.0f, 0.0f, 320.0f,
92 KinectSXGAProjectionMatrix << 1050.0f, 0.0f, 640.0f,
93 0.0f, 1050.0f, 480.0f,
133 setProjectionMatrix (
const Eigen::Matrix3f &projection_matrix) { projection_matrix_ = projection_matrix; }
136 inline Eigen::Matrix3f
152 computeDistances (Eigen::MatrixXf &val_exp_depth, Eigen::VectorXf &val_exp_rgb);
156 float sigma_color_, sigma_depth_;
157 Eigen::Matrix3f projection_matrix_, unprojection_matrix_;
160 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
Eigen::Matrix3f getProjectionMatrix() const
Returns the current projection matrix.
BilateralUpsampling()
Constructor.
This file defines compatibility wrappers for low level I/O functions.
void setSigmaColor(const float &sigma_color)
Method that sets the sigma color parameter.
Bilateral filtering implementation, based on the following paper:
CloudSurfaceProcessing represents the base class for algorithms that takes a point cloud as input and...
Eigen::Matrix3f KinectSXGAProjectionMatrix
int getWindowSize() const
Returns the filter window size.
Eigen::Matrix3f KinectVGAProjectionMatrix
boost::shared_ptr< const BilateralUpsampling< PointInT, PointOutT > > ConstPtr
void performProcessing(pcl::PointCloud< PointOutT > &output)
Abstract cloud processing method.
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.
float getSigmaColor() const
Returns the current sigma color value.
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...
pcl::PointCloud< PointOutT > PointCloudOut
PointCloud represents the base class in PCL for storing collections of 3D points. ...
float getSigmaDepth() const
Returns the current sigma depth value.
boost::shared_ptr< BilateralUpsampling< PointInT, PointOutT > > Ptr
void process(pcl::PointCloud< PointOutT > &output)
Method that does the actual processing on the input cloud.
void computeDistances(Eigen::MatrixXf &val_exp_depth, Eigen::VectorXf &val_exp_rgb)
Computes the distance for depth and RGB.