Point Cloud Library (PCL)  1.8.0
Classes | Files | Enumerations | Functions
Module io

Detailed Description

Overview

The pcl_io library contains classes and functions for reading and writing point cloud data (PCD) files, as well as capturing point clouds from a variety of sensing devices. An introduction to some of these capabilities can be found in the following tutorials:

PCL is agnostic with respect to the data sources that are used to generate 3D point clouds. While OpenNI-compatible cameras have recently been at the center of attention in the 3D/robotics sensing community, many of the devices enumerated below have been used with PCL tools in the past:

pr2.jpg
composite.jpg
lms400.jpg
openni.jpg
trimble.jpg
minolta.jpg
fujiw3.jpg
borg.jpg

Requirements

Classes

class  pcl::ASCIIReader
 Ascii Point Cloud Reader. More...
 
class  pcl::io::Buffer< T >
 An abstract base class for fixed-size data buffers. More...
 
class  pcl::DavidSDKGrabber
 Grabber for davidSDK structured light compliant devices. More...
 
class  pcl::io::DeBayer
 Various debayering methods. More...
 
class  pcl::DepthSenseGrabber
 Grabber for DepthSense devices (e.g. More...
 
class  pcl::DinastGrabber
 Grabber for DINAST devices (i.e., IPA-1002, IPA-1110, IPA-2001) More...
 
class  pcl::EnsensoGrabber
 Grabber for IDS-Imaging Ensenso's devices. More...
 
class  pcl::FileGrabber< PointT >
 FileGrabber provides a container-style interface for grabbers which operate on fixed-size input. More...
 
class  pcl::FileReader
 Point Cloud Data (FILE) file format reader interface. More...
 
class  pcl::FileWriter
 Point Cloud Data (FILE) file format writer. More...
 
class  pcl::Grabber
 Grabber interface for PCL 1.x device drivers. More...
 
struct  pcl::HDLGrabber::HDLLaserReturn
 
struct  pcl::HDLGrabber::HDLFiringData
 
struct  pcl::HDLGrabber::HDLDataPacket
 
struct  pcl::HDLGrabber::HDLLaserCorrection
 
class  pcl::HDLGrabber
 Grabber for the Velodyne High-Definition-Laser (HDL) More...
 
class  pcl::IFSReader
 Indexed Face set (IFS) file format reader. More...
 
class  pcl::IFSWriter
 Point Cloud Data (IFS) file format writer. More...
 
class  pcl::io::Image
 Image interface class providing an interface to fill a RGB or Grayscale image buffer. More...
 
class  pcl::ImageGrabberBase
 Base class for Image file grabber. More...
 
class  pcl::io::ImageRGB24
 This class provides methods to fill a RGB or Grayscale image buffer from underlying RGB24 image. More...
 
class  pcl::io::ImageYUV422
 Concrete implementation of the interface Image for a YUV 422 image used by Primesense devices. More...
 
class  pcl::io::LZFImageReader
 PCL-LZF image format reader. More...
 
class  pcl::io::LZFDepth16ImageReader
 PCL-LZF 16-bit depth image format reader. More...
 
class  pcl::io::LZFRGB24ImageReader
 PCL-LZF 24-bit RGB image format reader. More...
 
class  pcl::io::LZFYUV422ImageReader
 PCL-LZF 8-bit Bayer image format reader. More...
 
class  pcl::io::LZFBayer8ImageReader
 PCL-LZF 8-bit Bayer image format reader. More...
 
class  pcl::io::LZFImageWriter
 PCL-LZF image format writer. More...
 
class  pcl::io::LZFDepth16ImageWriter
 PCL-LZF 16-bit depth image format writer. More...
 
class  pcl::io::LZFRGB24ImageWriter
 PCL-LZF 24-bit RGB image format writer. More...
 
class  pcl::io::LZFYUV422ImageWriter
 PCL-LZF 16-bit YUV422 image format writer. More...
 
class  pcl::io::LZFBayer8ImageWriter
 PCL-LZF 8-bit Bayer image format writer. More...
 
class  pcl::ONIGrabber
 A simple ONI grabber. More...
 
struct  openni_wrapper::OpenNIDevice::ShiftConversion
 
class  openni_wrapper::OpenNIDevice
 Class representing an astract device for OpenNI devices: Primesense PSDK, Microsoft Kinect, Asus Xtion Pro/Live. More...
 
class  openni_wrapper::DeviceKinect
 Concrete implementation of the interface OpenNIDevice for a MS Kinect device. More...
 
class  openni_wrapper::DeviceONI
 Concrete implementation of the interface OpenNIDevice for a virtual device playing back an ONI file. More...
 
class  openni_wrapper::DevicePrimesense
 Concrete implementation of the interface OpenNIDevice for a Primesense device. More...
 
class  openni_wrapper::DeviceXtionPro
 Concrete implementation of the interface OpenNIDevice for a Asus Xtion Pro device. More...
 
struct  openni_wrapper::OpenNIDriver::DeviceContext
 
class  openni_wrapper::OpenNIDriver
 Driver class implemented as Singleton. More...
 
class  openni_wrapper::OpenNIException
 General exception class. More...
 
class  openni_wrapper::Image
 Image class containing just a reference to image meta data. More...
 
class  openni_wrapper::ImageBayerGRBG
 This class provides methods to fill a RGB or Grayscale image buffer from underlying Bayer pattern image. More...
 
class  openni_wrapper::ImageRGB24
 This class provides methods to fill a RGB or Grayscale image buffer from underlying RGB24 image. More...
 
class  openni_wrapper::ImageYUV422
 Concrete implementation of the interface Image for a YUV 422 image used by Primesense devices. More...
 
struct  pcl::OpenNIGrabber::modeComp
 
class  pcl::OpenNIGrabber
 Grabber for OpenNI devices (i.e., Primesense PSDK, Microsoft Kinect, Asus XTion Pro/Live) More...
 
class  pcl::PCDGrabberBase
 Base class for PCD file grabber. More...
 
class  pcl::PCDReader
 Point Cloud Data (PCD) file format reader. More...
 
class  pcl::PCDWriter
 Point Cloud Data (PCD) file format writer. More...
 
class  pcl::PLYReader
 Point Cloud Data (PLY) file format reader. More...
 
class  pcl::PLYWriter
 Point Cloud Data (PLY) file format writer. More...
 
class  pcl::io::PointCloudImageExtractor< PointT >
 Base Image Extractor class for organized point clouds. More...
 
class  pcl::io::PointCloudImageExtractorWithScaling< PointT >
 Image Extractor extension which provides functionality to apply scaling to the values extracted from a field. More...
 
class  pcl::io::PointCloudImageExtractorFromNormalField< PointT >
 Image Extractor which uses the data present in the "normal" field. More...
 
class  pcl::io::PointCloudImageExtractorFromRGBField< PointT >
 Image Extractor which uses the data present in the "rgb" or "rgba" fields to produce a color image with rgb8 encoding. More...
 
class  pcl::io::PointCloudImageExtractorFromLabelField< PointT >
 Image Extractor which uses the data present in the "label" field to produce either monochrome or RGB image where different labels correspond to different colors. More...
 
class  pcl::io::PointCloudImageExtractorFromZField< PointT >
 Image Extractor which uses the data present in the "z" field to produce a depth map (as a monochrome image with mono16 encoding). More...
 
class  pcl::io::PointCloudImageExtractorFromCurvatureField< PointT >
 Image Extractor which uses the data present in the "curvature" field to produce a curvature map (as a monochrome image with mono16 encoding). More...
 
class  pcl::io::PointCloudImageExtractorFromIntensityField< PointT >
 Image Extractor which uses the data present in the "intensity" field to produce a monochrome intensity image (with mono16 encoding). More...
 
class  pcl::RobotEyeGrabber
 Grabber for the Ocular Robotics RobotEye sensor. More...
 
class  pcl::VLPGrabber
 Grabber for the Velodyne LiDAR (VLP), based on the Velodyne High Definition Laser (HDL) More...
 
class  pcl::StereoGrabberBase
 Base class for Stereo file grabber. More...
 

Files

file  byte_order.h
 defines byte shift operations and endianess.
 
file  io_operators.h
 defines output operators for int8 and uint8
 
file  ply.h
 contains standard typedefs and generic type traits
 

Enumerations

enum  pcl::DepthSenseGrabber::Mode { pcl::DepthSenseGrabber::DepthSense_QVGA_30Hz = 0 }
 
enum  pcl::DepthSenseGrabber::TemporalFilteringType { pcl::DepthSenseGrabber::DepthSense_None = 0, pcl::DepthSenseGrabber::DepthSense_Median = 1, pcl::DepthSenseGrabber::DepthSense_Average = 2 }
 
enum  pcl::DinastGrabber::pixel_size { pcl::DinastGrabber::RAW8 =1, pcl::DinastGrabber::RGB16 =2, pcl::DinastGrabber::RGB24 =3, pcl::DinastGrabber::RGB32 =4 }
 Size of pixel. More...
 
enum  { pcl::DinastGrabber::CMD_READ_START =0xC7, pcl::DinastGrabber::CMD_READ_STOP =0xC8, pcl::DinastGrabber::CMD_GET_VERSION =0xDC, pcl::DinastGrabber::CMD_SEND_DATA =0xDE }
 Device command values. More...
 
enum  pcl::HDLGrabber::HDLBlock { pcl::HDLGrabber::BLOCK_0_TO_31 = 0xeeff, pcl::HDLGrabber::BLOCK_32_TO_63 = 0xddff }
 
enum  { pcl::IFSReader::IFS_V1_0 = 0, pcl::IFSReader::IFS_V1_1 = 1 }
 we support two versions 1.0 classic 1.1 with texture coordinates addon More...
 
enum  pcl::io::Image::Encoding { pcl::io::Image::BAYER_GRBG, pcl::io::Image::YUV422, pcl::io::Image::RGB }
 
enum  openni_wrapper::OpenNIDevice::DepthMode { openni_wrapper::OpenNIDevice::OpenNI_shift_values = 0, openni_wrapper::OpenNIDevice::OpenNI_12_bit_depth = 1 }
 
enum  openni_wrapper::Image::Encoding { openni_wrapper::Image::BAYER_GRBG, openni_wrapper::Image::YUV422, openni_wrapper::Image::RGB }
 
enum  openni_wrapper::ImageBayerGRBG::DebayeringMethod { openni_wrapper::ImageBayerGRBG::Bilinear = 0, openni_wrapper::ImageBayerGRBG::EdgeAware, openni_wrapper::ImageBayerGRBG::EdgeAwareWeighted }
 
enum  pcl::OpenNIGrabber::Mode {
  pcl::OpenNIGrabber::OpenNI_Default_Mode = 0, pcl::OpenNIGrabber::OpenNI_SXGA_15Hz = 1, pcl::OpenNIGrabber::OpenNI_VGA_30Hz = 2, pcl::OpenNIGrabber::OpenNI_VGA_25Hz = 3,
  pcl::OpenNIGrabber::OpenNI_QVGA_25Hz = 4, pcl::OpenNIGrabber::OpenNI_QVGA_30Hz = 5, pcl::OpenNIGrabber::OpenNI_QVGA_60Hz = 6, pcl::OpenNIGrabber::OpenNI_QQVGA_25Hz = 7,
  pcl::OpenNIGrabber::OpenNI_QQVGA_30Hz = 8, pcl::OpenNIGrabber::OpenNI_QQVGA_60Hz = 9
}
 
enum  { pcl::PCDReader::PCD_V6 = 0, pcl::PCDReader::PCD_V7 = 1 }
 Various PCD file versions. More...
 
enum  { pcl::PLYReader::PLY_V0 = 0, pcl::PLYReader::PLY_V1 = 1 }
 
enum  pcl::io::PointCloudImageExtractorWithScaling< PointT >::ScalingMethod { pcl::io::PointCloudImageExtractorWithScaling< PointT >::SCALING_NO, pcl::io::PointCloudImageExtractorWithScaling< PointT >::SCALING_FULL_RANGE, pcl::io::PointCloudImageExtractorWithScaling< PointT >::SCALING_FIXED_FACTOR }
 Different scaling methods. More...
 
enum  pcl::io::PointCloudImageExtractorFromLabelField< PointT >::ColorMode { pcl::io::PointCloudImageExtractorFromLabelField< PointT >::COLORS_MONO, pcl::io::PointCloudImageExtractorFromLabelField< PointT >::COLORS_RGB_RANDOM, pcl::io::PointCloudImageExtractorFromLabelField< PointT >::COLORS_RGB_GLASBEY }
 Different modes for color mapping. More...
 

Functions

PCL_EXPORTS void pcl::io::encodeMonoImageToPNG (std::vector< uint8_t > &image_arg, size_t width_arg, size_t height_arg, std::vector< uint8_t > &pngData_arg, int png_level_arg=-1)
 Encodes 8-bit mono image to PNG format. More...
 
PCL_EXPORTS void pcl::io::encodeMonoImageToPNG (std::vector< uint16_t > &image_arg, size_t width_arg, size_t height_arg, std::vector< uint8_t > &pngData_arg, int png_level_arg=-1)
 Encodes 16-bit mono image to PNG format. More...
 
PCL_EXPORTS void pcl::io::encodeRGBImageToPNG (std::vector< uint8_t > &image_arg, size_t width_arg, size_t height_arg, std::vector< uint8_t > &pngData_arg, int png_level_arg=-1)
 Encodes 8-bit RGB image to PNG format. More...
 
PCL_EXPORTS void pcl::io::encodeRGBImageToPNG (std::vector< uint16_t > &image_arg, size_t width_arg, size_t height_arg, std::vector< uint8_t > &pngData_arg, int png_level_arg=-1)
 Encodes 16-bit RGB image to PNG format. More...
 
PCL_EXPORTS void pcl::io::decodePNGToImage (std::vector< uint8_t > &pngData_arg, std::vector< uint8_t > &imageData_arg, size_t &width_arg, size_t &heigh_argt, unsigned int &channels_arg)
 Decode compressed PNG to 8-bit image. More...
 
PCL_EXPORTS void pcl::io::decodePNGToImage (std::vector< uint8_t > &pngData_arg, std::vector< uint16_t > &imageData_arg, size_t &width_arg, size_t &height_arg, unsigned int &channels_arg)
 Decode compressed PNG to 16-bit image. More...
 
static void pcl::io::OrganizedConversion< PointT, false >::convert (const pcl::PointCloud< PointT > &cloud_arg, float focalLength_arg, float disparityShift_arg, float disparityScale_arg, bool, typename std::vector< uint16_t > &disparityData_arg, typename std::vector< uint8_t > &)
 Convert point cloud to disparity image. More...
 
static void pcl::io::OrganizedConversion< PointT, false >::convert (typename std::vector< uint16_t > &disparityData_arg, typename std::vector< uint8_t > &, bool, size_t width_arg, size_t height_arg, float focalLength_arg, float disparityShift_arg, float disparityScale_arg, pcl::PointCloud< PointT > &cloud_arg)
 Convert disparity image to point cloud. More...
 
static void pcl::io::OrganizedConversion< PointT, false >::convert (typename std::vector< float > &depthData_arg, typename std::vector< uint8_t > &, bool, size_t width_arg, size_t height_arg, float focalLength_arg, pcl::PointCloud< PointT > &cloud_arg)
 Convert disparity image to point cloud. More...
 
static void pcl::io::OrganizedConversion< PointT, true >::convert (const pcl::PointCloud< PointT > &cloud_arg, float focalLength_arg, float disparityShift_arg, float disparityScale_arg, bool convertToMono, typename std::vector< uint16_t > &disparityData_arg, typename std::vector< uint8_t > &rgbData_arg)
 Convert point cloud to disparity image and rgb image. More...
 
static void pcl::io::OrganizedConversion< PointT, true >::convert (typename std::vector< uint16_t > &disparityData_arg, typename std::vector< uint8_t > &rgbData_arg, bool monoImage_arg, size_t width_arg, size_t height_arg, float focalLength_arg, float disparityShift_arg, float disparityScale_arg, pcl::PointCloud< PointT > &cloud_arg)
 Convert disparity image to point cloud. More...
 
static void pcl::io::OrganizedConversion< PointT, true >::convert (typename std::vector< float > &depthData_arg, typename std::vector< uint8_t > &rgbData_arg, bool monoImage_arg, size_t width_arg, size_t height_arg, float focalLength_arg, pcl::PointCloud< PointT > &cloud_arg)
 Convert disparity image to point cloud. More...
 
PCL_EXPORTS int pcl::io::load (const std::string &file_name, pcl::PCLPointCloud2 &blob)
 Load a file into a PointCloud2 according to extension. More...
 
template<typename PointT >
int pcl::io::load (const std::string &file_name, pcl::PointCloud< PointT > &cloud)
 Load a file into a template PointCloud type according to extension. More...
 
PCL_EXPORTS int pcl::io::load (const std::string &file_name, pcl::PolygonMesh &mesh)
 Load a file into a PolygonMesh according to extension. More...
 
PCL_EXPORTS int pcl::io::load (const std::string &file_name, pcl::TextureMesh &mesh)
 Load a file into a TextureMesh according to extension. More...
 
PCL_EXPORTS int pcl::io::save (const std::string &file_name, const pcl::PCLPointCloud2 &blob, unsigned precision=5)
 Save point cloud data to a binary file when available else to ASCII. More...
 
template<typename PointT >
int pcl::io::save (const std::string &file_name, const pcl::PointCloud< PointT > &cloud, unsigned precision=5)
 Save point cloud to a binary file when available else to ASCII. More...
 
PCL_EXPORTS int pcl::io::save (const std::string &file_name, const pcl::TextureMesh &tex_mesh, unsigned precision=5)
 Saves a TextureMesh to a binary file when available else to ASCII. More...
 
PCL_EXPORTS int pcl::io::save (const std::string &file_name, const pcl::PolygonMesh &mesh, unsigned precision=5)
 Saves a PolygonMesh to a binary file when available else to ASCII. More...
 
int pcl::io::loadIFSFile (const std::string &file_name, pcl::PCLPointCloud2 &cloud)
 Load an IFS file into a PCLPointCloud2 blob type. More...
 
template<typename PointT >
int pcl::io::loadIFSFile (const std::string &file_name, pcl::PointCloud< PointT > &cloud)
 Load any IFS file into a templated PointCloud type. More...
 
int pcl::io::loadIFSFile (const std::string &file_name, pcl::PolygonMesh &mesh)
 Load any IFS file into a PolygonMesh type. More...
 
int pcl::io::saveIFSFile (const std::string &file_name, const pcl::PCLPointCloud2 &cloud)
 Save point cloud data to an IFS file containing 3D points. More...
 
template<typename PointT >
int pcl::io::saveIFSFile (const std::string &file_name, const pcl::PointCloud< PointT > &cloud)
 Save point cloud data to an IFS file containing 3D points. More...
 
int pcl::io::loadOBJFile (const std::string &file_name, pcl::PCLPointCloud2 &cloud, Eigen::Vector4f &origin, Eigen::Quaternionf &orientation)
 Load any OBJ file into a templated PointCloud type. More...
 
int pcl::io::loadOBJFile (const std::string &file_name, pcl::PCLPointCloud2 &cloud)
 Load an OBJ file into a PCLPointCloud2 blob type. More...
 
template<typename PointT >
int pcl::io::loadOBJFile (const std::string &file_name, pcl::PointCloud< PointT > &cloud)
 Load any OBJ file into a templated PointCloud type. More...
 
int pcl::io::loadOBJFile (const std::string &file_name, pcl::PolygonMesh &mesh)
 Load any OBJ file into a PolygonMesh type. More...
 
int pcl::io::loadOBJFile (const std::string &file_name, pcl::TextureMesh &mesh)
 Load any OBJ file into a TextureMesh type. More...
 
PCL_EXPORTS int pcl::io::saveOBJFile (const std::string &file_name, const pcl::TextureMesh &tex_mesh, unsigned precision=5)
 Saves a TextureMesh in ascii OBJ format. More...
 
PCL_EXPORTS int pcl::io::saveOBJFile (const std::string &file_name, const pcl::PolygonMesh &mesh, unsigned precision=5)
 Saves a PolygonMesh in ascii PLY format. More...
 
int pcl::io::loadPCDFile (const std::string &file_name, pcl::PCLPointCloud2 &cloud)
 Load a PCD v.6 file into a templated PointCloud type. More...
 
int pcl::io::loadPCDFile (const std::string &file_name, pcl::PCLPointCloud2 &cloud, Eigen::Vector4f &origin, Eigen::Quaternionf &orientation)
 Load any PCD file into a templated PointCloud type. More...
 
template<typename PointT >
int pcl::io::loadPCDFile (const std::string &file_name, pcl::PointCloud< PointT > &cloud)
 Load any PCD file into a templated PointCloud type. More...
 
int pcl::io::savePCDFile (const std::string &file_name, const pcl::PCLPointCloud2 &cloud, const Eigen::Vector4f &origin=Eigen::Vector4f::Zero(), const Eigen::Quaternionf &orientation=Eigen::Quaternionf::Identity(), const bool binary_mode=false)
 Save point cloud data to a PCD file containing n-D points. More...
 
template<typename PointT >
int pcl::io::savePCDFile (const std::string &file_name, const pcl::PointCloud< PointT > &cloud, bool binary_mode=false)
 Templated version for saving point cloud data to a PCD file containing a specific given cloud format. More...
 
template<typename PointT >
int pcl::io::savePCDFileASCII (const std::string &file_name, const pcl::PointCloud< PointT > &cloud)
 Templated version for saving point cloud data to a PCD file containing a specific given cloud format. More...
 
template<typename PointT >
int pcl::io::savePCDFileBinary (const std::string &file_name, const pcl::PointCloud< PointT > &cloud)
 Templated version for saving point cloud data to a PCD file containing a specific given cloud format. More...
 
template<typename PointT >
int pcl::io::savePCDFile (const std::string &file_name, const pcl::PointCloud< PointT > &cloud, const std::vector< int > &indices, const bool binary_mode=false)
 Templated version for saving point cloud data to a PCD file containing a specific given cloud format. More...
 
template<typename PointT >
int pcl::io::savePCDFileBinaryCompressed (const std::string &file_name, const pcl::PointCloud< PointT > &cloud)
 Templated version for saving point cloud data to a PCD file containing a specific given cloud format. More...
 
int pcl::io::loadPLYFile (const std::string &file_name, pcl::PCLPointCloud2 &cloud)
 Load a PLY v.6 file into a templated PointCloud type. More...
 
int pcl::io::loadPLYFile (const std::string &file_name, pcl::PCLPointCloud2 &cloud, Eigen::Vector4f &origin, Eigen::Quaternionf &orientation)
 Load any PLY file into a templated PointCloud type. More...
 
template<typename PointT >
int pcl::io::loadPLYFile (const std::string &file_name, pcl::PointCloud< PointT > &cloud)
 Load any PLY file into a templated PointCloud type. More...
 
int pcl::io::loadPLYFile (const std::string &file_name, pcl::PolygonMesh &mesh)
 Load a PLY file into a PolygonMesh type. More...
 
int pcl::io::savePLYFile (const std::string &file_name, const pcl::PCLPointCloud2 &cloud, const Eigen::Vector4f &origin=Eigen::Vector4f::Zero(), const Eigen::Quaternionf &orientation=Eigen::Quaternionf::Identity(), bool binary_mode=false, bool use_camera=true)
 Save point cloud data to a PLY file containing n-D points. More...
 
template<typename PointT >
int pcl::io::savePLYFile (const std::string &file_name, const pcl::PointCloud< PointT > &cloud, bool binary_mode=false)
 Templated version for saving point cloud data to a PLY file containing a specific given cloud format. More...
 
template<typename PointT >
int pcl::io::savePLYFileASCII (const std::string &file_name, const pcl::PointCloud< PointT > &cloud)
 Templated version for saving point cloud data to a PLY file containing a specific given cloud format. More...
 
template<typename PointT >
int pcl::io::savePLYFileBinary (const std::string &file_name, const pcl::PointCloud< PointT > &cloud)
 Templated version for saving point cloud data to a PLY file containing a specific given cloud format. More...
 
template<typename PointT >
int pcl::io::savePLYFile (const std::string &file_name, const pcl::PointCloud< PointT > &cloud, const std::vector< int > &indices, bool binary_mode=false)
 Templated version for saving point cloud data to a PLY file containing a specific given cloud format. More...
 
PCL_EXPORTS int pcl::io::savePLYFile (const std::string &file_name, const pcl::PolygonMesh &mesh, unsigned precision=5)
 Saves a PolygonMesh in ascii PLY format. More...
 
PCL_EXPORTS int pcl::io::savePLYFileBinary (const std::string &file_name, const pcl::PolygonMesh &mesh)
 Saves a PolygonMesh in binary PLY format. More...
 
PCL_EXPORTS void pcl::io::saveCharPNGFile (const std::string &file_name, const unsigned char *mono_image, int width, int height, int channels)
 Saves 8-bit encoded image to PNG file. More...
 
PCL_EXPORTS void pcl::io::saveShortPNGFile (const std::string &file_name, const unsigned short *short_image, int width, int height, int channels)
 Saves 16-bit encoded image to PNG file. More...
 
PCL_EXPORTS void pcl::io::saveRgbPNGFile (const std::string &file_name, const unsigned char *rgb_image, int width, int height)
 Saves 8-bit encoded RGB image to PNG file. More...
 
PCL_EXPORTS void pcl::io::savePNGFile (const std::string &file_name, const pcl::PointCloud< unsigned char > &cloud)
 Saves 8-bit grayscale cloud as image to PNG file. More...
 
PCL_EXPORTS void pcl::io::savePNGFile (const std::string &file_name, const pcl::PointCloud< unsigned short > &cloud)
 Saves 16-bit grayscale cloud as image to PNG file. More...
 
PCL_EXPORTS void pcl::io::savePNGFile (const std::string &file_name, const pcl::PCLImage &image)
 Saves a PCLImage (formely ROS sensor_msgs::Image) to PNG file. More...
 
template<typename T >
void pcl::io::savePNGFile (const std::string &file_name, const pcl::PointCloud< T > &cloud)
 Saves RGB fields of cloud as image to PNG file. More...
 
PCL_EXPORTS void pcl::io::savePNGFile (const std::string &file_name, const pcl::PointCloud< pcl::PointXYZL > &cloud)
 Saves Labeled Point cloud as image to PNG file. More...
 
template<typename PointT >
void pcl::io::savePNGFile (const std::string &file_name, const pcl::PointCloud< PointT > &cloud, const std::string &field_name)
 Saves the data from the specified field of the point cloud as image to PNG file. More...
 
PCL_EXPORTS int pcl::io::saveVTKFile (const std::string &file_name, const pcl::PolygonMesh &triangles, unsigned precision=5)
 Saves a PolygonMesh in ascii VTK format. More...
 
PCL_EXPORTS int pcl::io::saveVTKFile (const std::string &file_name, const pcl::PCLPointCloud2 &cloud, unsigned precision=5)
 Saves a PointCloud in ascii VTK format. More...
 
PCL_EXPORTS int pcl::io::loadPolygonFile (const std::string &file_name, pcl::PolygonMesh &mesh)
 Load a PolygonMesh object given an input file name, based on the file extension. More...
 
PCL_EXPORTS bool pcl::io::savePolygonFile (const std::string &file_name, const pcl::PolygonMesh &mesh, const bool binary_format=true)
 Save a PolygonMesh object given an input file name, based on the file extension. More...
 
PCL_EXPORTS int pcl::io::loadPolygonFileVTK (const std::string &file_name, pcl::PolygonMesh &mesh)
 Load a VTK file into a PolygonMesh object. More...
 
PCL_EXPORTS int pcl::io::loadPolygonFilePLY (const std::string &file_name, pcl::PolygonMesh &mesh)
 Load a PLY file into a PolygonMesh object. More...
 
PCL_EXPORTS int pcl::io::loadPolygonFileOBJ (const std::string &file_name, pcl::PolygonMesh &mesh)
 Load an OBJ file into a PolygonMesh object. More...
 
PCL_EXPORTS int pcl::io::loadPolygonFileOBJ (const std::string &file_name, pcl::TextureMesh &mesh)
 Load an OBJ file into a TextureMesh object. More...
 
PCL_EXPORTS int pcl::io::loadPolygonFileSTL (const std::string &file_name, pcl::PolygonMesh &mesh)
 Load an STL file into a PolygonMesh object. More...
 
PCL_EXPORTS bool pcl::io::savePolygonFileVTK (const std::string &file_name, const pcl::PolygonMesh &mesh, const bool binary_format=true)
 Save a PolygonMesh object into a VTK file. More...
 
PCL_EXPORTS bool pcl::io::savePolygonFilePLY (const std::string &file_name, const pcl::PolygonMesh &mesh, const bool binary_format=true)
 Save a PolygonMesh object into a PLY file. More...
 
PCL_EXPORTS bool pcl::io::savePolygonFileSTL (const std::string &file_name, const pcl::PolygonMesh &mesh, const bool binary_format=true)
 Save a PolygonMesh object into an STL file. More...
 
PCL_EXPORTS void pcl::io::saveRangeImagePlanarFilePNG (const std::string &file_name, const pcl::RangeImagePlanar &range_image)
 Write a RangeImagePlanar object to a PNG file. More...
 
template<typename PointT >
void pcl::io::pointCloudTovtkPolyData (const pcl::PointCloud< PointT > &cloud, vtkPolyData *const polydata)
 Convert a pcl::PointCloud object to a VTK PolyData one. More...
 
PCL_EXPORTS void pcl::io::pointCloudTovtkPolyData (const pcl::PCLPointCloud2Ptr &cloud, vtkSmartPointer< vtkPolyData > &poly_data)
 Convert a PCLPointCloud2 object to a VTK PolyData object. More...
 
template<typename PointT >
void pcl::io::pointCloudTovtkStructuredGrid (const pcl::PointCloud< PointT > &cloud, vtkStructuredGrid *const structured_grid)
 Convert a pcl::PointCloud object to a VTK StructuredGrid one. More...
 
template<typename PointT >
void pcl::io::vtkPolyDataToPointCloud (vtkPolyData *const polydata, pcl::PointCloud< PointT > &cloud)
 Convert a VTK PolyData object to a pcl::PointCloud one. More...
 
template<typename PointT >
void pcl::io::vtkStructuredGridToPointCloud (vtkStructuredGrid *const structured_grid, pcl::PointCloud< PointT > &cloud)
 Convert a VTK StructuredGrid object to a pcl::PointCloud one. More...
 

Enumeration Type Documentation

anonymous enum
protected

Device command values.

Enumerator
CMD_READ_START 
CMD_READ_STOP 
CMD_GET_VERSION 
CMD_SEND_DATA 

Definition at line 201 of file dinast_grabber.h.

anonymous enum

we support two versions 1.0 classic 1.1 with texture coordinates addon

Enumerator
IFS_V1_0 
IFS_V1_1 

Definition at line 66 of file ifs_io.h.

anonymous enum

Various PCD file versions.

PCD_V6 represents PCD files with version 0.6, which contain the following fields:

  • lines beginning with # are treated as comments
  • FIELDS ...
  • SIZE ...
  • TYPE ...
  • COUNT ...
  • WIDTH ...
  • HEIGHT ...
  • POINTS ...
  • DATA ascii/binary

Everything that follows DATA is intepreted as data points and will be read accordingly.

PCD_V7 represents PCD files with version 0.7 and has an important addon: it adds sensor origin/orientation (aka viewpoint) information to a dataset through the use of a new header field:

  • VIEWPOINT tx ty tz qw qx qy qz
Enumerator
PCD_V6 
PCD_V7 

Definition at line 81 of file pcd_io.h.

anonymous enum
Enumerator
PLY_V0 
PLY_V1 

Definition at line 80 of file ply_io.h.

Different modes for color mapping.

Enumerator
COLORS_MONO 

Shades of gray (according to label id)

Note
Labels using more than 16 bits will cause problems
COLORS_RGB_RANDOM 

Randomly generated RGB colors.

COLORS_RGB_GLASBEY 

Fixed RGB colors from the Glasbey lookup table, assigned in the ascending order of label id.

Definition at line 268 of file point_cloud_image_extractors.h.

Enumerator
Bilinear 
EdgeAware 
EdgeAwareWeighted 

Definition at line 55 of file openni_image_bayer_grbg.h.

Enumerator
OpenNI_shift_values 
OpenNI_12_bit_depth 

Definition at line 72 of file openni_device.h.

Enumerator
BAYER_GRBG 
YUV422 
RGB 

Definition at line 64 of file openni_image.h.

Enumerator
BAYER_GRBG 
YUV422 
RGB 

Definition at line 65 of file image.h.

enum pcl::HDLGrabber::HDLBlock
protected
Enumerator
BLOCK_0_TO_31 
BLOCK_32_TO_63 

Definition at line 193 of file hdl_grabber.h.

Enumerator
DepthSense_QVGA_30Hz 

Definition at line 70 of file depth_sense_grabber.h.

Enumerator
OpenNI_Default_Mode 
OpenNI_SXGA_15Hz 
OpenNI_VGA_30Hz 
OpenNI_VGA_25Hz 
OpenNI_QVGA_25Hz 
OpenNI_QVGA_30Hz 
OpenNI_QVGA_60Hz 
OpenNI_QQVGA_25Hz 
OpenNI_QQVGA_30Hz 
OpenNI_QQVGA_60Hz 

Definition at line 75 of file openni_grabber.h.

Size of pixel.

Enumerator
RAW8 
RGB16 
RGB24 
RGB32 

Definition at line 181 of file dinast_grabber.h.

Different scaling methods.

  • SCALING_NO - no scaling.
  • SCALING_FULL_RANGE - scales to full range of the output value.
  • SCASING_FIXED_FACTOR - scales by a given fixed factor.
Enumerator
SCALING_NO 
SCALING_FULL_RANGE 
SCALING_FIXED_FACTOR 

Definition at line 146 of file point_cloud_image_extractors.h.

Enumerator
DepthSense_None 
DepthSense_Median 
DepthSense_Average 

Definition at line 75 of file depth_sense_grabber.h.

Function Documentation

template<typename PointT >
static void pcl::io::OrganizedConversion< PointT, false >::convert ( const pcl::PointCloud< PointT > &  cloud_arg,
float  focalLength_arg,
float  disparityShift_arg,
float  disparityScale_arg,
bool  ,
typename std::vector< uint16_t > &  disparityData_arg,
typename std::vector< uint8_t > &   
)
inlinestatic

Convert point cloud to disparity image.

Parameters
[in]cloud_arginput point cloud
[in]focalLength_argfocal length
[in]disparityShift_argdisparity shift
[in]disparityScale_argdisparity scaling
[out]disparityData_argoutput disparity image

Definition at line 96 of file organized_pointcloud_conversion.h.

References pcl::isFinite(), and pcl::PointCloud< PointT >::points.

template<typename PointT >
static void pcl::io::OrganizedConversion< PointT, false >::convert ( typename std::vector< uint16_t > &  disparityData_arg,
typename std::vector< uint8_t > &  ,
bool  ,
size_t  width_arg,
size_t  height_arg,
float  focalLength_arg,
float  disparityShift_arg,
float  disparityScale_arg,
pcl::PointCloud< PointT > &  cloud_arg 
)
inlinestatic

Convert disparity image to point cloud.

Parameters
[in]disparityData_arginput depth image
[in]width_argwidth of disparity image
[in]height_argheight of disparity image
[in]focalLength_argfocal length
[in]disparityShift_argdisparity shift
[in]disparityScale_argdisparity scaling
[out]cloud_argoutput point cloud

Definition at line 142 of file organized_pointcloud_conversion.h.

References pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::points, and pcl::PointCloud< PointT >::width.

template<typename PointT >
static void pcl::io::OrganizedConversion< PointT, false >::convert ( typename std::vector< float > &  depthData_arg,
typename std::vector< uint8_t > &  ,
bool  ,
size_t  width_arg,
size_t  height_arg,
float  focalLength_arg,
pcl::PointCloud< PointT > &  cloud_arg 
)
inlinestatic

Convert disparity image to point cloud.

Parameters
[in]depthData_arginput depth image
[in]width_argwidth of disparity image
[in]height_argheight of disparity image
[in]focalLength_argfocal length
[out]cloud_argoutput point cloud

Definition at line 213 of file organized_pointcloud_conversion.h.

References pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::points, and pcl::PointCloud< PointT >::width.

template<typename PointT >
static void pcl::io::OrganizedConversion< PointT, true >::convert ( const pcl::PointCloud< PointT > &  cloud_arg,
float  focalLength_arg,
float  disparityShift_arg,
float  disparityScale_arg,
bool  convertToMono,
typename std::vector< uint16_t > &  disparityData_arg,
typename std::vector< uint8_t > &  rgbData_arg 
)
inlinestatic

Convert point cloud to disparity image and rgb image.

Parameters
[in]cloud_arginput point cloud
[in]focalLength_argfocal length
[in]disparityShift_argdisparity shift
[in]disparityScale_argdisparity scaling
[in]convertToMonoconvert color to mono/grayscale
[out]disparityData_argoutput disparity image
[out]rgbData_argoutput rgb image

Definition at line 291 of file organized_pointcloud_conversion.h.

References pcl::isFinite(), and pcl::PointCloud< PointT >::points.

template<typename PointT >
static void pcl::io::OrganizedConversion< PointT, true >::convert ( typename std::vector< uint16_t > &  disparityData_arg,
typename std::vector< uint8_t > &  rgbData_arg,
bool  monoImage_arg,
size_t  width_arg,
size_t  height_arg,
float  focalLength_arg,
float  disparityShift_arg,
float  disparityScale_arg,
pcl::PointCloud< PointT > &  cloud_arg 
)
inlinestatic

Convert disparity image to point cloud.

Parameters
[in]disparityData_argoutput disparity image
[in]rgbData_argoutput rgb image
[in]monoImage_arginput image is a single-channel mono image
[in]width_argwidth of disparity image
[in]height_argheight of disparity image
[in]focalLength_argfocal length
[in]disparityShift_argdisparity shift
[in]disparityScale_argdisparity scaling
[out]cloud_argoutput point cloud

Definition at line 383 of file organized_pointcloud_conversion.h.

References pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::points, and pcl::PointCloud< PointT >::width.

template<typename PointT >
static void pcl::io::OrganizedConversion< PointT, true >::convert ( typename std::vector< float > &  depthData_arg,
typename std::vector< uint8_t > &  rgbData_arg,
bool  monoImage_arg,
size_t  width_arg,
size_t  height_arg,
float  focalLength_arg,
pcl::PointCloud< PointT > &  cloud_arg 
)
inlinestatic

Convert disparity image to point cloud.

Parameters
[in]depthData_argoutput disparity image
[in]rgbData_argoutput rgb image
[in]monoImage_arginput image is a single-channel mono image
[in]width_argwidth of disparity image
[in]height_argheight of disparity image
[in]focalLength_argfocal length
[out]cloud_argoutput point cloud

Definition at line 503 of file organized_pointcloud_conversion.h.

References pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::points, and pcl::PointCloud< PointT >::width.

PCL_EXPORTS void pcl::io::decodePNGToImage ( std::vector< uint8_t > &  pngData_arg,
std::vector< uint8_t > &  imageData_arg,
size_t &  width_arg,
size_t &  heigh_argt,
unsigned int &  channels_arg 
)

Decode compressed PNG to 8-bit image.

Parameters
[in]pngData_argPNG compressed input data
[in]imageData_argimage output data
[out]width_argimage width
[out]heigh_argtimage height
[out]channels_argnumber of channels

Referenced by pcl::io::OrganizedPointCloudCompression< PointT >::decodePointCloud().

PCL_EXPORTS void pcl::io::decodePNGToImage ( std::vector< uint8_t > &  pngData_arg,
std::vector< uint16_t > &  imageData_arg,
size_t &  width_arg,
size_t &  height_arg,
unsigned int &  channels_arg 
)

Decode compressed PNG to 16-bit image.

Parameters
[in]pngData_argPNG compressed input data
[in]imageData_argimage output data
[out]width_argimage width
[out]height_argimage height
[out]channels_argnumber of channels
PCL_EXPORTS void pcl::io::encodeMonoImageToPNG ( std::vector< uint8_t > &  image_arg,
size_t  width_arg,
size_t  height_arg,
std::vector< uint8_t > &  pngData_arg,
int  png_level_arg = -1 
)

Encodes 8-bit mono image to PNG format.

Parameters
[in]image_arginput image data
[in]width_argimage width
[in]height_argimage height
[out]pngData_argPNG compressed image data
[in]png_level_argzLib compression level (default level: -1)

Referenced by pcl::io::OrganizedPointCloudCompression< PointT >::encodePointCloud(), and pcl::io::OrganizedPointCloudCompression< PointT >::encodeRawDisparityMapWithColorImage().

PCL_EXPORTS void pcl::io::encodeMonoImageToPNG ( std::vector< uint16_t > &  image_arg,
size_t  width_arg,
size_t  height_arg,
std::vector< uint8_t > &  pngData_arg,
int  png_level_arg = -1 
)

Encodes 16-bit mono image to PNG format.

Parameters
[in]image_arginput image data
[in]width_argimage width
[in]height_argimage height
[out]pngData_argPNG compressed image data
[in]png_level_argzLib compression level (default level: -1)
PCL_EXPORTS void pcl::io::encodeRGBImageToPNG ( std::vector< uint8_t > &  image_arg,
size_t  width_arg,
size_t  height_arg,
std::vector< uint8_t > &  pngData_arg,
int  png_level_arg = -1 
)

Encodes 8-bit RGB image to PNG format.

Parameters
[in]image_arginput image data
[in]width_argimage width
[in]height_argimage height
[out]pngData_argPNG compressed image data
[in]png_level_argzLib compression level (default level: -1)

Referenced by pcl::io::OrganizedPointCloudCompression< PointT >::encodePointCloud(), and pcl::io::OrganizedPointCloudCompression< PointT >::encodeRawDisparityMapWithColorImage().

PCL_EXPORTS void pcl::io::encodeRGBImageToPNG ( std::vector< uint16_t > &  image_arg,
size_t  width_arg,
size_t  height_arg,
std::vector< uint8_t > &  pngData_arg,
int  png_level_arg = -1 
)

Encodes 16-bit RGB image to PNG format.

Parameters
[in]image_arginput image data
[in]width_argimage width
[in]height_argimage height
[out]pngData_argPNG compressed image data
[in]png_level_argzLib compression level (default level: -1)
PCL_EXPORTS int pcl::io::load ( const std::string &  file_name,
pcl::PCLPointCloud2 blob 
)

Load a file into a PointCloud2 according to extension.

Parameters
[in]file_namethe name of the file to load
[out]blobthe resultant pcl::PointCloud2 blob
template<typename PointT >
int pcl::io::load ( const std::string &  file_name,
pcl::PointCloud< PointT > &  cloud 
)

Load a file into a template PointCloud type according to extension.

Parameters
[in]file_namethe name of the file to load
[out]cloudthe resultant templated point cloud

Definition at line 55 of file auto_io.hpp.

References pcl::io::loadIFSFile(), pcl::io::loadPCDFile(), and pcl::io::loadPLYFile().

PCL_EXPORTS int pcl::io::load ( const std::string &  file_name,
pcl::PolygonMesh mesh 
)

Load a file into a PolygonMesh according to extension.

Parameters
[in]file_namethe name of the file to load
[out]meshthe resultant pcl::PolygonMesh
PCL_EXPORTS int pcl::io::load ( const std::string &  file_name,
pcl::TextureMesh mesh 
)

Load a file into a TextureMesh according to extension.

Parameters
[in]file_namethe name of the file to load
[out]meshthe resultant pcl::TextureMesh
int pcl::io::loadIFSFile ( const std::string &  file_name,
pcl::PCLPointCloud2 cloud 
)
inline

Load an IFS file into a PCLPointCloud2 blob type.

Parameters
[in]file_namethe name of the file to load
[out]cloudthe resultant templated point cloud
Returns
0 on success < 0 on error

Definition at line 192 of file ifs_io.h.

References pcl::IFSReader::read().

Referenced by pcl::io::load().

template<typename PointT >
int pcl::io::loadIFSFile ( const std::string &  file_name,
pcl::PointCloud< PointT > &  cloud 
)
inline

Load any IFS file into a templated PointCloud type.

Parameters
[in]file_namethe name of the file to load
[out]cloudthe resultant templated point cloud
Returns
0 on success < 0 on error

Definition at line 207 of file ifs_io.h.

References pcl::IFSReader::read().

int pcl::io::loadIFSFile ( const std::string &  file_name,
pcl::PolygonMesh mesh 
)
inline

Load any IFS file into a PolygonMesh type.

Parameters
[in]file_namethe name of the file to load
[out]meshthe resultant mesh
Returns
0 on success < 0 on error

Definition at line 221 of file ifs_io.h.

References pcl::IFSReader::read().

int pcl::io::loadOBJFile ( const std::string &  file_name,
pcl::PCLPointCloud2 cloud,
Eigen::Vector4f &  origin,
Eigen::Quaternionf &  orientation 
)
inline

Load any OBJ file into a templated PointCloud type.

Parameters
[in]file_namethe name of the file to load
[out]cloudthe resultant templated point cloud
[out]originthe sensor acquisition origin, null
[out]orientationthe sensor acquisition orientation, identity

Definition at line 260 of file obj_io.h.

References pcl::OBJReader::read().

int pcl::io::loadOBJFile ( const std::string &  file_name,
pcl::PCLPointCloud2 cloud 
)
inline

Load an OBJ file into a PCLPointCloud2 blob type.

Parameters
[in]file_namethe name of the file to load
[out]cloudthe resultant templated point cloud
Returns
0 on success < 0 on error

Definition at line 276 of file obj_io.h.

References pcl::OBJReader::read().

template<typename PointT >
int pcl::io::loadOBJFile ( const std::string &  file_name,
pcl::PointCloud< PointT > &  cloud 
)
inline

Load any OBJ file into a templated PointCloud type.

Parameters
[in]file_namethe name of the file to load
[out]cloudthe resultant templated point cloud

Definition at line 288 of file obj_io.h.

References pcl::OBJReader::read().

int pcl::io::loadOBJFile ( const std::string &  file_name,
pcl::PolygonMesh mesh 
)
inline

Load any OBJ file into a PolygonMesh type.

Parameters
[in]file_namethe name of the file to load
[out]meshthe resultant mesh
Returns
0 on success < 0 on error

Definition at line 302 of file obj_io.h.

References pcl::OBJReader::read().

int pcl::io::loadOBJFile ( const std::string &  file_name,
pcl::TextureMesh mesh 
)
inline

Load any OBJ file into a TextureMesh type.

Parameters
[in]file_namethe name of the file to load
[out]meshthe resultant mesh
Returns
0 on success < 0 on error

Definition at line 316 of file obj_io.h.

References pcl::OBJReader::read().

int pcl::io::loadPCDFile ( const std::string &  file_name,
pcl::PCLPointCloud2 cloud 
)
inline

Load a PCD v.6 file into a templated PointCloud type.

Any PCD files > v.6 will generate a warning as a pcl/PCLPointCloud2 message cannot hold the sensor origin.

Parameters
[in]file_namethe name of the file to load
[out]cloudthe resultant templated point cloud

Definition at line 512 of file pcd_io.h.

References pcl::PCDReader::read().

Referenced by pcl::io::load(), ObjectRecognition::populateDatabase(), and pcl::outofcore::OutofcoreOctreeDiskContainer< PointT >::read().

int pcl::io::loadPCDFile ( const std::string &  file_name,
pcl::PCLPointCloud2 cloud,
Eigen::Vector4f &  origin,
Eigen::Quaternionf &  orientation 
)
inline

Load any PCD file into a templated PointCloud type.

Parameters
[in]file_namethe name of the file to load
[out]cloudthe resultant templated point cloud
[out]originthe sensor acquisition origin (only for > PCD_V7 - null if not present)
[out]orientationthe sensor acquisition orientation (only for > PCD_V7 - identity if not present)

Definition at line 527 of file pcd_io.h.

References pcl::PCDReader::read().

template<typename PointT >
int pcl::io::loadPCDFile ( const std::string &  file_name,
pcl::PointCloud< PointT > &  cloud 
)
inline

Load any PCD file into a templated PointCloud type.

Parameters
[in]file_namethe name of the file to load
[out]cloudthe resultant templated point cloud

Definition at line 541 of file pcd_io.h.

References pcl::PCDReader::read().

int pcl::io::loadPLYFile ( const std::string &  file_name,
pcl::PCLPointCloud2 cloud 
)
inline

Load a PLY v.6 file into a templated PointCloud type.

Any PLY files containg sensor data will generate a warning as a pcl/PCLPointCloud2 message cannot hold the sensor origin.

Parameters
[in]file_namethe name of the file to load
[in]cloudthe resultant templated point cloud

Definition at line 743 of file ply_io.h.

References pcl::PLYReader::read().

Referenced by pcl::io::load().

int pcl::io::loadPLYFile ( const std::string &  file_name,
pcl::PCLPointCloud2 cloud,
Eigen::Vector4f &  origin,
Eigen::Quaternionf &  orientation 
)
inline

Load any PLY file into a templated PointCloud type.

Parameters
[in]file_namethe name of the file to load
[in]cloudthe resultant templated point cloud
[in]originthe sensor acquisition origin (only for > PLY_V7 - null if not present)
[in]orientationthe sensor acquisition orientation if availble, identity if not present

Definition at line 758 of file ply_io.h.

References pcl::PLYReader::read().

template<typename PointT >
int pcl::io::loadPLYFile ( const std::string &  file_name,
pcl::PointCloud< PointT > &  cloud 
)
inline

Load any PLY file into a templated PointCloud type.

Parameters
[in]file_namethe name of the file to load
[in]cloudthe resultant templated point cloud

Definition at line 772 of file ply_io.h.

References pcl::PLYReader::read().

int pcl::io::loadPLYFile ( const std::string &  file_name,
pcl::PolygonMesh mesh 
)
inline

Load a PLY file into a PolygonMesh type.

Any PLY files containg sensor data will generate a warning as a pcl/PolygonMesh message cannot hold the sensor origin.

Parameters
[in]file_namethe name of the file to load
[in]meshthe resultant polygon mesh

Definition at line 788 of file ply_io.h.

References pcl::PLYReader::read().

PCL_EXPORTS int pcl::io::loadPolygonFile ( const std::string &  file_name,
pcl::PolygonMesh mesh 
)

Load a PolygonMesh object given an input file name, based on the file extension.

Parameters
[in]file_namethe name of the file containing the polygon data
[out]meshthe object that we want to load the data in
PCL_EXPORTS int pcl::io::loadPolygonFileOBJ ( const std::string &  file_name,
pcl::PolygonMesh mesh 
)

Load an OBJ file into a PolygonMesh object.

Parameters
[in]file_namethe name of the file that contains the data
[out]meshthe object that we want to load the data in
PCL_EXPORTS int pcl::io::loadPolygonFileOBJ ( const std::string &  file_name,
pcl::TextureMesh mesh 
)

Load an OBJ file into a TextureMesh object.

Note
In addition to the loadPolygonFileOBJ (const std::string, pcl::PolygonMesh&) method, this method also loads the uv-coordinates from the file. It does not load the material information.
Parameters
[in]file_namethe name of the file that contains the data
[out]meshthe object that we want to load the data in
PCL_EXPORTS int pcl::io::loadPolygonFilePLY ( const std::string &  file_name,
pcl::PolygonMesh mesh 
)

Load a PLY file into a PolygonMesh object.

Parameters
[in]file_namethe name of the file that contains the data
[out]meshthe object that we want to load the data in
PCL_EXPORTS int pcl::io::loadPolygonFileSTL ( const std::string &  file_name,
pcl::PolygonMesh mesh 
)

Load an STL file into a PolygonMesh object.

Parameters
[in]file_namethe name of the file that contains the data
[out]meshthe object that we want to load the data in
PCL_EXPORTS int pcl::io::loadPolygonFileVTK ( const std::string &  file_name,
pcl::PolygonMesh mesh 
)

Load a VTK file into a PolygonMesh object.

Parameters
[in]file_namethe name of the file that contains the data
[out]meshthe object that we want to load the data in
template<typename PointT >
void pcl::io::pointCloudTovtkPolyData ( const pcl::PointCloud< PointT > &  cloud,
vtkPolyData *const  polydata 
)

Convert a pcl::PointCloud object to a VTK PolyData one.

Parameters
[in]cloudthe input pcl::PointCloud object
[out]polydatathe resultant VTK PolyData object

Definition at line 281 of file vtk_lib_io.hpp.

References pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::points, and pcl::PointCloud< PointT >::size().

PCL_EXPORTS void pcl::io::pointCloudTovtkPolyData ( const pcl::PCLPointCloud2Ptr cloud,
vtkSmartPointer< vtkPolyData > &  poly_data 
)

Convert a PCLPointCloud2 object to a VTK PolyData object.

Parameters
[in]cloudthe input PCLPointCloud2Ptr object
[out]poly_datathe resultant VTK PolyData object
template<typename PointT >
void pcl::io::pointCloudTovtkStructuredGrid ( const pcl::PointCloud< PointT > &  cloud,
vtkStructuredGrid *const  structured_grid 
)

Convert a pcl::PointCloud object to a VTK StructuredGrid one.

Parameters
[in]cloudthe input pcl::PointCloud object
[out]structured_gridthe resultant VTK StructuredGrid object

Definition at line 393 of file vtk_lib_io.hpp.

References pcl::PointCloud< PointT >::height, pcl::isFinite(), and pcl::PointCloud< PointT >::width.

PCL_EXPORTS int pcl::io::save ( const std::string &  file_name,
const pcl::PCLPointCloud2 blob,
unsigned  precision = 5 
)

Save point cloud data to a binary file when available else to ASCII.

Parameters
[in]file_namethe output file name
[in]blobthe point cloud data message
[in]precisionfloat precision when saving to ASCII files

Referenced by pcl::RSDEstimation< PointInT, PointNT, PointOutT >::setSaveHistograms().

template<typename PointT >
int pcl::io::save ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud,
unsigned  precision = 5 
)

