MATLAB数字信号处理作业,把自己写的程序发上来..欢迎交流~

QQ 五幺九七九零六四
 
首先是任意点移动平均:
主程序:mov_average_main.m (运行)
函数:mov_average.m  (多点移动平均)
 
/////////mov_average_main.m///////////
%多点移动平均
close all;
clear all;
numSample=500;    %采样精度为100
l=input('请输入用于平滑的窗口大小"n"');
if l>1 && l<50;    %对输入变量控制
else    error('您的输入有误!');
end;
t = linspace(0,pi/10,numSample); %创建向量
A=10;%信号幅值
p=0;%信号相位
s = A*sin(100 * t+p);%产生正弦信号
n=randn(1,numSample);%用高斯随机构造白噪声
y=s+n;%叠加白噪声
subplot(4,1,1);plot(t,s,'r');
title('原信号');
subplot(4,1,2);plot(t,n,'b');
title('白噪声信号');
subplot(4,1,3);plot(t,y,'k');
title('叠加白噪声后信号');
%调用移动平滑函数
y=mov_average(numSample,l,y);%numSample为采样精度,窗口大小为n
subplot(4,1,4);plot(t,y,'k');
title('n点移动平滑后');
 
///////mov_average.m /////////
function y=mov_average(numSample,n,f)
%mov_average是多点移动平滑函数
%numSample为采用精度
%n为用于平滑的窗口大小,其值应大于零且小于numSample
%f为需要进行移动平滑处理的函数
m=0;%m代表正在处理的点
while m<numSample-n+1;%采样点终止位置
m=m+1;
temp=0;%temp用于求n点函数值之和,此处将其清零
for p=0:1:n-1; %p为窗口内变量的增量
temp=temp+f(m+p) %n个点的数值总和
end;
f(m)=temp/n;%求均值
end;
y=f;%回代

Matlab编程实例(1) 移动平均的更多相关文章

  1. PID各环节的意义和功能,自带PID的matlab编程实例

    这是PID的标准形式包括比例/积分/微分三部分,e为偏差 下面我们分析三个环节的作用,设:当前系统状态A,目标状态B, e=B-A,初始状态e>0 (以下是个人的理解,欢迎读者评论) 1 比例环 ...

  2. Matlab编程实例(4) 相位角与相关系数曲线

    %相位角与相关系数曲线 close all; clear all; Samp1=200;  %设置信号的采样精度 Samp2=200;  %设置相位角p分割精度 A=10;%信号幅值 w=1;%信号角 ...

  3. Matlab编程实例(3) 函数向左或向右平移N点 左移右移

    %函数移动 close all; clear all; dir=input('请输入平移方向,“1”为向左,“2”为向右'); if dir~=1&&dir~=2;%输入控制    e ...

  4. Matlab编程实例(2) 同期平均

    %多点同期平均 close all; clear all; pi = 3.14159; Samp2=input('您需要几组信号做同期平均?') Samp1=1000 %设置采样精度 t = lins ...

  5. 一些matlab教程资源收藏,使用matlab编程的人还是挺多的

    Matlab教程专题资源免费下载整理合集收藏 <MATLAB从入门到精通>高清文字版[PDF] 103.9MB 简体中文 <矩阵实验室>(Mathworks.Matlab.R2 ...

  6. PHP多进程编程实例

    这篇文章主要介绍了PHP多进程编程实例,本文讲解的是在Linux下实现PHP多进程编程,需要的朋友可以参考下 羡慕火影忍者里鸣人的影分身么?没错,PHP程序是可以开动影分身的!想完成任务,又觉得一个进 ...

  7. [zz]求一维序列的信息熵(香浓熵)的matlab程序实例

    对于一个二维信号,比如灰度图像,灰度值的范围是0-255,因此只要根据像素灰度值(0-255)出现的概率,就可以计算出信息熵.    但是,对于一个一维信号,比如说心电信号,数据值的范围并不是确定的, ...

  8. c#摄像头编程实例 (转)

    c#摄像头编程实例 摄像头编程 安装摄像头后,一般可以找到一个avicap32.dll文件 这是一个关于设想头的类 using  system;using  System.Runtime.Intero ...

  9. MATLAB 编程风格指南及注意事项

    MATLAB编程风格指南Richard Johnson 著Genial 译MATLAB 编程风格指南Richard JohnsonVersion 1.5,Oct. 2002版权: Datatool 所 ...

随机推荐

  1. 创建和编辑 crontab 文件

    http://docs.oracle.com/cd/E24847_01/html/819-6951/sysrescron-24589.html 创建和编辑 crontab 文件 创建 crontab  ...

  2. Project Euler 90:Cube digit pairs 立方体数字对

    Cube digit pairs Each of the six faces on a cube has a different digit (0 to 9) written on it; the s ...

  3. 【nginx运维基础(5)】Nginx的location攻略

    概述 location 有"定位"的意思, 根据Uri来进行不同的定位. 在虚拟主机的配置中,是必不可少的,location可以把网站的不同部分,定位到不同的处理方式上.伪静态,反 ...

  4. Qt 自定义model实现文件系统的文件名排序(重定义sort函数即可。忽然开窍了:其实捕捉点击Header事件,内部重排序,全部刷新显示即可)

    前段时间,需要做一个功能是要做文件系统的排序的功能.由于是自己写的model, 自己定义的数据结构.最初的想法只有一个自己去实现文件夹跟文件名的排序算法,不过感觉比较费时间.后来想到的是QFileSy ...

  5. 检测系统是X86系统,还是X64系统

    function IsWin64: Boolean; var Kernel32Handle: THandle; IsWow64Process: function(Handle: Windows.THa ...

  6. JDBC学习总结(三)

    1.ResultSet光标控制     在创建Statement或PreparedStatement时使用的是Connection的无参数createStatement()方法或preparedSta ...

  7. c# FastReport开发报表

    本文介绍c#应用FastReport开发报表,因此首先附该工具下载地址:http://download.csdn.net/detail/hws1058648831a/6378499 下载解压后可以直接 ...

  8. SimpleDateFormat日期格式化

    public class T { /** * @param args */ public static void main(String[] args) { // TODO Auto-generate ...

  9. C#画图解决闪烁问题

    导致画面闪烁的关键原因分析:       一.绘制窗口由于大小位置状态改变进行重绘操作时,绘图窗口内容或大小每改变一次,都要调用Paint事件进行重绘操作,该操作会使画面重新刷新一次以维持窗口正常显示 ...

  10. Jenkins User on Apt-Get Install Installation

    转自:http://stackoverflow.com/questions/6234016/jenkins-user-on-apt-get-install-installation QUESTION: ...