自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

legalhighhigh的博客

知其然,必须知其所以然。欢迎访问:www.lgg2018.com

原创 ROS通信架构上——Topic和Msg

Topic 异步通信方式 Node间通过publish-subscribe机制通信 相关的命令: rostopic rostopic list 列出当前所有topic rostopic info /topic_name  显示某个topic的属性信息 rostopic echo ...

2018-12-30 14:35:14 511 0

原创 深度学习综述

1概述 深度学习入门概述 2神经网络 2.1结构: 神经网络是这样的一个结构: 输入层有多个输入神经元,然后将输入沿着边传播到隐含层中,每条边有附属的权值,隐含层神经元有自己的偏置。 在某个隐含层的神经元中,该神经元的输出为输入神经元的加权乘积和与...

2018-07-29 00:06:52 1811 1

原创 卡尔曼滤波——从推导到应用(上)

第一次听说卡尔曼滤波已经是2017年了,那时候我25岁,卡尔曼却将近60岁了。尽管距离算法得诞生已经半个多世纪了,但是却历久弥新,永不过时。它仍然是当前使用最广泛的数据融合算法。 kalman核心就是两个过程,五个公式: 一、预测过程 二、更新过程 预测可以理解成根...

2018-07-13 11:40:59 4982 0

原创 机器学习第四个算法ANN(人工神经网络)

我是在14年9月刚读研的时候听到一个说法叫“类人脑算法”很火热,之后搞了很长一段时间相关的蓄水池算法等,但大都没有摸到门路而中途放弃了。现今看来,还是缺少一些知识背景,也不善于在网络上学习,随时间推移,也逐渐明白这是机器学习的一小部分,并且逐渐发展的名称叫做人工神经网络的算法,如果网络层较多,又会...

2017-12-11 21:33:31 5388 0

原创 机器学习第三个算法SVM上(支持向量机)

突然发现看彭亮老师视频的人很多,而且看完写博客的人也很多,见到一个哥们基本上把彭良老师的视频内容完整的搬抄到博客上,代码什么的也基本没改动,这就可以让我先看博客再看视频,最后自己写博客这样一种思路来学习。然后看博客的过程中发现了好多大神。 那哥们博客SVM 全名support vector Ma...

2017-12-03 11:37:41 266 0

原创 mac brew 软件的位置

brew安装软件后, 1,配置文件在/usr/local/etc中 2,安装文件在/usr/local/Cellar中 3,二进制可执行程序的软连接在/usr/local/bin中

2020-04-10 16:07:00 22 0

原创 常用git stash命令

(1)git stash save “save message” : 执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。 (2)git stash list :查看stash了哪些存储 (3)git stash show :显示做了哪些改动,默认show第...

2020-03-10 16:14:26 47 0

原创 c++虚函数的作用是什么?

作者:wuxinliulei 链接:https://www.zhihu.com/question/23971699/answer/69592611 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 首先强调一个概念定义一个函数为虚函数,不代表函数为不被实现的函数。定...

2020-01-20 21:22:51 74 0

原创 解决 WordPress“正在执行例行维护,请一分钟后回来”

快速生成WordPress多端小程序 WordPress在升级程序、主题、插件时,都会先切换到维护模式,也就是显示 “正在执行例行维护,请一分钟后回来(Briefly unavailable for scheduled maintenance. Check back in a minute)”,如...

2019-12-07 10:43:24 41 0

原创 Linux中查看各文件夹大小命令du -h --max-depth=1

du [-abcDhHklmsSx] [-L <符号连接>][-X <文件>][–block-size][–exclude=<目录或文件>] [–max-depth=<目录层数>][–help][–version][目录或文件] 常用参数: -a或-...

2019-11-28 14:59:01 54 0

原创 Python 异常之后不知多少行的解决办法

背景 用try except之后,抛出的错误却不知道第几行,有有时候让人无语。 比如: try: print dddd except Exception, e: print e 这样的代码只是输出了错误的主要信息,并没有输出你错误的地点。 解决方案 使用 tracebak 来跟踪...

2019-11-28 12:12:09 51 0

原创 使用 python 构建基于 hadoop 的 mapreduce的实操

MapReduce编程模型概述 MapReduce应用广泛的原因之一在于它的易用性。它提供了一个因高度抽象化而变得异常简单的编程模型。MapReduce是在总结大量应用的共同特点的基础上抽象出来的分布式计算框架,它适用的应用场景往往具有一个共同的特点:任务可被分解成相互独立的子问题。基于该特点,M...

2019-11-28 12:07:13 22 0

原创 python 处理文件的时候 程序运行过程中被 killed

小量数据测试时没问题,数据量到几百万时killed 怀疑内存使用问题: 代码 for line in file.readlines(): 改成: for line in open("file","r") 下面这种不用一次性把数据读到内存。 ...

2019-10-15 18:57:32 678 0

原创 python 字典处理的一些坑

处理任务: 几十万数据,目标,把重复数据的top,找出来。 类似这样 第一次: dict = {item: list.count(item) for item in set(list)} 这样建字典太慢了,几十万更本处理不过来 第二次: if num not in num_dic.keys()...

2019-10-14 14:25:03 88 0

原创 linux的定时任务

定时任务的需求: 每小时跑一次 每天跑一次等 实现方式: crontab 操作方法: crontab -u //设定特定用户的定时服务 crontab -l //列出当前用户定时服务内容 crontab -r //删除当前用户的定时服务 crontab -e //编辑当前用户的定时服务 在编辑前,...

2019-10-12 15:34:59 20 0

原创 vim 打开中文乱码

set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1 set enc=utf8 set fencs=utf8,gbk,gb2312,gb18030 亲测能用

2019-09-25 21:00:23 24 0

原创 仿函数

仿函数的概念与作用编辑 在我们写代码时有时会发现有些功能实现的代码,会不断的在不同的成员函数中用到,但是又不好将这些代码独立出来成为一个类的一个成员函数。但是又很想复用这些代码。写一个公共的函数,可以,这是一个解决方法,不过函数用到的一些变量,就可能成为公共的全局变量,再说为了复用这么一片代码,就...

2019-09-17 22:57:10 21 0

原创 linux常用命令锦集

开始在linux下进行开发工作,很多命令行给人一种奇技淫巧的感觉,常用的记录在此,常做补充 可以用 man查看使用方法 cat cut grep awk sed scp wget nohup ssh

2019-09-05 17:01:34 108 0

原创 linux/ubuntu下的代码对比工具Meld Diff

安装 sudo apt-get install meld 使用 对比即可 和beyond compare 差不多

2019-08-02 21:26:06 141 0

原创 单目slam综述

基于单目视觉的同时定位与地图构建方法综述 概述 首先简述基于视觉的同时定位与地图构建的基本原理; 然后介绍几个代表性的基于单目视觉的同时定位与地图构建方法并做深入分析和比较; 最后讨论近年来研究热点和发展趋势, 并做总结和展望. 1、基本原理 根据单个摄像头拍摄的视频或照片信息,推断出摄像头在未知...

2019-07-17 21:43:05 537 0

原创 git常用命令

克隆代码 git clone https://github.com/master-dev.git 这个git路径是无效的,示例而已 查看所有分支 git branch --all 默认只有master分支,所以会看到如下两个分支 master[本地主分支] origin/master[远程主...

2019-07-06 16:09:43 65 0

原创 git合并分支

Git鼓励大量使用分支: 查看分支:git branch 创建分支:git branch 切换分支:git checkout 创建+切换分支:git checkout -b 合并某分支到当前分支:git merge 删除分支:git branch -d 首先,我们创建dev分支,然后切换...

2019-07-06 15:13:11 57 0

原创 左值、左值引用、右值、右值引用

1、左值和右值的概念 左值是可以放在赋值号左边可以被赋值的值;左值必须要在内存中有实体; 右值当在赋值号右边取出值赋给其他变量的值;右值可以在内存也可以在CPU寄存器。 一个对象被用作右值时,使用的是它的内容(值),被当作左值时,使用的是它的地址。 2、引用 引用是C++语法做的优化,引用的本质还...

2019-06-06 02:22:39 654 0

原创 c++11 std::move() 的使用

std::move函数可以以非常简单的方式将左值引用转换为右值引用。 通过std::move,可以避免不必要的拷贝操作。 std::move是为性能而生。 std::move是将对象的状态或者所有权从一个对象转移到另一个对象,只是转移,没有内存的搬迁或者内存拷贝。 如string类在赋值或者拷贝构...

2019-06-06 02:20:50 683 0

原创 Meshlab安装

使用别人编译好的源,从而继续使用apt-get进行安装 sudo add-apt-repository ppa:zarquon42/meshlab sudo apt-get update sudo apt-get install meshlab

2019-06-02 09:54:20 416 1

原创 ORB-SLAM2详解(一)文献导读

一、摘要 ORB-SLAM是由Raul Mur-Artal,J. M. M. Montiel和Juan D. Tardos于2015年发表在IEEE Transactions on Robotics。项目主页网址为:http://webdiis.unizar.es/~raulmur/orbslam...

2019-05-09 22:21:10 594 0

原创 初识视觉SLAM

了解视觉SLAM的基本模块 搭建编程环境、熟悉cmake

2019-05-08 22:39:42 111 0

原创 关于特征点匹配的数据结构

