自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 卡尔曼滤波器的推导(Intersection、边缘化概率Marginalization、条件概率Condition)

0. 摘要这篇博客从高斯分布的角度出发, 比较形象地推导了卡尔曼滤波器; 文章首先从一维高斯分布出发, 然后是二维高斯分布, 先对高斯分布有个大体的了解; 然后使用了一些数学手段来得出高斯的联合概率分布由连部分组成: 条件概率和边缘概率;然后根据这些性质来主动地推出卡尔曼滤波器。0.1. 卡尔曼滤波器的推导主要分为两步:预测和更新;卡尔曼滤波器对应到高斯概率分布角度也分为两步:Interse......

2019-10-04 21:35:05 1338 2

原创 Ceres中CostFunctionToFunctor的优化使用讲解

Ceres中CostFunctionToFunctor的优化使用讲解

2022-08-08 00:34:08 441 1

原创 C++的隐式类型转换操作符

1. 摘要在智能指针中,有时候我们需要获取到原本的资源,这个时候我们会使用obj.get()获取到对应的指针,但有时候.get()的使用显得不是很方便,所以就出现了隐式类型转换,比如我们在判断智能指针是否为nullptr时就会用到这个隐式转换。2. 隐式类型转换2.1. 表示形式:operator T().........

2021-03-30 13:52:52 228

原创 (一图胜千言)虚函数实现机制(Vptr, Vtbl)

1.讲解C++中虚函数的实现机制,主要是Vptr和Vtbl的讲解,有了虚函数才可以拥有像多态这种强大的功能。

2021-03-23 15:17:37 1881

原创 软件相关的小问题记录

Ubuntu解压zip文档时出现乱码:方法: 可以通过unzip指定字符集来消除乱码, 命令如下:unzip -O GBK <your.zip file>

2020-12-31 15:30:26 389

原创 Git指令讲解

2.5. 常用指令

2020-10-09 13:44:48 424

原创 派生类对象初始化时构造顺序是什么?

派生类对象初始化时构造顺序是什么?#include <iostream>using namespace std;class Base {public: Base(int i) { cout << i; cout << "Base"<< endl; }};class Base1 : virtual public Base {public: Base1(int i, int j=0):Bas

2020-09-28 15:11:45 624

原创 各种分配内存函数的区别(含Cuda)

new, malloc, cudaMalloc, fftw_malloc,alloca, memset

2020-09-26 16:36:17 571

原创 Google测试框架gtest内部初探析

1. Google测试框架gtest内部探析

2020-09-19 15:28:36 313

原创 Git如何同步多个远程仓库

1. 摘要这篇博客讲述:Git如何同步多个远程仓库,比如本地写好了代码,有一个需求:你既想往Github中push代码,又想往Gitlab中push代码(毕竟Gitlab建立多人私有仓库免费)。所以这篇博客主要讲的就是:仓库要同时往github, gitlab这两个远程仓库push代码,该怎么做?2. 前期准备2.1. 创建一个文件夹,文件夹中随便写一个txt文档,我这里以dual_push为例:例:~/dual_push/dual_push.txt2.2. 去Github和Gitlab分别建立

2020-09-14 16:19:56 4325

原创 深入理解find_package

0. 摘要1. 参考资料[1]. 深入理解CMake(3):find_package()的使用[2]. 官网find_package详解

2020-09-12 21:47:29 880

原创 手写智能指针(smart_ptr)

1. 摘要

2020-09-05 21:41:59 404

转载 卷帘相机和全局相机的区别(Rolling Shutter & Global Shutter)

什么是快门快门是照相机用来控制感光片有效曝光时间的机构。是照相机的一个重要组成部分,它的结构、形式及功能是衡量照相机档次的一个重要因素。什么是Global Shutter(Total Shutter)?通过整幅场景在同一时间曝光实现的。Sensor所有像素点同时收集光线,同时曝光。即在曝光开始的时候,Sensor开始收集光线;在...

2020-07-30 11:16:55 10844

原创 Git删除本地文件后,如何同步到远程(代码文件名包含中文)

