自定义博客皮肤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)
  • 资源 (2)
  • 收藏
  • 关注

原创 一个很不错的博客

https://www.cnblogs.com/yulianggo/

2020-07-16 15:26:26 233

原创 相机标定:像素焦距和毫米焦距的转换,根据内参计算FOV

1. 像素焦距和毫米焦距的转换像素焦距和毫米焦距之间的转换链接: link1、像素焦距与毫米焦距转换fu = ku * dpx;fv = kv * dpy;ku、kv分别为摄像机内参矩阵的x(u)、y(v)方向的像素焦距;fu、fv分别为摄像机x(u)、y(v)方向的毫米焦距;dpx、dpy单位为mm/pixel;dpx、dpy含义分别是Effective X(Y) dimension of pixel in frame graber,成像平面水平(垂直)方向像素的有效尺寸。2、根据

2020-06-15 18:15:25 17661 5

原创 C++学习总结21--运行时的类型信息

小记:静默如初,安之若素运行时的类型信息1. typeid操作符#include <typeinfo>typeid(类型/对象);注:返回typeinfo对象,用于描述类型信息,其中包含一个name的成员函数,可以将类型信息转换为字符串形式。typeinfo提供了对”==“和”!=“操作符重载的支持,通过它们可以直接进行类型之间的比较。 1 #include &lt...

2019-12-29 21:58:32 319

原创 C++学习总结20--多态(Polymorphic)

小记:静默如初,安之若素多态虚函数覆盖(函数重写),多态概念如果将基类中的某个成员函数声明为虚函数,那么其子类中与该函数具有相同原型的成员函数也是虚函数,并且对基类中的版本形成覆盖。这时,通过指向子类对象的基类指针,或者通过引用子类对象的基类引用去调用虚函数,实际被执行的将是子类中的覆盖版本,而不再是基类中的原始版本,这种语法现象被称为多态。class A{public: vi...

2019-12-29 21:11:19 530

原创 C++学习总结 19 -- 继承

小记:静默如初,安之若素继承(Inheritance)1. 继承的概念//了解通过一种机制来表达类型之间共性和特征的方式,利用已有的数据类型定义型的数据烈性,这种机制就是继承。eg: 人类:姓名,年龄,吃饭,睡觉 学生类:姓名,年龄,吃饭,睡觉,学号,学习 教师类:姓名,年龄,吃饭,睡觉,工资,授课 ---------------------------------- 人类:姓名...

2019-12-25 00:28:38 284

原创 C++学习总结18--操作符重载

小记:静默如初,安之若素操作符重载1. 双目操作符重载 L#R1.1 运算类的双目操作符: + ,- ,…(需要保持语义一致和逻辑一致)–>左右操作数既可以是左值也可以是右值;–>表达式结果是右值–>两种实现方式:1)成员函数形式L#R的表达式可以被编译器翻译成L.operator#®这样成员函数调用形式,该函数的返回结果就是表达式的结果。(L表示左操作对象,R表...

2019-12-22 23:27:15 290

转载 ubuntu16.04无法打开terminal

终端无法打开

2019-12-21 22:34:28 568

原创 C++学习总结17--成员指针

小记:静默如初,安之若素//了解1. 成员变量指针定义类型 * 指针变量 = &变量;(普通指针)类型 类名::* 指针变量 = &类名::变量;(成员变量指针)使用对象.*成员指针变量名; 注:”.*“称为成员指针解引用操作符对象指针->*成员指针变量名; 注:”->*“成为间接成员指针解引用操作符 1 #include <i...

2019-12-21 22:27:52 257

原创 C++学习总结16--静态成员(static)和单例模式

小记:静默如初,安之若素1.静态成员1. 静态成员变量1)语法:class 类名{ static 数据类型 变量名;//声明};数据类型 类名::变量名 = 初值;//定义,求一个对象大小和静态成员变量无关2)语法规则:(静态成员变量和普通成员变量的区别)2.1) 普通的成员变量属于对象,而静态成员变量不属于对象(从内存角度进行分析);2.2)静态成员变量不能在构造函数...

2019-12-21 21:07:49 473

原创 C++学习总结15 -- 拷贝构造和拷贝赋值

小记:静默如初,安之若素1. 拷贝构造1. 浅拷贝和深拷贝1)定义:如果一个类中包含指针形式的成员变量,用缺省的拷贝构造函数只是复制指针变量本身,而没有复制指针所指向的内容,这种拷贝方式成为浅拷贝。2)浅拷贝将会导致不同对象间的数据共享,同时会在析构函数中引发”double free“异常,因此就必须自己定义一个支持复制指针内容的拷贝构造函数,即深拷贝. 2 using namespa...

2019-12-21 14:36:43 195

原创 C++学习总结14--析构函数

小记:静默如初,安之若素析构函数(Destructor)1. 语法class 类名{ ~类名(void){} //负责清理对象创建时的动态资源};1)函数名必须是”~类名“;2)没有返回类型,也没有参数,也无法重载;2. 当对象销毁时,该类的析构函数会自动的被执行1)栈对象当离开其作用域时,其析构函数被作用域终止的右花括号”}“调用;2)堆对象的析构函数被delete操作符...

2019-12-20 23:24:42 192

原创 C++学习总结 13 --this指针和常成员函数

小记:静默如初,安之若素1. this指针1. 定义类中的函数都隐藏一个该类类型的指针参数,名为this。==》对于普通的成员函数,this指向调用该函数的对象==》对于构造函数,this指向正在创建的对象eg: class A { public: A(int i):m_i(i){} void print(void) { cout <&...

2019-12-18 23:43:56 274

原创 opencv中膨胀和腐蚀,开操作和闭操作,顶帽和底帽

小记:静默处之,安之若素opencv中膨胀和腐蚀膨胀腐蚀示例程序详细介绍

2019-12-18 21:09:15 762

原创 opencv中的FileStorage使用(读写XML和YAML)

小记:静默如初,安之若素 1 #include <iostream> 2 #include <opencv2/opencv.hpp> 3 #include <ctime> 4 using namespace std; 5 6 int main(int argc, char * argv[]) 7 { 8 cv::FileSt...

2019-12-17 20:31:44 1958 1

原创 C++学习总结12--构造函数和成员初始化表

小记:静默处之,安之若素1 构造函数1. 构造函数和普通函数类似,也可以重载或带有缺省参数。 1 #include <iostream> 2 using namespace std; 3 4 class Student 5 { 6 public: 7 Student(const string& name, int age = 0, int ...

2019-12-17 00:12:34 264

原创 C++学习总结11--类和对象,类的定义和实例化

小记:静默如初,安之若素1. 类和对象1. 什么是对象万物皆对象,任何一种事物都可以看做是对象。2. 如何描述对象通过对象的属性(名词,数量词,形容词)和行为(动词)来描述对象。 eg:描述冰箱对象 属性:品牌,容量,颜色,功耗 行为:装东西,冷冻,冷藏3. 面向对象的程序设计对自然世界中对象的描述引入到编程实践的方法,这种方法称为“数据抽象”,即在描...

2019-12-15 23:30:57 960

原创 C++学习总结10--类型转换

小记:静默如初,安之若素类型转换1. 隐式类型转换eg: char c = 'a'; int i = c;//隐式转换(char->int->=) void func(int i){...} func(c); int foo(void) { char c = 'a'; return c; }2. 显示转换2.1 C++兼容C的...

2019-12-15 17:42:41 169

原创 C++学习总结9--C++的引用(Reference)

小记:静默如初,安之若素C++的引用(Reference)定义1)引用就是某个变量的别名,对引用的操作与变量操作完全相同。2)语法类型 & 引用名 = 变量名;注:引用定义时必须初始化,初始化后绑定的变量不能再做修改;注:引用的类型与初始化时绑定的变量类型一致;eg: int a = 123; int &b = a;//b就是a的引用(别名),对引用初始化...

2019-12-15 13:55:19 333

原创 C++学习总结8--动态内存分配

小记:静默如初,安之若素1.动态内存分配笔试题:C中malloc() / free() 和C++中new / delete 的区别(堆区中的内存)C中的动态内存分配1)分配: malloc()2)释放:free()3)错误处理:返回值C++中使用操作符动态分配内存(new的底层实现是malloc, delete 底层实现是free)1)分配:new, new[]2)释放:del...

2019-12-14 21:31:34 250

原创 C++学习总结7--函数

小记:静默如初,安之若素1.函数重载定义 在相同的作用域,定义同名的函数,但是它们的参数要有所区分,这样的多个函数构成重载关系。 注:函数的重载和返回值无关eg: 图像库(包含很多绘图函数)//C语言实现(C语言不能有同名函数) void drawCircle(int x, int y, double r){...} void drawRect(int x, int y, do...

2019-12-14 17:42:37 573

原创 C++学习总结6--布尔类型(bool),操作符别名

1.C++中的布尔类型bool类型是c++中基本的数据类型,专门表示逻辑值bool在内存上占一个字节,1表示逻辑真,0表示逻辑假bool类型的变量可以接受任何表达式的结果,如果值为非0则表示true(1),如果为0则表示false(0).(实质是检查内存是否为空,空为0,非空为1) 1 #include <iostream> 2 3 using namespa...

2019-12-14 13:35:10 489

原创 C++学习总结5--字符串

1. 回顾c中的字符串双引号常量字符串:“hello”字符指针 : char *字符数组: char[ ] 1 #include <stdio.h> 2 #include <string.h> 3 4 int main(void) 5 { 6 //char *p = "hello world"; 7 //strcpy(p, ...

