<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[啊啦啦的博客]]></title><description><![CDATA[while( !is_done ) { make great efforts; }]]></description><link>https://blog.youkuaiyun.com/OKasy</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; OKasy]]></copyright><item><title><![CDATA[IMU模型与标定]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/104981566</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/104981566</guid><author>OKasy</author><pubDate>Fri, 20 Mar 2020 02:34:52 +0800</pubDate><description><![CDATA[文章目录IMU传感器旋转运动学测量模型与运动模型MEMS加速度计陀螺仪IMU误差模型确定性误差确定性误差标定方法——六面法温度相关随机误差随机误差的标定方法——Allan方差法数学模型加速度计陀螺仪VIO中模型运动模型离散积分方法欧拉法中值法（mid-point)四阶龙格库塔（RK4）总的标定流程
IMU传感器
旋转运动学

旋转的线速度为：
r˙=(−aθ˙sin⁡θ,aθ˙cos⁡θ,0)⊤=...]]></description><category></category></item><item><title><![CDATA[DSM: Direct Sparse Mapping]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/104913105</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/104913105</guid><author>OKasy</author><pubDate>Tue, 17 Mar 2020 02:56:33 +0800</pubDate><description><![CDATA[Direct Sparse Mapping
Introduction

滑窗的会边缘化掉离开视场的点，同时来保证可观性的一致，不能重用边缘化的地图点
特征点法一般根据共视关系选固定位置的激活关键帧和地图点，通过固定一帧的策略保证可观性
选择以前的关键帧，结合时间和共视关系来选择激活的关键帧
时间上远的帧会受drift影响，因此使用多尺度优化，来增加收敛半径
由于距离远伪观测（外点）会增加，使用t分...]]></description><category></category></item><item><title><![CDATA[Direct Sparse Visual-Inertial Odometry using Dynamic Marginalization]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/104913102</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/104913102</guid><author>OKasy</author><pubDate>Tue, 17 Mar 2020 02:52:31 +0800</pubDate><description><![CDATA[Direct Sparse Visual-Inertial Odometry using Dynamic Marginalization1

把尺度，重力方向放进模型中进行联合优化
由于尺度不是立刻就可观的，因此我们以任一尺度进行初始化，而不是延迟初始化到量都变得可观之后（VIORB）。
对旧的量进行部分边缘化，为了保证一致性，提出“动态边缘化”策略。因此在尺度远离最优值时也可以采用边缘化。

D...]]></description><category></category></item><item><title><![CDATA[流形上的预积分]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/104913073</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/104913073</guid><author>OKasy</author><pubDate>Tue, 17 Mar 2020 02:47:47 +0800</pubDate><description><![CDATA[文章目录一、预积分的由来二、相关理论三、初步a.黎曼几何概念b.SO(3)中不确定性的描述c.流形上的高斯牛顿法四、最大后验视觉惯导状态估计五、IMU模型和运动积分六、流形上的IMU预积分A. *Preintegrated IMU Measurements*(1)ΔRij\Delta {\bf R}_{ij}ΔRij​项(2)Δvij\Delta {\bf v}_{ij}Δvij​项(3)Δpij...]]></description><category></category></item><item><title><![CDATA[简单光流实现]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/104913070</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/104913070</guid><author>OKasy</author><pubDate>Tue, 17 Mar 2020 02:22:20 +0800</pubDate><description><![CDATA[文章目录金字塔LKT实现问题描述跟踪算法图像金字塔金字塔特征跟踪迭代光流计算亚像素计算边缘部分特征跟丢判别特征选择
金字塔LKT实现
问题描述
估计一个速度，找到对应的特征位置v=u+d=[ux+dxuy+dy]T\mathbf{v}=\mathbf{u}+\mathbf{d}=\left[u_{x}+d_{x} \quad u_{y}+d_{y}\right]^{T}v=u+d=[ux​+dx​...]]></description><category></category></item><item><title><![CDATA[SLAM在线光度标定总结]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/104913059</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/104913059</guid><author>OKasy</author><pubDate>Tue, 17 Mar 2020 02:21:04 +0800</pubDate><description><![CDATA[文章目录Introduction[^1]光度模型跟踪前端优化后端Introduction[^2]Method假设（Assumptions）衰减因子估计（Attenuation Factor Estimate）相机CRF图像矫正关键帧光度标定光照变化的应对代价函数描述子光照变化鲁棒方程全局模型局部偏差类似特征描述子实验结果Reference
Introduction1
直接法依赖于光度恒定假设，但是...]]></description><category></category></item><item><title><![CDATA[SLAM中边缘化与一致性]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/104420676</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/104420676</guid><author>OKasy</author><pubDate>Fri, 21 Feb 2020 00:42:20 +0800</pubDate><description><![CDATA[文章目录基于图的SLAM[^1]马尔科夫毯上通过边缘化移除节点边缘化后的先验分布相对MLE公式备注边的稀疏化在线确定稀疏拓扑构建一致稀疏因子解耦稀疏化和边缘化VO中的滑窗介绍[^2]滑窗VOBA旧状态边缘化估计的一致性物理解释性能改进办法举例SLAM中边缘化与高斯推断的边缘概率区别Reference
基于图的SLAM1
使用因子图表示，节点表示状态，边表示约束，通常形式为：
zij=hij(xi,...]]></description><category></category></item><item><title><![CDATA[SLAM中最小二乘优化]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/104417182</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/104417182</guid><author>OKasy</author><pubDate>Thu, 20 Feb 2020 23:15:49 +0800</pubDate><description><![CDATA[文章目录BA最小二乘的本质最小二乘问题（Least-squares Minimization）超定方程正规方程的几何解释：适定方程因式分解LU分解Cholesky分解LDLT分解分块消元非线性最小二乘问题（Non-linear Least-squares）SLAM常用的迭代优化算法GN收敛性GN的缺点最速下降法LMDog-LegPCG求解方法求解状态量协方差求解稀疏形式鲁棒核函数未来问题(胡言论语...]]></description><category></category></item><item><title><![CDATA[SLAM 中常用的相机模型&畸变模型总结]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/90665534</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/90665534</guid><author>OKasy</author><pubDate>Wed, 29 May 2019 09:54:10 +0800</pubDate><description><![CDATA[文章目录OverviewCamera modelsPinholeomnidirectionalDistortion modelsEquidistant (EQUI)RadtanFOVProjection modelFull projection modelMEI CameraPinhole Cameraatan CameraDavide Scaramuzza CameraExamplesC++ C...]]></description><category></category></item><item><title><![CDATA[SVO之逆深度滤波]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/88385640</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/88385640</guid><author>OKasy</author><pubDate>Sun, 10 Mar 2019 22:45:43 +0800</pubDate><description><![CDATA[文章目录概率深度模型贝叶斯推断参数近似后验种子点的修剪参数近似推导变分推断推导[^2]后验参数近似Details[^4]测量更新不确定性测量Reference
概率深度模型
贝叶斯推断
深度的测量包括两种，一种是正确的测量，一种是由于遮挡、图像变换或重复纹理导致的错误的测量。如块匹配时，有可能包括误差很大的外点。
研究发现：

好的测量值通常是分布在正确深度值附近的。
错误的测量是在深度范围[Zm...]]></description><category></category></item><item><title><![CDATA[ubuntu折腾三部曲（一）——Gnome桌面]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/88383150</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/88383150</guid><author>OKasy</author><pubDate>Sun, 10 Mar 2019 22:19:13 +0800</pubDate><description><![CDATA[文章目录写在前面Gnome的安装
写在前面
——生命不息，折腾不止
从毕设开始忙各种事，算下来已经有一年没有更博客了。说到底还是一个字，懒！生于忧患死于安乐，安逸是大敌啊。今天惊喜地发现优快云竟然有了MarkDown的功能，这就更让我有了更新的欲望。
抱着生命不息折腾不止的态度，先来写写自己折腾的那些玩意儿。
Gnome的安装
Ubuntu18.04放弃了Unity桌面，默认使用了Gnome桌面...]]></description><category></category></item><item><title><![CDATA[IMU-Camera 联合标定资料总结]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/79864573</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/79864573</guid><author>OKasy</author><pubDate>Mon, 09 Apr 2018 12:41:59 +0800</pubDate><description><![CDATA[最近在研究imu和相机的联合标定方法，根据网上查到的资料和github上的开源工具总结如下。1、联合标定的工具Kalibrhttps://github.com/ethz-asl/kalibrwiki写的很全了，总结以下要点：需要：1、内参：尺度，轴偏差、非线性（应用到raw measurements）2、陀螺仪和加速度计的噪声和随机游走偏差3、标定图像，很成熟了，使用ros中的工具箱就行。采集图像...]]></description><category></category></item><item><title><![CDATA[shared_ptr的详解]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/79817591</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/79817591</guid><author>OKasy</author><pubDate>Mon, 09 Apr 2018 11:27:17 +0800</pubDate><description><![CDATA[参考：《C++ primer 第五版》                https://www.cnblogs.com/boydfd/p/5146432.html (需要多看几遍)前言程序中常用的存储形式如下。静态内存：static对象，类static的数据成员，函数外的变量。栈内存：函数内的非static对象。自由空间或堆：动态分配的对象，程序控制生命周期。动态内存与智能指针从前，我们使用运算符n...]]></description><category></category></item><item><title><![CDATA[C++中static_cast, dynamic_cast, const_cast, reinterpret_cast]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/79724866</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/79724866</guid><author>OKasy</author><pubDate>Wed, 28 Mar 2018 12:40:13 +0800</pubDate><description><![CDATA[前言 题目中这些都是C++类型的层次转换，也可以说是强制转换，说道这里可能会想起C语言中的类型转换（有强制和隐式的）。对，他们是类似的，除此之外C++提供了更为安全的方法，即static_cast, dynamic_cast, const_cast, reinterpret_cast。C中语法：(type) name;//格式1
 type  name;//格式2C++中新加入的语法：static...]]></description><category></category></item><item><title><![CDATA[SLAM算法工程师学习方向]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/79722293</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/79722293</guid><author>OKasy</author><pubDate>Wed, 28 Mar 2018 09:33:01 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/xtl9/p/8053331.htmlhttps://zhuanlan.zhihu.com/p/285655631.编程基础《Effective C++》《C++ Primer》《Effective  STL》    c++112.数据结构与算法。入门推荐 《数据结构（C++ 语言版）》刷题，leetcode和剑指offer。时间来不及推荐这个3.S...]]></description><category></category></item><item><title><![CDATA[ROS常用命令]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/79559204</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/79559204</guid><author>OKasy</author><pubDate>Mon, 19 Mar 2018 19:51:45 +0800</pubDate><description><![CDATA[ROS命令在http://wiki.ros.org/ROS/CommandLineTools上的维基页面上有详细描述。另外,在https://github.com/ros/cheatsheet/releases的存储库中,总结了本章中的一些重要命令。这些是本内容的有用的辅助资料。ROS信息命令具体如下：rostopic list -v 可以分开发布话题和订阅话题,并将每个话题的消息类型一起显示。...]]></description><category></category></item><item><title><![CDATA[ROS--构建系统]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/79497266</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/79497266</guid><author>OKasy</author><pubDate>Wed, 14 Mar 2018 19:36:45 +0800</pubDate><description><![CDATA[序言    ROS使用catkin构建系统，可以轻松使用与ROS相关的构建、功能包管理和功能包之间的依赖关系。它实际上是一种CMake（Cross Platform Make），可以跨平台使用，使用CMakeLists.txt描述。1、创建功能包命令：$ catkin_create_pkg [功能包名称][依赖功能包1][依赖功能包n]会自动生成CMakeList.txt和package.xml文...]]></description><category></category></item><item><title><![CDATA[‘clang-format'在Roboware中显示不可用]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/79558388</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/79558388</guid><author>OKasy</author><pubDate>Wed, 14 Mar 2018 18:21:36 +0800</pubDate><description><![CDATA[系统：ubuntu 16.04Clang-format作为插件可以自动排列美化代码。安装后，在Roboware中可以使用ctrl+shift+p，输入“format”或者快捷键Ctrl+Shift+I。但是明明安装却显示：The ‘clang-format’ command is not available. Please check your clang.formatTool user sett...]]></description><category></category></item><item><title><![CDATA[codeblocks使用CMakeList.txt生成编译项目]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/79550781</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/79550781</guid><author>OKasy</author><pubDate>Wed, 14 Mar 2018 11:35:31 +0800</pubDate><description><![CDATA[系统版本：Ubuntu 16.04CodeBlocks版本：16.01codeblocks下常规的配置编译命令是在Settings-&amp;gt;Compiler这里配置，例如链接库在Linker settings中，如下图：但是当我们使用的库比较多时，每次都需要配置链接库，然后说不定还有一大把依赖库需要配置进去，每次解决编译的问题就好麻烦。相反使用cmake的就需要一个find_package这么轻松...]]></description><category></category></item><item><title><![CDATA[int const *, const int *, int * const区别]]></title><link>https://blog.youkuaiyun.com/OKasy/article/details/79540038</link><guid>https://blog.youkuaiyun.com/OKasy/article/details/79540038</guid><author>OKasy</author><pubDate>Tue, 13 Mar 2018 15:07:04 +0800</pubDate><description><![CDATA[碰到了以下代码：    bool operator()(const T* const abc, T* residual ) const对const的用法，一直不解。参考：http://blog.youkuaiyun.com/skywalker_leo/article/details/48627933              http://blog.youkuaiyun.com/hsd2012/article/detai...]]></description><category></category></item></channel></rss>