一、ubuntu20.04安装ar_track_alvar
本次贴图的二维码应用的是开源框架ar_track_alvar,所以需要提前在ubuntu20.04中安装好,直接使用命令sudo apt-get ros-noetic-ar-track-alvar进行安装,会出现E: 无法定位软件包 ros-noetic-ar-track-alvar E: 无法定位软件包 ros-noetic-ar-track-alvar-msgs的错误,原因是在20.04中没有这两个包 ar_track_alvar / ar_track_alvar_msgs,解决方法如下:
(原文链接:https://blog.csdn.net/yunmubing/article/details/123258538)
# cd ~ 安装colcon
sudo apt install python3-colcon-common-extensions# 在ws/src目录下
git clone https://github.com/machinekoder/ar_track_alvar.git -b noetic-devel
# colcon
colcon build# cd ..
catkin_make -DCMAKE_BUILD_TYPE=Release
按照以上步骤就可以在 ubuntu20.04上面安装了ar_track_alvar,就可以进行应用。下载好后,里面有三张二维码图片,本次使用的是table_8_9_10.png。
二、具体配置
1.首先找到系统贴图所在的文件夹 /usr/share/gazebo-11/media/materials/textures,将table_8_9_10.png复制进去,这里需要用到sudo获取系统的权限。在配置文件路径下终端运行:
sudo cp wheeltec.jpg /usr/share/gazebo-11/media/materials/textures/table_8_9_10.png
放入好后里面具体如下图所示
2.上述操作完成后再到系统材质所在文件夹 /usr/share/gazebo-11/media/materials/scripts/gazebo.material,使用命令,新建一个.material文件,用于后续对其的加载
sudo gedit table_8_9_10.material
table_8_9_10.material 里面的内容如下
import * from "grid.material"
material Gazebo/table_8_9_10
{
technique
{
pass
{
ambient 1.0 1.0 1.0 1.0
diffuse 1.0 1.0 1.0 1.0
specular 0.2 0.2 0.2 1.0 12.5
texture_unit
{
texture table_8_9_10.png
filtering trilinear
}
}
}
}
上面红箭头所示及是新添加的文件。
这里只给出这边配置好的截图供参考,具体见下面的图片
最后运行自己的gazebo模型,就有了二维码