使用Kalibr工具线对相机+IMU离线标定

2023-10-31

传感器标定的准确后面做算法才会更准确,所以对Kalibr进行学习。

一、Kalibr编译

1、下载kalibr包

GitHub下载地址

2、 解压后放到/catkin_ws/src文件夹下

重新命令文件夹为kalibr
在这里插入图片描述

3、 安装依赖库

sudo apt-get install python-setuptools python-rosinstall ipython libeigen3-dev libboost-all-dev doxygen libopencv-dev ros-melodic-vision-opencv ros-melodic-image-transport-plugins ros-melodic-cmake-modules software-properties-common software-properties-common libpoco-dev python-matplotlib python-scipy python-git python-pip ipython libtbb-dev libblas-dev liblapack-dev python-catkin-tools libv4l-dev
sudo apt-get install python-igraph

在这里插入图片描述

4、设置编译选项

cd catkin_ws/src/
catkin config --extend /opt/ros/melodic
catkin config --merge-devel # Necessary for catkin_tools >= 0.4. catkin config --cmake-args -DCMAKE_BUILD_TYPE=Release

5、 编译

catkin build -DCMAKE_BUILD_TYPE=Release -j4
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用Kalibr工具线对相机+IMU离线标定 的相关文章

  • 大师兄!SLAM 为什么需要李群与李代数?

    from https mp weixin qq com s sVjy9kr 8qc9W9VN78JoDQ 作者 electech6 来源 计算机视觉life 编辑 Tony 很多刚刚接触SLAM的小伙伴在看到李群和李代数这部分的时候 都有点
  • 三维刚体变换

    欢迎访问我的博客首页 三维刚体变换 1 坐标系 1 1 空间坐标系 1 2 右手坐标系与像素坐标系 2 旋转与平移 2 1 推导旋转 2 2 推导平移 2 3 推导变换 2 4 刚体变换 2 5 坐标系旋转与向量旋转 3 链式变换 4 Ei
  • ubuntu系统下配置vscode编译cmake

    文章目录 一 配置vs code运行c 代码 三个关键文件介绍 1 tasks json run helloworld cpp 1 1 打开cpp文件 使其成为活动文件 1 2 按编辑器右上角的播放按钮 1 3生成task文件 1 4 此时
  • 正交矩阵的保范性:正交变换不改变向量的长度(范数)

    在推导使用SVD分解解方程时 用到了正交矩阵的保范性这一性质 1 正交矩阵定义 A mathbf A intercal A A A A
  • 各向异性(anisotropic)浅提

    文章目录 各向异性 anisotropic 定义 哪种物体具有各向异性反射 什么导致各向异性反射 总结 各向异性 anisotropic 定义 它指一种存在方向依赖性 这意味着在不同的方向不同的特性 相对于该属性各向同性 当沿不同轴测量时
  • ORB_SLAM3复现——上篇

    ORB SLAM3 前言 1 ORB SLAM3 2 准备环境 2 1 C 11 Compiler 2 2 Pangolin 2 3 Opencv 2 4 Eigen 3 复现ORB SLAM3 3 1 下载代码 3 2 执行build s
  • 激光SLAM直接线性方法里程计运动模型及标定

    原创作者 W Tortoise 原创作者文章 https blog csdn net learning tortosie article details 107763626 1 里程计运动模型 1 1 两轮差分底盘的运动模型 1 2 三轮全
  • np.meshgrid()函数 以及 三维空间中的坐标位置生成 以及 numpy.repeat()函数介绍

    一 np meshgrid 函数 1 np meshgrid 介绍 X Y np meshgrid x y 代表的是将x中每一个数据和y中每一个数据组合生成很多点 然后将这些点的x坐标放入到X中 y坐标放入Y中 并且相应位置是对应的 下面是
  • rtabmap安装与使用

    参考 ubuntu18 04安装Rtabmap 具体详细步骤 教你手把手运行基于ZED的rtab map ZED入门 利用RTAB MAP做SLAM ubuntu16 04 ROS Kinetic rtabmap 源码 非ros版本 安装运
  • [SLAM四元数基础系列一] 四元数定义 Hamilton vs JPL

    四元数定义 Hamilton vs JPL 简介 四种区分方式 Hamilton vs JPL 引用 不管是卡尔曼滤波或者BA优化形式的SLAM或者VIO系统中 都需要用到单位四元数 Quaternion 来表示旋转 主要是单位四元数表示旋
  • 深度相机Kinect2.0三维点云拼接实验(一)

    文章目录 摘要 Kinect2 0简介 工作原理 RGB相机成像原理 深度相机成像原理 总结 参考文献 摘要 Kinect2 0是微软推出的一款RGB D相机 它即支持普通相机的拍摄 也支持脉冲测量深度信息 本系列文章基于该传感器给出基本的
  • Eigen::aligned_allocator

    如果STL容器中的元素是Eigen库数据结构 例如这里定义一个vector容器 元素是Matrix4d 如下所示 vector
  • LeGO-LOAM代码详细注释版

    学习LeGO LOAM时 写的代码注释github代码链接 一部分注释来自github用户wykxwyc 一部分来自网上查阅 还有一部分是自己的理解 持续更新中
  • Ubuntu20.04安装各种库----简洁版

    目录 Eigen3 Sophus Pangolin Ceres g2o 建议先装anaconda再装ros python opencv啥该有的都有了 下面仅仅安装ros没有的库 Eigen3 作用 线性代数开源库 提供了有关线性代数 矩阵和
  • SLAM--三角测量SVD分解法、最小二乘法及R t矩阵的判断

    目录 一 三角测量 方法一 SVD分解法的推导 方法二 最小二乘法求解 二 ORB SLAM2 三角测量源码 三 利用Eigen源码实现三角测量 方法一 SVD分解法 方法二 最小二乘法求解 速度最快 方法三 利用OpenCV自带函数 四
  • 无人车

    1 无人车四大核心技术 自动驾驶实际包含三个问题 一是我在哪 二是我要去哪 三是如何去 第一个问题是环境感知和精确定位 无人车需要的是厘米级定位 厘米级定位是无人驾驶的难点之一 不光是车辆本身的语义级定位 还有一个绝对坐标定位 第二个问题是
  • Eigen几何模块的使用方法

    include
  • SLAM练习题(十一)—— G2O实战

    SLAM 学习笔记 写在前面的话 算是一点小小的感悟吧 估计位姿的方法有线性方法和非线性方法 线性方法就是特征点法中的2D 2D的对极约束 3D 2D的PnP问题 非线性方法有BA优化 它将位姿的估计问题转换成了一个误差关于优化量的最小二乘
  • Ubuntu18.04安装Autoware1.15(解决Openplanner无法绕障的问题:Openplanner2.5)

    文章目录 一 下载Autoware1 15源码 二 安装依赖 三 修改CUDA版本 四 编译以及报错解决 编译 1 报 undefined reference to cv Mat Mat 的错就按照下面方式改相应包 2 遇到OpenCV的C
  • 什么是深度学习的无监督学习与有监督学习

    无监督学习 深度学习中的无监督学习方法是一种训练算法 它在没有标注输出的情况下从输入数据中学习模式和特征 这种方法的核心是探索和理解数据的内在结构和分布 而不是通过已知的输出来指导学习过程 无监督学习在深度学习领域有许多不同的形式和应用 以

