自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(155)
  • 资源 (1)
  • 收藏
  • 关注

原创 修改catkin_simple以适应单个repo中多个action

原catkin_simple只支持在包下面名为action文件夹下存在的.action文件, 修改后action文件夹下可以新建比如test_action文件夹, 其内存放相关.action文件, 可使用catkin_simple自动编译。修改catkin_simple以适应单个repo中多个action。

2023-07-04 11:18:40 131

原创 python空间占用

python2,python3空间占用前言python2python3前言最近使用python写了一个比较大的程序发现,不同的元素占用空间都很大,且python2和python3不一样,列举在下面python2空链表72字节,空字典280字节,空集合232字节,None16字节,char38字节, int绝对值在现在的ns时间戳范围内都是24字节;Python 2.7.16 (default, Sep 6 2021, 07:39:44)[GCC Apple LLVM 12.0.5 (clang

2021-11-15 10:44:28 1342

原创 PyPDF2 merge pdf and keep bookmarks

文章目录from __future__ import print_functionfrom sys import argvfrom PyPDF2 import PdfFileMerger, PdfFileReaderimport osclass bookmark_class: def __init__(self, title, page_num, parent = 0): self.page_num = page_num self.parent = pare

2021-04-09 14:09:21 455

原创 C++11线程安全的单例模式

单例模式C++11规定了local static在多线程条件下的初始化行为,要求编译器保证了内部静态变量的线程安全性。在C++11标准下,《Effective C++》提出了一种更优雅的单例模式实现,使用函数内的 local static 对象。这样,只有当第一次访问getInstance()方法时才创建实例。这种方法也被称为Meyers’ Singleton。class Singleton{private: Singleton() { }; ~Singleton() { }; Singlet

2021-02-10 11:52:52 593

原创 问题cell-var-from-loop和解决方案

cell-var-from-loopproblemWhen using a loop variable in a closure, the value of this variable will be the same every time(the last value the variable had before the closed function/lambda is called).funcs = [lambda x: x + elem for elem in range(3)]resul

2020-12-21 18:08:16 730

原创 关于函数指针的定义及类内重载函数函数指针的获取 c++

c++11中定义了functional类模版std::function是一种通用、多态的函数封装, 用它和bind可以很方便的实现一些函数的封装,以及回调函数指针的传入传出定义一个函数指针的方式如下:std::function<void(int,double)>其等同于(c++老版定义)typedef void(*)(int,double)对应的函数形如:void function(int,double)需要注意的是如果是类的成员函数,其默认的第一个参数是类的地址(this

2020-07-17 16:42:05 491

原创 c++同名同参数不同返回值函数的重载情况

一般情况下这种重载是不可用实现的,因为c++可以忽略返回值,因此在有些情况下不知道那个函数被调用.如void fun(const int&);int fun(const int&);但是可以通过将函数定义为struct,并将函数重载定义为运算符重载来实现,如下:#include <iostream>struct fun { int a_; fun(const int& a) : a_(a) {} operator int() { std

2020-07-17 16:26:21 5089 4

原创 C++多态初探

为了定义一个基类,然后派生出几个子类分别对应不同的情况,在基类中写好函数接口,之后可以使用基类作为接口来对几种不同子类的情况进行操作.为了方便解释,我写一个小的程序验证一下相关的想法:ABase →\rightarrow→ A →\rightarrow→ A1ABase 为基类,有纯虚函数fun();A为其派生类,覆盖重写了虚函数,A1为A的派生类,继续重写了函数#include <...

2020-04-13 21:07:40 113

原创 rosbag相关

使用rosbag录制数据的功能将txt转成bag将txt文件读出来并发布到topic上,比如:读取imu数据,发布到topic /imu_info上#include <ros/ros.h>#include <sensor_msgs/Imu.h>#include <std_msgs/Float64.h>#include <iostream>...

2020-04-10 18:42:38 421

原创 ros::NodeHandle与namespace

在ros::NodeHandle指定句柄时也就指定了namespaceros::init(argc, argv, "node_name"); // node name, 其实node name最终是通过cmakelist文件确定的ros::NodeHandle n; //n 命名空间为/node_namespaceros::NodeHandle n1("sub"); // n1命名空间为...

2020-04-09 15:15:08 285

原创 C++模板,继承,派生相关

最近在做模板相关的开发,学习一下模板,继承,派生等相关操作中的注意点,记录如下:virtual fun() const = 0virtual 表示写在基类中的函数const 表示函数中的类成员变量不能修改(有无const是两种类型的函数)=0 表明是纯虚函数,必须创建一个子类覆盖此函数(有const关键字的)摘自stackoverfollow:// You can't change...

2020-04-02 20:46:34 161

原创 quaternion has two definitions Hamilton and JPL

quaternion has two definitions Hamilton and JPLdefinitionq=qo+q1i+q2j+q3z\mathbf q = q_o + q_1i+q_2j+q_3zq=qo​+q1​i+q2​j+q3​zfor Hamilton: ijk=−1ijk = -1ijk=−1for JPL: ijk=1ijk = 1ijk=1so:for ...

2020-03-27 21:37:50 207

原创 Linux(Ubuntu)下tar, rar, zip

tarUbuntu自带的是tar, 使用过程中的参数包括:-c建立压缩包-x解压-t查看内容-r向压缩包中添加文件-u更新原压缩包中的文件-z有gzip属性-j有bz2属性-Z有compress属性-v显示所有过程-O将文件解到标准输出-p保留绝对路径,即允许备份数据中含有根目录-P保留数据原...

2020-03-27 10:05:32 245

原创 Eigen相关(MatrixBase, Assert, ALIGNED. quaternion, normalize()和normalized)

MatrixBaseThis class is the base that is inherited by all matrix, vector, and related expression types. Most of the Eigen API is contained in this class, and its base classes. Other important classes...

2020-03-25 14:13:55 2932 3

原创 docker摆脱sudo 限制

参考docker docs https://docs.docker.com/install/linux/linux-postinstall/#manage-docker-as-a-non-root-user有:To create the docker group and add your user:Create the docker group.$ sudo groupadd docke...

2020-03-25 14:10:56 414

原创 VSCode 设置ctrl+mouse(left)跳转到定义(go to definition)

setting -> ctrl+mouse如图在preferences中选择setting,在其中的搜索框中搜索go to definition将最后一个下拉框设置为alt即可恢复ctrl+mouse对go to definition的响应keyboard Shortcuts->F12同样,在preferences中选择keyboard Shortcuts,搜索go to ...

2020-03-24 15:17:44 24898 4

原创 python plt相关(设置两轴尺度相同,各个子图占地不一样)

在plt.show()之前加代码plt.gca().set_aspect('equal', adjustable='box')或plt.axis('equal')画二维图时没有问题,但是对于三维图该方法未能解决显示NotImplementedError: It is not currently possible to manually set the aspect on 3D ax...

2020-03-16 16:18:17 5479

原创 C++相关shared_ptr, string和int long等互相转换,map相关,删除文件,CHECK_XX,文件流控制参数ios设置

shared_ptr使用shared_ptr必须定义包含文件#include <boost/shared_ptr.hpp>#include <memory>并做声明using boost::shared_ptr;string 和 int long 等相互转换to stringstring to_string (int val);string to_s...

2020-03-10 21:21:07 617

原创 ROS相关(ros::time和时间戳转换,ros回调函数多个参数,csv, ros中的仿真时间),rosbag/bag.h

[rosrun] Couldn’t find executable named talker2 below ~/catkin_ws/src/make_bag_from_txtCMakeLists.txt错误,缺少一行 catkin_package()

2020-03-10 21:09:58 5597 1

原创 function in std: isinf(), isnan(),nth_element()

bool isinf(double a) 和 bool isnan(double a)定义在std中,分别判断浮点型数据a是否无穷和是否非法

2020-02-28 18:48:06 312

原创 git常用

git用来和github等进行交互,将code推向云端一般使用流程使用git add 将code放入缓存区git add -agit add slam/*git add slam/example.cc使用git status查看状态使用git commit 添加注释,用一句话解释该次提交的作用,输入git commit后会进入vim编辑器使用 git push将...

2020-02-27 20:02:25 149

原创 Ubuntu python监测鼠标键盘响应(pyxhook)

Ubuntu python监测鼠标键盘响应(pyxhook)pyxhook 地址: https://github.com/python-xlib/python-xlibimport pyxhook# 建立全局变量,用于响应控制pause_flag = 0# 建立鼠标响应时间def onMouseEvent(event): global pause_flag pau...

2020-02-26 20:36:24 1384

原创 ros入门(一),组织架构,通信架构和常用工具

文章目录安装文件组织架构packagemetapackage通信架构通信方式Topicservicesrvservice和topicParameter serverActionros常用工具参考http://wiki.ros.org/mooc上重德智能的ros操作系统教程讲义: https://sychaichangkun.gitbooks.io/ros-tutorial-icours...

2020-02-12 19:44:03 491

原创 python2,3中数值表示范围 int, float

在python中可以使用sys看,但是在python3中int可以表示无限大的数(实际上受到内存限制)

2020-02-04 18:19:17 3221

原创 自动添加Ubuntu18.04对win10系统的引导(先装ubuntu18.04再装win10)

自动添加Ubuntu18.04对win10系统的引导(先装ubuntu18.04再装win10)对于多系统,如Ubuntu和windows,那么用下面的命令,可以使grub2得到可以启动的系统。sudo update-grubps: 在已有ubuntu18.04的基础上安装win10出现问题,无法进入U盘启动,总是直接进入ubuntu系统,尝试在boot选项中将ubuntu设置为disab...

2020-02-02 11:55:42 524

原创 重新整理KF相关公式,Byes滤波器、KF、EKF、IEKF、UKF、PF

FilterBayes filter:使用概率分布推导,适用于离散系统P(x∣z1,…,zn)=P(zn∣x,z1,…,zn−1)P(x∣z1,…,zn−1)P(zn∣z1,…,zn−1)P\left(x | z_{1}, \ldots, z_{n}\right)=\frac{P\left(z_{n} | x, z_{1}, \ldots, z_{n-1}\right) P\left(x ...

2020-01-20 17:54:05 2016 1

原创 CMakeLists.txt,cmake和make,Ubuntu下执行一个cpp文件

CMakeLists.txt在Ubuntu系统中一般需要编写或者修改此文件才能执行相应的工程#指定cmake的最小版本cmake_minimum_required(VERSION 2.8.3)#指定项目的名称,中间文件project(office)#设定包含的目录include_directories(Offilen_text slam util)# 也可...

2020-01-20 16:07:32 996

原创 python 读取txt文件中的数据,删除异样数据,并画图

注意一下几点使用matplotlib在的pyplot包画图使用open打开文件,使用readline()分行读取使用numpy.delete(arrayname,index)删除确定位置处的数据使用and和or而不是&&和||一个figure上画多条线不用hold on, 且线色自动变化代码如下:import matplotlib.pyplot as pltim...

2020-01-20 15:40:31 908

原创 Ubuntu相关文件和指令,source, bash, zsh, cat, touch, adb, git,"$"

文章目录sourcebash语法声明和zsh语法声明cattouchadbgitsourcesource命令也称为"点命令",也就是一个点符号(.),是bash的内部命令。功能:使Shell读入指定的Shell程序文件并依次执行文件中的所有语句source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。source /opt/ros/kinetic/setu...

2020-01-16 19:41:22 607

原创 表示旋转的quaternion的微分与差分

quaternion 微分i系中的点pip_{i}pi​和w系中的点pwp_{w}pw​有如下关系:pw=qwipi(qwi)−1p_{w}=q_{w}^{i}p_{i}(q_{w}^{i})^{-1}pw​=qwi​pi​(qwi​)−1so:pi=(qwi)−1pwqwip_{i}=(q_{w}^{i})^{-1}p_{w}q_{w}^{i}pi​=(qwi​)−1pw​qwi...

2019-12-31 14:01:36 306

原创 LeetCode 564. Find the Closest Palindrome(查找最近的回文数,C++)

题目Given an integer n, find the closest integer (not including itself), which is a palindrome.The ‘closest’ is defined as absolute difference minimized between two integers.Example 1:Input: "123"O...

2019-09-30 17:55:35 157

原创 LeetCode 149. Max Points on a Line

题目Given n points on a 2D plane, find the maximum number of points that lie on the same straight line.Example 1:Input: [[1,1],[2,2],[3,3]]Output: 3Explanation:^|| o| o| o +-----...

2019-09-29 16:38:56 78

原创 LeetCode 115. Distinct Subsequences 递归法(回溯法)/动态规划 int-unsigned int

题目Given a string S and a string T, count the number of distinct subsequences of S which equals T.A subsequence of a string is a new string which is formed from the original string by deleting some (...

2019-09-05 11:47:18 151

原创 LeetCode784. Letter Case Permutation && 回溯法总结 && 记录调试经验输出中的空格问题

LeetCode784. Letter Case Permutation && 记录调试经验:cout << ' '中使用多个空格输出数值题目说明思路子集树排序树调试记录回溯法参考:题目说明Given a string S, we can transform every letter individually to be lowercase or uppercase...

2019-09-01 11:10:42 198

原创 特征点法匹配

特征点法匹配概念FAST关键点FAST ORB后$\rightarrow$ Oriented FASTBRIEF描述子附Harrix响应值非极大值抑制在SLAM中VO的实现方法可以根据是否需要提取特征分为两类:基于特征点的方法不使用特征点的直接方法。其中基于特征点的VO运行稳定,对光照、动态物体不敏感。图像特征点的提取和匹配是计算机视觉中的一个基本问题,在视觉SLAM中就需要首先找到...

2019-08-16 18:18:38 2901

原创 LK光流法---金字塔改进

LK光流法---金字塔改进LK光流法注意事项LK金字塔光流法建立金字塔金字塔迭代LK光流法注意事项LK光流法有三个假设条件:亮度恒定:一个像素点随着时间的变化,其亮度值(像素灰度值)是恒定不变的。这是光流法的基本设定。所有光流法都必须满足。小运动: 时间的变化不会引起位置的剧烈变化。这样才能利用相邻帧之间的位置变化引起的灰度值变化,去求取灰度对位置的偏导数。所有光流法必须满足。空间一致...

2019-08-10 09:09:45 3473 3

原创 光流法

光流法光流的概念Lucas-Kanade 光流假设和说明推导参考资料光流的概念光流是空间运动物体在观察成像平面上的像素运动的瞬时速度光流是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。光流是由于场景中前景目标本身的移动、相机的运动,或者两者的共同运动所产生的。通常将二维图像平面特定坐标点上的...

2019-08-09 11:40:46 1355

原创 LeetCode703. Kth Largest Element in a Stream(优先队列)

题目描述:Design a class to findthekth largest element in a stream. Note that it is the kth largest element in the sorted order, not the kth distinct element.YourKthLargestclass will have a constru...

2019-08-03 17:31:40 121

原创 将Eigen中的Matrix放到mfc的Eidt Control控件上,并实现滚动换行等

核心的思路是通过stringstream类进行操作,先将Eigen::Matrix4d 类的对象T传入流,然后再利用流将其传给字符串string,之后再将类型改为CString //头文件 #include<assert.h> #include <fstream> #include <sstream> #include &l...

2019-05-29 16:19:51 222

原创 齐次方程组(超定方程组)的最小二乘解,及利用其拟合空间平面

理论齐次方程组形如:。在一些优化,拟合等问题中经常出现,我们常考虑方程多于未知数元数的情况------超定方程组。首先对于平凡解x=0我们一般不感兴趣,一般我们会寻求方程组的非零解。如果x是方程组的一个解,那么对于,也是齐次方程组的解,一个合理的假设是只求满足的解。假设A的维数是m×n,一般的m>n(超定),那么方程组存在精确解的条件是rank(A)<n------&g...

2019-05-19 11:29:35 6332 2

Opencv4.0.0含opencv_contrib(win10+vs2017编译版)

Opencv4.0.0含opencv_contrib(win10+vs2017编译版) 解压(笔者将其全部解压在了C:\Program Files内) 将glog,glag,suitesparse,ceres的相关bin目录加到系统变量中的path中 将Eigen的库目录加入vs的附加库目录中 配置Opencv

2018-12-06

空空如也

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

TA关注的人

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