Save point cloud to a binary file when available else to ASCII.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud
[in]precisionfloat precision when saving to ASCII files
PCL_EXPORTS int pcl::io::save ( const std::string &  file_name,
const pcl::TextureMesh tex_mesh,
unsigned  precision = 5 
)

Saves a TextureMesh to a binary file when available else to ASCII.

Parameters
[in]file_namethe name of the file to write to disk
[in]tex_meshthe texture mesh to save
[in]precisionfloat precision when saving to ASCII files
PCL_EXPORTS int pcl::io::save ( const std::string &  file_name,
const pcl::PolygonMesh mesh,
unsigned  precision = 5 
)

Saves a PolygonMesh to a binary file when available else to ASCII.

Parameters
[in]file_namethe name of the file to write to disk
[in]meshthe polygonal mesh to save
[in]precisionfloat precision when saving to ASCII files
PCL_EXPORTS void pcl::io::saveCharPNGFile ( const std::string &  file_name,
const unsigned char *  mono_image,
int  width,
int  height,
int  channels 
)

Saves 8-bit encoded image to PNG file.

Parameters
[in]file_namethe name of the file to write to disk
[in]mono_imageimage grayscale data
[in]widthimage width
[in]heightimage height
[in]channelsnumber of channels
int pcl::io::saveIFSFile ( const std::string &  file_name,
const pcl::PCLPointCloud2 cloud 
)
inline

