自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 在ubuntu22.04中借助docker实现安装、调试ros1.0

使用安装方法1直接安装,没出问题,我就继续了。出问题按方法2安装吧。

2024-02-01 00:05:49 1260

原创 git clone 远程仓库的某个文件夹

有些远程仓库特别大,直接clone下来,一则耗时长,二则有可能因为网络问题中断,clone失败。所有clone远端仓库的某个文件夹是必要的,git1.7之后的版本都支持这个功能。1.初始化:git init2.连接远端库:git remote add origin url3.启用"Sparse Checkout"功能:git config core.sparsecheckout true4.添加想要clone的目录:echo “子目录路径” >> .git/info/spars

2021-08-17 09:53:06 2790

原创 python升级到python3..7后的问题

升级到python3.7后,使用pip install会报错:subprcess.CalledProcessError:Command’(‘lsb_release’, ‘-a’)’ returned …解决办法:Vim /use/bin/lsb_release把第一行由原来的:#!/usr/bin/python3-Es改成升级后的版本即可:#!/usr/bin/python3.7 -Es...

2021-08-12 16:12:18 178

原创 ROS indigo版本cv_bridge配置opencv3.4.1与默认opencv2冲突的问题

ROS indigo 的cv_bridge默认的opencv版本为opencv2.4.8,但项目里的opencv版本要求opencv3,如果使用默认设置,则报错:Bad argument (Invalid pointer to file storage) in cvGetFileNodeByName实际上FileStorage的读入路径没有问题,结果表现为不能读入文件。解决办法:...

2019-12-26 21:58:14 1275

原创 Ubuntu14联合安装opencv与opencv_contrib踩过的坑

1.下载好Opencv3.4.1与对应版本的Opencv_contrib3.4.1:https://github.com/opencv并把opencv_contrib文件放到opencv3.4.1文件夹下,并在这个文件夹下建立build文件夹2.安装必要依赖项(虽然不知道干吗用的,不安装编译通不过,而且报莫名其妙的错误):sudo apt-get install build-es...

2019-09-30 06:57:30 1128 3

原创 模板函数重载把各种数据类型转string

使用模板函数重载把各种数据类型转成string格式的key:value,key:vector<T>(value)等注意模板函数的声明和定义都放在头文件中。#include<iostream>#include<string>#include<sstream>#include<vector>#include<map&g...

2019-07-25 20:51:31 449

原创 catkin_make莫名报错"file" has no attribute of push(pop)

catkin_make突然莫名报错"file" has no attribute of push(pop),追踪到的都是/usr/bin/empy文件,找了很久没找到解决方案,重装ros都不见效,最后好像是缺少python2.7的依赖,还是需要升级什么的,采用下面命令莫名其妙解决:sudo apt-get updatesudo apt-get upgradesudo apt-get in...

2019-07-06 23:22:32 477 5

原创 ubuntu+火狐浏览器+印象笔记+剪藏+国内版配置

一.火狐浏览器更新到最新版 否则无法添加剪藏插件二.网络设置为不用网络代理 在preference->General->network setting,选择no proxy三.默认的火狐浏览器使用的是英文,需要改成中文 否则剪藏自动登录为国际版,如果自己的印象笔记是国内版的话,两者无法互通,将看不到国内版的任何笔记。 general-&g...

2019-05-16 12:16:06 3965

原创 字符串匹配

牛牛有两个字符串A和B,其中A串是一个01串,B串中除了可能有0和1,还可能有'?',B中的'?'可以确定为0或者1。寻找一个字符串T是否在字符串S中出现的过程,称为字符串匹配。牛牛现在考虑所有可能的字符串B,有多少种可以在字符串A中完成匹配。例如:A = "00010001", B = "??"字符串B可能的字符串是"00","01","10","11",只有"11"没有出现在字符串A中,...

2019-04-25 15:51:46 709

原创 解决ros indigo下hardware_interface/EffortJointInterface问题

urdf下的transmission属性如下: <transmission name="tran1"> <type>transmission_interface/SimpleTransmission</type> <joint name="joint1"> <hardwareInterface>hard...

2019-04-20 13:35:16 2461 1

原创 纸牌游戏

