dtw代码java,DTW三字代码

求助语音识别代码的注释,要每一句都写明意思,谢谢

这个是完整的代码,我自己的账号发不了这么长,希望好心人帮忙注释啊,非常感谢!!!

创新互联服务项目包括梁平网站建设、梁平网站制作、梁平网页制作以及梁平网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,梁平网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到梁平省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

(1)端点检测部分(vad):

function [x1,x2] = vad(x)

%语音信号x幅度归一化到[-1,1]

x = double(x);

x = x / max(abs(x));

%常数设置

FrameLen = 240; %帧长度为240

FrameInc = 80; %帧移为80

amp1 = 10; %短时能量高门限10

amp2 = 2; %短时能量低门限为2

zcr1 = 10; %短时过零率高门限为10

zcr2 = 5; %短时过零率低门限为5

maxsilence =3;%静音时间门限3*10ms= 30ms

minlen= 15;%最小语音时间长度15*10ms = 150ms

status= 0; %

count= 0; %语音时间累计

silence = 0; %静音时间累计

%计算过零率

tmp1= enframe(x(1:end-1), FrameLen, FrameInc);

tmp2= enframe(x(2:end), FrameLen, FrameInc);

signs =(tmp1.*tmp2)0;%符号数组,用于存储相邻两个采样点符号是否相同,即是否穿越0电平

diffs = (tmp1-tmp2)0.02;%度量相邻两个采样点之间距离,如果大于门限0.02(经验值),则1,否则0

zcr = sum(signs.*diffs,2);%过零率

%计算短时能量

amp =sum(abs(enframe(filter([1 -0.9375], 1, x), FrameLen, FrameInc)), 2);

%调整能量门限

amp1 = min(amp1,max(amp)/4);

amp2 = min(amp2,max(amp)/8);

%开始端点检测

x1 = 0;

x2 = 0;

for n=1:length(zcr)

goto = 0;

switch status

case {0,1}% 0 =静音, 1 =可能开始

if amp(n) amp1%确信进入语音段

x1 = max(n-count-1,1);

status= 2;

silence = 0;

count= count + 1;

elseif amp(n) amp2 || ... %可能处于语音段

zcr(n) zcr2

status = 1;

count= count + 1;

else%静音状态

status= 0;

count= 0;

end

case 2,% 2 =语音段

if amp(n) amp2 || ...%保持在语音段

zcr(n) zcr2

count = count + 1;

else%语音将结束

silence = silence+1;

if silence maxsilence %静音还不够长,尚未结束

count= count + 1;

elseif count minlen%语音长度太短,认为是噪声

status= 0;

silence = 0;

count= 0;

else%语音结束

status= 3;

end

end

case 3,

break;

end

end

count = count-silence/2;

x2 = x1 + count -1;

subplot(311)

plot(x)

axis([1 length(x) -1 1])

xlabel('语音信号');

line([x1*FrameIncx1*FrameInc ],[-1,1],'Color','red');

line([x2*FrameIncx2*FrameInc ],[-1,1],'Color','red');

subplot(312)

plot(amp);

axis([1 length(amp) 0max(amp)])

xlabel('短时能量');

line([x1,x1],[min(amp),max(amp)],'Color','red');

line([x2,x2],[min(amp),max(amp)],'Color','red');

subplot(313)

plot(zcr);

axis([1 length(zcr) 0max(zcr)])

xlabel('过零率');

line([x1,x1],[min(zcr),max(zcr)],'Color','red');

line([x2,x2],[min(zcr),max(zcr)],'Color','red');

(2)MFCC部分:

function ccc = mfcc(x)

%归一化mel滤波器组系数

bank=melbankm(24,256,8000,0,0.5,'m');%24滤波器个数,8000采样频率

bank=full(bank);

bank=bank/max(bank(:));

% DCT系数,12*24

for k=1:12

n=0:23;

dctcoef(k,:)=cos((2*n+1)*k*pi/(2*24));

end

%归一化倒谱提升窗口

w = 1 + 6 * sin(pi *(1:12) ./ 12);

w = w/max(w);

%预加重滤波器

xx=double(x);

xx=filter([1-0.9375],1,xx);

%语音信号分帧,xx是输入语音信号;256是帧长;80是帧移

xx=enframe(xx,256,80);

%计算每帧的MFCC参数

for i=1:size(xx,1)

y = xx(i,:);

s = y' .* hamming(256);%加汉明窗

t = abs(fft(s));%fft变换

t = t.^2;

c1=dctcoef * log(bank * t(1:129));

c2 = c1.*w';

m(i,:)=c2';

end

%差分系数

dtm = zeros(size(m));

