亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? fxrapt.m

?? 這個函數提供了一種基音頻率檢測算法
?? M
?? 第 1 頁 / 共 2 頁
字號:
function [fx,tt]=fxrapt(s,fs,mode);
%FXRAPT RAPT pitch tracker [FX,VUV]=(S,FS)
%
% Input:   s(ns)      Speech signal
%          fs         Sample frequency (Hz)
%          mode       'g' will plot a graph [default if no output arguments]
%
% Outputs: fx(nframe)     Larynx frequency for each fram,e (or NaN for silent/unvoiced)
%          tt(nframe,3)  Start and end samples of each frame
%
% Plots a graph if no outputs are specified showing lag candidates and selected path
%

% Bugs/Suggestions:
%   (1) Include backward DP pass and output the true cost for each candidate.
%   (2) Add an extra state to distinguish between voiceless and silent
%   (3) N-best DP to allow longer term penalties (e.g. for frequent pitch doubling/halving)

% The algorithm is taken from [1] with the following differences:
%
%      (a)  the factor AFACT which in the Talkin algorithm corresponds roughly
%           to the absolute level of harmonic noise in the correlation window. This value
%           is here calculated as the maximum of three figures:
%                   (i) an absolute floor set by PP.rapt_absnoise
%                  (ii) a multiple of the peak signal set by PP.rapt_signoise
%                 (iii) a multiple of the noise floor set by PP.rapt_relnoise
%      (b) The LPC used in calculating the Itakura distance uses a Hamming window rather than
%          a Hanning window.
%
% A C implementation of this algorithm by Derek Lin and David Talkin is included as  "get_f0.c"
% in the esps.zip package available from http://www.speech.kth.se/esps/esps.zip under the BSD
% license.
%
% Refs:
%      [1]   D. Talkin, "A Robust Algorithm for Pitch Tracking (RAPT)"
%            in "Speech Coding & Synthesis", W B Kleijn, K K Paliwal eds,
%            Elsevier ISBN 0444821694, 1995

%      Copyright (C) Mike Brookes 2006
%      Version: $Id: fxrapt.m,v 1.2 2006/07/28 07:41:25 dmb Exp $
%
%   VOICEBOX is a MATLAB toolbox for speech processing.
%   Home page: http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%   This program is free software; you can redistribute it and/or modify
%   it under the terms of the GNU General Public License as published by
%   the Free Software Foundation; either version 2 of the License, or
%   (at your option) any later version.
%
%   This program is distributed in the hope that it will be useful,
%   but WITHOUT ANY WARRANTY; without even the implied warranty of
%   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
%   GNU General Public License for more details.
%
%   You can obtain a copy of the GNU General Public License from
%   ftp://prep.ai.mit.edu/pub/gnu/COPYING-2.0 or by writing to
%   Free Software Foundation, Inc.,675 Mass Ave, Cambridge, MA 02139, USA.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

s=s(:); % force s to be a column
if nargin<3
    mode=' ';
end
doback=0;   % don't do backwards DP for now

% read in parameters

PP=voicebox;
f0min=PP.rapt_f0min;            % Min F0 (Hz)                               [50]
f0max=PP.rapt_f0max;            % Max F0 (Hz)                               [500]
tframe=PP.rapt_tframe;          % frame size (s)                            [0.01]
tlpw=PP.rapt_tlpw;              % low pass filter window size (s)           [0.005]
tcorw=PP.rapt_tcorw;            % correlation window size (s)               [0.0075]
candtr=PP.rapt_candtr;          % minimum peak in NCCF                      [0.3]
lagwt=PP.rapt_lagwt;            % linear lag taper factor                   [0.3]
freqwt=PP.rapt_freqwt;          % cost factor for F0 change                 [0.02]
vtranc=PP.rapt_vtranc;          % fixed voice-state transition cost         [0.005]
vtrac=PP.rapt_vtrac;            % delta amplitude modulated transition cost [0.5]
vtrsc=PP.rapt_vtrsc;            % delta spectrum modulated transition cost  [0.5]
vobias=PP.rapt_vobias;          % bias to encourage voiced hypotheses       [0.0]
doublec=PP.rapt_doublec;        % cost of exact doubling or halving         [0.35]
absnoise=PP.rapt_absnoise;      % absolute rms noise level                  [0]
relnoise=PP.rapt_relnoise;      % rms noise level relative to noise floor   [2.0]
signoise=PP.rapt_signoise;      % ratio of peak signal rms to noise floor   [0.001]
ncands=PP.rapt_ncands;          % max hypotheses at each frame              [20]
trms=PP.rapt_trms;              % window length for rms measurement         [0.03]
dtrms=PP.rapt_dtrms;            % window spacing for rms measurement        [0.02]
preemph=PP.rapt_preemph;        % s-plane position of preemphasis zero      [-7000]
nfullag=PP.rapt_nfullag;        % number of full lags to try (must be odd)  [7]

