自己知道的两种方法,分别基于rviz_satellite和mapviz,实测下来Mapviz在清晰度和准确度上效果感觉更好一些,大家可以都试下,有更好的方法可以留言大家讨论下~

一、rviz_satellite

1. 首先下载相应代码编译:

mkdir -p catkin_ws/src
cd catkin_ws/src
git clone https://github.com/nobleo/rviz_satellite
git clone https://github.com/chengwei0427/simple_gnss_localizer.git
cd ..
catkin_make

2. 编译成功后,修改相应的gps话题,并配置origin gps的位置

1. 修改run.launch中的ori_lat、ori_lon、ori_alt值为你自己数据包第一帧GPS数据
2. 修改path_client_copy.py中的ref_point = [31.6128525822,120.785404263,11.8973]为你自己数据包第一帧GPS数据,同步骤1相同。
3. 修改run.launch中的gps话题:<remap from="fix" to="fix_for_carto"/>

3. 使用:

1. roslaunch gnss_localizer run.launch
2. rosbag play your-bag.bag --clock

4. 放一张运行结果图,我这边跑的与实际有一定位置的偏移,不知道是否与Object URI有关,大家清楚原因的请告知下。

二、mapviz

可视化采用的是Mapviz,采用的地图API是天地图API (tianditu.gov.cn),采用其他地图亦可,具体使用方法如下:

1. 安装mapviz

a. ros melodic已经自带了mapviz,所以可以直接命令安装。

sudo apt-get install ros-melodic-mapviz

b. 源码安装

mkdir -p catkin_ws/src
cd catkin_ws/src
git clone https://github.com/swri-robotics/mapviz.git
sudo apt-get install ros-$ROS_DISTRO-mapviz ros-$ROS_DISTRO-mapviz-plugins ros-$ROS_DISTRO-tile-map ros-$ROS_DISTRO-multires-image
cd ..
catkin_make

2. 修改参数配置

3. 申请天地图API KEY用户系统,申请时应用类型选择“服务端”,提交。

4. 对天地图API (tianditu.gov.cn)中API的格式进行修改,原格式如下:

http://t0.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={x}&TILECOL={y}&tk=您的密钥

由于在mapviz的tile_map 中,添加的Base URL 格式为

http://tile.stamen.com/terrain/{level}/{x}/{y}.png     #   level  x  y  分别表示  高经纬

所以将天地图的API中的z变量更改为level,修改后的格式为:

http://t0.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={level}&TILEROW={x}&TILECOL={y}&tk=您的密钥

5. 使用:

相应的工程目录下运行launch文件,随后点击左下角add,依次添加tile_map和navsat。

roslaunch mapviz mapviz.launch

在tile_map栏修改相应的base URL和Max Zoom,在navsat栏修改相应的Topic

实际运行效果图如下,可以看出同样的场景效果比rviz_satellite的清晰度和准确度要更好些。

三、参考:

mapviz - ROS Wiki

ROS下如何将GPS数据在卫星地图显示(两种开源方法)相关推荐

  1. Ros中Remap(话题重映射)的两种使用方法

    最近在remap机器人发布的joint_states的时候遇到了一些问题,在此以几个例子记录一下launch文件的配置. 先敲黑板!!!: remap在node之外的作用域是他之后的所有节点,在nod ...

  2. 从浏览器下载表格数据为Excel的两种实现方法

    一.使用说明 实际开发运用过程中,往往需要将页面上的一些表格数据生成Excel供用户下载使用,根据不同的需求,此处整理了两种方式:(两种方式浏览器都可直接提示下载或保存文件) 方式一: 1.需求: 生 ...

  3. 数据递归查询的两种实现方法

    在业务代码当中,经常需要递归查询有等级结构的数据. 现在是两种实现方法. 第一种在oracle当中,使用 start with connect by prior 递归查询 附递归查询用法 https: ...

  4. ROS下使用串口发送数据

    ROS下使用串口发送数据 #include <stdio.h> #include <string.h> #include <ros/ros.h> #include ...

  5. arcgis导入excel数据_导入Excel数据到ArcGIS属性表的两种实用方法

    导入Excel数据到ArcGIS有两种方法,一种是用ArcMap的加载数据(黄色+号那个):另一种是用ArcCatalog直接转为shp文件,两种方法的原理是一样的. 第一种方法 1.Excel数据: ...

  6. 大数据开发之常见九种数据分析方法

    今天老师给大家分享一篇关于大数据开发常见的9种数据分析方法,首先数据分析是从数据中提取有价值信息的过程,过程中需要对数据进行各种处理和归类,只有掌握了正确的数据分类方法和数据处理模式,才能起到事半功倍 ...

  7. MySQL数据导入导出的两种方式

    文章目录 前言 一.使用Navicat Premium数据库可视化工具的企业管理器导入导出数据 1.企业管理器导入步骤: 2.企业管理器导出步骤: 二.cmd方式导入导出数据 1.cmd导入步骤: 2 ...

  8. 解决Win7下安装VS2010不显示序列号框的两种方法

    VS2010在Windows 7下安装,一些朋友发现怎么在安装的时候输入序列号框怎么不出现呢?这该如何解决?下面西部e网的icech就找到了两种解决方法帮您解决这个问题: 1.修改setup.sdb文 ...

  9. 数据归一化处理的两种方式

    数据归一化处理的两种方式 import pandas as pd import numpy as np test_data = pd.DataFrame([[1,1,1],[2,2,2],[3,3,3 ...

最新文章

  1. HDU2665 求区间第K大 主席树
  2. 绝了,这18 个开箱即用的 Shell 脚本值得收藏
  3. 【Android】Eclipse JNI开发
  4. gradle 配置java 项目maven 依赖
  5. YBTOJ:消除格子(二分图匹配)
  6. 加载类型库/dll时出错 的解决方法
  7. 收购一家毁一家,雅虎到底杀死了多少好产品?
  8. sql无效字符 执行sql语句报错解决方案
  9. Navicat for Mysql 的使用
  10. 计算机课程屏幕录制,电脑录屏怎么录?游戏课程会议都能录制的实用方法
  11. Inspect(VB.NET、C#版)软件的的下载和使用
  12. wamp php 如何安装,WAMP的详细安装过程分享
  13. 老年程序员的出路何在
  14. imx6ull-qemu 裸机教程1:GPIO,IOMUX,I2C
  15. mybatis:Error preparing statement. Cause: java.lang.NullPointerException
  16. Cluster04 - Ceph概述 部署Ceph集群 Ceph块存储
  17. margin设置百分比
  18. iOS之App转让-别告诉我你还不知道!
  19. 初三物理光学知识点总结_中考物理光学知识点总结
  20. 数字信号处理大作业——基于matlab R2019a的男声变女声资料汇总与代码

热门文章

  1. linux setlocale函数,linux中的多语言环境(LC_ALL, LANG, locale)
  2. 2021南宁周赛!第一期题解
  3. C语言第八次上机实验
  4. 开始接触tinyOS
  5. android9.0官方壁纸,谷歌出品:安卓9.0原生春天主题壁纸 每一张都是谷歌的精挑细选!...
  6. 计算机专业知识技能名词,学习计算机知识必须知道的50个专业术语
  7. 查看linux操作系统版本--实用
  8. 高等数学求导积分公式
  9. element UI select下拉选项位置问题
  10. 微信公众平台的基础对接