自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 ubuntu18.04编译cuda版本的opcv4.5.5

ubuntu18.04编译cuda版本的opcv4.5.5

2022-09-13 12:46:39 1283 1

原创 ubuntu:nvidia-smi报错:Failed to initialize NVML: Driver/library version mismatch

nvidia:Failed to initialize NVML: Driver/library version mismatch

2022-08-30 21:11:09 1780

原创 ubuntu18.04安装pcl1.9.0

ubuntu18.04安装pcl1.9.0

2022-07-17 21:33:04 541

原创 intel realsense D435i calibration

intel realsense D435i calibration

2022-07-14 22:04:41 904 1

原创 ubuntu20.04出现Unable to find either executable ‘empy‘ or Python module ‘em‘... try

ubuntu20.04出现Unable to find either executable ‘empy’ or Python module ‘em’… try问题-- Could NOT find PY_em (missing: PY_EM) CMake Error at /opt/ros/noetic/share/catkin/cmake/empy.cmake:30 (message): Unable to find either executable 'empy' or Python mod

2022-04-20 14:11:09 15078 12

原创 ubuntu20.04安装pcl1.12.0库

ubuntu20.04安装pcl1.12.0库参考以下文章:参考链接:https://blog.csdn.net/weixin_41836738/article/details/121451965.

2022-04-20 11:33:45 772

原创 Linux下/home占100%,但又没看到大的文件 解决方法

使用df -h命令看到home目录占用了很多使用ls -l或者ll又发现并没有大文件(单位是kb)需要排查这个大bug有个很重要的命令****:按照文件大小查看sudo du -m * |sort -rn |more就可以清晰看到到底占用内存的是谁删除就好了(删除之前百度一下,你要删的文件是不是系统文件,能不能删除)永久删除使用命令:rm -rf XXX // 注意f是force的意思,强制,这么做了就永久不能找回,慎用...

2022-04-12 15:55:32 2375

原创 ubuntu20.04安装cuda库

ubuntu20.04安装cuda库参考链接:https://blog.csdn.net/h3c4lenovo/article/details/119003405.1、查看电脑是否有GPU(nivida品牌)lspci | grep -i nvidia禁用系统自带的集成Nouveau驱动参考链接:https://blog.csdn.net/xue_csdn/article/details/102391145.2、查看电脑可以安装的版本ubuntu-drivers devices安装c

2022-04-11 21:42:58 11867 2

原创 r3live安装编译及问题解决办法

r3live编译、问题解决

2022-04-08 17:07:34 5179

原创 Cartographer源码阅读2D&3D-PGM生成及地图发布 pgm生成

参考链接: https://blog.csdn.net/yeluohanchan/article/details/108887777.

2021-10-09 09:58:59 201

原创 Cartographer源码阅读-删除Submap机制

目录Cartographer源码阅读-删除Submap机制Cartographer源码阅读-删除Submap机制参考链接: https://blog.csdn.net/yeluohanchan/article/details/108887441.

2021-10-09 09:57:30 215

原创 Cartographer源码阅读2D-后端优化-SPA

目录Cartographer源码阅读2D-后端优化-SPASPA优化:类Cartographer源码阅读2D-后端优化-SPASPA优化:类// 存放Node的信息struct NodeSpec2D { common::Time time; // 该帧的时间 transform::Rigid2d local_pose_2d;// 不带重力对齐的LocalSLAM下的位姿 transform::Rigid2d global_pose_2d;// 不带重力对齐的GlobalSLAM下的位姿

2021-10-09 09:52:25 274

原创 Cartographer源码阅读2D-后端回环计算

目录Cartographer源码阅读2D-后端回环计算ConstraintBuilder2D回环计算接口:MaybeAddConstraint()回环计算方法构造分支定界匹配类:DispatchScanMatcherConstruction()分支定界FastCorrelativeScanMatcher2D类接口同一入口:生成低分辨率候选解GenerateLowestResolutionCandidates()低分辨率候选解打分:ComputeLowestResolutionCandidates()打分Sc

2021-10-09 09:42:41 412

原创 Cartographer源码阅读-2D后端-PoseGraph2D