Save point cloud data to an IFS file containing 3D points.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message
Returns
0 on success < 0 on error

Definition at line 236 of file ifs_io.h.

References pcl::IFSWriter::write().

Referenced by pcl::io::save().

template<typename PointT >
int pcl::io::saveIFSFile ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud 
)

Save point cloud data to an IFS file containing 3D points.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud
Returns
0 on success < 0 on error

Definition at line 250 of file ifs_io.h.

References pcl::IFSWriter::write().

PCL_EXPORTS int pcl::io::saveOBJFile ( const std::string &  file_name,
const pcl::TextureMesh tex_mesh,
unsigned  precision = 5 
)

Saves a TextureMesh in ascii OBJ format.

Parameters
[in]file_namethe name of the file to write to disk
[in]tex_meshthe texture mesh to save
[in]precisionthe output ASCII precision
PCL_EXPORTS int pcl::io::saveOBJFile ( const std::string &  file_name,
const pcl::PolygonMesh mesh,
unsigned  precision = 5 
)

Saves a PolygonMesh in ascii PLY format.

Parameters
[in]file_namethe name of the file to write to disk
[in]meshthe polygonal mesh to save
[in]precisionthe output ASCII precision default 5
int pcl::io::savePCDFile ( const std::string &  file_name,
const pcl::PCLPointCloud2 cloud,
const Eigen::Vector4f &  origin = Eigen::Vector4f::Zero (),
const Eigen::Quaternionf &  orientation = Eigen::Quaternionf::Identity (),
const bool  binary_mode = false 
)
inline

Save point cloud data to a PCD file containing n-D points.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message
[in]originthe sensor acquisition origin
[in]orientationthe sensor acquisition orientation
[in]binary_modetrue for binary mode, false (default) for ASCII

Caution: PointCloud structures containing an RGB field have traditionally used packed float values to store RGB data. Storing a float as ASCII can introduce variations to the smallest bits, and thus significantly alter the data. This is a known issue, and the fix involves switching RGB data to be stored as a packed integer in future versions of PCL.

Definition at line 563 of file pcd_io.h.

References pcl::PCDWriter::write().

Referenced by pcl::io::save().

template<typename PointT >
int pcl::io::savePCDFile ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud,
bool  binary_mode = false 
)
inline

Templated version for saving point cloud data to a PCD file containing a specific given cloud format.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message
[in]binary_modetrue for binary mode, false (default) for ASCII

Caution: PointCloud structures containing an RGB field have traditionally used packed float values to store RGB data. Storing a float as ASCII can introduce variations to the smallest bits, and thus significantly alter the data. This is a known issue, and the fix involves switching RGB data to be stored as a packed integer in future versions of PCL.

Definition at line 587 of file pcd_io.h.

References pcl::PCDWriter::write().

template<typename PointT >
int pcl::io::savePCDFile ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud,
const std::vector< int > &  indices,
const bool  binary_mode = false 
)

