0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MATLAB课程之第五章v3 文件操作(1)

通信工程师专辑 来源:未知 2023-12-07 10:45 次阅读

本章知识点非常实用,所以内容较多,这也是从理论走向实践的必经之路。离开了数据,你怎么进行实践操作?在计算机中,数据的形式就是文件!

五个部分!每个部分都涉及一种常用的文件!先来看常用的音频文件!大家都爱听音乐的吧!现在的耳机已经都是无线耳机了,我们早年用的是有线耳机,这一切的变化都要归功于通信技术芯片技术的发展啊!我们电子专业、通信专业的学生学的就是这个方面的技术!自豪吧?当然了!学好了就在这个领域好好发展,贡献力量吧!当然前提是学好技术先能养活自己。数字世界的未来需要大家的参与!未来肯定是年青人来创造!

音频文件也有多种格式!

目前,WAV格式比较常用!

什么是采样率和量化位数?这些知识都和数字信号处理有关联!大家在大三就要学这门课了!大学课程中的难度天花板!

注意:函数名称发生了变化!

注意:因为 MATLAB 版本的更新问题,在2020a及以后版本中,原函数wavread( ) 要换成函数 audioread( ) 。

两函数的调用格式存在差别,可以在 MATLAB 命令窗口输入 help audioread ,可以了解区别。学会使用help是掌握MATLAB的必由路径。

如果在文件里面加入噪声,那么听起来会有什么变化呢?噪声怎么加?randn函数就可模拟噪声!awgn函数也能完成加入噪声的功能。那么如何能够倍数播放音乐呢?

为什么讲音频文件?

音频信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴的学科,是目前发展最为迅速的信息科学研究领域的核心技术之一。通过声音传递信息是人类最重要、最有效、最常用和最方便的交换信息形式。同时,声音也是人与机器之间进行通信的重要工具,它是一种理想的人机通信方式,因而可为信息处理系统建立良好的人机交互环境,进一步推动计算机和其他智能机器的应用,提高社会的信息化程度。

语音信号是基于时间轴上的一维数字信号,在这里主要是对语音信号进行频域上的分析。在信号分析中,频域往往包含了更多的信息。对于频域来说,大概有8种波形可以让我们分析:矩形方波,锯齿波,梯形波,临界阻尼指数脉冲波形,三角波,余旋波,余旋平方波,高斯波。对于各种波形,我们可以用傅立叶变换进行分析,就是将时域的波形转化到频域结果。

语音信号处理是一门新兴的学科,同时又是综合性的多学科领域和涉及面很广的交叉学科。虽然从事这一领域研究的人员主要来自信号与信息处理及计算机应用等学科,但是它与语音学、语言学、声学、认知科学、生理学、心理学等许多学科也有非常密切的联系。

在上世纪60年代,计算机的广泛应用推动了语音识别技术的发展,出现了多种语音信号分析方法,提出了动态规划(DP)和线性预测分析(LP)技术。其中后者较好地解决了语音信号产生模型的问题,对语音识别的发展产生了深远影响。70年代,语音识别理论取得了突破。LP技术得到进一步发展,动态时间归正技术(DTW)基本成熟,特别是提出了矢量量化(VQ)和隐马尔可夫模型(HMM)理论。在实践上,实现了基于线性预测倒谱和DTW技术的特定人孤立语音识别系统。80年代,HMM模型和人工神经元网络(ANN)成功应用于实践,并于1988年由CMU研制出了非特定人、大词汇量、连续语音识别系统。它可以理解由1000个单词构成的4200个句子,被认为是语音识别历史上的一个里程碑。HMM模型的广泛应用应归功于AT&T Bell实验室Rabiner等科学家的努力,他们把原本晦涩难懂的HMM纯数学模型工程化,从而为更多研究者了解和认识。ANN和HMM模型建立的语音识别系统,性能相当。进入90年代,随着多媒体时代的来临,迫切要求语音识别系统从实验室走向实用。现在,人工智能语音系统已经进入了社会的方方面面!

建议大家做一下这样的测试!

