位置: IT常识 - 正文

工程复现 -- grid map和elevation map(工程复工程序是什么)

编辑:rootadmin
工程复现 -- grid map和elevation map 工程复现 – grid map和elevation map

推荐整理分享工程复现 -- grid map和elevation map(工程复工程序是什么),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:工程复工具备的条件,工程复盘的正确方法和步骤,复原工程工作步骤,工程复盘的正确方法和步骤,复原工程工作步骤,工程复工具备的条件,工程复工程序是什么,工程复工具备的条件,内容如对您有帮助,希望把文章链接给更多的朋友!

参考: 1. ROS grid map 2. ROS elevation_mapping 3. ROS高程地图–elevation_mapping使用记录(一) 4. ROS高程地图–elevation_mapping使用记录(二)

一.下载和编译安装工程

注意: 安装和编译过程中如果出现疑问,请参考第三部分的答疑内容。

1.1 下载两个工程git clone https://github.com/anybotics/grid_mapgit clone https://github.com/ANYbotics/elevation_mapping1.2 安装依赖库grid_map 和libeigensudo apt-get install ros-$ROS_DISTRO-grid-mapsudo apt-get install libeigen3-devkindrkindr_rospoint_cloud_iogit clone https://github.com/ANYbotics/point_cloud_io.gitcd .. && catkin_makesource devel/setup.bash1.3 安装两个工程catkin_make -DCMAKE_BUILD_TYPE=Releasesource devel/setup.bash

注意:将两个工程放在一个工作空间下,本空间内还需要其他依赖包,完整目录如下:

cui@cui-pc:~/catkin_map/src $ tree -f -L 1.├── ./CMakeLists.txt -> /opt/ros/melodic/share/catkin/cmake/toplevel.cmake├── ./elevation_mapping├── ./grid_map├── ./kindr_ros├── ./message_logger└── ./point_cloud_io

二. 运行demo2.1 grid_map1. 跳动的地毯

roslaunch grid_map_demos simple_demo.launchroslaunch grid_map_demos tutorial_demo.launch ## 完整版本2.2 elevation_mapping1. TurtleBot3 Waffle Simulation 仿真机器人

## 安装turtlebot3 仿真sudo apt install ros-melodic-turtlebot3*## 启动demoroslaunch elevation_mapping_demos turtlesim3_waffle_demo.launch## 控制仿真机器人export TURTLEBOT3_MODEL=waffleroslaunch turtlebot3_teleop turtlebot3_teleop_key.launch2. Ground Truth Demo

roslaunch elevation_mapping_demos simple_demo.launch## 前提需要安装point_cloud_ioroslaunch elevation_mapping_demos ground_truth_demo.launch

三. 遇到问题及解决3.1 grid map工程可能遇到的问题工程复现 -- grid map和elevation map(工程复工程序是什么)

Q1: catkin_make,编译过程中,CMake Error at grid_map/grid_map_octomap/CMakeLists.txt:13 (find_package): A1:

sudo apt-get install ros-$ROS_DISTRO-grid-map

Q2: catkin_make编译过程中, CMake Error at /opt/ros/melodic/share/catkin/cmake/catkinConfig.cmake:83 (find_package) A2:

sudo apt install ros-melodic-costmap-2d -y

Q3: catkin_make编译过程中,CMake Error at grid_map/grid_map_filters/CMakeLists.txt:35 (find_package), TBBConfig.cmake A3: 参考: 1. csdn 编译需要TBBConfig.cmake,但TBB 2020及older版本不生成.cmake文件”的问题 2. 源码编译TBB 采用源码编译的方式。