for i=3:size(m,1)-2

dtm(i,:) = -2*m(i-2,:) - m(i-1,:) + m(i+1,:)+ 2*m(i+2,:);

end

dtm = dtm / 3;

%合并mfcc参数和一阶差分mfcc参数

ccc = [m dtm];

%去除首尾两帧,因为这两帧的一阶差分参数为0

ccc =ccc(3:size(m,1)-2,:);

(3)dtw计算部分:

function dist = dtw2(test, ref)

global x y_min y_max

global t r

global D d

global m n

t = test;

r = ref;

n = size(t,1);

m = size(r,1);

d = zeros(m,1);

D =ones(m,1) *realmax;

D(1) = 0;

%如果两个模板长度相差过多,匹配失败

if (2*m-n3) || (2*n-m2)

dist =realmax;

return

end

%计算匹配区域

xa = round((2*m-n)/3);

xb = round((2*n-m)*2/3);

if xbxa

%xbxa,按下面三个区域匹配

%1:xa

%xa+1:xb

%xb+1:N

for x =1:xa

y_max= 2*x;

y_min= round(0.5*x);

warp

end

for x =(xa+1):xb

y_max= round(0.5*(x-n)+m);

y_min= round(0.5*x);

warp

end

for x =(xb+1):n

y_max= round(0.5*(x-n)+m);

y_min= round(2*(x-n)+m);

warp

end

elseif xaxb

%xaxb,按下面三个区域匹配

%0:xb

%xb+1:xa

%xa+1:N

for x =1:xb

y_max= 2*x;

y_min= round(0.5*x);

warp

end

for x =(xb+1):xa

y_max= 2*x;

y_min= round(2*(x-n)+m);

warp

end

for x =(xa+1):n

y_max= round(0.5*(x-n)+m);

y_min= round(2*(x-n)+m);

warp

end

elseif xa==xb

%xa=xb,按下面两个区域匹配

%0:xa

%xa+1:N

for x =1:xa

y_max= 2*x;

y_min= round(0.5*x);

warp

end

for x =(xa+1):n

y_max= round(0.5*(x-n)+m);

y_min= round(2*(x-n)+m);

warp

end

end

%返回匹配分数

dist = D(m);

function warp

global x y_min y_max

global t r

global D d

global m n

d = D;

for y = y_min:y_max

D1 = D(y);

if y1

D2= D(y-1);

else

D2 =realmax;

end

if y2

D3= D(y-2);

else

D3 = realmax;

end

d(y) =sum((t(x,:)-r(y,:)).^2) + min([D1,D2,D3]);

end

D = d;

(4)测试函数testdtw部分;

disp('正在计算参考模板的参数...')

for i=1:10

fname = sprintf('G:\\石东东\\语音\\%da.wav',i-1);

x = wavread(fname);

[x1 x2] = vad(x);

m = mfcc(x);

m = m(x1-2:x2-2,:);

ref(i).mfcc = m;

end

disp('正在计算测试模板的参数...')

for i=1:10

fname = sprintf('G:\\石东东\\语音\\%db.wav',i-1);

x = wavread(fname);

[x1 x2] = vad(x);

m = mfcc(x);

m = m(x1-2:x2-2,:);

test(i).mfcc = m;

end

disp('正在进行模板匹配...')

dist = zeros(10,10);

for i=1:10

for j=1:10

dist(i,j) = dtw2(test(i).mfcc, ref(j).mfcc);

end

end

disp('正在计算匹配结果...')

for i=1:10

[d,j] = min(dist(i,:));

fprintf('测试模板%d的识别结果为:%d\n', i-1, j-1);

end

机场三字代码的各国代码

亚洲

日本:东京NRT成田国际机场;HND 羽田机场;大阪ITM 大阪伊丹国际机场;KIX大阪关西国际机场

韩国:汉城(首尔)ICN 仁川国际机场;釜山PUS釜山金海国际机场

新加坡:新加坡 SIN新加坡樟宜国际机场

马来西亚:吉隆坡 KUL吉隆坡国际机场

越南:胡志明 SGN胡志明市新山机场

泰国:曼谷 BKK素万那普国际机场 普吉 HKT普吉国际机场

印度:新德里 DEL 新德里国际机场

中东:

伊朗:德黑兰 THR德黑兰梅赫拉巴德国际机场

沙特阿拉伯:利雅得RUH哈利德国王国际机场

阿联酋:阿布扎比 AUH 阿布扎比国际机场;迪拜DXB迪拜国际机场

卡塔尔:多哈 DOH多哈国际机场

土耳其:伊斯坦布尔 IST 伊斯坦布尔国际机场

北美

加拿大:渥太华 YOW渥太华国际机场;蒙特利尔 YUL 蒙特利尔多尔瓦国际机场;温哥华 YVR温哥华国际机场;多伦多 YYZ 多伦多皮尔森国际机场

美国:华盛顿 IAD杜勒斯国际机场;JPN五角大楼军用机;波士顿 BOS 波士顿洛根国际机场;芝加哥 ORD 芝加哥奥黑尔国际机场;纽约 JFK肯尼迪国际机场;旧金山 SFO 三番市旧金山国际机场;洛杉矶 LAX洛杉矶国际机场;迈阿密 MIA 迈阿密国际机场;亚特兰大ATL 亚特兰大国际机场;哥伦比亚 CAE 哥伦比亚国际机场;克利夫兰CLE 克利夫兰机场;夏洛特CLT 夏洛特国际机场;丹佛 DEN丹佛国际机场;达拉斯 DFW达拉斯沃思堡机场;底特律 DTW 底特律都会机场;休斯敦IAH 布什国际机场;奥兰多MCO 奥兰多国际机场;孟菲斯MEM 孟菲斯国际机场;西雅图SEA西雅图-塔科马国际机场

中南美

墨西哥:墨西哥城 MEX墨西哥城机场

古巴:哈瓦那 HAV 哈瓦那-何塞马蒂机场

巴西:巴西利亚 BSB巴西利亚国际机场;圣保罗 SAO圣保罗国际机场;里约热内卢 RIO/GIG里约热内卢国际机场

阿根廷:布宜诺斯艾利斯EZE 埃塞萨国际机场

欧洲

英国:伦敦 LHR伦敦希思罗机场;利物浦 LPL利物浦雷侬国际机场;曼彻斯特 MAN曼彻斯特机场

比利时:布鲁塞尔 BRU布鲁塞尔国际机场

卢森堡:卢森堡 LUX卢森堡国际机场

荷兰:阿姆斯特丹 AMS 阿姆斯特丹-史基浦机场;鹿特丹 RTM鹿特丹机场

丹麦:哥本哈根 CPH哥本哈根凯斯楚普机场

德国:柏林 TXL 泰格尔机场;慕尼黑 MUC 慕尼黑机场;不莱梅BRE 不莱梅机场;法兰克福FRA法兰克福-莱茵-美因国际机场;斯图加特 STR斯图加特机场;汉堡 HAM汉堡国际机场;纽伦堡 NUE纽伦堡机场;科隆 CGN科隆机场

法国:巴黎CDG戴高乐机场;马赛 MRS马赛机场;里昂 LYS 里昂机场

瑞士:伯尔尼 BRN贝尔普伯尔尼机场;日内瓦 GVA日内瓦国际机场;苏黎世 ZRH苏黎世国际机场;巴塞尔 BSL巴塞尔机场

西班牙:马德里 MAD马德里巴拉哈斯机场;巴塞罗那 BCN 巴塞罗那安普拉特机场;巴伦西亚VLC 巴伦西亚机场;塞维利亚SVQ塞维利亚机场

葡萄牙:里斯本 LIS 里斯本机场 ;波尔图OPO 奥波多机场

意大利:罗马 FCO罗马菲乌米奇诺机场;米兰 MXP 米兰马尔蓬萨机场;威尼斯 VCE 威尼斯机场;佛罗伦萨 FLR 佛罗伦萨机场;都灵TRN都灵机场

希腊:雅典 ATH雅典国际机场

奥地利:维也纳 VIE维也纳施韦夏特机场

捷克:布拉格 PRG布拉格鲁济涅机场

芬兰:赫尔辛基 HEL赫尔辛基万塔机场

瑞典:斯德哥尔摩 ARN斯德哥尔摩阿兰达机场

挪威:奥斯陆 OSL 奥斯陆加勒穆恩机场

南斯拉夫:贝尔格莱德 BEG贝尔格莱德机场

罗马尼亚:布加勒斯特 BUH 布加勒斯特机场

克罗地亚:萨格勒布 ZAG萨格勒布机场

匈牙利:布达佩斯 BUD布达佩斯费里海吉机场

波兰:华沙 WAW华沙奥肯切机场

俄罗斯:莫斯科 SVO 谢列梅捷沃机场;DME多莫杰多沃机场

乌克兰:基辅KBP基辅机场;IEV 基辅茹良尼机场

非洲

埃及:开罗 CAI开罗国际机场

塞内加尔:达喀尔 DKR达喀尔机场

南非:约翰内斯堡 JNB约翰内斯堡国际机场

大洋洲

