博客
关于我
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/

你可能感兴趣的文章
MQ 重复消费如何解决?
查看>>
mqtt broker服务端
查看>>
MQTT 保留消息
查看>>
MQTT 持久会话与 Clean Session 详解
查看>>
MQTT工作笔记0007---剩余长度
查看>>
MQTT工作笔记0009---订阅主题和订阅确认
查看>>
Mqtt搭建代理服务器进行通信-浅析
查看>>
MS Edge浏览器“STATUS_INVALID_IMAGE_HASH“兼容性问题
查看>>
ms sql server 2008 sp2更新异常
查看>>
MS UC 2013-0-Prepare Tool
查看>>
MSBuild 教程(2)
查看>>
msbuild发布web应用程序
查看>>
MSB与LSB
查看>>
MSCRM调用外部JS文件
查看>>
MSCRM调用外部JS文件
查看>>
MSEdgeDriver (Chromium) 不适用于版本 >= 79.0.313 (Canary)
查看>>
MsEdgeTTS开源项目使用教程
查看>>
msf
查看>>
MSSQL数据库查询优化(一)
查看>>
MSSQL数据库迁移到Oracle(二)
查看>>