2019-12-14 00:32:11 164

原创 C++学习总结4--结构体,联合体,枚举

1.C++的结构体定义结构体变量可以省略struct关键字eg: c: struct Student{...} struct Student s; typedef struct Student STU; STU s2; ---------------------- c++: struct Student{...} Student s;在C++结构体中可以直接定义函数...

2019-12-13 23:31:58 218

原创 C++学习总结3--名字空间(namespace)

小记:静默如初,安之若素名字空间(namespace)名字空间作用1) 避免名字冲突2) 划分逻辑单元2 定义名字空间namespace 名字空间{ 名字空间成员1; 名字空间成员2; ... 名字空间成员n;}//注:名字空间成员可以是全局变量,函数,类型,名字空间(嵌套)eg: namespace ns1{ int num = 100; ...

2019-12-13 00:36:27 265

原创 python中读取文本数据并采用matplotlib画图

画图 data_file = open("depth.txt") line = data_file.readline() data_list = [] while line: num = list(map(float, line.split())) data_list.append(num) line = data_file.readline(...

2019-12-12 21:01:16 3679

转载 相机标定

相机标定资料Camera Calibration Toolbox for Matlabreference

2019-12-12 20:48:19 110

转载 计算相机的FOV(field of view)

FOV计算

2019-12-12 20:43:10 7925

转载 计算机视觉相关算法实现和博客

计算机视觉算法和博客

2019-12-12 20:39:43 135

原创 图说卡尔曼滤波

图说卡尔曼滤波中文版图说卡尔曼滤波简易教程英文版图说卡尔曼滤波简易教程

2019-12-12 20:36:47 270

原创 Ubuntu中增加swap交换空间

1.查看当前系统中swap分区大小free -h2.创建swap文件创建swap文件mkdir /root/swapfilecd /root/swapfile增加swap分区空间,以增加4G为例 $ sudo dd if =/dev/zero of=/root/swapfile bs=1G count=4 //bs表示单位文件大小,count表示数量,增加文件的总数为b...

2019-12-12 01:12:33 272

原创 C++学习总结2--第一个C++程序

小记:静默如初,安之若素1.第一个C++程序程序命名:first.cpp#include <iostream>int main(int argc, char *argv){ std::cout<<"Hello World!"<<std::endl; return 0;}编译方法3. gcc first.cpp -lstdc++ (...

2019-12-12 00:56:52 189

原创 C++学习总结1--C++语言概述

小记:静默如初,安之若素!!!C++语言概述1.江湖地位java, C, C++, python, C#2. C++之父:Bjarne Stroustrup1979,Cpre,为C语言增加类的机制;1983,发布全新编程语言C with class ,后命名C++1985,CFont1.0(编译器),《The C++ Programming Language》3.C++发展过程...

2019-12-12 00:30:23 289

原创 C/C++中32位有符号整数(int32_t)转为4个无符号8位整数

C/C++中32位有符号整数(int32_t)转为4个无符号8位整数1.位数转换的基本原理就是利用计算机中原码,反码,补码的关系,其原理可以参考下面这篇博客:https://blog.csdn.net/qq_26392163/article/details/84872165。该博客详细的介绍了其原理。下面将介绍两种实用的方法:方法一:char buf1, buf2, buf3, buf4...

2019-01-24 16:07:34 5715

原创 Sophus 模板类与非模板类使用区别

使用Sophus模板类时可能存在找不到路径的问题,看到其他博主将CMakeList中的Sophus路径改为绝对路径即可,但测试之后并不可以,解决方法是:将Sophus安装之后就可以使用了。...

2018-12-18 17:01:09 2005

原创 ORB_slam2 分析及改进对应的文章集合

ORB-SLAM2 ORB特征点法SLAM 支持单目、双目、rgbd相机https://github.com/Ewenwan/MVision/tree/master/vSLAM/oRB_SLAM2

2018-12-16 15:25:44 3205

原创 RANSAC 工具包

https://github.com/sunglok/rtl采用的语言为C++

2018-12-16 15:20:42 338

原创 slam中trajectory画图工具

Supported trajectory formats:'TUM' trajectory files 'KITTI' pose files 'EuRoC MAV' (.csv groundtruth and TUM trajectory file) ROS bagfile with geometry_msgs/PoseStamped or nav_msgs/Odometry topic...

2018-12-06 21:00:58 1811

vim常用命令总结

vim编辑器中常用的命令总结,以图片和树状结构的形式完美的总结了vim中常用命令。如:查找名,修改命令,删除命令

2018-11-12

windows版本的ceres优化库

本文件是在windows系统下编译成功和使用的ceres优化库,编译环境为win7,64位,vs2012。

2018-04-21

空空如也

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

TA关注的人

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