随机推荐

  • 【python】考前复习,python基础语法知识点整理

    文章目录 1 常量与表达式 2 变量和数据类型 创建变量 数据类型 动态类型 数据类型的转换 3 注释 4 字符串 字符串的定义方式 字符串的拼接 字符串的格式化 字符串格式化的精度控制 字符串的格式化 对表达式进行格式化 5 从控制台输入
  • 【Android Jetpack】新一代导航管理——Navigation

    目录 前言 使用Navigation 创建导航视图 添加页面 添加导航 添加导航宿主 实现导航 原理解析 NavHostFragment 支持ToolBar 总结 前言 不知道小伙伴们是否注意到 用AS创建一个默认的新项目后 MainAct
  • 软件测试——性能测试

    性能测试基础 为什么要进行性能测试 WHY 最重要 应用程序是否能够很快的响应用户的要求 应用程序是否能处理预期的用户负载并有盈余能力 应用程序是否能处理业务所需要的事务数量 在预期和非预期的用户负载下 应用程序是否稳定 是否能够确保用户在
  • ISAAC WORKSPACE FILE

    Copyright 2019 NVIDIA CORPORATION All rights reserved NVIDIA CORPORATION and its licensors retain all intellectual prope
  • [需求管理-2]:什么是需求以及需求的收集与识别

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 需求管理 2 什么是需求以及需求的收集与识别 文火冰糖的硅基工坊的博客 CSDN博客 目录 第1章 什么是需求识别 第2章 需求的来源 2
  • 算法题 货仓选址(Python)

    题目 在一条数轴上有 N 家商店 它们的坐标分别为 A1 AN 现在需要在数轴上建立一家货仓 每天清晨 从货仓到每家商店都要运送一车商品 为了提高效率 求把货仓建在何处 可以使得货仓到每家商店的距离之和最小 输入格式 第一行输入整数N 第二
  • File类读取文件---本地文件和网络文件

    读取本地文件 File file new File resource audio 5 mp3 InputStream in null try 一次读多个字节 byte tempbytes new byte 100 int byteread
  • Vue项目开发环境安装、项目构建运行、打包部署详解

    Vue项目开发环境安装 项目构建运行 打包部署详解 背景 Vue工程化项目环境配置还是比较麻烦的 本篇来详细的记录下从0开始的安装 构建 打包 运行全过程 整体步骤 第一 安装Node js 这个是前端工程化项目运行的基础环境 第二 安装V
  • Java 网络编程 —— RMI 框架

    概述 RMI 是 Java 提供的一个完善的简单易用的远程方法调用框架 采用客户 服务器通信方式 在服务器上部署了提供各种服务的远程对象 客户端请求访问服务器上远程对象的方法 它要求客户端与服务器端都是 Java 程序 RMI 框架采用代理
  • 【程序员面试系列】算法题练习-汇总(含华为OD机试题目)

    做个4月算法刷题集合 方便复习巩固 欢迎交流探讨 题库源于牛客网 ACM模式 语言 Java Python 题库链接 HJ1 字符串最后一个单词的长度 描述 计算字符串最后一个单词的长度 单词以空格隔开 字符串长度小于5000 注 字符串末
  • 如何修复损坏的word

    Word是许多人在日常工作中经常使用的软件 但有时它可能会出现意外的崩溃或文档损坏 这对于你正在编辑的文件和工作的进展都会产生重大影响 但是 你不需要过于担心 因为还是有一些方法可以通过修复Word文档中的损坏来解决这个问题 那么如何修复损
  • TCP三次握手,两次可以吗?

    这个问题网络上的回答超级多 众说纷纭 以 RFC 793 来回答这个问题可能更加准确 Reliability The TCP must recover from data that is damaged lost duplicated or
  • C语言——qsort()函数用法

    qsort函数简介及用法 一 qsort 函数的简介 二 qsort 函数实例 1 排序整形数组 2 排序double型数组 3 排序字符型数据 4 结构体类型数据排序 三 使用冒泡排序模拟qsort 函数 一 qsort 函数的简介 qs
  • ' requires string as left operand, not int' aria-label='TypeError: 'in ' requires string as left operand, not int'> TypeError: 'in ' requires string as left operand, not int

    报错 Traceback most recent call last File D PyCharm 5 0 3 WorkSpace 2 NLP 9 DL在NLP中的应用 4 VectorizerVisualization py line 4
  • docker和k8s的关系

    docker和k8s的关系 过去十年间 云计算的技术得到了长足的发展 越来越多的人开始了解 云原生 技术 以著名的云原生计算基金会 CNCF Cloud Native Computing Foundation 为首 各大企业和社区都开始发展
  • javascript:;与javascript:void(0)使用介绍

    最近看了好几个关于 a 标签和javascript void 0 的帖子 谨记于此 以资查阅 注 以下代码未经全面测试 但每一种方法可能会出现的情况都基本做了说明 在做页面时 如果想做一个链接点击后不做任何事情 或者响应点击而完成其他事情
  • 一文读懂CAN总线及通信协议

    CAN总线的汽车 CAN概念 CAN是控制器域网 Controller Area Network CAN 的简称 是由研发和生产汽车电子产品著称的德国BOSCH公司开发了的 并最终成为国际标准 ISO11898 是ISO国际标准化的串行通信
  • CTFSHOW web入门——web171

    首先查询有多少列 1 order by 3 然后查询库名 1 union select 1 2 database 查看ctfshow web库的表 1 union select 1 2 table name from information
  • AtomicInteger如何保证线程安全?

    1 AtomicInteger不是final类型 如何保证线程安全 先看一下AtomicInteger类局部源码 关注两个字段 U以及value public class AtomicInteger extends Number imple
  • 使用Kalibr工具线对相机+IMU离线标定

    传感器标定的准确后面做算法才会更准确 所以对Kalibr进行学习 一 Kalibr编译 1 下载kalibr包 GitHub下载地址 2 解压后放到 catkin ws src文件夹下 重新命令文件夹为kalibr 3 安装依赖库 sudo