当前位置: 首页 > news >正文

建设企业网站的郑州网络公司现状

建设企业网站的,郑州网络公司现状,网站建设公司优惠大酬宾活动,镇江个人网站制作目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 2.1.1 加载点云数据 2.1.2 执行4PCS粗配准 2.1.3 可视化源点云、目标点云和配准结果 2.2完整代码 三、实现效果 3.1原始点云 3.2配准后点云 PCL点云算法汇总及实战案例汇总的目录地址链接…目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 2.1.1 加载点云数据 2.1.2 执行4PCS粗配准 2.1.3 可视化源点云、目标点云和配准结果 2.2完整代码 三、实现效果 3.1原始点云 3.2配准后点云 PCL点云算法汇总及实战案例汇总的目录地址链接 PCL点云算法与项目实战案例汇总长期更新 一、概述 4PCS四点一致集算法是一种用于点云配准的粗配准方法。该算法通过寻找目标点云和源点云之间具有几何约束的四点集合进行匹配继而估计出变换矩阵。4PCS 算法具有较好的抗噪性和计算效率适用于较大尺度的点云配准场景。 1.1原理 4PCS 算法通过以下步骤进行粗配准 点云采样从源点云和目标点云中采样若干点形成四点集合。几何一致性验证计算这四个点在两个点云中的相对距离通过几何一致性约束找到符合要求的四点集合。估计变换矩阵使用一致的四点集合计算源点云到目标点云的变换矩阵。应用变换矩阵将计算得到的变换矩阵应用到源点云上使其与目标点云对齐。 配准结果的质量依赖于 重叠率设置源点云和目标点云的近似重叠率。采样点数量设置参与匹配的采样点数量。精度参数 Delta控制配准的精度通过对配准点云的稀疏化进行加速。 1.2实现步骤 加载源点云和目标点云。设置4PCS配准参数包括近似重叠率、采样点数量、精度参数等。执行4PCS粗配准通过设置参数执行粗配准得到变换矩阵。应用变换矩阵将源点云应用变换矩阵对齐至目标点云。可视化结果将源点云、目标点云以及对齐后的点云进行可视化对比。 1.3应用场景 粗配准阶段4PCS 可以用于点云配准的初步阶段提供较为快速的粗略对齐结果后续可以使用更精细的算法如ICP进行精配准。多场景拼接在多视角点云场景下4PCS 可以帮助快速匹配不同视角的点云数据。点云地图生成在SLAM同步定位与地图构建中4PCS 可以用于不同帧之间的点云匹配与对齐。 二、代码实现 2.1关键函数 2.1.1 加载点云数据 void loadPointClouds(pcl::PointCloudpcl::PointXYZ::Ptr source_cloud, pcl::PointCloudpcl::PointXYZ::Ptr target_cloud) {if (pcl::io::loadPCDFilepcl::PointXYZ(hand_trans.pcd, *target_cloud) -1) {PCL_ERROR(读取目标点云失败 \n);}if (pcl::io::loadPCDFilepcl::PointXYZ(hand.pcd, *source_cloud) -1) {PCL_ERROR(读取源点云失败 \n);} } 2.1.2 执行4PCS粗配准 void perform4PCSRegistration(pcl::PointCloudpcl::PointXYZ::Ptr source_cloud, pcl::PointCloudpcl::PointXYZ::Ptr target_cloud, pcl::PointCloudpcl::PointXYZ::Ptr aligned_cloud, Eigen::Matrix4f transformation_matrix) {pcl::registration::FPCSInitialAlignmentpcl::PointXYZ, pcl::PointXYZ fpcs;fpcs.setInputSource(source_cloud);fpcs.setInputTarget(target_cloud);fpcs.setApproxOverlap(0.7); // 设置近似重叠率fpcs.setDelta(0.01); // 精度参数fpcs.setNumberOfSamples(100); // 采样点数量fpcs.align(*aligned_cloud); // 执行配准transformation_matrix fpcs.getFinalTransformation(); // 获取变换矩阵 }2.1.3 可视化源点云、目标点云和配准结果 // 可视化源点云、目标点云和配准结果 void visualizePointClouds(pcl::PointCloudpcl::PointXYZ::Ptr source_cloud, pcl::PointCloudpcl::PointXYZ::Ptr target_cloud) {boost::shared_ptrpcl::visualization::PCLVisualizer viewer(new pcl::visualization::PCLVisualizer(Point Cloud Registration Viewer));viewer-setBackgroundColor(1.0, 1.0, 1.0); // 设置背景颜色为黑色pcl::visualization::PointCloudColorHandlerCustompcl::PointXYZ target_color(target_cloud, 255, 0, 0);viewer-addPointCloud(target_cloud, target_color, target cloud); // 目标点云红色pcl::visualization::PointCloudColorHandlerCustompcl::PointXYZ source_color(source_cloud, 0, 0, 255);viewer-addPointCloud(source_cloud, source_color, source cloud); // 源点云蓝色viewer-setPointCloudRenderingProperties(pcl::visualization::PCL_VISUALIZER_POINT_SIZE, 2, target cloud);viewer-setPointCloudRenderingProperties(pcl::visualization::PCL_VISUALIZER_POINT_SIZE, 2, source cloud);while (!viewer-wasStopped()) {viewer-spinOnce();} } 2.2完整代码 #include iostream #include pcl/io/pcd_io.h #include pcl/point_types.h #include pcl/registration/ia_fpcs.h #include pcl/console/time.h #include boost/thread/thread.hpp #include pcl/visualization/pcl_visualizer.h// 加载点云数据 void loadPointClouds(pcl::PointCloudpcl::PointXYZ::Ptr source_cloud, pcl::PointCloudpcl::PointXYZ::Ptr target_cloud) {if (pcl::io::loadPCDFilepcl::PointXYZ(hand_trans.pcd, *target_cloud) -1) {PCL_ERROR(读取目标点云失败 \n);}if (pcl::io::loadPCDFilepcl::PointXYZ(hand.pcd, *source_cloud) -1) {PCL_ERROR(读取源点云失败 \n);} }// 执行4PCS粗配准 void perform4PCSRegistration(pcl::PointCloudpcl::PointXYZ::Ptr source_cloud, pcl::PointCloudpcl::PointXYZ::Ptr target_cloud, pcl::PointCloudpcl::PointXYZ::Ptr aligned_cloud, Eigen::Matrix4f transformation_matrix) {pcl::registration::FPCSInitialAlignmentpcl::PointXYZ, pcl::PointXYZ fpcs;fpcs.setInputSource(source_cloud);fpcs.setInputTarget(target_cloud);fpcs.setApproxOverlap(0.7); // 设置近似重叠率fpcs.setDelta(0.01); // 精度参数fpcs.setNumberOfSamples(1000); // 采样点数量fpcs.align(*aligned_cloud); // 执行配准transformation_matrix fpcs.getFinalTransformation(); // 获取变换矩阵 }// 可视化源点云、目标点云和配准结果 // 可视化源点云、目标点云和配准结果 void visualizePointClouds(pcl::PointCloudpcl::PointXYZ::Ptr source_cloud, pcl::PointCloudpcl::PointXYZ::Ptr target_cloud) {boost::shared_ptrpcl::visualization::PCLVisualizer viewer(new pcl::visualization::PCLVisualizer(Point Cloud Registration Viewer));viewer-setBackgroundColor(1.0, 1.0, 1.0); // 设置背景颜色为黑色pcl::visualization::PointCloudColorHandlerCustompcl::PointXYZ target_color(target_cloud, 255, 0, 0);viewer-addPointCloud(target_cloud, target_color, target cloud); // 目标点云红色pcl::visualization::PointCloudColorHandlerCustompcl::PointXYZ source_color(source_cloud, 0, 0, 255);viewer-addPointCloud(source_cloud, source_color, source cloud); // 源点云蓝色viewer-setPointCloudRenderingProperties(pcl::visualization::PCL_VISUALIZER_POINT_SIZE, 2, target cloud);viewer-setPointCloudRenderingProperties(pcl::visualization::PCL_VISUALIZER_POINT_SIZE, 2, source cloud);while (!viewer-wasStopped()) {viewer-spinOnce();} }int main(int argc, char** argv) {pcl::console::TicToc time;pcl::PointCloudpcl::PointXYZ::Ptr target_cloud(new pcl::PointCloudpcl::PointXYZ);pcl::PointCloudpcl::PointXYZ::Ptr source_cloud(new pcl::PointCloudpcl::PointXYZ);loadPointClouds(source_cloud, target_cloud);pcl::PointCloudpcl::PointXYZ::Ptr aligned_cloud(new pcl::PointCloudpcl::PointXYZ);Eigen::Matrix4f transformation_matrix;time.tic();perform4PCSRegistration(source_cloud, target_cloud, aligned_cloud, transformation_matrix);cout FPCS配准用时 time.toc() ms endl;cout 变换矩阵 transformation_matrix endl;//显示原始点云visualizePointClouds(source_cloud, target_cloud);//显示配准后点云visualizePointClouds(target_cloud, aligned_cloud);return 0; }三、实现效果 3.1原始点云 3.2配准后点云
http://www.hkea.cn/news/14367938/

相关文章:

  • 如何注册网站域名专业的企业网站建设公司
  • 做一个搜索引擎网站要多少钱马鞍山 做网站
  • 高度重视部门网站建设龙岩上杭
  • 工行网站跟建设网站区别网页版qq农场
  • 域名主机网站导航有没有做网站的公司
  • 做名片赞机器人电脑网站是多少网络建设股票有哪些
  • 网站收录多少才有排名wordpress微信管理系统
  • 网站的盈利方式网络营销推广三板斧
  • 织梦网站底部黑链wordpress ap
  • 怎么提交百度收录关闭站长工具seo综合查询
  • vs网站制作教程百度手机版网址
  • 杭州建站网站建设搜索引擎推广特点
  • 电脑端网站和手机网站区别商标图案大全大图 logo
  • 网站建设硬件方案做包装找灵感看什么网站
  • 东莞市微客巴巴做网站怎么将自己做的网站发到网上去
  • 建设网站一般需要多少钱成都网站建设快速服务
  • 网站建设需要的技术手段网页登录界面制作
  • 网站seo优化有哪些搜索引擎大全入口
  • 网站推广策划报告航空航天网站建设建设公司资质要求
  • 高端的网站设计公司现在网站开发的前端语言
  • 天津模板建站代理怎么设计一个网站
  • 网站怎么样制作视频wordpress文章头部
  • 做网站为什么不要源代码网站页尾的作用
  • wap网站和internet网站百度拍照搜题
  • 做网站 站内搜索引擎做钻石资讯网站
  • 网站设计步骤图片重庆建设摩托车网站
  • 河北公司网站开发报价网站建设
  • 买网站名称网络设计方案的重要性
  • 市场营销专业网站怎么做百度推广平台
  • 网站开发合同审核要点免费微商城小程序模板