对音频信号进行采集,然后使用MATLAB中的wavread函数对音频文件进行信号读取,并使用sound函数对信号进行播放,重点用于和对其添加噪声后的新信号进行对比。如何添加噪声?对音频文件读取出的信号进行加噪声处理。使用MATLAB中的相关命令。比如wgn、awgn。wgn用于产生高斯白噪声,awgn则用于在某一信号中加入高斯白噪声,也可直接用randn函数产生高斯分布序列。

扩展知识面!

在MATLAB中,有哪些音频处理方法呢?

  • 音频分析

在对音频信号进行处理之前,需要先对音频信号进行分析。音频分析的目的是了解音频信号的性质,如幅频特性(即信号在不同频段上信号的强度变化)和谱密度等。常用的音频分析方法有:

(1)时域分析:使用时域分析方法可以获得信号的波形特性,如声音的语调和节奏等。这种方法通常直接分析音频信号的时间属性,例如音频信号的波形、功率、能量以及峰值等。

(2)频域分析:使用频域分析方法可以获得音频信号的频域特性,如频率成分、谱密度和频率响应等,这些都有助于了解音频信号的特征。

  • 音频信号滤波

音频信号滤波是指使用滤波器对音频信号进行处理,以去除噪音、增强信号、调整频率响应等。

主要有以下几种滤波方式:

(1)低通滤波器:通常是用于去除高频噪声,保留低频信号,也可以被用来过滤高频随机振动,并平滑低频的形状。

(2)高通滤波器:通常是用于去除低频噪声,保留高频信号,也可以用来过滤低频随机振动,而保留高频的形状。

(3)带通滤波器:用于去除不良频段信号,并提取出希望得到的通带内的信号。

(4)带阻滤波器:也称为不仅通滤波器,用于去除在不希望得到的通带内信号,并弱化不良频段的信号。

  • 音乐合成

音乐合成可以通过各种方式来实现,在MATLAB中主要使用合成器、算法来进行音乐合成。

(1)音色合成:可以使用不同类型的信号(例如正弦信号、方波、sinc函数等),然后用它来重构所需的声音,并混合必要的频谱(频率成)分)。

(2)波场合成:将多个声波波形混合成单个波开形,通过加性混合器可以将多个声波波形添加在一起,形成单个混合的波形。

  • 音频信号压缩

音频信号压缩是音频处理过程中必不可少的过程之一,它可以减小音频文件的大小,并增加存储空间的利用率。在MATLAB中,音频信号压缩可以通过以下几种方式来实现:

(1)动态范围压缩(Dynamic Range CompressionDRC):用于减小音频信号的动态范围,提高信号的平均功率,并使音频信号更具吸引力和响亮。

(2)均衡器(Equalizer,EQ):用于增强或减弱音频信号的各个频率段。这通常是通过使用滤波器来实现的。

(3)无损压缩:无损压缩可以保留音频信号的所有信息,以最小化文件存储空间。

  • 音频降噪

音频降噪是一种通过降低噪音水平来提高听音体验的技术。常见的音频降噪技术有基于时间的降噪与基于频率的降噪两种。在MATLAB中,可以使用以下工具箱和方法来实现音频降噪。

(1)自适应降噪器(Adaptive Noise CancellingANC):自适应降噪器通过对录制的音频数据进行过滤,消除来自环境噪音和杂音的干扰信号。

(2)波形补偿技术(Waveform Synthesis):波形补偿技术利用反馈控制方式,将零输出与期望输出进行比较,校准信号输出,外部干扰可以自动补偿或者消除。

(3)经验模态分解(EMD)、小波降噪技术(Wavelet Denoising)除噪:这两种方法可以用数学和数字信号处理来区分音频信号特征中的噪声和信号,然后消除噪声信号,降低杂音的影响。

这么多内容?是的,什时候才能开始写这方面的程序呢?等学了《信号与系统》、《数字信号处理》就可以开始尝试了!到时候,大家有兴趣,可以找我来指导!

回顾一下函数的内容!

这是一个系列视频既带着大家扩展思维,也带着大家深入学习函数!欢迎大家在视频下面留言评论!教学相长!思维引导的内容会让你大开眼界!这是第一天的讲解!

再来看看课堂上的讲解视频!