git clone https://github.com/oneapi-src/oneTBB# 查看tag,找到2020.1版本git checkout v2020.1## 在cmake文件夹下生成TBBConfig.cmakecmake -DTBB_ROOT=/home/cui/workspace/tools/oneTBB -DTBB_OS=Linux -P cmake/tbb_config_generator.cmake## 安装TBB需要的库文件cd buildsudo chmod +x *.shsh generate_tbbvars.shsh tbbvars.sh## 编译TBB,拷贝相关包含目录库目标到系统环境中cd oneTBBmakecd build/linux_intel64_gcc_cc7.5.0_libc2.27_kernel5.4.0_release/sudo cp *.so /usr/local/lib #或者/usr/libsudo cp *.so.2 /usr/local/lib #或者/usr/libsudo /sbin/ldconfigcd ../../include/ && sudo cp -rf ./* /usr/local/includecd ../cmake && sudo mkdir /usr/local/lib/cmake/TBBsudo cp TBBConfig.cmake TBBConfigVersion.cmake /usr/local/lib/cmake/TBB/.## 设置TBB_FOUND为TRUEsudo gedit /usr/local/lib/cmake/TBB/TBBConfig.cmake修改#set(TBB_FOUND FALSE) 为 set(TBB_FOUND TRUE)

Q4:catkin_make编译过程中,home/cui/catkin_others/src/grid_map/grid_map_cv/include/grid_map_cv/InpaintFilter.hpp:11:10: fatal error: filters/filter_base.hpp: No such file or directory #include <filters/filter_base.hpp> A4: 参考: grid_map(二):ubuntu16.04安装测试grid_map 1.6.0-1.6.2

## grid_map_ws/src/grid_map/grid_map_cv/include/grid_map_cv/InpaintFilter.hpp 的第十行#include <filters/filter_base.hpp> 为 #include <filters/filter_base.h>## 文件夹grid_map_ws/src/grid_map/grid_map_filters/include/grid_map_filters下几乎所有文件全部替换#include <filters/filter_base.hpp> 或 #include <filters/filter_base.h>

Q5:home/cui/catkin_others/src/grid_map/grid_map_demos/include/grid_map_demos/FiltersDemo.hpp:17:10: fatal error: filters/filter_chain.hpp: No such file or directory A5:解法同Q4

3.2 elevation_mapping 工程可能遇到问题

Q1:catkin_make编译过程中,CMake Error at /opt/ros/melodic/share/catkin/cmake/catkinConfig.cmake:83,kindrConfig.cmake A1:

1)先安装kindr库git clone https://github.com/ANYbotics/kindr.gitcd kindrmkdir build && cd buildcmake .. -DUSE_CMAKE=truesudo make install## 拷贝kindConfig.cmake(可以不加)sudo mkdir /usr/local/lib/cmake/kindrsudo cp kindrConfig.cmake /usr/local/lib/cmake/kindr/2)再安装kindr_ros库## 进入elevation_mapping工作空间git clone https://github.com/ANYbotics/kindr_ros.gitcd ../ && catkin_make3)最后编译elevation_mapping

Q2: catkin_make编译过程中,CMake Error at /opt/ros/melodic/share/catkin/cmake/catkinConfig.cmake:83 ,message_loggerConfig.cmake A2: 参考:message_logger安装

## 先进入elevation_mapping工作空间git clone https://github.com/ANYbotics/message_logger.git

Q3:error: ‘PCL_MAKE_ALIGNED_OPERATOR_NEW’ does not name a type; did you mean A3:

修改elevation_mapping/elevation_mapping/include/elevation_mapping/PointXYZRGBConfidenceRatio.hpp:32 为 EIGEN_MAKE_ALIGNED_OPERATOR_NEW

Q4:home/cui/catkin_others/src/grid_map/grid_map_demos/include/grid_map_demos/FiltersDemo.hpp:17:10: fatal error: filters/filter_chain.hpp: No such file or directory A4:同第一部分Q5

Q5: 运行ground_truth_demo过程中,出现ERROR: cannot launch node of type [point_cloud_io/read]: point_cloud_io A5: 需要安装point_cloud_io package, 详细过程参考第一部分1.2 安装过程。