Templated version for saving point cloud data to a PCD file containing a specific given cloud format.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message
[in]indicesthe set of indices to save
[in]binary_modetrue for binary mode, false (default) for ASCII

Caution: PointCloud structures containing an RGB field have traditionally used packed float values to store RGB data. Storing a float as ASCII can introduce variations to the smallest bits, and thus significantly alter the data. This is a known issue, and the fix involves switching RGB data to be stored as a packed integer in future versions of PCL.

Definition at line 650 of file pcd_io.h.

References pcl::PCDWriter::write().

template<typename PointT >
int pcl::io::savePCDFileASCII ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud 
)
inline

Templated version for saving point cloud data to a PCD file containing a specific given cloud format.

This version is to retain backwards compatibility.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message

Caution: PointCloud structures containing an RGB field have traditionally used packed float values to store RGB data. Storing a float as ASCII can introduce variations to the smallest bits, and thus significantly alter the data. This is a known issue, and the fix involves switching RGB data to be stored as a packed integer in future versions of PCL.

Definition at line 610 of file pcd_io.h.

References pcl::PCDWriter::write().

template<typename PointT >
int pcl::io::savePCDFileBinary ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud 
)
inline

Templated version for saving point cloud data to a PCD file containing a specific given cloud format.

The resulting file will be an uncompressed binary.

