tools.h File Reference
#include <set>
#include <Eigen/Geometry>
#include <pcl/point_cloud.h>
#include <pcl/point_types.h>
#include <pcl/PointIndices.h>
#include <pcl/point_types_conversion.h>
#include <pcl/common/io.h>
+ Include dependency graph for tools.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 Eigen
 
 visionx
 ArmarX headers.
 

Functions

Eigen::Hyperplane3f alignPlaneNormal (Eigen::Hyperplane3f plane, Eigen::Vector3f normal)
 Flip plane if its normal does not point towards normal. More...
 
bool comparePointClustersDescending (const pcl::PointIndices &lhs, const pcl::PointIndices &rhs)
 
template<class PointT >
void copyPointCloudWithoutIndices (const pcl::PointCloud< PointT > &input, const std::vector< int > &indices, pcl::PointCloud< PointT > &output)
 
template<class PointT >
void filterNaNs (pcl::PointCloud< PointT > &pc)
 
Eigen::Hyperplane3f fitPlaneSVD (const pcl::PointCloud< pcl::PointXYZRGBA > &cloud, const pcl::PointIndices &indices, Eigen::Vector3f center=Eigen::Vector3f::Zero())
 
Eigen::Hyperplane3f fitPlaneSVD (const pcl::PointCloud< pcl::PointXYZRGBA > &cloud, Eigen::Vector3f center=Eigen::Vector3f::Zero())
 
pcl::PointIndicesPtr getPlaneInliers (const pcl::PointCloud< pcl::PointXYZRGBA > &cloud, Eigen::Hyperplane3f plane, float maxDistance)
 
template<class PointT >
pcl::PointCloud< PointT >::Ptr getPointCloudWithIndices (const pcl::PointCloud< PointT > &input, const pcl::PointIndices &indices)
 
template<class PointT >
pcl::PointCloud< PointT >::Ptr getPointCloudWithIndices (const pcl::PointCloud< PointT > &input, const std::vector< int > &indices)
 
template<class PointT >
pcl::PointCloud< PointT >::Ptr getPointCloudWithoutIndices (const pcl::PointCloud< PointT > &input, const std::vector< int > &indices)
 
float hsvDistance (const Eigen::Vector3f &lhs, const Eigen::Vector3f &rhs, const Eigen::Vector3f &hsvWeights=Eigen::Vector3f::Ones())
 
float hsvDistance (const pcl::PointXYZHSV &lhs, const pcl::PointXYZHSV &rhs, const Eigen::Vector3f &hsvWeights=Eigen::Vector3f::Ones())
 
Eigen::Vector3f hsvMean (const pcl::PointCloud< pcl::PointXYZHSV > &hsvCloud, const std::vector< int > &indices)
 
template<class PointRGB >
Eigen::Vector3f hsvMean (const pcl::PointCloud< PointRGB > &rgbCloud, const std::vector< int > &indices)
 
Eigen::Vector3f pointCloudMedian (const pcl::PointCloud< pcl::PointXYZRGBA > &cloud, const pcl::PointIndices &indices={})
 
void sortPointClustersDescending (std::vector< pcl::PointIndices > &clusterIndices)