1. 摘要这篇博客主要是讲解:当本地的git库中的文件删除以后,远程git库如何同步这一个信息。遇到的问题:本地删除文件后,如何同步到远程;文件中有中文名怎么办?2. 方法2.1. 新建对应的文件,并push到远程库:mkdir test_gitcd test_git/touch xiaomin.txttouch 小红.txtgit initgit add xiaomin.txt 小红.txtgit commit -m "Add two test file."git remote a

2020-07-18 18:48:50 4728 1

原创 深入理解动态链接库

IBM的动态库介绍见此处简书

2020-07-15 12:44:01 196

原创 Altium Designer PCB硬件相关记录

1.摘要由于昨天才开始使用AD软件绘制PCB版图,对于软件的使用很不熟悉,昨天连“布线”这个最基本的操作都点错了,导致一直产生错误,好在很快发现问题并解决了,其中在PCB封装库上走了挺多弯路,所以现在汇总一下相关的解决办法,以提高工作效率。2. 方法2.1. 第一种方法就是自己动手画,你可以新建一个【新的空白元件】,然后根据器件规定的物理尺寸利用焊盘/过孔等绘制出一个封装;另一种是使用【IPC封装向导】(这个比其他选项要好),里面有各种型号的封装,需要自己根据器件的物理尺寸填写好,最后就会自动生成一个

2020-07-06 15:29:29 647

原创 Silk To Solder Mask Clearance Constraint等规则约束错误

1. 问题描述在使用AD绘制PCB版图的时候,我们在进行规则检查的时候,很容易出现Silk To Solder Mask Clearance Constraint这个错误,这是因为丝印层到阻焊层的间距不满足规则中的约束,所以报了这个error;这个error不致命,如果你是强迫症那就改吧!2. 问题出现的原因有时候如果直接使用其他人做好的器件封装,容易出现这个问题,毕竟画的时候很难和你自己的规则约束保持一样。或者自己画的时候没有注意这些东西。3. 方法(两种)3.1. 修改规则:【设计】-

2020-07-05 22:33:23 46348 6

原创 四元数旋转表达(Hamilton notation & JPL notation)

1. 四元数介绍此处链接讲述了四元数的概念和旋转相关的知识。

2020-07-01 11:09:21 2245

原创 Ubuntu如何优雅地切换gcc版本(编译“现代C++”程序)

0. “现代C++”0.1. 最近在学习“现代C++”的内容,在编程的过程中难免会使用到一些C++的新特性,比如C++17中的内联变量:inline variable、std::byte等;然而在编译程序的过程中,发现Ubuntu16.04.6自带的编译器g++会失败,这主要是因为16.04自带的gcc, g++编译器的版本是5.4.0,编译器发布的时间为20160609,那自然肯定编译不了C+......

2019-12-05 17:06:43 6710

原创 CLion调试ROS官方教程

CLion调试ROShttps://www.jetbrains.com/help/clion/ros-setup-tutorial.html

2019-10-22 15:48:49 908

原创 NVIDIA TX2 (JetPack) 安装Ubuntu16.04 精讲

0. 摘要这篇文章讲了如何在TX2上安装Ubuntu16.04系统;1. 目标1.1. 在使用TX2过程中,刷机是一件不可避免的事,很可能因为一项常规操作就让系统崩掉, 而不得已重新安装系统, 而且刷机基本不会一帆风顺,所以下面将遇到的问题记录下来供大家参考和避坑。1.2. 所以我们这篇文章讲了如何在TX2安装Ubuntu 16.04 LTS系统;2. 刷机所需要做的准备2.1.硬件......

2019-10-03 14:28:39 3083

原创 (首个填坑)联想拯救者Y7000(自带win10 home) 安装Ubuntu16.04.6 + NVIDIA GTX1650驱动

1. 安装Ubuntu16.04.6系统1.0. 由于安装ubunut系统的教程很多, 所以这里只是大概讲下流程和需要注意的地方;1.1. 首先在win10环境下使用自带的磁盘管理工具将某个盘压缩出自己所需要的空间, 我这里压缩了250G给Ubuntu系统使用, 压缩完成后会看到存在一个未分配的分区,如下图所示; (如果在安装类型中选择了第一项, 系统会自动识别出这个未分配的分区进行Ubunt......

2019-09-22 13:22:54 17324 81

空空如也

空空如也

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

TA关注的人

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