- 博客(16)
- 资源 (2)
- 收藏
- 关注
原创 pragma once用法总结
pragma once用法总结pragma指令与#ifndef指令新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入pragma指令与#ifndef指令在C/C++中,在使用预编译指令#include的时候,为了防止重复引
2022-11-10 00:04:25 4061
原创 数据结构——线性表(C++)
线性表一、线性表的定义二、线性表的抽象数据类型三、线性表的顺序存储1. 顺序存储定义2.顺序存储的实现方式四、线性表的链式存储五、其他线性表参考一、线性表的定义线性表:零个或多个数据元素的有限序列。线性表是最常用且是最简单的一种数据结构。形如:A1、A2、A3….An这样含有有限的数据序列,我们就称之为线性表。线性表包括顺序表和链表。顺序表(其实就是数组)里面元素的地址是连续的,链表里面节点的地址不是连续的,是通过指针连起来的。二、线性表的抽象数据类型线性表的抽象数据类型定义如下:ADT
2022-11-10 00:03:19 1041
原创 线特征的LSD提取算法
大多数图像中都存在直线特征,是视觉感知、描述外部环境的重要特征信息。直线是一种大尺度的特征,在水面环境中具有更为理想的适用性,线特征具有光照和视角不变性特点,表现更为稳定、有效。因此将点、线特征进行结合使用,可以有效的提高系统的精度和鲁棒性。
2020-11-08 22:58:02 5923 1
原创 C++中函数后面加const
C++中函数后面加const在函数后加const的意义:我们定义的类的成员函数 中,常常有一些成员函数不改变类的数据成员,也就是说,这些函数是"只读"函数,而有一些函数要修改类数据成员的值。如果把不改变数据成员的函数都加上const关键字进行标识,显然,可提高程序的可读性。其实,它还能提高程序的可靠性,已定义成const的成员函数,一旦企图修改数据成员的值,则编译器按错误处理。 const成员函数和const对象 实际上,const成员函数还有另外一项作用,即常量对象相关。对于内置的数据类型,我们可以定
2020-10-15 15:48:57 4216
原创 pragma once用法总结
pragma指令与#ifndef指令在C/C++中,在使用预编译指令#include的时候,为了防止重复引用造成二义性,通常有两种方式——第一种是#ifndef指令防止代码块重复引用,比如说#ifndef _CODE_BLOCK#define _CODE_BLOCK // code #endif// _CODE_BLOCK 第二种就是#pragma once指令,在想要保护的文件开头写入#pragma once#ifndef方式是C/C++语言的标准支持,也是比较常用的方式,#if
2020-10-14 17:02:03 8375
原创 <ctime>头文件
ctime 头文件“时间”和“日期”的概念Coordinated Universal Time(UTC):Calendar Time:clock tick:重要的宏CLOCKS_PER_SECclock_ttime_t重要数据类型struct tm函数clock 函数difftime 函数time 函数mktime 函数localtime 函数gmtime函数asctime函数ctime函数strftime函数关系图“时间”和“日期”的概念Coordinated Universal Time(UTC):
2020-08-06 11:34:24 4372
原创 使用CMake编译OpenCV源码
目前正在使用OPenCV,当我想查看opencv自带的函数的源代码时,选中函数, 点击鼠标右键->转到定义,却发现只是进到了**.hpp**看到了函数的一个简单声明,而没有源代码。 这主要是因为openCV将很多函数被加入了函数库,并被编译成了dll,所以只能看到函数申明,没法看到源代码。要想使用VS看到源代码,则需要利用cmake编译opencv。具体的编译过程,很很简单,可以参考https://blog.csdn.net/yin1203014/article/details/41651.
2020-05-15 21:42:43 877
原创 STM32的八种输入输出模式
STM32的四种输入方式1、上拉输入(GPIO_Mode_IPU)上拉输入就是信号进入芯片后加了一个上拉电阻,再经过施密特触发器转换成0、1信号,读取此时的引脚电平为高电平;2、下拉输入(GPIO_Mode_IPD)下拉输入就是信号进入 芯片后加了一个下拉电阻,再经过施密特触发器转换成0、1信号,读取此时的引脚电平为低电平;3、模拟输入(GPIO_Mode_AIN)信号进入后不经过上拉...
2019-12-02 15:45:43 1674
原创 TM32CubeMX生成keil工程 L6236E: No section matches selector 报错解决方法
STM32CubeMX V4.27生成keil V5工程,编译后报以下错误error: L6236E: No section matches selector - no section to be FIRST/LAST.双击定位至以下位置错误出现在“xxxx.sct”文件,sct文件,全名scatter file,中文名分散加载文件,是ARM程序链接时的输入参数。默认设置下,Keil会自动...
2019-12-01 22:22:34 1648
转载 数据结构基本概念和术语:位、字节、字、位串、元素、数据域、物理结构、逻辑结构
位(Bit):"位(bit)"是电子计算机中最小的数据单位。每一位的状态只能是0或1。字节(Byte):8个二进制位构成1个"字节(Byte)",它是存储空间的基本计量单位。1个字节可以储存1个英文字母或者半个汉字,换句话说,1个汉字占据2个字节的存储空间。字:"字"由若干个字节构成,字的位数叫做字长,不同档次的机器有不同的字长。例如一台8位机,它的1个字就等于1个字节,字长为8位。如果是一台...
2019-10-21 09:05:07 2458
原创 最优滤波的三种方法论
优滤波解决系统的状态或信号的最优估计问题,即由被噪声污染的观测信号求在某种性能指标和某种意义下状态或信号的最优估值器,也叫最优滤波器。术语“滤波”来源于无线电学科领域,其含义为滤掉或过滤噪声还状态或信号本来面目之意。在有传感器或检测仪表的系统中,常常会遇到这类问题。这是由于方面传感器或检测仪表对状态或信号的检测带有一-定 量测(观测)噪声(即量测随机误差),另方面在检测过程中还可能存在其他干扰噪声...
2019-10-20 16:08:35 7217
原创 滤波方法总结
经典滤波方法主要有低通、高通、带通、带阻滤波,相关滤波,限幅滤波,中值滤波,基于拉依达准则的奇异数据滤波,基于中值数绝对偏差的决策滤波,算术平均滤波,滑动平均滤波,加权滑动平均滤波,一价滞后滤波,加权递推平均滤波,消抖滤波,限幅消抖滤波,维纳滤波,卡尔曼滤波等。现代滤波方法主要有小波滤波,自适应滤波,匹配滤波,最优滤波,卷积滤波,追踪滤波,粒子滤波,相空间滤波,信号盲分离滤波,独立分量滤波,混沌...
2019-10-20 15:49:41 5961
原创 蓝牙模块调试总结(BLE\HC-05\HC-06\HC-01\MLT-BT05)
最近在使用蓝牙模块与手机进行联合调试,遇到了一些问题,在此总结一下。1.蓝牙模块分类BLEBLE(Bluetooh Low Energy)蓝牙低能耗技术是短距离、低成本、可互操作性的无线技术,它利用许多智能手段最大限度地降低功耗。BLE蓝牙模块是为了降低使用者的开发门槛,模组厂商会将射频部分的参数调整到最佳,同时在软件上符合大部分用户的需求。当用户拿到BLE蓝牙模组后,仅需要通过串口...
2019-10-12 10:45:46 22999
转载 内存对齐
要了解为什么要内存对齐,首先我们要了解什么是内存对齐什么是内存对齐关于什么是内存对齐,我们先来看几个例子typedef struct {int a;double b;short c;}A;typedef struct {int a;short b;double c;}B;分别对他们求大小,sizeof(A),sizeof(B)我们所得到的结果是不同的,sizeof(A)...
2019-10-08 16:52:22 182
rosdistro.zip
2020-06-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人