牛和羊羊正在玩一个纸牌游戏。这个游戏一共有n张纸牌, 第i张纸牌上写着数字ai。牛牛和羊羊轮流抽牌, 牛牛先抽, 每次抽牌他们可以从纸牌堆中任意选择一张抽出, 直到纸牌被抽完。他们的得分等于他们抽到的纸牌数字总和。现在假设牛牛和羊羊都采用最优策略, 请你计算出游戏结束后牛牛得分减去羊羊得分等于多少。输入描述:输入包括两行。第一行包括一个正整数n(1 <= n &lt...

2019-04-07 10:30:33 1080

原创 贪吃的小Q

小Q的父母要出差N天,走之前给小Q留下了M块巧克力。小Q决定每天吃的巧克力数量不少于前一天吃的一半,但是他又不想在父母回来之前的某一天没有巧克力吃,请问他第一天最多能吃多少块巧克力输入描述:每个输入包含一个测试用例。每个测试用例的第一行包含两个正整数,表示父母出差的天数N(N<=50000)和巧克力的数量M(N<=M<=100000)。输出描述:输出...

2019-04-06 17:29:05 263

原创 安排机器

小Q的公司最近接到m个任务, 第i个任务需要xi的时间去完成, 难度等级为yi。小Q拥有n台机器, 每台机器最长工作时间zi, 机器等级wi。对于一个任务,它只能交由一台机器来完成, 如果安排给它的机器的最长工作时间小于任务需要的时间, 则不能完成,如果完成这个任务将获得200 * xi + 3 * yi收益。对于一台机器,它一天只能完成一个任务, 如果它的机器等级小于安排给它的任务难度等...

2019-04-06 13:03:10 410

原创 ubuntu下CLion中while(cin>>x)输入ctr+D直接退出程序解决

直接ctr+d本应该继续执行退出循环后的内容,但是clion直接退出,下面方法可以暂时解决1.ctr+shift+a调出动作对话框2.搜索:Registry...并进入3.把run.processes.with.py前面的勾去掉...

2019-04-04 22:58:29 1359 3

原创 判断数独

Determine if a9x9 Sudoku boardis valid.Only the filled cells need to be validatedaccording to the following rules:Each rowmust contain thedigits1-9 without repetition. Each column must conta...

2019-04-02 08:47:58 591

原创 过桥问题

在一个夜黑风高的晚上,有n(n <= 50)个小朋友在桥的这边,现在他们需要过桥,但是由于桥很窄,每次只允许不大于两人通过,他们只有一个手电筒,所以每次过桥的两个人需要把手电筒带回来,i号小朋友过桥的时间为T[i],两个人过桥的总时间为二者中时间长者。问所有小朋友过桥的总时间最短是多少。分析:每次过桥的时候最多两个人,如果桥这边还有人,那么还得回来一个人(送手电筒),也就是说N个人...

2019-04-01 17:14:49 1539

原创 数组全排列(Permutations)

Given a collection of distinct integers, return all possible permutations.Example:Input: [1,2,3]Output:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]首先想到的递归解法:直接递归cl...

2019-03-30 17:02:06 522

原创 Substring with Concatenation of All Words

You are given a string, s, and a list of words, words, that are all of the same length. Find all starting indices of substring(s) in s that is a concatenation of each word in words exactly once and wi...

2019-03-29 22:34:20 94

原创 Reverse Nodes in k-Group

Given a linked list, reverse the nodes of a linked list k at a time and return its modified list.k is a positive integer and is less than or equal to the length of the linked list. If the number of ...

2019-03-28 23:12:22 129

原创 Swap Nodes in Pairs

Given alinked list, swap every two adjacent nodes and return its head.You may not modify the values in the list's nodes, only nodes itself may be changed.Example:Given 1->2->3->4, ...

2019-03-28 21:04:19 218

原创 把Tx2作为服务器挂载带台式电脑上

把Tx2的/home目录挂载到台式机,方便可视化与文件修改Tx2端(Ubuntu16.04),IP为:192.168.1.121:1.安装nfs服务器sudo apt-get install nfs-kernel-server nfs-common2.配置允许共享的文件夹sudo vim /etc/exports3.写入:/home ...

