自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (3)
  • 收藏
  • 关注

原创 一、pixhawk 开发之 QGroundControl 安装

在ubuntu 18.04下,安装地面站

2022-10-05 11:11:15 1153 1

原创 PX4 OffBoard Control

开始对无人机飞控下手,先是PX4固件,往后一步一步走!要变强!

2022-09-24 15:58:52 839

原创 window10安装双系统ubuntu18.04

ubuntu18.04 和win10 双系统安装

2022-07-29 10:11:58 1004

原创 ubuntu18.04 ROS下两台计算机话题交互

ros 下两台计算机之间的话题的订阅

2022-07-20 09:56:53 994 2

原创 扩展卡尔曼滤波

EKF目录前言一、系统描述二、扩展卡尔曼滤波1.线性化2.算法流程1)初始化2)滤波、观测更新3)预测更新前言针对非线性系统,卡尔曼滤波算法的效果比较差甚至不可使用。于是就有了扩展卡尔曼滤波,针对非线性系统也可以做到比较好的预测。一、系统描述对一个离散的非线性随机系统的状态空间的描述如下: 其中是一个维...

2022-06-02 15:18:23 951

原创 卡尔曼滤波(利用C++编写,ROS下实现)

卡尔曼滤波 C++

2022-05-27 20:21:59 6732 26

原创 将0~255的数转为二进制数输出

简单的输出二进制数目录前言二、代码1.头文件.h2.头文件对应.cpp3.主函数总结前言最近用到了转换二进制数的功能,所以自己写了一个记录一下。一、原理除二取余法二进制的转换 - 知乎 (zhihu.com)二、代码1.头文件.h#pragma once#include<iostream>#include<vector>using namespace std;void Get_Binary(int a..

2022-05-20 16:36:13 749

原创 WHEELTEC IMU-N100惯导模块之数据解析(二)

前言这篇文章是在串口通讯接收好数据之后对数据进行解析的过程,主要包括角速度、加速度等。直接开整,肯定有不足之处,大家共同讨论进步!一、编写测试订阅者1、编写imu_sub.cpp这一部分我们主要是来介绍ros中编写订阅者,来订阅上一章ros发布的话题 /raw_imu_data ,并在回调函数中对订阅到的消息作相应的处理。直接上代码(很简单)。在功能包的 src 下面添加 imu_sub.cpp ,内容如下。因为逻辑很简单所以代码很少读起来也很容易,做一下简单的介绍。IMUSIZE是

2022-05-16 11:48:18 3350 14

原创 WHEELTEC IMU-N100惯导模块之串口通信(一)

关于imu的串口通信

2022-05-15 16:52:14 3476 4

原创 卡尔曼滤波

系列文章目录前言一、线性高斯系统二、卡尔曼滤波算法1.卡尔曼滤波算法的应用2.卡尔曼滤波的数学推导1、预测部分的推导2、观测部分的推导前言最近在阅读概率机器人这本书,读到了卡尔曼滤波的相关内容,想要记录下来以供以后的复习。对书中的内容进行了翻译并加入了自己的理解。在看之前大家可以先了解一下贝叶斯滤波算法的基本思想和基本的数学公式的推导。一、线性高斯系统卡尔曼滤波的使用场景是在线性系统中用于连续状态的预测的滤波算法。在某一时刻t,卡尔曼滤波的可信度是由两个参数来

2022-05-02 15:05:15 1266

原创 静态存储持续性

无链接性的局部变量——将static限定符用于在代码块中定义的变量。目录一、在代码块中使用static二、相关代码总结一、在代码块中使用static 在代码块中使用static时,会使局部变量的存储持续性变为静态。也就是说,该变量只在该代码块中可以使用,但是当该代码块不活动时它依旧是存在的。因此在两次函数的调用之间,静态局部变量的值是保持不变的。如果初始化了静态局部变量,那么就只在程序启动时进行一次初始化,第二次再调用函数的时候将不会初始化。二、相关代码...

2022-04-24 09:53:17 348

原创 利用 imu_utils 标定 imu

前言 记录利用 imu_utils 标定 imu,最近在使用imu做导航,要对imu进行标定,使用标定得到的加速度的噪声和加速度随机游走噪声以及角速度的噪声和角速度的随机游走噪声。一、安装 imu_utils1、安装依赖项sudo apt-get install libdw-dev2、安装ceres 参考高博slam十四讲,安装ceres。3、编译 code_utilscd ~/imu_calib_ws/srcgit clone https:...

2022-04-23 22:03:28 6095 45

原创 惯导(IMU)的使用

提示:和上一篇关于利用imu计算位移的文章相比,这篇我对imu的理解应该是更加深刻了。文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言这次使用的imu和上一篇文章中所提到的imu是同一款,时隔几个月再一次使用的时候发现有点错误,所以前来记录一下,附上一张使用的imu的图片。 这次使用的时候出现了几个问题:1、imu的数据采集频率过低,需要在上位机调整。 ...

2022-04-19 18:49:27 6169 10

转载 【无标题】realsense d435i ubuntu18.04 安装

在ubuntu18.04 下安装realsense d435i

2022-04-15 19:02:48 176

原创 Livox mid 40使用系列

目录系列文章目录文章目录前言二、Mid-40 的动态配置1、动态IP2、动态IP连接图三、Mid-40 的静态配置1、静态IP配置步骤2、静态IP配置图3、静态IP配置后要重新配置动态IP的办法(第一条)四、配置完成后的使用五、结果1、利用自带的软件采集点云2、在ROS下进行建图(比较乱因为没有摆正)前言随着人工智能、机器人技术、自动驾驶技术等的不断发展,与其相关的科学技术也在不断地发展,激光雷达的出现促进了机器人领域的相关发展,例如无人车

2022-04-15 15:42:43 2296

原创 雷达和imu的联合标定原理

雷达和IMU的外参标定标定的意义 标定的原理在系统中,我们通常认为IMU就是载体系,所以标定所得到的外参是从雷达到imu系的一个位姿变换矩阵 。假设在世界坐标系中有一个静止不动的物体,用已经固联好的系统在两个不同的位置去观测这个静止的物体。则可得如下位姿公式:物体在世界坐标系下的位置是没有变化的所以有:因为是已经固联好的所以可以得到:可以由里程计得到:但是在纯IMU的情况下标定得到的误差比较大甚至不可使用。...

2022-04-02 09:44:38 1638

转载 记录 cv_bridge 带来的未定义的问题

问题如上,解决办法如下:切记,最后保存文件,在CmakeList中添加cv_bridge依赖包。就是在 CmakeLists.txt 的 find_package 中添加 cv_bridge 。参考以下博主的链接:ROS中用cv_bridge和opencv时出现cv::xxx未定义的问题_羊羊羊羊羊羊羊--的博客-CSDN博客...

2022-03-23 21:13:34 515

原创 关于LOAM中的 transformAssociateToMap()函数

由于每次都会忘记所以写下来,如果不对,望大家指正。就是如何通过雷达里程计的当前位姿以及雷达里程计的上一帧的位姿和经过map优化之后的上一帧的位姿,注意以上都是在世界坐标系下的位姿状态。先介绍一下简单的位姿转换的知识:假设我们已知第帧在世界坐标系下的位姿,记为,读作的位姿变换(以下都是这样的含义),又知道第帧在世界坐标系下的位姿,记为,时间顺序上先 后。那么由第帧到第帧的位姿变换如何得到呢?有如下的公式:。// transformSum为当前里程计信息// ...

2022-03-22 20:22:19 374

原创 利用IMU数据来计算位移

目标:利用IMU测得的加速度信息来计算位移,很简单假设是匀加速运动或是匀速运动都可以,主要是看问题的背景来具体去确定运动模型,这里我就取个简单的匀加速运动模型。学习过程:1、了解IMU的相关原理知识2、阅读产品自带的SDK包3、自己添加并修改相关代码学习内容:这里主要介绍我是如何添改的代码。因为想要直接获取位移需要时间和加速度,这里的出速度我设为0,其加速度的获取可以阅读产品自带的功能包中的源码,我在编写过程中主要是在时间的获取上出现了一点问题,需要获得IMU开启时的时间戳以

2022-02-19 17:01:37 7928 5

原创 利用PercipioDC-图样相机进行简单的三维重建

在学习了高翔博士的一起做RGB-D系列之后,我决定自己利用手上的图样相机实践一下,故将饰演步骤简单的记录一下方便以后回顾。高翔博士的RGB-D系列一起做RGB-D SLAM (1) - 半闲居士 - 博客园一、下载PercipioDC的SDK包本人是在ubuntu18.04下做的实验,首先下载SDK包到PercipiodDC官网去下载相关资料。PercipioDC 开发指南 — PercipioDC 2.3.0 documentation二、实现简单的三维重建1.采集数据利用Pe

2022-01-04 10:54:31 2454

原创 ubuntu 18.04 安装opencv2.4.13 与opencv3.4.15共存

建议使用的Eigen版本为Eigen3.3.3,我之前使用的是Eigen3.7好像是,然后就会导致我装opencv2.4浪费了一天的时间。opencv3.4.15可以默认安装路径,具体步骤为:cd opencv3.4.15mkdir buildcd buildcmake ..make -jsudo make installopencv2.4.13在cmake的时候要设定安装路径,具体步骤为:cd opencv2.4.13mkdir buildcd build

2021-12-26 13:29:13 2654

原创 RGB-D转换为点云图

目录前言一、图像数据的采集二、相机的位姿估计1.位姿估计的方法2.RGB-D转点云拼接总结前言 这两天要做一个RGB-D转点云并进行拼接的小实验,这里面包含了几个小步骤分别是图像数据的采集、位姿的估计、RGB-D转点云、点云的拼接。同样是在师兄的帮助下完成的,所以再感谢一下师兄。一、图像数据的采集 关于图像数据的采集,我使用的是Percipio 深度相机,该相机输出的图像有未去畸变的彩色图、去畸变的彩色图以及彩色到深度的转换图。...

2021-09-06 19:43:01 3513 2

原创 相机内参的标定

最近刚刚开始学习相机的标定,也是在师兄的帮助下完成的。过程还是值得记录的,于是决定写在自己的第一篇CSDN上,便于之后的复习,同时也希望能够和大家进行交流,相互学习,相互借鉴,达到共同进步的目的! 由于这是我第一次写文章,故有不足之处,希望大家予以批评指正,感激不尽! 对于相机内参的标定,笔者认为可以将其看为一个解方程的过程,也就是说在我们知道空间点 以及其在像素坐标系下的坐标 ,再根据世界坐标系同相机内部各个坐标系之间的转换关系,来求解相机的内参,从而达到相...

2021-09-06 10:03:58 5255

eigen3.3.8,用于数学矩阵的计算

eigen3.3.8,用于数学矩阵的计算

2023-07-20

C++之小贪吃蛇找食物的故事

这是一个基于C++语言写的贪吃蛇的小游戏,利用了结构体、类等基本知识,运行环境是vs2019。对于学习C++的小伙伴来说是一个很棒的学习资源噢~

2022-04-29

关于高博的一起做rgb

将原来的opencv2中的相关函数更新为opencv3中的函数,可以在opencv3的环境下直接运行。

2022-04-06

livox SDK关于雷达的SDK

livox SDK关于雷达的SDK

2022-04-06

空空如也

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

TA关注的人

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