PCL_将物体分割后的物体用方形框框选出来

框选本身还是很简单的,只要获取分割后每一个物体的点云的重心,然后画框就好了,这里我还加入了一个PCA,将矩形框按照物体点云的主轴方向进行了调整,主要参考了http://pointclouds.org/documentation/tutorials/moment_of_inertia.php 这里写的很详细,主要过程就是:

首先计算点云的协方差矩阵,并提取其特征值和向量。 您可以认为所得到的特征向量被归一化,并且总是形成右手坐标系(主要特征向量表示X轴,次要矢量表示Z轴)。 在下一步中,迭代过程发生。 在每次迭代中,旋转主要特征向量。 旋转顺序总是相同的,并且围绕其他特征向量执行,这提供了点云的旋转的不变性。 此后,我们将把这个旋转的主矢量称为当前轴。


参考的文章的框选结果是这样的:



最终我的运行结果是:




这里我的代码很冗余。。。可是我代码能力也一般,就不贴出来了。

### 如何解决 Python 中 `import pcl.pcl_visualization` 报错找不到模块的问题 当尝试在 Python 中导入 `pcl.pcl_visualization` 模块时遇到错误,通常是因为 PCL (Point Cloud Library) 的可视化组件未正确安装或配置。以下是详细的解决方案: #### 1. 确认依赖项已安装 确保已经安装了 Point Cloud Library 及其可视化部分。对于 Windows 用户来说,这可能涉及到 Visual Studio 的安装[^2]。 #### 2. 使用 CMake 构建 PCL 库 构建 PCL 库时建议采用 CMake 工具来管理项目结构并生成适合平台的 Makefile 或者 IDE 项目文件。通过图形界面版 CMake (CMake GUI),可以更方便地设置项和路径变量,从而保证所有必要的子模块被正确编译,包括用于可视化的部分[^1]。 #### 3. 安装 python-pcl 包 为了使 Python 能够访问到 PCL 功能,需要安装专门针对 Python 封装过的接口库——python-pcl。可以从 GitHub 上获取最新源码,并按照说明文档完成本地环境下的安装过程[^4]。 #### 4. 验证安装成功与否 可以通过运行简单的测试脚本来验证是否能够正常加载所需的功能模块。例如,在命令行工具里执行如下代码片段: ```python import pcl cloud = pcl.load_XYZRGB('path_to_your_point_cloud_file') visualizer = pcl.pcl_visualization.CloudViewing() visualizer.ShowMonochromeCloud(cloud) v = True while v: v = not(visualizer.WasStopped()) ``` 如果上述操作均无误,则应该可以在不报任何关于缺失 `pcl_visualization` 错误的情况下顺利启动点云数据查看窗口[^3]。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值