使用MATLAB对语音信号进行采集以及读写的方法

这篇具有很好参考价值的文章主要介绍了使用MATLAB对语音信号进行采集以及读写的方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、语音信号特点
20世纪90年代以来,语音信号采集与分析在实用化方面取得了许多实质性的研究进展。其中,语音识别逐渐由实验室走向实用化。一方面,对声学语音学统计模型的研究逐渐深入,鲁棒的语音识别、给予语音段的建模方法及隐马尔可夫模型与人工神经网络的结合成为研究的热点。另一方面,为了语音识别实用化的需要,讲者自适应、听觉模型、快速搜索识别算法以及进一步的语音模型研究等课题备受关注。
通过对大量语音信号的观察和分析发现,语音信号主要有下面两个特点:
1)在频域内,语音信号的频谱分量主要集中在300~3400Hz的范围内。利用这个特点,可以用一个防混叠的带通滤波器将此范围内的语音信号频率分出,然后按8kHz的采样率对语音信号进行采样,就可以得到离散的语音信号。
2)在时域内,语音信号具有“短时性”的特点,即在总体上,语音信号的特征是随着时间而变化的,但在一段较短的时间间隔内,语音信号保持平稳。在浊音段表现出周期信号的特征,在清音段表现出随机噪声的特征。

二、语音信号采集的基本原理
为了将原始模拟语音信号变为数字信号,必须经过采样和量化两个步骤,从而得到时间和幅度上均为离散的数字信号语音。采样是信号在时间上的离散化,即按照一定时间间隔△t在模拟信号x(t)上逐点采取其瞬时值。采样时必须要注意满足奈奎斯特定理,即采样频率f必须以高于受测信号的最高频率两倍以上的速度进行取样,才能正确地重建信号。
在Windows环境下,可以使用Windows自带的录音机录制语音文件,下图是基于PC的语音信号采集过程,声卡可以完成语音波形的A/D转换,获得WAV文件。通过Windows录制的语音信号,一方面可以为后续实验储备原始语音,另一方面可以与通过其他方式录制的语音进行比对,比如使用MATLAB自带的audiorecorder 函数进行录制。

使用MATLAB对语音信号进行采集以及读写的方法

三、基于MATLAB的语音信号采集与读写方法
MATLAB将声卡作为对象处理,其后的一切操作都不与硬件直接相关,而是通过对该对象的操作来作用于硬件设备(声卡)。操作时首先要对声卡产生一个模拟输入对象,并给模拟输入对象添加一个通道设置采样频率,然后就可以启动设备对象,开始采集数据,采集完成后停止对象并删除对象。常用的相关MATLAB函数包括audiorecorder、audioread、audiowrite、play、sound等。

案例、MATLAB采集语音信号,把采集到的语音信号进行播放,储存在电脑文件当中,并画出其相应的时域图,程序如下:

%语音采集与读写实验
fs=16000;                                   %采样频率
nBits = 8;
duration=2;                                %时间长度
n=duration*fs;
t=(1:n)/fs;
% fprintf('Begin by pressing any key %gseconds:\n',duration);pause;
% fprintf('recording...\n');
y=audiorecorder(fs,nBits,2);
% ymax=max(abs(y));                         %归一化
% y=y/ymax;
disp('Start speaking.')
%开始录制声音
recordblocking(y, 2);
disp('End of Recording.');

% 回放录音数据
play(y);
% 获取录音数据
myRecording = getaudiodata(y);
% fprintf('Finish\n');
% fprintf('Press any key to play audio:\n');pause;
file_name=strcat('mask.wav');
audiowrite(file_name,myRecording,fs);
figure(1);
axis([0 2 -1 1]);
plot(t,myRecording);
xlabel('time/s');

ylabel('amplitude');

参考文献:语音信号处理实验教程;梁瑞宇、赵力、魏昕(编著) 文章来源地址https://www.toymoban.com/news/detail-448434.html

