自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (3)
  • 收藏
  • 关注

原创 GTSAM调试方法

1. 查看Key值一般定义Key时使用字母和数字,在报错的时候会以字母加数字的形式输出,如x162380582776但在调试时,在调试工具中即看不到这样形式的Key,而是一堆数字,例如8646911446931935096这时就需要一个小工具来进行转换#include <iostream>#include <string>#include <gtsam/inference/Symbol.h>int main(int argc, ch

2021-07-29 12:16:52 689

原创 如何理解导远技术手册

导远的技术手册很难理解。

2021-07-28 21:03:40 2650 6

原创 关于软件开发环境的思考

软件开发环境对开发者十分重要,而且也是一个十分棘手的问题。本文介绍一下解决软件开发环境的常用方法和软件开发环境经常遇到的问题。

2021-07-28 20:42:28 1017

原创 位姿转换及其符号规则

我们看文章的时候,总是看到不同的位姿定位习惯,差别很大,这里把它们记录一来,慢慢补充。

2021-07-24 01:05:55 869 2

转载 Python标准库介绍

1. 关于Python标准库众所周知,Python是一个依赖强大的组件库完成对应功能的语言,为了便捷实现各项功能,前辈大牛们打造了多种多样的工具库公开提供给大众使用,而越来越多的库已经因为使用的广泛和普遍及其功能的强大,已经成为Python的标准库。时至今日,Python 标准库已经非常庞大,所提供的组件涉及范围十分广泛,正如本文后面的内容中所显示的。这个库包含了多个内置模块 (以 C 编写),Python 程序员必须依靠它们来实现系统级功能,例如文件 I/O,此外还有大量以 Python 编写的模

2021-07-22 19:35:44 3457

原创 代码中的变量定义原则

本文中,我们将深入探讨代码中的变量定义原则,旨在帮助读者提升代码的可读性和维护性。我们将从变量命名的规范性、变量作用域的划分、变量类型的选择以及常量与变量的区分等多个方面展开论述,并结合具体案例进行分析。通过遵循这些原则,你将能够编写出更加清晰、易于理解的代码,提高团队协作效率,降低出错率。无论你是初学者还是资深开发者,本文都将为你提供宝贵的指导,助你在代码编写中更上一层楼。

2021-07-19 20:12:02 1652

原创 C++数值极限numeric_limits

一般来说,数值类型的极值是一个与平台相关的特性。C++标准程序库通过template numeric_limits提供这些极值,取代传统C语言所采用的预处理常数。你仍然可以使用后者,其中整数常数定义于和,浮点常数定义于和,新的极值概念有两个优点,一是提供了更好的类型安全性,二是程序员可借此写出一些template以核定这些极值。3. 示例输出参考文献http://www.cplusplus.com/refere

2021-07-19 19:37:21 2384

原创 Latex公式

以下几个字符: # $ % & ~ _ ^ \ { }有特殊意义,需要表示这些字符时,需要转义,即在每个字符前加上\(转义字符的具体含义下面会解释)\boxed命令给公式加一个方框。\fbox具有类似功能\mathbf将字体加粗\boldsymbol将字体斜体且加粗。

2021-07-19 01:42:42 8280

原创 Linux配置NTP时间同步

NTP是用来使计算机时间同步化的一种协议,它可以使计算机对其或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。

2021-07-16 00:45:37 20583 2

原创 C++视频库ffmpeg

我们常说的视频文件(例如 avi 文件,MP4 文件等)本质上是一种“容器”,其内部存放一帧帧的视频信息和音频信息。因此,视频文件内部常常包含不止一个“信息流”,而是包含一组“信息流”(若干视频流和若干音频流)。 所谓的“信息流”,其实就是随时间分布的信息而已。比如视频可以看成是一组随时间分布的“图片”。视频流中的一个数据元通常被称作“一帧(frame)”,每一种视频流都有属于自己的编解码器(enCOder/DECoder,在FFmpeg中被简写为 codec),用于说明该种视频流是如何编码和

2021-07-16 00:27:33 5462 1

原创 Matlab姿态表示

本文深入探讨了Matlab在姿态表示方面的应用。首先,文章介绍了姿态表示的基本概念和重要性,阐述了其在机器人、计算机视觉和航空航天等领域中的广泛应用。接着,详细讲解了Matlab中常用的姿态表示方法,包括旋转矩阵、欧拉角、四元数等,并分析了各自的优缺点和适用场景。此外,文章还介绍了如何在Matlab中进行姿态的转换和计算,以及如何利用Matlab进行姿态数据的可视化。通过本文的学习,读者将能够掌握Matlab在姿态表示方面的基本知识和实用技巧,为相关领域的研究和应用提供有力支持。

