重庆大学数字信号处理大作业报告材料
重庆大学数字信号处理大作业报告
数字信号处理课外实验设计——音频采样和频谱混叠课程名称:数字信号处理院系:通信工程学院专业:通信01班年级: 2013级*名:***学号: ********指导教师:**实验时间: 2015.11.26重庆大学一、实验目的:1、熟悉MATLAB语言的基本用法;2、掌握MATLAB语言中音频数据与信息的读取与播放方法;3、掌握在MATLAB中设计滤波器的方法;4、掌握MATLAB语言中信号频谱的绘制方法。
5、对采样定理进行初步验证,体会频谱混叠现象,并大致确定音频信号的最低采样频率。
二、实验原理:现实当中遇到的绝大多数信号都是连续的,即所谓的连续信号。
如语音、图像、温度压力电流等都是模拟信号。
要利用数字信号处理技术实现对这些信号的处理,需要借助对这些信号的处理,需要借助A/D转换,先将模拟信号转变为数字信号后才能利用数字技术对其进行加工处理。
因此,采样是从连续到离散的桥梁。
如果选择的采样频率太低,及fs<2fm的采样频率太低,或者说是信号的最高频率fm 超过fs/2,则采样后的频谱按照采样率周期延拓时,各周期延拓分量产生频谱的交叠,这种现象叫频谱混叠。
三、实验内容:本实验通过MATLAB软件,完成以下四项任务1、用fs=44100HZ采集一段音乐。
2、改变采样频率,用fs=5512HZ采集一段音乐,体会混叠现象。
3、录制一段自己的声音,试验当fs=?时,发生混叠。
4、(选作)在噪声环境中录制一段自己的声音,试采用一种方法将噪声尽可能地消除。
四、实验步骤:仿真程序DSP_homework1.m:clc;clear;close all;%% 44100Hz和5512Hz采集音频文件[FileName,PathName] = uigetfile('*.wav','选择待处理音频文件');%获取处理音频文件位置path1=fullfile(PathName,FileName);[x,Fs1]=audioread(path1);%默认采样频率Fs为44100Hzx1=x(:,1);%1声道数据x2=x(:,2);%2声道数据%y1=x1(1:800000);%y1=x1(1:8:end);Fs2=5512;y1=resample(x1,5512,44100); %信号降采样处理,采样从44100Hz降到5512Hzy2=resample(x2,5512,44100);y=[y1 y2];t1=0:1/Fs1:(length(x1)-1)/Fs1;%取时域横轴tt2=0:1/Fs2:(length(y1)-1)/Fs2;N =5096; %fft点数,以频谱分辨率为10Hz,信号最高频率40kHz求出记录最小点数f=10^3;%取频率轴单位为KHzX1=fft(x1,N);X1=10*log(abs(fftshift(X1)));%用对数表示44100Hz音频信号的频谱Y1=fft(y1,N);Y1=10*log(abs(fftshift(Y1)));%用对数表示5512Hz音频信号的频谱PathName1=uigetdir(strcat(matlabroot,'\work' ),'加噪后音频文件另存为');FileName1='music_5512.wav'path2=fullfile(PathName1,FileName1);audiowrite(path2,y,Fs2);%生成5512Hz采样的wav格式音频文件,试听音乐效果%% 绘图figure(1);%44100Hz采集音频信号时域图、频谱图subplot(2,1,1);plot(t1,x1,'r');axis([0 95 -1 1]);%设置坐标轴范围set(gca,'XTick',0:5:95),grid on;%设置x坐标轴刻度,绘制方格线set(gca,'YTick',-0.8:0.2:0.8),grid on;%设置y坐标轴刻度,绘制方格线title('44100Hz采样音乐信号波形');xlabel('时间轴,单位s');subplot(2,1,2);plot((-N/2+1:N/2)*Fs1/N/f,X1,'b');axis([-25 25 -70 50]);set(gca,'XTick',-25:5:25),grid on;set(gca,'YTick',-70:20:50),grid on;title('44100Hz采样音乐信号频谱图');xlabel('频率轴,单位kHz');ylabel('单位:dB');figure(2)%5512Hz采集音频信号时域图、频谱图subplot(2,1,1);plot(t2,y1,'r');axis([0 95 -1 1]);%设置坐标轴范围set(gca,'XTick',0:5:95),grid on;%设置x坐标轴刻度,绘制方格线set(gca,'YTick',-0.8:0.2:0.8),grid on;%设置y坐标轴刻度,绘制方格线title('5512Hz采样音乐信号波形');xlabel('时间轴,单位s');subplot(2,1,2);plot((-N/2+1:N/2)*Fs2/N/f,Y1,'b');axis([-3 3 -70 50]);set(gca,'XTick',-3:1:3),grid on;set(gca,'YTick',-70:20:50),grid on;title('5512Hz采样音乐信号频谱图');xlabel('频率轴,单位kHz');ylabel('单位:dB');仿真程序DSP_homework2.m:clc;clear;close all;%% 录音测试多少采样频率时发生混叠Fs1=2205;%录音采样频率nBits=16;%音频位数nChannels=1;%声道数recording_time=1.5;%录音时间长度recObj = audiorecorder(Fs1,nBits,nChannels)disp('Start speaking.')recordblocking(recObj, recording_time);disp('End of Recording.');play(recObj);% 回放录音数据myRecording = getaudiodata(recObj);% 获取录音数据t1=0:1/Fs1:(length(myRecording)-1)/Fs1;%取时域横轴tN1=5096; %fft点数f=10^3;%取频率轴单位为KHzfft_myRecording=fft(myRecording,N1);fft_myRecording=20*log(abs(fftshift(fft_myRecording)));PathName1=uigetdir(strcat(matlabroot,'\work' ),'录音音频文件另存为'); FileName1='record_2205.wav'path=fullfile(PathName1,FileName1);audiowrite(path,myRecording,Fs1);%生成原始信号叠加噪声后的wav格式音频文件,试听叠加噪声效果%% 绘制录音数据波形figure(1)subplot(211)plot(t1,myRecording,'r');axis([0 1.5 -1 1]);%设置坐标轴范围set(gca,'XTick',0:0.1:1.5),grid on;%设置x坐标轴刻度,绘制方格线set(gca,'YTick',-0.8:0.2:0.8),grid on;%设置y坐标轴刻度,绘制方格线title('2205Hz录制人声信号波形');xlabel('时间轴,单位s');subplot(212)plot((-N1/2+1:N1/2)*Fs1/N1/f,fft_myRecording,'b');axis([-1.5 1.5 -120 80]);set(gca,'XTick',-1.5:0.5:1.5),grid on;set(gca,'YTick',-120:20:80),grid on;title('2202Hz录制人声信号频谱图');xlabel('频率轴,单位kHz');ylabel('单位:dB');仿真程序DSP_homework3.m:clc;clear;close all;%% 录入噪音[FileName,PathName] = uigetfile('*.wav','选择待处理录音文件');%获取处理音频文件位置path=fullfile(PathName,FileName);[audio,Fs]=audioread(path);%默认采样频率Fs为44100Hzt=0:1/Fs:(length(audio)-1)/Fs;%取时域横轴tN =5096; %fft点数f=10^3;%取频率轴单位为KHzfft_audio=fft(audio,N);fft_audio=20*log(abs(fftshift(fft_audio)));%% 绘制噪音数据波形figure(1)subplot(211)plot(t,audio,'r');axis([0 2 -1.1 1.1]);%设置坐标轴范围set(gca,'XTick',0:0.2:2),grid on;%设置x坐标轴刻度,绘制方格线set(gca,'YTick',-1.1:0.2:1.1),grid on;%设置y坐标轴刻度,绘制方格线title('噪声背景下声音信号波形');xlabel('时间轴,单位s');subplot(212)plot((-N/2+1:N/2)*Fs/N/f,fft_audio,'b');axis([-25 25 -220 -60]);set(gca,'XTick',-25:5:25),grid on;set(gca,'YTick',-220:20:-60),grid on;title('噪声背景下声音信号频谱图');xlabel('频率轴,单位kHz');ylabel('单位:dB');%% 进行加噪处理Ym=max(max(max(audio)),max(abs(min(audio))));%找出极值audio=audio/Ym;%% 设计低通滤波器wn=0.1;%滤波器归一化截止频率为0.15n=513;%滤波器阶数为512w=hamming(n)hh=fir1(n-1,wn,'low',w);figure(2);freqz(hh);%绘制滤波器的频率响应图%% 对加噪音频信号进行滤波处理filter_audio=filter(hh,1,audio);%使含有噪声的信号通过一个已设计的低通滤波器hhPathName2=uigetdir(strcat(matlabroot,'\work' ),'去噪后音频文件另存为'); FileName2='record_recover.wav'path2=fullfile(PathName2,FileName2);audiowrite(path2,filter_audio,Fs);%生成原始信号叠加噪声后又经滤波后的wav格式音频文件,试听滤波后效果fft_filter_audio=fft(filter_audio,N);fft_filter_audio=20*log(abs(fftshift(fft_filter_audio)));%用对数表示噪声信号的频谱%%figure(3)subplot(211)plot(t,filter_audio,'r');axis([0 2 -1.1 1.1]);%设置坐标轴范围set(gca,'XTick',0:0.2:2),grid on;%设置x坐标轴刻度,绘制方格线set(gca,'YTick',-1.1:0.2:1.1),grid on;%设置y坐标轴刻度,绘制方格线title('滤噪后声音信号波形');xlabel('时间轴,单位s');subplot(212)plot((-N/2+1:N/2)*Fs/N/f,fft_filter_audio,'b');axis([-5 5 -220 -60]);set(gca,'XTick',-5:1:5),grid on;set(gca,'YTick',-220:20:-60),grid on;title('滤噪后声音信号频谱图');xlabel('频率轴,单位kHz');ylabel('单位:dB');五、结果与分析:1.实验结果:Figure 1Figure2Figure3Figure4 Figure5Figure6 Figure7高斯白噪声背景下Figure8Figure9Figure10背景噪声下Figure11Figure12 Figure132.实验分析声音信号的采集与分析处理在工程应用中是经常需要解决的题,如何实时采集声音信号并对其分析处理,找出声音信号的特征在科学研究中是一项非常有意义的工作。
数字信号处理 实习大报告 (1)
数字信号实习报告勘查07-3班黄龙 2007054119 2010-6-21今天首先熟悉了一下MATLAB的一些基本操作,对Spectrum_Showing_CFT这个程序进行阅读作业,一行一行的分步执行,了解了很多常用命令的代码。
大致标注了一些,但是没有标注完全。
2010-6-22至24号由于这三天每天都有考试,所以任务完成的很少,将第一题(从给定的程序中,选择一个源程序做详细标注)完成。
程序存储在文件夹1中,文件名为Spectrum_Showing_CFT.m2010-6-25今天开始集中注意力完成实习任务,开始做第二题(能够利用Matlab 熟悉地画图,内容包括:X、Y坐标轴上的label,每幅图上的title,绘画多条曲线时的legend,对图形进行适当的标注等)的第一小题,完成了一幅图上的多幅图的绘制。
程序:在一幅图上多幅图形:文件夹2中的duofutu.m一组二维图:文件夹2中的yiuzerweituiang.m2010-6-26和27双休日画完了第二题的剩余两幅图,画出一幅三维图形和复数的实部与虚部。
程序:三维图像:文件夹2中的3D.m复数的实部与虚部: 文件夹2中的fushutu.m2010-6-28今天效率比较高,将第三题(计算普通褶积与循环褶积,分别使用时间域与频率域两种方法进行正、反演计算,指出循环褶积计算时所存在的边界效应现象;编写一个做相关分析的源程序)基本做完了。
程序:时间域的线性褶积:文件夹3中的PTshijianyu.m时间域的循环褶积:文件夹3中的XHshijianyu.m频率域反演计算循环褶积:文件夹3中的XHpinlvyu.m循环褶积计算时所存在的边界效应现象:文件夹3中的bianjiexiaoying.m相关分析:文件夹3中的xiangguanfenxi.m运行结果:1、时间域的线性褶积c =14812114 02、时间域的循环褶积y =12115483、频率域反演计算循环褶积m =12.0000 + 0.0000i11.0000 + 0.0000i5.0000 + 0.0000i4.0000 - 0.0000i8.0000 - 0.0000i4、边界效应c =14 8121145、相关分析r =64114今天做了第四题(对一个已知的病态矩阵添加白造因子并对其求解),开始对于病态矩阵不甚了解,通过BAIDU了解了病态矩阵,然后构造了一个病态矩阵,然后添加白噪音子从而求解。
数字信号处理实验报告
数字信号处理实验报告引言数字信号处理(Digital Signal Processing,DSP)是一门研究数字信号的获取、分析、处理和控制的学科。
在现代科技发展中,数字信号处理在通信、图像处理、音频处理等领域起着重要的作用。
本次实验旨在通过实际操作,深入了解数字信号处理的基本原理和实践技巧。
实验一:离散时间信号的生成与显示在实验开始之前,我们首先需要了解信号的生成与显示方法。
通过数字信号处理器(Digital Signal Processor,DSP)可以轻松生成和显示各种类型的离散时间信号。
实验设置如下:1. 设置采样频率为8kHz。
2. 生成一个正弦信号:频率为1kHz,振幅为1。
3. 生成一个方波信号:频率为1kHz,振幅为1。
4. 将生成的信号通过DAC(Digital-to-Analog Converter)输出到示波器上进行显示。
实验结果如下图所示:(插入示波器显示的正弦信号和方波信号的图片)实验分析:通过示波器的显示结果可以看出,正弦信号在时域上呈现周期性的波形,而方波信号则具有稳定的上下跳变。
这体现了正弦信号和方波信号在时域上的不同特征。
实验二:信号的采样和重构在数字信号处理中,信号的采样是将连续时间信号转化为离散时间信号的过程,信号的重构则是将离散时间信号还原为连续时间信号的过程。
在实际应用中,信号的采样和重构对信号处理的准确性至关重要。
实验设置如下:1. 生成一个正弦信号:频率为1kHz,振幅为1。
2. 设置采样频率为8kHz。
3. 对正弦信号进行采样,得到离散时间信号。
4. 对离散时间信号进行重构,得到连续时间信号。
5. 将重构的信号通过DAC输出到示波器上进行显示。
实验结果如下图所示:(插入示波器显示的连续时间信号和重构信号的图片)实验分析:通过示波器的显示结果可以看出,重构的信号与原信号非常接近,并且能够还原出原信号的形状和特征。
这说明信号的采样和重构方法对于信号处理的准确性有着重要影响。
重庆大学通信学院数字信号处理实验第四次实验报告
0.511.522.5100150200250300Normalized Frequency (⨯π rad/sample)P h a s e (d e g r e e s )0.51 1.522.5-30-20-10010Normalized Frequency (⨯π rad/sample)M a g n i t u d e (d B )0.51 1.522.5-100-50050100Normalized Frequency (⨯π rad/sample)P h a s e (d e g r e e s )0.51 1.522.5-80-60-40-200Normalized Frequency (⨯π rad/sample)M a g n i t u d e (d B )0.51 1.522.5-1000-500500Normalized Frequency (⨯π rad/sample)P h a s e (d e g r e e s)0.51 1.522.5-30-20-10010Normalized Frequency (⨯π rad/sample)M a g n i t u d e (d B )图1 第一题的频率响应 图2 第二题的频率响应图3 第三题的频率响应图4 第四题的频率响应第五题:零、极点分布图-1-0.500.51-1-0.8-0.6-0.4-0.200.20.40.60.814Real PartI m a g i n a r y P a r t结果单位抽样响应:y =1.0000 0.2000 -0.4000 -0.2000 1.0000 0 012345678910-0.4-0.20.20.40.60.81单位抽样响应用filter 函数: b=[1 0.2 -0.4 -0.2 1];a=1; %注意此处分母的表示 x=zeros(1,10);x(1)=1;%单位抽样脉冲 y=filter(b,a,x) stem(y);title('单位抽样响应')用impz 函数:b=[1 0.2 -0.4 -0.2 1]; a=1;y=impz(b,a);单位阶跃响应:-11234567891000.20.40.60.811.21.41.6单位阶跃响应y =1.0000 1.2000 0.8000 0.6000 1.6000 1.6000 1.6000 1.6000 1.6000 1.6000程序:b=[1 0.2 -0.4 -0.2 1]; a=1;x=ones(1,20);x(1)=1;%单位阶跃信号 y=filter(b,a,x)第六题:零、极点分布图-1-0.50.511.5-1-0.8-0.6-0.4-0.200.20.40.60.81Real PartI m a g i n a r y P a r tB=[0.3 -0.5 0];A=[1 -0.7 0.8];zplane(B,A) %零、极点分布图-101-1-0.500.51Real PartI m a g i n a r y P a r t系统函数极零点分布图-1-0.500.51-1-0.500.51Real PartI m a g i n a r y P a r t最小相移网络零点分布图-11-1-0.500.51Real PartI m a g i n a r y P a r t全通网络零点分布图-11-1-0.500.51Real PartI m a g i n a r y P a r t修正网络零点分布图B=[0.3 -0.5]; A=[1 -0.7 0.8]; subplot(2,2,1);zplane(B,A)title('系统函数极零点分布图') %最小相移网络: B=[1 -0.6];A=[1 -0.7 0.8]; subplot(2,2,2) zplane(B,A);title('最小相移网络零点分布图') %全通网络: B=[-0.6 1];A=[1 -0.6]; subplot(2,2,3); zplane(B,A);title('全通网络零点分布图') %修正网络: B=[-0.6 1]; A=[1 -0.7 0.8]; subplot(2,2,4); zplane(B,A);title('修正网络零点分布图')对比区别:0500100015002000123系统函数极频率响应0500100015002000-4-2024系统函数极频率相位响应500100015002000246修正网络频率响应0500100015002000-4-224修正网络频率相位响应B=[0.3 -0.5]; A=[1 -0.7 0.8]; w=0:0.01:6*pi; h=freqz(B,A,w) subplot(2,2,1); plot(abs(h));title('系统函数极频率响应') subplot(2,2,2); plot(angle(h));title('系统函数极频率相位响应')B=[-0.6 1]; A=[1 -0.7 0.8]; w=0:0.01:6*pi;[h,w]=freqz(B,A,w) subplot(2,2,3); plot(abs(h));title('修正网络频率响应') subplot(2,2,4); plot(angle(h));title('修正网络频率相位响应')第七题:说明grpdelay 的使用方法,计算1和5中的群延时0.51 1.522.53012345678910Normalized Frequency (⨯π rad/sample)G r o u p d e l a y (s a m p l e s )b=[0.2 0 -0.3]; a=[1 -0.4 0.8]; w=0:0.01:3*pi; grpdelay(b,a,w);第五题的群延时00.51 1.522.53-15-10-55101520Normalized Frequency (⨯π rad/sample)G r o u p d e l a y (s a m p l e s )b=[1 0.2 -0.4 -0.2 1]; a=[1];w=0:0.01:3*pi; grpdelay(b,a,w);群延时函数的使用方法: help grpdelayGRPDELAY Group delay of a digital filter.[Gd,W] = GRPDELAY(B,A,N) returns length N vectors Gd and W containing the group delay and the frequencies (in radians) at which it is evaluated. Group delay is -d{angle(w)}/dw. The frequencyresponse is evaluated at N points equally spaced around the upper half of the unit circle. For an FIR filter where N is a power of two, the computation is done faster using FFTs. If you don't specify N, it defaults to 512.GRPDELAY(B,A,N,'whole') uses N points around the whole unit circle.[Gd,F] = GRPDELAY(B,A,N,Fs) and [Gd,F] = GRPDELAY(B,A,N,'whole',Fs) given sampling frequency Fs in Hz return a vector F in Hz.Gd = GRPDELAY(B,A,W) and Gd = GRPDELAY(B,A,F,Fs) return the group delay evaluated at the points in W (in radians/sample) or F (in Hz).GRPDELAY(B,A,...) with no output arguments plots the group delay in the current figure window.提高1:级联后的频率响应0.51 1.522.5-800-600-400-200Normalized Frequency (⨯π rad/sample)P h a s e (d e g r e e s )0.51 1.522.5-200-150-100-500X: 0.2992Y: -2.991Normalized Frequency (⨯π rad/sample)M a g n i t u d e (d B )b=0.175*[1 3 3 1]; a=[1];w=0:0.01:3*pi;freqz(b,a,w);最高的点x=0, y=0X=0.2992,y=-2.991Y*pi=0.9400计算的wc= 2*acos(2^(-1/6))=0.9430。
数字信号处理 实习大报告 (2)
6月21号
完成任务:对程序进行标注
文件名:Gibbs_Phenomena_CFST 添加注释.m
6月22号
完成任务:在一幅图上画出多幅小图,画一组二维图
文件名:zuoye2.m
运行结果:
6月23号
完成任务:画三维图形
文件名:zuoye2_1.m
运行结果:
6月25号
完成任务:画复数的事实部和虚部
文件名称:zuoye2_2.m
运行结果:
6月26号
完成任务:计算普通褶积
文件名称:zuoye3_1.m
运行结果:
6月27号
完成任务:计算循环褶积
文件名称:zuoye3_2.m
运行结果:
6月28日
完成任务:相关分析
文件名称:zuoye3_3.m
运行结果:
6月29号
完成任务:病态系统
文件名称:zuoye4.m 运行结果:
6月30号
完成任务:一维滤波文件名称:zuoye5.m 运行结果:
完成任务:二维滤波器文件名称:zuoye6.m 运行结果:、
完成任务:验证时间域的循环褶积对应的是频率域的乘积;线性褶积则不然文件名称:zuoye7.m
运行结果:
7月1号
完成任务:请用通俗、易懂的语言说明数字信号处理中的一种性质、一条定理或一个算例(顺便利用Matlab对其进行实现)。
褶积运算具有可交换性,相关运算不具有交换性。
文件名称:zuoye8.m
运行结果:。
课程大作业——数字信号处理实验报告
实验一 信号、系统及系统响应一.实验目的1.熟悉理想采样的性质,了解信号采用前后的频谱变化,加深对采样定理的理解。
2.熟悉离散信号和系统的时域特性。
3.熟悉线性卷积的计算编程方法:利用卷积的方法,观察、分析系统响应的时域特性。
4.掌握序列傅氏变换的计算机实现方法,利用序列的傅氏变换对离散信号、系统及系统响应进行频域分析。
二.实验原理1.连续时间信号的采样采样是从连续时间信号到离散时间信号的过渡桥梁,对采样过程的研究不仅可以了解采样前后信号时域和频域特性发生的变化以及信号内容不丢失的条件,而且有助于加深对拉氏变换、傅氏变换、z 变换和序列傅氏变换之间关系的理解。
对一个连续时间信号进行理想采样的过程可以表示为该信号和个周期冲激脉冲的乘积,即)()()(ˆt M t x t xa a = (1-1) 其中)(ˆt xa 是连续信号)(t x a 的理想采样,)(t M 是周期冲激脉冲 ∑+∞-∞=-=n nT t t M )()(δ (1-2)它也可以用傅立叶级数表示为:∑+∞-∞=Ω=n tjm s e T t M 1)( (1-3)其中T 为采样周期,T s /2π=Ω是采样角频率。
设)(s X a 是连续时间信号)(t x a 的双边拉氏变换,即有:⎰+∞∞--=dt e t xs X st aa )()( (1-4)此时理想采样信号)(ˆt xa 的拉氏变换为 ∑⎰+∞-∞=+∞∞--Ω-===m s a sta a jm s X T dt e t x s X )(1)(ˆ)(ˆ (1-5)作为拉氏变换的一种特例,信号理想采样的傅立叶变换[]∑+∞-∞=Ω-Ω=Ωm s a a m j X T j X )(1)(ˆ (1-6)由式(1-5)和式(1-6)可知,信号理想采样后的频谱是原信号频谱的周期延拓,其延拓周期等于采样频率。
根据Shannon 采样定理,如果原信号是带限信号,且采样频率高于原信号最高频率分量的2倍,则采样以后不会发生频率混淆现象。
数字信号处理实验报告
一、实验目的1. 理解数字信号处理的基本概念和原理。
2. 掌握离散时间信号的基本运算和变换方法。
3. 熟悉数字滤波器的设计和实现。
4. 培养实验操作能力和数据分析能力。
二、实验原理数字信号处理(Digital Signal Processing,DSP)是利用计算机对信号进行采样、量化、处理和分析的一种技术。
本实验主要涉及以下内容:1. 离散时间信号:离散时间信号是指时间上离散的信号,通常用序列表示。
2. 离散时间系统的时域分析:分析离散时间系统的时域特性,如稳定性、因果性、线性等。
3. 离散时间信号的变换:包括离散时间傅里叶变换(DTFT)、离散傅里叶变换(DFT)和快速傅里叶变换(FFT)等。
4. 数字滤波器:设计、实现和分析数字滤波器,如低通、高通、带通、带阻滤波器等。
三、实验内容1. 离散时间信号的时域运算(1)实验目的:掌握离散时间信号的时域运算方法。
(2)实验步骤:a. 使用MATLAB生成两个离散时间信号;b. 进行时域运算,如加、减、乘、除等;c. 绘制运算结果的时域波形图。
2. 离散时间信号的变换(1)实验目的:掌握离散时间信号的变换方法。
(2)实验步骤:a. 使用MATLAB生成一个离散时间信号;b. 进行DTFT、DFT和FFT变换;c. 绘制变换结果的频域波形图。
3. 数字滤波器的设计和实现(1)实验目的:掌握数字滤波器的设计和实现方法。
(2)实验步骤:a. 设计一个低通滤波器,如巴特沃斯滤波器、切比雪夫滤波器等;b. 使用MATLAB实现滤波器;c. 使用MATLAB对滤波器进行时域和频域分析。
4. 数字滤波器的应用(1)实验目的:掌握数字滤波器的应用。
(2)实验步骤:a. 采集一段语音信号;b. 使用数字滤波器对语音信号进行降噪处理;c. 比较降噪前后的语音信号,分析滤波器的效果。
四、实验结果与分析1. 离散时间信号的时域运算实验结果显示,通过MATLAB可以方便地进行离散时间信号的时域运算,并绘制出运算结果的时域波形图。
数字信号处理实验报告
数字信号处理实验报告实验报告
实验题目:数字信号处理实验
实验日期:XXXX年XX月XX日
实验目的:
1. 了解数字信号处理的基本概念和原理;
2. 掌握数字信号的采样、量化和编码方法;
3. 学习数字信号处理的基本算法和应用。
实验内容:
1. 采样与重建
1.1 采样定理的验证
1.2 重建信号的实现
2. 量化与编码
2.1 量化方法的比较
2.2 编码方法的选择与实现
3. 数字滤波器设计与实现
3.1 FIR滤波器设计方法
3.2 IIR滤波器设计方法
实验步骤:
1. 使用示波器对输入的模拟信号进行采样,记录采样频率和采样点数。
2. 使用恢复信号方法,将采样得到的数字信号重建为模拟信号,并进行对比分析。
3. 对重建的信号进行量化处理,比较不同量化方法的效果,选择合适的方法进行编码。
4. 设计并实现数字滤波器,比较FIR和IIR滤波器的性能和实
现复杂度。
实验结果与分析:
1. 采样与重建实验结果表明,在满足采样定理的条件下,采样频率越高,重建信号的质量越高。
2. 量化与编码实验结果表明,在相同位数下,线性量化方法优于非线性量化方法,而编码方法可以根据信号特性选择,例如
差分编码适用于连续变化的信号。
3. 数字滤波器实验结果表明,FIR滤波器相对于IIR滤波器在时域和频域上更易于设计和理解,但实现复杂度较高。
实验结论:
数字信号处理是对模拟信号进行采样、量化和编码等处理,具有较高的灵活性和可靠性。
在实际应用中,应根据需要选择合适的采样频率、量化位数和编码方式,并根据信号特性选择合适的滤波器设计方法。
数字信号处理实验报告
数字信号处理实验报告一、实验目的本次数字信号处理实验的主要目的是通过实际操作和观察,深入理解数字信号处理的基本概念和方法,掌握数字信号的采集、处理和分析技术,并能够运用所学知识解决实际问题。
二、实验设备与环境1、计算机一台,安装有 MATLAB 软件。
2、数据采集卡。
三、实验原理1、数字信号的表示与采样数字信号是在时间和幅度上都离散的信号,可以用数字序列来表示。
在采样过程中,根据奈奎斯特采样定理,为了能够准确地恢复原始信号,采样频率必须大于信号最高频率的两倍。
2、离散傅里叶变换(DFT)DFT 是将时域离散信号变换到频域的一种方法。
通过 DFT,可以得到信号的频谱特性,从而分析信号的频率成分。
3、数字滤波器数字滤波器是对数字信号进行滤波处理的系统,分为有限冲激响应(FIR)滤波器和无限冲激响应(IIR)滤波器。
FIR 滤波器具有线性相位特性,而 IIR 滤波器则在性能和实现复杂度上有一定的优势。
四、实验内容与步骤1、信号的采集与生成使用数据采集卡采集一段音频信号,或者在 MATLAB 中生成一个模拟信号,如正弦波、方波等。
2、信号的采样与重构对采集或生成的信号进行采样,然后通过插值算法重构原始信号,观察采样频率对重构信号质量的影响。
3、离散傅里叶变换对采样后的信号进行DFT 变换,得到其频谱,并分析频谱的特点。
4、数字滤波器的设计与实现(1)设计一个低通 FIR 滤波器,截止频率为给定值,观察滤波前后信号的频谱变化。
(2)设计一个高通 IIR 滤波器,截止频率为给定值,比较滤波前后信号的时域和频域特性。
五、实验结果与分析1、信号的采集与生成成功采集到一段音频信号,并在MATLAB 中生成了各种模拟信号,如正弦波、方波等。
通过观察这些信号的时域波形,对不同类型信号的特点有了直观的认识。
2、信号的采样与重构当采样频率足够高时,重构的信号能够较好地恢复原始信号的形状;当采样频率低于奈奎斯特频率时,重构信号出现了失真和混叠现象。
数字信号处理 实习大报告 (4)
《计算机编程与数字信号处理实习》大作业勘查07-3班段云江2007014310 一.6月21--22号这两天主要完成对matlab语言以及操作的熟悉,对给定的程序进行了注释,加深了对数字信号用matlab来实现对它的分析的理解。
对以下给定源程序的注释: % Gibbs_Phenomena_CFST.m 具体见附录文件夹一二、6月23号主要完成(1)--(3)小题的程序编写,进一步加深了对matlab的画图功能的理解和掌握,对关键的源代码能熟练的掌握。
能对图形进行必要的修饰。
6月24日完成对(4)--(5)小题的程序编写。
进一步加深巩固了对matlab画图功能的运用。
具体成果如下:(1)在一副图上画出多幅小图;运行结果及程序见附录中相关文件夹二中。
源程序为ba.m ;对应的图形见ba(2)画出一组二维图形;运行结果及程序 见附录中相关文件夹二中。
源程序为bb.m ;对应的图形见bb(3)画出一组三维图形;运行结果及程序 见附录中相关文件夹二中。
源程序为bc.m 对应的图形见bcxyz(4)画出复数的实部与虚部。
运行结果及程序 见附录中相关文件夹二中。
源程序为bd.m 对应的图形见bd(5)完成对一个源程序进行详细注释。
运行结果及程序 见附录中相关文件夹二中。
源程序为 be.m 对应的注释。
三、6月25日完成在时间域计算线性褶积计算普通褶积与循环褶积,分别使用时间域与频率域两种方法进行正、反演计算,指出循环褶积计算时所存在的边界效应现象;编写一个做相关分析的源程序。
实习成果:一 (1)在时间域计算线性褶积(程序见附录ca.m )当两信号分别为x=[0 1 1 0]',y=[0 1 2 3 ]’'时,利用下面线性褶积公式:求得的线性褶积结果为A=[0 0 1 3 5 3 0]’.(2)在时间域正演计算循环褶积(程序见附录cb.m )当两信号分别为x=[0 1 1 0]',y=[0 1 2 3 ]’'时利用如下循环褶积公式:求得的循环褶积结果为列向量B=[0 0 1 3 5 3 0]’从以上(1),(2)两问可以看出当N 相等时线性褶积与循环褶积的值是相等的。
数字信号处理实验报告完整版[5篇模版]
数字信号处理实验报告完整版[5篇模版]第一篇:数字信号处理实验报告完整版实验 1利用 T DFT 分析信号频谱一、实验目的1.加深对 DFT 原理的理解。
2.应用 DFT 分析信号的频谱。
3.深刻理解利用DFT 分析信号频谱的原理,分析实现过程中出现的现象及解决方法。
二、实验设备与环境计算机、MATLAB 软件环境三、实验基础理论T 1.DFT 与与 T DTFT 的关系有限长序列的离散时间傅里叶变换在频率区间的N 个等间隔分布的点上的 N 个取样值可以由下式表示:212 /0()|()()0 1Nj knjNk NkX e x n e X k k Nπωωπ--====≤≤-∑由上式可知,序列的 N 点 DFT ,实际上就是序列的 DTFT 在 N 个等间隔频率点上样本。
2.利用 T DFT 求求 DTFT方法 1 1:由恢复出的方法如下:由图 2.1 所示流程可知:101()()()Nj j n kn j nNn n kX e x n e X k W eNωωω∞∞----=-∞=-∞=⎡⎤==⎢⎥⎣⎦∑∑∑由上式可以得到:IDFT DTFT第二篇:数字信号处理实验报告JIANGSUUNIVERSITY OF TECHNOLOGY数字信号处理实验报告学院名称:电气信息工程学院专业:班级:姓名:学号:指导老师:张维玺(教授)2013年12月20日实验一离散时间信号的产生一、实验目的数字信号处理系统中的信号都是以离散时间形态存在的,所以对离散时间信号的研究是数字信号的基本所在。
而要研究离散时间信号,首先需要产生出各种离散时间信号。
使用MATLAB软件可以很方便地产生各种常见的离散时间信号,而且它还具有强大绘图功能,便于用户直观地处理输出结果。
通过本实验,学生将学习如何用MATLAB产生一些常见的离散时间信号,实现信号的卷积运算,并通过MATLAB中的绘图工具对产生的信号进行观察,加深对常用离散信号和信号卷积和运算的理解。
重庆大学光电学院数字信号处理实验-参考模板
五、实验过程原始记录(实验源程序、图标、计算等)1、用matlab 编制信号产生子程序,产生以下典型信号序列。
()100处有一单位脉冲,1在,)(单位脉冲序列1≤≤=n nn δ()()100,,1处及以后为4,在0前为4在,单位阶跃序列2≤≤==n n nn u()()nR8矩形序列3()()935sin3正弦序列4≤≤⎪⎪⎭⎫⎝⎛+•=nnnxππ()()90)4(5)3(4)2(3)1(2)(序列5≤≤-+-+-+-+=n n n n nn n x δδδδδ()()90)3(2)2()1(2)(序列6≤≤-+-+-+=n n nn n n h δδδδ2、利用MATLAB 编程完成序列(5)和(6)的移位、反转、加法、乘法等运算,并绘制运算后序列的波形。
()())4(5)3(4)2(3)1(2)(序列5-+-+-+-+=n n n nn n x δδδδδ()())3(2)2()1(2)(序列6-+-+-+=n n nn n h δδδδ3、利用MATLAB编制一个计算两个序列线性卷积的通用程序,计算上述两序列,并绘制卷积后序列的波形。
六、实验结果分析1.如何产生方波信号序列和锯齿波信号序列?答:方波信号由square函数可得,锯齿波信号由循环语句产生。
%方波T=0:0.001:2*pi; %方波的时间向量y=square(6*T); %方波w=6,周期为T=2*pi/6subplot(2,1,1);plot(T,y); %画方波title('方波');axis([T(1)-1 T(end)+1 -2 2]); %坐标轴区域hold on%锯齿波(1)用matlab 编程产生并画出信号x1(n)、x2(n)、x3(n)、x4(n)、x5(n)。
⎪⎩⎪⎨⎧≤≤-≤≤+==nn n n n n x n R n x 其它,074,830,1)()()(241⎪⎩⎪⎨⎧≤≤-≤≤-=nn n n n n x 其它,074,330,4)(3 n n x 4cos)(4π=n n x 8sin)(5π=(2)用matlab 编制FFT 函数对上述信号进行频谱分析,并画出上述信号谱图。
数字信号处理实验报告
数字信号处理实验报告实验一:混叠现象的时域与频域表现实验原理:当采样频率Fs不满足采样定理,会在0.5Fs附近引起频谱混叠,造成频谱分析误差。
实验过程:考虑频率分别为3Hz,7Hz,13Hz 的三个余弦信号,即:g1(t)=cos(6πt), g2(t)=cos(14πt), g3(t)=cos(26πt),当采样频率为10Hz 时,即采样间隔为0.1秒,则产生的序列分别为:g1[n]=cos(0.6πn), g2[n]=cos(1.4πn), g3[n]=cos(2.6πn)对g2[n],g3[n] 稍加变换可得:g2[n]=cos(1.4πn)=cos((2π-0.6π)n)= cos(0.6πn)g3[n]=cos(2.6πn)= cos((2π+0.6π)n)=cos(0.6πn)利用Matlab进行编程:n=1:300;t=(n-1)*1/300;g1=cos(6*pi*t);g2=cos(14*pi*t);g3=cos(26*pi*t);plot(t,g1,t,g2,t,g3);k=1:100;s=k*0.1;q1=cos(6*pi*s);q2=cos(14*pi*s);q3=cos(26*pi*s);hold on; plot(s(1:10),q1(1:10),'bd');figuresubplot(2,2,1);plot(k/10,abs(fft(q1)))subplot(2,2,2);plot(k/10,abs(fft(q2)))subplot(2,2,3);plot(k/10,abs(fft(q3)))通过Matlab软件的图像如图所示:如果将采样频率改为30Hz,则三信号采样后不会发生频率混叠,可运行以下的程序,观察序列的频谱。
程序编程改动如下:k=1:300;q=cos(6*pi*k/30);q1=cos(14*pi*k/30);q2=cos(26*pi*k/30);subplot(2,2,1);plot(k/10,abs(fft(q)))subplot(2,2,2);plot(k/10,abs(fft(q1)))subplot(2,2,3);plot(k/10,abs(fft(q2)))得图像:问题讨论:保证采样后的信号不发生混叠的条件是什么?若信号的最高频率为17Hz,采样频率为30Hz,问是否会发生频率混叠?混叠成频率为多少Hz的信号?编程验证你的想法。
数字信号处理 实习大报告 (15)
数字信号实习上机实习报告实习目的:熟练掌握matlab,能够使用该软件完成一定的数字信号处理的任务,并能从中有一定的领悟,达到应用和熟练的程度。
实习任务:一、能够利用Matlab熟悉地画图,内容包括:X、Y坐标轴上的label,每幅图上的title,绘画多条曲线时的legend,对图形进行适当的标注等。
(1)在一副图上画出多幅小图;(2)画出一组二维图形;(3)画出一组三维图形;(4)画出复数的实部与虚部。
(5)完成对一个源程序进行详细注释。
二、计算普通褶积与循环褶积,分别使用时间域与频率域两种方法进行正、反演计算,指出循环褶积计算时所存在的边界效应现象;编写一个做相关分析的源程序。
三、设计一个病态(矩阵)系统,分析其病态程度;找出对应的解决方法(提示:添加白噪因子)。
四、设计一个一维滤波处理程序(1、分别做低通、高通、带通、带阻等理想滤波器进行处理;2、窗函数)。
五、设计一个二维滤波处理程序(分别做低通、高通等处理)。
六、验证时间域的循环褶积对应的是频率域的乘积;线性褶积则不然。
七、请用通俗、易懂的语言说明数字信号处理中的一种性质、一条定理或一个算例(顺便利用Matlab对其进行实现)。
实习时间:2010年6月21日——2010年7月2日实习地点:润杰公寓五层机房1. 能够利用Matlab熟悉地画图,内容包括:X、Y坐标轴上的label,每幅图上的title,绘画多条曲线时的legend,对图形进行适当的标注等。
(1)在一副图上画出多幅小图;(2)画出一组二维图形;(3)画出一组三维图形;(4)画出复数的实部与虚部。
(5)完成对一个源程序进行详细注释。
%在一副图上画出四幅图像%%%%%%%%%%%%%%%%%%%%%%clear all;close all;t=-10:0.1:10;subplot(2,2,1);plot(t,sin(t));axis([-5,5,-1.5,1.5]);title('正弦曲线');xlabel('x');ylabel('y');grid;subplot(2,2,2);plot(t,cos(t),'-r','LineWidth',2);axis([-5,5,-1.5,1.5]);title('余弦曲线');xlabel('x');ylabel('y');grid;subplot(2,2,3);plot(t,tan(t),'-b','LineWidth',1);axis([-5,5,-1.5,1.5]);title('正切曲线');xlabel('x');ylabel('y');subplot(2,2,4);plot(t,rectpuls(t,2),'-r',t,sawtooth(t,1)); axis([-5,5,-1.5,1.5]);title('三角脉冲和矩形脉冲');xlabel('x');ylabel('y');Legend('rectpuls(t,2)','sawtooth(t,1)'); grid;print -djpeg -r0 Firstwork.jpeg;运行结果:(详情请参考文件Untitled1)2)画出一组二维图形figure(2)t=linspace(-6,6);f1=t.^2;f2=-t.^2;plot(t,f1,'-k');hold on;plot(t,f2,':r');text(-2,20,'f1=t^2','FontSize',12,'FontWeight','bold'); text(-2,-20,'f2=-t^2','FontSize',12,'FontWeight','bold'); title('二维图')print -djpeg -r0 2.jpeg(详情请参考文件Untitled2)做三维图:x=linspace(0,4,30); %0到4之间取三十个点y=linspace(0,5,30); %0到5之间取30个点[xx,yy]=meshgrid(x,y); %作图z1=sin(xx).*cos(yy); %z1函数x=0:0.2:4;y=x;[xx,yy]=meshgrid(x,y);z2=xx.^4+3*xx.^2-2*xx+6; %z2函数x=0:0.5:6;y=cos(x);[xx,yy]=meshgrid(x,y);r=sqrt(xx.^2+yy.^2)+eps;z3=sin(r)/r;subplot(2,2,1),mesh(z1); %画两行两列图(z1)title('z1')subplot(2,2,2),mesh(z2);title('z2')subplot(2,2,3),waterfall(z2);title('z2')subplot(2,2,4),mesh(z3);(详情请参考文件Untitled3)画复数实部虚部:x=linspace(-10,10,20);alpha=-0.2+0.5j;y=exp(alpha*x);subplot(2,1,1);stem(x,real(x),'r');hold on subplot(2,1,2);stem(x,imag(x),'r');hold on title('虚部');xlabel('x')print -djpeg -r0 3.jpeg运算结果如下:(详情请参考文件Untitled4)(5)完成对一个源程序进行详细注释。
数字信号处理实验报告
数字信号处理实验报告数字信号处理实验报告一、实验目的本实验旨在通过数字信号处理的方法,对给定的信号进行滤波、频域分析和采样率转换等操作,深入理解数字信号处理的基本原理和技术。
二、实验原理数字信号处理(DSP)是一种利用计算机、数字电路或其他数字设备对信号进行各种处理的技术。
其主要内容包括采样、量化、滤波、变换分析、重建等。
其中,滤波器是数字信号处理中最重要的元件之一,它可以用来提取信号的特征,抑制噪声,增强信号的清晰度。
频域分析是指将时域信号转化为频域信号,从而更好地理解信号的频率特性。
采样率转换则是在不同采样率之间对信号进行转换,以满足不同应用的需求。
三、实验步骤1.信号采集:首先,我们使用实验室的信号采集设备对给定的信号进行采集。
采集的信号包括噪声信号、含有正弦波和方波的混合信号等。
2.数据量化:采集到的信号需要进行量化处理,即将连续的模拟信号转化为离散的数字信号。
这一步通常通过ADC(模数转换器)实现。
3.滤波处理:将量化后的数字信号输入到数字滤波器中。
我们使用不同的滤波器,如低通、高通、带通等,对信号进行滤波处理,以观察不同滤波器对信号的影响。
4.频域分析:将经过滤波处理的信号进行FFT(快速傅里叶变换)处理,将时域信号转化为频域信号,从而可以对其频率特性进行分析。
5.采样率转换:在进行上述处理后,我们还需要对信号进行采样率转换。
我们使用了不同的采样率对信号进行转换,并观察采样率对信号处理结果的影响。
四、实验结果及分析1.滤波处理:经过不同类型滤波器处理后,我们发现低通滤波器可以有效抑制噪声,高通滤波器可以突出高频信号的特征,带通滤波器则可以提取特定频率范围的信号。
这表明不同类型的滤波器在处理不同类型的信号时具有不同的效果。
2.频域分析:通过FFT处理,我们将时域信号转化为频域信号。
在频域分析中,我们可以更清楚地看到信号的频率特性。
例如,对于噪声信号,我们可以看到其频率分布较为均匀;对于含有正弦波和方波的混合信号,我们可以看到其包含了不同频率的分量。
数字信号处理大作业模板
数字信号处理作业设计报告一、目的1.增进对MATLAB的认识,加深对数字信号处理理论方面的理解。
2.掌握数字信号处理中IIR和FIR滤波器的设计。
3.了解和掌握用MATLAB实现IIR和FIR滤波器的设计方法、过程,为以后的设计打下良好基础。
二、数字信号处理课程设计1.IIR(无限脉冲响应)模拟滤波器设计(1)设计题目:巴特沃斯低通滤波器设计(2)设计要求:(通带最大衰减Rp=2,阻带最小衰减Rs=40,通带边界频率Wp=1500hz,阻带边界频率Ws=4200hz,滤波器类型:巴特沃斯低通滤波器)(3)设计原理:(4)Matlab源程序:(程序要有说明)(5)结果和仿真波形:(要有matlab图)2.IIR(无限脉冲响应)数字滤波器设计(1)设计题目:切比雪夫I型数字高通滤波器(2)设计要求:(通带最大衰减Rp=2db,阻带最小衰减Rs=30db,通带边界频率Wp=700hz,阻带边界频率Ws=500hz,采样频率fs=1khz,滤波器类型:切比雪夫I型数字高通滤波器)(3)设计原理:(4)Matlab源程序:(程序要有说明)(5)结果和仿真波形:(要有matlab图)3.FIR(有限脉冲响应)数字滤波器设计(1)设计题目:(2)设计要求:(通带最大衰减Rp,阻带最小衰减Rs,通带边界频率Wp,阻带边界频率Ws,窗函数类型等)(3)设计原理:(4)Matlab源程序:(程序要有说明)(5)结果和仿真波形:(要有matlab图)4、利用FFT进行频谱分析(1)设计要求:(满足条件的序列x(n)等)(2)设计原理:(3)Matlab源程序:(程序要有说明)(4)结果和仿真波形:(要有matlab图形和文字分析)三、总结(收获与体会)四、参考文献注:红字为说明,有错漏之处自行更正。
数字信号处理大作业
数字信号处理上机实验学院:电子工程学院班级:021061学号: 02106013姓名:岳震震实验一:信号、系统及系统响应02106013 岳震震一,实验目的(1) 熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解。
(2)熟悉时域离散系统的时域特性。
(3)利用卷积方法观察分析系统的时域特性。
(4)掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对连续信号、离散信号及系统响应进行频域分析。
二,实验原理与方法(1) 时域采样。
(2)LTI系统的输入输出关系。
三,实验内容及步骤(1)认真复习采样理论、离散信号与系统、线性卷积、序列的傅里叶变换及性质等有关内容,阅读本实验原理与方法。
(2)编制实验用主程序及相应子程序。
①信号产生子程序,用于产生实验中要用到的下列信号序列:a .Xa(t)=Ae-at sin(Ω0t)U(t)b.单位脉冲序列:xb(n)=δ(n)c.矩形序列:xc(n)=RN(n),N=10②系统单位脉冲响应序列产生子程序。
本实验要用到两种FIR系统。
a .ha(n)=R10(n);b. hb(n)=δ(n)+2.5δ(n-1)+2.5δ(n-2)+δ(n-3)③有限长序列线性卷积子程序用于完成两个给定长度的序列的卷积。
可以直接调用MATLAB语言中的卷积函数conv。
conv用于两个有限长度序列的卷积,它假定两个序列都从n=0开始。
调用格式如下:y=conv(x,h)调通并运行实验程序,完成下述实验内容:①分析采样序列的特性。
a. 取采样频率fs=1 kHz, 即T=1 ms。
b.改变采样频率,fs=300Hz,观察|X(ejω)|的变化,并做记录(打印曲线);进一步降低采样频率,fs=200Hz,观察频谱混叠是否明显存在,说明原因,并记录(打印)这时的|X(ejω)|曲线。
②时域离散信号、系统和系统响应分析。
a.观察信号xb(n)和系统hb(n)的时域和频域特性;利用线性卷积求信号xb(n)通过系统hb(n)的响应y(n),比较所求响应y(n)和hb(n)的时域及频域特性,注意它们之间有无差别,绘图说明,并用所学理论解释所得结果。
数字信号处理实验报告
《数字信号处理》实验报告课程名称:《数字信号处理》学院:信息科学与工程学院专业班级:通信1502班学生姓名:侯子强学号:0905140322指导教师:李宏2017年5月28日实验一 离散时间信号和系统响应一. 实验目的1. 熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解2. 掌握时域离散系统的时域特性3. 利用卷积方法观察分析系统的时域特性4. 掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对离散信号及系统响应进行频域分析二、实验原理1. 采样是连续信号数字化处理的第一个关键环节。
对采样过程的研究不仅可以了解采样前后信号时域和频域特性的变化以及信号信息不丢失的条件,而且可以加深对离散傅里叶变换、Z 变换和序列傅里叶变换之间关系式的理解。
对连续信号()a x t 以T 为采样间隔进行时域等间隔理想采样,形成采样信号:ˆ()()()a a xt x t p t = 式中()p t 为周期冲激脉冲,()a x t 为()a x t 的理想采样。
()a x t 的傅里叶变换为()a X j Ω:上式表明将连续信号()a x t 采样后其频谱将变为周期的,周期为Ωs=2π/T。
也即采样信号的频谱()a X j Ω是原连续信号xa(t)的频谱Xa(jΩ)在频率轴上以Ωs 为周期,周期延拓而成的。
因此,若对连续信号()a x t 进行采样,要保证采样频率fs ≥2fm ,fm 为信号的最高频率,才可能由采样信号无失真地恢复出原模拟信号计算机实现时,利用计算机计算上式并不方便,因此我们利用采样序列的傅里叶变换来实现,即()()n P t t nT δ∞=-∞=-∑1()()*()21()n a a a s X j X j P j X j jn T π∞=-∞Ω=ΩΩ=Ω-Ω∑()()|j a TX j X e ωω=ΩΩ=而()()j j n n X e x n e ωω∞-=-∞=∑为采样序列的傅里叶变换2. 时域中,描述系统特性的方法是差分方程和单位脉冲响应,频域中可用系统函数描述系统特性。
数字信号处理 实习大报告 (4)
《计算机编程与数字信号处理实习》大作业勘查07-3班段云江2007014310 一.6月21--22号这两天主要完成对matlab语言以及操作的熟悉,对给定的程序进行了注释,加深了对数字信号用matlab来实现对它的分析的理解。
对以下给定源程序的注释: % Gibbs_Phenomena_CFST.m 具体见附录文件夹一二、6月23号主要完成(1)--(3)小题的程序编写,进一步加深了对matlab的画图功能的理解和掌握,对关键的源代码能熟练的掌握。
能对图形进行必要的修饰。
6月24日完成对(4)--(5)小题的程序编写。
进一步加深巩固了对matlab画图功能的运用。
具体成果如下:(1)在一副图上画出多幅小图;运行结果及程序见附录中相关文件夹二中。
源程序为ba.m ;对应的图形见ba(2)画出一组二维图形;运行结果及程序 见附录中相关文件夹二中。
源程序为bb.m ;对应的图形见bb(3)画出一组三维图形;运行结果及程序 见附录中相关文件夹二中。
源程序为bc.m 对应的图形见bcxyz(4)画出复数的实部与虚部。
运行结果及程序 见附录中相关文件夹二中。
源程序为bd.m 对应的图形见bd(5)完成对一个源程序进行详细注释。
运行结果及程序 见附录中相关文件夹二中。
源程序为 be.m 对应的注释。
三、6月25日完成在时间域计算线性褶积计算普通褶积与循环褶积,分别使用时间域与频率域两种方法进行正、反演计算,指出循环褶积计算时所存在的边界效应现象;编写一个做相关分析的源程序。
实习成果:一 (1)在时间域计算线性褶积(程序见附录ca.m )当两信号分别为x=[0 1 1 0]',y=[0 1 2 3 ]’'时,利用下面线性褶积公式:求得的线性褶积结果为A=[0 0 1 3 5 3 0]’.(2)在时间域正演计算循环褶积(程序见附录cb.m )当两信号分别为x=[0 1 1 0]',y=[0 1 2 3 ]’'时利用如下循环褶积公式:求得的循环褶积结果为列向量B=[0 0 1 3 5 3 0]’从以上(1),(2)两问可以看出当N 相等时线性褶积与循环褶积的值是相等的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
figure(1);%44100Hz采集音频信号时域图、频谱图
subplot(2,1,1);
plot(t1,x1,'r');
axis([0 95 -1 1]);%设置坐标轴围
set(gca,'XTick',0:5:95),grid on;%设置x坐标轴刻度,绘制方格线
set(gca,'YTick',-0.8:0.2:0.8),grid on;%设置y坐标轴刻度,绘制方格线
recordblocking(recObj, recording_time);
set(gca,'YTick',-0.8:0.2:0.8),grid on;%设置y坐标轴刻度,绘制方格线
title('5512Hz采样音乐信号波形');
xlabel('时间轴,单位s');
subplot(2,1,2);
plot((-N/2+1:N/2)*Fs2/N/f,Y1,'b');
axis([-3 3 -70 50]);
3、录制一段自己的声音,试验当fs=?时,发生混叠。
4、(选作)在噪声环境中录制一段自己的声音,试采用一种方法将噪声尽可能地消除。
四、实验步骤:
仿真程序DSP_homework1.m:
clc;
clear;
close all;
%% 44100Hz和5512Hz采集音频文件
[FileName,PathName] = uigetfile('*.wav','选择待处理音频文件');%获取处理音频文件位置
3、掌握在MATLAB中设计滤波器的方法;
4、掌握MATLAB语言号频谱的绘制方法。
5、对采样定理进行初步验证,体会频谱混叠现象,并大致确定音频信号的最低采样频率。
二、实验原理:
现实当中遇到的绝大多数信号都是连续的,即所谓的连续信号。如语音、图像、温度压力电流等都是模拟信号。要利用数字信号处理技术实现对这些信号的处理,需要借助对这些信号的处理,需要借助A/D转换 ,先将模拟信号转变为数字信号后才能利用数字技术对其进行加工处理。因此,采样是从连续到离散的桥梁。
N =5096; %fft点数,以频谱分辨率为10Hz,信号最高频率40kHz求出记录最小点数
f=10^3;%取频率轴单位为KHz
X1=fft(x1,N);
X1=10*log(abs(fftshift(X1)));%用对数表示44100Hz音频信号的频谱
Y1=fft(y1,N);
Y1=10*log(abs(fftshift(Y1)));%用对数表示5512Hz音频信号的频谱
title('44100Hz采样音乐信号频谱图');
xlabel('频率轴,单位kHz');
ylabel('单位:dB');
figure(2)%5512Hz采集音频信号时域图、频谱图
subplot(2,1,1);
plot(t2,y1,'r');
axis([0 95 -1 1]);%设置坐标轴围
set(gca,'XTick',0:5:95),grid on;%设置x坐标轴刻度,绘制方格线
path1=fullfile(PathName,FileName);
[x,Fs1]=audioread(path1);%默认采样频率Fs为44100Hz
x1=x(:,1);%1声道数据
x2=x(:,2);%2声道数据
%y1=x1(1:800000);
%y1=x1(1:8:end);
Fs2=5512;
y1=resample(x1,5512,44100); %信号降采样处理,采样从44100Hz降到5512Hz
y2=resample(x2,5512,44100);
y=[y1 y2];
t1=0:1/Fs1:(length(x1)-1)/Fs1;%取时域横轴t
t2=0:1/Fs2:(length(y1)-1)/Fs2;
clear;
close all;
%%录音测试多少采样频率时发生混叠
Fs1=2205;%录音采样频率
nBits=16;%音频位数
nChannels=1;%声道数
recording_time=1.5;%录音时间长度
recObj = audiorecorder(Fs1,nBits,nChannels)
disp('Start speaking.')
如果选择的采样频率太低,及fs<2fm的采样频率太低,或者说是信号的最高频率fm 超过fs/2,则采样后的频谱按照采样率周期延拓时,各周期延拓分量产生频谱的交叠,这种现象叫频谱混叠。
三、实验容:
本实验通过MATLAB软件,完成以下四项任务
1、用fs=44100HZ采集一段音乐。
2、改变采样频率,用fs=5512HZ采集一段音乐,体会混叠现象。
PathName1=uigetdir(strcat(matlabroot,'\work' ),'加噪后音频文件另存为');
FileName1='music_5512.wav'
path2=fullfile(PathName1,FileName1);
audiowrite(path2,y,Fs2);%生成5512Hz采样的wav格式音频文件,试听音乐效果
title('44100Hz采样音乐信号波形');
xlabel('时间轴,单位s');
subplot(2,1,2);
plot((-N/2+1:N/2)*Fs1/N/f,X1,'b');
axis([-25 25 -70 50]);
set(gca,'XTick',-25:5:25),grid on;
set(gca,'YTick',-70:20:50),grid on;
set(gca,'XTick',-3:1:3),grid on;
set(gca,'YTick',-70:20:50),grid on;
title('5512Hz采样音乐信号频谱图பைடு நூலகம்);
xlabel('频率轴,单位kHz');
ylabel('单位:dB');
仿真程序DSP_homework2.m:
clc;
数字信号处理课外实验设计
——音频采样和频谱混叠
课程名称:数字信号处理
院系:通信工程学院
专业:通信01班
年级:2013级
姓 名:叶汉霆
学号:20134414
指导教师:吴华
实验时间:2015.11.26
大学
一、实验目的:
1、熟悉MATLAB语言的基本用法;
2、掌握MATLAB语言中音频数据与信息的读取与播放方法;