澳大利亚:堪培拉 CBR 堪培拉机场;墨尔本 MEL 墨尔本国际机场;悉尼SYD悉尼金斯福国际机场

新西兰:惠灵顿 WLG惠灵顿机场

DTW 是哪个机场的缩写?

三字代码 机场中文名称 机场英文名称 州名 缩写

LAX 洛杉矶国际机场 Los Angeles 加利福尼亚 CA

BUR 伯班克机场 Burbank 加利福尼亚 CA

ONT 安大略机场 Ontario 加利福尼亚 CA

LGB 长滩机场 Long Beach 加利福尼亚 CA

SAN 圣地亚哥机场 San Diego 加利福尼亚 CA

SNA 橙县机场 Orange County 加利福尼亚 CA

SFO 旧金山国际机场 San Francisco 加利福尼亚 CA

OAK 奥克兰机场 Oakland 加利福尼亚 CA

SJC 圣荷西机场 San Jose 加利福尼亚 CA

SEA 西雅图国际机场 Seattle 华盛顿 WA

PDX 波特兰机场 Portland 俄勒冈 OR

PHX 凤凰城机场 Phoenix 亚利桑那 AZ

TUS 图森机场 Tueson 亚利桑那 AZ

LAS 拉斯维加斯机场 Las Vegas 内华达 NV

RNO 雷诺机场 Reno 内华达 NV

SLC 盐湖城机场 Salt Lake City 犹他 UT

DEN 丹佛机场 Denver 科罗拉多 CO

ELP 埃尔.帕索机场 El Paso 得克萨斯 TX

SAT 圣.安东尼奥机场 San Antonio 得克萨斯 TX

AUS 奥斯汀机场 Austin 得克萨斯 TX

IAH 休斯顿国际机场 Houston(Int’l) 得克萨斯 TX

HOU 休斯顿哈比机场 Houston(Hobby) 得克萨斯 TX

DFW 达拉斯机场 Dallas 得克萨斯 TX

MSP 明尼阿波利斯机场 Minneapolis 明尼苏达 MN

MCI 堪萨斯城机场 Kansas 密苏里 MO

STL 圣.路易斯机场 St. Louis 密苏里 MO

MSY 新奥尔良机场 New Orleans 路易斯安那 LA

BHM 伯明翰机场 Birmingham 阿拉巴马 AL

MEM 孟菲斯机场 Memphis 田纳西 TN

BNA 纳什维尔机场 Nashville 田纳西 TN

ORD 芝加哥机场 Chicago 依利诺 IL

DTW 底特律机场 Detroit 密执安 MI

IND 印第安那波利斯 Indianapolis 印第安那 IN

CVG 辛辛那提机场 Cincinnati 俄亥俄 OH

DAY 代顿机场 Dayton 俄亥俄 OH

CMH 哥伦布机场 Columbus 俄亥俄 OH

CLE 克利夫兰机场 Cleveland 俄亥俄 OH

PWM 波特兰机场 Portland 缅因 ME

BOS 波士顿机场 Boston 马萨诸塞 MA

ISP 长岛机场 Long Island 纽约 NY

LGA 拉瓜地机场 La Guardia 纽约 NY

JFK 肯尼迪机场 John F Kennedy 纽约 NY

ALB 奥尔巴尼机场 Albany 纽约 NY

BUF 布法罗机场 Buffalo 纽约 NY

EWR 纽瓦克机场 Newark 新泽西 NJ

PIT 匹兹堡机场 Pittsburgh 宾夕法尼亚 PA

PHL 费城机场 Philadelphia 宾夕法尼亚 PA

DCA 华盛顿国际机场 National 哥伦比亚特区 DC

BWI 巴尔地磨机场 Baltimore 马里兰 MD

IAD 华盛顿达拉斯机场 Wa Dulles 弗吉尼亚 VA

CLT 夏洛特机场 Charlotte 北卡罗来纳 NC

ILM 威尔明顿机场 Wilmington 北卡罗来纳 NC

CAE 哥伦比亚机场 Columbia 南卡罗来纳 SC

CHS 查尔斯顿机场 Charleston 南卡罗来纳 SC

ATL 亚特兰大机场 Atlanta 佐治亚 GA

MCO 奥兰多机场 Orlando 佛罗里达 FL

TPA 坦帕机场 Tampa 佛罗里达 FL

MIA 迈阿密机场 Miami 佛罗里达 FL

HNL 火奴鲁鲁机场 Honolulu 夏威夷 HI

OMA 奥马哈机场 Omaha 内布瑞斯卡 NE


分享文章:dtw代码java,DTW三字代码
分享链接:http://myzitong.com/article/dsgoesj.html