问题处理——在ROS2(humble)+Gazebo+rqt下,无法显示仿真无人机的相机图像

文章目录


前言

在ROS2的环境下,进行无人机仿真的过程中,有时需要调取无人机的相机图像信息,但是使用rqt,却发现相机图像无法显示。
提示:注意PX4以及Gazebo的版本
PX4需要在1.16以下,Gazebo需要Gazebo sim7


一、问题展示

二、解决方法:

1.下载对应版本的PX4

按 Ctrl + Alt + T,打开终端,输入以下代码,安装1.15.3版本的PX4版本。

c 复制代码
git clone --branch v1.15.3 --recursive https://github.com/PX4/PX4-Autopilot.git
bash ./PX4-Autopilot/Tools/setup/ubuntu.sh

详细情况可以参考这篇文章:
《如何查询已安装的PX4版本,如何下载指定版本的PX4,PX4未下载完全怎么处理》

2.下载对应版本的Gazebo

按 Ctrl + Alt + T,打开终端,输入以下代码,查看已安装的gazebo版本。

c 复制代码
gazebo --version

如果不是Gazebo sim7,卸载它。(如何卸载几天后更新)

输入以下代码,下载对应版本的Gazebo。

c 复制代码
sudo apt install ros-humble-ros-gzgarden

3.启动

按 Ctrl + Alt + T,打开第一个终端,输入以下代码,打开带相机的无人机仿真。

c 复制代码
cd ~/PX4-Autopilot
make px4_sitl gz_x500_depth

按 Ctrl + Alt + T,打开第二个终端,输入以下代码:

c 复制代码
ros2 run ros_gz_image image_bridge /camera

按 Ctrl + Alt + T,打开第三个终端,输入以下代码:

c 复制代码
ros2 run rqt_image_view rqt_image_view

我们可以发现无人机相机图像可以正常显示了。

总结

以上就是今天要讲的内容,希望对大家有所帮助,接下来,我还会分享更多的文章,希望可以帮助到大家。

相关推荐
Dlrb121116 小时前
数据结构-内核链表
linux·数据结构·链表·内核链表·inline·容器宏
zzzsde16 小时前
【Linux】线程同步和互斥(5):线程池的实现&&线程安全
linux·运维·服务器·开发语言·算法·安全
不吃土豆的马铃薯17 小时前
高性能服务器程序框架详解(包括Reactor,有限状态机等)
linux·服务器·开发语言·网络·c++
bucenggaibian17 小时前
搭建CMD编译C语言环境
linux·c语言·windows
程序猿乐锅17 小时前
Linux常用命令详解:目录、文件、压缩、编辑与查找
linux·运维·服务器
Shadow(⊙o⊙)17 小时前
库的制作与原理1.0,库打包,协作,目标文件.o、ELF格式。
linux·运维·服务器·开发语言
文青小兵17 小时前
Linux云计算——docker 网络和部分挂载(二)
linux·docker·云计算
AOwhisky17 小时前
Ceph系列第五期:Ceph 对象存储(RADOS Gateway)精讲
linux·运维·笔记·ceph·gateway·对象存储
xhaxy17 小时前
pgsql集群搭建(Patroni + etcd )
linux·postgresql·etcd
愿天垂怜17 小时前
【C++脚手架】etcd 的介绍与使用
java·linux·服务器·c语言·c++·中间件·etcd