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. 安装ubuntu vi编辑无法正常使用的时候 如方向键变成ABCD

    http://blog.sina.com.cn/s/blog_7e3f6e8f0100vkon.html 在使用ubuntu的时候,发现vi编辑模式下退格键backspace和上下左右光标移动键不能用 ...

  2. Linux基础--分类与合并命令

    1.sortsort命令将许多不同的域按不同的顺序分类,sort命令的一般格式为: sort -cmu -o output_file [other options] +pos1 +pos2 input ...

  3. 2014--9=17 软工二班 MyEclipse blue==2

    关于Java中的getInetAddress方法 联网的话是一个分配的地址,不联网的话是本地localhost package cn.rwkj.test; import java.io.IOExcep ...

  4. CString, QString, char*之间的转换(包括VC编译开关)

    传给未分配内存的const char* (LPCTSTR)指针. CString cstr(asdd); const char* ch = (LPCTSTR)cstr; ch指向的地址和cstr相同. ...

  5. Tomcat下的一些配置

    1. JAVA虚拟机性能优化,修改bin下的  catalina.sh/bat rem ----- Execute The Requested Command -------------------- ...

  6. NC / Netcat - 文件传输

    文件传输:将文件从B用户机器传输到A用户机器. 实验环境1: A用户,windows系统,IP:192.168.12.109 B用户,linux系统,IP:192.168.79.3 A用户作为接受传输 ...

  7. xargs的- n1参数

    起因在对一堆*.tar.gz文件解压缩时,发现tar xvfz *.tar.gz不管用,一查,原来是tar xvfz *.tar.gz会被shell给拆成tar xvfz a.tar.gz b.tar ...

  8. DoG 、Laplacian、图像金字塔详解

    DoG(Difference of Gaussian) DoG (Difference of Gaussian)是灰度图像增强和角点检测的方法,其做法较简单,证明较复杂,具体讲解如下: Differe ...

  9. Linux系统下统计目录及其子目录文件个数

    (1)查看某目录下文件的个数: ls -l |grep "^-"|wc -l 或 find ./company -type f | wc -l (2)查看某目录下文件的个数,包括子 ...

  10. C++ STL之list容器的基本操作

    由于list和vector同属于序列式容器,有很多相同的地方,而上一篇中已经写了vector,所以这一篇着重写list和vector的不同之处和特有之处. 特别注意的地方: (1)STL中迭代器容器中 ...