自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (4)
  • 收藏
  • 关注

原创 如何下载ros2源码

拉取repos文件,里面包含了ros2源码的一些代码仓库信息。所以没事还是要多看看官方文档,可以收获很多东西.。好了,接下来就可以愉快的开启源码研究之旅了...。长这个样子就是拉成功了,

2023-04-04 15:31:52 1113

原创 Eigen使用笔记

1、Assertion `index >= 0 && index < size()' failed. 这种一般都是使用的时候越界了,比如定义了一个Eigen::Vector3d的变量a,访问的时候用了double m = a[3];造成的

2022-06-16 15:29:17 1573

原创 坐标变换与坐标系变换

在slam中,经常充斥着坐标变换,坐标系变换等等知识,经常把我们搞得头大。这篇文章稍微记录一些我个人的一些心得体会,给同是困惑的人一些参考。其实坐标系变换与坐标变换在数学公式上来说其实都是差不多的,只是表达的东西不一样。比如坐标系A到坐标系B的坐标系变换主要还是强调坐标系A如何通过这个变换矩阵变到坐标系B,在这里,转动的是坐标系A 的相关坐标轴,就好像字面意思那样,起始位置在A(就好像把A当做参考系一样)。坐标变换在slam中其实是针对某些具体点来讲的(比如某些静止不动的......

2022-05-16 17:02:38 3251 2

原创 lidar_align编译安装踩坑

我的系统是ubuntu18.04在利用官方教程进行安装时,出现如下报错:Could not find a package configuration file provided by "NLOPT"修改CMakelist.txt文件17行:list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_SOURCE_DIR})改为如下即可:list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_SOURCE_DIR}/${PROJE

2022-05-06 17:17:07 1009

原创 absl编译使用踩坑

系统是ubuntu18.04,刚接触cartographer,这两天在编译工程,就你报错多!!!坑1:can not be used when making a shared object;recompilewith-fPIC 这个是由于在进行源码编译的时候,没有打开POSITION_INDEPENDENT_CODE选项所致。附:我的源码编译步骤如下:git clone github地址git checkout 对应版本cd abseil-cppmkd...

2022-04-06 17:27:23 8587 12

原创 imu_utils安装踩坑

我的环境是ubuntu14.041、首先安装依赖项sudo apt-get install libdw-devimu_utils还需要ceres和eigen库,具体安装步骤可以自行上网查阅,直接clone下来cmake安装即可。没什么坑。2、先安装code_utils这个一定要先安装编译,不然会报错cd ..catkin/src #工作空间git clone https://github.com/gaowenliang/code_utils.gitcd ..catkin_m

2021-04-30 13:12:17 1896 2

原创 gazebo仿真问题集锦

本文专门记录自己在使用gazebo仿真时所遇到的一些问题以及解决方案。linux版本:Ubuntu14.04 ROS版本:indigo gazebo版本:2.2.3【一】在http://gazebosim.org/tutorials?tut=plugins_model&cat=write_plugin该网址教程编译插件时,出现以下报错:遂百度,...

2020-12-07 15:03:19 623

原创 【ROS】在类中实现自定义多线程回调

在ros中,我们常用的回调处理是ros::spin()或者ros::spinOnce(),但是,这两个是阻塞式单线程处理的,如果在所有的回调队列里面,其中有一个耗时过长,则会影响其他的回调。以图像处理为例,比如在机器人运动过程中,我们需要对机器人采集到的图像进行处理,同时还需要订阅其他的话题做出其他的决策行为,在这里,由于图像处理占用时间较大,用ros::spin()或者ros::spinOnce()进行回调的话就可能出现很多问题。此时我们可以考虑使用多线程回调,具体讲解见官网wiki,如下。h

2020-12-07 14:24:05 2044 2

原创 error while loading shared libraries: libopencv_imgcodecs.so.3.4

最近给电脑重新安装了opencv3.4.10,但是跑工程时却出现这个问题,网上百度了一堆,发现应该是库设置的问题,但是到底是哪里出了问题,怎么设置,我根据我自己的实际情况做了改进最终成功,所以应该具体问题具体分析,照搬照抄有时候解决不了问题。首先,我的opencv安装之后,其库目录是在这个位置,其实出现这个问题原因很简单,我以前是根据网上的小白教程一步步的安装的,设置出现了一些问题。解决这个问题也很简单,就是安装opencv最后配置过程再走一遍,只是把路径根据自己安装好的目录进行修改。打开文件:

2020-07-06 10:38:13 2138

原创 【ROS】(基于现有类实现)插件plugin的编写及调用

看到网上的各种方法都是wiki上的内容,先创建一个基类,再写插件类继承基类实现。那么,基于现有类是怎么实现的呢?其实也是一样的原理,只不过在实现的过程中稍微注意一下就可以了。在这里分享一下我写的一个基于现有类的例子,以供跟我一样有该需求的人进行参考。 基于手写一个基类的插件是怎么实现的,大家可以先去翻看一下wiki,或者查询一下古月的博客都可以找到答案。我这里说的是不用创建基类的写法。在这里,我将一个简单的机器人运动控制类做成一个插件的形式为例,再用另外一个包调用这个插件(w...

2020-06-09 14:05:51 975

原创 【opencv】图像坐标系的理解

  在冈萨雷斯的【数字图像处理】一书中,定义图像左上角为原点,竖直向下为x轴,水平向右为y轴。我也想当然的认为在opencv里面也是这样。  最近看一些opencv的示例程序时,总是被里面的一些注释所迷惑,而且各种参考书也没有清楚的说明各个坐标轴的关系。遂查之,才发现,这里的定义是不一样的。  在opencv中,坐标系的原点位于图片的左上角,但是其X轴为水平向右,Y轴为竖直向下。copy的图示如下:1)该坐标体系在诸如结构体Mat,Rect,Point中都是适用的。cols == wi

2020-06-01 15:12:15 11735 1

原创 ubuntu14.04安装opencv3.4.10+opencv_contrib3.4.10

经历了一个下午,终于完成了opencv的第一次安装,不容易,记录下历程:1、下载opencv包官网下载,注意两个版本一致就好了,可以参考这篇文章的下载方法:https://blog.csdn.net/fengxinzioo/article/details/887409152、更新源以及安装依赖sudo apt-get update搞了一下午,忘记后面怎么输入了,自行百度吧,很多...

2019-12-20 11:28:19 469

原创 如何下载ROS源码

以indigo版本为例,可以参考这篇wiki:http://wiki.ros.org/indigo/Installation/Source1、首先,安装必要的依赖项以及工具:sudo apt-get install python-rosdep python-rosinstall-generator python -wstool python-rosinstall build-esse...

2019-09-19 17:11:03 5118

cartographer视频学习课件

cartographer学习视频的配套课件!!! Cartographer is a system that provides real-time simultaneous localization and mapping (SLAM) in 2D and 3D across multiple platforms and sensor configurations. Cartographer的代码庞大,逻辑复杂,包含大量的工程细节,对于初学者不太友好,学习理解代码十分困难,需要花费大量时间仍不得要领。 而企业对激光SLAM从业者的要求越来越高,只会调包调参的人找工作越来越难,只有深入理解激光SLAM原理与代码实现,才具有核心竞争力。

2022-09-20

机器人自主充电技术研究

室内自治移动机器人被越来越广泛地应用于各种场合,如娱乐、搬运、清洁、保安等。在这些不同场合的应用都需要机器人能适应所处的环境,无论是开放式环境还是封闭式环境,无论是室内环境还是室外环境。由于机载电源容量的限制,机器人的工作时间受到限制,这使得机器人不能实现长期自治的功能,如果这个问题被解决,那么移动机器人将会被用于更加广泛的领域。 目前,移动机器人都是使用高质量的机载可充电蓄电池组来给自身供电,但是一般只能维持几个小时,一旦电能耗尽,必须采用人工干预的方式来给机器人充电。即当移动机器人电力不足时,发出提示信号,由操作人员手动完成机器人与充电器之间的电器连接,然后实施充电,完成后也是人工脱离连接电路。其特点是安全可靠,简单易行,但需要专人看管,浪费人力,而且这也使得机器人的自动化、智能化不完整。如果采用人工充电,那么机器人就处于一种非连续的任务环[37](如图7-1所示),这阻碍了机器人的长期自治

2022-05-19

PX4 的ECL EKF2方程推导.pdf

无人机开源飞控px4中 关于EKF2部分的详细推导!

2021-05-18

旋转欧拉角之万向节死锁详解.pdf

在这里,我会简单介绍一下使用欧拉角表示 3D 朝向 (Orientation) 或者 旋转时 Gimbal Lock(通常译为万向锁或者万向节死锁)的产生原因.虽然 这方面的资料很多,但是某些解释可能会让人比较费解(比如 Wikipedia 上那个球型 Gimbal 的动画) ,有时候直接从数学上来理解反而会更直观一 点.和四元数的教程一样,我们在这里使用的也是右手坐标系.

2020-04-26

四元数与三维旋转知识.pdf

之前在网上找的一篇描述四元数知识的文章,很详细!这篇文章的主要目的就是简单讨论一下四元数(Quaternion)与三维旋转之间的关系.简介:虽然网上四元数相关的资料有很多了,但是我好像一直没找到令我满意的,所以就想自己来写一篇.目前很多资料都使用了比较抽象的方式来解释这一主题,而且在某一些点上讲得不是很清楚.

2020-04-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除