ROS图像的Deeplab v3+实时语义分割(ROS+Pytorch) 目录写在前面测试环境主要思路正式开始代码获取代码编译代码使用结果展示写在前面做机器人的同学们应该都知道,ROS是最常用的系统。一般搭载在机器人上的传感器也通过ROS话题消息机制进行发布,从而可以被其他结点所用。最近要做一个机器人图像的实时语义分割任务,但是没有找到相关的教程。其中的难点在于一般的语义分割网络都是离线的,对某个文件夹的图像进行分割并保存结果,而且一般需要用到深度学习环境(如Pytorch)。如何为其配置ROS接口是个难题。这一篇文章就是旨在实现实时的ROS图像的实时语义分割,用的是D
订阅TF消息,并转化为齐次变换矩阵 功能介绍tf是很常用的消息类型,但有时候我们更希望直到他的四乘四的齐次变换矩阵。源代码这个代码是辅助velo2cam_calibration用的,实现两个tf的接收,得到相机到雷达的坐标系转换关系。大家完全可以根据自己需求修改接收的tf,并进行相应处理。用到的主要函数就是listener.lookupTransform()#include <ros/ros.h>#include <Eigen/Dense>#include <tf/transform_broad
根据相机内参向ROS发布camera_info 需求使用相机内参标定算法完成相机标定之后得到了一个相机内参文件,主要包括以下内容:image_width: 640image_height: 480camera_name: narrow_stereocamera_matrix: rows: 3 cols: 3 data: [409.36132, 0. , 326.28708, 0. , 408.53318, 250.17083, 0. , 0. ,
全景建图算法voxblox++复现详细步骤 简介voxblox++是2019年ETHZ的RAL论文Volumetric Instance-Aware Semantic Mapping and 3D Object Discovery所提出的全景建图算法,是在voxblox基础上改进的,增加了实例和语义信息。因为感觉效果不错,所以想复现一下看看能不能作为之后工作的基础。复现过程参考网址基本上是参考着官方教程来的官方安装编译教程官方运行教程还有这一篇博客是找到的唯一一个介绍了编译过程的,很多东西都用到了他的,非常感谢参考编译教程大环境准备
机器人建图的一些方法总结 写在前面作为专攻机器人建图领域的研究生,不知道自己需要掌握多少知识,也不知道之后的发展方向,但多学一些知识总是没错的。因此这篇博客用来总结学习到的一些建图方法吧。经典地图表示方法Voxel (Occupancy grid map)普通的体素地图,把整个空间分成栅格,每个体素存储信息。坐标索引查询。这个我倒是没遇到过Mesh网格地图,存储障碍物的表面信息。我理解的是把命中云连接起来就可以得到。一般都是图像生成的。示意图大概就是这样子,matlab中的mesh。如MIT的Kimera和一系列
科研每日记(私人) 2021/10/31收获一、数学模型可以改为有选择的稀疏核函数:即把free点和分布熵不大的体素都加入其中,包括两部分,一是选择条件,二是稀疏核函数。二、按照岳老师方法,重新计算了效率,多对多之后,确实占用的体素多了一些,所以计算得到的建图效率也大了一些。感想明天如果不回老家的化,再搞一搞SemanticKITTI的定量,再写一写多机融合的数学公式。...
Ubuntu的各种环境配置 Ubuntu的cuda等版本查看查看cuda版本nvcc -V或/usr/local/cuda/version.txt查看cudnn版本cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
联想拯救者R7000P2021安装Ubuntu双系统 联想拯救者R7000P2021安装Ubuntu双系统安装卸载驱动问题安装详细版本适配版本(注意把加的nomodeset改为acpi_osi=linux nomodeset)卸载直接删除卷,再删除引导项驱动问题亮度不能调节应该是因为没有安装官网驱动安装之前一定要先卸载自带的驱动详细安装驱动教程...
IEEE TRANSACTIONS and JOURNALS 期刊论文写作规范 论文标题与作者区分大小写,不能全是大写避免带有下标的长公式作者写全名,姓和名之间加一个空格摘要与关键词对你文章内容的简明而全面的反映必须是独立的,没有缩写、脚注或参考文献在150-250字之间必须写成一个段落不能包含显示的数学公式或表格材料三到四个不同的关键词或短语关键词可访问这里进行选择正文可以去这里下载latex和word模板在文本中第一次使用缩略语和缩略语时,即使在摘要中已经定义了缩略语和缩略语,也要对它们进行定义。不必定义IEEE、SI、AC和DC等缩写包含
SemanticKitti数据集的使用 简单介绍SemanticKitti数据集是在Kitti数据集上进行语义分割等操作的结果,主要任务包括点云的语义预测等。Kitti的点云里程计数据集一共有00-21这22个序列,每个序列都是一段录制的点云包。SemanticKitti为所有点云包提供了里程计等信息,为00-10这些点云包提供了真值的标签,可以用来训练。数据集下载所有数据集直接可以在semantickitti数据集官网下载。依次点击Dataset->Download即可看到下载链接。三个连接均需要下载(占得空间很大,建议放在
针对2021.3以来gazebo中Lidar点云数据不能正常使用的问题解决办法 问题的出现gazebo一直是一个重要的机器人领域的仿真软件,之前我写过一篇使用gazebo和LOAM算法进行联合运行的文章:在Ubuntu18.04中使用gazebo配合LOAM算法仿真在那时候gazebo还是可以正常使用的,但是今年三月之后,突然周围很多人反应gazebo和任何一个LOAM算法联合运行都会报错。我试了一下,果然是这样!经过控制变量分析,直到一定是gazebo出了问题(版本低了?)后来使用之前写过的一些点云处理的代码,发现pcl::fromROSMsg(*CloudMsg, *p
使用LEGO-LAOM、ALOAM和自己录制的点云得到/tf消息 LGEO-LOAM存在的本质就是为了根据单纯的点云输入得到将点云转化到全局坐标系的/tf消息。下图反映了lego-loam的tf树:其中camera_init->map和base_link->camera都是在launch文件中直接发布的静态tf消息。所以其中最重要的部分是camera->camera_init,也就是从小车的当前时刻位置到最初始位置的坐标转换。然而我们录制的velodyne_points消息的坐标系一般都是velodyne,如果只使用上面这个tf树是得不到全局位置的
ROS中rosbag的一些复杂使用——过滤主题时间、更改主题、launch调用 一、过滤消息主题或时间过滤单个topicrosbag filter input.bag only-tf.bag "topic == '/tf'"过滤多个topicrosbag filter input.bag output.bag "topic == '/velodyne_point_cloud' or topic =='/visensor/imu' or topic == '/visensor/left/image_raw'"根据时间过滤rosbag filter input.bag ou