This version is to retain backwards compatibility.
Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message

Definition at line 626 of file pcd_io.h.

References pcl::PCDWriter::write().

template<typename PointT >
int pcl::io::savePCDFileBinaryCompressed ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud 
)
inline

Templated version for saving point cloud data to a PCD file containing a specific given cloud format.

This method will write a compressed binary file.

This version is to retain backwards compatibility.
Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message

Definition at line 671 of file pcd_io.h.

References pcl::PCDWriter::writeBinaryCompressed().

int pcl::io::savePLYFile ( const std::string &  file_name,
const pcl::PCLPointCloud2 cloud,
const Eigen::Vector4f &  origin = Eigen::Vector4f::Zero (),
const Eigen::Quaternionf &  orientation = Eigen::Quaternionf::Identity (),
bool  binary_mode = false,
bool  use_camera = true 
)
inline

Save point cloud data to a PLY file containing n-D points.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message
[in]originthe sensor data acquisition origin (translation)
[in]orientationthe sensor data acquisition origin (rotation)
[in]binary_modetrue for binary mode, false (default) for ASCII
[in]use_camera

Definition at line 804 of file ply_io.h.

References pcl::PLYWriter::write().

Referenced by pcl::gpu::kinfuLS::StandaloneMarchingCubes< PointT >::getMeshesFromTSDFVector(), and pcl::io::save().

