JP2004525537A - ハフマン・コード長情報を生成する方法 - Google Patents
ハフマン・コード長情報を生成する方法 Download PDFInfo
- Publication number
- JP2004525537A JP2004525537A JP2002540320A JP2002540320A JP2004525537A JP 2004525537 A JP2004525537 A JP 2004525537A JP 2002540320 A JP2002540320 A JP 2002540320A JP 2002540320 A JP2002540320 A JP 2002540320A JP 2004525537 A JP2004525537 A JP 2004525537A
- Authority
- JP
- Japan
- Prior art keywords
- symbol
- data structure
- symbols
- frequency
- information
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
- Detection And Correction Of Errors (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
(関連出願)
本特許出願は、Acharyaらによる、同時出願された米国特許出願第09/704,380号、「A Method of Performing Huffman Decoding」(代理人整理番号第042390号、P9820)に関するものであり、本発明の譲受人に譲受され、かつ参照により、本明細書に組み込んである。
【0002】
(背景)
本開示は、ハフマン・コーディングに関する。
【0003】
周知のように、1組のシンボルのハフマン・コードは、ソース・シンボルの出現確率に少なくとも部分的に基づいて生成される。通常「ハフマン木」と呼ばれる2分木が生成されて、2進コードおよびコード長を抽出する。たとえば、D.A.Huffman、「A Method for the Construction of Minimum Redundancy Codes」(Proceedings of the IRE,Volume 40 No.9,pages 1098〜1101,1952)を参照されたい。上述の文書で、D.A.Huffmanは、このようにプロセスを記述している。
・すべての可能なシンボルをその確率とともに列挙する。
・最小の確率を有する2つのシンボルを見つける。
・これらを、その確率が個々の確率の合計である、両方のシンボルを含む単一の集合と置き換える。
・リストがただ1つのメンバしか含まなくなるまで繰り返す。
この手順により、複数の集合の再帰的に構造化された集合が作成される。そのそれぞれが正確に2つのメンバを含む。したがって、それは、「葉」としてのシンボルを有する2分木(「ハフマン木」)として表すことができる。次いで、特定のシンボルのためのコード(「ハフマン・コード」)を形成するために、2分木を根からそのシンボルまでトラバースし、左の枝には「0」を、右の枝には「1」を記録する。しかし、この手順についての1つの問題点は、得られるハフマン木が一意ではないことである。このようなコードの応用例の一例が、GZIPなどのテキスト圧縮である。GZIPは、「無料の」または自由に使用可能なUNIX(登録商標)のようなオペレーション・システムを開発するという目標を有するGNU(Gnu’s Not Unix)プロジェクトの下で開発されたテキスト圧縮ユーティリティであり、UNIXオペレーション・システム上で「compress」テキスト圧縮ユーティリティを置き換えるためのものである。たとえば、ウェブサイト「http://www.gzip.orh/」のgzip−1.2.4.tarとして使用可能なGailly,J.L.およびAdler,M.による「GZIP documentation and sources」を参照されたい。GZIPでは、ハフマン木情報が、圧縮されたテキストとともに1組のコード長で、エンコーダからデコーダに通過する。したがって、エンコーダとデコーダは共に、このコード長情報に基づいて、一意のハフマン・コードを生成する。しかし、対応するハフマン木を構築することにより、ハフマン・コードのための長さ情報を生成することは非効率的である。特に、ハフマン木から得られるハフマン・コードは、エンコーダおよびデコーダがコード長情報から同じハフマン・コードを生成するので、通常、放棄されてしまう。したがって、コード長情報を生成するための別のアプローチが使用可能であれば、望ましいであろう。
【0004】
本発明の主題については、本明細書の結論部分において、詳細に記載しかつ明確に特許請求することとする。しかし、本発明は、構成およびオペレーションの方法と、その目的、特徴、利点の両方に関して、以下の詳細な説明を添付図面と合わせて参照することにより、最も良く理解されるであろう。
【0005】
(詳細な説明)
以下の詳細な説明において、本発明を完全に理解するために、多数の具体的な詳細事項を記載する。しかし、これらの具体的な詳細事項なしに本発明を実施できることは当業者なら理解するであろう。他の例においては、本発明の意味が不明確とならないように、周知の方法、手順、構成要素、回路について詳細に記述していない。
【0006】
上記に記述したように、1組のシンボルのためのハフマン・コードが、少なくとも部分的には、ソース・シンボルの出現確率に基づいて生成される。したがって、通常ハフマン木と呼ぶ2分木が生成されて、2進コードおよびコード長を抽出する。たとえば、GZIPなどのテキスト圧縮規格のための一応用例では、もちろん、本発明の範囲がこの特定の応用例に限定されないが、ハフマン木情報は、圧縮されたテキスト・データを有する1組のコード長として、エンコーダからデコーダに通過する。エンコーダとデコーダの両方は、コード長情報に基づいて一意のハフマン・コードを生成する。しかし、対応するハフマン木を構築することにより、ハフマン・コードのための長さ情報を生成することは非効率的であり、かつしばしば冗長である。ハフマン・コードがハフマン木から作成された後に、コードは、エンコーダおよびデコーダが長さ情報に基づいてハフマン・コードを生成するので、放棄されてしまう。したがって、ハフマン木を作成せずに、長さ情報を判断できるならば、望ましいであろう。
【0007】
データ構造を使用して、エンコードしようとするコードのためのコード長を生成する方法の本発明による一実施形態が提供される。この特定の実施形態では、コード化されているシンボルの頻度に少なくとも部分的に基づいて、データ構造がソートされ、データ構造内のシンボルが組み合わされ、シンボル長が更新される。この特定の実施形態では、データ構造は、シンボルの出現確率が周知であるハフマン木を生成せずに、1グループのシンボルからハフマン・コードの長さを抽出することを助ける。本発明の範囲がこの特定の実施形態に限定されるものではないが、ソフトウェアとハードウェアの実施の両方に適切なメモリの計算と使用の両方において効率的であることが、実験結果から示されている。
【0008】
図1は、対応する頻度とともに1組のシンボルを例示する表であるが、もちろん、これは単に選択的な例として提供するものである。本発明によるコード長を生成する方法の一実施形態がこの集合のシンボルに適用できる。図1は、1組の18シンボルを例示しているが、もちろん、本発明の範囲がこの点に限定されるものではない。この特定の例では、繰り返すが、本発明の範囲がこの例に限定されるものではないが、頻度情報を点検すると、図1の陰影を付けた領域のインデックス番号7と13である2つのシンボルが、このシンボルの集合内では出現しないことが分かる。したがって、これらのシンボルは、ハフマン・コーディングについて考慮する必要はない。この特定の実施形態では、ゼロ頻度を有するシンボルが省略されているが、本発明の範囲がこの点に限定されるものではない。
【0009】
この特定の実施形態では、繰り返すが、本発明の範囲がこの点に限定されるものではないが、用いるべきデータ構造は少なくとも2つの部分を有する。上記に表示したように、本発明の範囲がこの特定のデータ構造に限定されるものではないことに留意されたい。明らかに、この特定のデータ構造の多くの修正形態が可能であり、依然として上記に記述した内容の精神および範囲内にある。しかし、この実施形態については、1部分が図2に例示してある。データ構造のこの部分が、それぞれのゼロ以外の頻度シンボルのためのインデックスおよび長さ情報を追跡し、または格納する。図2に例示したように、この部分が、頻度およびシンボル・インデックスで、ゼロ長を有し降順で初期化される。もちろん、たとえば、昇順を使用するなどの他の実施形態も適用可能である。図2は、図1のシンボルに適用される一実施形態の、この第1の部分を例示する図である。
【0010】
例示してあるように、図2は、ゼロ以外の16の頻度シンボルに対応するゼロから15までの16エントリを含む。この特定のデータ構造では、本発明の範囲がこの点に限定されるものではないが、第1のフィールドすなわち第1の列は、上記で記述したソート・オペレーション後の、関連するシンボル・インデックスを示す。図2に例示したシンボル頻度情報はデータ構造の一部ではないが、ここでは単に例示目的で記載している。この例では、頻度で降順のシンボルを例示している。データ構造の第2のフィールドすなわち第2の列は、繰り返すが、本発明の範囲がこの点にまたはこの特定の実施形態に限定されるものではないが、それぞれのシンボルのための長さ情報を有し、ゼロに初期化される。
【0011】
図2のデータまたはシンボルを使用した初期化後の、この特定の実施形態に対するデータ構造の第2の部または第2の部分が図3に例示すなわち示してある。この特定の実施形態では、データ構造のこの部分の第1のフィールド、つまり図3に例示した部分にはそのグループに対する頻度が入っている。この特定の実施形態の第2のフィールドにはビット・フラグが入っている。ビット・フラグは、そのグループに属するシンボルのエントリ番号に対応するか、またはエントリ番号を表示する。たとえば、図3に例示したように、陰影を付けた区域は、エントリ番号3を有するシンボルを含む。この特定のシンボルについては、グループ頻度は3であり、ビット・フラグは、
ビット番号:(15−−−−−3210)
ビット値: 0000 0000 0000 1000
に設定される。
つまり、この例では、ビット番号3が「1」に設定され、残りのビットは「0」に設定される。
【0012】
上記に記述したように、最初に、コード化しようとするシンボルに、それぞれのシンボルのための異なるビット・フラグが割り当てられる。繰り返すが、この特定の実施形態では、本発明の範囲がこの点に限定されるものではないが、コード長は、最初、それぞれのシンボルに対してゼロを有する。以下にさらに詳細に記述するが、この特定の実施形態では、初期化されたデータ構造を用いて、シンボル・フラグが、最小頻度シンボルから開始して、組み合わせられる。次いで、シンボルは再ソートされ、頻度情報は更新されて、その組合せを反映する。次いで、信号フラグを組み合わせ、再ソートするというこれらのオペレーションを、組み合わしようとするシンボルがなくなるまで、繰り返す。
【0013】
上記に記述したように、上記に記述した実施形態などのデータ構造を初期化し、ここで「no_of_group」に指定されている「カウンタ」を、ここでは16である、ゼロ以外の頻度シンボルの数に設定することにより、プロセスが開始される。次に、この「カウンタ」、つまり、no_of_groupが、1より大きい間、以下のオペレーションが実施される。
開始
1:上述したように、データ構造(パートIおよびIIの両方)を初期化し、no_of_groupをゼロ以外の頻度シンボルの数に設定する。
2:while(no_of_group >1){
2.1:パートIIのデータ構造内の最後の2つのグループをマージし、それを再びリスト内に挿入する。
/* グループ頻度のためのマージ・オペレーションは、単にそれを加算するだけであり、第2のフィールドのためのマージ・オペレーションは、単にビット毎の「OR」オペレーションである。両方とも、ソフトウェアおよびハードウェアでの実装が非常に簡単である。図5は、このステップのための一例を示す図である。分かるように、最後の2つのグループがマージされ、再び(陰影区域に示す)リスト内に挿入される。常に2つのグループを1つにマージしているために、メモリが再使用でき、初期化後に、新しいメモリを動的に割り当てる必要がない。*/
2.2:パートIのデータ構造内の長さ情報を更新する。
/* このステップは、マージされたビット・フラグ(パートIIのデータ構造内の第2のフィールド)内の「1」ビットをスキャンすることによってなされ、データ構造内の対応するエントリ内で1だけ、長さ情報を増加する。図4は、図5に示したマージ・ステップ後の、更新を示す図である。*/
2.3:no_of_groupを1だけ減少させる。
}/*whileの終了*/
終了
【0014】
図5に例示したように、たとえば、データ構造の第2の部すなわち第2の部分内の最後の2つの「グループ」または「行」が、組み合わされるかまたはマージされ、図5に例示したように、データ構造のこの部分が再ソートされる。つまり、この特定の実施形態では、組み合わされたシンボルは、グループ頻度に基づいてデータ構造内で適切にソートされる。
【0015】
同様に、本発明の範囲がこの点に限定されるものではないが、グループ頻度のためのマージまたは組合せオペレーションは、この特定の実施形態では、単に頻度を加算することによって実施でき、この特定の実施形態のためのデータ構造の第2のフィールドのためのマージ/組合せオペレーションが、「ビット毎の」論理ORオペレーションとして実施できる。このことにより、ソフトウェアおよび/またはハードウェアで実装する場合の利点が提供される。この特定の実施形態の別の利点が、加算および論理ORオペレーションなどのオペレーションの実施のしやすさに加えて、効率的なメモリの使用である。
【0016】
上記に記述したように、組合せまたはマージ・オペレーションにより、2つの「グループ」または「行」が1つに組み合わせられることとなる。したがって、割り当てられているメモリを再使用でき、初期化後の新しいメモリの動的割当が、減少または回避できる。
【0017】
次に、この特定の実施形態のためのデータ構造の第1の部すなわち第1の部分内の長さ情報が更新されて、以前のマージングまたは組合せオペレーションを反映する。このことは、たとえば、この特定の実施形態については、図4に例示してある。このオペレーションを実施するための1つの方法が、本発明の範囲がこの点に限定されるものではないが、マージされたビット・フラグの「1」ビットをスキャンすることによるものである。つまり、この特定の実施形態では、データ構造の第2の部分内の第2のフィールドがスキャンされ、長さ情報が、データ構造の第1の部分または部内の対応するエントリ内で、1だけ増加または増補される。
【0018】
次に、「カウンタ」、つまりここではno_of_groupが、1だけ減少される。この特定の実施形態では、以前のオペレーションを、カウンタが値1に到達するまで繰り返す。
【0019】
この特定の実施形態については、いったん「カウンタ」が1に到達すると、図6に例示したように、総グループ頻度に等しいグループ頻度を有するデータ構造の第2の部分内には1グループまたは行があるべきであり、ビット・フラグ内のすべてのビットが1に設定されるべきであることに留意されたい。しかし、同様に、図7は、このことが出現したコード長情報の最終結果を示す図である。したがって、図7に例示したように、所望のコード長情報が得られる。
【0020】
上記に記述したように、コード長情報を生成する方法のこの特定の実施形態については、いくつかの利点が存在する。上記に説明したように、たとえばハフマン木を生成することと比較して、メモリ使用が削減され、メモリの動的割当が回避できるか、または動的に割り当てるべきメモリの量が削減される。同様に、計算上の複雑さも減少する。
【0021】
同様に、上記に記述したように、上記に記述した実施形態を実施するために用いられるオペレーションを、ハードウェアまたはソフトウェアで実装することは比較的容易であるが、本発明の範囲がこれらの特定のオペレーションにおけるこれらの実施形態に限定されるものではない。したがって、ハフマン・コード長情報をハフマン木を生成せずに抽出または作成することができる。
【0022】
本発明による代替実施形態では、シンボルをエンコードする方法が、コード長情報を使用してシンボルをエンコードすること、たとえば、コード長情報を生成するための上記に記述した実施形態を使用することなどの、ハフマン木を使用せずにコード長情報を生成することを含むが、もちろん、本発明の範囲が前の実施形態に限定されるものではない。この状況下では、長さ情報がハフマン・コードから生成される場合に、シンボルをエンコードするために長さ情報を用いることを、もちろん、理解されよう。同様に、本発明による別の代替実施形態では、シンボルをデコードする方法が、ハフマン木を使用せずに生成されたコード長情報を使用してエンコードされたシンボルをデコードすることを含むことができる。繰り返すが、この状況下において、シンボルをエンコードするために用いられる長さ情報が、ハフマン・コードから生成されることを理解されたい。繰り返すが、コード長情報を生成するための1つのアプローチが、上記に記述した実施形態を含む。
【0023】
特定の実施形態のみを記述してきたが、本発明の範囲が特定の実施形態または実装形態に限定されるものではないことを、もちろん、理解されるであろう。たとえば、一実施形態はハードウェアでなされ、別の実施形態はソフトウェアでなされることがあり得る。同様に、一実施形態が、たとえば、ファームウェア、あるいはハードウェア、ソフトウェア、またはファームウェアの組合せでもよい。同様に、本発明の範囲がこの点に限定されるものではないが、一実施形態が、記憶媒体などの製品を備えることができる。たとえば、CD−ROMやディスクなどの記憶媒体が、それに命令を格納していることがあり、コンピュータ・システムやプラットフォームまたは画像作成システムなどのシステムによって実行された場合、その結果、たとえば、上記に記述したようなハフマン・コード長情報を生成する方法などの、本発明による方法の一実施形態を実行できる。同様に、データ構造を初期化し、シンボルをエンコードし、かつ/またはシンボルをデコードする方法の実施形態を本発明に従って実行できる。
【0024】
本発明のある特徴について、本明細書に例示し記述してきたが、当業者には、多くの修正形態、置換形態、変更形態、均等物が考えられるであろう。したがって、頭記の特許請求の範囲は、すべてのこのような修正形態および変更形態を、本発明の真の趣旨内に入るものとして、包含することを意図することを理解されるであろう。
【図面の簡単な説明】
【図1】
本発明による一実施形態が適用できる、対応する頻度とともに1組のシンボルを例示する表である。
【図2】
図1に示したデータの初期化の後の、本発明による一実施形態の第1の部分を例示する表である。
【図3】
図2に示したデータの初期化の後の、本発明による一実施形態の第2の部分を例示する表である。
【図4】
第1のマージング・オペレーションが適用された後の図2を示す表である。
【図5】
第1のマージング・オペレーションが適用された後の図3を示す表である。
【図6】
マージング・オペレーションが完了した後の図5を示す表である。
【図7】
マージング・オペレーションが完了した後の図4を示す表である。
Claims (29)
- データ構造を使用して、コード化しようとするシンボルのためのコード長を生成する方法であって、
コード化されているシンボルの頻度に少なくとも部分的に基づいて、データ構造をソートすること、データ構造内のシンボルを組み合わせること、およびシンボル長を更新することを含む方法。 - 最初に、コード化しようとするそれぞれのシンボルに、異なるビット・フラグおよび同じ長さが割り当てられる請求項1に記載の方法。
- 同じ長さが最初にゼロである請求項2に記載の方法。
- データ構造が、少なくとも2つの部分、すなわち、シンボル・インデックスと関連するシンボル長情報を有する第1の部分および、グループ頻度と割当ビット・フラグ情報を有する第2の部分を有する請求項2に記載の方法。
- シンボルが頻度に基づいて降順でデータ構造内でソートされる請求項4に記載の方法。
- シンボルが最小頻度シンボルで始まるデータ構造内で組み合わせられる請求項5に記載の方法。
- シンボル長情報が更新されて、データ構造内で組み合わせられたシンボルを反映した後、シンボルが頻度に基づいて降順で再ソートされる請求項6に記載の方法。
- シンボルが頻度に基づいて昇順でデータ構造内でソートされる請求項4に記載の方法。
- シンボルが最小頻度シンボルで始まるデータ構造内で組み合わせられる請求項8に記載の方法。
- シンボル長情報が更新されて、データ構造内で組み合わせられたシンボルを反映した後、シンボルが頻度に基づいて昇順で再ソートされる請求項9に記載の方法。
- ゼロ頻度を有するシンボルが省略される請求項1に記載の方法。
- ハフマン木を生成せずに、ハフマン・コードに従ってコード化しようとする1グループのシンボルのためのコード長を生成する方法であって、
(a)頻度によってシンボルをソートし、異なるフラグおよび同じ初期長をそれぞれのシンボルに割り当てること、
(b)最小頻度シンボルで開始して、シンボル・フラグを組み合わせること、
(c)シンボルを再ソートし、長さ情報を更新して、組合せを反映すること、
もはや組み合わせるべきシンボルがなくなるまで、(b)および(c)を繰り返すことを含む方法。 - 頻度によってシンボルをソートすることが、ゼロ頻度を有するシンボルを省略することを含む請求項12に記載の方法。
- 同じ初期長がゼロを有する請求項12に記載の方法。
- 頻度によってソートされるシンボル・インデックスおよび最初に割り当てられた長さとを有する第1の部分と、
グループ頻度情報およびそれぞれの各シンボルに対応する割り当てられたビット・フラグを有する第2の部分と
の少なくとも2つの部分を有するデータ構造。 - シンボルが頻度により降順でデータ構造内でソートされる請求項15に記載のデータ構造。
- シンボルが頻度により昇順でデータ構造内でソートされる請求項15に記載のデータ構造。
- 命令が実行されたとき、データ構造を使用して実行される、コード化しようとするシンボルに対してコード長を生成する方法、すなわち
コード化されているシンボルの頻度に、少なくとも部分的に基づいて、データ構造をソートし、データ構造内のシンボルを組み合わせ、およびシンボル長を更新する方法を実施することになる命令を格納した記憶媒体を備える製品。 - 前記命令が実行されたとき、最初にコード化しようとするそれぞれのシンボルに、異なるビット・フラグおよび同じ長さが割り当てられる請求項18に記載の製品。
- 前記命令が実行されたとき、データ構造が、
少なくとも2つの部分、すなわち、シンボル・インデックスおよび関連するシンボル長情報を有する第1の部分と、グループ頻度および割当ビット・フラグ情報を有する第2の部分とを有する請求項19に記載の製品。 - 命令が実行されたとき、コード化しようとするシンボルに対するコード長を生成するためにデータ構造を初期化する方法、すなわち
頻度によってシンボルをソートし、異なるフラグおよび同じ初期長をそれぞれのシンボルに割り当てる方法が実行される命令を格納した記憶媒体を備える製品。 - 前記命令が実行されたときさらに、それぞれのシンボルにゼロの初期長が割り当てられる請求項21に記載の製品。
- 前記命令が実行されたときさらに、データ構造が、それぞれのシンボルのためのグループ頻度情報を有する請求項21に記載の製品。
- シンボルをエンコードする方法であって、
コード長情報を使用してシンボルをエンコードすること、
ハフマン木を使用せずにコード長情報を生成することを含む方法。 - ハフマン木を使用せずに、コード長情報を生成することが、データ構造を用いることを含む請求項24に記載の方法。
- 前記データ構造が、シンボル・インデックス、それぞれのシンボルのためのグループ頻度情報、最初に割り当てられたビット・フラグおよびコード長を有する請求項25に記載の方法。
- シンボルをデコードする方法であって、
ハフマン木を使用せずに生成されたコード長情報を使用してエンコードされているシンボルをデコードすることを含む方法。 - コード長情報がデータ構造を使用して生成された請求項27に記載の方法。
- データ構造が、シンボル・インデックス、それぞれのシンボルのためのグループ頻度情報、最初に割り当てられたビット・フラグおよびコード長を有する請求項27に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/704,392 US6636167B1 (en) | 2000-10-31 | 2000-10-31 | Method of generating Huffman code length information |
PCT/US2001/031440 WO2002037690A2 (en) | 2000-10-31 | 2001-10-09 | A method of generating huffman code length information |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004525537A true JP2004525537A (ja) | 2004-08-19 |
JP2004525537A5 JP2004525537A5 (ja) | 2005-12-22 |
JP4012065B2 JP4012065B2 (ja) | 2007-11-21 |
Family
ID=24829276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002540320A Expired - Fee Related JP4012065B2 (ja) | 2000-10-31 | 2001-10-09 | ハフマン・コード長情報を生成する方法 |
Country Status (9)
Country | Link |
---|---|
US (3) | US6636167B1 (ja) |
JP (1) | JP4012065B2 (ja) |
KR (2) | KR100667293B1 (ja) |
CN (1) | CN1531781A (ja) |
AU (1) | AU2002215320A1 (ja) |
DE (1) | DE10196847B4 (ja) |
GB (1) | GB2385758B (ja) |
TW (1) | TW538601B (ja) |
WO (1) | WO2002037690A2 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6636167B1 (en) * | 2000-10-31 | 2003-10-21 | Intel Corporation | Method of generating Huffman code length information |
US6563439B1 (en) * | 2000-10-31 | 2003-05-13 | Intel Corporation | Method of performing Huffman decoding |
US7274671B2 (en) * | 2001-02-09 | 2007-09-25 | Boly Media Communications, Inc. | Bitwise adaptive encoding using prefix prediction |
WO2003036490A1 (en) * | 2001-10-24 | 2003-05-01 | Bea Systems, Inc. | System and method for xml data representation of portlets |
KR100484137B1 (ko) * | 2002-02-28 | 2005-04-18 | 삼성전자주식회사 | 개선된 허프만 디코딩 방법 및 장치 |
KR20050053996A (ko) | 2003-12-03 | 2005-06-10 | 삼성전자주식회사 | 허프만 코드를 효율적으로 복호화하는 방법 및 장치 |
US20050228816A1 (en) * | 2004-04-13 | 2005-10-13 | Bea Systems, Inc. | System and method for content type versions |
TWI324736B (en) * | 2006-11-01 | 2010-05-11 | Sunplus Technology Co Ltd | Searial transmission controller, searial transmission decoder and searial transmission method thereof |
TWI330473B (en) * | 2006-11-24 | 2010-09-11 | Primax Electronics Ltd | Huffman decoding method |
US8321326B2 (en) * | 2009-09-15 | 2012-11-27 | Auerbach Group Llc | Method and system for enhancing the efficiency of a digitally communicated data exchange |
KR101725223B1 (ko) * | 2011-03-25 | 2017-04-11 | 삼성전자 주식회사 | 저장 장치에서의 데이터 압축 방법 |
US9059731B2 (en) * | 2013-10-21 | 2015-06-16 | International Business Machines Corporation | Boosting decompression in the presence of reoccurring Huffman trees |
US9766888B2 (en) | 2014-03-28 | 2017-09-19 | Intel Corporation | Processor instruction to store indexes of source data elements in positions representing a sorted order of the source data elements |
US10027346B2 (en) * | 2015-05-11 | 2018-07-17 | Via Alliance Semiconductor Co., Ltd. | Hardware data compressor that maintains sorted symbol list concurrently with input block scanning |
US10693495B2 (en) | 2017-10-10 | 2020-06-23 | The Boeing Company | Data collection device with efficient data compression |
KR102488129B1 (ko) * | 2018-02-05 | 2023-01-12 | 에스케이하이닉스 주식회사 | 고속으로 데이터를 인코딩하는 장치 |
CN112332854A (zh) * | 2020-11-27 | 2021-02-05 | 平安普惠企业管理有限公司 | 霍夫曼编码的硬件实现方法、装置及存储介质 |
CN112737596A (zh) * | 2021-01-07 | 2021-04-30 | 苏州浪潮智能科技有限公司 | 一种基于排序网络的动态霍夫曼编码方法、装置及设备 |
Family Cites Families (115)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4899149A (en) * | 1986-02-28 | 1990-02-06 | Gary Kahan | Method of and apparatus for decoding Huffman or variable-length coees |
US4813056A (en) | 1987-12-08 | 1989-03-14 | General Electric Company | Modified statistical coding of digital signals |
DE69332253T2 (de) | 1992-10-13 | 2003-04-17 | Nec Corp | Dekodierschaltung für Huffman-Codes |
US5778371A (en) * | 1994-09-13 | 1998-07-07 | Kabushiki Kaisha Toshiba | Code string processing system and method using intervals |
KR0139162B1 (ko) * | 1994-11-30 | 1998-05-15 | 김광호 | 부호어재배정을 이용한 가변장부호화장치 및 복호화장치 |
US5875122A (en) | 1996-12-17 | 1999-02-23 | Intel Corporation | Integrated systolic architecture for decomposition and reconstruction of signals using wavelet transforms |
JP3346204B2 (ja) * | 1996-12-26 | 2002-11-18 | 富士ゼロックス株式会社 | 可変長符号復号装置 |
GB2367223B (en) * | 1997-01-21 | 2002-05-15 | Fujitsu Ltd | Data encoding method and apparatus and data decoding method and apparatus |
US6694061B1 (en) * | 1997-06-30 | 2004-02-17 | Intel Corporation | Memory based VLSI architecture for image compression |
US6009201A (en) | 1997-06-30 | 1999-12-28 | Intel Corporation | Efficient table-lookup based visually-lossless image compression scheme |
US5973627A (en) * | 1997-08-28 | 1999-10-26 | Philips Electronics North America Corporation | Variable length decoder with adaptive acceleration optimized by sub-grouping and cross-grouping the symbols having the highest probability of occurrence |
US6009206A (en) | 1997-09-30 | 1999-12-28 | Intel Corporation | Companding algorithm to transform an image to a lower bit resolution |
US6160918A (en) | 1997-10-02 | 2000-12-12 | At&T Corp. | Method and apparatus for fast image compression |
US6130960A (en) | 1997-11-03 | 2000-10-10 | Intel Corporation | Block-matching algorithm for color interpolation |
US6285796B1 (en) | 1997-11-03 | 2001-09-04 | Intel Corporation | Pseudo-fixed length image compression scheme |
US6091851A (en) | 1997-11-03 | 2000-07-18 | Intel Corporation | Efficient algorithm for color recovery from 8-bit to 24-bit color pixels |
US6151069A (en) | 1997-11-03 | 2000-11-21 | Intel Corporation | Dual mode digital camera for video and still operation |
US6351555B1 (en) | 1997-11-26 | 2002-02-26 | Intel Corporation | Efficient companding algorithm suitable for color imaging |
US6094508A (en) | 1997-12-08 | 2000-07-25 | Intel Corporation | Perceptual thresholding for gradient-based local edge detection |
US6229578B1 (en) | 1997-12-08 | 2001-05-08 | Intel Corporation | Edge-detection based noise removal algorithm |
US6348929B1 (en) | 1998-01-16 | 2002-02-19 | Intel Corporation | Scaling algorithm and architecture for integer scaling in video |
US6215916B1 (en) | 1998-02-04 | 2001-04-10 | Intel Corporation | Efficient algorithm and architecture for image scaling using discrete wavelet transforms |
US6075470A (en) | 1998-02-26 | 2000-06-13 | Research In Motion Limited | Block-wise adaptive statistical data compressor |
US6392699B1 (en) * | 1998-03-04 | 2002-05-21 | Intel Corporation | Integrated color interpolation and color space conversion algorithm from 8-bit bayer pattern RGB color space to 12-bit YCrCb color space |
US6211521B1 (en) | 1998-03-13 | 2001-04-03 | Intel Corporation | Infrared pixel sensor and infrared signal correction |
US6356276B1 (en) | 1998-03-18 | 2002-03-12 | Intel Corporation | Median computation-based integrated color interpolation and color space conversion methodology from 8-bit bayer pattern RGB color space to 12-bit YCrCb color space |
US6366694B1 (en) | 1998-03-26 | 2002-04-02 | Intel Corporation | Integrated color interpolation and color space conversion algorithm from 8-bit Bayer pattern RGB color space to 24-bit CIE XYZ color space |
US6366692B1 (en) | 1998-03-30 | 2002-04-02 | Intel Corporation | Median computation-based integrated color interpolation and color space conversion methodology from 8-bit bayer pattern RGB color space to 24-bit CIE XYZ color space |
US6154493A (en) | 1998-05-21 | 2000-11-28 | Intel Corporation | Compression of color images based on a 2-dimensional discrete wavelet transform yielding a perceptually lossless image |
US6040790A (en) * | 1998-05-29 | 2000-03-21 | Xerox Corporation | Method of building an adaptive huffman codeword tree |
US6124811A (en) | 1998-07-02 | 2000-09-26 | Intel Corporation | Real time algorithms and architectures for coding images compressed by DWT-based techniques |
US6233358B1 (en) | 1998-07-13 | 2001-05-15 | Intel Corporation | Image compression using directional predictive coding of the wavelet coefficients |
US6236765B1 (en) | 1998-08-05 | 2001-05-22 | Intel Corporation | DWT-based up-sampling algorithm suitable for image display in an LCD panel |
US6178269B1 (en) | 1998-08-06 | 2001-01-23 | Intel Corporation | Architecture for computing a two-dimensional discrete wavelet transform |
US5995210A (en) | 1998-08-06 | 1999-11-30 | Intel Corporation | Integrated architecture for computing a forward and inverse discrete wavelet transforms |
US6047303A (en) | 1998-08-06 | 2000-04-04 | Intel Corporation | Systolic architecture for computing an inverse discrete wavelet transforms |
US6166664A (en) | 1998-08-26 | 2000-12-26 | Intel Corporation | Efficient data structure for entropy encoding used in a DWT-based high performance image compression |
US6301392B1 (en) | 1998-09-03 | 2001-10-09 | Intel Corporation | Efficient methodology to select the quantization threshold parameters in a DWT-based image compression scheme in order to score a predefined minimum number of images into a fixed size secondary storage |
US6731807B1 (en) * | 1998-09-11 | 2004-05-04 | Intel Corporation | Method of compressing and/or decompressing a data set using significance mapping |
US6195026B1 (en) | 1998-09-14 | 2001-02-27 | Intel Corporation | MMX optimized data packing methodology for zero run length and variable length entropy encoding |
US6108453A (en) | 1998-09-16 | 2000-08-22 | Intel Corporation | General image enhancement framework |
US6236433B1 (en) | 1998-09-29 | 2001-05-22 | Intel Corporation | Scaling algorithm for efficient color representation/recovery in video |
US6625318B1 (en) * | 1998-11-13 | 2003-09-23 | Yap-Peng Tan | Robust sequential approach in detecting defective pixels within an image sensor |
US6759646B1 (en) * | 1998-11-24 | 2004-07-06 | Intel Corporation | Color interpolation for a four color mosaic pattern |
US6535648B1 (en) * | 1998-12-08 | 2003-03-18 | Intel Corporation | Mathematical model for gray scale and contrast enhancement of a digital image |
US6151415A (en) | 1998-12-14 | 2000-11-21 | Intel Corporation | Auto-focusing algorithm using discrete wavelet transform |
US6215908B1 (en) | 1999-02-24 | 2001-04-10 | Intel Corporation | Symmetric filtering based VLSI architecture for image compression |
US6381357B1 (en) | 1999-02-26 | 2002-04-30 | Intel Corporation | Hi-speed deterministic approach in detecting defective pixels within an image sensor |
US6275206B1 (en) | 1999-03-17 | 2001-08-14 | Intel Corporation | Block mapping based up-sampling method and apparatus for converting color images |
US6377280B1 (en) | 1999-04-14 | 2002-04-23 | Intel Corporation | Edge enhanced image up-sampling algorithm using discrete wavelet transform |
US6574374B1 (en) * | 1999-04-14 | 2003-06-03 | Intel Corporation | Enhancing image compression performance by morphological processing |
US6563948B2 (en) * | 1999-04-29 | 2003-05-13 | Intel Corporation | Using an electronic camera to build a file containing text |
US6640017B1 (en) | 1999-05-26 | 2003-10-28 | Intel Corporation | Method and apparatus for adaptively sharpening an image |
US6697534B1 (en) * | 1999-06-09 | 2004-02-24 | Intel Corporation | Method and apparatus for adaptively sharpening local image content of an image |
US6292114B1 (en) * | 1999-06-10 | 2001-09-18 | Intel Corporation | Efficient memory mapping of a huffman coded list suitable for bit-serial decoding |
US6628716B1 (en) * | 1999-06-29 | 2003-09-30 | Intel Corporation | Hardware efficient wavelet-based video compression scheme |
US6600833B1 (en) * | 1999-07-23 | 2003-07-29 | Intel Corporation | Methodology for color correction with noise regulation |
US6373481B1 (en) | 1999-08-25 | 2002-04-16 | Intel Corporation | Method and apparatus for automatic focusing in an image capture system using symmetric FIR filters |
US7065253B2 (en) * | 1999-09-03 | 2006-06-20 | Intel Corporation | Wavelet zerotree coding of ordered bits |
US6658399B1 (en) | 1999-09-10 | 2003-12-02 | Intel Corporation | Fuzzy based thresholding technique for image segmentation |
US6625308B1 (en) * | 1999-09-10 | 2003-09-23 | Intel Corporation | Fuzzy distinction based thresholding technique for image segmentation |
US6633610B2 (en) * | 1999-09-27 | 2003-10-14 | Intel Corporation | Video motion estimation |
US6798901B1 (en) * | 1999-10-01 | 2004-09-28 | Intel Corporation | Method of compressing a color image |
US6956903B2 (en) | 2001-05-29 | 2005-10-18 | Intel Corporation | Method and apparatus for three-dimensional wavelet transform |
US6834123B2 (en) | 2001-05-29 | 2004-12-21 | Intel Corporation | Method and apparatus for coding of wavelet transformed coefficients |
US7106910B2 (en) * | 1999-10-01 | 2006-09-12 | Intel Corporation | Color video coding scheme |
US6292144B1 (en) * | 1999-10-15 | 2001-09-18 | Northwestern University | Elongate radiator conformal antenna for portable communication devices |
US6731706B1 (en) * | 1999-10-29 | 2004-05-04 | Intel Corporation | Square root raised cosine symmetric filter for mobile telecommunications |
US6813384B1 (en) | 1999-11-10 | 2004-11-02 | Intel Corporation | Indexing wavelet compressed video for efficient data handling |
US6628827B1 (en) * | 1999-12-14 | 2003-09-30 | Intel Corporation | Method of upscaling a color image |
US6650688B1 (en) | 1999-12-20 | 2003-11-18 | Intel Corporation | Chip rate selectable square root raised cosine filter for mobile telecommunications |
US6757430B2 (en) * | 1999-12-28 | 2004-06-29 | Intel Corporation | Image processing architecture |
US6748118B1 (en) * | 2000-02-18 | 2004-06-08 | Intel Corporation | Method of quantizing signal samples of an image during same |
US6654501B1 (en) | 2000-03-06 | 2003-11-25 | Intel Corporation | Method of integrating a watermark into an image |
US6449380B1 (en) * | 2000-03-06 | 2002-09-10 | Intel Corporation | Method of integrating a watermark into a compressed image |
US6738520B1 (en) * | 2000-06-19 | 2004-05-18 | Intel Corporation | Method of compressing an image |
US6775413B1 (en) * | 2000-09-18 | 2004-08-10 | Intel Corporation | Techniques to implement one-dimensional compression |
KR100434470B1 (ko) * | 2000-10-09 | 2004-06-05 | 삼성전자주식회사 | 분할모드에 따른 전송형식 조합표시 비트의 부호화 장치및 방법 |
US6563439B1 (en) * | 2000-10-31 | 2003-05-13 | Intel Corporation | Method of performing Huffman decoding |
US6636167B1 (en) | 2000-10-31 | 2003-10-21 | Intel Corporation | Method of generating Huffman code length information |
US6690306B1 (en) * | 2000-11-03 | 2004-02-10 | Intel Corporation | Method of generating a length-constrained huffman code |
US6678708B1 (en) * | 2000-11-15 | 2004-01-13 | Intel Corporation | Method and apparatus for two-dimensional separable symmetric filtering |
US6751640B1 (en) * | 2000-11-20 | 2004-06-15 | Intel Corporation | Method and apparatus for multiply-accumulate two-dimensional separable symmetric filtering |
US6842181B2 (en) * | 2000-11-27 | 2005-01-11 | Intel Corporation | Euler vector for color images |
US6707928B2 (en) * | 2000-11-29 | 2004-03-16 | Intel Corporation | Method for block-based digital image watermarking |
US20020063899A1 (en) * | 2000-11-29 | 2002-05-30 | Tinku Acharya | Imaging device connected to processor-based system using high-bandwidth bus |
US6917381B2 (en) * | 2000-11-30 | 2005-07-12 | Intel Corporation | Color filter array and color interpolation algorithm |
US6662200B2 (en) | 2001-01-03 | 2003-12-09 | Intel Corporation | Multiplierless pyramid filter |
US20020122482A1 (en) * | 2001-01-03 | 2002-09-05 | Kim Hyun Mun | Method of performing video encoding rate control using bit budget |
US20020118746A1 (en) * | 2001-01-03 | 2002-08-29 | Kim Hyun Mun | Method of performing video encoding rate control using motion estimation |
US6681060B2 (en) * | 2001-03-23 | 2004-01-20 | Intel Corporation | Image retrieval using distance measure |
US20020174154A1 (en) | 2001-03-26 | 2002-11-21 | Tinku Acharya | Two-dimensional pyramid filter architecture |
US6766286B2 (en) * | 2001-03-28 | 2004-07-20 | Intel Corporation | Pyramid filter |
US6889237B2 (en) * | 2001-03-30 | 2005-05-03 | Intel Corporation | Two-dimensional pyramid filter architecture |
US6725247B2 (en) * | 2001-04-30 | 2004-04-20 | Intel Corporation | Two-dimensional pyramid filter architecture |
KR20030008455A (ko) * | 2001-07-18 | 2003-01-29 | 학교법인 포항공과대학교 | 질량분석기를 위한 시료 전처리 장치 |
US20030021486A1 (en) * | 2001-07-27 | 2003-01-30 | Tinku Acharya | Method and apparatus for image scaling |
GB2378361B (en) * | 2001-08-01 | 2004-10-13 | Roke Manor Research | Method for compression of data |
US6653953B2 (en) | 2001-08-22 | 2003-11-25 | Intel Corporation | Variable length coding packing architecture |
US6996180B2 (en) * | 2001-09-05 | 2006-02-07 | Intel Corporation | Fast half-pixel motion estimation using steepest descent |
US6891889B2 (en) * | 2001-09-05 | 2005-05-10 | Intel Corporation | Signal to noise ratio optimization for video compression bit-rate control |
US7136515B2 (en) * | 2001-09-13 | 2006-11-14 | Intel Corporation | Method and apparatus for providing a binary fingerprint image |
US6795592B2 (en) * | 2001-09-13 | 2004-09-21 | Intel Corporation | Architecture for processing fingerprint images |
US20030063782A1 (en) * | 2001-09-13 | 2003-04-03 | Tinku Acharya | Method and apparatus to reduce false minutiae in a binary fingerprint image |
US20030123539A1 (en) * | 2001-12-28 | 2003-07-03 | Hyung-Suk Kim | Method and apparatus for video bit-rate control |
US6944640B2 (en) * | 2001-12-28 | 2005-09-13 | Intel Corporation | Progressive two-dimensional (2D) pyramid filter |
US20030194008A1 (en) * | 2002-04-11 | 2003-10-16 | Tinku Acharya | Computationally fast and efficient DV to DVD transcoding |
US7133555B2 (en) * | 2002-08-02 | 2006-11-07 | Intel Corporation | Image color matching scheme |
US20040042551A1 (en) * | 2002-09-04 | 2004-03-04 | Tinku Acharya | Motion estimation |
US7266151B2 (en) * | 2002-09-04 | 2007-09-04 | Intel Corporation | Method and system for performing motion estimation using logarithmic search |
US20040057626A1 (en) * | 2002-09-23 | 2004-03-25 | Tinku Acharya | Motion estimation using a context adaptive search |
US7075987B2 (en) * | 2002-09-23 | 2006-07-11 | Intel Corporation | Adaptive video bit-rate control |
US20040169748A1 (en) * | 2003-02-28 | 2004-09-02 | Tinku Acharya | Sub-sampled infrared sensor for use in a digital image capture device |
US7274393B2 (en) * | 2003-02-28 | 2007-09-25 | Intel Corporation | Four-color mosaic pattern for depth and image capture |
US20040174446A1 (en) * | 2003-02-28 | 2004-09-09 | Tinku Acharya | Four-color mosaic pattern for depth and image capture |
-
2000
- 2000-10-31 US US09/704,392 patent/US6636167B1/en not_active Expired - Lifetime
-
2001
- 2001-10-09 KR KR1020037006043A patent/KR100667293B1/ko not_active IP Right Cessation
- 2001-10-09 GB GB0311325A patent/GB2385758B/en not_active Expired - Fee Related
- 2001-10-09 AU AU2002215320A patent/AU2002215320A1/en not_active Abandoned
- 2001-10-09 WO PCT/US2001/031440 patent/WO2002037690A2/en not_active Application Discontinuation
- 2001-10-09 KR KR1020067010255A patent/KR100708370B1/ko not_active IP Right Cessation
- 2001-10-09 DE DE10196847T patent/DE10196847B4/de not_active Expired - Fee Related
- 2001-10-09 CN CNA018182151A patent/CN1531781A/zh active Pending
- 2001-10-09 JP JP2002540320A patent/JP4012065B2/ja not_active Expired - Fee Related
- 2001-10-29 TW TW090126740A patent/TW538601B/zh not_active IP Right Cessation
-
2003
- 2003-06-03 US US10/454,553 patent/US6987469B2/en not_active Expired - Fee Related
-
2005
- 2005-12-06 US US11/296,016 patent/US7190287B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20060087460A1 (en) | 2006-04-27 |
US7190287B2 (en) | 2007-03-13 |
KR20030044066A (ko) | 2003-06-02 |
GB2385758A (en) | 2003-08-27 |
US6636167B1 (en) | 2003-10-21 |
JP4012065B2 (ja) | 2007-11-21 |
GB2385758B (en) | 2004-06-23 |
DE10196847T1 (de) | 2003-12-04 |
US6987469B2 (en) | 2006-01-17 |
US20030210164A1 (en) | 2003-11-13 |
KR100667293B1 (ko) | 2007-01-10 |
KR20060064032A (ko) | 2006-06-12 |
WO2002037690A2 (en) | 2002-05-10 |
GB0311325D0 (en) | 2003-06-25 |
WO2002037690A3 (en) | 2002-08-22 |
DE10196847B4 (de) | 2009-10-01 |
AU2002215320A1 (en) | 2002-05-15 |
CN1531781A (zh) | 2004-09-22 |
TW538601B (en) | 2003-06-21 |
KR100708370B1 (ko) | 2007-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7190287B2 (en) | Method of generating Huffman code length information | |
JP3974036B2 (ja) | ハフマン・デコーディングを実施する方法 | |
JP3278297B2 (ja) | データ圧縮方法及びデータ復元方法並びにデータ圧縮装置及びデータ復元装置 | |
JP2581903B2 (ja) | バイト整列式データ圧縮方法及び装置 | |
JP3309031B2 (ja) | 短ブロックのデータを圧縮、伸長するための方法、及び装置 | |
US6876774B2 (en) | Method and apparatus for compressing data string | |
JP3231663B2 (ja) | データ圧縮方法 | |
US5734340A (en) | Method and apparatus for storing run-intensive information in compact form | |
JP2968112B2 (ja) | 符号変換方法 | |
Gagie et al. | Efficient and compact representations of prefix codes | |
US20030052802A1 (en) | Method and apparatus for huffman decoding technique | |
JP3346626B2 (ja) | データ圧縮装置 | |
JP3350385B2 (ja) | 符号生成方法および符号化方法 | |
Savari | Redundancy of the lempel-ziv-welch code | |
JPH1155125A (ja) | 文字データの圧縮・復元方法 | |
JP3708318B2 (ja) | データ圧縮/復元装置およびデータ圧縮/復元方法 | |
JP3199291B2 (ja) | ハフマン復号化テーブルの構成方法 | |
Lee et al. | Modification of LZSS by using structures of Hangul characters for hangul text compression | |
GB2402584A (en) | Method of performing Huffman decoding | |
JP3332630B2 (ja) | 復号装置及びデコードテーブルの生成方法 | |
Liu et al. | Data compression using word encoding with Huffman code | |
JP2005175926A (ja) | 復号装置及び方法 | |
Choe | Data Compression | |
JPH06140938A (ja) | ハフマン符号復号装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040716 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040716 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060523 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060530 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20060830 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20060906 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070417 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070710 |
|
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: 20070807 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070906 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100914 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110914 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120914 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120914 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130914 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |