自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (5)
  • 收藏
  • 关注

转载 条件编译#ifdef的妙用详解_透彻

c++条件编译详解

2022-03-23 17:44:39 11899

原创 vs的一些编译选项(持续更新)

文章目录提高编译速度的选项/MP/Gm-预编译头提高编译速度的选项/MP开启多线程编译,默认时开启的状态,注意该选项和下面的/Gm-选项是互相冲突的,即开启了该选项,就必须关闭Gm-选项,否则多线程编译无法生效;vs设置:c/c++ 》 常规 》 多处理器编译。默认是打开状态/Gm-(已弃用)开启这个选项后,一些修改的头文件可能不会被重新编译。这个选项在新版本的编译器中已被弃用。为了缩短生成时间,建议改为使用预编译标头和增量和并行生成(/MP)选项。vs设置:c/c++ 》 代码生成 》启用最

2021-11-27 20:04:38 1584

原创 boost 之序列化和反序列化

文章目录序列化操作简介主要特征详细介绍序列化内置类型序列化stl容器序列化自定义类型(侵入式)序列化指针和引用序列化自定义类型(非侵入式)序列化继承类版本控制参考文档序列化操作简介序列化是将程序数据保存到磁盘中比较方便的一种方式,简单理解序列化就是将程序中的数据统一转化成字符串最终保存在磁盘中或进行网络传输,同时可通过反序列化过程恢复程序数据,是数据储存和数据传输的利器。有很多第三方库可以做序列化,boost库的序列化的功能是我比较常用的一种序列化方法,下文将详细介绍boost的序列化操作。主要特征

2021-11-13 10:30:11 2549

原创 c++11的移动语义和完美转发

移动语义和完美转发之前都是似懂非懂的状态,趁这两天比较得空,将这两个概念重新梳理了一遍整理成该文,方便记忆。移动语义和完美转发是c++11中为了更好支持模板编程而新增的特征,所以如果基本不会用到模板编程,或者只是简单的使用,其实也没必要浪费时间去理解这两个概念,但如果想尝试写出更好的泛型代码,还是有必要好好理解下的。移动语义所谓的移动语义是指将一块内存单元(可以是变量的内存单元也可以是临时对象的内存单元)从一个对象转移到另一个对象。移动语义实现的关键在于接下来要讲到的右值引用。和移动语义相对的概

2021-08-12 10:07:25 241

原创 一种在子线程中操作Qt的ui对象的优雅方式

问题Qt有一个比较让人困扰的问题:不允许在子线程中对ui对象进行操作,否则会导致程序崩溃或者出现一些诡异的问题。解决这个问题的方法大致有两个:通过信号槽连接,大体思路:当子线程中需要对ui对象进行操作时,发出一个信号,在与之连接的槽中处理ui操作。信号和槽的连接方式必须是BlockingQueuedConnection或QueuedConnection的连接方式连接。通过自定义event,在子线程中通过QCoreApplication::postEvent发出自定义的event,在对应的ui对象中重

2021-07-24 10:39:44 1763

原创 c c++操作windows的注册表项

示例代码如下:#include <iostream> #include <atlbase.h>#include <Windows.h>using namespace std;int main(){ HKEY hKey = NULL; DWORD dwDisposition; LPCTSTR subKey = _T("SOFTWARE\\Foxit Software\\Foxit"); DWORD dwOptions = REG_OPTION_NO

2021-03-15 19:59:54 368

原创 google test入门

简介googletest (下文简称gt)帮助你写更好的c++测试。gt是由测试技术团队根据Google的特定要求和约束开发的测试框架。无论是在Linux,Windows还是Mac上工作,googletest都可以为你提供帮助。它支持任何类型的测试,而不仅仅是单元测试。什么是好的测试,gt是如何做到这点的:测试必须是独立,可重复的。gt通过在不同的对象中测试用例,以使各个测试用例互相独立。测试应该有很好的组织和反应所测试代码的结构的能力。gt将相关的测试组合成测试套件,测试套件内可以共享数据和子

2020-11-03 20:03:27 722

原创 Eigen中的混叠(aliasing)问题

Eigen中的混叠(aliasing)问题Eigen中aliasing指的是在赋值表达式的左右两边存在矩阵的重叠区域,这种情况下,有可能得到非预期的结果。如mat = 2*mat或者mat = mat.transpose(),第一个例子中的alias是没有问题的,而第二的例子则会导致非预期的计算结果。下面例子:MatrixXi mat(3,3);mat << 1, 2, 3, 4, 5, 6, 7, 8, 9;cout << "Here is the matrix mat:

