(57)【要約】【課題】ハードウエア低減と、ソフトウエアで実現する場合の開発コストなどの低減を図ること。【解決手段】複数のＢＩＴパターンを並列処理するＢＩＴ数と同じ数のラン長を求め、次パターンへ繰り越すラン長を求めるランカウント処理手段と、次パターンへ繰り越すラン長を累積加算する累積加算処理手段とを有するラン長処理装置１７１と、固定長符号の、前後の相関の高いパラメータに対し予測符号化を行い、固定長符号の量子化符号部分に対し予測符号化を行わず、両者を分離する予測符号化処理装置１７２と、上記ラン長から繰り返し数を求める繰り返し処理装置１７３と、上記ラン長と繰り返し数を符号化する符号化処理装置１７４と、を備える。【選択図】        図４
2007028649.tif 000002
【特許請求の範囲】
【請求項１】
複数のＢＩＴパターンを並列処理するＢＩＴ数と同じ数のラン長を求め、つぎへのパターンへ繰り越すラン長を求めるランカウント処理手段と、つぎへのパターンへ繰り越すラン長を加算し、累積加算を求める累積加算処理手段と、を有するラン長処理手段と、
固定長符号を受け取り、前後の相関の高いパラメータに対して予測符号化を行い、固定長符号の量子化符号部分に対しては予測符号化を行わず、両者を分離する予測符号化手段と、
複数のラン長（または予測符号）から繰り返し数を求める繰り返し処理手段と、
求めた複数のラン長（または、予測符号、固定長符号の量子化符号）と前記繰り返し数とを符号化する符号化処理手段と、
を備えたことを特徴とする画像圧縮処理装置。
【請求項２】
固定長符号を受け取り、前後の相関の高いパラメータに対して予測符号化を行い、固定長符号の量子化符号部分に対しては予測符号化を行わず、両者を分離する予測符号化手段と、
複数の予測符号から繰り返し数を求める繰り返し処理手段と、
求めた複数の予測符号、固定長符号の量子化符号、繰り返し数を符号化する符号化処理手段と、
を備えたことを特徴とする画像圧縮処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル画像データをデータ圧縮、伸長する画像処理装置と２値画像データをデータ圧縮、伸長する画像処理装置に関し、より詳細には、デジタル複写機、スキャナー画像ファイリング、プリンタなどのフレームバッファー容量を節約する、いわゆる省メモリ機構に最適な符号化、復号化の方式を用いた画像圧縮処理装置に関するものである。
【背景技術】
【０００２】
従来、画像データ圧縮技術は画像データを保持するためのメモリ量を低減したり、画像データの送信時間を短縮したりする目的で画像処理分野で一般に使用されている。画像データ圧縮方式は画像データの処理形態により、種々であり画像データを印字処理する場合においては限られた容量のメモリ上で画像データを回転して印字するなどの処理を高速に行うという必要性から固定長圧縮が良く使用されている。代表的な固定長圧縮の方式としてＧＢＴＣ（Ｇｅｎｅｒａｌｉｚｅｄ  ＢＴＣ）などが知られている。
【０００３】
このような符号化に関連する参考技術文献がたとえば特許文献１に開示されている。この従来の画像データ符号化装置及び画像データ符号化方法は一般に、画像データをデジタル信号として扱う複写機に適用される。スキャナーで画像データを読み取り、Ａ／Ｄ変換部でデジタル信号に変換し、画像処理部でガンマ変換、画質補正などの画像処理を行い、画像出力部で画像データを記録紙上に画素毎に印字を行い、画像を出力する。
【０００４】
デジタル信号として画像を扱う複写機では、メモリに画像を蓄えておくことが可能になる。画像データをメモリに蓄えることができれば、１度取り込んだ画像を何度も利用したり、また、入出力のアドレスを変え、画像の回転などの加工編集を行うことができる。さらにメモリからハードディスクなどの２次記憶部に符号化した画像データを貯めることにより、多くの画像データを蓄え、それらの画像データを仕分けして出力することも可能である。
【０００５】
ただし、画像の情報量は多く、そのままメモリに蓄えると多くのメモリ容量が必要になり、メモリの単価は高いことから、全体のコストが割高になってしまうし、ハードディスクも大容量のものを使わなければならない。よって画像データを圧縮して、メモリやハードディスクに蓄えられれば、記憶容量が少なくてすみ、コストが抑えられる。画像データ圧縮方式であるブロック符号化方式は、図３６に示すように、画像をブロック毎に分解してブロック内の１バイトの濃度値Ｌｉｊを図に示すアルゴリズムで平均値Ｌａ（１バイト）、階調幅指標Ｌｄ（１バイト）、画素毎の量子化符号φｉｊ（２ビット×１６）にデータ量の圧縮を行うものである。
【０００６】
この符号化方式により、画素１バイトの４×４画素ブロックのデータ量１６バイトが６バイトになり、３／８のデータ量に圧縮が行える。Ｑｊは、復号時の量子化代表値で各符号が復号時に割り当てられる濃度値である。デジタル複写機がメモリに画像を圧縮して蓄え、さらにその符号データをハードディスクに蓄える機能を持つ場合のブロック図を図３７に示す。通常の画像出力の場合は、まずスキャナーで、画像データを画素毎の信号を読み込み、Ａ／Ｄ変換部で各々の信号を８ビットのデジタル信号に変換し、画像処理部でガンマ変換などの画像処理を行う。信号切り替え部６０６をＢに接続して、画像出力部６０７にデータを送り、画像出力部６０７ではこれらのデータを受けて画像を出力する。つぎに画像データを圧縮して格納し、復号して画像を出力する場合について説明する。
【０００７】
つぎに画像データを圧縮して格納し、復号して画像を出力する場合について説明する。スキャナ６０１、Ａ／Ｄ変換部６０２、画像処理部６０３は通常出力の場合で１次符号格納部６０５以降を用いていないときと変わらない。画像処理部６０３からのデータの濃度値は、前記のブロック符号化方式によって符号化され、１次符号格納部６０５に１ページ分の画像の符号データが格納される。１ページ分のデータが格納された後、１次符号格納部６０５から符号データは、ハードディスクなどで構成される２次符号格納部６０４に転送される。同様にして複数枚の原稿の符号データが２次符号格納部６０４に転送される。
【０００８】
所望の原稿枚数の符号データが２次符号格納部６０４に転送された後、２次符号格納部６０４から符号データを読み出し、画像データの出力を行なう。まず、２次符号格納部６０４に格納されている先頭の画像の符号データを１次符号格納部６０５に格納した後、復号して、信号切り替え部６０６をＡに接続して、画像出力部６０７にデータを送り、画像出力部６０７ではこれらのデータを受けて画像を出力する。
【０００９】
２次符号格納部６０４から画像の符号データを、格納された順番に読み出し、上記動作を繰り返し、最後に格納された画像の符号データを復号して出力することにより、１部のコピーが出力でき、同様に複数部のコピーを出力することができる。１次符号格納部６０４について図３７で詳しく説明する。１次符号格納部６０５では１ライン毎に入力される画像データを４ラインＦＩＦＯ７０１で４ライン分蓄えてから１次符号化部７０２で４×４画素ブロック毎に前述のブロック符号化を行い、生成された符号データを符号メモリ７０３に蓄える。
【００１０】
つぎに２次符号格納部６０４について図３９で詳しく説明する。２次符号格納部６０４は、２次符号化部８０２とハードディスク８０３などの記憶装置で構成され、符号メモリ８０１に格納された原稿１枚分の符号データが２次符号化部８０２により、さらに符号化されてハードディスク８０３に蓄えられる。２次符号化部８０２では、ブロック符号化の符号が確実に復号できるように符号化前のデータと復号時のデータの差が全くない可逆符号化を用いるのが一般的である。
【００１１】
通常は、図４０に示すように平均値Ｌａは、隣のブロックとの差分値△ＬをＷＹＬＥ符号などの可変長符号を使って符号化を行い、階調幅指標Ｌｄはそのままの値を同じく、ＷＹＬＥ符号等の可変長符号を使って符号化を行い、φｉｊは、上位ビットと下位ビットを別々にＭＭＲなどの２値データの符号化方式で符号化を行う。
【００１２】
つぎに、プリンタ画像圧縮の従来例について説明する。２値画像を小さなハードウエアで圧縮する方法として１次元圧縮のランレングス画像圧縮，ファクシミリなどのＭＨ符号が広く知られている。２値画像を高い圧縮率で圧縮する方法として２次元圧縮方式の国際標準であるＪＢＩＧ(ｊｏｉｎｔ  Ｂｉ−ｌｅｖｅｌ  Ｉｍａｇｅ  ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ)などが有名であり、エントロピー符号として算術符号器であるＱＭ＿コーダーを使用している。
【００１３】
しかし、この方法は算術符号器であるＱＭ＿コーダーに必要なコンテキストメモリやコンテキストを作成するラインメモリなどに大きなハードウエアコストが必要となり、かつ高速化が難しいという問題点がある。
【００１４】
また、ＭＨ符号の改造版として特許文献２には、ＭＨ符号を行うとき、直前の白および黒のラン長を格納し、ある色のラン長が直前のラン長に一致する場合に所定の反復符号を生成することにより、圧縮率、処理スピードを改善する方式が開示されている。
【００１５】
明らかに、ラン長の一致が発生した時に生成される反復符号が一致し生成することにより、圧縮率、処理スピードを改善する方式が開示されている。しかし、一致しなかった場合に符号化される符号語に比べて十分に少ないデータ量である場合にのみ圧縮率が向上するものであり、より短い符号語を反復符号に割り当てることは相対的に一致しないラン長の符号語を長くするので、色が短い周期で頻繁に変化するような画像データに対しては十分な圧縮率を持つ符号セットを得ることが困難であるという欠点が存在する。
【００１６】
また、特許文献２における符号セットはＭＨ符号に類似するものであり、複数ＢＩＴを並列に処理する場合、大きなゲート数を必要とし、高速性を期待することは困難であるという欠点も存在する。
【００１７】
以上の画像符号化方式は、特定の画像に対しては高い圧縮率が達成できるものの、色が短い周期で頻繁に変化するような画像テデータに対しは十分な圧縮率を得ることは困難であった。
【００１８】
この問題を克服した方法としてたとえば特許文献３が開示されている。ここでは、データを走査して得られる色毎に交互のランレングス数値列を入力し、所定の符号列に変換して出力する符号化方法であって、所定のランレングス数値を入力したときに上記ランレングス数値の値が同色の直前のランレングス数値に一致する場合を一致事象と設定すると共に一致しない事象を不一致事象と設定し、一致事象が連続する数を反復数と設定し、上記一致事象または一致事象の連続が発生した場合には上記反復数に対応する反復数符号を生成し、上記不一致事象が発生した場合には上記ランレングス数値の値を示す符号を生成するデータ符号化方法が開示されている。
【００１９】
【特許文献１】特開平１０−２８５４０５号公報
【特許文献２】特開平９−６５１４７号公報
【特許文献３】特開２０００−２１７００５号公報
【発明の開示】
【発明が解決しようとする課題】
【００２０】
このように、従来のコピー画像は固定長圧縮方式（ＧＢＴＣなどの方式）にて圧縮されていた。近年、前述のように画像データをメモリやハードデイスクへ格納する要求から、従来以上の圧縮率を求められている。このため、前述のように固定長圧縮（ＧＢＴＣ）後の符号を再度他の圧縮装置により圧縮することにより、この目的を達成していた。しかしながら、プリンタ画像においても前述したように、プリンタ画像の特性（２値の繰り返しを多く含む画像）に適した画像圧縮装置があり、このコピー画像／プリンタ画像は、別の符号器により、それぞれ圧縮処理を行なっているため、これらを構成するハードウエアおよびゲート数、ソフトウエアの規模が大きくなるという問題点があった。
【００２１】
本発明は、上記に鑑みてなされたものであって、固定長圧縮符号の再度の圧縮処理とプリンタ画像の圧縮処理装置を同じ画像圧縮処理装置で行うことにより、ハードウエア低減と、ソフトウエアで実現する場合の開発コストなどの低減を図ることを目的とする。
【課題を解決するための手段】
【００２２】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明は、複数のＢＩＴパターンを並列処理するＢＩＴ数と同じ数のラン長を求め、つぎへのパターンへ繰り越すラン長を求めるランカウント処理手段と、つぎへのパターンへ繰り越すラン長を加算し、累積加算を求める累積加算処理手段と、を有するラン長処理手段と、固定長符号を受け取り、前後の相関の高いパラメータに対して予測符号化を行い、固定長符号の量子化符号部分に対しては予測符号化を行わず、両者を分離する予測符号化手段と、複数のラン長（または予測符号）から繰り返し数を求める繰り返し処理手段と、求めた複数のラン長（または、予測符号、固定長符号の量子化符号）と繰り返し数とを符号化する符号化処理手段と、を備えたもことを特徴とする。
【００２３】
この発明によれば、ラン長処理手段のランカウント処理手段により、複数のＢＩＴパターンを並列処理するＢＩＴ数と同じ数のラン長を求め、つぎへのパターンへ繰り越すラン長を求め、累積加算処理手段でつぎへのパターンへ繰り越すラン長を加算して累積加算を求め、固定長符号を受け取り、前後の相関の高いパラメータに対して予測符号化を行い、予測符号化手段により、固定長符号の量子化符号部分に対しては予測符号化を行わず、両者を分離し、繰り返し処理手段により、複数のラン長（または予測符号）から繰り返し数を求め、符号化処理手段により、求めた複数のラン長（または、予測符号、固定長符号の量子化符号）と繰り返し数とを符号化する構成とすることによって、固定長圧縮符号の再度の圧縮処理とプリンタ画像の圧縮処理を同じ画像圧縮装置で行なえ、コピー画像およびプリンタ画像が有する特性に適した画像圧縮処理が実現する。
【００２４】
また、請求項２にかかる発明は、固定長符号を受け取り、前後の相関の高いパラメータに対して予測符号化を行い、固定長符号の量子化符号部分に対しては予測符号化を行わず、両者を分離する予測符号化手段と、複数の予測符号から繰り返し数を求める繰り返し処理手段と、求めた複数の予測符号、固定長符号の量子化符号、繰り返し数を符号化する符号化処理手段と、を備えたことを特徴とする。
【００２５】
この発明によれば、予測符号化手段により、固定長符号を受け取り、前後の相関の高いパラメータに対して予測符号化を行い、固定長符号の量子化符号部分に対しては予測符号化を行わず、両者を分離し、繰り返し処理手段により、複数の予測符号から繰り返し数を求め、求めた複数の予測符号、固定長符号の量子化符号、繰り返し数を符号化する構成とすることによって、コピー画像に対する高い画像圧縮が実現する。
【００２６】
本発明（請求項１）にかかる画像圧縮処理装置は、ラン長処理手段のランカウント処理手段により、複数のＢＩＴパターンを並列処理するＢＩＴ数と同じ数のラン長を求め、つぎへのパターンへ繰り越すラン長を求め、累積加算処理手段でつぎへのパターンへ繰り越すラン長を加算して累積加算を求め、固定長符号を受け取り、前後の相関の高いパラメータに対して予測符号化を行い、予測符号化手段により、固定長符号の量子化符号部分に対しては予測符号化を行わず、両者を分離し、繰り返し処理手段により、複数のラン長（または予測符号）から繰り返し数を求め、符号化処理手段により、求めた複数のラン長（または、予測符号、固定長符号の量子化符号）と繰り返し数とを符号化する構成とすることによって、コピー画像およびプリンタ画像がそれぞれ有する画像特性に適した画像圧縮処理が実現する。したがって、固定長圧縮符号の再度の圧縮処理とプリンタ画像の圧縮処理装置を同じ画像圧縮処理装置で行なうので、ハードウエア低減と、ソフトウエアで実現する場合の開発コストなどの低減を図ることができるという効果を奏する。
【００２７】
また、本発明（請求項２）にかかる画像圧縮処理装置（請求項２）によれば、予測符号化手段により、固定長符号を受け取り、前後の相関の高いパラメータに対して予測符号化を行い、固定長符号の量子化符号部分に対しては予測符号化を行わず、両者を分離し、繰り返し処理手段により、複数の予測符号から繰り返し数を求め、求めた複数の予測符号、固定長符号の量子化符号、繰り返し数を符号化する構成とすることによって、コピー画像に対する高い画像圧縮が実現するため、コピー画像の固定長圧縮（ＧＢＴＣなど）された後の符号を再度圧縮することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２８】
以下、本発明にかかる画像圧縮処理装置の好適な実施の形態について添付の図面を参照し、詳細に説明する。なお、本発明はこの実施の形態に限定されるものではない。
【００２９】
図１は、この発明を実施した画像形成装置の機構部の構成例を示す図である。自動原稿送り装置（以下、ＡＤＦという）１０１にある原稿台１０２に、原稿の画像面を上にして置かれた原稿束は、操作部上のスタートキーが押下されると、一番下の原稿から給送ローラ１０３および給送ベルト１０４によってコンタクトガラス１０５上の所定の位置に給送される。読み取りユニット１０６によってコンタクトガラス１０５上の原稿の画像データを読み取った後、読み取りが終了した原稿は、給送ベルト１０４および排送ローラ１０７によって排出される。さらに、原稿セット検知１０８にて原稿台１０２につぎの原稿が有ることを検知した場合、前原稿と同様にコンタクトガラス１０５上に給送される。給送ローラ１０３，給送ベルト１０４および排送ローラ１０７はモータによって駆動される。
【００３０】
第１トレイ１０９あるいは第２トレイ１１０、第３トレイ１１１に積載された記録紙は、それぞれ第１給紙装置１１２あるいは第２給紙装置１１３、第３給紙装置１１４によって給紙され、縦搬送ユニット１１５によって感光体ドラム１１６に当接する位置まで搬送される。読み取りユニット１０６にて読み込まれた画像データは、書き込みユニット１１７からのレーザーによって感光体ドラム１１６に書き込まれ、現像ユニット１１８を通過することによってトナー像が形成される。そして、記録紙は感光体ドラム１０６の回転と等速で搬送ベルト１１９によって搬送されながら、感光体ドラム１１６上のトナー像が転写される。その後、定着ユニット１２０にて画像を定着させ、排紙ユニット１２１によって後処理装置のフィニシャ１００に排出される。
【００３１】
後処理装置のフィニシャ１２２は、本体の排紙ローラによって搬送された記録紙を、通常排紙ローラ１３２方向と、ステープル処理部方向に導くことができる。切り替え板１２４を上に切り替えることにより、搬送ローラ１２３を経由して通常排紙トレイ１２６側に排紙することができる。また、切り替え板１２４を下方向に切り替えることで、搬送ローラ１２５，１２７を経由して、ステープル台１２８に搬送することができる。
【００３２】
ステープル台１２８に積載された記録紙は、一枚排紙されるごとに紙揃え用のジョガー１２９によって、紙端面が揃えられ、一部のコピー完了と共にステープラ１３０によって綴じられる。ステープラ１３０で綴じられた記録紙群は自重によって、ステープル完了排紙トレイ１３１に収納される。
【００３３】
一方、排紙トレイ１２８は前後に移動可能な排紙トレイである。前後に移動可能な排紙トレイ部１２８は、原稿毎、あるいは画像メモリによってソーティングされたコピー部毎に、前後に移動し、簡易的に排出されてくるコピー紙を仕分けるものである。
【００３４】
記録紙の両面に画像を作像する場合は、第１トレイ１０９あるいは第２トレイ１１０、第３トレイ１１１から給紙され作像された記録紙を排紙トレイ側に導かないで、経路切り替えのための分岐爪１３３を上側にセットすることで、一旦両面給紙ユニット１３４にストックする。
【００３５】
その後、両面給紙ユニット１３４にストックされた記録紙は再び感光体ドラム１１６に作像されたトナー画像を転写するために、両面給紙ユニット１３４から再給紙され、経路切り替えのための分岐爪１３３を下側にセットし、排紙トレイ１２６に導く。このように記録紙の両面に画像を作成する場合に両面給紙ユニット１３４は使用される。
【００３６】
感光体ドラム１１６，搬送ベルト１１９，定着ユニット１２０，排紙ユニット１２１および現像ユニット１１８は、メインモータによって駆動され、第１給紙装置１１２，第２給紙装置１１３，第３給紙装置１１４はメインモータの駆動を各々給紙クラッチによって伝達駆動される。縦搬送ユニット１１５はメインモータの駆動を中間クラッチによって伝達駆動される。
【００３７】
読み取りユニット（スキャナー）１０６は、原稿を載置するコンタクトガラス１０５と光学走査系で構成されており、光学走査系は、露光ランプ１３５，第１ミラー１３６，レンズ１３７，ＣＣＤイメージセンサ１３８等々で構成されている。露光ランプ１３５および第１ミラー１３６は、図示しない第１キャリッジ上に固定され、第２ミラー１３９および第３ミラー１４０は、図示しない第２キャリッジ上に固定されている。原稿像を読み取るときには、光路長が変わらないように、第１キャリッジと第２キャリッジとが２対１の相対速度で機械的に走査される。この光学走査系は、図示しないスキャナ駆動モータにて駆動される。
【００３８】
原稿画像は、ＣＣＤイメージセンサ１３８によって読み取られ、電気信号（アナログ画像信号）に変換され、そしてデジタルデ−タ（画像デ−タ）に変換される。画像デ−タにはさらに数種の画像処理が施される。レンズ１３７およびＣＣＤイメージセンサ１３８を図１において左右方向に移動させることにより、画像倍率が変わる。すなわち、指定された倍率に対応してレンズ１３７およびＣＣＤイメージセンサ１３８の左右方向に位置が設定される。
【００３９】
書き込みユニット１１７は、レーザ出力ユニット１４１，結像レンズ１４２およびミラー１４３などで構成され、レーザ出力ユニット１４１の内部には、レーザ光源であるレーザダイオードおよびモータによって高速で定速回転する回転多面鏡（ポリゴンミラー）などが備わっている。レーザ出力ユニット１４１より照射されるレーザ光は、定速回転するポリゴンミラーで走査され、結像レンズ１４２を通り、ミラー１４３で折り返され、感光体ドラム１１６面上に集光結像する。
【００４０】
レーザ光は、感光体ドラム１１６が回転する方向と直行する方向（主走査方向）に露光走査され、画像処理部のセレクタ（図示せず）より出力された画像信号のライン単位の記録を行う。感光体ドラム１１６の回転速度と記録密度に対応した所定の周期で主走査を繰り返すことによって、感光体面上に画像（静電潜像）が形成される。上述のように、書き込みユニット１１７から出力されるレーザ光が、画像作像系の感光体ドラム１１６に照射される。
【００４１】
図示しないが感光体ドラム１１６の一端近傍の、レーザ光が照射される位置に、主走査同期信号を発生するビームセンサが配置されている。この主走査同期信号をもとに主走査方向の画像記録開始タイミングの制御、および画像信号の入出力を行うための制御信号の生成を行う。
【００４２】
図２は、図１における画像形成装置の電装・制御装置の構成を示すブロック図である。符号１５０は主に画像メモリを操作をする画像メモリアクセラレータであり、ＣＰＵ１６７により制御され、ネットワークを通してホストコンピュータから画像データを受け取り、符号化などを行い、メモリ１０へ転送する。また、その画像データをエンジンコントローラ１６１へ転送しプリントアウトなどを行う。
【００４３】
このときに、各ホストコンピュータとの通信や、メモリ１６８のコントロールや、パネル１６２から操作された情報を得るためや、プリンタエンジンコントローラなどの周辺とのバスコントロールなどを行う。
【００４４】
符号１５１はバスコントローラであり、バス１６６とつながる各周辺コントローラとのバスの調停を行う。符号１５２はメモリアービターであり、メモリ１６８と各種のコントローラ間の調停を行う。符号１５３はローカルＩ／Ｆである。このローカルＩ／Ｆ１５３は、ＲＯＭ１６６などのインタフェースであり、メモリアービター１５２を介して、メモリ１０や、ＣＰＵ１６７と接続されている。符号１６６はＲＯＭであり、各種のプログラムや、文字などのフォント情報を格納している。
【００４５】
符号１６０は符号化／復号化装置であり、メモリアービター１５２を介して、メモリ１６８やＣＰＵ１６７と接続されており、メモリ１６８などからの画像データを符号化／復号化を行う。符号１５４はＣＰＵＩ／Ｆであり、ＣＰＵ１６７のインタフェースで、メモリアービター１５２を介して、メモリ１６８や各種コントローラと接続されている。符号１６７はＣＰＵであり、プリンタ装置全体の制御を行う。
【００４６】
符号１５５はメモリコントローラであり、メモリ１６８を制御し、メモリアービター１５２を介して、各種コントローラやＣＰＵ１６７と接続されている。符号１６８はメモリであり、画像データや、その符号データや、ＣＰＵのプログラムなどを格納している。
【００４７】
符号１５６は通信コントローラであり、ネットワークに接続されており、ネットワークから各種データやコマンドなどを受け取り、メモリアービター１５２を介して各種のコントローラに接続されている。符号１６１はプリンターコントローラであり、バス１６６と接続されており、プリンタエンジン１６０を制御する。
【００４８】
符号１６３はパネルコントローラであり、パネル１６２を制御している。符号１６３はパネルであり、ユーザーからの操作をプリンタ装置へ知らせる。符号１６６はバスであり、画像メモリアクセラレータ１５０と各種周辺コントローラとを接続する。符号１５９はＤＭＡであり、メモリアービター１５２に接続されるコントローラ間のダイレクトメモリアクセスを行う。
【００４９】
符号１５８はＨＤＤコントローラであり、ＨＤＤを制御する。符号１６９はＨＤＤであり、符号化された画像符号などを格納する。符号１６４はスキャナーであり、ＣＣＤにより画像を読み込む。符号１６５は画像処理装置であり、スキャナー１６４から読み込んだ画像データに対してシェ−デイング補正、ＭＴＦγ補正などの画像処理を行う。
【００５０】
図３は、本発明の実施の形態にかかるエンコード時の全体のブロック図であり、図２における符号化／復号化装置１６０の構成を示すものである。符号１７６はメモリであり、プリンタの画像データを格納する。符号１７７はメモリであり、コピー用の画像データを格納する。符号１７８は固定長符号化装置であり、ＧＢＴＣなどにより、コピー画像のデータを固定長に圧縮する。図３１〜図３３に各ＧＢＴＣ（４／８、３／８、２／８符号化）の演算式を示す。また、図３４に各ＧＢＴＣ方式の固定長符号のフォーマットを示す。
【００５１】
図３において、符号１７０は画像読み込み部であり、メモリ１７６、固定長符号化装置１７８から画像データをリードする。コピーモード時にメモリ１７６を選択する。符号１７１はラン長処理装置であり、画像読み込み部１７０で読み出された２値のデータをラン長（０値の長さと１値の長さ）に変換し繰り返し処理装置へ転送する。
【００５２】
符号１７２は予測符号化装置であり、固定長符号化装置からの図３４に示すような固定長符号を受け取り、前後の固定長符号と相関の対部分の予測符号化を行う。図３４のＧＢＴＣの例ではＬＡのブロックの平均レベルとＬＤのブロック内の階調幅指標の部分の予測符号化を行い、繰り返し処理装置１７４にて、繰り返し数を求める処理が行いやすいように、複数の符号の前後の固定長符号と相関の対部分の予測符号化を繰り返し処理装置１７３へ転送し、図３４の量子化符号とを分離し、量子化符号部分は予測符号化せず、符号化処理装置１７４へ転送する。
【００５３】
符号１７３は繰り返し処理装置であり、プリンタ動作時に、ラン長処理装置１７１からのラン長の繰り返し数を計算し、繰り返し数とラン長を符号化処理装置１７４へ転送する。また、コピー動作時に予測符号化処理装置１７２から予測符号を受けとり、繰り返し数を計算し、繰り返し数と予測符号を符号化処理装置１７４へ転送する。
【００５４】
符号１７４は符号化処理装置であり、繰り返し処理装置１７３のラン長と繰り返し数と予測符号化処理装置１７２からの量子化符号を符号化する。符号１７５は符号書き込み部であり、符号化処理装置１７４で符号化された符号をメモリ１７９へライトする。
【００５５】
図４にプリンタ処理時における画像処理のフローとコピー処理時における画像処理のフローを示す。以下、上述した各ブロックについて詳細に説明する。なお、この実施の形態では４ＢＩＴごとの画像データを並列処理する例について説明する。
【００５６】
図５は、図３における画像読み込み部１７０の構成を示すブロック図である。符号１８５，１８６はレジスタであり、メモリから読み込んだ画像データを格納するレジスタ１８５，１８６はパイプライン接続されており、レジスタ１８６に現在処理するデータを格納し、レジスタ１８５につぎのデータを格納する。レジスタ１８５からはＭＳＢデータ（つぎのデータの１番最初のＢＩＴ）をラン長処理装置１７１へ送る。符号１８７はメモリのアドレス生成器である。
【００５７】
図６は、図３におけるラン長処理装置１７１の構成を示すブロック図である。このラン長処理装置１７１は画像読み込み装置１７０からの４ＢＩＴの画像パターン（ＩＤＯＴ）とつぎのパターンの１番最初のＢＩＴ（ＮＤＯＴ）からランカウントにより、閉じた複数の（４ＢＩＴの場合、ＭＡＸ４個）ラン長とそのラン長が有効か？を示すマスク値とつぎに繰り越すラン長（ＲＵＮＸ）を求めさせ、累積加算処理装置により、このパターン（ＩＤＯＴ）での１番最初のラン長ＲＵＮ３へ今までの繰り越されたラン長を加算するか、また繰り越すかを判断することにより、閉じた複数のラン長とマスク値を生成する。この閉じたラン長とは、０または１のラン長の最初と最後ははっきり判断できたラン長を意味する。
【００５８】
たとえば、４ＢＩＴのデータがすべて０であり、ＮＤＯＴも０であれば、これは閉じたラン長は０個となる。４ＢＩＴのデータがすべて０でＮＤＯＴが１の場合、これは閉じたラン長が１個存在する。４ＢＩＴのデータが“１０１０”でＮＤＯＴが１の場合、前のパターンを無視すると閉じたラン長が４個存在する。４ＢＩＴのデータが“１０１０”でＮＤＯＴが０の場合、前のパターンを無視すると閉じたラン長が３個存在する。
【００５９】
以下に各部を説明する。符号１８０はランカウントであり、画像読み込み部１７０からの４ＢＩＴの画像データとつぎのデータの１番最初のＢＩＴを受け取り、ＭＡＸ4個のラン長を出力する。ＲＵＮ３〜ＲＵＮ０がラン長である。ＤＭＡＳＫ３〜ＤＭＡＳＫ０はＲＵＮ３〜０のラン長が有効か？無効か？を示すフラグである。ＲＵＮＸはつぎに繰り越すラン長である。ＡＦＬは４ＢＩＴすべてが０または１でありかつＮＤＯＴ（つぎのデータの1番最初のＢＩＴ）が同じ値である場合、１となるフラグである。
【００６０】
符号１８１は加算器であり、ＡＦＬが１の場合、ランカウント１８０のつぎへの繰越しラン長とレジスタ１８４で格納しておいた今までの繰越しラン長の合計（ＲＢＲＵＮ３）を加算し再度、今までの繰越しラン長の合計（ＲＢＲＵＮ３）とする。ＡＦＬが０の場合、つぎへの繰越しラン長を今までの繰越しラン長の合計（ＲＢＲＵＮ３）へ設定する。符号１８２は加算器であり、１番最初のラン長 ＲＵＮ３と今までの繰越しラン長の合計（ＲＢＲＵＮ３）を加算し、今までの繰越しラン長を考慮したラン長を求める。この加算器１８１，１８２により累積加算処理装置１８３が構成される。
【００６１】
符号１８４はレジスタである。このレジスタ１８４の処理例を図１３に示す。（１）は処理例の１番最初の４ＢＩＴ並列処理し、複数のラン長を求める例である。この例では、つぎの４ＢＩＴの最初の画像が“１”であり、処理する４ＢＩＴの画像の最後のＢＩＴが“０”であるため、この並列処理された４ＢＩＴは内部で閉じた３つのラン長の持っており、そのラン長“２”，“１”，“１”を求めている。
【００６２】
（２）は２つ目の処理であり、これは４ＢＩＴの最初の画像が“０”であり、処理する４ＢＩＴの画像の最後のＢＩＴが“０”であるため、この並列処理された４ＢＩＴは内部で閉じておらず、最後のラン長がつぎの処理へ受け渡される。そのため、ここでは１つのラン長“２”のみとなる。
【００６３】
（３）は３つ目の処理であり、３つのラン長を持っており、つぎの４ＢＩＴの最初の画像が“０”であり、処理する４ＢＩＴの画像の最後のＢＩＴが“１”であるため、この並列処理された４ＢＩＴは内部で閉じており、前回から継続されたラン長が“２”があるため、ここで求めた最初のラン長“３”と加算し、最初のラン長は５となり、ここでは、“５”、“１”の２つのラン長を求めている。
【００６４】
（４）は、閉じておらず、１つもラン長がない例である。（５）は（４）と同様な例である。（６）では、（４）、（５）から継続されたラン長を加算し、１つのラン長“１１”を求めている。
【００６５】
図７は、図３における予測符号化処理装置の構成を示すブロック図である。符号１８８は固定長符号バッファであり、図３４に示すようなＧＢＴＣのような固定長符号を複数個格納する。符号１８９は差分処理装置であり、前後の固定長符号と相関のある部分の予測符号化を行う。図３４のＧＢＴＣの例ではＬＡのブロックの平均レベルとＬＤのブロック内の階調幅指標の部分の予測符号化を行う。
【００６６】
符号１９０は符号順序生成装置であり、図９に示すように繰り返し処理装置にて、繰り返し数を求める処理が行いやすいように、複数の符号の前後の固定長符号と相関のある部分の予測符号化と図３４の量子化符号とを分離し、繰り返し処理装置１７３へ転送し、量子化符号部分は予測符号化せず、符号化処理装置１７４へ転送する。
【００６７】
図８は、図３における予測符号化処理装置の詳細構成を示すブロック図である。この例は固定長符号化方式としてＧＢＴＣを使用した例である。固定長符号バッファー１８８について説明する。符号１９１〜１９８はレジスタであり、固定長符号を格納する。符号１９９，２００はレジスタであり、前回の最終の固定長符号の前後の固定長符号と相関のある部分（ＧＢＴＣであれば、ＬＡのブロックの平均レベルとＬＤのブロック内の階調幅指標の部分）を格納する。
【００６８】
つぎに、差分処理装置１８９について説明する。符号２０１は減算器であり、前回のＬＡのブロックの平均レベルと1番目のＬＡのブロックの平均レベルの予測符号化を行う。符号２０２は減算器であり、前回のＬＤのブロック内の階調幅指標と１番目のＬＤのブロック内の階調幅指標の予測符号化を行う。
【００６９】
同様に、符号２０３は減算器であり、１番目のＬＡのブロックの平均レベルと２番目のＬＡのブロックの平均レベルの予測符号化を行う。符号２０４は減算器であり、１番目のＬＤのブロック内の階調幅指標と２番目のＬＤのブロック内の階調幅指標の予測符号化を行う。以下同様に減算器を用いて処理する。
【００７０】
図８は、図３における繰り返し処理装置１７３の構成を示すブロック図である。この繰り返し処理装置１７３はラン長処理装置１７１で求めた複数のラン長と前パターンの後ろから２番目、１番目のラン長から複数のラン長の繰り返し数を求める。
【００７１】
処理の流れとして、繰り返しフラグ生成装置２０５により、ラン長処理装置１７１で求めた複数のラン長と前パターンの後ろから２番目、１番目のラン長から各ラン長を比較し、ラン長処理装置１７１で求めた複数のラン長が、それぞれ２つ前のラン長と等しいかどうか判断する。さらに繰り返しフラグ（ＲＦＬ３〜０）を生成し、繰り返し数生成装置２０６により繰り返しフラグ（ＲＦＬ３〜０）のパターンと今までの繰り返し数（ＲＥＰ）から今までの繰り返し数と、新しい繰り返し数を計算し複数の繰り返し数（ＷＲＥＰ３〜０）と、つぎのパターンへの繰り返し数（ＷＲＥＰ）を求める。
【００７２】
以下に各部について説明する。符号２０５は繰り返しフラグ生成装置であり、ラン長処理装置１７１からの複数のラン長とそのマスク値と前パターンの２つ目前のラン長と１つ前のラン長を受け取り、ラン長処理装置１７１からの各ラン長を２つ前のラン長と一致するか比較し、繰り返しフラグＲＦ３〜０を出力する。
【００７３】
符号２０６は繰り返し数生成装置であり、繰り返しフラグ生成装置２０５からの繰り返しフラグＲＦ３〜０といままでの繰り返し数（ＲＥＰ）を受け取り、複数の繰り返し数を生成する。符号２０７は空き領域削除装置であり、繰り返し数生成装置２０６から受け取った複数の繰り返し数と複数のラン長から繰り返し数生成装置２０６により繰り返しと判断され何も情報の入っていない（繰り返し数が０）部分をシフトし、ＷＲＥＰ３、ＷＲＵＮ３よりに繰り返し数とラン長をつめる。
【００７４】
符号２０８はレジスタである。符号２０９はＮＥＸＴラン長生成装置であり、つぎのパターンの繰り返しフラグ生成のため、後ろから２番目のラン長と後ろから1番目のラン長を求める。符号２１０はレジスタである。符号２１１はコピー／プリンタ選択装置でありコピーモード時には予測符号化装置からの情報を符号化処理装置１７４に転送し、プリンタモード時にはラン長処理装置１７１からの情報を繰り返しフラグ生成装置２０５、ＮＥＸＴラン長生成装置２０９へ転送する。
【００７５】
図３５に繰り返し処理の例を示す。（１）は処理例の１番最初の４ＢＩＴ並列処理し、繰り返しを求める例である。ＯＵＴはこの繰り返し処理装置１７３の出力である。ＤＭＡＳＫは４つのランの有効フラグであり、“１”で有効であり、その項目にラン長あるいは繰り返し数がある。ＲＥＰは繰り返し数であり、“０”はその項目が繰り返しではなくラン長であることを示す。
【００７６】
ＲＵＮはラン長である。ＷＯＲＫは繰り返し処理装置の内部の主要信号である。ＲＦＬは繰り返しフラグであり、繰り返しフラグ生成装置２０５の出力であり、その項目がラン長であれば０、繰り返しであれば１を、何もなければ２を示す。ＷＲＥＰは繰り返し数であり、繰り返し数生成装置２０６から出力されている。
【００７７】
ＲＥＰは継続中の繰り返し数である。ＲＦ２，ＲＦ１は前回の最後のラン長であり、ＲＦ１は１つまえのラン長であり、ＲＦ２は２つ、前のラン長である。ここでは、１番最初なためにＲＦ２,ＲＦ１は初期値を持っている（ラン長の０は有り得ない数値）。ここでは１つのラン長“３”が入力されたが、繰り返しはない。
【００７８】
（２）は２つ目の処理であり、ここでは“２”、“２”の２つのラン長が入力されている。ここでも繰り返しはない。（３）は３つ目の処理であり、２つのラン長の“２”、“２”が入力されている。ここではまず、最初の“２”のラン長はＲＦ２の数値と一致し、繰り返し数と認識され、つぎの“２”のラン長もＲＦ１の数値と一致し、繰り返し数と認識され、繰り返しフラグのＲＦＬは３，２の項目において“１”となっている。しかし、１の項目は“２”であり、この繰り返しは、まだ継続していることを示している。そのため、継続する繰り返し数“２”をＲＥＰに格納している。そのため、ＷＲＥＰには繰り返し数が出力されない。
【００７９】
（４）は４つ目の処理であり、３つのラン長“２”、“２”、“１”が入力されている。ここでも、（３）と同様に最初の“２”のラン長はＲＦ２の数値と一致し、繰り返し数と認識され、つぎの“２”のラン長もＲＦ１の数値と一致し、繰り返し数と認識され、つぎの“１”は２つ前のラン長の“２”と比較され数値が一致しないために繰り返しとは認識されない。そのため、繰り返しフラグのＲＥＦＬは３，２の項目において“１”となっている。１の項目は“０”であり、この繰り返しは、終端していることを示している。
【００８０】
そのため、ＷＲＥＰに終端した位置項目３で繰り返し数“４”を示している。つぎに、ＷＲＥＰは項目３の空白が存在するので空き領域削除処理により、項目３の空白を削除して１つずらしＯＵＴのＲＥＰとＲＵＮのようなっている。この空き領域削除処理は、このように空白が生じた場合、削除して詰めることにより、つぎの処理装置へ転送するときのフォーマットの規則を守る。これにより、次工程の処理装置は単純なフォーマットでデータを受け取れるため、ハードウエアのゲートを少ななくでき、処理スピードの向上を図ることができる。
【００８１】
（５）は５つ目の処理であり、３つのラン長“１”、“１”、“１”が入力されている。ここでは最初のラン長“１”はＲＦ２とは一致せず、ラン長であるが、つぎのラン長“１”はＲＦ１と一致し、繰り返しと認識される。つぎのラン長“１”は２つ前のラン長“１”と一致し繰り返しと認識される。そして、これも継続する２の繰り返しとなる。
【００８２】
図１６は、繰り返しフラグ生成装置２０５の繰り返しフラグ生成処理を示すフローチャートである。まず、ステップＳ４１においてマスク値がＤＭＡＳＫ３＝１であるかをチェックし、０であれば対応するラン長がないため、ステップＳ４３に進み繰り返しフラグ（ＲＦＬ３）に２を設定する。
【００８３】
ステップＳ４１において１であれば、ラン長が存在するため、ステップＳ４２に進みＲＵＮ３と前パターンの後ろから２番目のラン長ＲＦ２と比較し、一致すればステップＳ４５に進み繰り返しフラグ（ＲＦＬ３）に１を設定する。一致しなければステップＳ４４に進み０を設定する。同様に他のＢＩＴも処理する。すなわち、上記ステップＳ４１〜ステップＳ４５の処理を、図示するようにステップＳ４６〜ステップＳ６０で実行する。
【００８４】
図１２は、繰り返しフラグから複数の繰り返し数を求める状態を示す説明図である。繰り返し数はそれぞれの位置で繰り返しが途絶えた点で繰り返し数となる。図１７は、繰り返し数生成処理を示すフローチャートである。ステップＳ６１、ステップＳ６２、ステップＳ６３により、３ＢＩＴ目の繰り返し数を求めている繰り返し数（ＲＦ３）が０であれば繰り返しフラグ生成装置２０５での比較結果が一致しないため、今までの繰り返し数を清算し、ステップＳ６３のように繰り返し数（ＷＲＥＦ３）に今までの繰り返し数（ＲＥＰ）を代入する。
【００８５】
ＲＦ３が１であればステップＳ６２のように繰り返しが継続しているため繰り返し数（ＷＲＥＰ３）を０にする。繰り返し数２ＢＩＴ目はステップＳ６４〜Ｓ６６で求められる。 繰り返しフラグがＲＦＬ３＝１＆ＲＦＬ２＝０であれば、ステップＳ６６のように繰り返し数（ＷＲＥＰ２）に今までの繰り返し数（ＲＥＰ）と今回の繰り返し数１（ＲＦＬ３＝１であるため）を加算し代入する。異なれば、ステップＳ６６のように繰り返し数（ＷＲＥＰ２）を０にする。同様に繰り返し数１ＢＩＴ目はステップＳ６７、ステップＳ６８、ステップＳ６９、ステプＳ７１で求め、繰り返す数０ＢＩＴ目はステップＳ７２、ステップＳ７３、ステップＳ７４、ステップＳ７５、ステップＳ７６、ステップＳ７７、ステップＳ７８で求める。
【００８６】
図１４および図１５につぎパターンへの継続する繰り返し数（ＲＥＰ）を求める処理を行なうフローチャートを示す。まず、ステップＳ１では繰り返しフラグ（ＲＦＬ３）が２であればステップＳ１６に進み、１番優先順位の高いラン長値が決まらないため、今までの繰り返し数（ＲＥＰ）を保持する。ステップＳ２において繰り返しフラグＲＦＬが０で、ＲＦＬ２が２であれば、１番優先順位の高いラン長は繰り返しではなく、それ以降にラン長はないためステップＳ１７に進み、繰り返し数を０に設定する。
【００８７】
ステップＳ３において繰り返しフラグＲＦＬ３が１で、ＲＦＬ２が２であれば、１番優先順位の高いラン長は繰り返しであり、それ以降にラン長はないためステップＳ１８に進み、繰り返し数を今までの繰り返し数（ＲＥＰ）に今回の繰り返し数１を加算し代入する。ステップＳ４において繰り返しフラグＲＦＬ２が０で、ＲＦＬ１が２である場合、ＲＦＬ３がどのような値でも、有効な終端（ここではＲＦＬ１が２であるため、ＲＦＬ２が終端）が０であるのでステップＳ１９に進み、つぎパターンへ継続される繰り返し数は０になる。同様に全ての組み合わせを、以降のステップＳ５〜Ｓ８，ステップＳ２０〜Ｓ３１で行っている。
【００８８】
図１８は、ＮＥＸＴラン長生成装置２０９の処理動作を示すフローチャートである。まず、ステップＳ８１において優先順位の最も高いマスク（ＤＭＡＳＫ３）が０であれば、このパターンに閉じたラン長はないためにステップＳ８５のように前パターンの後ろから2番目、１番目をそのまま継続する。ステップＳ８２においてＤＭＡＳＫ２が０であれば、1つのみラン長が存在するため、ステップＳ８６のように後ろから1つ前のラン長としてＲＩＮ３の値を代入し、後ろから２つ前のラン長として前パターンの後ろから１番目のＲＦ１を代入している。
【００８９】
ステップＳ８３においてＤＭＡＳＫ１が０であれば、２つのみラン長が存在するため、ステップＳ８７のように後ろから１つ前のラン長としてＲＵＮ２の値を代入し、後ろから２つ前のラン長としてＲＵＮ３の値を代入している。ステップＳ８４においてＤＭＡＳＫ０が０であれば、３つのみラン長が存在するため、ステップＳ８８のように後ろから1つ前のラン長としてＲＵＮ１の値を代入し、後ろから２つ前のラン長としてＲＵＮ２の値を代入している。また、ＤＭＡＳＫ０が１であれば、４つのみラン長が存在するため、ステップＳ８９のように後ろから１つ前のラン長としてＲＵＮ０の値を代入し、後ろから２つ前のラン長としＲＵＮ１の値を代入している。
【００９０】
図１１は、符号化処理装置１７４のトップの構成および信号入出力を示すブロック図である。この符号化処理装置１７４は、ＭＡＸ４個のラン長と繰り返し数とそのマスク値を受け取り、図８のような４ＢＩＴ４ごとのフォーマットの符号を出力する（符号のファーマットは何ＢＩＴごとでもよい）。
【００９１】
図１９〜図２１に符号化処理装置１７４の処理動作のフローチャートを示す。図１９のステップＳ９１〜Ｓ９８において、符号化処理はマスク値のＤＭＡＳＫ３〜０の値により、それぞれのラン長を符号化する。
【００９２】
つぎに符号化のフローチャートを説明する。図２０において、まず、ステップＳ１０１においてラン長が０であれば、ステップＳ１０２でラン長が１０以下か？を判断する。以下であればステップＳ１０３のようにラン長をそのまま符号とする。
【００９３】
ステップＳ１０４においてラン長が１０以上で４３以下の場合、さらにステップＳ１０５でラン長が２７以下であるかを判断し、ラン長が２７以下の場合、ステップＳ１０８に進み、ヘッダーとして４ＢＩＴの１０１０を付加し、つぎにラン長から１１マイナスした値を符号とする。２７以上の場合はステップＳ１０８において４ＢＩＴの１０１１を付加し、つぎにラン長から１１マイナスした値を符号とする。
【００９４】
ステップＳ１０４においてラン長が４３以上の場合、ステップＳ１０６に進み、ヘッダーとして４ＢＩＴの１１００を付加し、ステップＳ１０９〜Ｓ１１６により４ＢＩＴのデータの４ＢＩＴ目を終端フラグとする数値の表現をし、符号長を小さく表現する。
【００９５】
さらに、図２１において、ステップＳ１１７において繰り返し数（ＲＥＰ）が１であれば、ステップＳ１１８で１３を符号とする。ステップＳ１１９において繰り返し数（ＲＥＰ）が２であれば、ステップＳ１２０で１４を符号とする。ステップＳ１２１において繰り返し数（ＲＥＰ）が３であれば、ステップＳ１２２で１３，１４を符号とする。
【００９６】
ステップＳ１２３において繰り返し数（ＲＥＰ）が４であれば、ステップＳ１２４で１４，１４を符号とする。ステップＳ１２３において繰り返し数（ＲＥＰ）が４以上の場合はステップＳ１２５でヘッダーとして４ＢＩＴの１１１１を付加する。さらにステップＳ１２６〜Ｓ１３３において４ＢＩＴのデータの４ＢＩＴ目を終端フラグとする数値の表現をし、符号長を小さく表現する。
【００９７】
図２２は、本発明の実施形態にかかるデコード時の全体のブロック図である。図３における符号化／復号化装置１６０に相当する。符号２５０はメモリであり、符号データを格納する。符号２５１は符号読み込み部であり、メモリ２５０から符号データをリードする。符号２５２は符号解釈処理装置であり、読み出された符号を解釈しラン長（０値の長さと１値の長さ）または繰り返し数に変換し、ラン長処理装置２５３へ転送する。また、コピーモード時、量子化符号を判断し、予測復号化処理装置２５５へ転送する。
【００９８】
符号２５３はラン長処理装置であり、プリンタモード時に符号解釈処理装置２５２のラン長と繰り返し数から、繰り返し数をラン長のみへ展開し、必要なだけのラン長をＤＯＴ化処理装置２５４へ転送する。コピーモード時に予測符号と繰り返し数から、繰り返し数を予測符号へ展開する。また、複数の固定長符号の復号に必要な予測符号を予測復号化処理装置２５５へ転送する。
【００９９】
符号２５４はＤＯＴ化処理装置であり、ラン長をＤＯＴ化し、画像書き込み部２５６へ送る。符号２５５は予測復号化処理装置であり、与えられた予測符号と量子化符号から複数の固定長符号へ復号する。符号２５６は画像書き込み部であり、プリンタモード時にデコードされた画像をメモリ２５８へライトする。また、コピーモード時に復号化された値を固定長符号復号化処理装置２５７へ転送する。
【０１００】
符号２５８はメモリであり、プリンタ画像データを格納する。符号２５７は固定長符号復号化処理装置であり、ＧＢＴＣなどの固定長符号を復号化する。符号２５９はメモリであり、コピー画像データを格納する。
【０１０１】
以下、図２２の各ブロックを詳細に説明する（この例は４ＢＩＴごとの画像データを並列処理する例である）。図２３にプリンタモード時の処理フローとコピーモード時の処理フローを示す。図２４に符号読み込み処理部２５１のブロック図を示す。この符号読み込み部２５１はフォーマットの符号を読み込み４ＢＩＴごとの符号として出力する。このとき、シフタ２６２により符号解釈処理装置２５２からの消費した符号長（ＣＯＤＥＬＥＮＧ）により、順次４ＢＩＴ符号をシフトしていく。また、ＦＩＦＯがフルになった場合、ＦＩＦＯからのＷＡＩＴ信号により符号の読み込みを中止する。
【０１０２】
以下に各部を説明する。図２４は符号読み込み部２５１の構成を示すブロック図である。符号２６０，２６１はレジスタであり、読み込んだ符号データを１時格納する。符号２６２はシフタであり、符号解釈処理装置２５２からの消費した符号長（ＣＯＤＥＬＥＮＧ）により、順次４ＢＩＴ符号をシフトさせながら符号解釈装置へ４ＢＩＴごとの符号を転送する。符号２６３はアドレス生成部であり、符号メモリのアドレスを生成する。
【０１０３】
図２５に符号解釈処理装置２５２のブロック図を示す。この符号解釈処理装置２５２は符号読み込み処理部からの複数の４ＢＩＴ単位の符号を読み込み、４個のラン長または繰り返し数と、その数値がラン長か？繰り返し数か？を示す複数のフラグを求める。
【０１０４】
処理のながれは、４個の符号解析装置２６５〜２６８により図９のフォーマットの符号を解析させ、このとき、１つの符号解析装置はＭＡＸの符号長の符号を読めるようにする（図９のフォーマットではＭＡＸの符号長は４ＢＩＴコードが８個である）。そして４個はそれぞれ１つの４ＢＩＴコードごとずらし解析する。もちろんそれぞれの符号解釈装置は符号のバウンダリーにあっているもの、合わないものがあり、それを有効フラグ生成装置２６９により判断する。
【０１０５】
この有効フラグ生成装置２６９は４つ符号解析装置２６５〜２６８からの符号長（ＣＬＥＮＧ０〜３）の値から有効か？を判断し、符号解析装置２６５〜２６８それぞれが出力したラン長または繰り返し数とラン長、繰り返し数かを示すフラグの有効／無効を示すフラグ（ＣＭＤＦＬ０〜３）を出力し、それを有効データ数生成装置２７０により長さ（ＭＬＥＮＧ）に変換し、ＦＩＦＯへラン長または繰り返し数とラン長、繰り返し数かを示すフラグ（ＮＦＬ０〜３）の有効／無効を示すフラグ（ＣＭＤＦＬＯ０〜３）と有効データ数（ＭＬＥＮＧ）を転送する。また、有効フラグ生成装置２６９で得られた合計の符号長（ＣＯＤＥＬＥＧ）を符号読み込み装置へ転送し、つぎの符号を作成させる。
【０１０６】
以下、各部を説明する。符号２６５〜２６８は符号解析装置であり、図１２のフォーマットの符号を解析し、ラン長または繰り返し数とラン長（ＧＷＷＣＯＬ）、繰り返し数かを示すフラグ（ＮＦＬ）、処理した符号長（ＣＬＥＮＧ）を出力する。このとき、１つの符号解析装置はＭＡＸの符号長の符号を読めるようにする（図１２のフォーマットではＭＡＸの符号長は４ＢＩＴコードが８個である）。そして４個はそれぞれ１つの４ＢＩＴコードごとずらし解析する。
【０１０７】
符号２６９は有効フラグ生成装置であり、符号解析装置２６５〜２６８からの処理した符号長（ＣＬＥＮＧ）を受け取り、符号解釈装置２６５は正しい位置にあり正しい符号の解析を行い、符号解釈装置２６６は符号解釈装置２６５の処理した符号長が１であれば、有効であるが、１以上であれば無効である。符号解釈装置２６７は符号解釈装置２６５の処理した符号長と符号解釈装置２６６の処理した符号長（無効であれば０）を加えた数が１または２であれば有効であり、以外は無効である。符号解釈装置２６８は符号解釈装置２６５の処理した符号長と符号解釈装置２６６の処理した符号長（無効であれば０）と処理した符号長（無効であれば０）を加えた数が１または２または３であれば有効であり、以外は無効である。
【０１０８】
符号２７０は有効データ数生成装置であり、有効フラグ生成装置からの有効フラグを長さ（ＭＬＥＮＧ）に変換する。符号２７１は空き領域削除装置であり、符号解析装置から受け取った複数の繰り返し数またはラン長（ＧＷＷＣＯＬ０〜３）と有効フラグ生成装置２６９からの有効／無効フラグ（ＣＭＤＦＬ０〜３）から判断され何も情報の入っていない部分をシフトし繰り返し数またはラン長をつめる。符号２７１はレジスタである。符号２７２はＭＵＸであり、コピーモード時に量子化符号の位置を判断し、選択して、予測復号化処理装置２５５へ転送する。
【０１０９】
図２６にこの処理例を示す。ここでのＧＷＷＣＯＬは符号解析装置が解析した符号のラン長または繰り返し数であり、ＣＬＥＮＧ解析した符号の長さ、ＮＦＬはＧＷＷＣＯＬの数値がラン長か／繰り返しかを示すフラグである。ＣＭＤＦＬは有効フラグ生成装置が求めた各符号解析装置が解析した結果の有効を示すフラグである。ＭＷＣＯＬは最終的に求めたラン長または繰り返し数であり、ＭＮＦＬはラン長か、繰り返しかを示すフラグである。ＣＯＤＥＬＥＧは有効フラグ生成装置が求め、解析した符号の数である。ＭＬＥＮＧは出力されたラン長／繰り返し数の数である。
【０１１０】
最初の処理では、符号“２”，“１”，“Ｅ”，“Ｅ”，“０”，“０”，“Ｅ”，“１”，“２”，“０”，“０”の符号を受け取り解析する。
【０１１１】
１番最初の符号解析装置２６５は“２”，“１”，“Ｅ”，“Ｅ”，“０”，“０”，“Ｅ”，“１”の符号を受け取り、符号を解析し、ラン長３と解析する。この符号数は１である。２番目の符号解析装置２６６は“１”，“Ｅ”，“Ｅ”，“０”，“０”，“Ｅ”，“１”，“２”の符号を受け取り、符号を解析しラン長２とこの符号数は１である。３番目の符号解析装置２６７は“Ｅ”，“Ｅ”，“０”，“０”，“Ｅ”，“１”，“２”，“０”の符号を受け取り、符号を解析し繰り返し４とこの符号数は２である。４番目の符号解析装置２６８は“Ｅ”，“０”，“０”，“Ｅ”，“１”，“２”，“０”，“０”の符号を受け取り、符号を解析し繰り返し２とこの符号数は１である。
【０１１２】
つぎに各符号解析装置から得た符号数から各符号解析処理装置が解析したラン長／繰り返し数の有効性を求める。この例では４番目の符号解析装置２６８の結果は３番目の符号解析装置２６７が求めたラン長／繰り返し数の符号数２であるため、４番目の符号解析装置２６８が解析した符号は符号の先頭ではないことがわかり、４番目の符号解析装置２６８のＣＭＤＦＬ３を無効としている。そして、ここで消費した符号の数は４である。
【０１１３】
つぎの処理は、符号 “１”，“Ｅ”，“Ｅ”，“０”，“０”，“Ｅ”，“１”，“２”，“０”，“０”，“２”の符号を受け取り、解析する。１番最初の符号解析装置２６５は“１”，“Ｅ”，“Ｅ”，“０”，“０”，“Ｅ”，“１”，“２”の符号を受け取り、符号を解析し、ラン長２と解析する。この符号数は１である。２番目の符号解析装置２６６は“Ｅ”，“Ｅ”，“０”，“０”，“Ｅ”，“１”，“２”、“０”の符号を受け取り、符号を解析し繰り返し数４とこの符号数は２である。３番目の符号解析装置２６７は“Ｅ”，“０”，“０”，“Ｅ”，“１”，“２”，“０”，“０”の符号を受け取り、符号を解析し繰り返し２とこの符号数は１である。４番目の符号解析装置２６８は“０”，“０”，“Ｅ”，“１”，“２”，“０”，“０”，“２”の符号を受け取り、符号をラン長１とこの符号数は１である。
【０１１４】
つぎに各符号解析装置から得た符号数から各符号解析装置が解析したラン長／繰り返し数の有効性を求める。この例では３番目の符号解析装置２６７の結果は２番目の符号解析装置２６６が求めたラン長／繰り返し数の符号数２であるため、３番目の符号解析装置２６７が解析した符号は符号の先頭ではないことがわかり、３番目の符号解析装置２６７のＣＭＤＦＬ２を無効としている。
【０１１５】
そして、得られたラン長／繰り返し数に空欄が存在するため、空き領域削除装置２７１により空欄を削除し、つぎの処理装置へ送るデータフォーマットを単純化する。そして、ここで消費した符号の数は４である。
【０１１６】
図２７にラン長処理装置２５３のブロック図を示す。このラン長処理装置２５３は符号解釈処理装置２５２からの複数のラン長または繰り返し数とランか？繰り返し数か？を示す複数のフラグを受け取り、繰り返し数を展開し、４つのラン長を生成し、ＤＯＴ化処理装置２５４へ送ることにより、クロックごと４ＢＩＴの復号されたパターンを生成することに必要なＭＡＸ数の4つのラン長を生成することができる。
【０１１７】
以下、各部について説明する。符号２７５はＦＩＦＯであり、符号解釈処理装置２５２からの複数のラン長または繰り返し数とラン長か？繰り返し数か？を示す複数のフラグと、その数（ＭＬＥＮＧ）を受け取り、順次、格納していく。そして、基準ラン長生成装置２７６と繰り返し数生成装置２７７へ４つのラン長または繰り返し数とラン長か？繰り返し数か？を示す複数のフラグを送り、ラン長生成装置２７８から、消費したデータ数であるＲＥＰＳＨの数だけ、シフトすることにより、格納されたデータを出力する。
【０１１８】
符号２７６は基準ラン長生成装置であり、ＦＩＦＯ２７５から複数のラン長または繰り返し数とラン長か？繰り返し数か？を示す複数のフラグと、基準ラン長生成装置２７６から前回の最終ラン長ＲＷＷＣＯＬ００，ＲＷＷＣＯＬ０１を受け取り、繰り返し処理をかけやすい以下のようなフォーマットへ変換する。
【０１１９】
すなわち、 前回の最終ラン長＝５、ＦＩＦＯからの４つのラン長＝３，２，４，１、繰り返し／ラン長フラグ＝０，０，１，０（３番目が繰り返し）の例では、以下のようになる。
ＷＷＣＯＬ ０ １ ２ ３
カラー  ０：３ ３ ３ １
１：５ ２ ２ ２
これを基準ラン長生成装置２７６で以下のように繰り返し処理を行なう。
ＷＷＣＯＬ ０ １ ２ ３ ４ ５ ６
カラー  ０：３   ３ ３ ３ ３ ３ １
１：５ ２ ２ ３   ２ ２ ２
【０１２０】
画像は白黒のラン長の繰り返しであり、ラン長は白のものと、黒のもがあり、ラン長のつぎのカラーがたとえば“０”から始まる場合、カラー０、ＷＷＣＯＬ０＝３、つぎにカラー１、 ＷＷＣＯＬ１＝２、カラー０， ＷＷＣＯＬ２＝３
、カラー１ ，ＷＷＣＯＬ３＝２、カラー０，ＷＷＣＯＬ４＝３とし、３，２，３，２，３，２，１．．．．のように千鳥にサーチすることで ラン長のみに変換できる。
【０１２１】
ここでは、ラン長、繰り返し情報からラン長のみの情報へ変換しやすい、以下のレベルまで行なう。
ＷＷＣＯＬ ０ １ ２ ３
カラー  ０：３ ３ ３ １
１：５ ２ ２ ２
【０１２２】
符号２７７は繰り返し数生成装置であり、ＦＩＦＯ２７５からの複数のラン長 または繰り返し数とラン長か？ 繰り返し数か？を示す複数のフラグフを受け取り、繰り返し情報ＷＲＥＰを作成する。
【０１２３】
符号２７８はラン長生成装置であり、繰り返し処理の行いやすい、黒と白のラン長の情報とから繰り返し情報を受け取り以下の例のように、
ＷＷＣＯＬ ０ １ ２ ３
カラー   ０：３ ３ ３ １
１：５ ２ ２ ２
ＷＲＥＰ   :１ １ ４ １
から以下のように展開し、
ＷＷＣＯＬ ０ １ ２ ３ ４ ５ ６
カラー   ０：３ ３ ３ ３ ３ ３ １
１：５ ２ ２ ２ ２ ２ ２
ラン長のみの情報の３，２，３，２，３，２，１．．．．のように求める。
【０１２４】
そして、ここでは以下のような４ドットを繰り返す 全ての繰り返しのパターンを入力する。
４、
３，１
２，２
２，１，１
１，３
１，２，１
１，１，２
１，１，１，１
【０１２５】
この入力されたデータの繰り返しパターンを認識し、上記の例のようにラン長を展開し、４つのランを埋めるに十分な数のデータ数をＲＥＰＳＨとしてＦＩＦＯへ返し、そのランの数ＷＲＵＮＬＥＧとラン長と、４つのランを埋めるため余りの、最後の途中繰り返し数ｃをレジスタ２７９へ送る。
【０１２６】
ＷＮＲＥＰの補足を行なう。たとえば、以下のような例では、
ＷＷＣＯＬ ０ １ ２ ３ ４ ５ ６
カラー     ０：３ ３ ３ ３ ３ ３   １
１：５ ２ ２ ２ ２ ２ ２
以下の４つのランで十分なため、繰り返しのＷＲＥＰ２の４つの繰り返しは途中の２までの繰り返ししか使用せず、残りの２個の繰り返しはＮＲＥＰに保持される。そして残りの繰り返しがある場合、ＷＮＲＥＰＦＬのフラグを立て繰り返し数生成装置２７７へ送られ、つぎの１番目の繰り返し数として使用される。
ＷＷＣＯＬ ０ １ ２ ３
カラー ０：３ ３ ３ ３
１：５ ２ ２ ２
【０１２７】
図２８に予測復号化処理装置２５５のブロック図を示す。符号２８３は固定長符号バッファーであり、図３４のようなＧＢＴＣのような固定長符号を複数個格納する。符号２８１は差分処理装置であり、前後の固定長符号と相関のある部分の予測復号化を行う。図３４のＧＢＴＣの例ではＬＡのブロックの平均レベルとＬＤのブロック内の階調幅指標の部分の予測復号化を行なう。符号２８０は符号順序生成装置であり、図９のような順序の符号を受け取り、差分処理装置２８１へ予測符号を固定長符号バッファー２８３にＰＩＸＥＬＣＯＤＥを転送する。
【０１２８】
図２９に詳細なブロック図を示す。この例は固定長符号化方式としてＧＢＴＣを使用したものである。固定長符号バッファー２８３について説明する。符号２８８〜２９５はレジスタであり、固定長符号を格納する。符号２９６〜２９７はレジスタであり、前回の最終の固定長符号の前後の固定長符号と相関のある部分（ＧＢＴＣであれば、ＬＡのブロックの平均レベルとＬＤのブロック内の階調幅指標の部分）を格納する。
【０１２９】
差分処理装置２８１について説明する。符号２８４は加算器であり、前回のＬＡのブロックの平均レベルと１番目のＬＡのブロックの平均レベルの予測復号化を行なう。符号２８５は加算器であり、前回のＬＤのブロック内の階調幅指標と１番目のＬＤのブロック内の階調幅指標の予測復号化を行う。同様に、符号２８６は加算器であり、１番目のＬＡのブロックの平均レベルと２番目のＬＡのブロックの平均レベルの予測復号化を行う。符号２８７は加算器であり、1番目のＬＤのブロック内の階調幅指標と２番目のＬＤのブロック内の階調幅指標の予測復号化を行う。以下同様に処理する。
【０１３０】
図３０にＤＯＴ化処理装置２５４のブロック図を示す。このＤＯＴ化処理装置２５４はＦＩＦＯ３００からの４つのラン長とそのラン長の有効数ＲＵＮＬＥＮＧを受け取り、ＤＯＴ化装置３０１により、ラン長のＤＯＴ化を行い、ＤＯＴラン長生成装置３０３により、４つのラン長のどこで、４ドットを満たすかを判断するための、４つのランのそれぞれの位置でのラン長の合計を求め、シフト値生成装置３０４により４ドットを満たす、ラン長の位置をみつけ、ＦＩＦＯ３００へ、消費したラン長の数を知らせ、つぎの４ドットのためのシフトをさせる。
【０１３１】
差分生成装置３０５では、４つのラン長のどれかが４ドットを満たしたときの余りを持つ場合、その余りをＦＩＦＯ３００へ送りつぎの１番最初のラン値として使用するための余りのラン長を求め、Ｔｏｔａｌラン長生成装置３０３からの各ラン長までのトータルの値の４値からの差を求め、ＲＵＮ０生成装置３０６により、実際の使用したランの値をシフト生成装置から受け取りＲＵＮ０を選択し、ＦＩＦＯ３００へ送る。以上の処理を１クロックで行うことにより、クロックごと４つのドットの画素を復号化することができる。
【０１３２】
以下、各部について説明する。符号３００はＦＩＦＯであり、ラン長生成装置から４つのラン長とそのラン長の有効数ＲＵＮＬＥＮＧを受け取り、順次、格納していく、そして、ＤＯＴ化装置３０１とＴｏｔａｌラン長生成装置３０３へ４つのラン長を送り、ＤＯＴ化装置３０１から、４つのラン長のいずれかが４ドットを満たした時の余りを持つ場合、ＳＴＡフラグとして、余りが有ることをＦＩＦＯ３００へ知らせ、シフト生成装置３０４から消費したラン長の数を、ＲＵＮ０生成装置３０６から４ドットを満たしたときの余りを持つ場合、その余りをＦＩＦＯ３００へ送りつぎの１番最初のラン値として使用するための余りのラン長を受け取り、余りがある場合、余りのラン値のＲＵＮ０をつぎの最初のラン値として、指定されたシフトを行うことにより、格納されたデータを出力する。
【０１３３】
符号３０１はＤＯＴ化装置であり、ＦＩＦＯ３００からの４つのラン値を受け取り、以下のような４つのドットを埋める４つのランの組み合わせすべてを認識し、４ランから最初から幾つかのランを使用し４つドットを埋め込むことにより、４つのドットを生成し、もし、４つのラン長のどれかが４ドットを満たしたときの余りを持つ場合、ＳＴＡフラグにてＦＩＦＯ３００へ余りがあることを知らせる。
【０１３４】
４、
３，１
２，２
２，１，１
１，３
１，２，１
１，１，２
１，１，１，１
【０１３５】
符号３０３はＴｏｔａｌラン長生成装置であり、４つのラン長のどこで、４ドットを満たすかを判断するための、４つのランのそれぞれの位置でのラン長の合計を求める。
【０１３６】
ＡＣＷＲＵＮ０は１つ目のラン長の長さはラン長１の長さと等しく、ＡＣＷＲＵＮ１＝ＷＲＵＮ０＋ＷＲＵＮ１は２つ目のラン長の長さはラン長１とラン長２の長さを加えたものと等しく、ＡＣＷＲＵＮ２＝ＷＲＵＮ０＋ＷＲＵＮ１＋ＷＲＵＮ２は３つ目のラン長の長さは、ラン長１とラン長２とラン長３の長さを加えたものと等しく、ＡＣＷＲＵＮ３＝ＷＲＵＮ０＋ＷＲＵＮ１＋ＷＲＵＮ２＋ＷＲＵＮ３は３つ目のラン長の長さはラン長１とラン長２とラン長３とラン長４の長さを加えたものと等しい。
【０１３７】
符号３０４はシフト値生成装置であり、４ドットを満たすラン長の位置をみつけるため、Ｔｏｔａｌラン長生成装置３０３からの４つの合計のラン長を最初から優先させて４値以上となる位置をみつけ、ＦＩＦＯ３００とＲＵＮ０生成装置３０６へ知らせる。
【０１３８】
符号３０５は差分生成装置であり、４つのラン長のどれかが４ドットを満たしたときの余りを持つ場合、その余りをＦＩＦＯ３００へ送りつぎの１番最初のラン値として使用するための余りのラン長を求め、Ｔｏｔａｌラン長生成装置３０３からの４つの合計のラン長を各ラン長までのトータルの値の４値からの差を求める。
【０１３９】
符号３０６はＲＵＮ０生成装置であり、差分生成装置３０５から各４つの点での余りの値を受け取り、実際に使用したランの値をシフト値生成装置３０４から受け取り、差分生成装置３０５からの値を選択し、最後のラン長の余りＲＵＮ０としてＦＩＦＯ３００へ送る。
【０１４０】
したがって、以上説明してきたこの実施の形態によれば、コピー／プリンタ画像の特性のことなる画像を同じ画像圧縮装置で処理させることにより、ハードウエアの開発コストの削減とハードウエアのゲート数の削減と、ソフトウエアの開発コストの削減などを実現することが可能となる。また、コピー画像の固定長圧縮（ＧＢＴＣなど）された後の符号の再度の圧縮が可能になる。
【産業上の利用可能性】
【０１４１】
以上のように、本発明にかかる画像圧縮処理装置は、デジタル画像データをデータテ圧縮、伸長する画像処理装置と２値画像データをデータ圧縮、伸長する画像処理装置に有用であり、特に、デジタル複写機、スキャナー画像ファイリング、プリンタなどのフレームバッファー容量を節約する、いわゆる省メモリ機構に最適な符号化、復号化の方式を用いた画像圧縮処理装置に適している。
【図面の簡単な説明】
【０１４２】
【図１】本発明の実施の形態にかかる画像圧縮処理装置を適用した画像形成装置の構成を示す説明図である。
【図２】図１における画像形成装置の電装・制御装置の構成を示すブロック図である。
【図３】本発明の実施の形態にかかるエンコード時の全体のブロック図であり、図２における符号化／復号化装置の構成を示すものである。
【図４】プリンタ処理時における画像処理のフローとコピー処理時におけるエンコード処理のフローを示す説明図である。
【図５】図３における画像読み込み部の構成を示すブロック図である。
【図６】図３におけるラン長処理装置の構成を示すブロック図である。
【図７】図３における予測符号化処理装置の構成を示すブロック図である。
【図８】図３における繰り返し処理装置の構成を示すブロック図である。
【図９】符号の順序を示すフォーマット例である。
【図１０】図３における繰り返し処理装置の構成を示すブロック図である。
【図１１】符号化処理装置のトップの構成および信号入出力を示すブロック図である。
【図１２】繰り返しフラグから複数の繰り返し数を求める状態を示す説明図である。
【図１３】複数のラン長を求める例を示す説明図である。
【図１４】次パターンへの継続する繰り返し数（ＲＥＰ）を求める処理（１）を示すフローチャートである。
【図１５】次パターンへの継続する繰り返し数（ＲＥＰ）を求める処理（２）を示すフローチャートである。
【図１６】繰り返しフラグ生成装置の繰り返しフラグ生成処理を示すフローチャートである。
【図１７】繰り返し数生成装置の繰り返し数生成処理を示すフローチャートである。
【図１８】ＮＥＸＴラン生成装置の処理動作を示すフローチャートである。
【図１９】符号化処理装置の処理動作（１）を示すフローチャートである。
【図２０】符号化処理装置の処理動作（２）を示すフローチャートである。
【図２１】符号化処理装置の処理動作（３）を示すフローチャートである。
【図２２】本発明の実施の形態にかかるデコード時の全体のブロック図であり、図２における符号化／復号化装置の構成を示すものである。
【図２３】プリンタ処理時における画像処理のフローとコピー処理時におけるデコード処理のフローを示す説明図である。
【図２４】図２２における符号読み込み部の構成を示すブロック図である。
【図２５】図２２における符号解釈処理装置の構成を示すブロック図である。
【図２６】符号解釈処理装置の処理例を示す説明図である。
【図２７】図２２におけるラン長処理装置の構成を示すブロック図である。
【図２８】図２２における予測復号化処理装置の概略構成を示すブロック図である。
【図２９】図２２における予測復号化処理装置の詳細構成を示すブロック図である。
【図３０】図２２におけるＤＯＴ化処理装置の詳細構成を示すブロック図である。
【図３１】４／８ＧＢＴＣの符号化例およびその符号化演算式を示す説明図である。
【図３２】３／８ＧＢＴＣの符号化例およびその符号化演算式を示す説明図である。
【図３３】２／８ＧＢＴＣの符号化例およびその符号化演算式を示す説明図である。
【図３４】ＧＢＴＣフォーマット例を示す説明図である。
【図３５】繰り返し処理例を示す説明図である。
【図３６】従来におけるブロック符号化方式のアルゴリズムを示す説明図である。
【図３７】従来におけるデジタル複写機の構成を示すブロック図である。
【図３８】従来における２次符号格納部の構成を示すブロック図である。
【図３９】従来における１次符号格納部の構成および動作を示すブロック図である。
【図４０】従来における符号化例を示す説明図である。
【符号の説明】
【０１４３】
１６０  符号化／復号化装置
１７０  画像読み込み部
１７１  ラン長処理装置
１７２  予測符号化処理装置
１７３  繰り返し処理装置
１７４  符号化処理装置
１７５  符号書き込み部
１８０  ランカウント
１８１，１８２  加算器
１８３  累積加算処理装置
【図１】
2007028649.tif 000003
【図２】
2007028649.tif 000004
【図３】
2007028649.tif 000005
【図４】
2007028649.tif 000006
【図５】
2007028649.tif 000007
【図６】
2007028649.tif 000008
【図７】
2007028649.tif 000009
【図８】
2007028649.tif 000010
【図９】
2007028649.tif 000011
【図１０】
2007028649.tif 000012
【図１１】
2007028649.tif 000013
【図１２】
2007028649.tif 000014
【図１３】
2007028649.tif 000015
【図１４】
2007028649.tif 000016
【図１５】
2007028649.tif 000017
【図１６】
2007028649.tif 000018
【図１７】
2007028649.tif 000019
【図１８】
2007028649.tif 000020
【図１９】
2007028649.tif 000021
【図２０】
2007028649.tif 000022
【図２１】
2007028649.tif 000023
【図２２】
2007028649.tif 000024
【図２３】
2007028649.tif 000025
【図２４】
2007028649.tif 000026
【図２５】
2007028649.tif 000027
【図２６】
2007028649.tif 000028
【図２７】
2007028649.tif 000029
【図２８】
2007028649.tif 000030
【図２９】
2007028649.tif 000031
【図３０】
2007028649.tif 000032
【図３１】
2007028649.tif 000033
【図３２】
2007028649.tif 000034
【図３３】
2007028649.tif 000035
【図３４】
2007028649.tif 000036
【図３５】
2007028649.tif 000037
【図３６】
2007028649.tif 000038
【図３７】
2007028649.tif 000039
【図３８】
2007028649.tif 000040
【図３９】
2007028649.tif 000041
【図４０】
2007028649.tif 000042