目录Cartographer源码阅读-2D后端-PoseGraph2D后端PoseGraph2D添加Node获取当前轨迹(Local SLAM坐标系)在Global SLAM坐标系下的位姿:GetLocalToGlobalTransform()回环计算接口:ComputeConstraintsForNode()将submap加入优化问题:InitializeGlobalSubmapPoses()执行优化:DispatchOptimization()Cartographer源码阅读-2D后端-PoseGra

2021-10-09 09:26:30 300

原创 Cartographer源码阅读2D-前端Node稀疏化-MotionFilter

Cartographer源码阅读2D-前端Node稀疏化-MotionFilter在trajectory_builder_2d.cc的LocalTrajectoryBuilder2D::AddAccumulatedRangeData函数中,执行稀疏化任务,即,在AddAccumulatedRangeData函数中调用InsertIntoSubmap函数,在InsertIntoSubmap函数内调用(motion_filter_.IsSimilar(time, pose_estimate)函数,进行稀疏化,

2021-10-09 09:06:05 167

原创 Cartographer源码阅读2D-前端Submap生成及数据插入

Cartographer源码阅读-2D前端Submap生成及数据插入前端CSM位姿计算后,将激光点云转换到Local SLAM的坐标系下,插入submaps中,该submaps指的是前端LocalTrajectoryBuilder2D中维护的ActiveSubmap2d。ActiveSubmap2D类class ActiveSubmaps2D { public: explicit ActiveSubmaps2D(const proto::SubmapsOptions2D& options

2021-10-09 09:02:03 714

原创 Cartographer源码阅读2D-前端CSM-CeresScanMatcher2D

Cartographer源码阅读2D-前端CSM-CeresScanMatcher2D基本原理:其实,在代码里实现的时候,又加上了旋转和平移的残差,防止点云匹配的结果和初值差太多。CeresScanMatcher2D类class CeresScanMatcher2D { public: explicit CeresScanMatcher2D(const proto::CeresScanMatcherOptions2D& options); virtual ~CeresScanMa

2021-10-09 08:39:06 308

原创 Cartographer源码阅读2D-前端暴力匹配-RealTimeCorrelativeScanMatcher2D

Cartographer源码阅读2D-前端暴力匹配-RealTimeCorrelativeScanMatcher2D使用暴力匹配的思想,解决当前激光帧和submap匹配的问题:假定在SLAM的过程中,车体的运动是连续有界的,即运动速度是不可能达到无穷大,根据车体的运动速度,可以预测当前帧和上一帧之间的最大相对运动大小是多少,假设我们已经知道上一帧经过CSM解算过的位姿,我们将所有可能的位姿和当前激光帧组合到一起,生成可能解。然后,遍历所有可能解,把所有的可能解投射到submap上:计算当前激光帧通过其位

2021-10-09 08:27:23 346

原创 Cartographer源码阅读-2D前端-位姿外推器-PoseExtrapolator

Cartographer源码阅读-2D前端-位姿外推器-PoseExtrapolatorPoseExtrapolator类,继承于PoseExtrpolatorInterface类class PoseExtrapolatorInterface { public: struct ExtrapolationResult { // The poses for the requested times at index 0 to N-1. std::vector<transform::

2021-09-29 14:26:17 509

原创 Cartographer源码阅读2D&3D----前端自适应滤波----AdaptiveVoxelFilter()

Cartographer源码阅读2D&3D----前端自适应滤波----AdaptiveVoxelFilter()基本原理:调用体素滤波,如果体素滤波后点数大于阈值,则返回,如果小于阈值,则接着使用二分法进行体素滤波。前端使用接口Local_Trajectory_builder.cc // 对重力对齐的点云数据进行自适应滤波 const sensor::PointCloud& filtered_gravity_aligned_point_cloud = sensor

2021-09-28 22:05:25 626

原创 cartographer源码阅读----2D前端根据时间戳滤波(RangeDataCollator)

cartographer源码阅读----2D前端根据时间戳滤波(RangeDataCollator)基本原理:根据当前激光帧的时间戳和上一帧激光帧的时间戳,找到当前激光帧和上一帧激光帧时间重叠的激光点,滤除时间重复的点。在Local_Trajectory_builder.cc中,AddRangeData的对象的类型是RangeDataCollator,作用是将时间上未对齐的雷达数据,进行对齐,滤掉重叠的点class RangeDataCollator { public: explicit Ra

2021-09-28 21:37:01 479

原创 cartographer源码解读----前端2D体素滤波(VoxelFilter)

cartographer源码解读----前端2D体素滤波(VoxelFilter)VoxelFilter类基本原理:将xyz分别除以分辨率,并取整,得到xyz所在cell的id(x,y,z),再将该三个整数分别放入3*32个字节的数中(很好的技巧,避免了大量的遍历和比较),插入voxelFileter::voxel_set_中,后面如果是第一次插入该数,则保留该点,如果之前存在该数,即意味着有其他点落在该网格内,不再保留该点。最新一版的代码,并没有VoxelFilter类,但依然在voxel_fil

2021-09-28 17:29:42 1204

原创 cartographer源码解读——2D前端(LocalTrajectoryBuilder2D)

cartographer源码解读——2D前端(LocalTrajectoryBuilder2D)前端的主要功能点云数据处理:滤波、畸变校正位姿外推器推算位姿暴力匹配、CSM匹配生成submap生成Node传入后端sensors数据通过在cartographer_ros中获取并传入cartographer中,由GlobalTrajectoryBuilder.cc中的AddSensorData()函数,将sensor数据传入前后端,首先考虑前端本节将讲述LocalTrajectoryBuil

2021-09-28 16:36:42 777

原创 cartographer源码解读-2D数据流动-数据分发

二、数据分发接收sensor数据

2021-09-12 21:05:40 512

原创 cartographer源码解读----2D&3D数据流动----轨迹添加(以2D雷达和轮速里程计为例)

cartographer源码解读----2D&3D数据流动----轨迹添加(以2D雷达和轮速里程计为例)入口:node_main.cc(cartographer_ros)void Run() { constexpr double kTfBufferCacheTimeInSeconds = 10.; //构建tf_buffer tf2_ros::Buffer tf_buffer{::ros::Duration(kTfBufferCacheTimeInSeconds)}; tf2_r

2021-09-10 10:42:10 825

原创 ubuntu20.04安装eigen3.4.0(两种方式)和ceres-solver2.0.0

eigen3是干什么用的?Eigen 是C++语言里的一个开源模版库,支持线性代数运算,矩阵和矢量运算,数值分析及其相关的算法。如何安装?1、终端apt命令安装sudo apt-get install libeigen3-devEigen只包含头文件,因此它不需要实现编译,只需要引入头文件即可编译项目。Eigen头文件的默认安装位置是:“/usr/local/include/eigen3”在很多程序中include时经常使用#include <Eigen/Dense>而不是使用#

2021-08-23 21:54:27 15179 5

原创 ubuntu20.04安装OpenCV4.4.0+OpenCV介绍

OpenCV是什么?OpenCV 是一个开源的计算机视觉库,可以从 该网站 获取。OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。 [1] 它轻量级而且高效——由一系列 C 函数和 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV 拥有包括 500 多个C函数的跨平台的中、高层 API。它不依赖于其它的外部

2021-08-23 17:19:20 648

原创 Ubuntu20.04安装ros+gpg: no valid OpenPGP data found+curl: (7) Failed to connect to raw.githubuserconte

1、去ros wiki官网点击install2、选择相应系统需要的版本(如Ubuntu20.04 需要ROS Noetic Ninjemys版本)3、点击选择Ubuntu系统4、按照步骤一步步往下走1、设置源列表(将ros的deb包下载网址添加到/etc/apt/sources.list.d/ros-latest.list该文件下)sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" &g

2021-08-12 20:51:06 2731

原创 ububtu安装谷歌浏览器+搜狗输入法+WPS+vscode+vim

前提:电脑配置:64位处理器一、安装谷歌浏览器deb安装1、下载(cd /tmp)wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb2、安装sudo dpkg -i google-chrome-stable_current_amd64.deb 3、打开(showapplications中打开)二、安装搜狗输入法1、先安装fcitxsudo apt-get install fcit

2021-08-12 16:40:56 547

原创 ubuntu20.04安装好之后需要做什么?更新出现问题:update-initramfs: Generating /boot/initrd.img-5.4.0-48-generic

1、换源原因:在ubuntu中,很多软件都是放在一些网络上的服务器上的,那些服务器就像一个仓库一样,里面存放着很多软件.而这些仓库,就叫做软件源.当你要安装软件的时候,在ubuntu中使用命令就可以自动安装在那些服务器上的软件.而由于网络的问题,有些源和你电脑连接的速度很快,而有些非常慢,甚至有些源根本就不能使用了.有些源中的软件多又全.而且,有些源中的软件更新非常慢,甚至不更新.所以,要正确设置这些源,以保证这些源能够使用,并且速度都很快和软件很多切都是最新的等等问题.所以,基于这些原因,修改和更新源

2021-08-12 15:50:11 2583

原创 高翔视觉slam第四讲第五题、第六题证明

2021-08-08 16:28:28 60

原创 病毒残害后,软件安装的踩坑(附office2019、visual studio2017+matlab2017b、WinRAR5.4网盘链接)

软件安装记为什么记录这篇文章?因为不小心安装了个流氓软件,导致系统崩溃,不得重装系统详细说一下:起初像安装个知云文献翻译,浏览器随便一搜,就直接确认安装了,中途有一个是否同意其软件安装,点了同意,以为就是安装协议,后看到桌面多了软件快捷方式,并非知云,便停止没继续装;随后浏览器被修改了,原本浏览器打开就自动跳转到某狗浏览器页面,经查询是修改了桌面浏览器快捷方式的属性部分的目标项,添加了某狗的网址,随后删除了自动下载的某pdf软件,但有一文件没有删除权限,删不掉。后来通过修改.exe的方式定位到,病毒安装

2021-08-07 22:16:57 329

原创 罗德里格斯公式推导(轴角与旋转矩阵的关系)以及四元数与旋转向量、旋转矩阵、欧拉角之间的转换关系

罗德里格斯公式推导(轴角与旋转矩阵的关系)意义:罗德里格斯公式表示旋转向量到旋转矩阵之间爱你的转换关系旋转向量:一个向量,方向与旋转轴一致,长度等于旋转角度空间中任意旋转都可以用一个旋转轴和一个旋转角来刻画...

2021-07-21 22:04:06 1556 1

原创 linux下使用g++编译.cpp文件的四个过程及使用第三方库编译、g++和gcc的区别、g++和cmake的区别

编译四个过程编写hello.cpp文件预处理:处理宏定义命令生成预处理文件即生成.i文件g++ -E hello.cpp -o hello.i编译:编译转换成汇编语言即生成.s文件g++ -S hello.i -o hello.s汇编:汇编成二进制目标文件即生成.o文件g++ -c hello.s -o hello.o链接:生成可执行文件即.out文件,自动生成a.out文件,或者指定生成可执行文件名(-o hello)g++ hello.o (-o hello)一般情况下只需执行一

2021-07-19 11:48:45 775

原创 visual studio2017+opencv4.0.1+PCL-1.8.1rc2-AllInOne-msvc2017-win64.exe+pcl-1.8.1rc2-pdb-msvc2017配置使用

visual studio code是什么?visual studio是一个编译器(IDE集成开发工具),而visual studio code(VScode)是一个跨平台的编辑器,具体区别自查常用visual studio版本是2015或者2017;安装教程及程序可在相关微信公众号搜索,安装破译;建议不要用网页直接搜(尤其是一些垃圾浏览器,很容易下载很多流氓软件);建议程序员不要轻易尝试新版本,适合大众就好,大佬可忽略!!!opencv是什么?顾名思义,opencv(open source com

2021-07-12 21:34:02 209

原创 sudo apt-get update提示E: 仓库 “http://mirrors.aliyun.com/ubuntu eoan Release” 没有 Release 文件

sudo apt-get update提示E: 仓库 “http://mirrors.aliyun.com/ubuntu eoan Release” 没有 Release 文件问题原因:源配置错误的问题,sources.list配置有误解决办法:1.在官网源下载对应版本最新的源比如我的2.下载sources.list完成之后将源拷贝到对应的位置将原文件覆盖sudo cp sources.list /etc/apt;再执行sudo apt-get成功!参考链接:https://blog.

2021-07-06 21:01:15 1779 2

原创 MATLAB编译matconvnet出错Unable to find cl.exe

MATLAB编译matconvnet出错Unable to find cl.exe问题如下:原因:MATLAB 找不到cl.exe解决方法:1、找到cl.exe所在路径。我的cl.exe所在路径为:VisualStudio安装路径D:\visual studio 2017\VS017\IDE\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x862、参考cl.exe路径,将vl_compilenn.m的646行改为如下:cl_path = fullfile(cc.

2021-07-04 11:08:31 739

空空如也

空空如也

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

TA关注的人

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