template<typename PointT >
int pcl::io::savePLYFile ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud,
bool  binary_mode = false 
)
inline

Templated version for saving point cloud data to a PLY file containing a specific given cloud format.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message
[in]binary_modetrue for binary mode, false (default) for ASCII

Definition at line 821 of file ply_io.h.

References pcl::PLYWriter::write().

template<typename PointT >
int pcl::io::savePLYFile ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud,
const std::vector< int > &  indices,
bool  binary_mode = false 
)

Templated version for saving point cloud data to a PLY file containing a specific given cloud format.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message
[in]indicesthe set of indices to save
[in]binary_modetrue for binary mode, false (default) for ASCII

Definition at line 860 of file ply_io.h.

References pcl::copyPointCloud(), and pcl::PLYWriter::write().

PCL_EXPORTS int pcl::io::savePLYFile ( const std::string &  file_name,
const pcl::PolygonMesh mesh,
unsigned  precision = 5 
)

Saves a PolygonMesh in ascii PLY format.

Parameters
[in]file_namethe name of the file to write to disk
[in]meshthe polygonal mesh to save
[in]precisionthe output ASCII precision default 5
template<typename PointT >
int pcl::io::savePLYFileASCII ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud 
)
inline

Templated version for saving point cloud data to a PLY file containing a specific given cloud format.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message