Q6: 编译point_cloud_io工程过程中,BUG: point_cloud_io/src/Read.cpp:11:10: fatal error: filesystem: No such file or directory A6: 参考: fatal error: filesystem: No such file or directory,fatal error: filesystem: 没有那个文件或目录 undefined reference to `std::experimental::filesystem::v1::__cxx11::path::_M_split_cmpts() 原因在于g++版本问题,g++8以上才支持。

#include <filesystem> 替换为 #include <experimental/filesystem>std::filesystem 替换为 std::experimental::filesystem## cmakelist中添加-lstdc++fstarget_link_libraries(read ${catkin_LIBRARIES} -lstdc++fs)

Q7: 试跑 roslaunch elevation_mapping_demos simple_demo.launch看不到任何画面 A7: 问题在于point_cloud_io pkg未能发布点云。重启电脑之后问题解决,猜测可能Rviz卡住或者内存不足。 注意: ground_truth_demo.launch 确实看不到画面,但是地图topic还在不断发送。

本文链接地址:https://www.jiuchutong.com/zhishi/285106.html 转载请保留说明!

上一篇:【uni-app】点击左上角返回按钮,弹出弹窗或者是携带参数返回上一页(uni-app怎么样)

下一篇:三七粉的价格(豹七三七粉的价格)

  • 长期股权投资的账面价值怎么计算
  • 劳务派遣公司必须设立股东
  • 销售咨询费一般涉及哪些业务
  • 2019新租赁准则账务处理举例
  • 劳务成本科目
  • 出口收入账务处理
  • 技术转让成本包括什么
  • 资本回收系数等于什么系数与利率之和
  • 营业外收入的核算内容主要有哪些
  • 主营业务收入冲销
  • 工程在建期间土地的摊销如何处理
  • 发票联丢失用抵扣联做账可以吗
  • 质量扣款可以放到费用吗
  • 增值税专票代码TZD0085什么意思
  • 分公司利润如何分红
  • 出租无形资产收到的租金
  • 中期支付内容包括
  • 社保已申报但未缴费有什么影响
  • 融资租赁增值税优惠政策
  • 应交税费留底增值税
  • 电脑自带网速测试
  • win10系统中为什么网络图标不能展开
  • macbookair怎么设置屏幕
  • win7为什么显示多重网络
  • Win10组策略怎么进
  • PHP:Memcached::get()的用法_Memcached类
  • 企业缴税科目
  • php连接mysql数据库的几种方式及区别
  • 解决科学文化领域的矛盾应坚持的方针是
  • 个人博客登录入口
  • thinkphp 模块
  • nvm安装教程
  • vue路由跳转的三种方法
  • thinkphp框架设计原理
  • php curl_setopt
  • mysql常用命令行大全
  • 现金流量表的附表如何编制
  • 锅炉维修项目
  • 季末资产总额怎么计算出来的
  • 3月1日前包括什么意思
  • 应收帐款质保金
  • 股东入股资金如何记账
  • 办公室装修费多少钱可以一次性入账
  • 什么情况下要去y加ies
  • 税务登记是需要原件还是复印件
  • sql server rollup函数
  • 在零售环节征收消费税的是哪些
  • 购买债券收到的现金
  • 建设期贷款利息定义是什么
  • 不动产登记流程有哪些
  • 为什么小规模纳税人少
  • 公司房产税如何避税
  • 实收资本印花税最新规定
  • 厂家核销费用直接扣除吗
  • 工会经费如何申请返还
  • 其他应付款时间长了怎么处理?
  • 微信的业务
  • 同一个sql语句 连接两个数据库服务器
  • MySQL PXC构建一个新节点只需IST传输的方法(推荐)
  • win7系统宽带连接
  • ubuntu如何截图快捷键
  • w10运行命令在哪
  • linux设置环境变量的命令
  • windows 10移动版
  • 系统ui怎么关闭
  • 让人吃惊的成语有哪些
  • linux系统怎么更改语言
  • glviewport超出屏幕范围
  • 如何修改apache端口号
  • js获取tbody
  • 日历查询的算法怎么写
  • jquery获取button的value值
  • jquery点击复制
  • Android应用与开发
  • 图片处理流程
  • 国家税务总局2018年61号公告
  • 新的国家税务局发票怎么冲红
  • 个人所得税选择那种方式更好
  • 广东发票勾选认证操作流程
  • 010是哪个市区的电话号码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设