第二次课讲了音频采样信号结合滤波的过程,体现了知识的实用性!未完,待续!


修订记录

20230208 完成初稿;

20230829 修订内容v2;

20231206 修订内容v3;


原文标题:MATLAB课程之第五章v3 文件操作(1)

文章出处:【微信公众号:通信工程师专辑】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 通信网络
    +关注

    关注

    20

    文章

    1993

    浏览量

    51552

原文标题:MATLAB课程之第五章v3 文件操作(1)

文章出处:【微信号:gh_30373fc74387,微信公众号:通信工程师专辑】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    MATLAB课程之第五章v3 文件操作(4)

    继续讲解! 在数字信号处理领域,很多数据的保存形式都是文本文件!有了数据,这样就可以在计算机中完成半实物仿真了!什么是半实物仿真?就是仿真出来的结果基本和产品一致!那还有什么仿真?理论仿真!这个阶段
    的头像 发表于 12-11 08:20 255次阅读
    <b class='flag-5'>MATLAB</b><b class='flag-5'>课程之</b><b class='flag-5'>第五章</b><b class='flag-5'>v3</b> <b class='flag-5'>文件</b><b class='flag-5'>操作</b>(4)

    MATLAB课程之第五章v3 文件操作(3)

    继续讲解! 视频文件一般都很大! 处理起来很耗内存! 大家用过剪影这个软件 吗? 这种 软件必然 包含了大量的视频文件函数 !那我们就先在MATLAB中去感受类似函数的作用吧。 读取文件
    的头像 发表于 12-10 08:20 244次阅读
    <b class='flag-5'>MATLAB</b><b class='flag-5'>课程之</b><b class='flag-5'>第五章</b><b class='flag-5'>v3</b> <b class='flag-5'>文件</b><b class='flag-5'>操作</b>(3)

    MATLAB课程之第五章v3 文件操作(2)

    后,真的希望在医学方面能有所贡献!所以,现在就积累!扩展一下知识面吧! MATLAB的图像处理工具箱(image processing toolbox)自带了读取医学图像DICOM文件的函数dicomread、dicominfo等,如果MRI影像数据的扫描参数丢失(本文以
    的头像 发表于 12-08 12:25 252次阅读

    MATLAB课程之第四章v3 程序设计(1)

    如何设计。用MATLAB肯定要涉及编程,通过编程来解决问题。最开始学习的时候已经了解了什么是程序吧,然后一步一步深入!当然本章会强调编程的规范性!!! 给出课程的PPT, 帮助同学们消化! 也帮助同学们复习! 开始讲课。 新版内容来了! 同学们是不
    的头像 发表于 11-29 08:10 209次阅读

    MATLAB课程之第三章v3 M文件知识(5)

    函数的有关知识。下面的内容也可以让大家了解一下行业的应用,之前讲过MATLAB可以在哪些行业使用,通过这些函数的了解也能让大家体会到MATLAB在行业中会起到的作用。我本人已经在生物信号处理和智能家居、数据统计方面做出了很多实际项目。这些项目对大家工程
    的头像 发表于 11-28 08:10 211次阅读

    MATLAB课程之第二章v3 MATLAB绘图功能(3)

    知晓, 就应该加上一些必要的注释!xlabel等函数就能做到这些作用!怎么用?很简单!一句话的事情!关键是多用!熟能生巧! 致谢! 讲到这里,要感谢一位东南大学的网友! 他现在是研一在读研究生!跟着我在学MATLAB基础课程和数字
    的头像 发表于 11-16 16:35 206次阅读
    <b class='flag-5'>MATLAB</b><b class='flag-5'>课程之</b>第二章<b class='flag-5'>v3</b> <b class='flag-5'>MATLAB</b>绘图功能(3)

    MATLAB课程之第二章v3 MATLAB绘图功能(1)

    内容是高中数学所涉及的知识,希望同学们能在matlab中熟练使用。考试中会涉及这些知识点哦,还不记住用法吗?之前在课堂上演示了画图的基本函数plot,现在我们就一起来学习第二章的知识。 2023年7月,文章更新至v2版本。有哪些不同呢?慢慢揭晓。 2023年10月,课程
    的头像 发表于 11-12 16:00 270次阅读
    <b class='flag-5'>MATLAB</b><b class='flag-5'>课程之</b>第二章<b class='flag-5'>v3</b> <b class='flag-5'>MATLAB</b>绘图功能(1)

    MATLAB课程之第一章v3 MATLAB基础知识(4)

    继续给出课程的PPT,帮助同学们消化!也帮助同学们复习! 为什么第一章要分四次课来讲呢?大一的学生刚开始接触编程的时候,我需要耐心培养他们编程的好习惯。知识点需要很细致的讲,自然也就需要慢慢讲解
    的头像 发表于 10-16 20:15 248次阅读

    MATLAB课程之第一章v3 MATLAB基础知识(1)

    2018年,本人在学院里第一次开始讲本门课程。做为工科的本科生,如果不能学好一门编程语言,以后无论是到工作岗位还是继续读研深造,那么都将面临很多囧境! MATLAB的出现是很多工科人的福音,太有帮助
    的头像 发表于 10-11 16:10 195次阅读
    <b class='flag-5'>MATLAB</b><b class='flag-5'>课程之</b>第一章<b class='flag-5'>v3</b> <b class='flag-5'>MATLAB</b>基础知识(1)

    MATLAB课程之绪论v3(2)

    。最和课程相关的是计算机编程语言的发展过程,也就是计算机语言的历史!汇编语言的使用让人感到编程的痛苦。后来“高级语言”出现了,C语言就是“高级语言”中的典型代表,当然还有其他的比如FORTRAN、C++、JAVA、R、MATLAB、Python等等。
    的头像 发表于 10-10 16:00 243次阅读
    <b class='flag-5'>MATLAB</b><b class='flag-5'>课程之</b>绪论<b class='flag-5'>v3</b>(2)

    MATLAB课程之第五章v2 文件操作(4)

    在数字信号处理领域,很多数据的保存形式都是文本文件!有了数据,这样就可以在计算机中完成半实物仿真了!什么是半实物仿真?就是仿真出来的结果基本和产品一致!那还有什么仿真?理论仿真!这个阶段的仿真只是
    的头像 发表于 09-02 10:50 306次阅读
    <b class='flag-5'>MATLAB</b><b class='flag-5'>课程之</b><b class='flag-5'>第五章</b>v2 <b class='flag-5'>文件</b><b class='flag-5'>操作</b>(4)

    MATLAB课程之第五章v2 文件操作(3)

    前的重修课程,遇到了闻所未闻的事情。过程如下:matlab课程的上机考试,出了上机题(本题目需要使用matlab的reshape和sort函数,六行语句即可完成!或者只用sort函数结
    的头像 发表于 08-31 15:25 267次阅读
    <b class='flag-5'>MATLAB</b><b class='flag-5'>课程之</b><b class='flag-5'>第五章</b>v2 <b class='flag-5'>文件</b><b class='flag-5'>操作</b>(3)

    MATLAB课程之第五章v2 文件操作(2)

    所贡献!所以,现在就积累!扩展一下知识面吧! MATLAB的图像处理工具箱(image processing toolbox)自带了读取医学图像DICOM文件的函数dicomread
    的头像 发表于 08-30 00:10 329次阅读
    <b class='flag-5'>MATLAB</b><b class='flag-5'>课程之</b><b class='flag-5'>第五章</b>v2 <b class='flag-5'>文件</b><b class='flag-5'>操作</b>(2)

    MATLAB课程之第五章v2 文件操作(1)

    本章非常实用,所以内容较多,这也是从理论走向实践的必经之路。离开了数据,你怎么进行实践操作?在计算机中,数据的形式就是文件! 五个部分! 每个部分都涉及一种常用的文件! 先来看常用的音频文件
    的头像 发表于 08-26 11:20 336次阅读

    MATLAB课程之第三章v2 M文件知识(1)

    ?M文件就是用于保存matlab源程序的文本文件,后缀名是.m,因此称为M文件。这个文件其实和 txt
    的头像 发表于 08-05 10:50 435次阅读
    <b class='flag-5'>MATLAB</b><b class='flag-5'>课程之</b>第三章v2 M<b class='flag-5'>文件</b>知识(1)