在看特征点匹配的时候发现 两个特征点用的序列号不一致: queryIdx trainIdx 去搜索了一下: This is OpenCV's drawMatches() function: void drawMatches(Mat img1, vector<KeyPoint>...

2019-04-21 16:05:32 94 0

原创 牛客网刷题|复杂链表的复制

题目来源:牛客网 链接网址 题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点), 返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 解题思路: 先保存一版正常链表 复制...

2019-03-17 12:25:32 111 0

原创 PWM波详解

PWM(Pulse Width Modulation) ——脉冲宽度调制技术,通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形(含形状和幅值) PWM波能做什么? 智能小车的电机控制:我们可以利用pwm来控制我们的智能小车的车速 机器人:给“机器人关节”舵机周期一定pwm波就可以控制舵机的...

2019-03-11 23:21:54 2552 0

原创 递归状态估计

递归状态的估计 概率的基本概念 环境交互 贝叶斯滤波 表示法和计算

2019-02-20 22:28:51 242 0

原创 inline函数定义在头文件中

写这个内联函数的时候也没细想,结果违反了inline函数的要求。 所谓内联函数,就是编译器将函数定义({…}之间的内容)在函数调用处展开,藉此来免去函数调用的开销。 如果这个函数定义在头文件中,所有include该头文件的编译单元都可以正确找到函数定义。 然而,如果内联函数fun()定义在某个编译...

2019-02-17 17:32:50 172 0

原创 引用与指针的区别

1.指针作参数与引用作参数 指针作参数实质上还是“值传递”,传递的是一个地址。传递过程中,被调函数的形参作为被调函数的局部变量被处理,即在栈中开辟内存空间以存放由主调函数放进来实参的值,从而形成了实参的一个副本。被调函数对形参的任何操作都是对副本执行,并不会影响主调函数的值。如果试图在函数中改变指...

2019-02-16 17:36:24 47 0

原创 关键字const的使用注意点

1.const修饰指针 int b=3; int *a=&amp;b; const int *p=&amp;b; //不可通过指针p修改变量b的值 int const *p=&amp;b; ...

2019-02-16 17:35:16 55 0

原创 c++中常见的转型函数static_cast、dynamic_cast与const_cast的用法与区别

1.static_cast 用于将参数转换为指定类型。需要注意的是,进行类型转换时,编译器不会进行类型检查保证安全性。当对类对象进行下行类型转换时,也不会进行动态类型检查,因此是不安全的。static_cast中提供了空指针与任何类型指针的互相转换。 2.dynamic_cast 用法与stati...

2019-02-16 17:33:15 478 0

原创 C++中的C_str()函数用法

语法: const char c_str(); c_str()函数返回一个指向正规C字符串的指针常量, 内容与本string串相同. 这是为了与c语言兼容,在c语言中没有string类型,故必须通过string类对象的成员函数c_str()把string 对象转换成c中的字符串样式。 注意:一定要...

2019-02-16 17:32:14 507 0

原创 关于智能指针使用的一些注意点

1.尽量使用unique_ptr而非shared_ptr 原因:1.unique_ptr可以在需要共享对象时转化为shared_ptr,但shared_ptr却不能转化为unique_ptr; 2.shared_ptr内部维护着一个引用计数器以及一个控制块,实现比unique_ptr更为复杂,且需...

2019-02-16 17:30:35 172 0

原创 构造函数为什么不能是虚函数?析构函数为什么(某些情况下)必须是虚函数?

1.构造函数为什么不能是虚函数? a.最直观的的一个角度是,虚函数使得对象内部存在一个指向虚函数表的指针,通过该指针指向的虚函数表确定调用的函数。而在调用构造函数时,对象还没有生成,就根本谈不上虚函数表和虚函数指针了。 b.虚函数的调用往往是基于“动态联编”的,即在对象生成之后才能确定调用的是基类...

2019-02-16 17:29:03 179 0

原创 define与typedef的区别

1.define “宏定义”。一言以蔽之,编译器是机械地将你进行宏定义的内容字符替换为目标内容,不做任何解释,也不做正确性检查,甚至不需要在最后添加代表语句结束的分号(否则,它会把分号带入到被替换的文本当中)。还值得注意的一点是,define的使用没有作用域限制,即使在函数体中进行了宏定义,仍然可...

2019-02-16 17:25:14 57 0

原创 光流(Optical Flow)

光流的概念 光流是一种描述像素随时间在图像之间运动的方法,随着时间流逝,同一个像素会在图像中运动,我们希望追踪他的运动过程. 稀疏光流 计算部分像素 稠密光流 计算全部像素 稀疏光流以Lucas-Kanade光流为代表,简称LK光流. 光流的两个假设 灰度不变假设 同一空间点...

2019-01-28 08:51:04 934 0

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