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

你可能感兴趣的文章
Vue过渡 & 动画---vue工作笔记0014
查看>>
Netty 异步任务调度与异步线程池
查看>>
Netty 的 Handler 链调用机制
查看>>
Netty 编解码器和 Handler 调用机制
查看>>
Netty 编解码器详解
查看>>
Netty 解决TCP粘包/半包使用
查看>>
Netty 调用,效率这么低还用啥?
查看>>
Netty 高性能架构设计
查看>>
Netty+Protostuff实现单机压测秒级接收35万个对象实践经验分享
查看>>
Netty+SpringBoot+FastDFS+Html5实现聊天App详解(一)
查看>>
netty--helloword程序
查看>>
netty2---服务端和客户端
查看>>
【Flink】Flink 2023 Flink易用性和稳定性在Shopee的优化-视频笔记
查看>>
Netty5.x 和3.x、4.x的区别及注意事项(官方翻译)
查看>>
netty——bytebuf的创建、内存分配与池化、组成、扩容规则、写入读取、内存回收、零拷贝
查看>>
netty——Channl的常用方法、ChannelFuture、CloseFuture
查看>>
netty——EventLoop概念、处理普通任务定时任务、处理io事件、EventLoopGroup
查看>>
netty——Future和Promise的使用 线程间的通信
查看>>
netty——Handler和pipeline
查看>>
Vue输出HTML
查看>>