博客
关于我
PCL滤波 ProjectInliers平面投射
阅读量:238 次
发布时间:2019-03-01

本文共 1310 字,大约阅读时间需要 4 分钟。

#include 
#include
#include
#include
#include
intmain(int argc,char ** args){ pcl::PointCloud
::Ptr cloud(new pcl::PointCloud
()); pcl::PointCloud
::Ptr cloud_pj(new pcl::PointCloud
()); cloud->width = 5; cloud->height = 1; cloud->points.resize(cloud->width * cloud->height); for (auto& p : *cloud) { p.x = 1024 * rand() / (RAND_MAX + 1.0f); p.y = 1024 * rand() / (RAND_MAX + 1.0f); p.z = 1024 * rand() / (RAND_MAX + 1.0f); } std::cerr << "cloud before projection" << std::endl; for (const auto& p : *cloud) std::cout << " " << p.x << " " << p.y << " " << p.z << " " << std::endl; pcl::ModelCoefficients::Ptr mc(new pcl::ModelCoefficients()); //平面模型的方程为 ax+by+cz+d = 0,此时设置 a = b = d = 0,c =1,则平面为 z=0的平面,也就是 X-Y平面 //mc->values.resize(4); //mc->values[0] = mc ->values[1] = 0; //mc->values[2] = 1.0; //mc->values[3] = 0; //投射可以是任意的平面 mc->values.resize(4); mc->values[0] = mc->values[1] = 2; mc->values[2] = 1.0; mc->values[3] = 0; pcl::ProjectInliers
proj; proj.setModelType(pcl::SACMODEL_PLANE); proj.setInputCloud(cloud); proj.setModelCoefficients(mc); proj.filter(*cloud_pj); std::cerr << "Cloud after projection" << std::endl; for(const auto & p :*cloud_pj) std::cout << " " << p.x << " " << p.y << " " << p.z << " " << std::endl; return 0;}

转载地址:http://wrct.baihongyu.com/

你可能感兴趣的文章
mysql备份与恢复
查看>>
mysql备份工具xtrabackup
查看>>
mysql备份恢复出错_尝试备份/恢复mysql数据库时出错
查看>>
mysql复制内容到一张新表
查看>>
mysql复制表结构和数据
查看>>
mysql复杂查询,优质题目
查看>>
MySQL外键约束
查看>>
MySQL多表关联on和where速度对比实测谁更快
查看>>
MySQL多表左右连接查询
查看>>
mysql大批量删除(修改)The total number of locks exceeds the lock table size 错误的解决办法
查看>>
mysql如何做到存在就更新不存就插入_MySQL 索引及优化实战(二)
查看>>
mysql如何删除数据表,被关联的数据表如何删除呢
查看>>
MySQL如何实现ACID ?
查看>>
mysql如何记录数据库响应时间
查看>>
MySQL子查询
查看>>
Mysql字段、索引操作
查看>>
mysql字段的细节(查询自定义的字段[意义-行列转置];UNION ALL;case-when)
查看>>
mysql字段类型不一致导致的索引失效
查看>>
mysql字段类型介绍
查看>>
mysql字段解析逗号分割_MySQL逗号分割字段的行列转换技巧
查看>>