
算法
文章平均质量分 88
boringhex.top
这个作者很懒,什么都没留下…
展开
-
使用牛顿法求解立方根
牛顿法基于泰勒级数展开,通过迭代的方法逐步逼近函数的根。对于一个函数fxf(x)fx,假设我们已经有了一个初始猜测x0x_0x0xn1xn−fxnf′xnxn1xn−f′xnfxn这里,f′xf'(x)f′x是函数fxf(x)fx的导数。我们想要找出一个数aaa的立方根a33afxx3−a0fxx3−a0f′x3x2f′x3x。原创 2024-11-13 09:57:03 · 765 阅读 · 0 评论 -
一文弄懂奇偶校验
以前有一个魔术,是这样的:魔术师蒙蔽眼耳,不得与助手和观众有任何交流,助手则从现场随机找一名观众,给他若干枚类似硬币的棋子,每枚棋子正反面分别为黑色和白色,然后让观众任意排列这些棋子,助手用自己手上的一枚棋子补位,然后再让观众自己选择翻转或不反转这些棋子,最后由魔术师观察这些棋子,判断观众是否翻转了棋子。似曾相识?对,这就是奇偶校验。奇偶校验是数据通信和数据存储中用来检测错误的一种简单的方法,其基本思想在于通过引入一个额外的校验位,使得数据位的总数为奇数或偶数。原创 2024-01-16 09:53:35 · 1246 阅读 · 0 评论 -
实际项目中的环形缓冲区
在实际项目中,环形缓冲区的设计要比讲到的原型稍微复杂一些,需要一些接口函数来实现数据结构封装。GitHub上有个大帅哥写了一个轻量的环形缓冲区库,可以学习参考,也可以直接集成到自己的项目中,功能已经非常完善。size_t!defined||uint16_t0x0001uint16_t0x0001首先,代码包含了一些必要的头文件,并检查是否在C++环境中。如果是,就使用extern "C"来确保C++编译器以C语言的方式处理这个库。然后,定义了一些类型和枚举。例如,lwrb_sz_t和。原创 2024-01-08 10:08:30 · 1097 阅读 · 0 评论 -
C语言环形缓冲区
环形缓冲区,也称为循环缓冲区或环形队列,是一种具有固定大小的缓冲区,其特点是当缓冲区已满时,新的数据将覆盖最旧的数据。它主要由两个指针(头指针和尾指针)和一个固定大小的数组组成。通过本文的介绍,我们了解了C语言环形缓冲区的定义、原理和应用。环形缓冲区作为一种高效的数据结构,可以在各种实际应用中发挥重要作用。公众号 | FunIO微信搜一搜 “funio”,发现更多精彩内容。个人博客 |原创 2024-01-04 10:03:07 · 1176 阅读 · 2 评论 -
独立成分分析matlab代码
上面的代码是根据文档写出,本地没有matlab环境,未测试哈,有环境的朋友可以试试😄。原创 2023-11-20 17:28:18 · 561 阅读 · 0 评论 -
椭圆滤波器
之前的文章中列出了7种常用的信号去噪算法,对于后两种算法——深度学习和奇异值分解(SVD),我现在也不太理解,就先不写了。很多朋友留言又提了一些算法,今天一起来聊聊椭圆滤波器。椭圆滤波器(Elliptic Filter),也称为Cauer滤波器,是一种数字滤波器,用于信号处理和滤波应用。椭圆滤波器之所以得名,是因为其在频率响应图上的特征呈现出椭圆形的形状。:椭圆滤波器的过渡带宽(即通频带到阻频带的过渡区域)非常窄,这意味着它可以在频域内实现非常陡峭的滤波特性。原创 2023-11-06 11:36:14 · 3032 阅读 · 0 评论 -
信号去噪之独立成分分析(ICA)
独立成分分析(Independent Component Analysis,ICA)是一种用于从混合信号中分离出原始独立成分的统计方法。它通常用于处理多个传感器捕获的混合信号,旨在找到线性变换,将混合信号转换为独立的源信号,这些源信号在统计上是相互独立的。ICA 的应用背景包括语音信号处理、脑电图(EEG)和磁共振成像(fMRI)信号分析、金融数据分析等。在这些情况下,多个信号源混合在一起,我们希望从混合信号中还原原始的信号源,以便进一步分析。ICA 的核心概念是统计独立性。原创 2023-11-01 09:48:04 · 3060 阅读 · 1 评论 -
信号去噪之卡尔曼滤波
在前面的文章中曾讲解过卡尔曼滤波在惯性导航和飞行姿态控制中的应用,今天来聊一聊卡尔曼滤波在信号去噪中的应用。卡尔曼滤波(Kalman Filtering)是一种用于估计系统状态的数学方法,它通过考虑系统的动态模型和传感器测量,以最优的方式来融合信息,从而提供对系统状态的最优估计。卡尔曼滤波广泛应用于控制系统、导航系统、信号处理、机器人技术、金融领域等各种领域。卡尔曼滤波将系统建模为一个状态空间模型,其中包括状态变量、状态转移方程和观测方程。原创 2023-10-30 11:17:57 · 5014 阅读 · 0 评论 -
信号去噪之小波变换
在前面的文章中简单介绍了常见的去噪方法,以均值滤波和中值滤波做了示例,今天再继续介绍小波变换。原创 2023-10-25 09:38:33 · 2459 阅读 · 0 评论 -
信号去噪算法
首先,您需要定义一个窗口大小,通常是一个正方形或矩形区域,窗口的大小决定了中值滤波器考虑的邻域范围。窗口的大小越大,平滑效果越强,但也可能导致图像细节的丢失。原创 2023-10-25 09:36:13 · 3124 阅读 · 0 评论 -
浅析PID
当涉及到控制系统中的精确调节和稳定性,PID(比例-积分-微分)控制算法是一种不可或缺的工具。本文将简单介绍PID控制算法,从基本概念到具体实现,一起了解如何使用PID控制算法来优化控制系统。原创 2023-10-23 11:43:36 · 417 阅读 · 0 评论 -
音频信号的频谱分析实例
在前面的文章中,我们初步探讨了信号频谱分析的概念,并介绍了其数学工具。本篇文章将结合实例,进一步探讨频谱分析在音频信号处理中的应用。音频信号的频谱分析是一种将时域中的音频信号转换为频域表示的过程,从而可以观察信号在不同频率上的能量分布。这种分析可以帮助我们理解音频信号的频率成分、谐波结构以及其他特征,对于音频处理、音乐分析、语音识别等应用具有重要意义。:从原始音频信号中进行采样,将连续的音频信号转换为离散的采样点。通常还需要对采样数据进行预处理,如去除直流分量、归一化等。原创 2023-10-20 09:48:32 · 3634 阅读 · 0 评论 -
信号频谱分析与功率谱密度
功率谱密度是一个表示信号在不同频率上的功率分布的函数。在频谱分析中,我们通常使用傅里叶变换来将信号从时域转换到频域,然后计算信号的功率谱密度。功率谱密度可以告诉我们在不同频率范围内信号的功率大小。信号频谱分析与功率谱密度是理解信号特性、优化通信系统和进行故障诊断的关键工具。通过将信号从时域转换到频域,我们可以获得信号在不同频率上的分布情况,从而更好地理解信号的性质。在现代无线通信、信号处理和工程领域,频谱分析与功率谱密度的应用无处不在,为我们带来了许多技术和科学的突破。公众号 | FunIO。原创 2023-10-16 09:48:09 · 2242 阅读 · 2 评论 -
从BNO055传感器获取IMU数据-2
BNO055是一款易于使用的惯性测量单元,可集成到各种应用中,从机器人稳定(四轴飞行器,倒立摆等)到相机稳定和导航(包括航位推算)。与其他输出原始测量数据的 9 自由度系统不同,BNO055 为主机微控制器过滤和合成数据,从而释放处理器带宽并消除编程中的猜测。公众号 | FunIO微信搜一搜 “funio”,发现更多精彩内容。个人博客 |原创 2023-06-24 15:54:45 · 1626 阅读 · 0 评论 -
从BNO055传感器获取IMU数据-1
最近学习惯导相关知识,BNO055是博世的绝对方向传感器,它结合了传感器数据和微处理器来过滤和组合数据,为用户提供空间中的绝对方向。原创 2023-06-21 10:09:41 · 858 阅读 · 0 评论 -
TDR原理和应用
电磁波在传播中遇到不均匀介质会发生反射,与此相似,电信号在传输线中传播时,如果遇到阻抗不连续的点,也会产生发射。TDR,指的是时域反射计,Time Domain Reflectometry,它通过发送一个短脉冲信号并监测该信号在电缆或导线中传播时的反射来实现。时域反射是一种用于测量导体或电缆中的信号反射情况的技术,广泛应用于分析传输线路、电缆和波导结构特性。它基于分析通过被测试结构发送的电磁脉冲或信号的反射,特别适用于定位传输线路上的故障、不连续性、阻抗变化和其他异常情况。原创 2023-06-19 12:11:36 · 1181 阅读 · 0 评论 -
卡尔曼滤波的数学基础
卡尔曼滤波是一种用于估算线性动态系统状态的优化算法,其基础数学理论为贝叶斯定理,将传感器测量值和系统模型的预测值进行融合,得到对系统状态的估计。贝叶斯定理是基于条件概率的公式,用于计算给定某些证据的情况下,事件发生的概率。在卡尔曼滤波中,贝叶斯定理用于估算系统状态的后验概率分布,即给定过去和当前的观测值,预测未来状态的概率分布。原创 2023-06-17 17:55:37 · 295 阅读 · 0 评论 -
卡尔曼滤波
合并(姿态合并):通过综合预测和更新步骤得到的信息,卡尔曼滤波器会生成一个新的头部姿态估计,该估计综合考虑了陀螺仪、加速度计和磁力计的测量数据以及物理模型的信息。卡尔曼滤波算法应用非常广泛,算法背后的解决问题的思想是我们应该学习的核心。卡尔曼滤波器利用过去的信息(运动模型)和当前的观测数据(GPS测量)来进行状态估计,通过动态调整预测和更新之间的权衡,以获得更准确和稳定的估计结果。预测(预测状态):在卡尔曼滤波的预测步骤中,根据系统的动力学模型和上一时刻的状态变量,使用预测方程来估计当前时刻的状态。原创 2023-06-08 07:42:46 · 1181 阅读 · 0 评论 -
飞行器姿态计算
在飞行器的控制中,姿态计算是至关重要的一步。姿态计算的目标是确定飞行器相对于参考坐标系的姿态,通常以欧拉角(滚转、俯仰和偏航)或四元数的形式表示。以下是姿态计算的原理和常用方法的简要介绍:原理:姿态计算基于惯性测量单元(IMU),其中包括加速度计和陀螺仪。加速度计测量物体在三个轴向上的加速度,而陀螺仪测量物体绕三个轴向上的角速度。通过结合这些测量值,可以推导出飞行器的姿态。常用方法:互补滤波器(Complementary Filter):这是一种简单且常用的姿态计算方法。原创 2023-06-05 11:44:32 · 731 阅读 · 0 评论