自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 这是一个测试集

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-01-06 14:30:40 198

原创 《视觉slam十四讲》笔记及课后习题-第5讲-相机与图像

前言这一讲主要讲解了基本的针孔相机模型,相机的内外参数,外加一个关于Opencv库的实践。理论部分本章理论本文较为简单,没有太多复杂的公式,主要通过几何关系来建立相关观测(拍摄)的物体在世界坐标系下的坐标与其对应的像素坐标间的联系,这个联系可以通过内、外参两个矩阵的乘积来描述,其中外参指物方点从世界坐标系到相机坐标系的转换关系,可以由变换矩阵TTT描述,内参指物方点从相机坐标系到像素平面的转换关系,其描述矩阵设为KKK针孔相机模型相机坐标系定义,从摄像者视角往前为zzz,xxx向右yyy向下构成右

2020-06-05 09:58:46 682 1

原创 《视觉slam十四讲》笔记及课后习题-第4讲-李群与李代数

前言随手翻了下,这是《视觉slam十四讲》书里最理论的一章了,看完了觉得也挺有趣的!理论部分李群与李代数是什么?为什么slam要引入它们?李群首先从群说起,群是一种只定义一种运算的集合,需要满足“封结幺逆”四个条件,可以验证,旋转矩阵(集合)和矩阵乘法(运算)可以满足上述条件,可以构成一种群,其他常见的如整数和加法运算(Z,+)也可以构成一种群李群是一种光滑连续的群,像(Z,+)就是李群。李代数旋转矩阵满足对时间求导满足这样矩阵R˙(t)R(t)T\dot{R}(t)R(t)^T

2020-05-30 23:41:48 519

原创 《视觉slam十四讲》笔记及课后习题-第3讲--刚体旋转

视觉十四讲第三讲笔记-刚体旋转目标理论部分旋转矩阵实践部分Eigen库插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入目标1、理论:理解三维空间的刚体运动的表达方法2、实践:掌握Eigen库的矩阵、几何模块的使用方法本人专业与惯导相关,接触过较多的惯导运动,故笔记重点在实践部分理论

2020-05-29 11:18:04 465

原创 Cmake实践记录

前言最近刚开始学习slam,在用高翔的《视觉slam十四讲》,该书第二讲的第8个习题要求将helloSLAM小程序库安装进计算机,并用find_packege调用。我没有任何计算机视觉基础,也没有用过Linux系统,因此写下这个博客当成我的学习记录。本文采用c++语言CmakeCmake是一个用于管理源代码的工具,能高效地编译源代码。主要使用流程如下:1、新建一个CMakeLists.txt文件并编辑2、依次使用cmake命令和make命令编译helloSLAM库编写源文件先在当前用户目录~

2020-05-27 12:58:46 284

原创 青蛙跳台阶-学习记录篇

青蛙跳台阶1. 正常跳:每次只能跳一步或两步2. 变态跳:每次跳可以跳(1,2,3...,n)步青蛙跳台阶是动态规划的一个经典题型,主要有两种变体。题目:共有n级台阶,青蛙在采取不同跳跃方式的情况下,共有多少种跳法,一般有下列两种跳法。记跳到第n阶的方案数为f(n)1. 正常跳:每次只能跳一步或两步青蛙要跳到第n阶,由于每次只能跳一步或两步,必然是如下2种情形,1. 到达第n-1阶再跳1步...

2019-09-24 10:31:25 159

原创 C++研发面试准备

C++面试内存管理1. new和malloc的区别内存管理1. new和malloc的区别本质:new是c++中的运算符,malloc是c中的库函数,new的底层实现基于malloc,其功能可以取代malloc申请内存所在位置:new取决于语句的运行地点(若在函数体中则为堆,若在外则为堆),malloc分配在堆返回指针的类型:new为对象指针,malloc为void是否需要指定内存大...

2019-09-23 11:56:33 225

原创 堆排序学习

堆排序-新手学习记录堆排序核心思想步骤重点记录代码参考博主dreamcatcher-cx这位博主还有许多优秀的排序方法学习记录堆排序核心思想构建n次最大堆,每次构建顶点元素即为数组最大元素,找到最大元素之后将最大元素放在数组最后步骤从最后一个非叶子节点开始,将该节点调整最低级节点,也即它的小于父节点大于两个子节点;调整次数为N/2-1完成最大堆的构建之后,将堆的顶点与最后一个元素交...

2019-09-17 17:10:02 61

原创 快速排序

快速排序原理步骤代码效率分析(待补充)原理步骤一趟排序先取出一个数,一般为第一个数,vec[0];把大于这个数的方法该数的左边,小于这个数的放到该数的右边数组分成了两个子数组(不包含选取的数),对两个子数组分别递归进行如上的快速排序代码#include<iostream>#include<vector>using namespace std;voi...

2019-09-17 15:06:07 121

原创 归并排序算法

归并排序的核心思想:分治法一个子步骤如下:把数组分成两半,然后对对每一半都排序(分),再把排序好的步骤合并(治),代码如下void sort(vector<int> & v, int left, int right){ int mid= (right + left) / 2; //递归的写法:一个子步骤 if (left < right) { ...

2019-09-17 14:43:44 129

空空如也

空空如也

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

TA关注的人

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