- 博客(838)
- 资源 (12)
- 收藏
- 关注
原创 ROS——service机制
服务调用是阻塞的,即当一个节点向另一个节点发送服务请求时,发送者会等待直到收到响应。服务定义(Service Definition):服务定义包括两部分,请求(Request)和响应(Response)。这些定义通常存储在一个.srv文件中,该文件会列出发送给服务的参数(请求部分)和服务返回的参数(响应部分)。编写服务客户端:创建一个或多个客户端节点,这些节点会构造请求,调用服务,并处理响应。编写服务服务器:创建一个节点来实现服务逻辑,注册定义的服务,并处理任何传入的请求。
2024-04-25 21:10:56 13
原创 利用地理矢量数据进行路径规划
地理矢量数据通常是指包括点(如地标、位置坐标)、线(如街道、河流)和多边形(如行政区划、建筑物轮廓)这样的基本几何构造,这些都是构成空间数据的基本要素。在路径规划中,这些矢量数据可以被用来表示网络中的节点和边,以及它们之间的关系。路径规划通常需要解决的问题是找到两点之间的最短路径或最优路径。在ros_param.yaml里面更改初始位置和GPS话题。在move_base.launch中更改osm路径。
2024-04-25 09:31:12 363
原创 shapefile转openstreetmap
打开界面后-》编辑-》首选项-》插件。检索“opendata”后安装。导入与影像相同的空间参考。新建shapefile。右击文件另存为osm。
2024-04-24 20:46:08 28
原创 基于激光雷达的作物表型研究论文汇总
目前我国农业技术的不断进步,智慧农业和精准农业成为未来农业发展的主要趋势,近年来,随着光学成像系统和图像处理技术不断更新和发展,从图像层面对作物生长发育情况进行分析的表型获取方式已逐渐得到育种学家的认可。小麦作为一种重要的粮食作物,是世界上分布最广泛的粮食作物之一,在我国农业生产中占有非常重要的地位,如何打破其传统表型获取瓶颈,通过高通量作物表型平台实现高通量、无损、精准动态解析,进一步挖掘其与遗传机制存在的潜在联系,在小麦遗传育种研究中具有重要意义。
2024-04-24 15:42:48 808
原创 修复bag.active文件
在ROS(Robot Operating System)中,rosbag 是一个非常有用的工具,它用于记录和回放ROS的消息数据。当你使用 rosbag record 命令时,它会记录数据到一个bag文件中。在记录过程中,这个文件会有 .active 后缀,表示这是一个当前正在写入的活跃文件。如果是第二种情况,你可能需要“修复”这个bag文件以便能够正常读取。如果检查通过,则说明修复成功,可以正常使用这个 bag 文件。这将生成一个新的修复后的 bag 文件。
2024-04-23 17:14:04 24
原创 odom反算成经纬度
这个转换系统能够将局部坐标(相对于原点的X, Y, Z坐标)转换回全球坐标系统。将局部里程计数据反算成经纬度坐标的过程涉及几个关键步骤,主要是将相对于某个局部参考点的坐标(例如在机器人、无人车或无人机的导航系统中使用的坐标)转换回全球GPS坐标系统(WGS-84经纬度)。为了能够将局部里程计数据转换为经纬度,首先需要知道局部坐标系统的原点(即参考点)在全球坐标系统中的位置。对于从里程计获得的每个局部坐标点,使用步骤2中设置的坐标转换系统将其转换为经纬度。使用转换模型将局部坐标转换为全球坐标。
2024-04-18 18:02:50 313
原创 自动驾驶数据集汇总
摘要:此存储库是UrbanNav数据集的使用页面。在城市峡谷中,由于高楼林立,GNSS的精度受到严重挑战,导致大量的非视距(NLOS)接收和多路径效应。UrbanNav数据集希望为社区提供一个具有挑战性的数据来源,以进一步加快在具有挑战性的城市峡谷中进行准确和稳健定位的研究。数据集包括来自GNSS接收机、激光雷达、相机和IMU的传感器测量数据,以及来自SPAN-CPT系统的准确地面事实。简而言之,UrbanNav数据集特别关注改善GNSS在城市峡谷中的定位,但也提供来自激光雷达、相机和IMU的传感器测量。
2024-04-18 09:12:44 720
原创 在实车上进行lio-sam测试
PS:将雷达和imu相对固定后,拆下来,原地晃啊晃,直到xyz进度达到百分百,参考gif。标定完成后,会在result文件夹下生成result.txt。
2024-04-16 15:01:47 46
原创 numpy/arrayobject.h: No such file or directory
安装完 NumPy 后,需要找到 numpy/arrayobject.h 头文件的位置。这个文件通常位于 Python 安装目录下的 site-packages/numpy/core/include/numpy 文件夹中。错误表明编译过程中找不到 NumPy 相关的头文件。这通常是因为环境中的 NumPy 没有被正确配置到包含路径中,或者 NumPy。替换 /path/to/numpy/headers 为步骤 2 中找到的实际路径。
2024-04-15 14:46:58 41
原创 opencv/cv.h: No such file or directory
错误信息显示 opencv/cv.h: No such file or directory 表明编译时未能找到 OpenCV 的头文件。这通常发生在 OpenCV 未被正确安装或者路径未被正确配置到编译环境中。这是一个更现代的包含方式,涵盖了大部分 OpenCV 功能。确保替换 你的目标名称 为实际的目标模块名。
2024-04-15 10:42:49 491
原创 激光slam论文汇总
我们提出了一种实时的里程测量和映射的方法,使用距离测量从一个2轴激光雷达移动在6-DOF中。这个问题很困难,因为距离测量接收在不同的时间,和运动估计的误差会导致产生的点云的错误配准结果。到目前为止,连贯的3D地图可以通过离线批处理方法建立,通常使用循环闭包来纠正随时间变化的漂移。我们的方法实现了低漂移和低计算复杂度,而不需要高精度的测距或惯性测量。获得这种性能水平的关键思想是将复杂的同时定位和映射问题进行划分,该问题寻求通过两种算法同时优化大量的变量。
2024-04-12 17:24:15 768
原创 如何在rosbag中获取第一帧数据
首先,你需要知道你感兴趣的话题名称。可以通过rosbag info your_bagfile.bag来查看bag文件中包含的话题。回到运行rosbag play的终端,按空格键继续播放。rostopic echo命令应该会打印出第一帧的数据,然后立即退出。在另一个终端窗口,使用rostopic echo命令加上-n 1选项来订阅你感兴趣的话题。这将只打印出第一条消息。使用–pause选项启动bag文件,这将在播放开始时暂停。
2024-04-11 16:21:31 32
原创 lidar和imu标定
将 lidar_align/src/lidar_align/NLOPTConfig.cmake 文件移动到 lidar_align/src/ 下(与lidar_align同级)
2024-04-11 13:56:59 305
原创 高精度地图导航论文汇总
随着传感器技术的不断发展和计算机对环境的感知能力的增强,以及深度学习、强化学习等科学技术的突破,无人驾驶技术成为了一个备受关注的领域。在这种大环境下,无人驾驶技术已经被推向了新的高潮。当前无人驾驶主要分为两大阵营,一是依靠传感器、计算平台不断提高车辆自身的识别检测能力,称为单车智能驾驶,另一类是依靠高带宽低延时的通信技术和增加路测的辅助设备来实现,称为网联车智能驾驶。前者的主要问题是单车能耗和成本高,观测不充分,后者的问题是通信延时高。同时二者都存在地图精度低、定位精度低频率慢等缺点。
2024-04-10 21:02:00 537
原创 lio_sam+move_base导航仿真实现
主要参数文件来自这里https://github.com/wh200720041/warehouse_simulation_toolkit/tree/master/param。move_base的输入话题有三个:/odom,/map, /scan,前两个做重映射即可,后面一个在pointcloud_to_laserscan包中发布了。参考坐标系向lio_sam配置对其,在lio_sam中,坐标系为。在move_base设置为。
2024-04-10 16:14:10 339
原创 Point cloud转 Laser sacn
在ROS中将点云(PointCloud)转换为激光扫描(LaserScan)是一个常见的任务,尤其是在某些机器人系统中,激光雷达数据被用于导航和避障,但传感器输出的是点云数据。这种转换可以通过 pointcloud_to_laserscan 包实现,该包提供了一个节点,可以将接收到的PointCloud2消息转换成LaserScan消息。
2024-04-09 10:04:50 364
原创 在Gazebo中如何拯救翻车的机器人
启动Gazebo后,在右侧工具栏中,你会找到一个可以拖拽物体的图标(通常是一个手掌图标或者类似的)。随后,你可以用鼠标点击并拖拽小车,将其翻回正位。你可能需要在三维空间中调整视角,以便更好地控制小车的位置和方向。
2024-04-09 09:32:18 373
原创 三维点云转二维栅格地图
将投影后的二维点云转换为栅格地图(occupancy grid)。在栅格地图中,每个单元格(grid cell)表示空间中的一定区域,单元格的值表示该区域被占用的概率。在ROS中,将三维点云转换为二维栅格地图是一个常见的需求,尤其是在机器人导航和路径规划中。去除离群点:移除离群的噪声点,常用的方法有统计分析滤波(Statistical Outlier Removal)。降采样:减少点云的数据量以提高后续处理的效率,常用的方法包括体素网格滤波(Voxel Grid Filter)。
2024-04-08 20:14:17 207
原创 基于liorf_localization的重定位
在LIO-SAM的基础上进行重定位,主要是指在已经建立的地图上进行位置的快速定位,这对于机器人在已知环境中的快速启动或者在丢失定位后的恢复尤为重要。LIO-SAM是一个高效的激光雷达增量式SLAM系统,其重定位功能需要额外的策略和步骤来实现。
2024-04-08 15:37:22 144
原创 在GAZEBO中添加GPS模拟
一个卫星信号从卫星上发出时,带有一个发送时间,而GNSS接收机接收到它时,有一个接收时间,通过比较时间间隔,就能估算各卫星离我们的距离。在普通车辆的道路级导航中,单点定位的精度足以让驾驶员辨认出车辆位于哪条道路,但在多条道路并排时,它的精度不足以区分车辆在高速路上还是辅路上。由于卫星信号在传输中可能产生误差,发展了差分定位技术,即通过地面上的一个已知精确位置的基站与车辆通信,校正车辆卫星接收机的信号。GNSS定位可用性存在问题,不能够全天候、全场地使用,稳定性与场景、结构、物体的遮挡关系,甚至和天气有关。
2024-04-06 14:49:10 261
原创 基于ROS的地图发布和加载(GAZEBO仿真)
这里是你想要保存的地图文件的名称,不需要文件扩展名。例如,如果你想要将地图保存为my_map,只需输入my_map,map_saver会自动生成.pgm和.yaml文件(例如my_map.pgm和my_map.yaml)。使用rosrun命令启动map_server节点,并指定.yaml文件的路径。
2024-04-03 10:20:27 51
原创 在仿真环境中运行lio-sam
Gazebo 仿真提供了一个高效且成本低廉的平台,使研究人员和开发者能够在安全且可控的虚拟环境中设计、测试和优化机器人系统。它允许快速原型制作和迭代,精确控制测试条件,并能模拟复杂或危险的场景,从而避免了在真实环境中可能遇到的风险和成本。
2024-04-02 19:47:06 370
原创 在ros2中获取两个坐标系的外参关系
使用 ros2 run tf2_ros tf2_echo 命令来监听两个坐标系之间的转换。你需要替换 和 为你想要查询的坐标系名称。在终端中,你可以使用 ros2 命令行工具来查看两个坐标系之间的外参关系。这个命令会实时显示两个坐标系之间的转换信息,包括位置(x,y,z)和四元数表示的旋转(x,y,z,w)。首先,确保你的 ROS 2 系统正在运行,并且正在发布你感兴趣的坐标系的转换信息。打开一个新的终端窗口。
2024-04-02 16:59:13 200
原创 在保存原容器的情况下重新安装docker
注意: 这将会删除所有Docker的镜像、容器和卷。请确保你已经备份了需要保留的数据。如果你看到了欢迎消息,表示Docker已经成功安装并运行。
2024-04-01 20:11:42 306
原创 在ROS2中一次性将缺失的依赖包装好
在ROS 2中,可以使用rosdep工具来一次性安装编译ROS 2包所需的所有缺失依赖。rosdep会检查你的ROS 2工作空间中所有包的package.xml文件,并自动安装所有列出的依赖项。
2024-04-01 17:17:32 105
原创 在ros中获取两个坐标系的外参关系
RViz是一个可视化工具,可以帮助你直观地看到不同坐标系之间的关系。在RViz中,添加一个TF显示,就可以看到所有活动的坐标帧及其之间的关系。在这两个例子中,替换frame1和frame2为你实际的坐标帧名称。如果你使用的是较新的ROS版本,tf2_ros是tf的后继者,提供了更多的功能和更好的性能。这会显示frame1相对于frame2的位置(平移)和姿态(四元数表示的旋转)。在ROS节点中,你可以编写C++或Python代码来查询两个坐标系之间的变换。
2024-03-31 22:41:21 54
原创 在仿真环境中进行orb_slam3建图测试
小车搭载了2D激光雷达,realsense深度相机。在小车上添加相机,请参考这篇。在农场的场景中加入小车。
2024-03-28 19:07:26 55
原创 室内外环境下的无缝导航论文合集
近年来,随着移动机器人的不断发展,室外巡检机器人逐渐应用于日常生活中。传统的室外移动机器人是基于全球卫星定位系统(Global Positioning System,GPS)或者惯性导航系统(Inertial Navigation System,INS)进行定位,然而当 GPS 信号受到非视距与多路径等因素影响时,传统依靠 GPS 定位的方法出现较大偏差,此外当移动机器人行驶到 GPS 拒止环境中时,会出现无法获取 GPS 定位数据的情况。
2024-03-27 15:12:17 665
原创 编译遇到/usr/bin/ld: /lib/x86_64-linux-gnu/libapr-1.so.0: undefined reference to `uuid_generate@UUID_1.0
这个错误通常发生在链接过程中,表示链接器找不到uuid_generate函数的定义。这个函数是由libuuid库提供的。要解决这个问题,你需要确保你的系统安装了libuuid库,并且它被正确链接到你的项目中。
2024-03-26 15:02:06 138
原创 星载/机载遥感导航论文合集
采用现有无人车导航系统进行农作物育种表型信息的监测与采集时,存在因育种小区数量较多导致的导航目标点人工测量工作量大的问题,且育种田块不同于大田作物以A-B 线为基线的路径规划方法,无人车需要根据育种材料编号自动行进到某一指定位置进行作物表型信息采集。因此,为提高导航效率和降低人工劳动强度,本文基于无人机遥感对无人车的导航系统进行了研究。通过无人机获取玉米育种田的遥感影像并进行拼接和位置矫正,生成正射影像和数字地表模型(Digital Surface Model,DSM)。
2024-03-26 10:03:48 656
原创 将GPS经纬度坐标转换成本地笛卡尔坐标
将地理坐标(纬度、经度、高度)转换为地心地固坐标(ECEF坐标系下的x、y、z坐标),这里_earth是一个Geocentric对象,用于进行地心坐标的计算。总的来说,Reset函数通过定义的纬度、经度和高度,初始化一个本地笛卡尔坐标系,计算了从地理坐标到该本地笛卡尔坐标系的转换所需的所有参数和矩阵。总体来说,IntForward函数实现了从地理坐标系到局部笛卡尔坐标系的转换,包括平移和旋转,使得局部坐标系的原点位于给定的地理坐标点,并且根据地球的形状和局部原点的方位进行适当的旋转。
2024-03-25 10:07:39 407
原创 VINS-fusion中的global fusion详解
在inputOdom函数中,即使没有新的GPS数据,只要有里程计(odom)数据输入,globalP就会根据当前的OdomP、OdomQ(odom的位置和旋转)以及WGPS_T_WVIO(上一次GPS数据与VIO之间的变换矩阵)来更新。因此,即使没有新的GPS数据,只要odom数据持续输入,globalP就会实时更新。但是,如果长时间没有接收到GPS数据,而odom数据持续更新,那么定位的准确性可能会逐渐降低,因为累积的odom误差没有通过新的GPS数据进行纠正。计算视觉里程计和GPS之间的最终变换矩阵。
2024-03-25 09:23:02 505
原创 将深度图转成2D激光
将深度图转换为2D激光扫描数据是一个在机器人和自动化领域常见的任务,尤其是在计算资源有限的情况下或当只需要2D数据时。这个过程通常涉及从深度图中选择一个水平切片(或多个切片)并将其转换为距离读数。
2024-03-22 15:00:07 41
原创 智能农业:农业技术与效益
智慧农业的本质是在农业活动中引入新技术。无人机、人工智能、大数据、物联网、卫星等的使用使农业和农业变得“智能”,使种植者能够优化他们的工作并获得更好的结果。所有这些都减少了体力劳动的比例,降低了财务成本,并增加了产量,使农业企业更具成本效益。现在,在农业中使用先进技术比以往任何时候都更加重要。据预测,世界人口将增长34% 到 2050 年。这需要更高的农作物产量和优化自然资源的利用。气候变化正在加剧这一情况。这一切都使得在工作中引入有效的方法成为必然。智慧农业如何助力当地农业?
2024-03-21 21:33:54 1530
原创 在OAK-D S2相机上应用ORB_SLAM3
ORB-SLAM3是一种基于特征的SLAM(同时定位与地图构建)系统,它可以在多种环境中实时运行,包括在单目、立体和RGB-D摄像头输入下。这个系统是ORB-SLAM系列的第三个版本,其前身为ORB-SLAM和ORB-SLAM2。ORB-SLAM3的主要特点包括:多种传感器输入:ORB-SLAM3支持多种类型的摄像头输入,包括单目、双目(立体摄像头)和RGB-D摄像头。这意味着系统可以适应不同的应用场景和硬件配置。
2024-03-21 14:54:09 320
原创 毫米波雷达slam论文汇总
基于激光雷达的SLAM在不利天气(如雨、雪、烟雾、雾)中很容易失效,而mmWave雷达则不受影响。然而,目前的研究主要集中在2D(x、y)或3D(x、y、多普勒)雷达和3D激光雷达上,而4D雷达(x、y、z、多普勒)的工作有限。4D雷达作为具有独特特征的市场新入口,输出三维点云,而不是2D点云;与3D激光雷达相比,四维雷达具有噪声更稀疏的点云,使得提取几何特征(边缘和平面)更具挑战性。在本文中,我们提出了一个由三个模块组成的四维雷达测距系统: 1)前端模块进行扫描到扫描匹配计算测程,考虑每个点的概率分布;
2024-03-19 17:43:42 422
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人