算法
沐白001
c,c++,c#,java 全职菜鸟
展开
-
简单的滤波算法
最近用Arduino做电子秤,为了解决数据的跳变研究了不少滤波算法。网上能找到大把的十大滤波算法帖子,每一篇都不太一样,都号称精编啊,除错啊什么的,可是放到板子里却没一个能正常跑起来的。于是决定自己整理一下这些程序,完美移植到Arduino中。所以大家看到这个帖子的时候,不要怀疑我重复发帖。我的代码都是经过反复试验,复制到Arduino中就能开跑的成品代码,移植到自己的程序中非常方便。而且转载 2016-11-20 19:47:40 · 1279 阅读 · 1 评论 -
我与插值萍水相逢:线性插值(Linear Interpolation)原理及使用
各位博友们大家好,小弟遇到一些问题经常会去看大家的博客,所以也想加入大伙的阵营,每每看到一些好的东西,有些心得体会什么的也想与大伙分享。 1.关于插值 插值,它根据已知的数据序列(也可以理解为坐标中一连串离散的点),找到其中的规律;然后根据找到的这个规律,来对其中尚未有数据记录的点进行数值估计。 基于这样一种功能,我目前知道的应用是:1)它可以对数据中的缺失进行合理的补...转载 2018-08-25 21:19:01 · 40186 阅读 · 5 评论 -
矩阵的四个基本子空间
矩阵的四个基本子空间:列空间, 零空间, 行空间, A的转置零空间(左零空间)。要弄清楚两个基本问题:怎么知道这四个空间的一组基, 以及基的维数主要讨论对于矩阵Am*n来说, 它的四个基本子空间分别位于那些空间里面呢?列空间位于:Rm零空间位于:Rn行空间位于:RmA的转置零空间(也叫作左零空间)位于:Rm如果矩阵为Am*n, 秩r=n, 那么列空间的一组基就是主列...转载 2018-08-12 22:59:49 · 2741 阅读 · 0 评论 -
均方误差、平方差、方差、均方差、协方差
一,均方误差 作为机器学习中常常用于损失函数的方法,均方误差频繁的出现在机器学习的各种算法中,但是由于是舶来品,又和其他的几个概念特别像,所以常常在跟他人描述的时候说成其他方法的名字。 均方误差的数学表达为: 如上图所示,通过计算每个预测值和实际值之间的差值的平方和再求平均,机器学习中它经常被用于表示预测值和实际值相差的程度。 二,平方差 平方差的定义很简单,顾名思义就是转载 2017-11-30 21:49:57 · 19277 阅读 · 1 评论 -
二分图的最大匹配、完美匹配和匈牙利算法
二分图的最大匹配、完美匹配和匈牙利算法2013-08-01Algorithms二分图匹配, 图论, 算法这篇文章讲无权二分图(unweighted bipartite graph)的最大匹配(maximum matching)和完美匹配(perfect matching),以及用于求解匹配的匈牙利算法(Hungarian Algorithm);不讲带权二分图的最佳匹配。二分转载 2017-06-20 20:46:18 · 309 阅读 · 0 评论 -
卡尔曼滤波 -- 从推导到应用(二)
该文是自我总结性文章,有纰漏,请指出,谢谢。 --白巧克力这部分主要是通过对第一部分中提到的匀加速小车模型进行位移预测。先来看看状态方程能建立准确的时候,状态方程见第一部分分割线以后内容,小车做匀加速运动的位移的预测仿真如下。[plain] view plain copyclc clear all转载 2017-06-19 16:39:59 · 507 阅读 · 0 评论 -
卡尔曼滤波 -- 从推导到应用(一)
前言 卡尔曼滤波器是在估计线性系统状态的过程中,以最小均方差为目的而推导出的几个递推数学等式,也可以从贝叶斯推断的角度来推导。 本文将分为两部分:第一部分,结合例子,从最小均方差的角度,直观地介绍卡尔曼滤波的原理,并给出较为详细的数学推导。第二部分,通过两个例子给出卡尔曼滤波的实际应用。其中将详细介绍一个匀加速模型,并直观转载 2017-06-19 16:39:18 · 2600 阅读 · 0 评论 -
拉格朗日插值法 C语言实现
/* *作者:KDF5000 *功能:利用拉格朗日插值法求解近似值 *时间:2013.4.15 */ #include #include #include //存放插值节点 struct Data{ double x; double y; struct Data *next; }; /****转载 2017-05-29 20:52:59 · 5416 阅读 · 0 评论 -
卡尔曼滤波程序matlab 解释
clearN=200;%取200个数w(1)=0;w=randn(1,N);%产生一个1×N的行向量,第一个数为0,w为过程噪声(其和后边的v在卡尔曼理论里均为高斯白噪声)x(1)=0;%状态x初始值a=1;%a为状态转移阵,此程序简单起见取1for k=2:Nx(k)=a*x(k-1)+w(k-1); %系统状态方程,k时刻的状态等于k-1时刻状态乘以状态转移阵加噪声转载 2017-05-17 23:47:16 · 952 阅读 · 0 评论 -
项目应用中的卡尔曼滤波
接触卡尔曼滤波的渊源最近因为项目需要,需要对经某种途径获取到的数据进行处理,数据大概就是从某种传感器那里来的,现在假定这个数据是某个网络的阻抗。获取到数据之后,发现数据是波动的,并且波动的范围比较大,我将数据记录后使用excel绘出图形,发现数据好像是周期性波动的。在这种情况下我首先想到的便是一阶滞后滤波,因为之前有项目用到过,但是效果不是很理想(可能因为某些参数调的不对),使用均值滤波后转载 2017-05-06 23:27:06 · 1753 阅读 · 1 评论 -
几个简单的数据点平滑处理算法
最近在写一些数据处理的程序。经常需要对数据进行平滑处理。直接用FIR滤波器或IIR滤波器都有一个启动问题,滤波完成后总要对数据掐头去尾。因此去找了些简单的数据平滑处理的方法。在一本老版本的《数学手册》中找到了几个基于最小二乘法的数据平滑算法。将其写成了C 代码,测试了一下,效果还可以。这里简单的记录一下,算是给自己做个笔记。算法的原理很简单,以五点三次平滑为例。取相邻的5个数据点,转载 2017-03-23 20:53:05 · 14459 阅读 · 1 评论 -
C++关于平滑滤波的一种算法
#include using namespace std;double in[16] = {0.0,1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0,11.0,87.0,78.0,3.0,3.0};int n,i,l,x;double temp;void SmoothCurve(double* inArray,int inSize转载 2017-03-23 20:28:19 · 6040 阅读 · 1 评论 -
PID控制算法的C语言实现
PID控制算法的C语言实现一 PID算法原理 最近两天在考虑一般控制算法的C语言实现问题,发现网络上尚没有一套完整的比较体系的讲解。于是总结了几天,整理一套思路分享给大家。 在工业应用中PID及其衍生算法是应用最广泛的算法之一,是当之无愧的万能算法,如果能够熟练掌握PID算法的设计与实现过程,对于一般的研发人员来讲,应该是足够应对一般研发问题了,而难能可贵的是,在我所接触的控制算法转载 2016-11-27 12:25:08 · 126233 阅读 · 31 评论 -
CRC
CRC创建时间:2016年6月23日(星期四) 中午11:07 | 分类:算法 | 字数:3144 | 另存为... | 打印 | 添加到日历unsignedchar*puchMsg;/*要进行CRC校验的消息*/ unsignedshortusDataLen;/*消息中字节数*/ unsignedshortCRC16(puchMsg,usD转载 2016-11-20 19:45:14 · 513 阅读 · 0 评论 -
三维旋转矩阵(包括任意轴的通用旋转矩阵、Euler角、单位四元数)的计算
转自:http://hi.baidu.com/herohbc/item/4d20780de7726697a2df437f三维旋转矩阵的计算在三维空间中,旋转变换是最基本的变换类型之一,有多种描述方式,如Euler角、旋转矩阵、旋转轴/旋转角度、四元数等。本文将介绍各种描述方式以及它们之间的转换。 1. 旋转矩阵用一个3阶正交矩阵来表示旋转变换,是一种最常用的表示方法。容易证明,...转载 2018-09-28 13:37:58 · 5477 阅读 · 0 评论