1. matlab如何将一段语音完全倒序播放,为什么flipud函数不行
flipud((1:6)')是可以的。
flipud本身用于矩阵上下颠倒
fliplr(1:6)也是可以的
fliplr本身用具矩阵左右颠倒
2. 用matlab处理语音信号,用到kaiser窗函数 kaiser(N,BTA),其中的N和BTA是什么意思
把datareport 的datasource设置成和datagrid一样的adodc就行 按钮命令 set datareport1.datasource=adodc1
是在工程下面,和部件一样是工程的子命令。\r\n而且datareport不一定非要data environment的可以脱离数据环境单独使用的\r\n具体方法是把一个recordset对象作为数据源 \r\n2新建工程\r\n\r\n选数据工程
1、Data Report使用数据库中的记录生成报表。要使用它:
2、配置一个数据源,例如Microsoft数据环境,以访问数据库。
3、设定DataReport对象的DataSource属性为数据源。
4、设定DataReport对象的DataMember属性为数据成员。
5、右键单击设计器,并单击“检索结构”。
6、向相应的节添加相应的控件。
7、为每一个控件设定DataMember和DataField属性。
3. matlab实现语音转换
不管是语音,还是图片,基本是都是一串数据(同意这个观点?)
好,既然是这样,我们可以通过fft函数,转到频域下。
在频域下面,可以进行各种运算。
比如说给某些频率的声音进行molation等(就是你所指的转换吧?)
4. Matlab中关于语音信号的程序问题,希望高手解答下,非常感谢!
framelength不是一个matlab函数,也许是数据库方面的吧,不过依照您给的这些,这里不用考虑那么多,它在这里只是作为一个变量,即数据的长度为8,第一个for中i的值在1到n*m之间,且步长为1,即1,2,3,4……n*m; 第二个for就是j取1,2,3,4,5,6,7,8;最后一句我感觉是不是抄错了?…………当i=1时,让j分别取1到8,得到s1(1)=s(1);s1(2)=s(2);
s1(3)=s(3);s1(4)=s(4);s1(5)=s(5);s1(6)=s(6);s1(7)=s(7);
s1(8)=s(8);然后另i=2,得s1(1)=s(9);s1(1)=s(10);s1(1)=s(11);
s1(1)=s(12);;s1(1)=s(13);s1(1)=s(14);s1(1)=s(15);
s1(1)=s(16)…………以此继续,这不断的给s1(1)到s(8)赋值,如果题目是这样的话,没有什么意义了,那这样的话,最后一步就是算s1(1)=s((n*m-1)*8+1);
s1(1)=s((n*m-1)*8+2);s1(1)=s((n*m-1)*8+3);s1(1)=s((n*m-1)*8+4)
s1(1)=s((n*m-1)*8+5);s1(1)=s((n*m-1)*8+6);s1(1)=s((n*m-1)*8+7)
s1(1)=s((n*m-1)*8+8)那么前面那些都没用了,这么一个for的双重循环根本就不需要了;
可以改为for j=1:8 s1(j)=s((n*m-1)*8+j)
你看看是不是抄错了,不懂的话再问我,谢谢
5. 用MATLAB对语音信号进行处理时总是出现说输入的语音必须是向量怎么办,如何将矩阵转化为向量
你看你一开始读入的[I ,Fs,bits]= wavread('wei.wav');其中的I是不是矩阵,如果是,那后面[S,F,T] = spectrogram(I,N,N/2,N); 就是对矩阵做处理,如果这个函数不支持矩阵,你只能一行一行的做。
6. 请教 语音信号的频谱搬移 用MATLAB 编程
时域信号乘以exp(i*w0*n)就行了,向量长度要匹配,用点乘
7. 我想做一个基于MATLAB的智能语音系统,怎样在MATLAB GUI界面里弄一个录音功能
利用matlab的音频信号处理工具箱,可以实现声音的录制和播放。
录音函数wavrecord语法为:
y=wavrecord(n,fs,channel,dataType);
其中
n为采样点数,fs为采样频率,channel(通常取1或者2)为录音通道数,dataType(例如double,single,int16,uint8)是采样点的数据类型。
例子:
fs=16000; %取样频率
ration=2; %录音时间
fprintf('Press any key to start %g seconds of recording...\n',ration);
pause;
fprintf('Recording...\n');
y=wavrecord(ration*fs,fs); %ration*fs 是总的采样点数
fprintf('Finished recording.\n');
fprintf('Press any key to play the recording...\n');
pause;
wavplay(y,fs);
将上述代码保存为record01.m文件,在matlab命令行下输入刚才保存的文件名即可。
运行结果如下图: