(57)【要約】【課題】複数のバンドデータを高速に生成し、また、生成された複数のバンドデータを高速に符号化する。【解決手段】複数の版のバンドデータを並列に生成する画像処理手段と、前記画像処理手段により生成された複数の版のバンドデータを記憶するバンドデータ記憶手段と、前記バンドデータ記憶手段に記憶された複数の版のバンドデータを並列に符号化する複数の符号化処理手段と、前記複数の符号化処理手段によって生成された複数の版のバンド符号データを並列に受け取り、それぞれまとまったデータ長の複数の版のバンド符号データに変換する符号書き込み制御手段と、前記符号書き込み制御手段によって生成された複数の版のバンド符号データを順次記憶する符号データ記憶手段と、前記符号データ記憶手段に記憶された複数の版のバンド符号データを復号化する復号化手段とを有している。【選択図】      図３
2004289203.tif 000002
【特許請求の範囲】
【請求項１】
複数の版のバンドデータを並列に生成する画像処理手段と、前記画像処理手段により生成された複数の版のバンドデータを記憶するバンドデータ記憶手段と、前記バンドデータ記憶手段に記憶された複数の版のバンドデータを並列に符号化する複数の符号化処理手段と、前記複数の符号化処理手段によって生成された複数の版のバンド符号データを並列に受け取り、それぞれまとまったデータ長の複数の版のバンド符号データに変換する符号書き込み制御手段と、前記符号書き込み制御手段によって生成された複数の版のバンド符号データを順次記憶する符号データ記憶手段と、前記符号データ記憶手段に記憶された複数の版のバンド符号データを復号化する復号化手段とを有していることを特徴とする画像処理装置。
【請求項２】
請求項１記載の画像処理装置において、前記符号書き込み制御手段は、前記符号データ記憶手段に記憶されたデータ量が所定のしきい値を超えた時、その版に対応する符号化処理手段の動作を一時停止させるＷＡＩＴ手段をさらに有していることを特徴とする画像処理装置。
【請求項３】
複数の版のバンドデータを並列に生成する画像処理工程と、前記画像処理工程により生成された複数の版のバンドデータを並列に符号化する符号化処理工程と、前記符号化処理工程によって生成された複数の版のバンド符号データを並列に受け取り、それぞれまとまったデータ長の複数の版のバンド符号データに変換する符号書き込み制御工程と、前記符号書き込み制御工程によって生成された複数の版のバンド符号データを復号化する復号化工程とを有していることを特徴とする画像処理方法。
【請求項４】
複数の版のバンドデータを並列に生成する画像処理と、画像処理により生成された複数の版のバンドデータを並列に符号化する符号化処理と、符号化処理によって生成された複数の版のバンド符号データを並列に受け取り、それぞれまとまったデータ長の複数の版のバンド符号データに変換する符号書き込み制御処理と、符号書き込み制御処理によって生成された複数の版のバンド符号データを復号化する復号化処理とをコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複写機，スキャナー，デジタルカメラ，プリンタなどの画像処理装置および画像処理方法およびプログラムに関する。
【０００２】
【従来の技術】
従来、タンダム型のプリンタは、図３９，図４０に示すように、ネットワークから受け取ったＰＤＬをバンド単位に階調処理データで描画し、２値画像の圧縮アルゴリズム（ＪＢＩＧなど）により符号化して、符号データをメモリに格納し、その後、プリントアウト時に、各版ごとに遅延させて、メモリから符号データを読み込み、前記の圧縮アルゴリズムにより階調処理後データに復号化して、階調処理後のＣ，Ｍ，Ｙ，Ｋの各版に対応するデータのみプリンタエンジンに転送していた。このように、従来のタンダム型のプリンタは、各版専用の復号化装置を有していた。
【０００３】
また、２値画像の圧縮方式としては、２値画像符号化方式の国際標準であるＪＢＩＧ（Ｊｏｉｎｔ  Ｂｉ−ｌｅｖｅｌ  Ｉｍａｇｅ  ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）が知られている。
【０００４】
また、近年の半導体プロセスとして、ＡＳＩＣの中に大容量化が可能なＤＲＡＭを搭載可能なＳＯＣ技術が開発されている。
【０００５】
例えば特許文献１には、２プレーン塗りつぶし法を改良し、ラインのベクトルの向きでそのラインが左辺であるか右辺であるかを判断し、ラインを描画するアルゴリズムであるブレゼンハムアルゴリズムを改良し、そのラインの最外点を求め描画する方法が示されている。
【０００６】
また、例えば特許文献２には、ＢＩＴＢＬＴ処理やＦＩＬＬ処理をハードウエアにて行う方法が示されている。
【０００７】
【特許文献１】
特許第３０５９１８９号
【０００８】
【特許文献２】
特開平５−１２７６５９号公報
【０００９】
【発明が解決しようとする課題】
しかしながら、図３９，図４０のように、メインメモリに各版の階調処理後のバンドメモリをもたせ、符号化装置によりバンドデータを読み込み、順次符号化し、メインメモリの各版の符号ページメモリ領域へ格納する方法では、未だ符号化されていないバンドデータを各版ごとにメインメモリから読み込み符号化して再度メインメモリの符号化領域へ書き込む為に、メインメモリの読み込みや書き込みにかかる時間が大きく、かつ、各版ごとシリアルに行う為に多大な時間を要し、高速化することが難しかった。
【００１０】
また、近年の半導体のプロセスの進化によりＡＳＩＣに大容量化可能なＤＲＡＭを搭載可能となってきたが、さすがにメインメモリを全てＡＳＩＣへ搭載することはできない。
【００１１】
本発明は、複数のバンドデータを高速に生成し、また、生成された複数のバンドデータを高速に符号化することの可能な画像処理装置および画像処理方法およびプログラムを提供することを目的としている。
【００１２】
【課題を解決するための手段】
上記目的を達成するために、請求項１記載の発明は、複数の版のバンドデータを並列に生成する画像処理手段と、前記画像処理手段により生成された複数の版のバンドデータを記憶するバンドデータ記憶手段と、前記バンドデータ記憶手段に記憶された複数の版のバンドデータを並列に符号化する複数の符号化処理手段と、前記複数の符号化処理手段によって生成された複数の版のバンド符号データを並列に受け取り、それぞれまとまったデータ長の複数の版のバンド符号データに変換する符号書き込み制御手段と、前記符号書き込み制御手段によって生成された複数の版のバンド符号データを順次記憶する符号データ記憶手段と、前記符号データ記憶手段に記憶された複数の版のバンド符号データを復号化する復号化手段とを有していることを特徴としている。
【００１３】
また、請求項２記載の発明は、請求項１記載の画像処理装置において、前記符号書き込み制御手段は、前記符号データ記憶手段に記憶されたデータ量が所定のしきい値を超えた時、その版に対応する符号化処理手段の動作を一時停止させるＷＡＩＴ手段をさらに有していることを特徴としている。
【００１４】
また、請求項３記載の発明は、複数の版のバンドデータを並列に生成する画像処理工程と、前記画像処理工程により生成された複数の版のバンドデータを並列に符号化する符号化処理工程と、前記符号化処理工程によって生成された複数の版のバンド符号データを並列に受け取り、それぞれまとまったデータ長の複数の版のバンド符号データに変換する符号書き込み制御工程と、前記符号書き込み制御工程によって生成された複数の版のバンド符号データを復号化する復号化工程とを有していることを特徴としている。
【００１５】
また、請求項４記載の発明は、複数の版のバンドデータを並列に生成する画像処理と、画像処理により生成された複数の版のバンドデータを並列に符号化する符号化処理と、符号化処理によって生成された複数の版のバンド符号データを並列に受け取り、それぞれまとまったデータ長の複数の版のバンド符号データに変換する符号書き込み制御処理と、符号書き込み制御処理によって生成された複数の版のバンド符号データを復号化する復号化処理とをコンピュータに実現させるためのプログラムである。
【００１６】
【発明の実施の形態】
以下、本発明の実施形態を図面に基づいて説明する。
【００１７】
本発明は、基本的に、画像処理装置において、複数のバンドデータを高速に生成し、また、生成された複数のバンドデータを高速に符号化することを意図してなされたものである。
【００１８】
本発明の画像処理装置は、複数の版のバンドデータ（例えば階調処理後のバンドデータ）を並列に生成する画像処理手段と、前記画像処理手段により生成された複数の版のバンドデータ（例えば階調処理後のバンドデータ）を記憶するバンドデータ記憶手段と、前記バンドデータ記憶手段に記憶された複数の版のバンドデータ（例えば階調処理後のバンドデータ）を並列に符号化する複数の符号化処理手段と、前記複数の符号化処理手段によって生成された複数の版のバンド符号データを並列に受け取り、それぞれまとまったデータ長の複数の版のバンド符号データに変換する符号書き込み制御手段と、前記符号書き込み制御手段によって生成された複数の版のバンド符号データを順次記憶する符号データ記憶手段と、前記符号データ記憶手段に記憶された複数の版のバンド符号データを復号化する復号化手段とを有していることを特徴としている。
【００１９】
ここで、符号書き込み制御手段は、符号データ記憶手段に記憶されたデータ量が所定のしきい値を超えた時、その版に対応する符号化処理手段の動作を一時停止させるＷＡＩＴ手段をさらに有している。
【００２０】
すなわち、本発明によれば、複数の版のバンドデータ（例えば階調処理後のバンドデータ）を並列に生成（描画）することにより、バンドデータを高速に生成することができる。
【００２１】
また、生成された複数の版のバンドデータを並列に符号化することにより、バンドデータを高速に符号化することができる。
【００２２】
また、バンドデータを格納するバンドメモリと符号データを格納するメインメモリとを相違させることにより、バンドデータの符号化と符号データの書き込みとを並列に処理することが可能となり、高速化が可能となる。
【００２３】
また、バンドデータをバンドメモリとして独立させたメモリに格納していることによって、バンドデータの生成処理（描画処理）とＣＰＵのプログラムの読み込み処理とがぶつかることなく、高速化が可能となる。
【００２４】
以下、本発明を具体的に説明する。
【００２５】
図１は本発明が適用された画像処理装置としてのカラープリンタの機構部の構成例を示す図である。図１を参照すると、このカラープリンタは、４色（Ｙ，Ｍ，Ｃ，Ｋ）の画像をそれぞれ独立の作像系１Ｙ，１Ｍ，１Ｃ，１Ｋで形成し、この４色の画像を合成する４ドラムタンデムエンジンタイプの画像形成装置となっている。
【００２６】
ここで、各作像系１Ｙ，１Ｍ，１Ｃ，１Ｋは、像担持体としての感光体、例えば小径のＯＰＣ（有機感光体）ドラム２Ｙ，２Ｍ，２Ｃ，２Ｋを有し、このＯＰＣドラム２Ｙ，２Ｍ，２Ｃ，２Ｋを取り囲むように、作像の上流側から、帯電手段としての帯電ローラ３Ｙ，３Ｍ，３Ｃ，３Ｋと、ＯＰＣドラム２Ｙ，２Ｍ，２Ｃ，２Ｋ上の静電潜像をそれぞれ現像剤で現像してＹ，Ｍ，Ｃ，Ｋ各色のトナー像とする現像装置４Ｙ，４Ｍ，４Ｃ，４Ｋと、クリーニング装置５Ｙ，５Ｍ，５Ｃ，５Ｋと、除電装置６Ｙ，６Ｍ，６Ｃ，６Ｋなどが配置されている。
【００２７】
各現像装置４Ｙ，４Ｍ，４Ｃ，４Ｋの脇には、Ｙトナー，Ｍトナー，Ｃトナー，Ｋトナーをそれぞれ現像装置４Ｙ，４Ｍ，４Ｃ，４Ｋへ補給するトナーボトルユニット７Ｙ，７Ｍ，７Ｃ，７Ｋが配置されている。
【００２８】
また、各作像系１Ｙ，１Ｍ，１Ｃ，１Ｋには、各々独立な光書き込み装置８Ｙ，８Ｍ，８Ｃ，８Ｋが配置され、この光書き込み装置８Ｙ，８Ｍ，８Ｃ，８Ｋは、レーザ光源としてのレーザダイオード（ＬＤ）光源９Ｙ，９Ｍ，９Ｃ，９Ｋや、コリメートレンズ１０Ｙ，１０Ｍ，１０Ｃ，１０Ｋ、ｆθレンズ１１Ｙ，１１Ｍ，１１Ｃ，１１Ｋといった光学部品、偏向走査手段としてのポリゴンミラー１２Ｙ，１２Ｍ，１２Ｃ，１２Ｋ、折り返しミラー１３Ｙ，１３Ｍ，１３Ｃ，１３Ｋ、１４Ｙ，１４Ｍ，１４Ｃ，１４Ｋなどを有している。
【００２９】
また、各作像系１Ｙ，１Ｍ，１Ｃ，１Ｋは、垂直に配列され、その右側には転写ベルトユニット１５がＯＰＣドラム２Ｙ，２Ｍ，２Ｃ，２Ｋに接する形で配置されている。転写ベルトユニット１５は、転写ベルト１６がローラ１７〜２０に張架されて図示しない駆動源により回転駆動されるようになっている。
【００３０】
また、装置下側には、転写材としての転写紙が収納された給紙トレイ２１が配置され、装置上部には、定着装置２２，排紙ローラ２３，排紙トレイ２４が配設されている。
【００３１】
図１のカラープリンタでは、作像時には、各作像系１Ｙ，１Ｍ，１Ｃ，１Ｋにおいて、それぞれ、ＯＰＣドラム２Ｙ，２Ｍ，２Ｃ，２Ｋが図示しない駆動源により回転駆動され、帯電ローラ３Ｙ，３Ｍ，３Ｃ，３ＫによりＯＰＣドラム２Ｙ，２Ｍ，２Ｃ，２Ｋが一様に帯電されて、光書き込み装置８Ｙ，８Ｍ，８Ｃ，８Ｋが各色の画像データに基づきＯＰＣドラム２Ｙ，２Ｍ，２Ｃ，２Ｋに光書込みを行うことによって、ＯＰＣドラム２Ｙ，２Ｍ，２Ｃ，２Ｋ上に静電潜像が形成される。
【００３２】
このＯＰＣドラム２Ｙ，２Ｍ，２Ｃ，２Ｋ上の静電潜像は、それぞれ、現像装置４Ｙ，４Ｍ，４Ｃ，４Ｋにより現像されて、Ｙ，Ｍ，Ｃ，Ｋ各色のトナー像となる。一方、給紙トレイ２１からは、給紙ローラ２５により転写紙が水平方向に給紙されて搬送系により作像系１Ｙ，１Ｍ，１Ｃ，１Ｋ方向へ垂直に搬送される。この転写紙は、転写ベルト１６に静電的に吸着保持されて転写ベルト１６により搬送され、図示しない転写バイアス印加手段により転写バイアスが印加されてＯＰＣドラム２Ｙ，２Ｍ，２Ｃ，２Ｋ上のＹ，Ｍ，Ｃ，Ｋ各色のトナー像が順次に重ねて転写されることで、フルカラー画像が形成される。このフルカラー画像が形成された転写紙は、定着装置２２によりフルカラー画像が定着されて排紙ローラ２３により排紙トレイ２４へ排出される。
【００３３】
図２は図１のプリンタの制御部の構成例を示す図である。
【００３４】
図２を参照すると、この制御部は、プリンタ機器全体の制御を行なうＣＰＵ１０１と、ＣＰＵ  Ｉ／Ｆ１０２と、メモリコントローラ１０３と、メインメモリ１２３と、ローカルＩ／Ｆ１０４と、ＲＯＭ１２２と、パネル１２１と、パネルコントローラ１２０と、通信コントローラ１０５と、画像処理装置１０６と、Ｃ，Ｍ，Ｙ，Ｋ版のバンドメモリ１０７，１０８，１０９，１１０と、Ｃ，Ｍ，Ｙ，Ｋ版の符号化装置１１１，１１２，１１３，１１４と、符号書き込み制御装置１１５と、Ｃ，Ｍ，Ｙ，Ｋ版復号化装置１１６，１１７，１１８，１１９と、Ｃ，Ｍ，Ｙ，Ｋ版エンジンコントローラ１２４，１２５，１２６，１２７と、Ｃ，Ｍ，Ｙ，Ｋ版プリンタエンジン１２８，１２９，１３０，１３１とを有している。
【００３５】
ここで、ＣＰＵ  Ｉ／Ｆ１０２は、メモリコントローラ１０３に接続され、ＣＰＵ１０１とメモリコントローラ１０３との間のインタフェースとしての機能を有している。
【００３６】
また、メモリコントローラ１０３は、メインメモリ１２３をコントロールし、ＣＰＵ１０１，ローカルＩ／Ｆ１０４，復号化装置１１６，１１７，１１８，１１９，画像処理装置１０６，符号書き込み制御装置１０６などとメモリ１２３との間のデータ転送をコントロールするようになっている。
【００３７】
また、メインメモリ１２３には、符号書き込み制御装置１１５によって生成された符号データや、ＣＰＵ１０１のプログラムや各種データなどが格納されるようになっている。
【００３８】
また、ローカルＩ／Ｆ１０４は、ローカルバスのインタフェースとして機能し、ＲＯＭ１２２，パネルコントローラ１２０などと、ＣＰＵ１０１，メモリ１２３などとのインタフェースとして機能するようになっている。
【００３９】
また、ＲＯＭ１２２には、文字などのフォント情報や、ＣＰＵ１０１のプログラムなどが格納されるようになっている。
【００４０】
また、パネルコントローラ１２０は、パネル１２１をコントロールするようになっている。
【００４１】
また、パネル１２１は、ユーザーからの操作をコピー装置へ知らせるために設けられている。
【００４２】
また、通信コントローラ１０５は、ネットワークに接続されており、ネットワークから各種データやコマンドなどを受け取り、メモリコントローラ１０３を介して各種の装置等に接続されている。
【００４３】
また、画像処理装置１０６は、Ｃ，Ｍ，Ｙ，Ｋ版のバンドメモリ１０７，１０８，１０９，１１０の画像処理を行うようになっている。
【００４４】
また、Ｃ，Ｍ，Ｙ，Ｋ版のバンドメモリ１０７，１０８，１０９，１１０には、各版の階調処理後のバンドデータが格納されるようになっている。
【００４５】
また、符号化装置１１１，１１２，１１３，１１４は、バンドメモリ１０７，１０８，１０９，１１０に記憶された階調処理後のバンドデータを符号化し、符号書き込み制御装置１１５へ符号データを転送するようになっている。
【００４６】
また、符号書き込み制御装置１１５は、符号化装置１１１，１１２，１１３，１１４から受け取った符号データを各版ごとに一時格納し、あるしきい値分貯まった版からメインメモリ１２３に順次書き込みを行うことにより、複数の符号化装置からの符号データの書き込みを制御するようになっている。
【００４７】
また、復号化装置１１６，１１７，１１８，１１９は、メインメモリ１２３から、Ｃ，Ｍ，Ｙ，Ｋの各版ごとに符号化された符号データを受け取って復号化し、各版のエンジンコントローラ１２４，１２５，１２６，１２７へ転送するようになっている。
【００４８】
また、Ｃ，Ｍ，Ｙ，Ｋ版エンジンコントローラ１２４，１２５，１２６，１２７は、復号化装置１１６，１１７，１１８，１１９から画像データを受け取り、各版のプリンタエンジン１２８，１２９，１３０，１３１へ転送するようになっている。
【００４９】
図３は図２の制御部の全体処理フローを示す図である。
【００５０】
図３の処理例では、図２のＣＰＵ１０１により、画像処理装置１０６を制御して、画像処理装置１０６により生成された各版の階調処理後のバンドデータを各版のバンドメモリ１０７，１０８，１０９，１１０に記憶する。
【００５１】
次いで、符号化装置１１１，１１２，１１３，１１４により、バンドメモリ１０７，１０８，１０９，１１０に記憶されたバンドデータを符号化し、符号書き込み制御装置１１５へ転送する。
【００５２】
次いで、符号書き込み制御装置１１５により、符号化装置１１１，１１２，１１３，１１４からの符号データを順次、符号ページデータとしてメインメモリ１２３へ書き込む。
【００５３】
次いで、メインメモリ１２３に書き込まれた符号ページデータを復号化装置１１６，１１７，１１８，１１９によって順次復号化し、各版のプリンタエンジン１２８，１２９，１３０，１３１へ転送し、プリンタエンジン１２８，１２９，１３０，１３１でプリントアウトさせる。
【００５４】
図４，図５には、図２の制御部の処理概念が示されている。
【００５５】
図４，図５を参照すると、画像処理装置１０６は、ＣＰＵ１０１から、コマンドや各版のバンドメモリのアドレス，データを受け取り、各版のバンドメモリ１０７，１０８，１０９，１１０に階調処理後のバンドデータを作成する。図６には、２値バンドメモリフォーマットが示されている。
【００５６】
符号化装置１１１，１１２，１１３，１１４は、各版のバンドメモリ１０７，１０８，１０９，１１０に記憶されたバンドデータを並列に符号化する。
【００５７】
符号書き込み制御装置１１５は、符号化装置１１１，１１２，１１３，１１４からの符号データを並列に受け取り、順次、メインメモリ１２３の各版の符号領域へ書き込む。図７には、符号ページメモリフォーマットが示されている。
【００５８】
復号化装置１１６，１１７，１１８，１１９は、各版のプリンタエンジン１２８，１２９，１３０，１３１に同期し、各版の必要とする符号データを順次、メインメモリ１２３から読み込み、復号化し、各版のエンジンコントローラ１２４，１２５，１２６，１２７へ転送する。
【００５９】
各版のエンジンコントローラ１２４，１２５，１２６，１２７は、各版の復号化装置１１６，１１７，１１８，１１９から符号データを受け取り、各版のプリンタエンジン１２８，１２９，１３０，１３１をコントロールする。
【００６０】
図８には、メインメモリのフォーマットが示されている。
【００６１】
図８において、Ｃ版符号ページメモリ領域は、Ｃ版のバンド単位の階調処理後の符号データを複数ページ分格納する領域である。
【００６２】
また、Ｍ版符号ページメモリ領域は、Ｍ版のバンド単位の階調処理後の符号データを複数ページ分格納する領域である。
【００６３】
また、Ｙ版符号ページメモリ領域は、Ｙ版のバンド単位の階調処理後の符号データを複数ページ分格納する領域である。
【００６４】
また、Ｋ版符号ページメモリ領域は、Ｋ版のバンド単位の階調処理後の符号データを複数ページ分格納する領域である。
【００６５】
また、プログラム領域は、各種のＣＰＵのプログラムを格納する領域である。
【００６６】
また、図９は、階調処理後バンド生成時の処理フローを示す図である。
【００６７】
図９を参照すると、処理▲１▼では、ＣＰＵ１０１は、画像処理装置１０６へ各版のバンドデータを生成するコマンドなどを転送する。
【００６８】
次いで、処理▲２▼では、画像処理装置１０６は、各版のバンドデータを生成し、各版のバンドメモリ１０７，１０８，１０９，１１０へ記憶する。
【００６９】
また、図１０は、符号化処理フローを示す図である。
【００７０】
図１０を参照すると、処理▲１▼では、各版の符号化装置１１１，１１２，１１３，１１４は、各版のバンドメモリ１０７，１０８，１０９，１１０から並列にバンドデータを読み込み、符号化して、符号データにする。
【００７１】
処理▲２▼では、各版の符号化装置１１１，１１２，１１３，１１４は、符号データを並列に符号書き込み制御装置１１５へ転送する。
【００７２】
処理▲３▼では、符号書き込み制御装置１１５は、記憶されたデータ量が所定のしきい値を超えた版の符号データを順次メインメモリ１２３の符号ページメモリ領域へ転送する。
【００７３】
また、図１１は、復号化＆プリントアウトフローを示す図である。
【００７４】
図１１を参照すると、処理▲１▼では、各版の復号化装置１１６，１１７，１１８，１１９は、各エンジンコントローラ１２４，１２５，１２６，１２７にて必要とされるバンドの符号データをメモリ１２３から読み込む。
【００７５】
処理▲２▼では、各版の復号化装置１１６，１１７，１１８，１１９は、復号化処理を行い、各版のエンジンコントローラ１２４，１２５，１２６，１２７へ転送する。
【００７６】
処理▲３▼では、プリンタエンジンコントローラ１２４，１２５，１２６，１２７は、プリンタエンジン１２８，１２９，１３０，１３１に同期し、各版のプリンタエンジン１２８，１２９，１３０，１３１へ転送する。
【００７７】
図１２は図２の画像処理装置１０６の構成例を示す図である。
【００７８】
図１２を参照すると、画像処理装置１０６は、メモリコントローラＩ／Ｆ１５１と、コマンド解析装置１５２と、描画処理装置１５３と、ＢＩＴＢＬＴ処理装置１５４と、色変換処理装置１５５と、階調処理装置１５６と、バンドメモリアドレス生成装置１５７と、メインメモリアドレス生成装置１５８と、バンドメモリコントローラ１５９と、Ｃ，Ｍ，Ｙ，Ｋ版バンドメモリＩ／Ｆ１６０，１６１，１６２，１６３と、コントローラ１６４とを有している。
【００７９】
ここで、メモリコントローラＩ／Ｆ１５１は、メモリコントローラとのインタフェースとして機能し、ＣＰＵ１０１からのデータが画像処理コマンドであれば、コマンド解析装置１５２へコマンドデータを転送し、バンドメモリへ直接アクセスする場合には、バンドメモリコントローラ１５９へデータ，アドレスを転送し、また、画像処理コマンドがＢＩＴＢＬＴ命令であった場合には、メインメモリアドレス生成装置１５８からのアドレスに基づき画像データをメインメモリから読み込み、コマンド解析装置１５２へ転送するようになっている。
【００８０】
また、コマンド解析装置１５２は、メモリコントローラＩ／Ｆ１５１からのコマンドデータを受け取って、コマンド解析し、描画命令であれば、描画処理装置１５３へ転送し、ＢＩＴＢＬＴ命令であれば、ＢＩＴＢＬＴ処理装置１５４へ転送するようになっている。図１３には、コマンド解析装置１５２の処理フローが示されている。
【００８１】
また、描画処理装置１５３は、次のような機能を有している。すなわち、図３７に示すようなグラフィックスを描画する時、図３５のように各ベクトルの方向から、例えば上方向は左辺とし、下方向は右辺として、ラインを描画し、図３６のように各バンドの水平方向に描画始点（ＨＸＬ）と描画終点（ＨＸＲ）をそれぞれ求め、この描画処理装置１５３に与えることにより、この描画処理装置１５３は、階調処理装置１５６を制御し、階調処理後のデータを各版のバンドメモリに生成するようになっている。図１６，図１７には、描画処理装置１５３の処理フローが示されている。
【００８２】
また、ＢＩＴＢＬＴ処理装置１５４は、図３７に示すような写真画像を描画する時、図３４のようにメインメモリから対応するバンドの部分を切り取るために、メインメモリアドレス生成装置１５８を制御し、読み込まれたＲＧＢ画像を色変換処理装置１５５へ送り、ＣＭＹＫへ色変換させるようになっている。図１４，図１５には、ＢＩＴＢＬＴ処理装置１５４の処理フローが示されている。
【００８３】
また、色変換処理装置１５５は、ＢＩＴＢＬＴ処理装置１５４から受け取ったＲＧＢデータを色変換し、ＣＭＹＫデータへ変換するようになっている。図１８には、色変換処理装置１５５の構成例が示されている。
【００８４】
また、階調処理装置１５６は、描画処理装置１５３とＢＩＴＢＬＴ処理装置１５４とから制御され、ＣＭＹＫデータを各版並列に階調処理し、バンドメモリコントローラ１５９へ転送するようになっている。また、階調処理装置１５６は、描画処理装置１５３とＢＩＴＢＬＴ処理装置１５４とからの制御により、バンドメモリアドレス生成装置１５７を制御し、バンドメモリのアドレスを生成させるようになっている。図２０には、階調処理装置１５６の構成例が示されている。
【００８５】
また、バンドメモリアドレス生成装置１５７は、描画処理装置１５３とＢＩＴＢＬＴ処理装置１５４とにより制御され、描画処理の場合には、図３６のように、階調処理装置１５６とデータ出力と同期して、バンドメモリアドレスを生成し、また、ＢＩＴＢＬＴ処理の場合には、図３４のように、階調処理装置１５６とデータ出力と同期して、バンドメモリアドレスを生成するようになっている。
【００８６】
また、メインメモリアドレス生成装置１５８は、ＢＩＴＢＬＴ処理装置１５４により制御され、図３４のようにメインメモリアドレスを生成するようになっている。
【００８７】
また、バンドメモリコントローラ１５９は、階調処理装置１５６からのデータとバンドメモリアドレス生成装置１５７からのアドレスにより、各バンドメモリのＩ／Ｆ１６０，１６１，１６２，１６３を制御して、各バンドデータに対して並列に描画処理を行い、また、画像処理コマンドと異なる場合には、メモリコントローラＩ／Ｆ１５１からダイレクトにアドレス，データを受け取り描画処理を行うようになっている。
【００８８】
また、各版のバンドメモリＩ／Ｆ１６０，１６１，１６２，１６３は、各版のバンドメモリとのインタフェースとしての機能を有している。
【００８９】
また、コントローラ１６４は、画像処理装置の全体を制御するようになっている。
【００９０】
図１８は色変換処理装置１５５の構成例を示す図である。
【００９１】
図１８を参照すると、色変換処理装置１５５は、格子点選択装置１７１と、格子点補間処理装置１７２と、色変換テーブルメモリ１７３と、格子点アドレス生成装置１７４と、データ切り出し装置１７５とを有している。
【００９２】
ここで、格子点選択装置１７１は、ＢＩＴＢＬＴ処理装置１５４から画像（ＲＧＢ）データを受け取り、各Ｒ，Ｇ，Ｂ成分を上位ＮＢＩＴ，下位（８−Ｎ）ＢＩＴに分割し、それぞれをＨＲ，Ｇ，ＢＤＲ，Ｇ，Ｂとし、８個の格子点からなる立方体の６個の四面体のどの四面体に相当するかを判断し、その判断結果をＴＹＰＥとして、格子点アドレス生成装置１７４と格子点補間処理装置１７２へ転送するようになっている。
【００９３】
また、格子点補間処理装置１７２は、データ切り出し装置１７５からの四面体の４点の格子点のＣ，Ｍ，Ｙ，Ｋ値を格子点選択装置１７１のＤＲ，Ｇ，Ｂで補間し、Ｃ，Ｍ，Ｙ，Ｋデータを求めるようになっている。
【００９４】
また、色変換テーブルメモリ１７３は、格子点情報を所定のフォーマットで格納し、格子点アドレス生成装置１７４からアドレスを受け取り、格子点情報をデータ切り出し装置１７５へ転送するようになっている。
【００９５】
また、格子点アドレス生成装置１７４は、格子点選択装置１７１からのＨＲ，Ｇ，ＢとＨＲＵ，ＧＵ，ＢＵとＴＹＰＥから、色変換テーブルメモリ１７３の格子点アドレスを求めるようになっている。
【００９６】
また、データ切り出し装置１７５は、色変換テーブルメモリ１７３から受け取った格子点データを格子点補間処理装置１７２で補間するための４つのパラメータを切り出すようになっている。
【００９７】
図１９は図１８の色変換処理装置の処理フローを示す図である。
【００９８】
図１９を参照すると、ステップＳ１では、格子点選択装置１７１により入力された画像（ＲＧＢ）データの上位ＮＢＩＴをＨＲ，Ｇ，Ｂへ変換し、下位（８−Ｎ）ＢＩＴをＤＲ，Ｇ，Ｂへ変換する。
【００９９】
次いで、ステップＳ２では、格子点選択装置１７１により求めたＨＲ，Ｇ，ＢからＴＹＰＥを求める。
【０１００】
次いで、ステップＳ３では、格子点アドレス生成装置１７４により、格子点アドレスを求める。
【０１０１】
次いで、ステップＳ４では、色変換テーブルメモリ１７３から格子点データを読み出す。
【０１０２】
次いで、ステップＳ５では、格子点補間処理装置１７２により、格子点データ間の補間処理を行い、Ｃ，Ｍ，Ｙ，Ｋデータを求める。
【０１０３】
図２０は図１２の階調処理装置１５６の構成例を示す図である。
【０１０４】
図２０を参照すると、階調処理装置１５６は、しきい値テーブルの記憶装置１８２と、しきい値テーブル記憶装置１８２のアドレスを生成するアドレス生成装置１８１と、しきい値テーブルデータを各版に分配するデータ分配装置１８３と、比較装置１８４，１８５，１８６，１８７と、固定長データ生成装置１８８，１８９，１９０，１９１と、階調処理装置全体をコントロールするコントローラ１９２とを有している。
【０１０５】
ここで、比較装置１８４，１８５，１８６，１８７は、データ分配装置１８３で選択されたしきい値Ｃ，Ｍ，Ｙ，Ｋデータと図１２のＢＩＴＢＬＴ処理装置１５４からのＣ，Ｍ，Ｙ，Ｋデータとを比較し、２値データを生成するようになっている。
【０１０６】
また、固定長データ生成装置１８８，１８９，１９０，１９１は、比較装置１８４，１８５，１８６，１８７により生成された２値データを固定長にまとめるようになっている。図２２には、固定長データ生成装置の構成例が示されている。
【０１０７】
図２１は階調処理装置１５６の処理フローを示す図である。
【０１０８】
図２２は固定長データ生成装置の構成例を示す図である。
【０１０９】
図２２において、加算器２０５は、図２０の比較装置から２値データを受けるごとに“１”を加算し、これをシフト値としてシフト値レジスタ２０６に格納するようになっている。
【０１１０】
また、シフタ２０１は、図２０の比較装置から２値データを受け取り、シフト値レジスタ２０６の値だけシフトして、ＯＲ装置２０２へ転送するようになっている。
【０１１１】
ＯＲ装置２０２は、シフト値レジスタ２０６の値だけシフトした２値データをＯＲ処理し、レジスタ２０４へ送るようになっている。
【０１１２】
レジスタ２０４には、ＯＲ装置２０２でＯＲ処理されて追加された２値データが格納されるようになっている。
【０１１３】
レジスタ２０３には、固定長に達したデータが格納されるようになっている。
【０１１４】
図２３は図２の符号化装置の構成例を示す図である。
【０１１５】
図２３において、メモリＩ／Ｆ２１１は、図２のバンドメモリとのインタフェースとしての機能を有している。
【０１１６】
また、バッファー２１２には、読み込まれた画像データが一時格納されるようになっている。
【０１１７】
また、ＪＢＩＧ符号化装置２１３は、ＪＢＩＧ標準に基づいた符号化処理を行うようになっており、図２の符号書き込み制御装置１１５からＷＡＩＴ信号を受け、ＷＡＩＴ信号が“１”であれば、符号化処理を一時中断するようになっている。そして、バンドメモリの全てのデータ化を終了し、全ての符号データを図２の符号書き込み制御装置１１５へ転送し終わると、符号化終了信号を符号書き込み制御装置１１５へ転送するようになっている。
【０１１８】
また、バッファー２１４は、符号化装置２１３からの符号データを一時格納し、符号書き込み制御装置１１５へ転送するようになっている。
【０１１９】
また、メモリアドレス生成装置２１５は、図２のバンドメモリのアドレスを順次生成するようになっている。
【０１２０】
また、コントローラ２１６は、符号化装置の全体をコントロールするようになっている。
【０１２１】
図２４は図２の符号書き込み制御装置１１５の構成例を示す図である。
【０１２２】
図２４において、各版の符号化装置Ｉ／Ｆ２２１，２２２，２２３，２２４は、各版の符号化装置とのインタフェースとしての機能を有している。
【０１２３】
また、各版の符号用ＦＩＦＯ２２５，２２６，２２７，２２８は、各版の符号化装置からの符号データを一時格納し、格納された符号データのデータ量が所定のしきい値のデータ量を超えた場合には、ＯＵＴＲＥＱ信号をＦＩＦＯコントローラ２２９へ出力可能なことを通知し、また、ＦＩＦＯがＦＵＬＬになると、ＦＩＦＯＦＵＬＬ信号をＦＩＦＯコントローラ２２９へ通知するようになっている。図３２には、ＦＩＦＯとして例えばＣ版符号用ＦＩＦＯの構成例が示されている。
【０１２４】
また、ＦＩＦＯコントローラ２２９は、符号用ＦＩＦＯ２２５，２２６，２２７，２２８のうちから、ＯＵＴＲＥＱ信号を受け出力するＦＩＦＯを選択し、メインメモリへの出力処理をコントロールするようになっている。また、符号用ＦＩＦＯ２２５，２２６，２２７，２２８からのＦＩＦＯＦＵＬＬ信号を受け取ると、その版の符号用ＦＩＦＯが符号データを格納することができない為にＷＡＩＴ信号をその版の符号化装置へ送り、符号化装置を一時停止させることにより、ＦＩＦＯのオーバーフローを回避し、ＦＩＦＯＦＵＬＬ信号を出力した版の符号ＦＩＦＯを優先して、メインメモリへの展開処理を行うことにより、符号化装置の一時停止時間を少なくするようになっている。そして、このＷＡＩＴ信号は、その版の符号用ＦＩＦＯの符号データをメインメモリに書き込み、空となった時、ＷＡＩＴ信号を“０”に戻し、符号化処理を再開させる機能を有している。なお、図２５乃至図３１には、符号書き込み制御の処理フローが示されている。
【０１２５】
また、図２４において、ＭＵＸ２３０は、ＦＩＦＯコントローラ２２９の制御により、符号用ＦＩＦＯ２２５，２２６，２２７，２２８のうちから、メインメモリへ出力するＦＩＦＯを選択するようになっている。
【０１２６】
また、出力用ＦＩＦＯ２３１は、各版の符号用ＦＩＦＯ２２５，２２６，２２７，２２８のうちから、メインメモリへ出力可能なＦＩＦＯが選択されたとき、そのＦＩＦＯの符号データを一時格納するようになっている。
【０１２７】
また、Ｃ，Ｍ，Ｙ，Ｋ版符号アドレス生成装置２３２は、ＦＩＦＯコントローラ２２９により制御され、選択された版の図８のような符号ページメモリ格納領域の先頭アドレスを生成するようになっている。
【０１２８】
また、メモリコントローラＩ／Ｆ２３３は、図２のメモリコントローラ１０３のインタフェースとしての機能を有し、ＦＩＦＯコントローラ２２９の制御により、図２のメインメモリ１２３の図８のような各版の符号ページメモリ格納領域に符号データを転送するようになっている。
【０１２９】
図３２は図２４のＣ版符号用ＦＩＦＯ２２５の構成例を示す図である。
【０１３０】
図３２において、メモリ２４１は、図２の符号化装置１１１からの符号データを一時格納するようになっている。
【０１３１】
また、カウンタ２４２は、メモリ２４１の書き込みアドレスを生成するようになっている。また、カウンタ２４２は、図２４のＦＩＦＯコントローラ２２９からＣ＿ＯＵＴＡＣＫ信号を受けると、値をクリアするようになっている。
【０１３２】
また、比較器２４３は、カウンタ２４２のカウント値と出力ＦＩＦＯサイズとを比較し、カウント値と等しいか、もしくは、カウント値の方が大きい場合に、Ｃ＿ＯＵＴＲＥＱ信号を図２４のＦＩＦＯコントローラ２２９へ送り、出力可能なことを知らせるようになっている。
【０１３３】
また、比較器２４４は、カウンタ２４２のカウント値と符号用ＦＩＦＯのＭＡＸサイズとを比較し、カウント値と等しいか、もしくは、カウント値の方が大きい場合に、Ｃ＿ＦＩＦＯＦＵＬＬ信号を図２４のＦＩＦＯコントローラ２２９へ送り、もう符号を格納できないことを知らせるようになっている。
【０１３４】
図３３は図２の復号化装置として例えばＣ版復号化装置の構成例を示す図である。
【０１３５】
図３３において、メモリコントローラＩ／Ｆ２５１は、図２のメモリコントローラ１０３とのインタフェースとしての機能を有している。
【０１３６】
また、バッファー２５２は、読み込まれた符号データを一時格納するようになっている。
【０１３７】
また、ＪＢＩＧ復号化装置２５３は、ＪＢＩＧ標準に基づいた復号化処理を行い、ラインメモリ２５４に復号化された画像を書き込むようになっている。
【０１３８】
また、ラインメモリ２５４は、復号化装置２５３からの画像を一時格納し、図２のエンジンコントローラ１２４へ転送するようになっている。
【０１３９】
また、読み込みメモリアドレス生成装置２５５は、図２のメインメモリ１２３のＣ版符号ページメモリ領域のアドレスを順次生成するようになっている。
【０１４０】
また、コントローラ２５６は、復号化装置の全体をコントロールするようになっている。
【０１４１】
また、図３８は図１のプリンタの制御部の他の構成例を示す図である。なお、図３８において、図２と同様の箇所には同じ符号を付している。
【０１４２】
図３８の構成が図２の構成と異なっているのは、ＭＵＸ（マルチプレクサ）１４１を設けることによって、符号化装置の個数を２つ（符号化装置１４２，１４３）にしている点である。
【０１４３】
図１８において、ＭＵＸ１４１は、各版のバンドメモリ１０７，１０８，１０９，１１０を切り替え、２つの符号化装置１４２，１４３へ転送するようになっている。
【０１４４】
また、符号化装置１４２，１４３は、バンドメモリ１０７，１０８，１０９，１１０に記憶された階調処理後のバンドデータを符号化し、符号書き込み制御装置１４４へ符号データを転送するようになっている。
【０１４５】
また、符号書き込み制御装置１４４は、符号化装置１４２，１４３から受け取った符号データを各版ごとに一時格納し，あるしきい値分貯まった版からメインメモリ１２３に順次書き込みを行うことにより、複数の符号化装置からの符号データの書き込みを制御するようになっている。
【０１４６】
図２の構成例では、４つのバンドメモリごとに符号化装置を有しているが、この図３８の構成例では、４つのバンドメモリごとではなく、ＭＵＸ１４１で選択された２つのバンドメモリごとに並列に符号化するようになっている。
【０１４７】
この図３８の構成例のように、バンドメモリと符号化装置が一対一に対応しない構成とすることもできる。
【０１４８】
また、バンドメモリがＣＭＹＫ版全て持たなく、例えば、ＣＭ、ＹＫの２版ごとメモリコントローラに内蔵することもできる。
【０１４９】
上述したような本発明の画像処理装置は、例えばパーソナルコンピュータ等で実現される。
【０１５０】
この場合、ＣＰＵ１０１は、画像処理手段，符号化処理手段，符号書き込み制御手段，復号化手段等の機能を有している。
【０１５１】
なお、ＣＰＵ１０１におけるこのような画像処理手段，符号化処理手段，符号書き込み制御手段，復号化手段等としての機能は、プログラムの形で、例えばソフトウェアパッケージ（具体的には、ＣＤ−ＲＯＭ等の情報記録媒体）の形で提供することができる。
【０１５２】
【発明の効果】
以上に説明したように、請求項１乃至請求項４記載の発明によれば、複数の版のバンドデータ（例えば階調処理後のバンドデータ）を並列に生成（描画）することにより、バンドデータを高速に生成することができる。
【０１５３】
また、生成された複数の版のバンドデータを並列に符号化することにより、バンドデータを高速に符号化することができる。
【０１５４】
また、バンドデータを格納するバンドメモリと符号データを格納するメインメモリとを相違させることにより、バンドデータの符号化と符号データの書き込みとを並列に処理することが可能となり、高速化が可能となる。
【０１５５】
また、バンドデータをバンドメモリとして独立させたメモリに格納していることによって、バンドデータの生成処理（描画処理）とＣＰＵのプログラムの読み込み処理とがぶつかることなく、高速化が可能となる。
【図面の簡単な説明】
【図１】本発明が適用された画像処理装置としてのカラープリンタの機構部の構成例を示す図である。
【図２】図１のプリンタの制御部の構成例を示す図である。
【図３】図２の制御部の全体処理フローを示す図である。
【図４】図２の制御部の処理概念を示す図である。
【図５】図２の制御部の処理概念を示す図である。
【図６】図２の制御部の処理概念を示す図である。
【図７】図２の制御部の処理概念を示す図である。
【図８】メインメモリのフォーマットを示す図である。
【図９】階調処理後バンド生成時の処理フローを示す図である。
【図１０】符号化処理フローを示す図である。
【図１１】復号化＆プリントアウトフローを示す図である。
【図１２】図２の画像処理装置の構成例を示す図である。
【図１３】コマンド解析装置の処理フローを示す図である。
【図１４】ＢＩＴＢＬＴ処理装置の処理フローを示す図である。
【図１５】ＢＩＴＢＬＴ処理装置の処理フローを示す図である。
【図１６】描画処理装置の処理フローを示す図である。
【図１７】描画処理装置の処理フローを示す図である。
【図１８】色変換処理装置の構成例を示す図である。
【図１９】図１８の色変換処理装置の処理フローを示す図である。
【図２０】図１２の階調処理装置の構成例を示す図である。
【図２１】階調処理装置の処理フローを示す図である。
【図２２】固定長データ生成装置の構成例を示す図である。
【図２３】図２の符号化装置の構成例を示す図である。
【図２４】図２の符号書き込み制御装置の構成例を示す図である。
【図２５】符号書き込み制御の処理フローを示す図である。
【図２６】符号書き込み制御の処理フローを示す図である。
【図２７】符号書き込み制御の処理フローを示す図である。
【図２８】符号書き込み制御の処理フローを示す図である。
【図２９】符号書き込み制御の処理フローを示す図である。
【図３０】符号書き込み制御の処理フローを示す図である。
【図３１】符号書き込み制御の処理フローを示す図である。
【図３２】図２４のＣ版符号用ＦＩＦＯの構成例を示す図である。
【図３３】図２の復号化装置として例えばＣ版復号化装置の構成例を示す図である。
【図３４】ＢＩＴＢＬＴ処理を説明するための図である。
【図３５】描画処理を説明するための図である。
【図３６】描画処理を説明するための図である。
【図３７】描画処理を説明するための図である。
【図３８】図１のプリンタの制御部の他の構成例を示す図である。
【図３９】従来の画像処理装置を説明するための図である。
【図４０】従来の画像処理装置を説明するための図である。
【図１】
2004289203.tif 000003
【図２】
2004289203.tif 000004
【図３】
2004289203.tif 000005
【図４】
2004289203.tif 000006
【図５】
2004289203.tif 000007
【図６】
2004289203.tif 000008
【図７】
2004289203.tif 000009
【図８】
2004289203.tif 000010
【図９】
2004289203.tif 000011
【図１０】
2004289203.tif 000012
【図１１】
2004289203.tif 000013
【図１２】
2004289203.tif 000014
【図１３】
2004289203.tif 000015
【図１４】
2004289203.tif 000016
【図１５】
2004289203.tif 000017
【図１６】
2004289203.tif 000018
【図１７】
2004289203.tif 000019
【図１８】
2004289203.tif 000020
【図１９】
2004289203.tif 000021
【図２０】
2004289203.tif 000022
【図２１】
2004289203.tif 000023
【図２２】
2004289203.tif 000024
【図２３】
2004289203.tif 000025
【図２４】
2004289203.tif 000026
【図２５】
2004289203.tif 000027
【図２６】
2004289203.tif 000028
【図２７】
2004289203.tif 000029
【図２８】
2004289203.tif 000030
【図２９】
2004289203.tif 000031
【図３０】
2004289203.tif 000032
【図３１】
2004289203.tif 000033
【図３２】
2004289203.tif 000034
【図３３】
2004289203.tif 000035
【図３４】
2004289203.tif 000036
【図３５】
2004289203.tif 000037
【図３６】
2004289203.tif 000038
【図３７】
2004289203.tif 000039
【図３８】
2004289203.tif 000040
【図３９】
2004289203.tif 000041
【図４０】
2004289203.tif 000042