【matlab】矩形窗/三角窗/hanning窗/hamming窗/blackman窗的频率响应图
2017-01-07 21:37
706 查看
%{ ---------------------------------------------------------------------------
File:Matlab的窗函数,矩形窗
功能:降低旁瓣水平 参数: --------------------------------------------------------------------------- %} %N =51 %========================================================================== %求矩形窗的频率响应图 %========================================================================== W = linspace(-pi,pi,4096); wn0 = rectwin(51) %矩形窗函数 %20*log10(abs(WN)) [h1,w0] = freqz(wn0,1,W); %subplotfigure(5,1,1); subplot(511); plot(w0/pi,20*log10(abs(h1/max(h1)))); axis([-1 1 -100 0]); xlabel('归一化频率 /\pi'); ylabel('20log_{10}|W(e^{j\omega})| /dB'); title('矩形窗的傅里叶变换'); set(gca,'YTick',[-100 -80 -60 -40 -20 0]) set(gca,'XTick',[-1 :0.2: 1]) %set(gca,'XAxisLocation','top');%设置X轴在上方 %set(gca,'XAxisLocation','buttom');%设置X轴在下方 set(gca,'YAxisLocation','left'); %设置Y轴在左方 text(1,-124,'\pi');%gtext('\pi'); %========================================================================== %求三角窗的频率响应图 %========================================================================== wn1 = bartlett(51) [h1,w1] = freqz(wn1,1,W); %figure(5,1,2); subplot(512); plot(w1/pi,20*log10(abs(h1/max(h1)))); %plot(w/pi,20*log10(h1/max(h1))); % 警告: 复数 X 和/或 Y 参数的虚部已忽略 axis([-1 1 -100 0]); xlabel('归一化频率 /\pi'); ylabel('20log_{10}|W(e^{j\omega})| /dB'); title('三角窗的傅里叶变换'); set(gca,'YTick',[-100 -80 -60 -40 -20 0]) set(gca,'XTick',[-1 :0.2: 1]) %set(gca,'XAxisLocation','top');%设置X轴在上方 set(gca,'YAxisLocation','left'); %设置Y轴在左方 text(1,-124,'\pi');%gtext('\pi'); %========================================================================== %hanning 窗的频率响应图 %========================================================================== wn2 = hanning(51) [h1,w2] = freqz(wn2,1,W); %figure(5,1,3); subplot(513); plot(w2/pi,20*log10(abs(h1/max(h1)))); axis([-1 1 -100 0]); xlabel('归一化频率 /\pi'); ylabel('20log_{10}|W(e^{j\omega})| /dB'); title('Hanning的傅里叶变换'); set(gca,'YTick',[-100 -80 -60 -40 -20 0]); set(gca,'XTick',[-1 :0.2: 1]); %set(gca,'XAxisLocation','top');%设置X轴在上方 set(gca,'YAxisLocation','left'); %设置Y轴在左方 text(1,-124,'\pi');%gtext('\pi'); %========================================================================== %hamming 窗的频率响应图 %========================================================================== wn3 = hamming(51) [h1,w3] = freqz(wn3,1,W); %离散系统频响特性的函数freqz() %figure(5,1,4); subplot(514); plot(w3/pi,20*log10(abs(h1/max(h1)))); axis([-1 1 -100 0]); xlabel('归一化频率 /\pi'); ylabel('20log_{10}|W(e^{j\omega})| /dB'); title('Hamming的傅里叶变换'); set(gca,'YTick',[-100 -80 -60 -40 -20 0]) set(gca,'XTick',[-1 :0.2: 1]) %set(gca,'XAxisLocation','top');%设置X轴在上方 set(gca,'YAxisLocation','left'); %设置Y轴在左方 text(1,-124,'\pi');%gtext('\pi'); %========================================================================== %Blackman wn1 = blackman(51) %========================================================================== wn4 = blackman(51) [h1,w4] = freqz(wn4,1,W); %figure(5,1,5); subplot(515); plot(w4/pi,20*log10(abs(h1/max(h1)))); axis([-1 1 -100 0]); xlabel('归一化频率 /\pi'); ylabel('20log_{10}|W(e^{j\omega})| /dB'); title('Blackman的傅里叶变换'); set(gca,'YTick',[-100 -80 -60 -40 -20 0]) set(gca,'XTick',[-1 :0.2: 1]) %set(gca,'XAxisLocation','top');%设置X轴在上方 set(gca,'YAxisLocation','left'); %设置Y轴在左方 text(1,-124,'\pi');%gtext('\pi');
相关文章推荐
- Matlab从图像中选取矩形区域
- matlab之俩矩形框的重叠面积及重叠率
- matlab gui 鼠标选择矩形区域 返回鼠标坐标点
- matlab中进行二维平面中有向矩形相交探测计算OBB dection
- Matlab如何在图上画包围目标区域的矩形(或圆)
- Matlab在图片上画个半圆和矩形
- 如何在matlab里画包围目标的矩形或圆形区域?
- Matlab 最小外接矩形
- [图像]用Matlab在图像上画矩形框
- matlab 在照片中画矩形框
- 毕业设计——人脸检测——MATLAB 在图片上画矩形框(已知矩形左上角坐标、长、宽)
- [图像]用Matlab在图像上画矩形框
- matlab 矩形
- 【Matlab图像处理】截取图像中的矩形区域(可不平行于坐标轴)并保存为图片
- 图像处理中矩形标记图像中某一块区域matlab中rectangle函数介绍
- 【matlab】在图中插入矩形(框or阴影)
- matlab练习程序(矩形变换为单连通形状)
- paper 69:Haar-like矩形遍历检测窗口演示Matlab源代码[转载]
- 用matlab在图像上画矩形框,并保存坐标到文本中
- matlab 用鼠标拖曳画矩形的代码