自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 fatal error: opencv2\highgui\highgui.hpp: No such file or directory

在Linux上编译opencv代码时报错fatal error: opencv2\highgui\highgui.hpp: No such file or directory但是同样的代码再Windows上能正确编译运行。而且Linux上opencv安装没有问题,版本也没有问题,相应环境变量也都设置了,highgui也存在。找了好久试了很多方法都没有解决这个问题,后来终于发现错误,是Linu...

2020-01-13 16:59:49 3169

原创 PCL cmakelists.txt编写实例

pcl 1.8安装在/usr/loca/路径下,程序中需要用到pcl库时,可以这样写:find_package (PCL 1.8 REQUIRED)set(PCL_INCLUDE_DIRS /usr/local/include/pcl-1.8) #指定pcl1.8路径include_directories( ... ${PCL_INCLUDE_DIRS})target...

2020-01-03 21:42:21 584

转载 ORB_SLAM ROS编译问题:libopencv_core3.so.3.3.1,_ZN2cv6String10deallocateEv

文章转载自:https://blog.csdn.net/qq_43445817/article/details/100835304感谢原作者.ORBSLAM2地图保存、轨迹保存:https://blog.csdn.net/kyjl888/article/details/88416122笔者首先在~/.bashrc上设置了路径:1 sudo vim ~/.bashrc ##(gedit ...

2020-01-03 20:34:49 1595

原创 libfreenect2 安装时候出现"LIBUSB_ERROR_ACCESS Access denied"问题

对于linux用户,正常安装编译libfreenect2后出现"LIBUSB_ERROR_ACCESS Access denied"问题,不要尝试用sudo ./Protonect 来运行程序.具体可看:https://github.com/OpenKinect/libfreenect2/wiki/Troubleshooting,解决办法就是设置udev规则,libfreenect2编译目录下有p...

2019-12-06 09:17:55 885

原创 Opencv cuda 9.0编译记录

[ ycm的安装 ]opencv_contrib cuda9.0编译教程cuda版本: cuda 9.0g++版本: g++ 5.4.01. 下载资料并解压opencv3中, SIFT算法已经迁移到opencv_contrib模块里,此模块还包含人脸检测,dnn,物体检测,滤波器注意:新模块通常没有稳定的API,并且未经充分测试.opencv-3.3.1.zipopencv_con...

2019-12-02 19:15:42 430

原创 vim YCM的安装

1.下载plug.vim文件,根据操作系统不同,放置在以下 autoload 目录中:Linux: ~/.vim/autoload Windows: ~\vimfiles\autoload\plug.vim2. 目录结构如下,之后安装的插件将存放在 plugged 目录中: 3. 在vimr...

2019-11-05 19:09:16 274

转载 Google Breakpad--VS2015 编译、使用、定位错误(如何使用gyp)

https://blog.csdn.net/wangshubo1989/article/details/53334033

2019-10-01 20:52:40 183

原创 数据库三范式

B站视频推荐:https://www.bilibili.com/video/av57307477?from=search&seid=17869944928282172623第一范式(INF): 将表格分割成单纯的二元表格 将表拆分时候,要注意两个表之间的联系,将主键同时也要带到拆分后的表中。第二范式(2NF):通过主键确定其他列的值 ...

2019-08-06 11:19:07 215

原创 银行家算法

文章来源:中国大学MOOC视频公开课

2019-08-01 15:49:39 133

原创 关于C++ substr()函数

string substr(size_t pos = 0,size_t len = npos)const;生成子字符串表示从pos位置开始,pos位置为要复制的第一个字符,一直复制len个字符;substr(j,i)为从j截取到i-1位置的子串。...

2019-07-22 14:24:36 559

原创 【牛客网】快慢指针引起的段错误

//快指针找到中间节点//能正常运行的写法 ListNode*slow=head; ListNode*fast=head; while(fast!=nullptr&&fast->next!=nullptr) { slow=slow->next; fast=...

2019-07-21 15:32:20 273

转载 o(1), o(n), o(logn), o(nlogn)

在描述算法复杂度时,经常用到o(1), o(n), o(logn), o(nlogn)来表示对应算法的时间复杂度, 这里进行归纳一下它们代表的含义:这是算法时空复杂度的表示。O后面的括号中有一个函数,指明某个算法的耗时/耗空间与数据增长之间的关系。其中n代表输入数据的量。比如时间复杂度为O(n),就代表数据量增大几倍,耗时也增大几倍。比如常见的遍历算法。再比如时间复杂度O(n^2...

2019-07-14 15:18:45 173

原创 帧、分组、包、报文段、数据报概念

帧、报文、分组、包、报文段、数据报这几个概念一直是比较容易混淆的概念。帧:数据链路层传输的数据格式,帧的长度=帧头+网络层包头+传输层报文头+数据;我们将链路层分组称为帧。这是底层的概念,我们用抓包工具抓取的就是帧。报文(message):报文是应用层的概念,应用进程通过端口送到传输层的数据单元。一般指完整的信息,传输层实现报文交付。我们将位于应用层的信息分组称为报文。分组:是网络层概...

2019-07-13 16:26:03 2094

转载 如何理解计算机系统中的I/O

I/O从直观上来看是输入/输出; 从计算机架构的角度上来说:任何涉及到计算机核心(CPU和内存)与其他设备间的数据迁移的过程就是I/O。本体是计算机核心(CPU和内存)。例如从硬盘上读取数据到内存,是一次输入,将内存中的数据写入到硬盘就产生了输出。在计算机的世界里,这就是IO的本质。 最后,从编程的角度去理解I/O此事,I/O主体是其应用程序...

2019-07-13 09:23:26 514

转载 C++public/private/protected访问控制权限本质

本文来源于:https://www.cnblogs.com/chio/archive/2007/06/11/779408.html感谢原作者!成员函数是属于类的,而成员变量是属于对象的。类是将数据成员和进行于其上的一系列操作(成员函数)封装在一起,注意:成员函数可以操作数据成员(可以称类中的数据成员为泛数据成员)!对象是类的实例化,怎样理解实例化?其实每一个实例对象都只是对其中的数据成...

2019-06-12 21:39:48 284

原创 C++在delete指针之后是否要置为null

C++ 中delete一个指针之后,只是回收该指针指向的堆空间,而指针本身的值不变(也就是说delete并不将指针删除,同时指针仍然指向原来的那个地址)需要手动将其赋值为NULL。...

2019-06-12 16:32:15 1281

原创 release模式下缺少动态链接库

在编译meshlab时候,release模式下编译,完成后meshlab缺少一些Qt5的动态链接库,此时这些动态链接库到哪里找呢?按照我的Qt5.8安装目录D:\Qt\Qt5.8.0,此时动态链接库应该在D:\Qt\Qt5.8.0\5.8\msvc2015_64\bin目录下。而此时D:\Qt\Qt5.8.0\Tools\QtCreator\bin目录下也有相应的动态链接库,但实际上这是支持Q...

2019-06-08 17:22:22 519

转载 c++友元函数和友元类

1. 友元 友元提供了一种普通函数或者类成员函数访问另一个类中的私有或者保护成员的机制。有两种形式的友元:(1)友元函数:普通函数访问某一个类的私有或保护成员。(2)友元类:类A的成员函数访问类B的私有或者保护成员。优点:提高程序运行效率确定:破坏了类的封装性和数据的透明性。3.实现3.1.友元函数3.1.1.声明和定义在类声明的任何区域中声明...

2019-06-03 14:37:34 574

转载 Partition算法

partition算法是一种分类算法,简单来说就把一个序列分成前后两部分,前一部分都是满足某一条件的元素,后一部分都是不满足该条件的元素。关于partition算法最著名的应用就是quick sort(快速排序)了除了快速排序外,partition算法还经常用在下列场合:在O(N)的时间内找出一个序列中第k大(小)的元素。 在O(N)的时间内找出一个序列中所有比k大(小)的元素。快速排...

2019-05-22 15:52:25 5182

原创 牛客网[最小的k个数]

题目描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,解法1;利用最大堆,O(nlogk)vector<int> GetLeastNumbers_Solution(vector<int> input, int k) { if(input.empty()||k>inp...

2019-05-22 09:54:35 142

转载 C++ map查找key时注意事项

1、在map中,由key查找value时,首先要判断map中是否包含key。2、如果不检查,直接返回map[key]可能出现意想不到的行为。如果map包含key,没有问题,如果map不包含key,使用下标有一个危险的副作用,会在map中插入一个key的元素,value取默认值,返回value。也就是说,map[key]不可能返回null。3、map提供两种方法来检查,是否包含key,m.c...

2019-05-21 21:37:57 1891

转载 c_str()函数问题

c_str()函数用于string与const char*之间的转换,也经常能用到,下面的例子你说输出啥?#include <iostream> #include <string> using namespace std; int main() { string s = "Alexia"; const char *str...

2019-03-24 21:32:13 2547

转载 C++ 虚基类

原文链接:https://blog.csdn.net/chlele0105/article/details/22654869写的非常详细,包括虚基类的说明和虚基类的构造函数和析构函数顺序问题等都有较详细说明。...

2019-03-22 15:35:47 247

转载 细说new与malloc的10点区别(转载)

原文地址:https://www.cnblogs.com/QG-whz/p/5140930.html写的很好,Mark。

2019-03-22 11:18:56 116

转载 pcl::PointCloud::Ptr和pcl::PointCloud相互转换

转载。 https://blog.csdn.net/sinat_24206709/article/details/70266190在函数返回指针时,经常会出现不知道的错误,不用返回指针,直接得到PointXYZ,再将其转化为Ptr。   #include &lt;pcl/io/pcd_io.h&gt; #include &lt;pcl/point_types.h&gt...

2019-02-24 20:17:40 1592

转载 pcl中对点云访问方式

一、第一种是在看《How to create a range image from a point cloud》教程时看到的,代码如下,这种方式是一种vector的赋值方式,首先将point数据push_back到pcl::PointXYZ类型的模板中,然后再用无序点云的方式重新组织点云数据。 pcl::PointCloud&lt;pcl::PointXYZ&gt; pointClou...

2019-02-24 20:03:35 559

转载 TCP三次握手中SYN,ACK,Seq三者的关系(转载)

TCP(Transmission Control Protocol)传输控制协议TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急)...

2019-02-23 22:37:33 704

转载 mongoDB(一)

MongoDB安装教程(不能再详细了) Simple520 关注2017.07.21 15:01* 字数 450 阅读 4250评论 0喜欢 5文章为Windows版教程网络上关于MongoDB的安装和配置教程很多、很杂。系统不一、版本不一。于是就有了这篇自己整理的教程。下面的链接是参考内容最多的一篇文章,大家可以结合着看一下。MongoDB配置参考教程传送门安装...

2019-01-20 21:58:57 209

转载 数组指针和指针数组

数组指针和指针数组的区别:数组指针(也称行指针)定义 int (*p) [n];( )的优先级高,首先说明,p是一个指针,指向的元素类型是int [n] ,也就是说这个指针的步长就是一维数组的长度,当执行p + 1时,p要跨过n个长度。如果将一个二维数组赋给一指针,应这样:int a[3] [4];int (*p)[4];//定义一个数组指针,指向元素为int[4] ,即一...

2019-01-13 22:00:08 94

转载 C++ 类模板

类模板的定义即类采用模板的形式出现,和函数模板一样,对参数没有具体的实例化template &lt;class T&gt; //声明一个模板,虚拟类型名为T。注意:这里没有分号。class Compare //类模板名为Compare{public : Compare(T a,T b) { x=a;y=b; } T max( ) { ...

2019-01-09 09:56:40 622

转载 二叉树的存储结构

二叉树的存储结构有两种,顺序存储结构和链式存储结构。1.顺序存储结构 按照顺序存储结构的定义,我们可以使用一组地址连续的存储单元自上而下,自左至右存储完全二叉树上的结点元素,即将完全二叉树上的结点元素存储在一维数组中下标为i-1的分量中。如下所示:这种存储方式对于满二叉树和完全二叉树是 非常合适也是很高效的。因为满二叉树和完全二叉树采用顺序存储结构既不浪费空间,也可以根据公式很快地...

2018-12-29 22:26:16 1385 1

转载 C++ set用法详解

1.关于setC++ STL之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string ,list等方面的容器,更重要的是stl封装了许多复杂的数据结构和大量实用的数据结构操作。vector封装了数组,list封装了链表,map和set封装了二叉树等,在封装这些数据结构的时候,STL按照程序员的使用习惯,以成员函数方式提供的常用操作,如:插入、排序、删除、查找等。让用户在...

2018-12-29 20:48:37 149

转载 关联容器map

map是一种key-value关联的容器,第一个称为关键字,只能在map中出现一次,第二个称为关键字的值。特点:map是一类关联式容器。它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响。对于迭代器来说,可以修改实值,而不能修改key。1、map是&lt;键—值&gt;对的集合 如:map&lt; string ,int&gt; word_count。...

2018-12-28 22:40:57 171

转载 相机的标定(转载)

看到一篇对相机标定解释很好的博文,所以转载过来,感谢原作者。原文地址:https://blog.csdn.net/liulina603/article/details/529534141、相机内参数是与相机自身特性相关的参数,比如相机的焦距、像素大小等;相机外参数是在世界坐标系中的参数,比如相机的位置、旋转方向等。相机标定(或摄像机标定):一句话就是世界坐标到像素坐标的映射,当...

2018-12-28 17:28:21 720

原创 Error: package 'XXX' not found

我先用catkin_create_package创造了一个包,用catkin_make编译,然后试图用rosrun运行程序,出现 Error: package 'ndt_omp' not found的问题。google 到https://answers.ros.org/question/199940/getting-package-not-found-error/找到问题的答案,原来如果试图用...

2018-11-13 09:45:46 5453

转载 Ubuntu16.04安装ROS kinetic

ROS kinetic官网:http://wiki.ros.org/kinetic/Installation/Ubuntu1. 配置Ubuntu的资源库:"restricted","universe"和"multiverse"。一般情况是不用配置的,参考下图红色框部分。如果没有配置,可以参考Ubuntu官网:https://help.ubuntu.com/community/Reposito...

2018-11-12 21:27:59 169

原创 cmake --Cannot specify link libraries for target" XX" which is not built by this project.

链接共享库时出现上面问题,编写CMakeLists.txt时,cmake_minimum_required(VERSION 3.0)INCLUDE_DIRECTORIES(/usr/local/include/hello)ADD_EXECUTABLE(main main.c)TARGET_LINK_LIBRARIES(main libhello.so)查找问题,In addit...

2018-11-10 12:10:47 17455 7

原创 解决error while loading shared libraries: libXXX.so.X: cannot open shared object file: No such file

一、问题运行hello程序时,用到了自己编写的动态库,在目录/usr/local/lib目录下,运行时出现error while loading shared libraries: libhello.so.1: cannot open shared object file: No such file or directory分析原因:链接器ld提示找不到库文件。ld默认的目录是/l...

2018-11-10 12:00:28 119381 6

原创 boost库的安装

https://blog.csdn.net/xuehuafeiwu123/article/details/78611203按照以上教程来,之前电脑里安装ros时安装了boost.1.58,现在需要安装boost1.68的库,在安装时选择库的路径时需要加 --prefix /usr/local/boost选项,这个选项在zsh终端里报错,识别不了了这个选项,通过./bootstrap.sh --...

2018-11-08 20:43:01 585

原创 ubuntu下同时安装和使用不同版本的库

工作中我们时常需要在不同版本的库间切换,如果同时安装了多个版本的库,将会让我们的工作更加轻松.本文介绍了在ubuntu下安装并使用不同版本库的方法.安装ubantu 下常用的库安装位置有两个:/usr 和/usr/local. 通过apt-get 安装的库位于/usr,自己make install的库通常位于/usr/local下。安装位置通常按照 include,lib,share文件夹...

2018-11-08 19:59:17 1339

空空如也

空空如也

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

TA关注的人

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