matlab声音信号时域频域转换,关于处理用采集卡采集到的声音时域信号转化成频域信号........

求助各位大神,我用麦克风通过采集卡采集到了一段声音数据,数据在附件里,矩阵中第一列为时间,第二列为采集到的声音的电压信号,采样频率为1万Hz,做出时域图和频域图的程序如下所示:

clear;

clc;

load sheng NUM;

fs=10000;

a=NUM(:,1);

b=NUM(:,2);

m=size(b);

N=max(m);

s=fft(b,N-1);

X0=abs(s);

F=(0:N-2)*fs/(N-1);%计算采样点的对应的频率;

figure(1);

plot(1:N,b);

title('信号');

xlabel('信号采集序号');

ylabel('信号');

figure(2);

plot(F,X0)%原始频谱图;

title('原始频谱图');

xlabel('频率/Hz');

ylabel('幅值');

s0(2:N-1)=X0(2:end)/(0.5*(N-1));

s0(1)=X0(1)/(N-1);

figure(3);

plot(F,s0)%实际频谱图;

title('实际频谱图');

xlabel('频率/Hz');

ylabel('幅值');

fshift=round(0.5*(N-1));

figure(4);

plot(F(1:fshift),s0(1:fshift))%由于对称只取一半频谱;

title('频谱图');

xlabel('频率/Hz');

ylabel('幅值');

figure(5);

P=phase(s); %计算相位

P=rem(P*180/pi,360); %换算为角度

plot(F,P); %显示相位图

title('相位-频率曲线图');

xlabel('频率/Hz');

ylabel('相位/度');

得出来的时域图和频域图如下所示:

频域图为何在0处显示最高呢?求助各位

图片1.jpg

(20.7 KB, 下载次数: 0)

2015-6-11 10:49 上传

442a53943febe9465fc072b4fbe10813.gif

b2a5a3e0dcc7d508e00275fe42fce1b5.gif

时域图

3a60c5c8c275758061bd04ffb917200b.png

图片2.jpg

(19.7 KB, 下载次数: 0)

2015-6-11 10:49 上传

442a53943febe9465fc072b4fbe10813.gif

b2a5a3e0dcc7d508e00275fe42fce1b5.gif

频域图

f2344c78fe533e7feb88cfe106dd20b0.png

16ae97300fb26d5150aca66cd3888cb6.gif

2015-6-11 10:39 上传

点击文件名下载附件

215.82 KB, 下载次数: 18

数据文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/443187.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

win7和mysql乱码,windows本地mysql数据库存入中文乱码

windows本地mysql数据库存入中文乱码作者:PHPYuan 时间:2018-07-23 03:41:20出现的问题: 我这页面存中文到数据库会乱码 我打了断点 中文是传到后台dao层的 然后我试了下 把我本地项目连服务器数据库 保存不会乱码 我就怀疑是本地数据库有问题 然后我用navicat写了个…

毕业设计matlab在误差处理中的应用,毕业设计MATLAB在误差处理中的应用要点分析.doc...

毕业论文任务书院(系) 机械工程学院 专业班级 测控082级 学生姓名 马 魁一、毕业论文题目 MATLAB在误差理论中的应用二、毕业论文工作自______ ___年____ _月___ __日 起至____ _____年 月_____日止三、毕业论文进行地点: 陕西理工学院四、毕业论文内容要求:传统的数…

帝国cms 未审核 showinfo.php,帝国CMS批量修改文章未审核状态及批量修改上线时间...

帝国CMS批量修改审核文章未审核状态,批量自定义指定文件上线时间!用法:后台增加自定义页面 PHP CODE:$infouptimeto_time(2016-06-12 10:50:19); //上线时间$sql$empire->query("select * from {$dbtbpre}ecms_".$class_r[2][…

php 完美防sql注入,PHP 完美的防XSS 防SQL注入的代码

PHP "完美"的防XSS 防SQL注入的代码function gjj($str){$farr array("/s/","/]*?)>/isU","/(]*)on[a-zA-Z]s*([^>]*>)/isU",);$str preg_replace($farr,"",$str);return addslashes($str);}function hg_input_b…

oracle 并行执行 杀掉会话,oracle – 为什么即使我禁用并行DML和并行DDL也会创建并行会话...

READ和WRITE并行性并不总是捆绑在一起.alter session disable parallel dml;仅禁用语句的WRITE部分的并行性. READ部分可能仍然并行运行.由于这是MERGE操作,因此并行提示请求读写并行写入.此外,并行提示覆盖alter session disable parallel query;,即使它不覆盖alter session d…

oracle临时表空间占用率过高,ORACLE 临时表空间使用率过高的原因及临时解决方案...

数据库temp临时表空间增大,一般在数据安装时设置临时表空间大小,默认的情况下都是设置为自动增长。这样会引起一个问题:在数据库使用中temp表空间会自动扩展的越来越大,造成磁盘空间使用不足。引起临时表空间增大主要使用在以下几…

oracle11g中的join,sql - 使用Oracle 11g中的+符号进行左外连接

()相当于()。在Oracle中,()表示JOIN中的“可选”表。 所以在你的第一个查询中,它是一个().在你的第二个查询中,它是()。它们在功能上是等价的。在术语中,RIGHT或LEFT指定连接的哪一侧始终具有记录,而另一侧可能为空。 …

