第一个代码示例根据 Z 轴值过滤点云,并可视化原始和过滤后的点云。
**创建过滤器对象**:创建一个“pcl::P assThrough”过滤器对象“pass”用于过滤点云。
**应用滤波器**:调用'filter'方法将滤波器应用于输入点云,滤波后的点存储在'cloud_filtered'中。过滤后剩余的点数将打印到控制台。
**可视化设置**:创建一个“PCLVisualizer”对象“视图”,用于可视化点云。在可视化工具窗口中创建两个视口,以并排显示原始点云和过滤后的点云。
**设置视口属性**:为每个视口设置背景颜色,并添加文本标签来描述内容。
*向视口添加点云**:原始的“云”和过滤的“cloud_filtered”点云都会添加到各自的视口中。
*设置点云颜色**:为原始点云和过滤后的点云设置单独的颜色,以在视觉上区分它们。
**可视化循环**:可视化工具循环运行,不断更新,直到窗口关闭。调用“spinOnce”函数来处理可视化事件,“boost::this_thread::sleep”用于控制循环的执行速率。
#include <iostream>
#include <pcl/io/pcd_io.h>
#include <pcl/point_types.h>
#include <pcl/point_cloud.h>
#include <pcl/filters/passthrough.h>
#include &