% derived parameters (mostly dependent on sample rate fs)

krms=round(trms*fs);            % window length for rms measurement
kdrms=round(dtrms*fs);          % window spacing for rms measurement
rmswin=hanning(krms).^2;
kdsmp=round(0.25*fs/f0max);
hlpw=round(tlpw*fs/2);          % force window to be an odd length
blp=sinc((-hlpw:hlpw)/kdsmp).*hamming(2*hlpw+1).';
fsd=fs/kdsmp;
kframed=round(fsd*tframe);      % downsampled frame length
kframe=kframed*kdsmp;           % frame increment at full rate
rmsix=(1:krms)+floor((kdrms-kframe)/2); % rms index according to Talkin; better=(1:krms)+floor((kdrms-krms+1)/2)
minlag=ceil(fsd/f0max);
maxlag=round(fsd/f0min);        % use round() only because that is what Talkin does
kcorwd=round(fsd*tcorw);        % downsampled correlation window
kcorw=kcorwd*kdsmp;             % full rate correlation window
spoff=max(hlpw-floor(kdsmp/2),1+kdrms-rmsix(1)-kframe);  % offset for first speech frame at full rate
sfoff=spoff-hlpw+floor(kdsmp/2); % offset for downsampling filter
sfi=1:kcorwd;                   % initial decimated correlation window index array
sfhi=1:kcorw;                   % initial correlation window index array
sfj=1:kcorwd+maxlag;
sfmi=repmat((minlag:maxlag)',1,kcorwd)+repmat(sfi,maxlag-minlag+1,1);
lagoff=(minlag-1)*kdsmp;        % lag offset when converting to high sample rate
beta=lagwt*f0min/fs;            % bias towards low lags
log2=log(2);
lpcord=2+round(fs/1000);        % lpc order for itakura distance
hnfullag=floor(nfullag/2);
jumprat=exp((doublec+log2)/2);  % lag ratio at which octave jump cost is lowest
ssq=s.^2;
csssq=cumsum(ssq);
sqrt(min(csssq(kcorw+1:end)-csssq(1:end-kcorw))/kcorw);
afact=max([absnoise^2,max(ssq)*signoise^2,min(csssq(kcorw+1:end)-csssq(1:end-kcorw))*(relnoise/kcorw)^2])^2*kcorw^2;

% downsample signal to approx 2 kHz to speed up autocorrelation calculation
% kdsmp is the downsample factor

sf=filter(blp/sum(blp),1,s(sfoff+1:end));
sp=filter([1 exp(preemph/fs)],1,s); % preemphasised speech for LPC calculation
sf(1:length(blp)-1)=[];         % remove startup transient
sf=sf(1:kdsmp:end);             % downsample to =~2kHz
nsf=length(sf);                 % length of downsampled speech
ns=length(s);                   % length of full rate speech

% Calculate the frame limit to ensure we don't run off the end of the speech or decimated speech:
%   (a) For decimated autocorrelation when calculating sff():  (nframe-1)*kframed+kcorwd+maxlag <= nsf
%   (b) For full rate autocorrelation when calculating sfh():  max(fho)+kcorw+maxlag*kdsamp+hnfllag <= ns
%   (c) For rms ratio window when calculating rr            :  max(fho)+rmsix(end) <= ns
% where max(fho) = (nframe-1)*kframe + spoff

nframe=floor(1+min((nsf-kcorwd-maxlag)/kframed,(ns-spoff-max(kcorw-maxlag*kdsmp-hnfullag,rmsix(end)))/kframe));

% now search for autocorrelation peaks in the downsampled signal

cost=zeros(nframe,ncands);      % cumulative cost
prev=zeros(nframe,ncands);      % traceback pointer
mcands=zeros(nframe,1);         % number of actual candidates excluding voiceless
lagval=repmat(NaN,nframe,ncands-1);    % lag of each voiced candidate
tv=zeros(nframe,3);             % diagnostics: 1=voiceless cost, 2=min voiced cost, 3:cumulative voiceless-min voiced
if doback
    costms=cell(nframe,1);
end

% Main processing loop for each 10 ms frame

for iframe=1:nframe       % loop for each frame (~10 ms)
    
    % Find peaks in the normalized autocorrelation of subsampled (2Khz) speech
    % only keep peaks that are > 30% of highest peak
    
    sff=sf((iframe-1)*kframed+sfj);
    sffdc=mean(sff(sfi));       % mean of initial correlation window length
    sff=sff-sffdc;              % subtract off the mean
    nccfd=normxcor(sff(1:kcorwd),sff(minlag+1:end));
    [ipkd,vpkd]=findpeaks(nccfd,'q');
    
    % Debugging: execute the line below to plot the autocorrelation peaks.
    % findpeaks(nccfd,'q'); xlabel(sprintf('Lag = (x+%d)*%g ms',minlag-1,1000*kdsmp/fs)); ylabel('Normalized Cross Correlation'); title (sprintf('Frame %d/%d',iframe,nframe));
    
    vipkd=[vpkd ipkd];
    vipkd(vpkd<max(vpkd)*candtr,:)=[];          % eliminate peaks that are small

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色www精品视频在线观看| 国产99久久久久| 亚洲欧美视频在线观看| 亚洲欧美偷拍三级| 丝袜亚洲另类欧美| 国产在线一区二区综合免费视频| 国产一区欧美一区| 色综合一区二区| 91精品一区二区三区久久久久久| 26uuu国产在线精品一区二区| 中文字幕欧美激情一区| 亚洲精品免费在线播放| 免费成人深夜小野草| 成人午夜激情影院| 在线观看91精品国产麻豆| k8久久久一区二区三区 | 在线播放/欧美激情| 欧美精品一区二区三区蜜桃| 亚洲三级在线播放| 久久精品久久精品| 色综合久久中文综合久久牛| 亚洲国产精品综合小说图片区| 一区二区成人在线视频| 久久99精品国产.久久久久| 97se亚洲国产综合自在线观| 日韩一区二区三区四区| 日韩一区在线播放| 久久国产精品第一页| 色综合天天综合给合国产| 91精品啪在线观看国产60岁| 久久99深爱久久99精品| 香蕉久久一区二区不卡无毒影院 | 欧美一级黄色大片| 在线观看不卡一区| 久久久久久99精品| 午夜精品久久久久久久99樱桃| 国产iv一区二区三区| 欧美丰满一区二区免费视频| 国产精品每日更新在线播放网址| 青娱乐精品视频| 91福利国产精品| 亚洲一区中文日韩| 国产在线麻豆精品观看| 欧美日韩国产高清一区| 亚洲欧美激情在线| 成人综合在线网站| 欧美sm美女调教| 三级不卡在线观看| 欧美在线免费观看亚洲| 国产精品久久久久婷婷| 国产一区欧美一区| 精品国产一区二区三区久久久蜜月| 亚洲一区在线观看视频| 不卡一二三区首页| 欧美国产国产综合| 国产河南妇女毛片精品久久久| 欧美一区二区三区在线看| 制服丝袜成人动漫| 亚洲一区二区在线免费看| av一区二区久久| 日本一区二区成人| 国产麻豆视频精品| 91精品国产色综合久久不卡蜜臀 | 欧美日韩在线三区| 亚洲色图.com| 99久久国产免费看| 国产精品久久久久久久久久久免费看 | 日韩在线一区二区三区| 欧美色倩网站大全免费| 一区二区三区中文字幕精品精品| 亚洲h动漫在线| 欧美亚洲免费在线一区| 一区二区在线免费观看| 99精品黄色片免费大全| 中日韩av电影| 高清免费成人av| 欧美激情资源网| 成人午夜免费视频| 成人午夜短视频| 欧美日韩免费电影| 调教+趴+乳夹+国产+精品| 欧美日韩国产影片| 日韩不卡一区二区| 日韩免费高清av| 欧美色男人天堂| www国产精品av| 国产精品123区| 中国色在线观看另类| aaa欧美色吧激情视频| 亚洲日穴在线视频| 欧美亚洲一区三区| 视频一区二区中文字幕| 日韩一级片在线播放| 精品系列免费在线观看| 国产亚洲精品免费| 99热精品一区二区| 日韩情涩欧美日韩视频| 国模冰冰炮一区二区| 久久久久久久久久久电影| 粉嫩aⅴ一区二区三区四区五区| 国产精品久久99| 欧美性色综合网| 日韩1区2区3区| 久久综合九色综合欧美亚洲| 国产99久久精品| 国产超碰在线一区| 国产清纯美女被跳蛋高潮一区二区久久w| 国产成人精品一区二| 中文字幕亚洲不卡| 欧美日韩中文字幕一区| 久久99在线观看| 中文字幕综合网| 欧美精品久久天天躁| 国产一区在线观看麻豆| 亚洲三级在线观看| 日韩欧美在线不卡| 成人午夜电影久久影院| 亚洲第一成人在线| 久久久久久久久蜜桃| eeuss鲁片一区二区三区| 午夜精品成人在线| 国产日韩欧美麻豆| 欧美日韩一区在线| 欧美日韩中文字幕一区| 日韩欧美一区中文| 一本色道久久综合狠狠躁的推荐| 日韩电影在线免费观看| 国产精品美女久久久久久久久| 欧美三级欧美一级| 成人深夜在线观看| 亚洲高清久久久| 中文久久乱码一区二区| 91.com在线观看| 国产日本亚洲高清| 91在线视频播放地址| 日韩高清电影一区| 自拍偷拍欧美激情| 欧美精品一区二区久久久| 在线观看一区日韩| 粉嫩av一区二区三区粉嫩| 蜜桃av一区二区三区电影| 亚洲图片激情小说| 精品福利av导航| 精品视频1区2区| www.亚洲激情.com| 久久国产精品无码网站| 亚洲自拍都市欧美小说| 中文字幕中文字幕在线一区| 日韩精品一区二区三区在线观看 | 一区二区三区久久| 久久久久久久久久久久久女国产乱| 久久97超碰色| 午夜精品久久久久久久| 亚洲欧美日韩一区| 欧美激情一区二区三区| 欧美大片一区二区| 欧美色中文字幕| 91视频一区二区三区| 国产福利一区二区三区视频在线| 日韩国产欧美视频| 亚洲国产aⅴ天堂久久| 激情久久五月天| 久久不见久久见免费视频7| 亚洲地区一二三色| 亚洲欧美欧美一区二区三区| 久久久综合九色合综国产精品| 制服丝袜国产精品| 在线成人高清不卡| 欧美性受xxxx| 色婷婷激情久久| 99久久综合精品| 粉嫩欧美一区二区三区高清影视 | 337p日本欧洲亚洲大胆精品| 欧美日韩国产片| 欧美日韩免费一区二区三区视频| 91女厕偷拍女厕偷拍高清| 成人国产精品免费观看动漫| 国产高清成人在线| 国产精品一区二区久久精品爱涩| 国产精品卡一卡二| 国产精品全国免费观看高清| 2022国产精品视频| 久久久久综合网| 久久精品免费在线观看| 亚洲精品一区二区三区香蕉 | 国产成人欧美日韩在线电影| 国内精品嫩模私拍在线| 国产在线播放一区二区三区| 久久se这里有精品| 久久精品亚洲一区二区三区浴池 | 亚洲麻豆国产自偷在线| 亚洲视频在线一区二区| 亚洲男同性恋视频| 亚洲精品你懂的| 亚洲二区在线观看| 五月婷婷激情综合| 蜜桃精品视频在线| 国产成人免费av在线| 91免费在线看| 欧美三区免费完整视频在线观看|