2019-03-19 16:56:20 559

原创 C++的单例模式

一.什么是单列模式 单例模式就是一个类只能被实例化一次 ,更准确的说是只能有一个实例化的对象的类。二.单线程单例模式 首先,设计构造函数为私有,它只能被类内部的成员函数调用,所以我们定义一个共有函数去供外部调用,然后这个函数返回一个对象,为了保证多次调用这个函数返回的是一个对象,我们可以把类内部要返回的对象设置为静态的,就有了下面的代码:class CSingleto...

2019-03-13 17:53:55 230

原创 qt4.8,qt5.2,qt5.11版本切换

本来只打算安装qt4.8和qt5.11的,结果多出qt5.2,发现版本切换的方法与网上的不同。我的切换版本的方法如下:cd /usr/share/qtchoosersudo gedit qt5-x86_64-linux-gnu.conf####改为4.8版本/usr/lib/x86_64-linux-gnu/qt4/bin/usr/lib/x86_64-linux-gnu###...

2019-01-19 10:28:00 3363

原创 函数对象与函数指针

函数对象:所有重载了函数调用操作符(operator())的类对象。通过将operator设置为内联函数,可以使程序性能加速。即把对象当做函数使用。 函数指针:指向某种(函数参数,返回值)的函数类型的指针,每个函数都有一个入口地址,函数指针便是指向了函数的入口地址。通过将函数指针传入函数中,方便一个函数调用另一类型的函数。如: int GetMaxValue( double x, bool (...

2019-01-12 21:03:42 275

转载 关于this指针总结

1. this指针的用处:  一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果。this作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自动将对象本身的地址作为一个隐含参数传递给函数。也就是说,即使你没有写上this指针,编译器在编译的时候也是加上this的,它作为非静态成员函数的隐含形参,对各成员的访问均通过this进行。2. ...

2019-01-10 16:21:55 189

原创 中位数

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)).You may assume nums1 and n...

2019-01-07 18:33:01 346

原创 ceres拟合分段函数

 假设优化函数为:真实值:a=1,b=2,c=1;#include &lt;iostream&gt;#include &lt;opencv2/core/core.hpp&gt;#include &lt;ceres/ceres.h&gt;#include &lt;chrono&gt;using namespace std;// 代价函数的计算模型struct CURVE...

2019-01-03 19:30:07 1037 3

原创 手写高斯牛顿法实现3d-2d位姿估计

3d路标坐标:p3d.txt-0.0374123 -0.830816 2.7448-0.243698 -0.117719 1.5848-0.627753 0.160186 1.3396-0.323443 0.104873 1.4266-0.627221 0.101454 1.31160.402045 -0.341821 2.2068-0.687785 0.0430873 1.29...

2018-12-19 14:13:10 553

原创 利用ICP把自己跑出的数据与开源数据集对齐并显示(二.坐标系对齐)

  对齐时间戳后,生成文件:GroundAligned.txt和EstimatedAligned.txt。由于两个数据集并不在一个坐标系下进行衡量,所以需要坐标系转换。详见:  https://mp.csdn.net/postedit/85006243  仍然是以EuRoC数据集V2_02_medium为例进行介绍,并把转换后的相机轨迹保存为AfterAligned.txt:#inc...

2018-12-15 16:22:47 1412 2

原创 利用ICP把自己跑出的数据与开源数据集对齐并显示(一.时间戳对齐)

 我们采集的数据集时间戳通常与给定的groundtruth的时间戳不对齐,下面以EuRoC数据集data.csv和我们采集的CameraTrajectory.txt为例介绍两者之间的对齐。一.data.csv转ground.txt //改写成txt文件 ifstream ifile("data.csv"); string line,s; vector&lt;...

2018-12-15 15:52:11 1971 2

原创 利用ICP把两个数据集对齐

        在实际当中,我们经常需要比较两条轨迹之间的误差。但是,由于 ground-truth 轨迹与相机轨迹很可能不在一个参考系中,它们得到的轨迹并不能直接比较。这时,我们可以用 ICP 来计算两条轨迹之间的相对旋转与平移,从而估计出两个参考系之间的差异。设真实轨迹为 Tg,估计轨迹为 Te,二者皆以 TW C 格式存储。但是真实轨迹的坐标原点定义于外部某参考系中,而估计轨迹则以相机出发...