2021-07-16 00:19:36 1060

原创 评测工具设计

评测模块有如下功能

2021-07-16 00:13:07 326

原创 三维空间中点线面体的自由度

3个自由度。因为点只有位置属性,而确定这一点的位置恰好需要3个标量。

2021-07-14 17:33:45 5272 5

转载 深度学习中的20种卷积

大多数的卷积结构都是在精度-参数量-计算量这三个维度上进行不同的侧重取舍。两个矛盾:追求计算效率的卷积结构由于计算预算较低,无论是限制卷积层的深度,还是限制了卷积的宽度,不可避免地会导致性能的下降。追求精度提升的卷积结构由于其引入过多的卷积运算或其他额外的操作(如注意力),势必会增大内存或计算开销,从而影响模型的容量和整体的训练或推理速度。一个设计的原则就是我们如何在不增加额外参数量的情况下,尽可能利用有效的信息或者从降低冗余空间信息的角度出发,来提高模型的计算效率和卷积提取特征的能力。

2021-07-13 14:32:04 11576 5

转载 Breakpad查C++崩溃问题

Breakpad 是 Google 用 C++ 编写的一个开源、跨平台的崩溃报告系统,它支持 Windows、Linux 和 macOS,并提供了一个上传器,可以在进程崩溃时向一个配置好的 URL 提交 minidump 文件。目前,有很多大型项目都在使用 Breakpad,例如:Google Chrome、Firefox、Google Picasa、Camino、Google Earth 等。 主页:https://chromium.googlesource.com/breakpad/break

2021-07-12 14:43:08 672

原创 Eigen::Matrix使用笔记

include // 基本函数只需要包含这个头文件// 固定了行数和列数的矩阵和Matrix3d一致.// 固定行数.// 和MatrixXd一致.// 按行存储;默认按列存储.// 3x3 float 矩阵.// 3x1 float 列向量.// 1x3 float 行向量.VectorXd v;// 动态长度double型列向量x.size() // length(x) // 向量长度C.rows() // size(C,1) // 矩阵行数。

2021-07-11 16:48:17 7077 1

原创 Doxygen生成代码关系调用图

Doxygen能将程序中的特定批注转换成为说明文件。它可以依据程序本身的结构,将程序中按规范注释的批注经过处理生成一个纯粹的参考手册,通过提取代码结构或借助自动生成的包含依赖图(include dependency graphs)、继承图(inheritance diagram)以及协作图(collaboration diagram)来可视化文档之间的关系, Doxygen生成的帮助文档的格式可以是CHM、RTF、PostScript、PDF、HTML等。安装sudo apt install gr

2021-07-11 15:50:32 5427

转载 判断人工智能是否可信的“四把尺子”

1. 前世今生今天介绍一下可信人工智能的前世今生。人工智能并不是一个新的概念,从1950年的图灵之问开始,到今天产业的蓬勃发展。起起伏伏,人工智能已经走过了三次浪潮,甚至有学者认为,我们今天正处在第四次浪潮,其特点是:广泛的产业落地。正是由于“落地”,所以才带来了一些问题,因此讨论可信AI正是时候。先来看一些可信AI的例子,大家在网上购物的时候,经常会使用拍照购这一功能,其使用的是计算机识别技术。如果拍照购识别的照片含有“小标签”或者被遮挡了一下,那么这个时候,AI系统就无法准确识别;我们曾经对自动

2021-07-10 20:46:07 622

转载 如何发表一篇好的文章

1. 如何确定一个研究方向?刚开始的研究课题,需要依靠导师,对领域内有一定了解,可能会寻找到适合自己的方向。确定研究方向要看课题组的研究积累,从自己角度出发,有个师兄做过这个方向会带来很多帮助,手把手指导,事半功倍,从课题组角度出发,研究更有延续性,指导老师更熟悉,能给出一些意见,基金或者横向项目相关性都大,自己能上手,能写在简历上,但如果不是自己喜欢的方法,可以偏一些,因为长时间做不喜欢的事情,自己的情绪不会高,影响研究推进以及自己的发展,大佬级别的可以不用考虑很多,做自己就可以了。一开始需要泛读

2021-07-09 21:01:36 297

原创 ccache编译器缓存使用方法

ccache(全称:compiler cache)是一个编译器缓存,该工具会高速缓存编译生成的信息,并在编译的特定部分使用高速缓存的信息,比如头文件,这样就节省了通常使用 cpp 解析这些信息所需要的时间。 ccache 主页:https://ccache.dev/ 文档地址:https://ccache.dev/documentation.html GitHub 源码:https://github.com/ccache/ccache 1. 安装 ccache要安装 cca

