Point Cloud Data (PCD) file format reader.
More...
#include <pcl/io/pcd_io.h>
|
| | PCDReader () |
| | Empty constructor. More...
|
| |
| | ~PCDReader () |
| | Empty destructor. More...
|
| |
| int | readHeader (const std::string &file_name, sensor_msgs::PointCloud2 &cloud, Eigen::Vector4f &origin, Eigen::Quaternionf &orientation, int &pcd_version, int &data_type, unsigned int &data_idx, const int offset=0) |
| | Read a point cloud data header from a PCD file. More...
|
| |
| int | readHeader (const std::string &file_name, sensor_msgs::PointCloud2 &cloud, const int offset=0) |
| | Read a point cloud data header from a PCD file. More...
|
| |
| int | readHeaderEigen (const std::string &file_name, pcl::PointCloud< Eigen::MatrixXf > &cloud, int &pcd_version, int &data_type, unsigned int &data_idx, const int offset=0) |
| | Read a point cloud data header from a PCD file. More...
|
| |
| int | read (const std::string &file_name, sensor_msgs::PointCloud2 &cloud, Eigen::Vector4f &origin, Eigen::Quaternionf &orientation, int &pcd_version, const int offset=0) |
| | Read a point cloud data from a PCD file and store it into a sensor_msgs/PointCloud2. More...
|
| |
| int | read (const std::string &file_name, sensor_msgs::PointCloud2 &cloud, const int offset=0) |
| | Read a point cloud data from a PCD (PCD_V6) and store it into a sensor_msgs/PointCloud2. More...
|
| |
| template<typename PointT > |
| int | read (const std::string &file_name, pcl::PointCloud< PointT > &cloud, const int offset=0) |
| | Read a point cloud data from any PCD file, and convert it to the given template format. More...
|
| |
| int | readEigen (const std::string &file_name, pcl::PointCloud< Eigen::MatrixXf > &cloud, const int offset=0) |
| | Read a point cloud data from any PCD file, and convert it to a pcl::PointCloud<Eigen::MatrixXf> format. More...
|
| |
Point Cloud Data (PCD) file format reader.
- Author
- Radu Bogdan Rusu
Definition at line 52 of file pcd_io.h.
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
Definition at line 80 of file pcd_io.h.
| pcl::PCDReader::PCDReader |
( |
| ) |
|
|
inline |
Empty constructor.
Definition at line 56 of file pcd_io.h.
| pcl::PCDReader::~PCDReader |
( |
| ) |
|
|
inline |
Empty destructor.
Definition at line 58 of file pcd_io.h.
| int pcl::PCDReader::read |
( |
const std::string & |
file_name, |
|
|
sensor_msgs::PointCloud2 & |
cloud, |
|
|
Eigen::Vector4f & |
origin, |
|
|
Eigen::Quaternionf & |
orientation, |
|
|
int & |
pcd_version, |
|
|
const int |
offset = 0 |
|
) |
| |
|
virtual |
Read a point cloud data from a PCD file and store it into a sensor_msgs/PointCloud2.
- Parameters
-
| [in] | file_name | the name of the file containing the actual PointCloud data |
| [out] | cloud | the resultant PointCloud message read from disk |
| [out] | origin | the sensor acquisition origin (only for > PCD_V7 - null if not present) |
| [out] | orientation | the sensor acquisition orientation (only for > PCD_V7 - identity if not present) |
| [out] | pcd_version | the PCD version of the file (either PCD_V6 or PCD_V7) |
| [in] | offset | the offset of where to expect the PCD Header in the file (optional parameter). One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple PCD files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
- Returns
- < 0 (-1) on error
- == 0 on success
Implements pcl::FileReader.
Read a point cloud data from a PCD (PCD_V6) and store it into a sensor_msgs/PointCloud2.
- Note
- This function is provided for backwards compatibility only and it can only read PCD_V6 files correctly, as sensor_msgs::PointCloud2 does not contain a sensor origin/orientation. Reading any file
PCD_V6 will generate a warning.
- Parameters
-
| [in] | file_name | the name of the file containing the actual PointCloud data |
| [out] | cloud | the resultant PointCloud message read from disk |
| [in] | offset | the offset of where to expect the PCD Header in the file (optional parameter). One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple PCD files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
- Returns
- < 0 (-1) on error
- == 0 on success
template<typename PointT >
| int pcl::PCDReader::read |
( |
const std::string & |
file_name, |
|
|
pcl::PointCloud< PointT > & |
cloud, |
|
|
const int |
offset = 0 |
|
) |
| |
|
inline |
Read a point cloud data from any PCD file, and convert it to the given template format.
- Parameters
-
| [in] | file_name | the name of the file containing the actual PointCloud data |
| [out] | cloud | the resultant PointCloud message read from disk |
| [in] | offset | the offset of where to expect the PCD Header in the file (optional parameter). One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple PCD files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
- Returns
- < 0 (-1) on error
- == 0 on success
Definition at line 233 of file pcd_io.h.
| int pcl::PCDReader::readEigen |
( |
const std::string & |
file_name, |
|
|
pcl::PointCloud< Eigen::MatrixXf > & |
cloud, |
|
|
const int |
offset = 0 |
|
) |
| |
Read a point cloud data from any PCD file, and convert it to a pcl::PointCloud<Eigen::MatrixXf> format.
- Attention
- The PCD data is always stored in ROW major format! The read/write PCD methods will detect column major input and automatically convert it.
- Parameters
-
| [in] | file_name | the name of the file containing the actual PointCloud data |
| [out] | cloud | the resultant PointCloud message read from disk |
| [in] | offset | the offset of where to expect the PCD Header in the file (optional parameter). One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple PCD files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
- Returns
- < 0 (-1) on error
- == 0 on success
| int pcl::PCDReader::readHeader |
( |
const std::string & |
file_name, |
|
|
sensor_msgs::PointCloud2 & |
cloud, |
|
|
Eigen::Vector4f & |
origin, |
|
|
Eigen::Quaternionf & |
orientation, |
|
|
int & |
pcd_version, |
|
|
int & |
data_type, |
|
|
unsigned int & |
data_idx, |
|
|
const int |
offset = 0 |
|
) |
| |
|
virtual |
Read a point cloud data header from a PCD file.
Load only the meta information (number of points, their types, etc), and not the points themselves, from a given PCD file. Useful for fast evaluation of the underlying data structure.
- Attention
- The PCD data is always stored in ROW major format! The read/write PCD methods will detect column major input and automatically convert it.
- Parameters
-
| [in] | file_name | the name of the file to load |
| [out] | cloud | the resultant point cloud dataset (only the header will be filled) |
| [out] | origin | the sensor acquisition origin (only for > PCD_V7 - null if not present) |
| [out] | orientation | the sensor acquisition orientation (only for > PCD_V7 - identity if not present) |
| [out] | pcd_version | the PCD version of the file (i.e., PCD_V6, PCD_V7) |
| [out] | data_type | the type of data (0 = ASCII, 1 = Binary, 2 = Binary compressed) |
| [out] | data_idx | the offset of cloud data within the file |
| [in] | offset | the offset of where to expect the PCD Header in the file (optional parameter). One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple PCD files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
- Returns
- < 0 (-1) on error
- == 0 on success
Implements pcl::FileReader.
| int pcl::PCDReader::readHeader |
( |
const std::string & |
file_name, |
|
|
sensor_msgs::PointCloud2 & |
cloud, |
|
|
const int |
offset = 0 |
|
) |
| |
Read a point cloud data header from a PCD file.
Load only the meta information (number of points, their types, etc), and not the points themselves, from a given PCD file. Useful for fast evaluation of the underlying data structure.
- Attention
- The PCD data is always stored in ROW major format! The read/write PCD methods will detect column major input and automatically convert it.
- Parameters
-
| [in] | file_name | the name of the file to load |
| [out] | cloud | the resultant point cloud dataset (only the header will be filled) |
| [in] | offset | the offset of where to expect the PCD Header in the file (optional parameter). One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple PCD files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
- Returns
- < 0 (-1) on error
- == 0 on success
| int pcl::PCDReader::readHeaderEigen |
( |
const std::string & |
file_name, |
|
|
pcl::PointCloud< Eigen::MatrixXf > & |
cloud, |
|
|
int & |
pcd_version, |
|
|
int & |
data_type, |
|
|
unsigned int & |
data_idx, |
|
|
const int |
offset = 0 |
|
) |
| |
Read a point cloud data header from a PCD file.
Load only the meta information (number of points, their types, etc), and not the points themselves, from a given PCD file. Useful for fast evaluation of the underlying data structure.
- Attention
- The PCD data is always stored in ROW major format! The read/write PCD methods will detect column major input and automatically convert it.
- Parameters
-
| [in] | file_name | the name of the file to load |
| [out] | cloud | the resultant point cloud dataset (only the properties will be filled) |
| [out] | pcd_version | the PCD version of the file (either PCD_V6 or PCD_V7) |
| [out] | data_type | the type of data (0 = ASCII, 1 = Binary, 2 = Binary compressed) |
| [out] | data_idx | the offset of cloud data within the file |
| [in] | offset | the offset of where to expect the PCD Header in the file (optional parameter). One usage example for setting the offset parameter is for reading data from a TAR "archive containing multiple PCD files: TAR files always add a 512 byte header in front of the actual file, so set the offset to the next byte after the header (e.g., 513). |
- Returns
- < 0 (-1) on error
- == 0 on success
The documentation for this class was generated from the following file:
- /builddir/build/BUILD/PCL-1.6.0-Source/io/include/pcl/io/pcd_io.h