- 博客(27)
- 收藏
- 关注
原创 OpenVINS代码解析-DynamicInitializer-(中)
在上一篇里我们大概对VIO中的初始化方法进行了讨论,接下来我们对于OpenVINS中的动态初始化进行分析,主要参考一些文章:[1][2]
2024-08-28 17:39:49 77
原创 OpenVINS代码解析-DynamicInitializer-(上)
有一段时间没有更新博客了,临近年关,有空来重新捡起来,这次我们来看看vio里面一个重要模块-初始化,OpenVINS根据相机的视差以及IMu的数据判断车辆运动状态,决定了两种初始化方式:静态初始化和动态初始化。,所以我们重点聊一聊动态初始化。
2024-02-06 15:10:13 351
原创 OpenVINS代码解析-VioManager
书接上回,上一篇博客主要分析了ROS2Visualizer中接口的逻辑,接下来要进入正题,对VioManager进行分析。
2023-04-04 12:34:29 1492
原创 ethz_aslam_cv2(一) 简介
Introductionaslam_cv2 库是ETHZ ASL团队开源的一个计算机视觉库,主要针对常用的一些算法和数据结构进行了封装。为了提升算法的速度和鲁邦性,用了比较多工程上的技巧,并对一些paper中的算法进行了实现。Code Structureaslam_cv_camerascameras主要针对不同的camera model和distortion model进行了封装,使用工厂...
2020-02-18 19:36:59 974
原创 LeetCode---5. Longest Palindromic Substring
Description:Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000. Example: Input: “babad” Output: “bab” Note: “aba” is also a valid an
2017-10-11 17:12:10 308
原创 Leetcode---4.Median of Two Sorted Arrays
Description:There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two sorted arrays. The overall run time complexity should be O(log (m+n)). Example 1: nu
2017-10-03 21:43:42 340
原创 Leetcode---2.Add Two Numbers
Description:You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers
2017-10-02 20:11:36 248
原创 Leetcode---1.Two Sum
Description:Given an array of integers, return indices of the two numbers such that they add up to a specific target. Example: Given nums = [2, 7, 11, 15], target = 9, Because nums[0] + nums[1] = 2
2017-10-02 17:48:39 233
转载 计算机视觉中的李群、李代数
讲的最明白的一篇博客。。。。。。。 http://blog.csdn.net/heyijia0327/article/details/50446140
2017-08-23 11:01:29 1072
转载 ROS学习笔记-------Message_filters
ROS官方参考网址: http://wiki.ros.org/message_filters CSDN参考博客: http://blog.csdn.net/u012700322/article/details/51784412
2017-07-22 10:54:51 1406
原创 TUM数据集测评工具的使用
相信做SLAM的同学们都知道大名鼎鼎的TUM(德国慕尼黑工业大学),像LSD-SLAM、DSO、DVO等都是出自于这个学校。同时他们还提供了各种各样的数据集,如RGBD数据集、单目数据集等,针对不同的数据集提供了不同的测评工具。由于最近写了一个基于RGBD的VO,想用TUM的RGBD数据集进行测试。于是就开始研究它的测评工具的使用。。。。。(啊西吧)RGBD数据集下载地址(有两种格式,一种是压缩文件
2017-06-20 22:19:22 15828 1
原创 demo-rgbd论文解析+代码分析(一)
论文题目:Zhang J, Kaess M, Singh S. Real-time depth enhanced monocular odometry[C]// Ieee/rsj International Conference on Intelligent Robots and Systems. IEEE, 2014:4973-4980下载链接: http://www.frc.ri.cmu.ed
2017-06-17 16:30:27 1854 3
转载 RGBD相机深度图像配准(Registration)
机器视觉中,3D相机产生的深度图像(depth image)通常需要配准(registration),以生成配准深度图像(registed depth image)。实际上配准的目的就是想让深度图和彩色图重合在一起,即是将深度图像的图像坐标系转换到彩色图像的图像坐标系下。 具体推到参见以下网址: http://www.cnblogs.com/cv-pr/p/5769617.html
2017-05-06 20:23:12 15969
转载 最大似然估计和最小二乘估计的联系和区别
参见以下博文: http://blog.csdn.net/xidianzhimeng/article/details/20847289
2017-03-07 10:28:00 1052
原创 Opencv学习笔记(三)———特征点匹配
在我们提取到带特征点和得到特征描述符后,接下来的工作就是将这些个特征点进行匹配。一、特征点匹配位于feature2D的模块中所以在使用的时候应该在头文件中加入:#include<opencv2\features2d\features2d.hpp>在这个模块中用有三个类: 它们的继承关系如下: 对于特征点匹配有两种方法:(1) Brute-force matcher (cv::BFMatcher)
2017-03-03 18:26:34 8427
原创 Opencv学习笔记(二)———Opencv3中ORB算法的使用
相信很多小伙伴在使用ORB算法的时候,一般会从网上搜一些代码作为参考,那么问题来了:在好多ORB程序中都会这么写: ORB orb;如果你使用的是Opencv3的版本,编译器就会报错:ORB是一个纯虚类,无法进行实例化。但在opencv2的版本中可以正常使用。这是为什么呢?于是乎就在opencv3官方的Documents中寻找答案,ORB属于features2d模块中。在它的文档中终于发现了原
2017-03-03 10:46:10 26795 14
原创 C++类中的static数据成员和static成员函数
引言 在看C++源码中,我们经常会看到在类中定义的static数据成员,以及static成员函数。这时我们不禁会想:为什么要这样?(why)代表什么含义?(what)怎样使用他们?(how)ok!接下来我么就围绕这三个问题来谈谈!!Why 举个例子:假如我们定义了一个类Student,在我们使用这个类的时候,我想知道这个类一共被我们实例化了多少次,该怎么做呢?这时候就用到了static数
2017-03-01 11:16:54 1007
原创 License开源协议明细
1、MPL(The Mozilla Public License): MPL是The Mozilla Public License的简写,是1998年初Netscape的 Mozilla小组为其开源软件项目设计的软件许可证。MPL许可证出现的最重要原因就是,Netscape公司认为GPL许可证没有很好地平衡开发者对源代码的需求和他们利用源代码获得的利益。同著名的GPL许可证和BSD
2017-02-24 16:25:37 629
原创 RGBD-SLAM(一)——深度摄像机
‘’工欲善其事必先利其器‘’我们先从能够获取RGBD数据的相机开始谈起。首先我们来看一看其分类。 一、根据其工作原理主要分为三类: 1. 双目方案: (1) 原理: http://blog.csdn.net/shenziheng1/article/details/52883536 (2)产品: ZED:https://www.stereolabs.com/ Tango:http://
2017-02-23 11:24:55 36262 2
原创 Eigen学习笔记(一)
今天刚把Eigen的库安装到自己的Visual Studio 2015中(具体的安装和设置方法大家可以进行百度),顺手写了一个克莱姆法则解nxn线性方程的程序,在这里给大家分享一下(由于本人的水平有限,程序可能不那么完善,希望大家留言并提一些修改意见)。Eigen库主要是针对矩阵的操作,使得C++处理矩阵能像Matlab那样的灵活多变,比如对矩阵求转置、求逆、求行列式等。在这里我就不对Eigen库里
2016-12-05 10:30:07 3441
原创 SLAM学习笔记——(一)SLAM分类
SLAM( Simultaneous Localization and Mapping)是指同步定位与地图构建。定位和建图两个问题相互依赖,准确的定位依赖于正确的地图,而构建正确的地图又需要准确的定位,这是一个迭代的过程。 目前的SLAM根据硬件设备的不同主要有两种:基于激光雷达的SLAM 基于激光雷达构建场景是古老并且可信的方法,激光雷达也是精确场景使用最多的SLAM传感器。它们提供机器
2016-12-02 11:22:13 12660
原创 关于OpenCV读取图片的注意事项
最近刷了系统,opencv又重新装了一遍,但又出现了新问题,经过一系列分析得以解决,接下来就给大家分享一下。问题: 所有安装有正确(安装步骤可以参考以前的博文),但测试时却读取不了图片。代码如下:#include<opencv2\core\core.hpp>#include<opencv2\highgui\highgui.hpp>#include<iostream>using namespac
2016-11-29 16:08:55 871
原创 关于C/C++中main函数参数中argc和argv的解释
相信大家在刚开始看OpenCV的C/C++代码时,会有这样的疑惑:为什么有些代码中main函数的参数中有argc和argv这样的参数呢??今天就给大家详细讲解一下这两个参数的含义和用法。 我们经常见到的两种形式如下: 1. int main(int argc , char ** argv) 2. int main(int argc , char * argv[]) 首先我们
2016-11-15 18:04:53 593
原创 OpenCV学习笔记(一)———OpneCV库简介(3.1.0)
OpenCV是一个模块化的结构,它包含了许多共享库或静态库。以下是关于模块的介绍:【core】—核心功能模块,主要包括以下功能: - OpenCV基本数据结构 - 动态数据结构 - 绘图函数 - 数组操作相关的函数 -..................【imgproc】—image+process,主要功能: - 线性和非线性图像滤波 - 几何图像转化(调整大小、仿射和透视变形等)
2016-11-03 15:39:30 778
转载 OpenCV 3.1.0+visual studio 2015开发环境配置
对于OpenCV的配置参见以下链接:http://www.cnblogs.com/linshuhe/p/5764394.html文章写的极为详细,对于配置完成之后遇到的问题进行了解释。
2016-11-01 20:44:34 920
原创 C/C++函数的基本问题
函数三要素: - 函数定义 - 函数原型 - 函数调用 一、函数定义 函数可以分为两类: (1)没有返回值的函数void functionName(parameterList){ statament; return:}(2)有返回值的参数typeName functionName(parameter
2016-05-30 17:47:44 373
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人