欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

pythondtw函數(shù),python width

matlab中的特定人語(yǔ)音識(shí)別算法DTW算法的應(yīng)用例程

語(yǔ)音識(shí)別原理

成都創(chuàng)新互聯(lián)主要從事成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)浦北,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專(zhuān)業(yè),歡迎來(lái)電咨詢(xún)建站服務(wù):13518219792

語(yǔ)音識(shí)別系統(tǒng)的本質(zhì)就是一種模式識(shí)別系統(tǒng),它也包括特征提取、模式匹配、參考模式庫(kù)等基本單元。由于語(yǔ)音信號(hào)是一種典型的非平穩(wěn)信號(hào),加之呼吸氣流、外部噪音、電流干擾等使得語(yǔ)音信號(hào)不能直接用于提取特征,而要進(jìn)行前期的預(yù)處理。預(yù)處理過(guò)程包括預(yù)濾波、采樣和量化、分幀、加窗、預(yù)加重、端點(diǎn)檢測(cè)等。經(jīng)過(guò)預(yù)處理的語(yǔ)音數(shù)據(jù)就可以進(jìn)行特征參數(shù)提取。在訓(xùn)練階段,將特征參數(shù)進(jìn)行一定的處理之后,為每個(gè)詞條得到一個(gè)模型,保存為模板庫(kù)。在識(shí)別階段,語(yǔ)音信號(hào)經(jīng)過(guò)相同的通道得到語(yǔ)音參數(shù),生成測(cè)試模板,與參考模板進(jìn)行匹配,將匹配分?jǐn)?shù)最高的參考模板作為識(shí)別結(jié)果。后續(xù)的處理過(guò)程還可能包括更高層次的詞法、句法和文法處理等,從而最終將輸入的語(yǔ)音信號(hào)轉(zhuǎn)變成文本或命令。

DTW算法原理

DTW是把時(shí)間規(guī)整和距離測(cè)度計(jì)算結(jié)合起來(lái)的一種非線(xiàn)性規(guī)整技術(shù),它尋找一個(gè)規(guī)整函數(shù)im=Ф(in)?,將測(cè)試矢量的時(shí)間軸n非線(xiàn)性地映射到參考模板的時(shí)間軸m上,并使該函數(shù)滿(mǎn)足:

D就是處于最優(yōu)時(shí)間規(guī)整情況下兩矢量的距離。由于DTW不斷地計(jì)算兩矢量的距離以尋找最優(yōu)的匹配路徑,所以得到的是兩矢量匹配時(shí)累積距離最小所對(duì)應(yīng)的規(guī)整函數(shù),這就保證了它們之間存在的最大聲學(xué)相似性。

DTW算法的實(shí)質(zhì)就是運(yùn)用動(dòng)態(tài)規(guī)劃的思想,利用局部最佳化的處理來(lái)自動(dòng)尋找一條路徑,沿著這條路徑,兩個(gè)特征矢量之間的累積失真量最小,從而避免由于時(shí)長(zhǎng)不同而可能引入的誤差。

excel中公式dtwj(E7,B7)是什么意思?

dtwj 應(yīng)該是自定義的公式。

你進(jìn)入宏編輯器里面查看,里面的代碼,有 function 開(kāi)頭的 自定義函數(shù)。查查。

python是否有dynamic time warping

from math import *

import matplotlib.pyplot as plt

import numpy

def print_matrix(mat) :

print '[matrix] width : %d height : %d' % (len(mat[0]), len(mat))

print '-----------------------------------'

for i in range(len(mat)) :

print mat[i]#[v[:2] for v in mat[i]]

def dist_for_float(p1, p2) :

dist = 0.0

elem_type = type(p1)

if elem_type == float or elem_type == int :

dist = float(abs(p1 - p2))

else :

sumval = 0.0

for i in range(len(p1)) :

sumval += pow(p1[i] - p2[i], 2)

dist = pow(sumval, 0.5)

return dist

def dtw(s1, s2, dist_func) :

w = len(s1)

h = len(s2)

mat = [([[0, 0, 0, 0] for j in range(w)]) for i in range(h)]

#print_matrix(mat)

for x in range(w) :

for y in range(h) :

dist = dist_func(s1[x], s2[y])

mat[y][x] = [dist, 0, 0, 0]

#print_matrix(mat)

elem_0_0 = mat[0][0]

elem_0_0[1] = elem_0_0[0] * 2

for x in range(1, w) :

mat[0][x][1] = mat[0][x][0] + mat[0][x - 1][1]

mat[0][x][2] = x - 1

mat[0][x][3] = 0

for y in range(1, h) :

mat[y][0][1] = mat[y][0][0] + mat[y - 1][0][1]

mat[y][0][2] = 0

mat[y][0][3] = y - 1

for y in range(1, h) :

for x in range(1, w) :

distlist = [mat[y][x - 1][1], mat[y - 1][x][1], 2 * mat[y - 1][x - 1][1]]

mindist = min(distlist)

idx = distlist.index(mindist)

mat[y][x][1] = mat[y][x][0] + mindist

if idx == 0 :

mat[y][x][2] = x - 1

mat[y][x][3] = y

elif idx == 1 :

mat[y][x][2] = x

mat[y][x][3] = y - 1

else :

mat[y][x][2] = x - 1

mat[y][x][3] = y - 1

result = mat[h - 1][w - 1]

retval = result[1]

path = [(w - 1, h - 1)]

while True :

x = result[2]

y = result[3]

path.append((x, y))

result = mat[y][x]

if x == 0 and y == 0 :

break

#print_matrix(mat)

return retval, sorted(path)

def display(s1, s2) :

val, path = dtw(s1, s2, dist_for_float)

w = len(s1)

h = len(s2)

mat = [[1] * w for i in range(h)]

for node in path :

x, y = node

mat[y][x] = 0

mat = numpy.array(mat)

plt.subplot(2, 2, 2)

c = plt.pcolor(mat, edgecolors='k', linewidths=4)

plt.title('Dynamic Time Warping (%f)' % val)

plt.subplot(2, 2, 1)

plt.plot(s2, range(len(s2)), 'g')

plt.subplot(2, 2, 4)

plt.plot(range(len(s1)), s1, 'r')

plt.show()

s1 = [1, 2, 3, 4, 5, 5, 5, 4]

s2 = [3, 4, 5, 5, 5, 4]

s2 = [1, 2, 3, 4, 5, 5]

s2 = [2, 3, 4, 5, 5, 5]

#val, path = dtw(s1, s2, dist_for_float)

display(s1, s2)

matlab匹配問(wèn)題 dtw算法

我看了一下你的鏈接和程序.

這是你沒(méi)定義dtwOptSet,當(dāng)然dtw和dtwOptSet都是作者自定義的函數(shù),不在matlab的標(biāo)準(zhǔn)庫(kù)里,這個(gè)圖也是明顯用了3個(gè)subplot畫(huà)的

如果你想運(yùn)行這個(gè),請(qǐng)去作者推薦的

(%A6p%A6%F3%A8%FA%B1o%B5{%A6%A1%BDX)

下載example就可以了.

網(wǎng)站欄目:pythondtw函數(shù),python width
本文地址:http://chinadenli.net/article31/dsidesd.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作服務(wù)器托管App設(shè)計(jì)網(wǎng)站策劃微信公眾號(hào)品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站