JPH0782350B2 - パタン比較器 - Google Patents
パタン比較器Info
- Publication number
- JPH0782350B2 JPH0782350B2 JP62280768A JP28076887A JPH0782350B2 JP H0782350 B2 JPH0782350 B2 JP H0782350B2 JP 62280768 A JP62280768 A JP 62280768A JP 28076887 A JP28076887 A JP 28076887A JP H0782350 B2 JPH0782350 B2 JP H0782350B2
- Authority
- JP
- Japan
- Prior art keywords
- pattern
- memory
- processing
- value
- grid point
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Description
【発明の詳細な説明】 (産業上の利用分野) この発明は例えば音声のようにベクトルの時系列として
表わされる2個のパタンを比較し、その類似度を算出す
る装置に関するものである。
表わされる2個のパタンを比較し、その類似度を算出す
る装置に関するものである。
(従来の技術) 従来よりパタン間の類似度を算出する方法は多く提案さ
れている。その代表的な手法に特公昭50−19227、特公
昭50−23941に開示されているDPマッチング法がある。
この手法は音声の時間−スペクトルパタンの類似度を判
定する手法として多く用いられている。
れている。その代表的な手法に特公昭50−19227、特公
昭50−23941に開示されているDPマッチング法がある。
この手法は音声の時間−スペクトルパタンの類似度を判
定する手法として多く用いられている。
以下、従来のDPマッチング手法について説明する。
比較される音声パタンはベクトルの時系列としてI個の
ベクトルにより と表わされる。ここでベクトル は時間点iにおける音声の特徴を表わすK次元のベクト
ルである。このベクトル は中心周波数の異なるK個のバンドパスフィルタ群の出
力の絶対値時間平均やK次の線形予測分析による結果に
よって得られる。
ベクトルにより と表わされる。ここでベクトル は時間点iにおける音声の特徴を表わすK次元のベクト
ルである。このベクトル は中心周波数の異なるK個のバンドパスフィルタ群の出
力の絶対値時間平均やK次の線形予測分析による結果に
よって得られる。
同様な手法により得られるもう一方の音声パタンを とし、ベクトル を で表わす。これら2つの音声パタン の類似性の判定は音声認識に多く利用されている。
従来のパタン比較器では、これら2つのパタン の類似度は以下の手法により算出される。
この算出に当り、処理の簡易化のため及びメモリ管理の
容易さのため、従来からパタン の長さIとパタン の長さJを等しくするのが一般的である。
容易さのため、従来からパタン の長さIとパタン の長さJを等しくするのが一般的である。
先ず、パタン における時間点iの における時間点jでのベクトル の距離d(i,j)が によって定義される。(1)式において が類似している場合距離d(i,j)は小さな値をとる。
第2図は従来のパタン比較演算を説明するための説明図
である。同図において、パタン における時間点iを横軸に、パタン の時間点jを縦軸にとると格子点(i,j)に対応するベ
クトル 間の距離がd(i,j)となる。以下、パタン における時間点iのベクトルとパタン における時間点jのベクトルの間の議論を行う際、単に
「格子点(i,j)において」と表現する。
である。同図において、パタン における時間点iを横軸に、パタン の時間点jを縦軸にとると格子点(i,j)に対応するベ
クトル 間の距離がd(i,j)となる。以下、パタン における時間点iのベクトルとパタン における時間点jのベクトルの間の議論を行う際、単に
「格子点(i,j)において」と表現する。
格子点(i,j)における距離d(i,j)を用い、格子点
(0,0)から格子点(i,j)に至るまでの類似性を表わす
量g(i,j)を定義する。類似性が大きい場合にはg
(i,j)は小さな値をとる。
(0,0)から格子点(i,j)に至るまでの類似性を表わす
量g(i,j)を定義する。類似性が大きい場合にはg
(i,j)は小さな値をとる。
従来より開示されているDPマッチングでは なる漸化式が用いられている。(2)式で与えられる漸
化式を全ての格子点について演算することは処理量の増
加を招く。この(2)式に従う通常の処理の処理量の増
加を防ぐため実際には第2図に21、22でそれぞれ示され
る境界線に挟まれた領域(整合窓内と称す)のみが演算
されている。尚、この整合窓の幅をWとする。また実際
には境界上及び端点付近では(2)式が当てはまらな
い。従って(2)式のg(i,j)のd(i,j)項で、i、
jが0又は負となる格子点或は(2)式の1つのパスが
整合窓から外れてしまう格子点に対しては(2)式の特
殊な形を用いなければならない。第2図において10〜17
は特殊処理を行なわなければならない格子点領域を表わ
している。次にこれらの特殊処理について記述する。
尚、以下の特殊処理において、i、jの割り当ては特殊
処理が行われる注目した格子点を基準として割り当てて
いる。
化式を全ての格子点について演算することは処理量の増
加を招く。この(2)式に従う通常の処理の処理量の増
加を防ぐため実際には第2図に21、22でそれぞれ示され
る境界線に挟まれた領域(整合窓内と称す)のみが演算
されている。尚、この整合窓の幅をWとする。また実際
には境界上及び端点付近では(2)式が当てはまらな
い。従って(2)式のg(i,j)のd(i,j)項で、i、
jが0又は負となる格子点或は(2)式の1つのパスが
整合窓から外れてしまう格子点に対しては(2)式の特
殊な形を用いなければならない。第2図において10〜17
は特殊処理を行なわなければならない格子点領域を表わ
している。次にこれらの特殊処理について記述する。
尚、以下の特殊処理において、i、jの割り当ては特殊
処理が行われる注目した格子点を基準として割り当てて
いる。
(a)格子点領域10における特殊処理(i=0,j=0) 格子点10の領域では g(i,j)=2d(i,j) ……(3) の処理を行う。
(b)格子点領域11における特殊処理(i=0,j=1〜
W−1) 格子点領域11においては g(i,j)=g(i,j−1)+d(i,j) ……(4) の処理を行う。
W−1) 格子点領域11においては g(i,j)=g(i,j−1)+d(i,j) ……(4) の処理を行う。
(c)格子点領域12における特殊処理(i=1〜W−1,
j=0) 格子点領域12においては g(i,j)=g(i−1,j)+d(i,j) ……(5) の処理を行う。
j=0) 格子点領域12においては g(i,j)=g(i−1,j)+d(i,j) ……(5) の処理を行う。
(d)格子点領域13における特殊処理(i=1,j=1) 格子点領域13においては の処理を行う。
(e)格子点領域14における特殊処理(i=2,j=2〜
W−2) 格子点領域14においては の処理を行う。
W−2) 格子点領域14においては の処理を行う。
(f)格子点領域15における特殊処理(i=2〜W−2,
j=2) 格子点領域15においては の処理を行う。
j=2) 格子点領域15においては の処理を行う。
(g)格子点領域16における特殊処理(j=i+W−
1) 格子点領域16においては の処理を行う。
1) 格子点領域16においては の処理を行う。
(h)格子点領域17における特殊処理(i=j+W−
1) 格子点領域17においては の処理を行う。
1) 格子点領域17においては の処理を行う。
(発明が解決しようとする問題点) このように従来のパタン比較器での(2)式に従った処
理方法では上記各項(a)〜(h)に記載されるがごと
き実行すべき特殊処理が極めて多い。これらの特殊処理
を実現するためには、パタン比較器の回路規模も大きく
なってしまうという問題点があった。
理方法では上記各項(a)〜(h)に記載されるがごと
き実行すべき特殊処理が極めて多い。これらの特殊処理
を実現するためには、パタン比較器の回路規模も大きく
なってしまうという問題点があった。
この発明の目的はこれらの特殊処理を少なくし、その回
路規模を小さくしたパタン比較器を提供することにあ
る。
路規模を小さくしたパタン比較器を提供することにあ
る。
(問題点を解決するための手段) この目的の達成を図るため、この発明によれば、 時間点iのベクトル系列及び時間点jのベクトル系列に
よってそれぞれ表される第1及び第2のパタン の類似性を表す値を算出するパタン比較器において、 (a)時間点i及びjが形成する格子点座標を、j=i
+kでk≧0のときi=l及びk<0のときj=lとし
て得られる第1の変数l及び第2の変数kの座標に座標
変換する座標交換手段と、 (b)第1の変数lを0から第1の所定数まで変化させ
る第1の制御手段と、 (c)第1の変数lの値毎に、第2の変数kを、先ず0
から第2の正の所定数まで変化させ、続いて−1から第
3の負の所定数まで変化させる第2の制御手段と、 (d)第1パタン を構成する時間点iの第1のベクトル と第2のパタン を構成する時間点jの第2のベクトル との距離d(i,j)を算出する距離算出手段と、 (e)第1の変数l及び第2の変数kの値毎に、第1の
パタン の一番目のパタンから前記第1のベクトル までの第1の部分パタンと第2のパタン の一番目のパタンから第2のベクトル までの第2の部分パタンまでの類似性を表す第1の値
g′(k)=g(i,j)を算出すると共に、第2の値
S′(k)=[g(i−1,j−1)+2d(i,j)]を算出
する演算器と、 (f)第1の値g′(k)を格納する第1のメモリと、 (g)第2の値S′(k)を格納する第2のメモリと、 (h)第1のメモリを初期化する初期化手段と、 を具えることを特徴とする。
よってそれぞれ表される第1及び第2のパタン の類似性を表す値を算出するパタン比較器において、 (a)時間点i及びjが形成する格子点座標を、j=i
+kでk≧0のときi=l及びk<0のときj=lとし
て得られる第1の変数l及び第2の変数kの座標に座標
変換する座標交換手段と、 (b)第1の変数lを0から第1の所定数まで変化させ
る第1の制御手段と、 (c)第1の変数lの値毎に、第2の変数kを、先ず0
から第2の正の所定数まで変化させ、続いて−1から第
3の負の所定数まで変化させる第2の制御手段と、 (d)第1パタン を構成する時間点iの第1のベクトル と第2のパタン を構成する時間点jの第2のベクトル との距離d(i,j)を算出する距離算出手段と、 (e)第1の変数l及び第2の変数kの値毎に、第1の
パタン の一番目のパタンから前記第1のベクトル までの第1の部分パタンと第2のパタン の一番目のパタンから第2のベクトル までの第2の部分パタンまでの類似性を表す第1の値
g′(k)=g(i,j)を算出すると共に、第2の値
S′(k)=[g(i−1,j−1)+2d(i,j)]を算出
する演算器と、 (f)第1の値g′(k)を格納する第1のメモリと、 (g)第2の値S′(k)を格納する第2のメモリと、 (h)第1のメモリを初期化する初期化手段と、 を具えることを特徴とする。
この発明の実施に当り、前述の第1のメモリ及び第2の
メモリを整合窓の幅Wに対して(2W+1)の大きさをも
つメモリとするのが好適である。
メモリを整合窓の幅Wに対して(2W+1)の大きさをも
つメモリとするのが好適である。
(作用) 上述したこの発明のパタン比較器によれば、座標交換手
段によって座標交換されて得られたl、k座標系の格子
点領域に対し演算処理を行い、この演算処理に当り、特
殊処理のため第1のメモリの各アドレスに格納された類
似性を表わす値g′(k)に対する初期値を、初期化手
段によってそれぞれ正の最大値域は“0"と、設定するこ
とにより、当該特殊処理の必要な格子点領域の一部分を
通常処理のシーケンスで実行することが出来る。通常処
理のシーケンスを実行出来ない残りの格子点領域に対す
る特殊処理を行うに当り、第2のメモリに変数S′
(k)の値を格納することにより、当該残りの格子点領
域に対する特殊処理を実行することが出来る。
段によって座標交換されて得られたl、k座標系の格子
点領域に対し演算処理を行い、この演算処理に当り、特
殊処理のため第1のメモリの各アドレスに格納された類
似性を表わす値g′(k)に対する初期値を、初期化手
段によってそれぞれ正の最大値域は“0"と、設定するこ
とにより、当該特殊処理の必要な格子点領域の一部分を
通常処理のシーケンスで実行することが出来る。通常処
理のシーケンスを実行出来ない残りの格子点領域に対す
る特殊処理を行うに当り、第2のメモリに変数S′
(k)の値を格納することにより、当該残りの格子点領
域に対する特殊処理を実行することが出来る。
このように、この発明のパタン比較器によれば、特殊処
理開始時に第1のメモリに初期値を与えること及び通常
処理が出来ない格子点領域に対する特殊処理には第2の
メモリに変数S′(k)の値を格納することが付加され
ることのみであるので、特殊処理のための特別な回路構
成はほとんど必要なく、そのため通常処理に必要な回路
構成にてDPマッチング演算処理を行え、しかも、演算に
必要なメモリの容量も極めて少なくて良く、従って、回
路構成が簡単となる。
理開始時に第1のメモリに初期値を与えること及び通常
処理が出来ない格子点領域に対する特殊処理には第2の
メモリに変数S′(k)の値を格納することが付加され
ることのみであるので、特殊処理のための特別な回路構
成はほとんど必要なく、そのため通常処理に必要な回路
構成にてDPマッチング演算処理を行え、しかも、演算に
必要なメモリの容量も極めて少なくて良く、従って、回
路構成が簡単となる。
(実施例) 以下、図面を参照してこの発明のパタン比較器の一実施
例につき説明する。
例につき説明する。
この発明では、従来と同様に、パタン の長さをI、パタン の長さをJと考え、第2図に示されるDPマッチングの計
算順序を第3図の流れ図に従って行う。ここで処理ステ
ップをSと略称する。
算順序を第3図の流れ図に従って行う。ここで処理ステ
ップをSと略称する。
今、計算する順序を与える番号としてl、kを与える。
そして、先ず、l=0を初期値(第3図のS1)とし、ま
ずk=0とし(第3図のS2)、i,jをj=l+k,i=lと
座標交換し(第3図のS3)、これらj=l+k及びi=
lにおけるDP演算を行う(第3図のS4)。次にkを1つ
増加させ(第3図のS5)、(W−1)になるまで処理ス
テップS3及びS4の処理を繰り返す。
そして、先ず、l=0を初期値(第3図のS1)とし、ま
ずk=0とし(第3図のS2)、i,jをj=l+k,i=lと
座標交換し(第3図のS3)、これらj=l+k及びi=
lにおけるDP演算を行う(第3図のS4)。次にkを1つ
増加させ(第3図のS5)、(W−1)になるまで処理ス
テップS3及びS4の処理を繰り返す。
次にkを−1に設定し(第3図のS7)、j=l,i=l−
k(第3図のS8)におけるDP演算(第3図のS9)を行
う。kは1つ減少させ(第3図のS10)、−(W−1)
になるまで処理ステップS8及びS9の処理を繰り返す。
k(第3図のS8)におけるDP演算(第3図のS9)を行
う。kは1つ減少させ(第3図のS10)、−(W−1)
になるまで処理ステップS8及びS9の処理を繰り返す。
以上、説明した処理(S2〜S11)をl=0〜(I−1)
まで繰り返す。これがこの発明によるDP演算の順序であ
る。
まで繰り返す。これがこの発明によるDP演算の順序であ
る。
第4図は第2図に示されているiとjの代わりに上述し
た座標交換後のlとkを変数にとって図示すると第4図
を得る。
た座標交換後のlとkを変数にとって図示すると第4図
を得る。
第4図において横軸はlを、縦軸はkを表わしている。
そして、この第4図はこの発明のパタンの比較演算の説
明図である。
そして、この第4図はこの発明のパタンの比較演算の説
明図である。
このような第4図に示す変換座標では、第2図に示され
たDP演算のためのパスは、図中、(A)、(B)、
(C)で示すように、 (A)k=0のとき、すなわちi=j=l (B)k>0のとき、すなわち i=l,j=l+k (C)k>0のとき、すなわち j=l,i=l−k の3つの場合に分けられる。また、第4図に11〜17で示
す格子点領域は第2図の11〜17で示す格子点領域にそれ
ぞれ対応し、DP演算における特殊処理の格子領域を表わ
している。また、iとjとkには k=j−i なる関係がある。
たDP演算のためのパスは、図中、(A)、(B)、
(C)で示すように、 (A)k=0のとき、すなわちi=j=l (B)k>0のとき、すなわち i=l,j=l+k (C)k>0のとき、すなわち j=l,i=l−k の3つの場合に分けられる。また、第4図に11〜17で示
す格子点領域は第2図の11〜17で示す格子点領域にそれ
ぞれ対応し、DP演算における特殊処理の格子領域を表わ
している。また、iとjとkには k=j−i なる関係がある。
ここで、新しい変数S(i,j)を次式で定義する。
S(i,j)=g(i−1,j−1)+2d(i,j) ……(11) また、S(i,j)を格納しておく領域としてS′(k)
を考える。すなわち、 S′(k)=S′(i,j)=S(i,j) S(i,j)を用いれば(2)式は となる。得られた(12)式をさらに前述のk=0、k>
0、k<0の3つの場合についてS′(k)を用いて考
えなおすと次のようになる。
を考える。すなわち、 S′(k)=S′(i,j)=S(i,j) S(i,j)を用いれば(2)式は となる。得られた(12)式をさらに前述のk=0、k>
0、k<0の3つの場合についてS′(k)を用いて考
えなおすと次のようになる。
(A)i=j(k=0)の場合 このとき、すでに第4図の(l−1)の時点で計算され
た値が S′(1)=S(i−1,j)=g(i−2,j−1)+2d
(i−1,j) S′(0)=S(i−1,j−1)=g(i−2,j−2)+
2d(i−1,j−1) S′(−1)=S(i−1,j−2)=g(i−1,j−2)
+2d(i,j−1) に格納されているはずである。そこで、先ず、 S(i,j)=g(i−1,j−1)+2d(i,j) をS′(0)に格納すれば(12)式はS′(k)を用い
て と書ける。
た値が S′(1)=S(i−1,j)=g(i−2,j−1)+2d
(i−1,j) S′(0)=S(i−1,j−1)=g(i−2,j−2)+
2d(i−1,j−1) S′(−1)=S(i−1,j−2)=g(i−1,j−2)
+2d(i,j−1) に格納されているはずである。そこで、先ず、 S(i,j)=g(i−1,j−1)+2d(i,j) をS′(0)に格納すれば(12)式はS′(k)を用い
て と書ける。
(B)j=i+k(k>0)の場合 (12)式の演算順序を格子(i,i+1)、格子(i,i+
2)の順に進めていくことを考えるとS′(k+1)に
は格子(i−1,j)の時点で計算された値が保存されて
おり、S′(k−1)には格子(i,j−1)で計算され
た値が格納されている。すなわち S′(k+1)=S(i−1,j) S′(k−1)=S(i,j−1) となっている。そこで、先ず、 S(i,j)=g(i−1,j−1)+2d(i,j) をS′(k)に格納すれば(12)式はS′(k)を用い
て と書ける。
2)の順に進めていくことを考えるとS′(k+1)に
は格子(i−1,j)の時点で計算された値が保存されて
おり、S′(k−1)には格子(i,j−1)で計算され
た値が格納されている。すなわち S′(k+1)=S(i−1,j) S′(k−1)=S(i,j−1) となっている。そこで、先ず、 S(i,j)=g(i−1,j−1)+2d(i,j) をS′(k)に格納すれば(12)式はS′(k)を用い
て と書ける。
(C)i=j−k(k<0)の場合 演算順序を格子(i+1,i)、格子(i+2,i)…と考え
るとS′(k+1)には格子(i−1,j)の時点で計算
された値S(i−1,j)が格納されており、S′(k−
1)には格子(i,j−1)の時点で計算された値S(i,j
−1)が保存されている。従って、 S(i,j)=g(i−1,j−1)+2d(i,j) をS′(k)を用いて をS′(k)に格納すれば(12)式は と書ける。
るとS′(k+1)には格子(i−1,j)の時点で計算
された値S(i−1,j)が格納されており、S′(k−
1)には格子(i,j−1)の時点で計算された値S(i,j
−1)が保存されている。従って、 S(i,j)=g(i−1,j−1)+2d(i,j) をS′(k)を用いて をS′(k)に格納すれば(12)式は と書ける。
以上の結果を総合すると、(2)式に与えられる演算は
S′(k)を用いれば S′(k)=g(i−1,j−1)+2d(i,j)……(13) となる。また、さらに(13)式、(14)式においてg
(i,j)のうちiに関する領域は不要で g′(k)=g(i,j) (k=j−i) とすることができる。なぜならば仮に格子点(i−1,j
−1)におけるgの値g(i−1,j−1)がg′(k)
に格納されていたとすれば格子点(i,j)の S′(k)=g′(k)+2d(i,j) ……(15) の演算が終了すれば以降g′(k)の値は不要となり
(14)式の結果をg′(k)に格納することが可能であ
るからである。
S′(k)を用いれば S′(k)=g(i−1,j−1)+2d(i,j)……(13) となる。また、さらに(13)式、(14)式においてg
(i,j)のうちiに関する領域は不要で g′(k)=g(i,j) (k=j−i) とすることができる。なぜならば仮に格子点(i−1,j
−1)におけるgの値g(i−1,j−1)がg′(k)
に格納されていたとすれば格子点(i,j)の S′(k)=g′(k)+2d(i,j) ……(15) の演算が終了すれば以降g′(k)の値は不要となり
(14)式の結果をg′(k)に格納することが可能であ
るからである。
次に、第2図に示した格子点領域10〜17の特殊処理を
(13)式、(14)式に適応する方法について第4図及び
第5図を用いて説明する。
(13)式、(14)式に適応する方法について第4図及び
第5図を用いて説明する。
第5図は(13)式、(14)式の処理の流れを表わす図
で、演算とメモリ領域との関係を示した図でもある。
で、演算とメモリ領域との関係を示した図でもある。
同図において、50は領域g′(k)の前のフレームの状
態g(i−1,j−1)が保存されるメモリ領域、51は
g′(k)に2d(i,j)を加算する加算器、52はS′
(k)=g′(k)+2d(i,j)を格納するメモリ領域
である。
態g(i−1,j−1)が保存されるメモリ領域、51は
g′(k)に2d(i,j)を加算する加算器、52はS′
(k)=g′(k)+2d(i,j)を格納するメモリ領域
である。
53はメモリ領域52からの2つのデータを比較して最小値
の方を選択する比較器、54は比較器53の出力データにd
(i,j)を加算する加算器、55は加算器54の出力データ
とメモリ領域52からのS′(k)とを比較して最小値の
方を選択する比較器、56はこの比較器55から得られた、
計算後の値g(i,j)を格納するメモリ領域g′(k)
である。この流れ図の処理によれば領域S′(k)の前
後の状態をみればよく、iに関するデータの全てを保存
しておく必要は全く無い。
の方を選択する比較器、54は比較器53の出力データにd
(i,j)を加算する加算器、55は加算器54の出力データ
とメモリ領域52からのS′(k)とを比較して最小値の
方を選択する比較器、56はこの比較器55から得られた、
計算後の値g(i,j)を格納するメモリ領域g′(k)
である。この流れ図の処理によれば領域S′(k)の前
後の状態をみればよく、iに関するデータの全てを保存
しておく必要は全く無い。
以下、特殊処理につき説明する。
既に説明した通り、第4図中の10〜17で示す各格子点領
域、第3図中の10〜17で示した各格子点領域の特殊処理
に対応する領域である。
域、第3図中の10〜17で示した各格子点領域の特殊処理
に対応する領域である。
(a)格子点領域10における処理(このときi=0,j=
0,k=0) (3)式を書き直すと S′(k)=S′(0)=2d(i,j) g′(k)=S(k) となり、第5図を適用させるためにはメモリ領域50での
g′(k)をg′(0)=0、メモリ領域52の領域S′
(k)をS′(1)=正の最大値又は+∞、S′(−
1)=正の最大値又は+∞とする必要がある。
0,k=0) (3)式を書き直すと S′(k)=S′(0)=2d(i,j) g′(k)=S(k) となり、第5図を適用させるためにはメモリ領域50での
g′(k)をg′(0)=0、メモリ領域52の領域S′
(k)をS′(1)=正の最大値又は+∞、S′(−
1)=正の最大値又は+∞とする必要がある。
(b)格子点領域11における処理(このときi=0,j=
k,k=1〜(W−1)) (4)式を第5図の流れに適用するためにはメモリ領域
52の領域S′(k)とS′(k+1)の経路が選択され
ないようにすればよく、従って、メモリ領域50のg′
(k)とメモリ領域52のS′(k+1)に予め正の最大
値を格納しておけばよい。
k,k=1〜(W−1)) (4)式を第5図の流れに適用するためにはメモリ領域
52の領域S′(k)とS′(k+1)の経路が選択され
ないようにすればよく、従って、メモリ領域50のg′
(k)とメモリ領域52のS′(k+1)に予め正の最大
値を格納しておけばよい。
また、後で説明する格子点領域14における処理のため
に、得られたg′(k)をS′(k)に格納する必要が
ある。
に、得られたg′(k)をS′(k)に格納する必要が
ある。
(c)格子点領域12における処理(このときj=0,i=
−k,k=−1〜1−W) (5)式を第5図の流れに適用するためにはメモリ領域
52の領域S′(k)とS′(k−1)の経路が選択され
ないようにすればよく、従ってメモリ領域50のg′
(k)とメモリ領域52のS′(k+1)に予め正の最大
値を格納しておけばよい。
−k,k=−1〜1−W) (5)式を第5図の流れに適用するためにはメモリ領域
52の領域S′(k)とS′(k−1)の経路が選択され
ないようにすればよく、従ってメモリ領域50のg′
(k)とメモリ領域52のS′(k+1)に予め正の最大
値を格納しておけばよい。
また、後で説明する格子点領域15における処理のため
に、得られたg′(k)をS′(k)に格納する処理が
必要となる。
に、得られたg′(k)をS′(k)に格納する処理が
必要となる。
(d)格子点領域13における処理(i=1,j=1,k=0) (6)式は第5図の流れ図にそのまま適用される。なぜ
ならばメモリ領域52の領域S′(k−1)には格子点領
域12の処理における結果g(i−1,j)+d(i,j)が、
S′(k+1)には格子点領域11の処理の結果g(i,j
−1)+d(i,j)が格納されているからである。
ならばメモリ領域52の領域S′(k−1)には格子点領
域12の処理における結果g(i−1,j)+d(i,j)が、
S′(k+1)には格子点領域11の処理の結果g(i,j
−1)+d(i,j)が格納されているからである。
(e)格子点領域14における処理(i=1,j=k+1,k=
1〜W−2) (7)式は第5図の流れ図にそのまま適用される。なぜ
ならばメモリ領域52の領域S′(k+1)には格子点領
域11における結果g(i−1,j)が格納されているから
である。
1〜W−2) (7)式は第5図の流れ図にそのまま適用される。なぜ
ならばメモリ領域52の領域S′(k+1)には格子点領
域11における結果g(i−1,j)が格納されているから
である。
(f)格子点領域15における処理(j=1,i=1−k,k=
−1〜(−W+2)) (8)式は第5図の流れ図そのままが適用される。なぜ
ならばメモリ領域52の領域S′(k−1)には格子点領
域12における結果g(i,j−1)が格納されているから
である。
−1〜(−W+2)) (8)式は第5図の流れ図そのままが適用される。なぜ
ならばメモリ領域52の領域S′(k−1)には格子点領
域12における結果g(i,j−1)が格納されているから
である。
(g)格子点領域16における処理(i=1〜I−1,j=
i+k,k=W−1) (9)式を第5図の流れ図に適用するためにはメモリ領
域52の領域S′(k+1)の値を正の最大値とすればよ
い。
i+k,k=W−1) (9)式を第5図の流れ図に適用するためにはメモリ領
域52の領域S′(k+1)の値を正の最大値とすればよ
い。
(h)格子点領域17における処理(j=1〜J−1,i=
j−k,k=1−W) (10)式を第5図の流れ図に適用するためにはメモリ領
域52の領域S′(k−1)を正の最大値とすればよい。
j−k,k=1−W) (10)式を第5図の流れ図に適用するためにはメモリ領
域52の領域S′(k−1)を正の最大値とすればよい。
以上の説明からこの発明のパタン比較器における特殊処
理は格子点領域10、11、12、16、17の場合のみであり、
他は(13)式、(14)式の通常処理が適用される。
理は格子点領域10、11、12、16、17の場合のみであり、
他は(13)式、(14)式の通常処理が適用される。
次にこの発明のパタン比較器の実施例について第1図を
用いて説明する。
用いて説明する。
第1図はこの発明のパタン比較器の説明に供するブロッ
ク図である。
ク図である。
第1図に示す実施例において、100は後述する各カウン
タ及び演算器を制御するコントローラ、101はlを与え
るカウンタ、102はパタン の時間点iを出力するカウンタ、103はパタン の時間点jを出力するカウンタ、104はパタン が格納されているメモリ、105はパタン が格納されているメモリである。これらメモリ104及び1
05には、例えば、図示していない音声の特徴を抽出する
部分から、コントローラ100を介して が格納されている。106はパタン の第1の の第2のベクトル との距離d(i,j)を算出する距離算出手段であるd演
算部、107はk=j−iを演算する減算器である。この
減算器107と上述したカウンタ101〜103と相俟って時間
点i及びjの格子点の座標系をl及びkの格子点の座標
系に変換する座標交換手段130を構成する。108は後述す
る演算器120の算出結果の一つであるg′(k)が格納
されている第1のメモリ、109は後述する演算器120のも
う一方の算出結果であるS′(k)が格納されている第
2のメモリである。110は第1のメモリ108及び第2のメ
モリ109のアドレスkを与えるカウンタで上述した減算
器107と相俟って番地算出手段131を構成している。120
はd(i,j)、S′(k)、g′(k)の値を入力して
各種演算、例えば、第1のパタン の一番目のパタンから第1のベクトル までの第1の部分パタンと第2のパタン の一番目のパタンから第2のベクトル までの第2の部分パタンまでの類似性を表わすg′
(k)=g(i,j)を算出すると共に、変数S′(k)
=[g(i−1,j−1)+2d(i,j)]の算出を行う演算
器、123はiとjの値により格子点(i,j)のうちの特殊
領域の判別する判別器であり、この実施例ではこの判別
器123と前述したコントローラ100と相俟って第1のメモ
リ108の初期化を行う初期化手段132を構成しているが、
初期化手段132として判別器123を含めなくてもよい。
タ及び演算器を制御するコントローラ、101はlを与え
るカウンタ、102はパタン の時間点iを出力するカウンタ、103はパタン の時間点jを出力するカウンタ、104はパタン が格納されているメモリ、105はパタン が格納されているメモリである。これらメモリ104及び1
05には、例えば、図示していない音声の特徴を抽出する
部分から、コントローラ100を介して が格納されている。106はパタン の第1の の第2のベクトル との距離d(i,j)を算出する距離算出手段であるd演
算部、107はk=j−iを演算する減算器である。この
減算器107と上述したカウンタ101〜103と相俟って時間
点i及びjの格子点の座標系をl及びkの格子点の座標
系に変換する座標交換手段130を構成する。108は後述す
る演算器120の算出結果の一つであるg′(k)が格納
されている第1のメモリ、109は後述する演算器120のも
う一方の算出結果であるS′(k)が格納されている第
2のメモリである。110は第1のメモリ108及び第2のメ
モリ109のアドレスkを与えるカウンタで上述した減算
器107と相俟って番地算出手段131を構成している。120
はd(i,j)、S′(k)、g′(k)の値を入力して
各種演算、例えば、第1のパタン の一番目のパタンから第1のベクトル までの第1の部分パタンと第2のパタン の一番目のパタンから第2のベクトル までの第2の部分パタンまでの類似性を表わすg′
(k)=g(i,j)を算出すると共に、変数S′(k)
=[g(i−1,j−1)+2d(i,j)]の算出を行う演算
器、123はiとjの値により格子点(i,j)のうちの特殊
領域の判別する判別器であり、この実施例ではこの判別
器123と前述したコントローラ100と相俟って第1のメモ
リ108の初期化を行う初期化手段132を構成しているが、
初期化手段132として判別器123を含めなくてもよい。
この発明の第1の実施例は以上の構成によって成され
る。
る。
上述したコントローラ100は第3図に示した演算シーケ
ンスを行うため、判別器123の出力をもとにカウンタ10
2、カウンタ103、カウンタ110、演算器120に各種コント
ロール信号を出力する。
ンスを行うため、判別器123の出力をもとにカウンタ10
2、カウンタ103、カウンタ110、演算器120に各種コント
ロール信号を出力する。
次にこの発明の動作について第3図と第1図を用いて説
明する。
明する。
カウンタ101からlが出力される。カウンタ101は初期的
にはリセットされている(S1)。次にカウンタ102にカ
ウンタ101の値l、カウンタ103にカウンタ101の値lが
ロードされる(S2〜S3)。その結果、カウンタ102から
はi、カウンタ103からはjが出力され、それぞれメモ
リ104、メモリ105のアドレスを決定する。メモリ104か
らはパタン のi番目のベクトル が、メモリ105からはパタン のj番目のベクトル が出力され、d演算器106によってd(i,j)が計算され
る(S4)。
にはリセットされている(S1)。次にカウンタ102にカ
ウンタ101の値l、カウンタ103にカウンタ101の値lが
ロードされる(S2〜S3)。その結果、カウンタ102から
はi、カウンタ103からはjが出力され、それぞれメモ
リ104、メモリ105のアドレスを決定する。メモリ104か
らはパタン のi番目のベクトル が、メモリ105からはパタン のj番目のベクトル が出力され、d演算器106によってd(i,j)が計算され
る(S4)。
次にメモリ108、メモリ109と演算器120を用いてg演算
が行われる(S4)。このg演算については後で詳細に述
べる。
が行われる(S4)。このg演算については後で詳細に述
べる。
次に第3図の処理ステップS5、S6、S3の処理と同等な処
理をカンタ102をカウントアップすることにより処理し
得られたi、jを用いてd演算、g演算を行う(S4)。
この処理はk=W−1となるまで(S6)、W回繰り返さ
れる。
理をカンタ102をカウントアップすることにより処理し
得られたi、jを用いてd演算、g演算を行う(S4)。
この処理はk=W−1となるまで(S6)、W回繰り返さ
れる。
以上の処理が終了した時点ではカウンタ102はi=l+
W−1、カンタ103はj=lの値を示している。
W−1、カンタ103はj=lの値を示している。
次にカウンタ102にカウンタ101の出力lを、カウンタ10
3にカウンタ101の出力lをロードしたのち、カウンタ10
2を1つカウントアップすることにより第3図の処理ス
テップS7及びS8での処理を行う。その結果、カウンタ10
2にはi=l+1、カウンタ103にはj=lは格納され
る。そこでd演算、g演算を行った(S9)のちカウンタ
102をカウントアップし、第3図の処理ステップS9、S1
0、S11、S8に対応する処理を行う。この処理はk=−
(W−1)となるまで(S11)、(W−1)回繰り返さ
れる。
3にカウンタ101の出力lをロードしたのち、カウンタ10
2を1つカウントアップすることにより第3図の処理ス
テップS7及びS8での処理を行う。その結果、カウンタ10
2にはi=l+1、カウンタ103にはj=lは格納され
る。そこでd演算、g演算を行った(S9)のちカウンタ
102をカウントアップし、第3図の処理ステップS9、S1
0、S11、S8に対応する処理を行う。この処理はk=−
(W−1)となるまで(S11)、(W−1)回繰り返さ
れる。
次にカウンタ101をカウントアップすることにより第3
図の処理ステップS12の処理を行い、同様な処理をl=
I−1となるまで(S13)、I回繰り返すことによりパ
タンマッチング処理を終了する。
図の処理ステップS12の処理を行い、同様な処理をl=
I−1となるまで(S13)、I回繰り返すことによりパ
タンマッチング処理を終了する。
そこで残されたg演算について述べる。第6図はg演算
のための流れ図である。
のための流れ図である。
カウンタ102、カウンタ103の出力をi、jとするとd演
算器106からはd(i,j)を出力されている。g演算はメ
モリ108、メモリ109、カウンタ110、演算器120を用い、
第6図の流れ図に従って行う。
算器106からはd(i,j)を出力されている。g演算はメ
モリ108、メモリ109、カウンタ110、演算器120を用い、
第6図の流れ図に従って行う。
演算器120には内部的に2つのレジスタ121とレジスタ12
2を持っており、演算のための補助レジスタとする。
2を持っており、演算のための補助レジスタとする。
またメモリ108はg′(−W)〜g′(W)までの2W+
1個の値を格納できる容量を、メモリ109はS′(−
W)〜S′(W)までの2W+1個の値を格納できる容量
を持っている。
1個の値を格納できる容量を、メモリ109はS′(−
W)〜S′(W)までの2W+1個の値を格納できる容量
を持っている。
次にg演算処理の動作を詳細に説明する。
先ず、カウンタ110に減算器107の出力j−i=kをロー
ドする(S20)。
ドする(S20)。
次に、メモリ108の出力g′(k)とd演算器106の出力
d(i,j)を用いて g′(k)+2d(i,j) を演算しレジスタ121に格納する(S21)。
d(i,j)を用いて g′(k)+2d(i,j) を演算しレジスタ121に格納する(S21)。
次に、レジスタ121の値をメモリ109に格納することによ
り S′(k)=g′(k)+2d(i,j) を実行する(S22)。
り S′(k)=g′(k)+2d(i,j) を実行する(S22)。
次に、カウンタ110をカウントアップしk+1とする(S
23)。
23)。
次に、メモリ109の出力S′(k+1)をレジスタ122に
格納する(S24)。
格納する(S24)。
次に、カウンタ110をカウントダウンしkとする(S2
5)。
5)。
次に、カウンタ110をカウントダウンしk−1とする(S
26)。
26)。
次に、メモリ109の出力S′(k−1)とレジスタ122の
出力S′(k+1)のうち小なるものとd演算器106の
出力d(i,j)を加算し、レジスタ122に格納する(S2
7)。
出力S′(k+1)のうち小なるものとd演算器106の
出力d(i,j)を加算し、レジスタ122に格納する(S2
7)。
次に、カウンタ110をカウントアップしkとする(S2
8)。
8)。
次に、メモリ109の出力S′(k)とレジスタ122の出力
のうち小なる値をレジスタ121に格納する(S29)。
のうち小なる値をレジスタ121に格納する(S29)。
次に、レジスタ121の値をメモリ108のg′(k)に格納
する(S30)。
する(S30)。
以上の処理によりg演算が行われる。しかし、上述した
g演算の処理は前に説明した通常処理であるため、格子
点領域10、11、12、16、17に対しては特別な処理が必要
となる。
g演算の処理は前に説明した通常処理であるため、格子
点領域10、11、12、16、17に対しては特別な処理が必要
となる。
特殊処理のためメモリ108のうちg′(1)〜g′
(W)、g′(−1)〜g′(−W)に相当するアドレ
スには正の最大値を、g′(0)のアドレスに相当する
アドレスには0を格納しておく必要がある。このような
前準備ののちであれば格子点領域10、16、17に対する特
殊処理は通常処理と同様なシーケンスで実行される。た
だし、格子点領域11及び12に対する特殊処理の場合に前
述の(S30)の処理を実行した後に、レジスタ121の値を
メモリ109のS′(k)に格納する処理が付加される。
(W)、g′(−1)〜g′(−W)に相当するアドレ
スには正の最大値を、g′(0)のアドレスに相当する
アドレスには0を格納しておく必要がある。このような
前準備ののちであれば格子点領域10、16、17に対する特
殊処理は通常処理と同様なシーケンスで実行される。た
だし、格子点領域11及び12に対する特殊処理の場合に前
述の(S30)の処理を実行した後に、レジスタ121の値を
メモリ109のS′(k)に格納する処理が付加される。
以上、説明したようにこの発明のパタン比較器は動作す
る。
る。
尚、上述した第1図に示すこの発明のパタン比較器の構
成は単なる一例であり、何等第1図の構成に限定される
ものではない。又、上述した実施例では、音声ベクトル
の処理につき説明したが、この発明はこれにのみ限定さ
れるものではなく、特徴ベクトルの時間系列として表わ
される2つの任意のパタンの処理にも適用して好適であ
る。
成は単なる一例であり、何等第1図の構成に限定される
ものではない。又、上述した実施例では、音声ベクトル
の処理につき説明したが、この発明はこれにのみ限定さ
れるものではなく、特徴ベクトルの時間系列として表わ
される2つの任意のパタンの処理にも適用して好適であ
る。
(発明の効果) 上述した説明からも明らかなように、この発明のパタン
比較器により特殊処理は、処理開始時に第1のメモリに
初期値を与えることによってある複数の特殊処理を通常
処理で行えること及び残りの特殊処理を実行するために
は(1)項のシーケンスのみを付加すれば良い。
比較器により特殊処理は、処理開始時に第1のメモリに
初期値を与えることによってある複数の特殊処理を通常
処理で行えること及び残りの特殊処理を実行するために
は(1)項のシーケンスのみを付加すれば良い。
これがため、この発明のパタン比較器はそれら特殊処理
のための特別な回路はほとんど必要とせず、従って、通
常処理に必要な回路構成にてDPマッチング演算処理が行
われ、また演算に必要なメモリの容量も極めて少ない特
徴を有する。従って、この発明のパタン比較器の回路構
成が簡単となる。
のための特別な回路はほとんど必要とせず、従って、通
常処理に必要な回路構成にてDPマッチング演算処理が行
われ、また演算に必要なメモリの容量も極めて少ない特
徴を有する。従って、この発明のパタン比較器の回路構
成が簡単となる。
第1図はこの発明のパタン比較器の一実施例の説明に供
するブロック図、 第2図は従来のパタンの比較演算の説明図、 第3図はDP演算の順序を説明するための流れ図、 第4図はこの発明のパタンの比較演算の説明図、 第5図は演算とメモリの関係を示す図、 第6図はg演算のための流れ図である。 50、52、56……メモリ領域 51、54……加算器、53、55……比較器 100……コントローラ 101、102、103、110……カウンタ 104、105……メモリ 106……距離算出手段(d演算部) 107……減算器、108……第1のメモリ 109……第2のメモリ、120……演算器 121、122……レジスタ、123……判別器 130……座標交換手段、131……番地算出手段 132……初期化手段。
するブロック図、 第2図は従来のパタンの比較演算の説明図、 第3図はDP演算の順序を説明するための流れ図、 第4図はこの発明のパタンの比較演算の説明図、 第5図は演算とメモリの関係を示す図、 第6図はg演算のための流れ図である。 50、52、56……メモリ領域 51、54……加算器、53、55……比較器 100……コントローラ 101、102、103、110……カウンタ 104、105……メモリ 106……距離算出手段(d演算部) 107……減算器、108……第1のメモリ 109……第2のメモリ、120……演算器 121、122……レジスタ、123……判別器 130……座標交換手段、131……番地算出手段 132……初期化手段。
Claims (1)
- 【請求項1】時間点iのベクトル系列及び時間点jのベ
クトル系列によってそれぞれ表される第1及び第2のパ
タン の類似性を表す値を算出するパタン比較器において、 (a)時間点i及びjが形成する格子点座標を、j=i
+kでk≧0のときi=l及びk<0のときj=lとし
て得られる第1の変数l及び第2の変数kの座標に座標
変換する座標変換手段と、 (b)前記第1の変数lを0から第1の所定数まで変化
させる第1の制御手段と、 (c)前記第1の変数lの値毎に、前記第2の変数k
を、先ず0から第2の正の所定数まで変化させ、続いて
−1から第3の負の所定数まで変化させる第2の制御手
段と、 (d)前記第1パタン を構成する時間点iの第1のベクトル と前記第2のパタン を構成する時間点jの第2のベクトル との距離d(i,j)を算出する距離算出手段と、 (e)前記第1の変数l及び前記第2の変数kの値毎
に、前記第1のパタン の一番目のパタンから前記第1のベクトル までの第1の部分パタンと前記第2のパタン の一番目のパタンから前記第2のベクトル までの第2の部分パタンまでの類似性を表す第1の値
g′(k)=g(i,j)を算出すると共に、第2の値
S′(k)=[g(i−1,J−1)+2d(i,j)]を算出
する演算器と、 (f)前記第1の値g′(k)を格納する第1のメモリ
と、 (g)前記第2の値S′(k)を格納する第2のメモリ
と、 (h)前記第1のメモリを初期化する初期化手段と を具えることを特徴とするパタン比較器。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62280768A JPH0782350B2 (ja) | 1987-11-06 | 1987-11-06 | パタン比較器 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62280768A JPH0782350B2 (ja) | 1987-11-06 | 1987-11-06 | パタン比較器 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH01121899A JPH01121899A (ja) | 1989-05-15 |
| JPH0782350B2 true JPH0782350B2 (ja) | 1995-09-06 |
Family
ID=17629688
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP62280768A Expired - Lifetime JPH0782350B2 (ja) | 1987-11-06 | 1987-11-06 | パタン比較器 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0782350B2 (ja) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6252320B2 (ja) | 2014-04-02 | 2017-12-27 | トヨタ自動車株式会社 | アイドル学習制御装置 |
-
1987
- 1987-11-06 JP JP62280768A patent/JPH0782350B2/ja not_active Expired - Lifetime
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6252320B2 (ja) | 2014-04-02 | 2017-12-27 | トヨタ自動車株式会社 | アイドル学習制御装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH01121899A (ja) | 1989-05-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN113963221B (zh) | 一种图像聚类方法、装置、计算机设备及可读存储介质 | |
| Ma et al. | Stochastic approximations for finite-state Markov chains | |
| JPS6360920B2 (ja) | ||
| WO2004090782A1 (en) | Accurate linear parameter estimation with noisy inputs | |
| CN115169412A (zh) | 用于确定作业模式的方法、装置、控制器及工程车辆 | |
| JPH0782350B2 (ja) | パタン比較器 | |
| CN116185692B (zh) | 数据分解方法、设备和存储介质 | |
| JP2518871B2 (ja) | パタン比較器 | |
| US20220309351A1 (en) | Structure transformation device, structure transformation method, and computer readable medium | |
| JPH06348307A (ja) | 言語学的制御の評価方法 | |
| JPH04211829A (ja) | 複合型エキスパートシステム | |
| CN120950816B (zh) | 一种基于向量法的超容储能风速预测方法及相关产品 | |
| US7613608B2 (en) | Method and circuit for noise estimation, related filter, terminal and communication network using same, and computer program product therefor | |
| CN115408549B (zh) | 工件点云的过滤方法、装置、计算机可读介质及电子设备 | |
| CN119493950B (zh) | 稀疏卷积规则表的生成方法、运算方法及张量处理单元 | |
| JPS59161782A (ja) | パタ−ン・マツチング方法 | |
| CN121283372B (zh) | 鲁棒的梯度自适应格型滤波器 | |
| JP3221067B2 (ja) | 3次元構造格子生成方法およびその装置 | |
| CN115049994B (zh) | 一种车道线检测方法及系统、计算机可读存储介质 | |
| CN108062545A (zh) | 一种人脸对齐的方法及装置 | |
| CN119795196A (zh) | 路径规划方法、装置、手部机器人及介质 | |
| CN119669635A (zh) | 一种基于改进卡尔曼滤波算法的线性系统延迟概率估计方法 | |
| CN116579930A (zh) | 基于点云分区密度的点云去噪方法 | |
| CN118015204A (zh) | 地图处理方法、地图处理装置及计算机存储介质 | |
| CN121325547A (zh) | 一种基于小波变换的时变迭代学习前馈控制系统及方法 |