oracle中order by 2,关于oracle中ROWNUM和ORDER BY的问题(2)

SQL code16:29:53 scottTUNGKONG> SELECT a.*,rownum FROM (SELECT good_id, good_nm, prc FROM tb_ag001 ORDER BY prc) a;GOOD_I GOOD_NM PRC ROWNUM------ ------------------------------ ---------- ----------133337 阳光宝贝防晒修复套SPF-30 0 1133424 旋覆透白绣花…

oracle 600 侯,oracle在导入数据时报600错误的解决方法

前言前几天导入一个大容量dmp数据文件,报一个600错误,咨询网上的解决方法,按上面的处理一圈也没有整好,最后咨询组里一个大神,出现此错误 思路是,单个数据文件大小最大为32G,分析数据库后解决如…

php null截断 漏洞,CVE-2015-3412,CNNVD-201507-164|PHP NULL Character 安全漏洞 - 信息安全漏洞门户 VULHUB...

PHP(PHP:Hypertext Preprocessor,PHP:超文本预处理器)是PHP Group和开放源代码社区共同维护的一种开源的通用计算机脚本语言。该语言主要用于Web开发,支持多种数据库及操作系统。 PHP中存在安全漏洞,该漏洞源于程序没有…

Oracle插数据timeout,oracle 11g 频繁报kmgs_parameter_update_timeout

各位 好!我的数据库RAC 11g 最近频繁报错,数据库版本是11.2.0.1.0 详细错误信息如下:Errors in file /u01/app/oracle/diag/rdbms/glddb/glddb1/trace/glddb1_mmon_27429.trc (incident123874):ORA-00600: internal error code, arguments: …

shell从oracle中获取变量,shell 如何读取环境变量的值

笔者最近在开发中遇到新旧版本不兼容的问题,需要我解析的内容更新到最新后对于旧的日志将不支持,所以我需要设置开关来区分是用新的脚本还是原来旧的脚本;这样我就遇到了比较基础的问题,那就是在shell脚本中如何读取环境变量并使用…

linux touch更新文件时间,Linux文件时间的查看和修改touch

1. Linux文件的时间Linux下文件时间主要有下面三种:1.1 modification time(mtime)文件修改时间,即文件内容的修改时,更新这个时间,不包括文件权限和属性的修改。使用ls -l查看,默认显示时间为mtime$ ls -l uconv.h-rw-…

linux中ftp禁止匿名,linux下禁止root和匿名用户登录ftp

1、ftp通过root或其他用户进入可视化界面权限过大,容易导致系统文件误删windows下输入ftp://IP去访问,不需要账号密码就可以访问到ftp文件夹刚进去pub是空的,在linux上新增一个txt文件,再去windows下刷新可以看到txt文件&#xff…

mats显存测试软件linux环境,Mats显存检测软件下载-Mats显存检测软件最新版下载-微侠手游网...

Mats显存检测软件是一款专业的显卡检测工具,全系统都是中文的,是一款装机必备的硬件工具,帮助你了解自己的显卡运作情况,有任何问题都可以第一时间暂停,看完的小伙伴可以关注微侠网下载最新版软件以及查看最新攻略及资…

linux嵌入式智能家居环境监测系统的设计,智能家居环境监测系统.doc

智能家居环境监测系统.doc智能家居环境监测系统近些年来,智能家居系统的使用功能愈加健全。本文之中在充分了解嵌入式系统平台的具体构建的前提下,以智能家居系统当前的功能要求为主要方向,以该平台的硬件设计为切入点,细致探索了…

linux驱动与dts匹配过程,自己编写从应用到DTS与驱动

这里的思路依然是从应用到drivers编写,只是贴出来重点部分。import android.app.InoGpioManager;((InoGpioManager) context.getSystemService(Context.INOGPIO_SERVICE)).ioctl(cmd,val);InoGpioManager.java的编写:public class InoGpioManager{privat…

完全用 gnu/linux 工作,怎样完全用 GNU/Linux 工作

怎样完全用 GNU/Linux 工作说了这么多 Windows 的不好。我还没有告诉你我怎么用 Linux 处理有些必要的事情。半年以前我由于中文老是配置不好,一直是双系统,不时需要重起到 Win2k 来处理汉字。后来我找到了 miniChinput, XSIM 和 SCIM 输入法。这下可以处…

c语言以顺序结构存储的二叉树的非递归遍历,C语言二叉树的非递归遍历实例分析...

本文以实例形式讲述了C语言实现二叉树的非递归遍历方法。是数据结构与算法设计中常用的技巧。分享给大家供大家参考。具体方法如下:先序遍历:void preOrder(Node *p) //非递归{if(!p) return;stack s;Node *t;s.push(p);while(!s.empty()){ts.top();prin…

c语言标识符的文法表示,第三章文法和语法[lly]3.ppt

第三章文法和语法[lly]3第3章文法和语言;1、语言;研究程序设计语言及研究的三个方面: 每个程序构成的规律(语法 Syntax)每个程序的含义(语义 Semantics)每个程序和使用者的关系(语用 Pragmatics)语言三个方面定义:语法 -- 表示构成语言句子的各个记号之间…