Definition at line 834 of file ply_io.h.

References pcl::PLYWriter::write().

template<typename PointT >
int pcl::io::savePLYFileBinary ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud 
)
inline

Templated version for saving point cloud data to a PLY file containing a specific given cloud format.

Parameters
[in]file_namethe output file name
[in]cloudthe point cloud data message

Definition at line 846 of file ply_io.h.

References pcl::PLYWriter::write().

PCL_EXPORTS int pcl::io::savePLYFileBinary ( const std::string &  file_name,
const pcl::PolygonMesh mesh 
)

Saves a PolygonMesh in binary PLY format.

Parameters
[in]file_namethe name of the file to write to disk
[in]meshthe polygonal mesh to save
PCL_EXPORTS void pcl::io::savePNGFile ( const std::string &  file_name,
const pcl::PointCloud< unsigned char > &  cloud 
)

Saves 8-bit grayscale cloud as image to PNG file.

Parameters
[in]file_namethe name of the file to write to disk
[in]cloudpoint cloud to save

Referenced by pcl::io::savePNGFile().

PCL_EXPORTS void pcl::io::savePNGFile ( const std::string &  file_name,
const pcl::PointCloud< unsigned short > &  cloud 
)

Saves 16-bit grayscale cloud as image to PNG file.

Parameters
[in]file_namethe name of the file to write to disk
[in]cloudpoint cloud to save
PCL_EXPORTS void pcl::io::savePNGFile ( const std::string &  file_name,
const pcl::PCLImage image 
)

Saves a PCLImage (formely ROS sensor_msgs::Image) to PNG file.

Parameters
[in]file_namethe name of the file to write to disk
[in]imageimage to save
Note
Currently only "rgb8", "mono8", and "mono16" image encodings are supported.
template<typename T >
void pcl::io::savePNGFile ( const std::string &  file_name,
const pcl::PointCloud< T > &  cloud 
)

Saves RGB fields of cloud as image to PNG file.

Parameters
[in]file_namethe name of the file to write to disk
[in]cloudpoint cloud to save

Definition at line 123 of file png_io.h.

References pcl::io::saveRgbPNGFile().

PCL_EXPORTS void pcl::io::savePNGFile ( const std::string &  file_name,
const pcl::PointCloud< pcl::PointXYZL > &  cloud 
)

Saves Labeled Point cloud as image to PNG file.

Parameters
[in]file_namethe name of the file to write to disk
[in]cloudpoint cloud to save

Warning: Converts to 16 bit (for png), labels using more than 16 bits will cause problems

template<typename PointT >
void pcl::io::savePNGFile ( const std::string &  file_name,
const pcl::PointCloud< PointT > &  cloud,
const std::string &  field_name 
)

Saves the data from the specified field of the point cloud as image to PNG file.

Parameters
[in]file_namethe name of the file to write to disk
[in]cloudpoint cloud to save
[in]field_namethe name of the field to extract data from

Definition at line 156 of file png_io.h.

References pcl::io::savePNGFile().

PCL_EXPORTS bool pcl::io::savePolygonFile ( const std::string &  file_name,
const pcl::PolygonMesh mesh,
const bool  binary_format = true 
)

Save a PolygonMesh object given an input file name, based on the file extension.

Parameters
[in]file_namethe name of the file to save the data to
[in]meshthe object that contains the data
[in]binary_formatif true, exported file is in binary format
Returns
True if successful, false otherwise
PCL_EXPORTS bool pcl::io::savePolygonFilePLY ( const std::string &  file_name,
const pcl::PolygonMesh mesh,
const bool  binary_format = true 
)

Save a PolygonMesh object into a PLY file.

Parameters
[in]file_namethe name of the file to save the data to
[in]meshthe object that contains the data
[in]binary_formatif true, exported file is in binary format
Returns
True if successful, false otherwise
PCL_EXPORTS bool pcl::io::savePolygonFileSTL ( const std::string &  file_name,
const pcl::PolygonMesh mesh,
const bool  binary_format = true 
)

Save a PolygonMesh object into an STL file.

Parameters
[in]file_namethe name of the file to save the data to
[in]meshthe object that contains the data
[in]binary_formatif true, exported file is in binary format
Returns
True if successful, false otherwise
PCL_EXPORTS bool pcl::io::savePolygonFileVTK ( const std::string &  file_name,
const pcl::PolygonMesh mesh,
const bool  binary_format = true 
)

Save a PolygonMesh object into a VTK file.

Parameters
[in]file_namethe name of the file to save the data to
[in]meshthe object that contains the data
[in]binary_formatif true, exported file is in binary format
Returns
True if successful, false otherwise
PCL_EXPORTS void pcl::io::saveRangeImagePlanarFilePNG ( const std::string &  file_name,
const pcl::RangeImagePlanar range_image 
)

Write a RangeImagePlanar object to a PNG file.

Parameters
[in]file_namethe name of the file to save the data to
[in]range_imagethe object that contains the data
PCL_EXPORTS void pcl::io::saveRgbPNGFile ( const std::string &  file_name,
const unsigned char *  rgb_image,
int  width,
int  height 
)

Saves 8-bit encoded RGB image to PNG file.

Parameters
[in]file_namethe name of the file to write to disk
[in]rgb_imageimage rgb data
[in]widthimage width
[in]heightimage height

Referenced by pcl::io::savePNGFile().

PCL_EXPORTS void pcl::io::saveShortPNGFile ( const std::string &  file_name,
const unsigned short *  short_image,
int  width,
int  height,
int  channels 
)

Saves 16-bit encoded image to PNG file.

Parameters
[in]file_namethe name of the file to write to disk
[in]short_imageimage short data
[in]widthimage width
[in]heightimage height
[in]channelsnumber of channels
PCL_EXPORTS int pcl::io::saveVTKFile ( const std::string &  file_name,
const pcl::PolygonMesh triangles,
unsigned  precision = 5 
)

Saves a PolygonMesh in ascii VTK format.

Parameters
[in]file_namethe name of the file to write to disk
[in]trianglesthe polygonal mesh to save
[in]precisionthe output ASCII precision
PCL_EXPORTS int pcl::io::saveVTKFile ( const std::string &  file_name,
const pcl::PCLPointCloud2 cloud,
unsigned  precision = 5 
)

Saves a PointCloud in ascii VTK format.

Parameters
[in]file_namethe name of the file to write to disk
[in]cloudthe point cloud to save
[in]precisionthe output ASCII precision
template<typename PointT >
void pcl::io::vtkPolyDataToPointCloud ( vtkPolyData *const  polydata,
pcl::PointCloud< PointT > &  cloud 
)

Convert a VTK PolyData object to a pcl::PointCloud one.

Parameters
[in]polydatathe input VTK PolyData object
[out]cloudthe resultant pcl::PointCloud object

Definition at line 66 of file vtk_lib_io.hpp.

References pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::points, and pcl::PointCloud< PointT >::width.

template<typename PointT >
void pcl::io::vtkStructuredGridToPointCloud ( vtkStructuredGrid *const  structured_grid,
pcl::PointCloud< PointT > &  cloud 
)

Convert a VTK StructuredGrid object to a pcl::PointCloud one.

Parameters
[in]structured_gridthe input VTK StructuredGrid object
[out]cloudthe resultant pcl::PointCloud object

Definition at line 155 of file vtk_lib_io.hpp.

References pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::points, and pcl::PointCloud< PointT >::width.