2021-07-09 20:57:48 1843

转载 小波变换介绍

从傅里叶变换到小波变换,并不是一个完全抽象的东西,可以讲得很形象。小波变换有着明确的物理意义,如果我们从它的提出时所面对的问题看起,可以整理出非常清晰的思路。下面我就按照傅里叶-->短时傅里叶变换-->小波变换的顺序,讲一下为什么会出现小波这个东西、小波究竟是怎样的思路。1. 傅里叶变换我们知道傅里叶变化可以分析信号的频谱,那么为什么还要提出小波变换?因为对非平稳过程,傅里叶变换有局限性。看如下一个简单的信号做完FFT(快速傅里叶变换)后,可以在频谱上看到清晰的四条线,信号包

2021-07-07 21:29:53 2035

转载 数学的关键是概念而非技巧

因为中小学数学里面的概念比较少,所以就在一些难题、技巧上下功夫,这恰恰是舍本逐末的做法,值得所有的数学教育工作者深思。那么数的概念是什么呢,大家知道有理数啊,一看就知道了,绝大多数同学不会去记这个定义,什么是有理数的定义?几何的概念也不易被重视,因为什么是三角形,正方形,矩形,菱形,一看就知道。中学数学容易给人一种错觉,概念是不重要的,对于数学重要的是技巧。很多人上了大学,哪怕是到了数学系也抱着这种看法。根据我上大学以后搞数学研究的经验,数学根本上是玩概念的,不是玩技巧。技巧不足道也!熟能生巧,

2021-07-07 17:19:00 413

转载 ROS2概述和实践入门

ROS可以说是⽬前机器⼈相关开源社区最流⾏的项⽬之⼀,它是⼀个易⽤且完备的机器⼈开发框架、⽣态乃⾄社区,海量的机器⼈开源项⽬(涵盖感知、规划、控制、定位、SLAM和建图、可视化等⼏乎所有机器⼈领域)均使⽤ROS作为基础。以⾃动驾驶汽⻋为代表的新的机器⼈应⽤场景对于中间层和开发框架在实时性、可靠性、伸缩性、跨平台可移植等⽅⾯提出了⼤量新的需求,ROS 显然不能满⾜这些需求,ROS2因此产⽣,在经历了若⼲年的迭代后,ROS2项⽬⽬前已经相对完备和稳定,对于我们开发者⽽⾔,是时候拥抱ROS2了。1. 为什

2021-07-03 20:05:04 2750

原创 C++列表初始化容器

在这篇博客中,我们将深入探讨C++中列表初始化容器的方法和技巧。我们将从基本的初始化语法讲起,逐步介绍如何使用列表初始化来初始化各种类型的容器,包括数组、向量、列表等。此外,我们还将讨论列表初始化的优势,如代码简洁性、可读性和灵活性等方面的提升。通过本文的学习,读者将能够更加熟练地运用C++的列表初始化功能,提高代码的质量和效率。无论你是C++初学者还是有一定编程经验的开发者,本文都将为你提供有价值的参考和指导。

2021-07-03 19:54:36 466 2

转载 Python命令行可视化库

通常大家都是在自己的电脑上跑程序,直接是可以可视化相应的结果。如果是在服务器上的话,使用终端,是不太方便查看结果。本文介绍4个可以在命令行中使用的Python库,分别是Bashplotlib、tqdm、PrettyTable、Colorama。1. 使用Bashplotlib在命令行中绘图如果你想在命令行窗口中绘制数据的情况,那么Bashplotlib是非常适合的。首先安装Bashplotlib这个库pipinstallbashplotlib-ihttps://mirror.b...

2021-07-02 20:03:26 632

原创 C++左值与右值

定义:可以放到等号左边的东西叫左值。其具有内存地址和可修改,其可以用于分配新值或者获取对象的地址。

2021-07-02 15:58:19 4109 8

转载 产品设计及其流程

本文较为全面地介绍了互联网产品设计及其流程。从什么是产品设计到产品设计的过程,再到产品设计所需要的基本技能素养,作者根据自己个人经验为我们详细地做了总结。通过本篇文章,你可以从基本的设计思维出发,全局感知产品设计所涉及的各个阶段及其对应的工作内容,从而帮助自己更好地理解个人所承担的产品设计部分。在担任 Canva 产品设计师的最后几个月,我收到了许多有关 “产品设计意味着什么” 的问题:产品设计是什么? 产品设计过程是什么? 我需要什么技能才能成为产品设计师?近来,我有机会代表新南威..

2021-07-02 14:54:18 2337

GitKraken.zip

非常好用的git工具

2021-02-02

空空如也

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

TA关注的人

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