- 简介
- 主要类说明
- 1. class pcl::FileReader
- 2. class pcl::FileWriter
- 3. class pcl::FileGrabber
- 4. class pcl::Grabber
- 5. class openni_wrapper::OpenNIDevice
- 6. class openni_wrapper::OpenNIDriver
- 7. class openni_wrapper::OpenNIException
- 8. class openni_wrapper::Image
- 9. class openni_wrapper::IRImage
- 10. class openni_wrapper::ShiftToDepthConverter
- 11. class pcl::io::IOException
- 12. class pcl::io::Image
- 13. class pcl::io::IRImage
- 14. class pcl::io::frameWrapper
- 15. class pcl::io::LZFImageReader
- 17. class pcl::io::LZFImageWriter
- 18. class pcl::io::PointCloudImageExtractor
- IO模块LZF压缩/解压函数
PCL库中所有 *** 作都是依赖于展开后的点云数据(即点运数据未进行任何数据压缩 *** 作),利用不同的设备获取/处理点云数据都是点云处理前后必须要做的流程,PCL中有自己设计的内部PCD文件格式,因此设计读写该格式以及与其他3D文件格式之间进行转化的接口类都是必要的。
I/O模块提供了点云文件输入输出相关的 *** 作类,并封装了openNI兼容的设备源数据获取接口,可直接从感知设备获取点云图像等数据。I/O模块对点云的获取、读入、存储等相关 *** 作进行了封装,其依赖与pcl_common外部库。
类FileReader定义了关于读文件的 *** 作接口(即纯虚函数),它是一个抽象类。它的派生类主要有pcl::PCDReader、pcl::PLYReader、pcl::ASCIIReader和pcl::OBJReader。
类PCDReader主要用于读取pcd文件格式的文件的 *** 作类,支持PCD的PCD_V7和PCD_V6版本;PCD文件格式:https://blog.csdn.net/CFH1021/article/details/121243009。
类PLYReader用于读取ply(Point Cloud Data)格式文件的 *** 作类。
类ASCIIReader用于读取ascii格式的文件。
类FileWriter定义了写入文件的 *** 作接口(即纯虚函数),他是一个抽象类。它的派生类主要有pcl::PCDWriter和pcl::PLYWriter。
类PCDWriter用于写入PCD格式文件,默认是PCD_V7版本。
类PLYWriter用于写入ply(Point Cloud Data)格式文件。
类FileGrabber为在固定大小输入上 *** 作的Grabbers定义了一个容器式的接口,该类数据抽象类。它的派生类有pcl::PCDGrabber
类Grabber为PCL1.x对应的设备驱动接口的基类定义。它的派生类有pcl::ONIGrabber(ONI提取器)、pcl::DinastGrabber(Dinast设备提取器)、pcl::HDLGrabber(Velodyne高清晰度激光器的抓取器)、pcl::RealSenseGrabber、pcl::DepthSenseGrabber(深度感应设备的提取器,例如:Creative Senz3D, SoftKinetic DS325)、pcl::EnsensoGrabber(Ensenso设备进行IDS成像的提取器)、pcl::OpenNIGrabber(OpenNI设备提取器,例如Primesense PSDK, Microsoft Kinect, Asus XTion Pro/Live)、pcl::OpenNI2Grabber(OpenNI2设备提取器,例如Primesense PSDK, Microsoft Kinect, Asus XTion Pro/Live)、pcl::ImageGrabberbase(图像文件提取器基类)、pcl::RobotEyeGrabber(视觉机器人机器人眼传感器提取器)、pcl::PCDGrabberbase(PCD文件提取器基类)、pcl::DavidSDKGrabber(davidSDK结构光兼容设备的抓取器)、pcl::PCDGrabber
类OpenNIDevice定义了OpenNI设备的基类,它的派生类可以用于实现不用OpenNI设备,用于抓取包括红外数据、RGB数据、深度图像数据等。派生类有openni_wrapper::DeviceKinect(MS Kinect设备接口实现)、openni_wrapper::DeviceONI(用于播放ONI文件的虚拟设备的接口实现)、openni_wrapper::DeviceXtionPro(Asus Xtion Pro设备接口实现)和openni_wrapper::DevicePrimesense(Primesense device设备接口实现)。
6. class openni_wrapper::OpenNIDriver类OpenNIDriver采用到哪里模式实现对底层驱动的封装,里面包含一个xn::Context对象,提供给所有设备使用。该类提供了枚举和访问所有设备的方法的实现。
7. class openni_wrapper::OpenNIException类OpenNIException是用于异常处理的实现;它继承于std::exception。
8. class openni_wrapper::Image类Image是指包含一个对图像元数据的引用的抽象类,因此,该类提供一个接扩来填充RGB或者灰度图像缓冲区。它的派生类有openni_wrapper::ImageBayerGRBG、openni_wrapper::ImageRGB24和openni_wrapper::ImageYUV422。
9. class openni_wrapper::IRImage类IRImage主要包含一个对IR元数据的引用。
10. class openni_wrapper::ShiftToDepthConverter类ShiftToDepthConverter提供openni 11位移位数据到深度的转换。
11. class pcl::io::IOException类IOException是PCL io模块I/O相关的异常处理接口实现,它继承于st::exception。
12. class pcl::io::Image类Image提供一个接口用于填充RGB或者灰度图像缓冲区,它的派生类有pcl::io::ImageYUV422和pcl::io::ImageRGB24。
13. class pcl::io::IRImage类IRImage仅包含一个对IR元数据的引用。
14. class pcl::io::frameWrapper类frameWrapper用于包装本机帧数据类型的纯抽象接口。它的派生类有pcl::io::openni2::Openni2frameWrapper。
15. class pcl::io::LZFImageReader类LZFImageReader是PCL中LZF格式的图像解读器的抽象类,它的派生类有pcl::io::LZFDepth16ImageReader、pcl::io::LZFRGB24ImageReader、pcl::io::LZFYUV422ImageReader和pcl::io::LZFBayer8ImageReader。
17. class pcl::io::LZFImageWriter类LZFImageWriter是PCL中LZF格式的图像解读器的抽象类,它的派生类有pcl::io::LZFDepth16ImageWriter、pcl::io::LZFRGB24ImageWriter、pcl::io::LZFYUV422ImageWriter和pcl::io::LZFBayer8ImageWriter。
18. class pcl::io::PointCloudImageExtractor类PointCloudImageExtractor是一个抽象类,它定义从原始点云中提取图像的接口,即图像提取器。它的派生类实现了从特定领域提取图像的功能。它的派生类有pcl::io::PointCloudImageExtractorWithScaling、pcl::io::PointCloudImageExtractorFromNormalField、pcl::io::PointCloudImageExtractorFromRGBField、pcl::io::PointCloudImageExtractorFromLabelField、pcl::io::PointCloudImageExtractorFromZField、pcl::io::PointCloudImageExtractorFromCurvatureField和pcl::io::PointCloudImageExtractorFromIntensityField。
IO模块LZF压缩/解压函数PCL_EXPORTS unsigned int lzfCompress (const void *const in_data, unsigned int in_len, void *out_data, unsigned int out_len); PCL_EXPORTS unsigned int lzfDecompress (const void *const in_data, unsigned int in_len, void *out_data, unsigned int out_len);
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)