2018-12-14 17:36:42 3717

原创 C++笔记(一)

一.C++延时与暂停windows下:#include&lt;Windows.h&gt;...Sleep(500);//500ms...system("pause");...Linux下:#include&lt;unistd.h&gt;...sleep(0.5);//0.5s...pause();...二.多线程CMakeLists.txt配置cm...

2018-10-20 23:29:24 138

原创 没有有线网口的笔记本安装Ubuntu14.04解决无线网驱动和连接问题

买了个惠普笔记本,没有有线网口,之前解决无线网驱动问题都可以先连有线,然后通过一系列指令更新安装无线网驱动,现在没法接有线网,无线网驱动只能用其他设备下载,然后拷贝,安装,具体步骤如下:一.查看无线网卡驱动类型:在Windows下控制面板-设备管理器中可以查到无线网卡具体型号,我的电脑无线网卡型号是Intel Dual Band Wireless-AC 3168.二.去Intel的官网...

2018-09-15 20:34:55 1194

原创 Ubuntu14.04有线网突然无法上网了

Ubuntu有线网用的好好的,最近发现突然没法正常上网了,火狐浏览器显示异常,切换到无线网是正常的,发现一个终极办法:挂起-------登录---------正常了...

2018-09-15 16:36:06 830

原创 在ceres中实现ICP优化(仅优化位姿)

一.仅优化位姿构造类和代价函数:struct ICPCeres{ ICPCeres ( Point3f uvw,Point3f xyz ) : _uvw(uvw),_xyz(xyz) {} // 残差的计算 template &lt;typename T&gt; bool operator() ( const T* const c...

2018-09-03 23:05:57 5912 1

原创 在ceres中实现PnP优化(仅优化位姿)

一.仅优化位姿    构造类和代价函数:// 代价函数的计算模型struct PnPCeres{ PnPCeres ( Point2f uv,Point3f xyz ) : _uv(uv),_xyz(xyz) {} // 残差的计算 template &lt;typename T&gt; bool operator() ( co...

2018-09-03 18:57:49 3696 4

原创 在ICP程序中,将空间点也作为优化变量考虑进来,程序该如何书写?

由p=Rp‘+t,现在把第二个相机坐标系下的空间点作为优化变量考虑进来,并用列文伯格-马尔夸特法求最优解:第一个顶点仍为相机位姿,借用空间顶点g2o::VertexSBAPointXYZ作为第二个相机观测的顶点,添加顶点如下:for ( auto p:pts2 ) { g2o::VertexSBAPointXYZ* point = new g2o::Vertex...

2018-09-01 22:21:59 490

原创 在PnP优化中,把第一个相机的观测也考虑进来,程序该如何书写?

添加第一个相机位姿和第二个相机位姿作为顶点,第一个相机坐标系设置成世界坐标系,不进行优化: //相机1位姿 g2o::VertexSE3Expmap* pose1 = new g2o::VertexSE3Expmap(); // camera pose Eigen::Matrix3d R_mat1=Eigen::Matrix3d::Identity(); pos...

2018-08-31 16:32:54 443 2

原创 Eigen库要点

旋转矩阵,旋转向量,四元数关系如下:另外,初始化(赋值)变换矩阵T的方式为:Isometry3d Tcw(rotation);//rotation可以是旋转矩阵,可以是四元数,可以是旋转向量Tcw.pretranslate(t);//添加平移向量//或者:Isometry3d Tcw=Isometry3d::Identity()//如果没有直接初始化,先设为单位阵Tcw.pre...

2018-08-24 23:10:39 2275 3

原创 C++读取不规则长度文本,以换行结束

C++中读取长度规则的文本以换行结束很简单,使用for循环就行,比如读取文本test1.txt(姓名+电话)morgan 2015552368 986523541 25368492drew 9752354213 12365452684 2568942125lee 6095242035 145103520 455200698546定义类:class persion{public...

2018-08-23 16:15:52 2699

空空如也

空空如也

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

TA关注的人

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