到了这里,关于使用MATLAB对语音信号进行采集以及读写的方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用matlab进行回声处理(三重回声)-数字信号处理课设

    1.录制一段声音信号,作为原音频信号,生成频域与时域图形,观察与分析其时域 与频域图形。 2.对该音频信号进行时域处理,并且实现对该声音信号添加第一层回声。 3.对该音频信号再继续一次进行时域处理,实现对该声音信号添加第二层回声。 4.将三段音频信号进行合成

    2024年02月03日
    浏览(46)
  • 基于matlab的语音信号处理

    摘要 利用所学习的数字信号处理知识,设计了一个有趣的音效处理系统,首先设计了几种不同的滤波器对声音进行滤波处理,分析了时域和频域的变化,比较了经过滤波处理后的声音与原来的声音有何变化。同时设计实现了语音的倒放,变速播放,回响,音调转换等处理效果

    2024年02月08日
    浏览(45)
  • 【信号变化检测】使用新颖的短时间条件局部峰值速率特征进行信号变化/事件/异常检测(Matlab代码实现)

    💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码及文献 文献来

    2024年02月07日
    浏览(59)
  • 代码片记录-使用DDC对两路信号相位差进行求取(matlab实现)

    参考链接: 1、FPGA综合系统设计(七)基于DDC的两路信号相位差检测_fpga相位测量-CSDN博客 (真的太牛了) 2、双通道中频信号数字下变频及相位差估计(FPGA)_根据 i、q 两路信号以如何求出中频信号的频率和相位差-CSDN博客 (通过这个篇博客注意到了反正切的值域问题,里面

    2024年04月14日
    浏览(36)
  • 【使用维纳滤波进行信号分离】基于维纳-霍普夫方程的信号分离或去噪维纳滤波器估计(Matlab代码实现)

     💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码实现 维纳滤

    2024年02月14日
    浏览(50)
  • 统计信号处理-使用维纳滤波和逆滤波对图像进行恢复-matlab仿真-附代码

    题目 将维纳滤波应用于图像恢复,假设退化图像为一加性高斯白噪声污染的图像,试用逆滤波方法和维纳滤波方法恢复图像,并比较其效果;查阅文献,尝试使用迭代维纳滤波的方法进一步提高效果,注意构建正确的修正项。 逆滤波用于图像恢复简介 逆滤波法是一种从添加

    2024年02月05日
    浏览(50)
  • 【语音识别】BP神经网络语音特征信号分类【含Matlab源码 2338期】

    获取代码方式1: 完整代码已上传我的资源:【语音识别】基于matlab BP神经网络语音特征信号分类【含Matlab源码 2338期】 点击上面蓝色字体,直接付费下载,即可。 获取代码方式2: 付费专栏Matlab语音处理(初级版) 备注: 点击上面蓝色字体 付费专栏Matlab语音处理(初级版

    2024年02月21日
    浏览(44)
  • matlab实现语音信号的频域分析及应用

    1.语音信号本质上是非平稳信号。但我们可以假设语音信号在一个短时间内是平稳的,这样我们用稳态分析方法处理非平稳信号。应用在傅立叶分析就是短时傅立叶变换。 语音的频域分析:包括语音信号的频谱、功率谱、倒频谱、频谱包络等. 常用频域分析方法:带通滤波器

    2024年02月11日
    浏览(40)
  • 利用matlab时频域语音信号的分析与处理

    鱼弦:CSDN内容合伙人、CSDN新星导师、51CTO(Top红人+专家博主) 、github开源爱好者(go-zero源码二次开发、游戏后端架构 https://github.com/Peakchen) 利用Matlab进行时频域语音信号的分析与处理:原理详解 时频域分析是对信号在时间和频率两个维度上进行分析的方法。在语音信号处理

    2024年02月06日
    浏览(42)
  • 毕业设计-基于MATLAB的含噪语音信号降噪处理系统

    目录 前言 课题背景和意义 实现技术思路 一、设计思路 二、IIR 数字滤波器的设计原理 三、语音信号的采集、 含噪语音信号的分析处理 四、总结 实现效果图样例 最后     📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边

    2024年02月07日
    浏览(128)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包