一、引言
自计算机诞生以来,通过语音与计算机交互一直是人类的梦想,随着计算机软硬件和信息技术的飞速发展,人们对语音识别功能的需求也更加明显和迫切。语音识别技术就是让机器通过识别和理解过程把人类的语音信号转变为相应的文本或命令的技术,属于多维模式识别和智能计算机接口的范畴。传统的键盘、鼠标等输入设备的存在大大妨碍了系统的小型化,而成熟的语音识别技术可以辅助甚至取代这些设备。在PDA、智能手机、智能家电、工业现场、智能机器人等方面语音识别技术都有着广阔的前景。本文使用Matlab软件对数字音频0-9的识别进行了系统设计。通过计算机声卡读取记录个人语音信息并建立相关的语音数据库,基于Matlab的GUI设计了相关的可视化图形界面,同时该系统可以实现语音录入、播放、以及导出音频的基本功能,在此基础上可对录入的音频进行端点检测、特征提取、语音识别的功能。完整代码及说明文档获取加Q1746954512
二、流程
三、GUI界面
四、部分代码
function varargout = dsp(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @dsp_OpeningFcn, ...
'gui_OutputFcn', @dsp_OutputFcn, ...
'gui_LayoutFcn', [], ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function dsp_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
% 初始化
handles.Sample=[]; % 初始化样本为空
handles.CSample=[]; % 初始化样本副本
handles.volume=0; % 初始化音量为0
handles.Fs=0; % 初始化采样率
if (exist('speech_database.mat','file')==2)
load('speech_database.mat','-mat');
handles.data=data;
c=data2cell(handles.data);
else
c=cell(0,0);
end
% Choose default command line output for myGUI
handles.output = hObject;
% 初始化文本框句柄
handles.textBox = hObject.findobj('Tag', 'textBox');
handles.progressTextBox = hObject.findobj('Tag', 'progressTextBox');
% Update handles structure
guidata(hObject, handles);
function varargout = dsp_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
function uibuttongroup1_SelectionChangedFcn(hObject, eventdata, handles)
function record_radiobutton_Callback(hObject, eventdata, handles)
function file_radiobutton_Callback(hObject, eventdata, handles)
function filepath_edit_Callback(hObject, eventdata, handles)
function filepath_edit_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function fs_popupmenu_Callback(hObject, eventdata, handles)
function fs_popupmenu_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end