大连理工大学实验报告 学院(系): 电信 专业: 电子信息工程 班级: 电子1302 姓名: 曾昱 学号: 201311066 组: 实验时间: 实验室: 实验台: 指导教师签字: 成绩: 电话拨号音的合成与识别 一、实验目的和要求 电话拨号音合成的基本原理及识别的主要方法 利用 MATLAB 软件以及 FFT 算法实现对电话通信系统中拨号音的合成与识别 并进一步利用 MATLAB 中的图形用户界面 GUI 制作简单直观的模拟界面。 三、题目 1)产生拨号界面,显示播出的号码,产生电话拨号音 2)识别拨号音并显示在界面上 三、代码和运行结果 按键识别、产生拨号音: % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defi ned in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) n = [1:410]; d0 = sin(2*pi*697*n/8192) + sin(2*pi*1209*n/8192); space = zeros(1, 410); phone = [d0, space]; handles.numsig = [handles.numsig, phone]; num = get(handles.numbershow, String); newnum = strcat(num, 1); set(handles.numbershow, String, newnum); sound(d0,8192) guidata(hObject, handles); 删除键: % --- Executes on button press in pushbuttonf1. function pushbuttonf1_Callback(hObject, eventdata, handles) % hObject handle to pushbuttonf1 (see GCBO) % eventdata reserved - to be defi ned in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) num = get(handles.numbershow,String); %??????????? num = num(1:end-1);%???? handles.numsig = handles.numsig(1:end-820); set(handles.numbershow,String,num);%???? n=[1:410]; d11=sin(0.7217*n)+sin(0.9273*n); sound(d11,8192); %????????? guidata(hObject, handles); 拨出键,拨出号码后通过产生的序列识别拨出的号码: % --- Executes on button press in pushbuttonf2.?? function pushbuttonf2_Callback(hObject, eventdata, handles) % hObject handle to pushbuttonf2 (see GCBO) % eventdata reserved - to be defi ned in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) numtable = [1 2 3;4 5 6;7 8 9;* 0 #]; for i = 1:length(handles.numsig)/820 f = fft(handles.numsig((i-1)*820 +1:i*820), 8192);%???????? a = abs(f); fi nd(a(1:1000)==max(a(1:1000))) frequency(1) = fi nd(a(1:1000)==max(a(1:1000))); frequency(2) = 1000 + fi nd(a(1000:1700)==max(a(1000:1700))); if(frequency(1) < 730) row = 1; elseif(frequency(1) < 810) row = 2; elseif(frequency(1) < 900) row = 3; else row = 4; end if(frequency(2) < 1280) column = 1; elseif(frequency(2) < 1400) column = 2; else column = 3; end identifyNum(i) = numtable(row, column); end 结果: ? 图1-拨号界面 五、实验总结 接收端收到信号后,取出每位电话号码对应的正弦信号,进行fft变换后通过找幅度最大的频率来确 定这一位号码的行和列。从行和列到具体的这一位电话号码的数字,我是这样做的,建立一个号码 表,根据从信号频率得到的行数和列数来查表。 numtable = [1 2 3;4 5 6;7 8 9;* 0 ‘#’]; … ?????????? … identifyNum(i) = numtable(row, column);

展开阅读全文

matlab电话拨号音的合成与识别代码,实验报告 电话拨号音的合成与识别相关推荐

  1. matlab 2ask,(最新整理)基于MATLAB的2ASK和2FSK调制仿真(通信原理实验报告)

    <(最新整理)基于MATLAB的2ASK和2FSK调制仿真(通信原理实验报告)>由会员分享,可在线阅读,更多相关<(最新整理)基于MATLAB的2ASK和2FSK调制仿真(通信原理实 ...

  2. matlab编程实现levinson算法,音频处理Levinson-Durbin算法实验报告

    音视频信号处理实验报告 一.实验目地: (1).理解Levinson-Durbin 算法的迭代过程: (2).学会使用MATLAB 编写Levinson-Durbin 算法函数. 二.实验内容: Le ...

  3. matlab lti全响应,《LTI系统的响应——实验报告》.doc

    <LTI系统的响应--实验报告> 实 验 报 告 姓名:时间:2013年11月11日 实验名称:LTI系统的响应 一.??实验目的 1?熟悉连续时间系统的单位冲激响应.阶跃响应的意义及求解 ...

  4. python动物专家系统_动物识别专家系统 实验报告

    学 号 XXXXX 姓 名 XXXXX 实验名称 动物识别专家系统 实验目的 本实验的主要目的是熟练使用推理方法, 进行编程完成相应的功 能. 本次试验的预期功能是在系统可以像使用者提出问题, 然后系 ...

  5. 行人重识别 代码阅读(来自郑哲东 简单行人重识别代码到88%准确率)

    来自郑哲东 简单行人重识别代码到88%准确率 阅读代码 prepare.py 数据结构 部分代码 一些函数 model.py ClassBlock ResNet50 train.py 一些参数 使用f ...

  6. 【深度学习】手写数字识别Tensorflow2实验报告

    实验一:手写数字识别 一.实验目的 利用深度学习实现手写数字识别,当输入一张手写图片后,能够准确的识别出该图片中数字是几.输出内容是0.1.2.3.4.5.6.7.8.9的其中一个. 二.实验原理 ( ...

  7. 【深度学习】猫狗识别TensorFlow2实验报告

    实验二:猫狗识别 一.实验目的 利用深度学习实现猫狗动物识别,采用Kaggle提供的公开数据集,训练深度学习模型,对测试集猫狗中的图片准确分类.通过该实验掌握深度学习中基本的CV处理过程. 二.实验原 ...

  8. python二维码生成识别代码_Python学习案例之二维码生成识别

    前言 在 JavaWeb 开发中,一般使用 Zxing 来生成和识别二维码,但是,Zxing 的识别有点差强人意,不少相对模糊的二维码识别率很低.不过就最新版本的测试来说,识别率有了现显著提高. 对比 ...

  9. AI动物识别专家系统-实验报告

    1. 问题描述及实验要求 动物识别专家系统设计,并编程实现. //包含事实库和规则库 //查找与规则前提链中前提号相同的事实 //如果事实的断言为真则判断下一个前提,为假,则表示该规则不适合 //事实 ...

最新文章

  1. 【ios开发/Xcode】实现关键字检索
  2. php引擎文件php.ini优化参数
  3. C和指针之删除字符串第一次出现的子串
  4. [html] 说说你对短链接的理解,它有什么应用场景呢?
  5. 逆向透视表 python_Python实现数据的透视表
  6. C# WebService 基础实例
  7. Shell命令-系统信息及显示之free、cal
  8. C# winform 按钮 响应鼠标经过变换图片,如何处理?
  9. 66. 编写高效的 JavaScript
  10. 使用AD14创建异形PCB板
  11. SegNet安装、训练、测试
  12. ViolentMonkey暴力猴插件V2.13.0
  13. xlwings 安装及排错: DLL load failed while importing win32api
  14. 怎样为受惊吓的孩子叫魂
  15. 编程之路之数据库(十)- PDO详解
  16. php工程师具备技能,PHP工程师具备的技能及素质
  17. ai黑白棋_AI的黑白镜
  18. Java从入门到精通十一(javaIO流)
  19. The first interview for xiecheng
  20. U盘文件夹变成快捷方式解决方案

热门文章

  1. antd中的form表单 initialValue导致数据不更新问题
  2. Java反射机制大神必学系列之 ,高级与低级的差别在哪里?
  3. 安装和配置Tomcat
  4. 国内第一本micropython的书出版《机器人Python极客编程入门与实战》
  5. 在WebStorm里配置watcher实现编辑less文件时自动生成.map和压缩后的.css文件
  6. JPA的泛型DAO设计及使用
  7. MyBatis知多少(14)分散的数据库系统
  8. C# WinForm 技巧十: 开发工具
  9. Android 广播机制---BroadCast
  10. 【SCOI 2009】生日快乐