自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(221)
  • 资源 (7)
  • 收藏
  • 关注

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

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

2018-12-30 14:35:14 1138

原创 深度学习综述-入门必读

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

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

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

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

2018-07-13 11:40:59 6410

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

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

2017-12-11 21:33:31 17582 2

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

突然发现看彭亮老师视频的人很多,而且看完写博客的人也很多,见到一个哥们基本上把彭良老师的视频内容完整的搬抄到博客上,代码什么的也基本没改动,这就可以让我先看博客再看视频,最后自己写博客这样一种思路来学习。然后看博客的过程中发现了好多大神。 那哥们博客SVM 全名support vector Machine ,翻译成中文是支持向量机,据说是机器学习中近十几年来最好的算法之一,最早是由Vladimir

2017-12-03 11:37:41 406

原创 mac brew 软件的位置

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

2020-04-10 16:07:00 725

原创 常用git stash命令

(1)git stash save “save message” : 执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。(2)git stash list :查看stash了哪些存储(3)git stash show :显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show...

2020-03-10 16:14:26 415

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

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

2020-01-20 21:22:51 3116 1

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

快速生成WordPress多端小程序WordPress在升级程序、主题、插件时,都会先切换到维护模式,也就是显示 “正在执行例行维护,请一分钟后回来(Briefly unavailable for scheduled maintenance. Check back in a minute)”,如果升级顺利,也就几秒左右就恢复正常;但是如果由于网速不佳等原因导致升级中断,WordPress就会一直...

2019-12-07 10:43:24 237 1

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

du [-abcDhHklmsSx] [-L <符号连接>][-X <文件>][–block-size][–exclude=<目录或文件>] [–max-depth=<目录层数>][–help][–version][目录或文件]常用参数:-a或-all 为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况。-b或-bytes...

2019-11-28 14:59:01 410

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

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

2019-11-28 12:12:09 689

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

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

2019-11-28 12:07:13 259

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

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

2019-10-15 18:57:32 6713 1

原创 python 字典处理的一些坑

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

2019-10-14 14:25:03 659

原创 linux的定时任务

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

2019-10-12 15:34:59 1045 1

原创 vim 打开中文乱码

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

2019-09-25 21:00:23 188

原创 仿函数

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

2019-09-17 22:57:10 190

原创 linux常用命令锦集

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

2019-09-05 17:01:34 210

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

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

2019-08-02 21:26:06 1209

原创 单目slam综述

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

2019-07-17 21:43:05 1601

原创 git常用命令

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

2019-07-06 16:09:43 193

原创 git合并分支

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

2019-07-06 15:13:11 168

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

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

2019-06-06 02:22:39 1727

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

std::move函数可以以非常简单的方式将左值引用转换为右值引用。通过std::move,可以避免不必要的拷贝操作。std::move是为性能而生。std::move是将对象的状态或者所有权从一个对象转移到另一个对象,只是转移,没有内存的搬迁或者内存拷贝。如string类在赋值或者拷贝构造函数中会声明char数组来存放数据,然后把原string中的 char 数组被析构函数释放,如果a...

2019-06-06 02:20:50 2114

原创 Meshlab安装

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

2019-06-02 09:54:20 1454 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/。  ORB-SLAM是一个基于特征点的实时单目SLAM系统,在大规模的、小规模的、室内室外的环境...

2019-05-09 22:21:10 2351

原创 初识视觉SLAM

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

2019-05-08 22:39:42 228

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

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

2019-04-21 16:05:32 377

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

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

2019-03-17 12:25:32 243

原创 PWM波详解

PWM(Pulse Width Modulation)——脉冲宽度调制技术,通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形(含形状和幅值)PWM波能做什么?智能小车的电机控制:我们可以利用pwm来控制我们的智能小车的车速机器人:给“机器人关节”舵机周期一定pwm波就可以控制舵机的转动角度呼吸灯:输入不同的pwm波就可以达到明暗渐明渐暗的效果其他很多挂载都是通过pwm波来控制。...

2019-03-11 23:21:54 10454

原创 递归状态估计

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

2019-02-20 22:28:51 630

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

写这个内联函数的时候也没细想,结果违反了inline函数的要求。所谓内联函数,就是编译器将函数定义({…}之间的内容)在函数调用处展开,藉此来免去函数调用的开销。如果这个函数定义在头文件中,所有include该头文件的编译单元都可以正确找到函数定义。然而,如果内联函数fun()定义在某个编译单元A中,那么其他编译单元中调用fun()的地方将无法解析该符号,因为在编译单元A生成目标文件A.ob...

2019-02-17 17:32:50 842

原创 引用与指针的区别

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

2019-02-16 17:36:24 186

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

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

2019-02-16 17:35:16 199

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

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

2019-02-16 17:33:15 1900

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

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

2019-02-16 17:32:14 1763

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

1.尽量使用unique_ptr而非shared_ptr原因:1.unique_ptr可以在需要共享对象时转化为shared_ptr,但shared_ptr却不能转化为unique_ptr;2.shared_ptr内部维护着一个引用计数器以及一个控制块,实现比unique_ptr更为复杂,且需要消耗更多的资源;3.使用shared_ptr可能并非出于本意,却导致共享对象被修改;2.谨慎使用...

2019-02-16 17:30:35 482

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

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

2019-02-16 17:29:03 355

原创 define与typedef的区别

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

2019-02-16 17:25:14 1358

原创 光流(Optical Flow)

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

2019-01-28 08:51:04 1948

deep_net.7z

pytho入门代码示例,机器学习,背向传输demo、常用工具,比如批量更改文件名等

2019-07-02

sklearn聚合算法整理

机器学习初体验之聚合类算法,随机森林,Boosting正向激励,Extra Trees算法等

2018-06-06

决策树源码

麦子学院的决策树源码,标上了我锁理解的注释,下载即能运行。

2018-06-01

matlab分离字符串和数字的测试数据

测试matlab分离字符串和数字的测试数据,可用来测试matlab分离数字和字符串的代码

2018-02-28

决策树数据

决策数数据,用来验证demo的。 保存成了csv格式,方便测试

2017-12-21

UCOSIII 源码

来自正点原子,感谢。学习os3必须的代码

2017-10-19

空空如也

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

TA关注的人

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