這篇文章主要介紹“matlab怎么實(shí)現(xiàn)辨別男女聲”,在日常操作中,相信很多人在matlab怎么實(shí)現(xiàn)辨別男女聲問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”matlab怎么實(shí)現(xiàn)辨別男女聲”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊、網(wǎng)絡(luò)空間、營銷軟件、網(wǎng)站建設(shè)、官渡網(wǎng)站維護(hù)、網(wǎng)站推廣。
function man_or_woman(file) [x,fs]=audioread(file); % 讀入聲音文件 %======時域圖像====== 隨著時間聲音賦值震蕩圖 data=x(:,1); %取單聲道 n=0:length(x)-1; %建立一個信號等長的序列 time=n/fs; %建立時間序列,作為橫坐標(biāo) figure(1); %圖1:時域波形圖 plot(time,data); %作圖 title('音頻信號時域圖') %標(biāo)題 xlabel('時間/s'); %標(biāo)注橫坐標(biāo) ylabel('幅值'); %標(biāo)注縱坐標(biāo) grid on; %打開網(wǎng)格線 %=======頻域圖====== N=length(data); %取信號矩陣的長度 Y1=fft(data,N); %N點(diǎn)傅里葉變換 mag=abs(Y1); %取模 f=n*fs/N; %頻率序列 figure(2); %圖2:頻譜圖 plot(f(1:fix(N/2)),mag(1:fix(N/2))); title('音頻信號fft頻譜圖');%標(biāo)題 xlabel('頻率/Hz'); %標(biāo)注橫坐標(biāo) ylabel('幅度'); %標(biāo)注縱坐標(biāo) grid on; %打開網(wǎng)格線 %======基音頻率提取====== [~,index]=max(data); % 返回最大值 最大值索引 timewin=floor(0.015*fs); xwin=data(index-timewin:index+timewin); [y,~]=xcov(xwin); ylen=length(y); halflen=(ylen+1)/2 +30; yy=y(halflen: ylen); [~,maxindex] = max(yy); fmax=fs/(maxindex+30); disp([file,'基音頻率為 ', num2str(fmax), ' Hz']) %======通過基音頻率判斷男女聲====== if fmax<200; disp([file,' 是男聲文件']); else disp([file,' 是女聲文件']); end;
到此,關(guān)于“matlab怎么實(shí)現(xiàn)辨別男女聲”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
文章標(biāo)題:matlab怎么實(shí)現(xiàn)辨別男女聲
本文鏈接:http://vcdvsql.cn/article42/podshc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、企業(yè)建站、網(wǎng)站制作、定制開發(fā)、域名注冊、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)