2020-10-11 22:27:46 788

原创 ceres快速入门

ceres用于求解有约束的非线性最小二乘问题,如下式:min⁡x12∑iρi(∥fi(xi1,…,xik)∥2) s.t. lj≤xj≤uj\begin{array}{ll}\min _{\mathbf{x}} & \frac{1}{2} \sum_{i} \rho_{i}\left(\left\|f_{i}\left(x_{i_{1}}, \ldots, x_{i_{k}}\right)\right\|^{2}\right) \\\text { s.t. } &

2020-10-11 22:24:46 1259

原创 QTreeWidget妙用

QTreeWidgetqtreewidiget是在

2019-07-26 22:27:52 1046

原创 c++11多线程(thread)

std::thread介绍std::thread是c++11的特性,用于管理线程。(注意下文中线程和线程对象的区别:线程即通俗意义上的线程,而线程对象这里指的是thread类的一个具体实例)使用时需要注意以下几点:thread对象可以也只能管理一个线程,当然可以不管理任何线程,比如使用默认构造函数,move构造,join或者detach之后。thread重载的了“=”操作,其实就是实现m...

2019-06-15 16:09:04 1360

原创 C++的异常处理机制(待续)

异常类匹配方式throw抛出的异常类型和catch中处理的异常类型需严格匹配,异常处理器不做类型转换,下面几种情况除外: 1. 基类可以匹配到派生类这个在函数和异常匹配中都是有效的,但是需要注意catch的形参需要是引用类型或者是指针类型,否则会导致切割派生类这个问题。 2. 允许非常量到常量的烈性转化 3. 允许数组被转换为数组指针,允许函数被转换为函数指针...

2018-08-21 19:50:05 162

原创 2D物体识别方法——LINE-2D

line-2D是line-mod中的一个子模块,把line-mod的3D模式剔除,即只用2D图像制作模板,进行物体匹配就是line-2d,该方法的基本思想是根据图像的轮廓和梯度信息,通过经典的相似度计算公式(1)计算相似度进行的模板匹配,其巧妙之处在于:1)巧妙地运用了2进制位的表示量化的梯度方向,并分别对搜索图像计算每个量化方向的响应图像,从而将公式(1)匹配相似度的计算过程,转化成查找的过程,

2018-08-04 16:14:36 8826 2

原创 相机标定——标定图片拍摄规范

相机标定是进行视觉测量和定位的基础工作之一,标定参数准确与否直接关系到整个系统的精度,在此根据自己项目中的经验及参考相关的商用视觉软件的做法将相机标定过程中标定图片的获取过程中需要注意的问题总结如下:标定板拍摄的张数要能覆盖整个测量空间及整个测量视场,把相机图像分成四个象限(如图1所示),应保证拍摄的标定板图像均匀分布在四个象限中,且在每个象限中建议进行不同方向的两次倾斜,图2是一组推荐摆放

2017-08-16 18:36:28 20412 14

原创 迭代最近点(ICP)进行点云配准

ICP PCL 迭代最近点 Iterative Closest Points 3D识别 registration

2017-06-16 22:52:42 7613 3

原创 vs配置opencv问题

在vs中配置opencv在网上虽然已经有很多介绍,但一些细节问题交代得不够具体,很容易出现配置失败,所以在这里详细总结下配置方法,按照本文的方法必能成功配置opencv*****************opencv与vs的配置步骤***************************##步骤一:在计算机中的环境变量中的path(不知道怎么设置环境变量的同学,请自觉百度,这里不做说明)加

2015-05-03 18:00:05 323

ceres-windows.rar

google的线性优化库ceres solver的vs编译工程,文件中已经包含了所有编译所需要的依赖库。 平台: windows7~10 VS10~15 解决方案中包含了:动态编译,静态编译,和相关使用demo的工程。

2019-08-15

SeetaFaceEngine.rar

对seetaface库进行了一些修改,方便进行人脸比对,同时支持静态编译和动态编译

2019-08-11

seetaface face detect and verify data

seetaface的人脸识别的模型数据

2019-08-11

QTreeWidget-NoteBook.rar

a note book with QTreeWidget.

2019-07-26

实现qt QGraphicsView放大缩小功能的类

实现qt QGraphicsView放大缩小功能的类,不用继承QGraphicsView,只需要在该类中设置要实现放大缩小的QGraphicsView对象即可。

2018-08-04

空空如也

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

TA关注的人

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