HT Blog

Tommorrow is another day!

利用误差平方和聚类

Pattern Recongation

简介 通过程序实现C-均值算法对样本进行聚类,了解误差平方和函数的优势与劣势,了解初始代表点的选取对样本聚类效果的影响。 1.原理 定义误差平方准则函数 $J_c=\sum_{j=1}^{c}\sum_{k=1}^{n_j}|x_k-m_j|^2$ ,要使总体的误差平方函数准则函数最小,由于每个样本在分类过程中是独立的,所以要求对于每个样本来说 $|x_k-m_j|^2$ 要最小,这...

遗传算法求解最优非零值插入点

频率抽样法设计滤波器

前言 频率抽样法设计滤波器的内核并不在于非零点的优化,但在实际设计过程中,非零点优化是一个很重要的步骤。 若不插入非零点,在时域会产生振铃效应。对实际滤波器阻带衰减的特性会有影响。 在插入非零点个数一定的情况下。优化非零点的取值可以在保证过渡带宽不变的情况下使得阻带衰减最大。 1.遗传算法 1.1基本运算过程 初始化:设置进化代数计数器t=0,设置最大进化代数T,随机生...

利用matlab实现并优化FFT

Digital Siginal Processing

前言 在FFT算法出现之前,用DFT对信号做分析基本上只是理论研究,以当时的硬件技术不能运用到实际中。FFT大大减少了DFT的运算量,使得其成为可能。 1.算法流程 2.编程技巧 2.1 基2蝶形运算 利用 $W_N^n$ 的周期性和对称性,减少重复计算的次数,将运算的时间复杂度从DFT的 $O(n^2 )$降为 。方法是将原序列分解为两个等长序列,分别做DFT,分解的子序列...

驾照考试答题软件

python&PyQt5&API的完美融合

基于python3.7语言,调用PyQt5等标准库,并通过API获取驾照题库与建立本地存储文档,来构建有随机测试、顺序练习、错题复习等功能的驾照考试题目练习GUI界面。 代码阐释 在代码中创建了三个类分别为存储及操作题库的类Question_bank、实现子窗口的类Question_solvingUI(QWidget)、实现主窗口的类menu(QMainWindow),小技巧结合...

Python爬取国家统计局公开数据

Web

从国家统计局的数据库爬取1999-2018年的国家人口数,使用sqlite存到本地数据库文件,从本地数据库文件读取数据,使用matplotlib绘制年末总人口-年份条形图与男女人口占比-年份折线图。 代码阐释 在代码中创建了两个类Data_op与Plot_op分别用来实现爬取数据并将其存储到数据库文件中、读取数据库文件中数据并绘图。 Data_op Data_op用来获取、...

基于哈夫曼编码的文档压缩

流文件

Huffman编码是二叉树的典型应用之一。可对文件进行编码,压缩文件。程序可实现的功能有:以输出菜单形式可供选择打印哈夫曼树、选择指定文件压缩、解压指定文件。压缩后及解压后的文件均会保存于程序路径。 哈夫曼编码也被称作最优码。在代码中,我把压缩后码生成的流文件,达到了真正意义上的压缩。用C/C++完成。 需要用到的知识有C/C++、二叉树操作、哈夫曼编码 代码阐释 实...

四旋翼飞行器硬件设计

电路原理图&PCB

前言 微型四旋翼飞行器对于机械设计的要求不高,在本篇中直接使用PCB板作为机身。 1.电路管理 1.1动力部分 选用空心杯电机,重量轻,耗能低,价格低 使用采用mos管驱动电机,重量轻,便于pwm波控制转速 电机驱动电路增加电路保护功能,防止反向大电流击穿mos管 1.2供电部分 使用3.7V锂电池 使用TP4056典型电路对电池充电(或者用厂家...

Strassen矩阵相乘算法

C语言

基于分治策略和一些处理技巧,Strassen算法的流程如下: 两个矩阵A B相乘时,将A, B, C分成相等大小的方块矩阵: 可以看出C是这么得来的: 现在定义7个新矩阵: 而最后的结果矩阵C 可以通过组合上述7个新矩阵得到: 如此,通过递归算法,可将N阶矩阵化为二阶矩阵相称。 Strassen算法比通用矩阵相乘算法好一点,因为通用矩阵相乘算法时间复杂度是 ...