JP4631178B2 - ベクトル量子化方法及びベクトル量子化装置 - Google Patents

ベクトル量子化方法及びベクトル量子化装置 Download PDF

Info

Publication number
JP4631178B2
JP4631178B2 JP2001028798A JP2001028798A JP4631178B2 JP 4631178 B2 JP4631178 B2 JP 4631178B2 JP 2001028798 A JP2001028798 A JP 2001028798A JP 2001028798 A JP2001028798 A JP 2001028798A JP 4631178 B2 JP4631178 B2 JP 4631178B2
Authority
JP
Japan
Prior art keywords
vector
representative
representative vector
sorting
code book
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 - Fee Related
Application number
JP2001028798A
Other languages
English (en)
Other versions
JP2002232295A (ja
Inventor
幸彦 茂木
一彦 西堀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2001028798A priority Critical patent/JP4631178B2/ja
Publication of JP2002232295A publication Critical patent/JP2002232295A/ja
Application granted granted Critical
Publication of JP4631178B2 publication Critical patent/JP4631178B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ベクトル量子化技術に関わり、特にパターン認識・計算幾何学・画像信号・音声信号などにおけるベクトル量子化方法及びベクトル量子化装置に関するものである。
【0002】
【従来の技術】
ベクトル量子化は、入力空間を有限個の代表ベクトルで符号化する手法である。ベクトル量子化の応用例として、パターン認識の特徴抽出、計算幾何学の最近点問題、情報の圧縮、画像や音声などの量子化などが挙げられる。
【0003】
図21にベクトル量子化の概念図を示す。ベクトル量子化には
(1)入力ベクトルの符号化
(2)コードブックの生成
という2つの側面をもつ。
【0004】
ベクトル量子化の(1)入力ベクトルの符号化の手続では、入力ベクトルx(1050)に対してあらかじめ与えられているN個の代表ベクトル{コードベクトルと呼ばれることもある}からなるコードブックW={w∈R:i=1,・・・,N}(1040)の中から最も近い代表ベクトルwminを選びだし(1060)、その代表ベクトルの番号min、又は、その代表ベクトルの値を出力する(1070)。
【0005】
その際、最も近い代表ベクトルを選ぶときの測度として、非負のひずみ測度d(x,w)を利用する。すなわち、代表ベクトルの番号を出力したいときの式は、次の(1)式にて表すことができる。
【0006】
【数1】
Figure 0004631178
【0007】
また、代表ベクトルの値を出力したいときの式は、次の(1)式にて表すことができる。
【0008】
【数2】
Figure 0004631178
【0009】
また、ベクトル量子化の(2)コードブックの生成では、初期コードブック(1010)を設定し、コードブック生成用の入力ベクトル集合(1030)を与えて、入力ベクトル集合に合うように代表ベクトルの値を修正することを繰り返して最適化し(1020)、最終的に最適なコードブック(1040)を得る。コードブック生成用の入力ベクトルは,(1)入力ベクトルの符号化で入力される入力ベクトルと異なっていてもかまわない。
【0010】
上記(1)入力ベクトルの符号化は、1つの入力ベクトルに対して、全ての代表ベクトルとのひずみを計算し、最も近い代表ベクトルを選択する全探索が基本であるため、符号化に時間が非常にかかる点が問題点である。
【0011】
この問題を解決する手法の一つとして、特開平4−156181号公報に開示されたベクトル量子化方法及びベクトル量子化装置がある。このベクトル量子化技術は、文献[中野恵一,笠原博徳:“ソートされたコードブックを用いた高速ベクトル量子化(Fast Vector Quantization Using Sorted Codebook:VQ-SC)”電子情報通信学会論文誌D-II Vol.J77-D-II No.10 pp.1984-1992,1994]に関連するものであって、VQ−SCは、大雑把に述べると以下のようなアルゴリズムである。
(1)代表ベクトルを各次元ごとにソートし,その順番を記憶しておく。
(2)探索が済んだ代表ベクトルかどうかをしめすフラグをクリアする。
(3)ひずみの下限値となるひずみを計算する。
(4)分枝限定法の原理に基づいて、ひずみの上限値を利用することで解の精度を向上する可能性のない代表ベクトルの探索を省略する。探索が済んだ代表ベクトルはフラグをたてる。ひずみの下限値に使われている代表ベクトルの探索が省略された場合には、ひずみの下限値を更新する。ひずみの上限値とひずみの下限値が一致するまで探索を続ける。次の探索する代表ベクトルの決め方は、ヒューリスティックである。
【0012】
ひずみの上限値とひずみの下限値を利用することにより、コードブックの一部を調べれば全探索した場合と同じ代表ベクトルが高速に探索できる。
【0013】
【発明が解決しようとする課題】
しかし、上記の方法には次のような問題点がある。
(1)各次元ごとに代表ベクトルをソートする必要があり、次元が高くなるとソートにかかる時間が大きくなる。
(2)各次元ごとにソートされた代表ベクトルの順番を記憶しておく必要があり、記憶しておくメモリ容量が膨大になる。
(3)各入力ベクトルごとにどの代表ベクトルの探索が済んだかどうかを示すフラグをクリアする必要があり、入力ベクトルが多いと、クリアする時間が膨大になる。また、代表ベクトルの数分、フラグのためのメモリ容量が必要である。
(4)次の探索する代表ベクトルをヒューリスティックに決めてよいため、効率の良い決定方法を考える必要がある。
【0014】
そこで、本発明の目的は、上記の問題点を解決することができるようにしたベクトル量子化方法及びベクトル量子化装置を提供することにある。
【0015】
【課題を解決するための手段】
ここで、K次元の入力ベクトルxに対して、最小のひずみをもつ代表ベクトルwminを探索するときに、ある次元kに対して、次の(3)式となるような代表ベクトルw を探索する必要はない。
【0016】
【数3】
Figure 0004631178
【0017】
しかし、式(3)は、符号化されるwmin が求まっているときの条件であり、式(3)を計算することができない。また、k次元に対する代表ベクトルの値は、規則正しく並んでいるわけではなく、順番がランダムな状態になっているので、探索終了条件を決めることができない。
【0018】
そこで、本発明では、次のような方法を採用する。
(1) いままでの探索で見つかった最小の代表ベクトルをwcur minとする。すなわち、探索が終了すれば最終的に得られたをdcur min持つ代表ベクトルwcur minが最小のひずみをもつ代表ベクトルwmin =wcur minとなる。
(2) 探索を始める前に、k次元の値に応じて代表ベクトルを小さい順(又は大きい順)にソートしておく。式(3)を満足する代表ベクトルが存在したら、ソートしてあるのでそれ以上先の代表ベクトルは最小のひずみを持つ代表ベクトルになる可能性は全くない。すなわち、代表ベクトルをソートをしておくことで、探索の効率を大幅に上げることができる。
【0019】
式(3)のひずみの計算を考察すると、一般に各次元の代表ベクトルの値のとりうる範囲(レンジ)は異なるはずである。したがって、レンジが最も広いものを選ぶと探索回数は減るはずである。画像の階調変換では、R,G,Bはどの次元でも0〜255の値をとるので、どの次元を選択しても同じような回数になると思われる。
【0020】
ソートしておくことで探索の打切り方法が決まるが、最低限の回数で探索を打ち切ることが望ましい。そのためには、一番最初に設定する最小の代表ベクトルwcur minの決め方が重要である。この初期の代表ベクトルの決め方次第で、探索効率が大幅に変わることが予想される。
【0021】
2つの場合に分けて、探索する初期の代表ベクトルの決め方は、以下のように設定する方法が効率的な選択であると考えられる。
【0022】
あらかじめ決められている代表ベクトルに入力ベクトルを符号化するとき、一般的には、隣の入力データが符号化された代表ベクトルを初期値とする。
【0023】
静止画の場合、隣の画素どうしは同じような色を持つ可能性が高いので、隣の画素の代表ベクトルを初期値とする。
【0024】
動画の場合、2つのやり方が考えられる。一つは静止画の場合と同様,隣の画素の代表ベクトルを初期値とする。もうひとつは,フレーム間の絵は似ていることを利用して、前フレームの同じ位置の代表ベクトルを初期値とする。
【0025】
本発明は、ベクトル量子化方法であって、ソートの基準となる次元を指定し、指定された次元の代表ベクトルの値に基づいて代表ベクトルをソートすることによりコードブックを並び替えるソーティングステップと、入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する演算ステップと、現在の最小のひずみとその代表ベクトルの番号を保持しており、現在の最小のひずみ をもつ代表ベクトルと上記演算ステップにより計算された代表ベクトルについてひずみを比較し、ひずみが小さい方を現在の最小のひずみとすることにより、符号化される代表ベクトルの候補を決める判定ステップと、上記指定された次元を基準としてソートしたコードブックをコードブック記憶手段の指定したアドレスに書き込む記憶ステップとを有し、上記演算ステップにおいて入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する際に、最初に使用する初期代表ベクトルのアドレスを指定するとともに、ソートの基準となった次元を指示して、上記各ステップを繰り返し行い、最小のひずみを持つ代表ベクトルに入力ベクトルを符号化することを特徴とする。
【0027】
また、本発明は、ベクトル量子化方法であって、ソートの基準となる次元を指定し、指定した次元の代表ベクトルの値に基づいて代表ベクトルをソートすることによりコードブックを並び替えるソーティングステップと、入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する演算ステップと、現在の最小のひずみとその代表ベクトルの番号を保持しており、現在の最小のひずみ をもつ代表ベクトルと上記演算ステップにより計算された代表ベクトルについてひずみを比較し、ひずみが小さい方を現在の最小のひずみとすることにより、符号化される代表ベクトルの候補を決める判定ステップと、上記指定された次元を基準としてソートしたコードブックをコードブック記憶手段の指定したアドレスに書き込む記憶ステップと、ソートしたコードブックの並び順を記憶手段に書き込む記憶ステップとを有し、上記演算ステップにおいて入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する際に、最初に使用する初期代表ベクトルのアドレスを指定するとともに、ソートの基準となった次元を指示して、上記各ステップを繰り返し行い、上記判定ステップにおける判定結果に応じて、上記記憶手段に書き込まれたコードブックの並び順を参照し、上記コードブック記憶ステップにおいて、上記指定された次元を基準としてソートしたコードブックを上記コードブック記憶手段に書き込み、最小のひずみを持つ代表ベクトルに入力ベクトルを符号化することを特徴とする。
【0029】
本発明は、ベクトル量子化装置であって、コードブックを記憶するコードブック記憶手段と、上記コードブック記憶手段からコードブックを読み出し、指定された次元を基準としてコードブックをソートし、ソートしたコードブックを上記コードブック記憶手段の指定したアドレスに書き込むソーティング処理を行うソーティング手段と、入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する演算処理を行う演算手段と、現在の最小のひずみとその代表ベクトルの番号を保持しており、現在の最小のひずみ をもつ代表ベクトルと上記演算手段により計算された代表ベクトルについてひずみを比較し、ひずみが小さい方を現在の最小のひずみとすることにより、符号化される代表ベクトルの候補を決める判定処理を行う判定手段と、上記ソーティング手段、演算手段及び判定手段の処理フローを制御する制御手段とを備え、上記制御手段は、上記ソーティング手段にソートの基準となる次元を指定し、上記演算手段に、当該演算手段において入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する際に、最初に使用する初期代表ベクトルのアドレスを指定するとともに、ソートの基準となった次元を指示し、上記演算手段による上記演算処理と、上記判定手段による判定処理と、上記ソーティング手段によるソーティング処理を繰り返し行い、最小のひずみを持つ代表ベクトルに入力ベクトルを符号化することを特徴とする。
【0031】
また、本発明は、ベクトル量子化装置であって、コードブックを記憶するコードブック記憶手段と、ソートされたコードブックの並び順を記憶する記憶手段と、上記コードブック記憶手段からコードブックを読み出し、指定された次元を基準としてコードブックをソートし、ソートしたコードブックを上記コードブック記憶手段の指定したアドレスに書き込むとともに、ソートしたコードブックの並び順を上記記憶手段に書き込むソーティング手段と、入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する演算手段と、現在の最小のひずみとその代表ベクトルの番号を保持しており、現在の最小のひずみ をもつ代表ベクトルと上記演算手段により計算された代表ベクトルについてひずみを比較し、ひずみが小さい方を現在の最小のひずみとすることにより、符号化される代表ベクトルの候補を決める判定処理を行う判定手段と、上記ソーティング手段、演算手段及び判定手段の処理フローを制御する制御手段とを備え、上記制御手段は、上記ソーティング手段にソートの基準となる次元を指定し、上記演算手段に、当該演算手段において入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する際に、最初に使用する初期代表ベクトルのアドレスを指定するとともに、ソートの基準となった次元を指示し、上記演算手段による演算処理と、上記判定手段による判定処理と、上記ソーティング手段によるソーティング処理を繰り返し行い、最小のひずみを持つ代表ベクトルに入力ベクトルを符号化することを特徴とする。
【0033】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。
【0034】
本発明は、例えば図1に示すような構成のベクトル量子化器100に適用される。
【0035】
このベクトル量子化器100は、入力部110、ソーティング装置120、コードブックメモリ130、演算装置140、判定装置150及び制御装置160から構成される。
【0036】
このベクトル量子化器100において、入力部110は、入力端子101より新しいコードブックを受け取る。そして、この入力部110は、コードブックを記憶するコードブックメモリ130に、コードブックを書き込むアドレスと新しいコードブックを与える。
【0037】
ソーティング装置120は、制御装置160からのソートの指示とどの次元kを基準としてソートするかの指示を受け、コードブックメモリ130からコードブックを読み出し、指定された次元を基準としてコードブックをソートする。また、ソーティング装置120は、ソートしたコードブックをコードブックメモリ130の指定したアドレスに書き込む。
【0038】
コードブックメモリ130は、入力部110から書き込むアドレスと新しいコードブックを受け取り、そのコードブックを指定されたアドレスに格納する。また、コードブックメモリ130は、コードブックをソーティング装置120に渡す。また、コードブックメモリ130は、ソーティング装置120によりソートされたコードブックと書き込むアドレスを受け取り、指定されたアドレスにコードブックを格納する。さらに、コードブックメモリ130は、ひずみ計算・アドレス計算を行う演算装置140から、アドレスを受け取り、代表ベクトルのデータ(代表ベクトルの値w,番号iなど)を渡す。
【0039】
演算装置140は、制御装置160からひずみ・アドレスの計算の指示を受け、コードブックメモリ130に読み込みたい代表ベクトルのアドレス(初期の代表ベクトルは制御回路から指示される)を指定して、対応するデータ(代表ベクトルの番号と値)を読み込む。また、演算装置140は、入力端子102から入力ベクトルxを受け取り、入力ベクトルと代表ベクトルとのひずみd(x,w)を計算する。そして、演算装置140は、ひずみd(x,w)とデータ(代表ベクトルの番号と値)を判定装置150に渡す。また、演算装置140は、制御装置160からソートの基準となった次元kの指示を受け、k次元だけのひずみd(x,wik)も判定装置150に渡す。さらに、演算装置140は、判定装置150から、判定結果により探索する代表ベクトルの方向を示すup/downの情報を受け、次の探索する代表ベクトルのアドレスを計算する。なお、演算装置140は、探索終了を示す情報finishを受けた場合は、代表ベクトルの探索を終了する。
【0040】
判定装置150は、現在の最小のひずみdcur minとその代表ベクトルの番号minを保持しており、現在の最小のひずみdcur minをもつmin番の代表ベクトルと演算装置140により計算されたi番の代表ベクトルについてひずみd(x,w)を比較し、ひずみが小さい方を新しいmin番、現在の最小のひずみdcur minとする。また、判定装置150は、制御装置160からの指示により、現在の最小のひずみを持つ代表ベクトルの番号min(インデックス)、又は代表ベクトルの値を出力端子103に出力する。また、判定装置150は、制御装置160から判定の指示を受け、k次元だけのひずみd(x,wik)と現在の最小のひずみdcur minを比較し、d(x,wik)の方が大きければ、次に探索する代表ベクトルの方向を示すup/downの情報を変更し、また、up/down両方向とも調べ終わった場合には探索終了を示す情報finishを演算装置140に渡し、d(x,wik)の方が小さければ、同方向の次の代表ベクトルを調べる情報を演算装置140に渡す。
【0041】
制御装置160は、ソーティング装置120、演算装置140及び判定装置150の処理フローを制御する。また、制御装置160は、ソーティング装置120にソートの基準となる次元を指定する。また、制御装置160は、演算装置140に初期代表ベクトルのアドレス(又は番号)を指定し、また、ソートの基準となった次元を指示する。さらに、制御装置160は、判定装置150に出力端子103に出力するのが代表ベクトルの番号なのか、代表ベクトルの値なのかを指示する。
【0042】
このような構成のベクトル量子化器100において、本発明では、図2のフローチャートに示す符号化アルゴリズムにしたがってソートされた代表ベクトルを用いた高速ベクトル量子化(Vector Quantization by Searching in Sirted Codebook:VQ−SSC)を行う。
【0043】
すなわち、このベクトル量子化器100では、先ず、ステップF101において代表ベクトルをソートするための基準の次元kを指定する。
【0044】
次のステップF102では、次元kの代表ベクトルの値に基づいて代表ベクトルをソートする。
【0045】
ソートされた順番の情報については、以下の2通りのやり方が考えられる。
【0046】
(1)直接代表ベクトルの順番を入れ替えてしまう。代表ベクトルの番号を変更したくないときは、代表ベクトルの番号の情報を持つ構造体にして入れ替える。
【0047】
直接ならべ変えているので、自分より下位の代表ベクトルの番号lowerは、自分の配列の番号−1とした配列の番号となり、自分より上位の代表ベクトルの番号upperは、自分の配列の番号+1とした配列の番号となる。
【0048】
(2)ソートしたときの順番を示す配列を用意する場合、各代表ベクトルが保持すべき情報は、自分より下位の代表ベクトルの番号lowerと、自分より上位の代表ベクトルの番号upperである。
【0049】
ここで、上記ステップF101とステップF102は、コードブックが変わらない限り一度だけ行えばよい。
【0050】
次のステップF103では、入力ベクトルxと初期の代表ベクトルw とのひずみの計算を行い、このひずみd(x,w)を現在の最小のひずみdcur minとし、番号iを符号化の候補として保存しておく。
【0051】
cur min=d(x,w) (4)
min=i (5)
次のステップF104では、初期の代表ベクトルwの両隣の代表ベクトルの番号、すなわち、
lower=下位方向の隣の代表ベクトルの番号
upper=上位方向の隣の代表ベクトルの番号
を保存する。
【0052】
次のステップF105では、入力ベクトルxとlower番の代表ベクトルwlowerとのひずみd(x,wlower)の計算を行い、計算途中のd(x,wlowerk)を保存しておく。
【0053】
次のステップF106では、ステップF105で計算したひずみd(x,wlower)が現在の最小のひずみdcur minより小さいか否か、すなわち、
d(x,wlower)<dcur min (6)
が成り立つか否かを判定する。もし、この(6)式が成り立つならば、次のステップF107へ進み、さもなければ、ステップF108へ移る。
【0054】
ステップF107では、
cur min=d(x,wlower) (7)
min=lower (8)
とする。
【0055】
次のステップF108では、下位方向の探索を続けるかどうか判断する。このステップF108において、もし、
d(x,wlowerk)>dcur min (9)
を満足するなら,下位方向の探索は終了で、ステップF110へ移り、さもなければ、次のステップF109へ進む。
【0056】
ステップF109は、代表ベクトルの番号lowerの更新ステップであり、現在のlower番の代表ベクトルの下位方向の隣の代表ベクトルの番号を新しいlowerとして、ステップF105へ戻る。
【0057】
ステップF110では、入力ベクトルxとupper番の代表ベクトルwupperとのひずみd(x,wupper)の計算を行い、計算途中のd(x,wupperk)を保存しておく。
【0058】
次のステップF111では、ステップF110で計算したひずみd(x,wupper)が現在の最小のひずみdcur minより小さいか否か、すなわち、
d(x,wupper)<dcur min (10)
が成り立つか否かを判定する。もし、この(10)式が成り立つならば、次のステップF112へ進み、さもなければ、ステップF113へ移る。
【0059】
ステップF112では、
cur min=d(x,wupper) (11)
min=upper (12)
とする。
【0060】
次のステップF113では、上位方向の探索を続けるかどうか判断する。このステップF113では、もし、
d(x,wupperk)>dcur min (13)
を満足するなら、上位方向の探索は終了で、ステップF115へ移り、さもなければ、次のステップF114へ進む。
【0061】
ステップF114は、代表ベクトル番号upperの更新ステップであり、現在のupper番の代表ベクトルの上位方向の隣の代表ベクトルの番号を新しいupperとして、ステップF110へ戻る。
【0062】
次のステップF115は、入力ベクトルxを代表ベクトルwminに符号化する。このステップF115において、入力ベクトルxは、最小のひずみdcur minを持つ番号minの代表ベクトルwminに符号化される。
【0063】
ここで、このベクトル量子化器100におけるベクトル量子化の符号化アルゴリズム(VQ−SSC)の動作について、例題を用いて説明する。
【0064】
この例題では、ひずみ測度として二乗誤差ひずみ測度を用いている。
【0065】
d(x,w)=(x−w) (14)
当然、このほかのひずみ測度を用いた場合も、本発明は有効である。また、次元ごとに違うひずみ測度を用いたときも、本発明は有効である。
【0066】
3次元の入力ベクトルx=(12,16,13)に対して、従来どおりすべての代表ベクトルに対してひずみを計算し、ベクトル量子化(符号化)される代表ベクトルを求めた例を図3に示す。この場合、12個の代表ベクトルに対してひずみを計算しないと、符号化される代表ベクトルが決まらない。今回の例題では、最小ひずみ8を持つ9番の代表ベクトルw=(14,18,3)に符号化される。
【0067】
これに対して、ベクトル量子化の符号化アルゴリズム(VQ−SSC)では、k=1に対して代表ベクトルをソートしてある。わかりやすいようにソートした順に代表ベクトルの番号をつけた状態にしてある。実際は、わざわざ代表ベクトルの番号をつけ直す必要ななく、自分の代表ベクトルの両隣(上位方向・下位方向)の代表ベクトルの番号を保存するようにプログラムすればよい。
【0068】
もし、符号化される代表ベクトルが事前にわかっているならば、最小ひずみが8なので、√8以下の最大の整数、すなわち、2以下の範囲を探索すればよい。図3から、1次元で12±2となる代表ベクトルは、(7),(8),(9)番の3個の代表ベクトルだけを調べればよい。
【0069】
しかし、事前に符号化される代表ベクトルがわかるはずがないので、次のようなアルゴリズム(探索0〜探索6)を用いて探索をすることになる。
【0070】
すなわち、探索0では、図4に示すように、初期の代表ベクトルを(7)番の代表ベクトルとし、ひずみd(x,w)を計算する。
【0071】
d(x,w)=17
lower=6
upper=8
そして、最小のひずみdcur min=17とその代表ベクトルの番号min=7を保存保存する。
【0072】
探索1では、図5に示すように、lower(6)番の代表ベクトルのひずみd(x,wlower)を計算する。
【0073】
d(x ,wlower1)=9
d(x,wlower)=189
そして、d(x,wlower)と現在の最小のひずみdcur minとを比較すると、d(x,wlower)はdcur minよりも大きいので、最小のひずみdcur minはそのままの値すなわち
cur min=17
min=7
を保持する。また、d(x ,wlower1)は現在の最小のひずみdcu minよりも小さいので、次のlower=5の探索2に移る。
【0074】
次の探索2では、図6に示すように、lower(5)番の代表ベクトルのひずみd(x,wlower)を計算する。
【0075】
d(x ,wlower1)=9
d(x,wlower)=14
そして、d(x,wlower)と現在の最小のひずみdcur minとを比較すると、d(x,wlower)はdcur minよりも小さいので、最小のひずみdcur minを更新して
cur min=14
min=5
とする。また、d(x ,wlower1)はdcur min=14よりも小さいので、次のlower=4の探索3に移る。
【0076】
探索3では、図7に示すように、lower(4)番の代表ベクトルのひずみを計算を行う。
【0077】
d(x ,wlower1)=16
d(x,wlower)=186
そして、d(x,wlower)と現在の最小のひずみdcur minとを比較すると、d(x,wlower)はdcur minよりも大きいので、最小のひずみdcur minはそのままの値すなわち
cur min=14
min=5
を保持する。また、d(x,wlower1)はdcur min=14よりも大きいので、下位方向の探索は終了し、次にupper=8の上位方向の探索4に移る。
【0078】
探索4では、図8に示すように、upper(8)番の代表ベクトルのひずみを計算する。
【0079】
d(x,wupper1)=1
d(x,wupper)=46
そして、d(x,wupper)と現在の最小のひずみdcur minとを比較すると、d(x,wlower)はdcur minよりも大きいので、最小のひずみdcur minはそのままの値すなわち
cur min=14
min=5
を保持する。また、d(x ,wupper1)はdcur min=14よりも小さいので、次のupper=9の探索5に移る。
【0080】
探索5では、図9に示すように、upper(9)番の代表ベクトルのひずみを計算する。
【0081】
d(x,wupper1)=4
d(x,wupper)=8
そして、d(x,wupper)と現在の最小のひずみdcur minとを比較すると、d(x,wlower)はdcur minよりも小さいので、最小のひずみdcur minを更新して、
cur min=8
min=9
とする。また、d(x,wupper1)はdcur min=9よりも小さいので、次のupper=10の探索6に移る。
【0082】
探索6では、図10に示すように、upper(10)番の代表ベクトルのひずみを計算する。
【0083】
d(x,wupper1)=9
d(x,wupper)=41
そして、d(x,wupper)と現在の最小のひずみdcur minとを比較すると、d(x,wlower)はdcur minよりも大きいので、最小のひずみdcur minはそのままの値すなわち
cur min=8
min=9
を保持する。また、(x,wupper1)はdcur min=9よりも大きいので、上位方向の探索終了する。
【0084】
このようにして下位方向、上位方向、両方とも探索を終了し、最終的に得られた最小のひずみdcur min=8をもつmin=9番の代表ベクトルが入力ベクトルx=(12,16,13)に対する符号化される代表ベクトルである。
【0085】
ここで、図11より、あらかじめ符号化される代表ベクトルがわかっている場合は3個の代表ベクトルを探索すれば十分であるが、一般には無理なので初期代表ベクトルを決めて探索する必要がある。今回の場合、最小ひずみを更新しながら探索したので、7個の代表ベクトルを探索することで最小のひずみを持つ代表ベクトルを得ることができた。これが階調変換では,代表ベクトルの数が256個あるので、探索範囲を大幅に制限することが期待できる。
【0086】
以上、このベクトル量子化器100におけるベクトル量子化の符号化アルゴリズム(VQ−SSC)の動作について、例題を用いて説明したが、次に、上記ベクトル量子化器100による静止画像の符号化のシミュレーション結果(図12及び図13)、及び動画像の符号化のシミュレーション結果(図14及び図15)について説明する。
【0087】
上記ベクトル量子化器100による静止画像の符号化の例題として、各8ビット(R,G,B)のフルカラーの画像を256色に減色する階調変換を取り上げる。コードブックは,各画像ごとに最適なものを作成してある。ソートは、R,G,Bそれぞれを選択したときの代表ベクトルの探索回数を示す。
【0088】
テスト画像として、Kodak PHOTOCD に入っている図17、図18、図19及び図20に示す24枚のBMPファイルに対しても、次の2通りのやり方で256色に階調変換した。
(1) 図12から、どの色を選択しても平均約20個以下の探索で、符号化されるべき代表ベクトルを発見していることがわかる。すなわち、ソートに使う色はそれほど気にする必要はなく、どの色を選択しても同じような探索回数になる。
(2) Kodok PHOTOCDの24枚のBMPファイルの適用から、探索回数が最も少ない色は絵によって異なる。ただ、Kodak PHOTOCDの場合、赤色を基準にソートをすれば、平均として速く符号化される代表ベクトルを見つけることができることが図12及び図13から読みとれる。
【0089】
また、動画像などの符号化に用いた場合も、前フレームの代表ベクトルを初期代表ベクトルに選んだり、隣の画素の代表ベクトルを初期代表ベクトルに選んだりすれば、探索する代表ベクトルの数は少なくなる。
【0090】
シミュレーションでは,Flower Gardenの連続する10枚のフレームに対して、256色の代表ベクトルに符号化する(シーンチェンジはない)。その256色の代表ベクトルは、1枚目のフレームに対して設計されたものである。初期代表ベクトルの選び方を
(1)前フレームの代表ベクトルを選択した場合、
(2)隣の画素の代表ベクトルを選択した場合、
の2通り行った。図14に探索回数及び探索時間を示している。図15に各フレームと探索回数の関係を示した。ただし、時間の測定は、次の環境で行った。
【0091】
CPU:PentiumII 400MHz
Memory:64Mbyte
OS:WindowsNT4.0
このように、初期代表ベクトルに前フレームの画素を使った場合、探索した代表ベクトルの平均の個数が約44個であり、隣の画素を使った場合、約27個である。それぞれ、全探索に比べて1/5.82、1/9.48の探索で符号化される代表ベクトルを見つけている。今回のFlower Gardenでは、初期代表ベクトルに隣の画素を用いた方がよい結果を得ることができた。
【0092】
また、本発明は、ひずみの部分和を用いた高速化手法を組み合わせるとより一層の効果がある。ひずみの部分和を用いた高速化手法は、次式で示されるひずみの部分和が現在の最小のひずみdcur minと比較して大きいときは、次の代表ベクトルを探索する。
【0093】
【数4】
Figure 0004631178
【0094】
すなわち、ひずみを最後まで求めるのではなく、計算途中のひずみと現在の最小のひずみを比較することで探索の効率をあげる手法である。このひずみの部分和を用いた高速化手法は、文献[Bei C-D. & Gray, R. M..“An improvement of minimum distortion encoding algorithm for vector quantization.” IEEE Transactions on Communications, COM-33, pp.1132-1133, 1985.]に詳述されている。
【0095】
ここでは、上述の図1に示したベクトル量子化器100の変形例の変形例として、図16を参照して差分のみを説明する。
【0096】
コードブックメモリ130は、コードブックとアドレスをソーティング装置120に渡す。
【0097】
ソーティング装置120は、制御装置160からのソートの指示とどの次元kを基準としてソートするかの指示を受け、コードブックメモリ130からコードブックのアドレスとコードブックを読み出し、指定された次元を基準としてコードブックをソートする。そして、そのソートされた代表ベクトルの順番通りに、各代表ベクトルのアドレスを並び替え、ソート順に並んだアドレスをコードブックソート表170に書き込む。
【0098】
演算装置140は、判定装置150から、判定結果により探索する代表ベクトルの方向を示すup/downの情報を受け、次の探索する代表ベクトルのアドレスをコードブックソート表170に参照しに行き、アドレスを受け取る。そして、コードブックメモリ130に、そのアドレスを指定して、対応するデータ(代表ベクトルの番号と値)を読み込む。
【0099】
そして、コードブックソート表170は、ソーティング装置120から受け取ったアドレスを格納する。また、コードブックソート表170は、演算装置140からの次の探索する代表ベクトルの参照の指示に従って、その代表ベクトルのアドレスを演算装置140に渡す。
【0100】
【発明の効果】
以上説明したように、本発明によれば、一部分の代表ベクトルを探索するだけで全探索と同じ代表ベクトルを高速に選択することができる。また、本発明によれば、従来方法と比較して、記憶するメモリが少なくて済む。また、本発明によれば、従来方法と比較して、ソートはいずれかの一次元についてのみ行えばよいので、時間が短縮できる。また、本発明によれば、従来方法と比較して、ソートされた代表ベクトルの順番を記憶しておくメモリが必要ない。また、本発明によれば、従来方法と比較して、代表ベクトルの探索が済んだかどうかを示すフラグのメモリが必要なく、入力ベクトルごとにフラグをクリアする時間も必要ない。
さらに、本発明によれば、次の探索する代表ベクトルの決め方は、一意に決まる。
【図面の簡単な説明】
【図1】本発明を適用したベクトル量子化器の構成を示すブロック図である。
【図2】上記ベクトル量子化器におけるベクトル量子化の符号化アルゴリズム(VQ−SSC)を示すフローチャートである。
【図3】全検索による代表ベクトルの探索の例を示す図である。
【図4】上記符号化アルゴリズム(VQ−SSC)による代表ベクトルの探索例(探索0)を示す図である。
【図5】同じく代表ベクトルの探索例(探索1)を示す図である。
【図6】同じく代表ベクトルの探索例(探索2)を示す図である。
【図7】同じく代表ベクトルの探索例(探索3)を示す図である。
【図8】同じく代表ベクトルの探索例(探索4)を示す図である。
【図9】同じく代表ベクトルの探索例(探索5)を示す図である。
【図10】同じく代表ベクトルの探索例(探索6)を示す図である。
【図11】上記符号化アルゴリズム(VQ−SSC)の探索範囲を示す図である。
【図12】上記符号化アルゴリズム(VQ−SSC)による静止画像の符号化のシミュレーション結果(ソートにR,G,Bそれぞれを選択したときの代表ベクトルの探索回数の比較)を示す図である。
【図13】 Kodak PHOTOCD に対する階調変換の代表ベクトルの探索回数を示す図である。
【図14】動画像(Flower Garden) の符号化を示す図である。
【図15】動画像(Flower Garden) に対して、1フレーム目のコードブックを利用して階調変換したときの探索回数を示す図である。
【図16】本発明を適用したベクトル量子化器の変形例を示すブロック図である。
【図17】 Kodak PHOTOCD(24枚)の6枚を示す図である。
【図18】 Kodak PHOTOCD(24枚)の6枚を示す図である。
【図19】 Kodak PHOTOCD(24枚)の6枚を示す図である。
【図20】 Kodak PHOTOCD(24枚)の6枚を示す図である。
【図21】ベクトル量子化の概念図である。
【符号の説明】
100,200 ベクトル量子化器、101,102 入力端子、103 出力端子、110 入力部、120 ソーティング装置、130 コードブックメモリ、140 演算装置、150 判定装置、160 制御装置、170 コードブックソート表

Claims (12)

  1. ソートの基準となる次元を指定し、指定された次元の代表ベクトルの値に基づいて代表ベクトルをソートすることによりコードブックを並び替えるソーティングステップと、
    入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する演算ステップと、
    現在の最小のひずみとその代表ベクトルの番号を保持しており、現在の最小のひずみ をもつ代表ベクトルと上記演算ステップにより計算された代表ベクトルについてひずみを比較し、ひずみが小さい方を現在の最小のひずみとすることにより、符号化される代表ベクトルの候補を決める判定ステップと、
    上記指定された次元を基準としてソートしたコードブックをコードブック記憶手段の指定したアドレスに書き込む記憶ステップとを有し、
    上記演算ステップにおいて入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する際に、最初に使用する初期代表ベクトルのアドレスを指定するとともに、ソートの基準となった次元を指示して、上記各ステップを繰り返し行い、最小のひずみを持つ代表ベクトルに入力ベクトルを符号化するベクトル量子化方法。
  2. ソートの基準となる次元を指定し、指定した次元の代表ベクトルの値に基づいて代表ベクトルをソートすることによりコードブックを並び替えるソーティングステップと、
    入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する演算ステップと、
    現在の最小のひずみとその代表ベクトルの番号を保持しており、現在の最小のひずみ をもつ代表ベクトルと上記演算ステップにより計算された代表ベクトルについてひずみを比較し、ひずみが小さい方を現在の最小のひずみとすることにより、符号化される代表ベクトルの候補を決める判定ステップと、
    上記指定された次元を基準としてソートしたコードブックをコードブック記憶手段の指定したアドレスに書き込む記憶ステップと、
    ソートしたコードブックの並び順を記憶手段に書き込む記憶ステップとを有し、
    上記演算ステップにおいて入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する際に、最初に使用する初期代表ベクトルのアドレスを指定するとともに、ソートの基準となった次元を指示して、上記各ステップを繰り返し行い、上記判定ステップにおける判定結果に応じて、上記記憶手段に書き込まれたコードブックの並び順を参照し、上記コードブック記憶ステップにおいて、上記指定された次元を基準としてソートしたコードブックを上記コードブック記憶手段に書き込み、最小のひずみを持つ代表ベクトルに入力ベクトルを符号化するベクトル量子化方法。
  3. コードブックを記憶するコードブック記憶手段と、
    上記コードブック記憶手段からコードブックを読み出し、指定された次元を基準としてコードブックをソートし、ソートしたコードブックを上記コードブック記憶手段の指定したアドレスに書き込むソーティング手段と、
    入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する演算手段と、
    現在の最小のひずみとその代表ベクトルの番号を保持しており、現在の最小のひずみ をもつ代表ベクトルと上記演算手段により計算された代表ベクトルについてひずみを比較し、ひずみが小さい方を現在の最小のひずみとすることにより、符号化される代表ベクトルの候補を決める判定手段と、
    上記ソーティング手段、演算手段及び判定手段の処理フローを制御する制御手段とを備え、
    上記制御手段は、上記ソーティング手段にソートの基準となる次元を指定し、上記演算手段に、当該演算手段において入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する際に、最初に使用する初期代表ベクトルのアドレスを指定するとともに、ソートの基準となった次元を指示し、上記演算手段による演算処理と、上記判定手段による判定処理と、上記ソーティング手段によるソーティング処理を繰り返し行い、最小のひずみを持つ代表ベクトルに入力ベクトルを符号化するベクトル量子化装置。
  4. 上記判定手段は、さらに、ひずみの部分和の比較を行うことを特徴とする請求項3に記載のベクトル量子化装置。
  5. 上記初期代表ベクトルに前の入力ベクトルが符号化された代表ベクトルを指定することを特徴とする請求項3又は請求項4のいずれか1項に記載のベクトル量子化装置。
  6. 上記初期代表ベクトルに前フレームの同位置の入力ベクトルが符号化された代表ベクトルを指定して動画の画像をベクトル量子化することを特徴とする請求項5に記載のベクトル量子化装置。
  7. 上記演算手段は、入力ベクトルと複数の代表ベクトルとのひずみを並列に計算し、次に探索する代表ベクトルのアドレスを計算し、上記判定手段は、複数のひずみを比較して符号化される代表ベクトルの候補を決めることを特徴とする請求項3に記載のベクトル量子化装置。
  8. コードブックを記憶するコードブック記憶手段と、
    ソートされたコードブックの並び順を記憶する記憶手段と、
    上記コードブック記憶手段からコードブックを読み出し、指定された次元を基準としてコードブックをソートし、ソートしたコードブックを上記コードブック記憶手段の指定したアドレスに書き込むとともに、ソートしたコードブックの並び順を上記記憶手段に書き込むソーティング手段と、
    入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する演算処理を行う演算手段と、
    現在の最小のひずみとその代表ベクトルの番号を保持しており、現在の最小のひずみ をもつ代表ベクトルと上記演算手段により計算された代表ベクトルについてひずみを比較し、ひずみが小さい方を現在の最小のひずみとすることにより、符号化される代表ベクトルの候補を決める判定手段と、
    上記ソーティング手段、演算手段及び判定手段の処理フローを制御する制御手段とを備え、
    上記制御手段は、上記ソーティング手段にソートの基準となる次元を指定し、上記演算手段に、当該演算手段において入力ベクトルと代表ベクトルとのひずみを計算し、次に探索する代表ベクトルのアドレスを計算する際に、最初に使用する初期代表ベクトルのアドレスを指定するとともに、ソートの基準となった次元を指示し、上記演算手段による演算処理と、上記判定手段による判定処理と、上記ソーティング手段によるソーティング処理を繰り返し行い、最小のひずみを持つ代表ベクトルに入力ベクトルを符号化するベクトル量子化装置。
  9. 上記判定手段は、さらに、ひずみの部分和の比較を行うことを特徴とする請求項8に記載のベクトル量子化装置。
  10. 上記初期代表ベクトルに前の入力ベクトルが符号化された代表ベクトルを指定することを特徴とする請求項8又は請求項9のいずれか1項に記載のベクトル量子化装置。
  11. 上記初期代表ベクトルに前フレームの同位置の入力ベクトルが符号化された代表ベクトルを指定して動画の画像をベクトル量子化することを特徴とする請求項8に記載のベクトル量子化装置。
  12. 上記演算手段は、入力ベクトルと複数の代表ベクトルとのひずみを並列に計算し、次に探索する代表ベクトルのアドレスを計算し、上記判定手段は、複数のひずみを比較して符号化される代表ベクトルの候補を決めることを特徴とする請求項8に記載のベクトル量子化装置。
JP2001028798A 2001-02-05 2001-02-05 ベクトル量子化方法及びベクトル量子化装置 Expired - Fee Related JP4631178B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001028798A JP4631178B2 (ja) 2001-02-05 2001-02-05 ベクトル量子化方法及びベクトル量子化装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001028798A JP4631178B2 (ja) 2001-02-05 2001-02-05 ベクトル量子化方法及びベクトル量子化装置

Publications (2)

Publication Number Publication Date
JP2002232295A JP2002232295A (ja) 2002-08-16
JP4631178B2 true JP4631178B2 (ja) 2011-02-16

Family

ID=18893235

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001028798A Expired - Fee Related JP4631178B2 (ja) 2001-02-05 2001-02-05 ベクトル量子化方法及びベクトル量子化装置

Country Status (1)

Country Link
JP (1) JP4631178B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009021873A (ja) * 2007-07-12 2009-01-29 Sony Corp ベクトル量子化装置、及び、ベクトル量子化方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63149700A (ja) * 1986-12-15 1988-06-22 松下電器産業株式会社 ベクトル量子化装置
JPH02186836A (ja) * 1989-01-13 1990-07-23 Mitsubishi Electric Corp ベクトル量子化器
JPH04156181A (ja) * 1990-10-19 1992-05-28 Olympus Optical Co Ltd ベクトル量子化方法およびベクトル量子化装置
JPH05304478A (ja) * 1992-04-27 1993-11-16 Olympus Optical Co Ltd ベクトル量子化コードブック作成装置
JPH0645946A (ja) * 1992-07-27 1994-02-18 Olympus Optical Co Ltd ベクトル量子化コードブック作成及び探索装置
JPH08279757A (ja) * 1995-04-06 1996-10-22 Casio Comput Co Ltd 階層式ベクトル量子化装置
JPH08316842A (ja) * 1995-05-15 1996-11-29 N T T Data Tsushin Kk ベクトル量子化のための代表ベクトル生成方式及び方法
JPH10200890A (ja) * 1997-01-09 1998-07-31 Matsushita Electric Ind Co Ltd 画像符号化方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63149700A (ja) * 1986-12-15 1988-06-22 松下電器産業株式会社 ベクトル量子化装置
JPH02186836A (ja) * 1989-01-13 1990-07-23 Mitsubishi Electric Corp ベクトル量子化器
JPH04156181A (ja) * 1990-10-19 1992-05-28 Olympus Optical Co Ltd ベクトル量子化方法およびベクトル量子化装置
JPH05304478A (ja) * 1992-04-27 1993-11-16 Olympus Optical Co Ltd ベクトル量子化コードブック作成装置
JPH0645946A (ja) * 1992-07-27 1994-02-18 Olympus Optical Co Ltd ベクトル量子化コードブック作成及び探索装置
JPH08279757A (ja) * 1995-04-06 1996-10-22 Casio Comput Co Ltd 階層式ベクトル量子化装置
JPH08316842A (ja) * 1995-05-15 1996-11-29 N T T Data Tsushin Kk ベクトル量子化のための代表ベクトル生成方式及び方法
JPH10200890A (ja) * 1997-01-09 1998-07-31 Matsushita Electric Ind Co Ltd 画像符号化方法

Also Published As

Publication number Publication date
JP2002232295A (ja) 2002-08-16

Similar Documents

Publication Publication Date Title
CN110555450B (zh) 人脸识别神经网络调整方法和装置
KR20010053286A (ko) 화상부호/복호방법 및 그 프로그램을 기록한 기록매체
JP3315132B2 (ja) 画像符号化装置、画像復号化装置、及び画像符号化方法
JP4631178B2 (ja) ベクトル量子化方法及びベクトル量子化装置
EP1264485A1 (en) Improved vector quantization of images
JPH07177502A (ja) 画像情報圧縮方法、圧縮画像情報記録媒体、圧縮画像情報再生装置
JP3932244B2 (ja) 画像符号/復号方法及びその装置並びにそのプログラムを記録した記録媒体
JPH0766448B2 (ja) 画像信号分析装置
JP4590747B2 (ja) ベクトル量子化のコードブック生成方法及びコードブック生成装置
JP3367931B2 (ja) 共役構造ベクトル量子化方法
JP2009021873A (ja) ベクトル量子化装置、及び、ベクトル量子化方法
JP3093868B2 (ja) ベクトル量子化コードブック作成装置
JP3412118B2 (ja) 共役構造ベクトル量子化方法、その装置及びプログラム記録媒体
JP3093879B2 (ja) ベクトル量子化コードブック作成及び探索装置
JP3046871B2 (ja) ベクトル量子化方法及びベクトル量子化装置
KR100316411B1 (ko) 제어 그리드 보간방식에 따른 영상부호기에서 판별형 벡터양자화를 이용한 제어점의 움직임 벡터 산출 장치
Thede et al. A Comparison of Methods for the Optimization of VGA Colormaps
JP4077771B2 (ja) データ再生装置、再生方法、データ圧縮装置及び圧縮方法
Zubko IMPROVING THE EFFICIENCY OF FRACTAL IMAGE COMPRESSION BY THE CRITERION OF DETAIL OF RANK AND DOMAIN BLOCKS
JP2002232294A (ja) データ符号化方法
JP2000152004A (ja) 多値ディザマトリックス最適化装置
JP4268706B2 (ja) 画像作成方法
Song et al. A novel search algorithm based on L/sub 2/-norm pyramid of codewords for fast vector quantization encoding
JP2693557B2 (ja) 符号化装置
JPH08305335A (ja) 文字処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101001

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101019

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101101

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131126

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees