(57)【要約】【課題】メモリ量を低減し高速処理が可能な画像処理装置を提供する。【解決手段】８ラインメモリ１１は、スキャナ９からの画像データをマクロブロックの８ラインのサブブロックで記憶する。符号化部１２は、８ライン単位でデータを読み出しマクロブロック単位に可変長符号化する。マクロブロック先頭アドレス記憶部１２３は、マクロブロックが並ぶ同一の水平ラインの先頭アドレスを記憶する。マクロブロック符号中間データ記憶部１２３４は、水平ラインに可変長符号化するマクロブロックの中間データを記憶する。入出力用符号メモリ領域４１は、可変長符号データをマクロブロック単位で記憶する。マクロブロック符号アドレス認識部１４４は、記憶された各ブロックの先頭アドレスを認識する。編集部１３は、編集内容に従って、可変長符号データを、認識した各ブロックの先頭アドレスにより読み込み復号化して編集する。【選択図】        図１
2005184265.tif 000002
【特許請求の範囲】
【請求項１】
入力される画像データを可変長符号化し、編集し、復号化した後に画像処理を施し、画像処理後の画像データを出力する画像処理装置であって、
入力される前記画像データに対して編集処理内容の指定を受け付ける編集指定手段と、
入力される前記画像データを、マクロブロックを構成する多値のサブブロック単位のラインデータとして記憶する多値ブロックラインデータ記憶手段と、
前記多値ブロックラインデータ記憶手段から前記多値ブロックラインデータを読み出して前記マクロブロック単位に可変長符号化するマクロブロック可変長符号化手段と、
前記マクロブロック可変長符号化手段による可変長符号化の際に、前記マクロブロックが画像において並ぶ同一の水平ラインの前記マクロブロックの先頭アドレスを記憶するマクロブロック先頭アドレス記憶手段と、
前記マクロブロック可変長符号化手段による可変長符号化の際に、前記同一の水平ラインに可変長符号化する前記マクロブロックの可変長符号化処理の中間データを記憶するマクロブロック符号中間データ記憶手段と、
前記マクロブロック可変長符号化手段によって生成された可変長符号データを前記マクロブロック単位で順次記憶するマクロブロック符号記憶手段と、
前記マクロブロック符号記憶手段に記憶された前記マクロブロック単位の可変長符号データに対応する前記マクロブロック先頭アドレス記憶手段に記憶された各ブロックの先頭アドレスを認識するマクロブロック符号アドレス認識手段と、
前記編集指定手段によって指定された編集処理内容に従って、前記マクロブロック符号記憶手段に記憶された可変長符号データを、前記マクロブロック符号アドレス認識手段によって認識された各ブロックの先頭アドレスに従って読み込み復号化して編集する編集手段と、
を備えたことを特徴とする画像処理装置。
【請求項２】
サブブロックから構成されるマクロブロック単位に可変長符号化された画像データを入力し、編集し、復号化した後に画像処理を施して出力する画像処理装置であって、
入力される前記画像データに対する編集処理内容の指定を受け付ける編集指定手段と、
前記可変長符号データをマクロブロック単位で記憶するマクロブロック符号記憶手段と、
前記編集指定手段によって指定された編集処理内容に応じて、前記マクロブロック符号記憶手段に記憶された可変長符号データを読み込み、復号化し、編集し、再び可変長符号化して前記マクロブロック符号記憶手段に送信する編集手段と、
前記マクロブロック符号記憶手段に記憶された可変長符号データに対応する各マクロブロックのアドレスを認識するマクロブロック符号アドレス認識手段と、
前記マクロブロック符号アドレス記憶手段から前記マクロブロックの先頭アドレスを受け取り、前記マクロブロック符号記憶手段から前記編集手段によって編集されたマクロブロックの可変長符号データを読み取り、順次復号化するマクロブロック復号化手段と、
前記マクロブロック復号化手段による復号化に際して、前記マクロブロック符号記憶手段に記憶された同一の水平ラインの前記マクロブロックの先頭アドレスを記憶するマクロブロック先頭アドレス記憶手段と、
前記マクロブロック復号化手段による復号化に際して、前記同一の水平ラインに処理する前記マクロブロックの復号化途中のデータを記憶するマクロブロック復号中間データ記憶手段と、
前記マクロブロック復号中間データ記憶手段に記憶された少なくとも前記サブブロック単位の画像データを受け取り、画像処理を行う画像処理手段と、
前記画像処理手段により生成された画像処理後の画像データを画像の主走査方向に順次プリンタエンジンへ転送する画像出力手段と、
を備えたことを特徴とする画像処理装置。
【請求項３】
前記マクロブロック符号アドレス認識手段は、複数のサブブロックからなるマクロブロックで発生する符号長の合計を計算する符号長計算手段を有するものであることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記マクロブロック符号アドレス認識手段は、
前記符号長合計計算手段によって生成された符号長から、前記マクロブロック符号記憶手段のアドレスを計算するアドレス計算手段を有するものであることを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記編集手段は、
前記マクロブロックの画像データを復号化して展開するマクロブロック展開記憶手段を有するものであることを特徴とする請求項１または２に記載の画像処理装置。
【請求項６】
前記編集手段は、前記マクロブロック展開記憶手段に記憶された画像に合成処理を施す画像合成処理手段を有するものであることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記編集手段は、
前記編集指定手段によって指定された編集内容に応じて、前記マクロブロック展開記憶手段に記憶された画像データをサブブロックごとに９０度単位で回転する回転処理手段を有するものであることを特徴とする請求項５または６に記載の画像処理装置。
【請求項８】
前記マクロブロック可変長符号化手段は、
前記マクロブロック単位の画像データの水平方向に１ブロックラインの終端を検出する画像ブロックライン終端検出手段を有するものであることを特徴とする請求項１に記載の画像処理装置。
【請求項９】
前記画像ブロックライン終端検出手段は、
前記マクロブロック単位の画像データの水平方向の１ブロックラインの終端にリスタートマーカーを挿入するリスタートマーカー挿入手段を有するものであることを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記マクロブロック復号化手段は、
前記マクロブロック符号記憶手段により記憶された可変長符号データの水平方向の１ブロックラインの終端を検出する符号ブロックライン終端検出手段を有し、
前記符号ブロックライン終端検出手段によって検出された前記終端を使用して、前記マクロブロック符号記憶手段により記憶された可変長符号データを読み込んで復号化するものであることを特徴とする請求項２に記載の画像処理装置。
【請求項１１】
前記符号ブロックライン終端検出手段は、
前記マクロブロック符号記憶手段により記憶された符号を読み込む水平方向に１ブロックラインの終端のリスタートマーカーを検出するリスタートマーカー検出手段を有するものであることを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
入力される画像データを可変長符号化し、編集し、復号化した後に画像処理を施し、画像処理後の画像データを出力する画像処理装置であって、
編集処理内容の指定を受け付ける編集指定手段と、
多値のサブブロック単位の１ラインのデータを記憶する多値ブロックラインデータ記憶手段と、
前記多値ブロックラインデータ記憶手段から複数のマクロブロック単位の符号を生成する第１のマクロブロック可変長符号化手段と、
前記第１のマクロブロック可変長符号化手段によって生成された複数のマクロブロック単位の可変長符号データを順次記憶する第１のマクロブロック符号記憶手段と、
前記第１のマクロブロック符号記憶手段に記憶された可変長符号データに対して、各マクロブロックが記憶されたアドレスを認識する第１のマクロブロック符号アドレス認識手段と、
前記編集指定手段によって指定された編集処理内容に応じて、前記第１のマクロブロック符号記憶手段に記憶された可変長符号データを、前記第１のマクロブロック符号アドレス認識手段が認識する前記アドレスを使用して読み込み、復号化して編集する編集手段と
前記編集手段によって編集された画像データをマクロブロック単位に可変長符号化する第２のマクロブロック可変長符号化手段と、
前記第２のマクロブロック可変長符号化手段によって生成された可変長符号データをマクロブロック単位で順次記憶する第２のマクロブロック符号記憶手段と、
前記第２のマクロブロック符号記憶手段に記憶された可変長符号データに対して、各マクロブロックが記憶されたアドレスを認識する第２のマクロブロック符号アドレス認識手段と、
前記第２のマクロブロック符号アドレス記憶手段から前記マクロブロックの先頭アドレスを受け取り、前記第２のマクロブロック符号記憶手段からマクロブロックの可変長符号データを読み取って、順次復号化するマクロブロック復号化手段と、
前記マクロブロック復号化手段によって復号化された多値ブロックラインデータを記憶する出力用多値ブロックラインデータ記憶手段と、
前記出力用多値ブロックラインデータ記憶手段に記憶された前記サブブロック単位の画像データを受け取り、画像処理を行う画像処理手段と、
前記画像処理手段により生成された画像処理後の画像データを、画像の主走査方向に順次プリンタエンジンへ転送する画像出力手段と、
を備えたことを特徴とする画像処理装置。
【請求項１３】
入力される画像データを可変長符号化し、編集し、復号化した後に画像処理を施し、画像処理後の画像データを出力する画像処理方法であって、
入力される前記画像データに対して編集処理内容の指定を受け付ける編集指定工程と、
入力される前記画像データを、マクロブロックを構成する多値のサブブロック単位のラインデータとして記憶する多値ブロックラインデータ記憶工程と、
前記多値ブロックラインデータ記憶工程において記憶された前記多値ブロックラインデータを読み出して前記マクロブロック単位に可変長符号化するマクロブロック可変長符号化工程と、
前記マクロブロック可変長符号化工程における可変長符号化の際に、前記マクロブロックが画像において並ぶ同一の水平ラインの前記マクロブロックの先頭アドレスを記憶するマクロブロック先頭アドレス記憶工程と、
前記マクロブロック可変長符号化工程において生成された可変長符号データを前記マクロブロック単位で順次記憶するマクロブロック符号記憶工程と、
前記編集指定工程によって指定された編集処理内容に従って、前記マクロブロック符号記憶工程において記憶された可変長符号データを読み込み、復号化して編集する編集工程と、
前記マクロブロック先頭符号アドレス記憶工程において記憶された前記マクロブロックの先頭アドレスを読み取り、前記マクロブロック符号記憶工程において記憶された前記マクロブロックの符号データを読み取り、順次復号化するマクロブロック復号化工程と、
前記マクロブロック復号化工程において復号化されたデータを記憶する出力用多値ブロックラインデータ記憶工程と、
前記出力用多値ブロックラインデータ記憶工程において記憶されたサブブロック単位の画像データを受け取り、画像処理を行う画像処理工程と、
前記画像処理工程によって生成された画像処理後の画像データを画像の主走査方向に順次プリンタエンジンへ転送する画像出力工程と、
を含むことを特徴とする画像処理方法。
【請求項１４】
請求項１３に記載の画像処理方法をコンピュータで実行することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、およびその方法をコンピュータで実行するプログラムに関し、特に、取得した画像データを圧縮処理し、圧縮された画像データに回転処理や画像合成処理を施す画像処理装置、画像処理方法、およびその方法をコンピュータで実行するプログラムに関するものである。
【背景技術】
【０００２】
従来、画像データ圧縮技術は画像データを保持するためのメモリ量を低減したり、画像データの送信時間を短縮したりする目的で画像処理分野において一般に使用されている。画像データ圧縮方式は、画像データを印字処理する場合においては、限られた容量のメモリ上で画像データを回転して印字するなどの処理を高速に行うという必要性から、固定長圧縮が良く使用されている。代表的な固定長圧縮の方式としてＧＢＴＣ（Ｇｅｎｅｒａｌｉｚｅｄ  ＢＴＣ）が知られている。
【０００３】
図６５〜６７は、ＧＢＴＣ固定長圧縮のアルゴリズムを示した図である。
【０００４】
特許文献１では、ＧＢＴＣのＬＤ値により、ＬＤ値の大きいエッジ部分に４／８ＧＢＴＣのような画質の良いＧＢＴＣを配置させ、ＬＤ値の小さい部分に対しては２／８ＧＢＴＣのような画質に多少問題があるが、圧縮率の高いＧＢＴＣを配置させかつ、ラインごと固定された符号長に収める技術、即ち固定長符号化の技術が開示されている。
【０００５】
また他の圧縮方式として画像データを水平周波数方向と垂直周波数方向に複数のブロックに分割すると共に、低域周波数のブロックほど細かくするＷａｖｅｌｅｔ変換が知られ、このＷａｖｅｌｅｔ変換は最近、自然階調の画像や連続した階調を持つ写真のような画像の圧縮に優れている。
【０００６】
また、特許文献２および特許文献３においては、可変長符号のエッジ成分の高いブロックに対して、量子化を緩め、エッジ成分の少ないブロックに対して量子化を強め、かつ、数ライン単位に固定された符号長に収め、かつ回転処理が可能な符号化方法が開示されている。
【０００７】
圧縮方式としてはＤＣＴ（ＤｉｓｃｒｅｔＣｏｓｉｎｅＴｒａｎｓｆｏｒｍ）などの直交変換によって画像データを周波数成分に変換し、その変換係数を量子化する方式が公知であり、特にＤＣＴを使用した多値画像を符号化する方式として、ＩＴＵ−ＴとＩＳＯにより、標準化されたＪＰＥＧ方式が知られている。式（１−１）はＪＰＥＧのＤＣＴを求める演算式であり、式（１−２）はＩＤＣＴを求める演算式である。
【０００８】
【数１】
2005184265.tif 000003
【数２】
2005184265.tif 000004
【数３】
2005184265.tif 000005
【０００９】
また、特許文献４は、画像データをＪＰＥＧ方式で符号化する際に、バンドバッファーを有して、スキャナからシリアルに転送される画像データを一時格納し、バンドバッファーのライン数と等しい正方のマクロブロックごとＲＳＴ（ＲｅＳＴａｒｔ）マーカーを発行することにより、マクロブロックごとにＤＣ成分の初期化を行い、その符号のＲＳＴマーカーを認識することによってマクロブロックごとの位置を認識するためのポインタテーブルを生成し、画像出力時にマクロブロックごと復号化処理を施し、９０度単位の回転処理を施し、画像処理を施した後、プリンタエンジン１７へ転送する技術が開示されている。そして、特許文献４は、マクロブロック単位に符号化し、マクロブロックごと符号長求めをアドレス管理させ、回転処理を可能としている。
【００１０】
また、特許文献５は、画像データをｍ＊ｎサブブロック単位を最小単位とし、複数のサブブロックからなるマクロブロックごと符号化する際に、マクロブロックの垂直方向の高さ以上のラインメモリからなるバンドバッファーを有するのではなく、少なくともサブブロックの１ブロックラインを有し、スキャナからシリアルに転送される画像データを一時格納する第１の記憶手段と、該第１の記憶手段から順次複数のマクロブロックを符号化処理を切替えながら、符号化することにより、少ないメモリ容量で、マクロブロック単位に符号化し、さらに復号化処理においても、サブブロックごとに水平マクロブロック単位に符号を切り換えることによって、複数のマクロブロックの復号化を並列に行うための復号化後の画像データを格納する第２の記憶手段として、サブブロックのｎラインのメモリのみの少ないメモリで復号化が可能な方法を開示している。
【００１１】
【特許文献１】特開２００１−２１８０６１号公報
【特許文献２】特開２００１−１９７４９６号公報
【特許文献３】特開２００１−２２４０２７号公報
【特許文献４】特開平１０−７５３４５号公報
【特許文献５】特開２００２−１２５１１６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
上述のように印字処理を目的とするシステムにおいては固定長圧縮方式を使用してＧＢＴＣ方式などを使用してきた。しかし、このＧＢＴＣは４／８圧縮においては１ブロック４＊４ドット、１ドットに３ＢＩＴの８種類の色を割り振り、３／８圧縮においては１ドットに２ＢＩＴの４種類の色を、２／８圧縮においては１ＢＩＴの２種類の色を割り振っていた。このため、特許文献１に示された技術では、特に画素の階調差が激しい１ブロック内ではノッチと呼ばれるゴミのようなものが文字の輪郭などに発生し、画質を劣化させるという問題点があった。
【００１３】
また、特許文献２および３に記載された技術では、ブロックラインごと符号化が可能であるため、使用するメモリも、少なく良いのであるが、２７０度の回転処理において、符号を逆方向から読み込むために、処理が複雑化しており、かつ、ブロックラインごとに量子化値が異なることにより、最悪時、画像の劣化が目立つという問題点があった。
【００１４】
また、特許文献４に記載された技術では、水平方向の画素数を８１９２とすると、バンドメモリを小さくするために１６ラインで構成した場合、８１２９／１６＝５１２個のマクロブロックが１バンドごとと発生し、アドレス管理や、全体の制御が複雑化する。また、２５６ラインを有する場合、８１２９／２５６＝３２個であり、かろうじて制御できる範囲ではあるが、大きなバンドバッファーを必要とする。また、復号化と回転処理を施した後をシリアルに行い、画像処理部、プリンタエンジン１７へ順次送るが、通常プリンタエンジン１７は、一定の時間以内にデータを転送しなければならないために、各種の回転処理による複雑な制御と複雑なコードメモリへのアクセスを行う場合の最悪のスピードを見積もらなくてはならず、メモリは最悪のメモリアクセスを考え、高速なメモリが必要になるという問題があった。
【００１５】
また、回転処理を施す場合、１ページの符号化された符号を回転する際、回転後の１ページの符号を格納するメモリ領域が、さらに必要となり、基本的に符号の２倍のメモリ領域を必要としてしまう。またＨＤＤ装置へ符号データを書き込む場合には、ＨＤＤ装置の転送スピードとスキャナ装置、プリンタ装置の処理スピードの差を緩和する為に、ＨＤＤ転送用のバッファーメモリを必要としていた。
【００１６】
さらに特許文献４に記載された技術では、各種の編集処理を施す場合、元画像と文字などの合成させる画像を複数読み込み処理させる為に、場合によっては割り振る処理時間が決められて、オーバースペックのシステムとなってしまうこともあった。また、プリンタエンジンに同期して編集処理を施すため、元画像データの読み込みと合成処理の文字画像などの読み込みなどを、ある一定時間内に処理を終了させることが困難になるという問題があった。しかしながら、可変長符号に対して、合成処理などを行うことは、基本的に難しく特許文献４には明記されていない。
【００１７】
また、デジタル複写機でよく行われる復号化処理中（プリント中）に他のページを符号化スキャナから読み込む動作を同時に行うことが難しくなる。また、１つのバンドメモリを符号化、復号化で共有するために、前記の復号化中に符号化することができないという問題点があった。また、復号化処理がエンジンスピードに同期して処理しなければならないので、一定の時間中に多くの処理が必要となり、ハードウェアを大きくして、かつ高い周波数による処理が必要となっていた。
【００１８】
また、特許文献４に記載の技術では、マクロブロック単位に記憶するバンドメモリを備える必要があったので、多くのメモリを必要とするという問題点があった。
【００１９】
また、特許文献５に記載の技術では、サブブロック単位の１ブロックラインのデータを使用し、水平方向にマクロブロック単位に符号化処理を切り換えて行うが、例えば先に説明したＧＢＴＣのような固定長の符号化方式であれば、符号化処理を切り換える時に、複数のマクロブロック単位の符号化した符号の先頭アドレスを保持することにより、毎ブロックラインごと切り換えることが可能であるが、可変長符号の場合は、可変長な符号を固定長のワードに（例えば３２ＢＩＴ、６４ＢＩＴなど）まとめて、符号としてメモリに格納して行く為、この技術のように符号の先頭アドレスを管理するだけの方式では、実現することができなかった。また、可変長の符号の切替え処理について、詳しく明記されていなかった。
【００２０】
本発明は、上記に鑑みてなされたものであって、可変長化された入力画像データに対して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置、画像処理方法、およびその方法をコンピュータで実行するプログラムを提供することを目的とする。
【課題を解決するための手段】
【００２１】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明は、入力される画像データを可変長符号化し、編集し、復号化した後に画像処理を施し、画像処理後の画像データを出力する画像処理装置であって、入力される前記画像データに対して編集処理内容の指定を受け付ける編集指定手段と、入力される前記画像データを、マクロブロックを構成する多値のサブブロック単位のラインデータとして記憶する多値ブロックラインデータ記憶手段と、前記多値ブロックラインデータ記憶手段から前記多値ブロックラインデータを読み出して前記マクロブロック単位に可変長符号化するマクロブロック可変長符号化手段と、前記マクロブロック可変長符号化手段による可変長符号化の際に、前記マクロブロックが画像において並ぶ同一の水平ラインの前記マクロブロックの先頭アドレスを記憶するマクロブロック先頭アドレス記憶手段と、前記マクロブロック可変長符号化手段による可変長符号化の際に、前記同一の水平ラインに可変長符号化する前記マクロブロックの可変長符号化処理の中間データを記憶するマクロブロック符号中間データ記憶手段と、前記マクロブロック可変長符号化手段によって生成された可変長符号データを前記マクロブロック単位で順次記憶するマクロブロック符号記憶手段と、前記マクロブロック符号記憶手段に記憶された前記マクロブロック単位の可変長符号データに対応する前記マクロブロック先頭アドレス記憶手段に記憶された各ブロックの先頭アドレスを認識するマクロブロック符号アドレス認識手段と、前記編集指定手段によって指定された編集処理内容に従って、前記マクロブロック符号記憶手段に記憶された可変長符号データを、前記マクロブロック符号アドレス認識手段によって認識された各ブロックの先頭アドレスに従って読み込み復号化して編集する編集手段と、を備えたことを特徴とする。
【００２２】
この請求項１にかかる発明によれば、編集指定手段は、入力される画像データに対して編集処理内容の指定を受け付ける。多値ブロックラインデータ記憶手段は、入力される画像データを、マクロブロックを構成する多値のサブブロック単位のラインデータとして記憶する。マクロブロック可変長符号化手段は、多値ブロックラインデータ記憶手段から多値ブロックラインデータを読み出してマクロブロック単位に可変長符号化する。マクロブロック先頭アドレス記憶手段は、マクロブロック可変長符号化手段による可変長符号化の際に、マクロブロックが画像において並ぶ同一の水平ラインのマクロブロックの先頭アドレスを記憶する。マクロブロック符号中間データ記憶手段は、マクロブロック可変長符号化手段による可変長符号化の際に、同一の水平ラインに可変長符号化するマクロブロックの可変長符号化処理の中間データを記憶する。マクロブロック符号記憶手段は、マクロブロック可変長符号化手段によって生成された可変長符号データをマクロブロック単位で順次記憶する。マクロブロック符号アドレス認識手段は、マクロブロック符号記憶手段に記憶されたマクロブロック単位の可変長符号データに対応するマクロブロック先頭アドレス記憶手段に記憶された各ブロックの先頭アドレスを認識する。編集手段は、編集指定手段によって指定された編集処理内容に従って、マクロブロック符号記憶手段に記憶された可変長符号データを、マクロブロック符号アドレス認識手段によって認識された各ブロックの先頭アドレスに従って読み込み復号化して編集する。
【００２３】
即ち、マクロブロック可変長符号化手段が符号化する際、同一の水平ライン上のマクロブロックごとの符号の先頭アドレスを記憶するマクロブロック先頭アドレス記憶手段と、同一の水平ライン上のマクロブロックごとの中間符号データを記憶するマクロブロック符号中間データ記憶手段とを備え、入力画像データに対して多値ブロックラインデータ記憶手段に格納し、その後、同一の水平ライン上のマクロブロックごと並列に符号化し、マクロブロク符号記憶手段に格納することにより、マクロブロックの垂直方向の高さのバンドメモリを必要せず、かつ、マクロブロック単位の符号データに対して編集手段によりマクロブロック単位で復号化して編集処理を施すので、マクロブロックの垂直方向の高さのバンドメモリを必要せずに画像処理を施すことができる。従って、マクロブロックの副走査方向の画素数によるメモリを用いずに、それよりも少ないサブブロックの高さを基にした画素数の多値ブロックラインデータを記憶するので、メモリを低減できる。また、符号化手段が符号データを生成する際に、マクロブロック先頭アドレス記憶手段がマクロブロックの符号中間データの先頭アドレスを記憶し、マクロブロック符号中間データ記憶手段を備えることによって、各マクロブロックごとの１ラインの終わりを検出することができるので、編集手段に送信して各マクロブロックごとに復号化して編集処理を施すことができる。この構成により、入力画像データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。この構成によって、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００２４】
また、請求項２にかかる発明は、サブブロックから構成されるマクロブロック単位に可変長符号化された画像データを入力し、編集し、復号化した後に画像処理を施して出力する画像処理装置であって、入力される前記画像データに対する編集処理内容の指定を受け付ける編集指定手段と、前記可変長符号データをマクロブロック単位で記憶するマクロブロック符号記憶手段と、前記編集指定手段によって指定された編集処理内容に応じて、前記マクロブロック符号記憶手段に記憶された可変長符号データを読み込み、復号化し、編集し、再び可変長符号化して前記マクロブロック符号記憶手段に送信する編集手段と、前記マクロブロック符号記憶手段に記憶された可変長符号データに対応する各マクロブロックのアドレスを認識するマクロブロック符号アドレス認識手段と、前記マクロブロック符号アドレス記憶手段から前記マクロブロックの先頭アドレスを受け取り、前記マクロブロック符号記憶手段から前記編集手段によって編集されたマクロブロックの可変長符号データを読み取り、順次復号化するマクロブロック復号化手段と、前記マクロブロック復号化手段による復号化に際して、前記マクロブロック符号記憶手段に記憶された同一の水平ラインの前記マクロブロックの先頭アドレスを記憶するマクロブロック先頭アドレス記憶手段と、前記マクロブロック復号化手段による復号化に際して、前記同一の水平ラインに処理する前記マクロブロックの復号化途中のデータを記憶するマクロブロック復号中間データ記憶手段と、前記マクロブロック復号中間データ記憶手段に記憶された少なくとも前記サブブロック単位の画像データを受け取り、画像処理を行う画像処理手段と、前記画像処理手段により生成された画像処理後の画像データを画像の主走査方向に順次プリンタエンジンへ転送する画像出力手段と、を備えたことを特徴とする。
【００２５】
この請求項２にかかる発明によれば、編集指定手段は、入力される画像データに対する編集処理内容の指定を受け付ける。マクロブロック符号記憶手段は、可変長符号データをマクロブロック単位で記憶する。編集手段は、編集指定手段によって指定された編集処理内容に応じて、マクロブロック符号記憶手段に記憶された可変長符号データを読み込み、復号化し、編集し、再び可変長符号化してマクロブロック符号記憶手段に送信する。マクロブロック符号アドレス認識手段は、マクロブロック符号記憶手段に記憶された可変長符号データに対応する各マクロブロックのアドレスを認識する。マクロブロック復号化手段は、マクロブロック符号アドレス記憶手段からマクロブロックの先頭アドレスを受け取り、マクロブロック符号記憶手段から編集手段によって編集されたマクロブロックの可変長符号データを読み取り、順次復号化する。マクロブロック先頭アドレス記憶手段は、マクロブロック復号化手段による復号化に際して、マクロブロック符号記憶手段に記憶された同一の水平ラインのマクロブロックの先頭アドレスを記憶する。マクロブロック復号中間データ記憶手段は、マクロブロック復号化手段による復号化に際して、同一の水平ラインに処理するマクロブロックの復号化途中のデータを記憶する。画像処理手段は、マクロブロック復号中間データ記憶手段に記憶された少なくともサブブロック単位の画像データを受け取り、画像処理を行う。画像出力手段は、画像処理手段により生成された画像処理後の画像データを画像の主走査方向に順次プリンタエンジンへ転送する。
【００２６】
この構成によって、マクロブロック復号化手段が復号化する時、同一の水平ライン上のマクロブロックごとの符号の先頭アドレスを記憶するマクロブロック先頭アドレス記憶手段と、同一の水平ライン上のマクロブロックごとの中間符号データを記憶するマクロブロック復号中間データ記憶手段を備え、同一の水平ライン上のマクロブロック単位の符号を並列に復号化することにより、少なくともサブブロック単位に画像処理部へ転送するので、マクロブロックの垂直方向の高さのバンドメモリを必要とせずに画像処理が可能となり、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００２７】
また、請求項３にかかる発明は、請求項１に記載の画像処理装置において、前記マクロブロック符号アドレス認識手段は、複数のサブブロックからなるマクロブロックで発生する符号長の合計を計算する符号長計算手段を有するものであることを特徴とする。
【００２８】
この請求項３にかかる発明によれば、請求項１に記載の画像処理装置において、マクロブロック符号アドレス認識手段は、複数のサブブロックからなるマクロブロックで発生する符号長の合計を計算する符号長計算手段を有する。この構成によって、簡易な方式でマクロブロックの符号長を計算することができ、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００２９】
また、請求項４にかかる発明は、請求項３に記載の画像処理装置において、前記マクロブロック符号アドレス認識手段は、前記符号長合計計算手段によって生成された符号長から、前記マクロブロック符号記憶手段のアドレスを計算するアドレス計算手段を有するものであることを特徴とする。
【００３０】
この請求項４にかかる発明によれば、請求項３に記載の画像処理装置において、マクロブロック符号アドレス認識手段は、符号長合計計算手段によって生成された符号長から、マクロブロック符号記憶手段のアドレスを計算するアドレス計算手段を有する。この構成によって、簡易な方式によってマクロブロック符号データのアドレスを計算できるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００３１】
また、請求項５にかかる発明は、請求項１または２に記載の画像処理装置において、前記編集手段は、前記マクロブロックの画像データを復号化して展開するマクロブロック展開記憶手段を有するものであることを特徴とする。
【００３２】
この請求項５にかかる発明によれば、請求項１または２に記載の画像処理装置において、編集手段は、マクロブロックの画像データを復号化して展開するマクロブロック展開記憶手段を有する。この構成によって、符号長で受信した画像データを簡易な方式によって展開して編集処理を施すことができるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００３３】
また、請求項６にかかる発明は、請求項５に記載の画像処理装置において、前記編集手段は、前記マクロブロック展開記憶手段に記憶された画像に合成処理を施す画像合成処理手段を有するものであることを特徴とする。
【００３４】
この請求項６にかかる発明によれば、請求項５に記載の画像処理装置において、編集手段は、マクロブロック展開記憶手段に記憶された画像に合成処理を施す画像合成処理手段を有する。この構成によって、符号長で受信した画像データを簡易な方式によって展開して合成処理を施すことができるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００３５】
また、請求項７にかかる発明は、請求項５または６に記載の画像処理装置において、前記編集手段は、前記編集指定手段によって指定された編集内容に応じて、前記マクロブロック展開記憶手段に記憶された画像データをサブブロックごとに９０度単位で回転する回転処理手段を有するものであることを特徴とする。
【００３６】
この請求項７にかかる発明によれば、請求項５または６に記載の画像処理装置において、編集手段は、編集指定手段によって指定された編集内容に応じて、マクロブロック展開記憶手段に記憶された画像データをサブブロックごとに９０度単位で回転する回転処理手段を有する。この構成によって、符号長で受信した画像データを簡易な方式によって展開して回転処理を施すことができるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００３７】
また、請求項８にかかる発明は、請求項１に記載の画像処理装置において、前記マクロブロック可変長符号化手段は、前記マクロブロック単位の画像データの水平方向に１ブロックラインの終端を検出する画像ブロックライン終端検出手段を有するものであることを特徴とする。
【００３８】
この請求項８にかかる発明によれば、請求項１に記載の画像処理装置において、マクロブロック可変長符号化手段は、マクロブロック単位の画像データの水平方向に１ブロックラインの終端を検出する画像ブロックライン終端検出手段を有する。この構成によって、マクロブロックごとの水平ラインの終端の検出が簡易化されるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００３９】
また、請求項９にかかる発明は、請求項８に記載の画像処理装置において、前記画像ブロックライン終端検出手段は、前記マクロブロック単位の画像データの水平方向の１ブロックラインの終端にリスタートマーカーを挿入するリスタートマーカー挿入手段を有するものであることを特徴とする。
【００４０】
この請求項９にかかる発明によれば、請求項８に記載の画像処理装置において、画像ブロックライン終端検出手段は、マクロブロック単位の画像データの水平方向の１ブロックラインの終端にリスタートマーカーを挿入するリスタートマーカー挿入手段を有する。この構成によって、水平ラインの終端においてリスタートマーカーによって、マクロブロックごとの水平ラインの終端の検出が簡易化されるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００４１】
また、請求項１０にかかる発明は、請求項２に記載の画像処理装置において、前記マクロブロック復号化手段は、前記マクロブロック符号記憶手段により記憶された可変長符号データの水平方向の１ブロックラインの終端を検出する符号ブロックライン終端検出手段を有し、前記符号ブロックライン終端検出手段によって検出された前記終端を使用して、前記マクロブロック符号記憶手段により記憶された可変長符号データを読み込んで復号化するものであることを特徴とする。
【００４２】
この請求項１０にかかる発明によれば、請求項２に記載の画像処理装置において、マクロブロック復号化手段は、マクロブロック符号記憶手段により記憶された可変長符号データの水平方向の１ブロックラインの終端を検出する符号ブロックライン終端検出手段を有し、符号ブロックライン終端検出手段によって検出された終端を使用して、マクロブロック符号記憶手段により記憶された可変長符号データを読み込んで復号化する。この構成によって、マクロブロックごとの水平ラインの終端の検出が簡易化されて復号化されるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００４３】
また、請求項１１にかかる発明は、請求項１０に記載の画像処理装置において、前記符号ブロックライン終端検出手段は、前記マクロブロック符号記憶手段により記憶された符号を読み込む水平方向に１ブロックラインの終端のリスタートマーカーを検出するリスタートマーカー検出手段を有するものであることを特徴とする。
【００４４】
この請求項１１にかかる発明によれば、請求項１０に記載の画像処理装置において、符号ブロックライン終端検出手段は、マクロブロック符号記憶手段により記憶された符号を読み込む水平方向に１ブロックラインの終端のリスタートマーカーを検出するリスタートマーカー検出手段を有する。この構成によって、水平ラインの終端においてリスタートマーカーによって、マクロブロックごとの水平ラインの終端の検出が簡易化されて復号化されるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００４５】
また、請求項１２にかかる発明は、入力される画像データを可変長符号化し、編集し、復号化した後に画像処理を施し、画像処理後の画像データを出力する画像処理装置であって、編集処理内容の指定を受け付ける編集指定手段と、多値のサブブロック単位の１ラインのデータを記憶する多値ブロックラインデータ記憶手段と、前記多値ブロックラインデータ記憶手段から複数のマクロブロック単位の符号を生成する第１のマクロブロック可変長符号化手段と、前記第１のマクロブロック可変長符号化手段によって生成された複数のマクロブロック単位の可変長符号データを順次記憶する第１のマクロブロック符号記憶手段と、前記第１のマクロブロック符号記憶手段に記憶された可変長符号データに対して、各マクロブロックが記憶されたアドレスを認識する第１のマクロブロック符号アドレス認識手段と、前記編集指定手段によって指定された編集処理内容に応じて、前記第１のマクロブロック符号記憶手段に記憶された可変長符号データを、前記第１のマクロブロック符号アドレス認識手段が認識する前記アドレスを使用して読み込み、復号化して編集する編集手段と、前記編集手段によって編集された画像データをマクロブロック単位に可変長符号化する第２のマクロブロック可変長符号化手段と、前記第２のマクロブロック可変長符号化手段によって生成された可変長符号データをマクロブロック単位で順次記憶する第２のマクロブロック符号記憶手段と、前記第２のマクロブロック符号記憶手段に記憶された可変長符号データに対して、各マクロブロックが記憶されたアドレスを認識する第２のマクロブロック符号アドレス認識手段と、前記第２のマクロブロック符号アドレス記憶手段から前記マクロブロックの先頭アドレスを受け取り、前記第２のマクロブロック符号記憶手段からマクロブロックの可変長符号データを読み取って、順次復号化するマクロブロック復号化手段と、前記マクロブロック復号化手段によって復号化された多値ブロックラインデータを記憶する出力用多値ブロックラインデータ記憶手段と、前記出力用多値ブロックラインデータ記憶手段に記憶された前記サブブロック単位の画像データを受け取り、画像処理を行う画像処理手段と、前記画像処理手段により生成された画像処理後の画像データを、画像の主走査方向に順次プリンタエンジンへ転送する画像出力手段と、を備えたことを特徴とする。
【００４６】
この請求項１２にかかる発明によれば、編集指定手段は、編集処理内容の指定を受け付ける。多値ブロックラインデータ記憶手段は、多値のサブブロック単位の１ラインのデータを記憶する。第１のマクロブロック可変長符号化手段は、多値ブロックラインデータ記憶手段から複数のマクロブロック単位の符号を生成する。第１のマクロブロック符号記憶手段は、第１のマクロブロック可変長符号化手段によって生成された複数のマクロブロック単位の可変長符号データを順次記憶する。第１のマクロブロック符号アドレス認識手段は、第１のマクロブロック符号記憶手段に記憶された可変長符号データに対して、各マクロブロックが記憶されたアドレスを認識する。編集手段は、編集指定手段によって指定された編集処理内容に応じて、第１のマクロブロック符号記憶手段に記憶された可変長符号データを、第１のマクロブロック符号アドレス認識手段が認識するアドレスを使用して読み込み、復号化して編集する。第２のマクロブロック可変長符号化手段は、編集手段によって編集された画像データをマクロブロック単位に可変長符号化する。第２のマクロブロック符号記憶手段は、第２のマクロブロック可変長符号化手段によって生成された可変長符号データをマクロブロック単位で順次記憶する。第２のマクロブロック符号アドレス認識手段は、第２のマクロブロック符号記憶手段に記憶された可変長符号データに対して、各マクロブロックが記憶されたアドレスを認識する。マクロブロック復号化手段は、第２のマクロブロック符号アドレス記憶手段からマクロブロックの先頭アドレスを受け取り、第２のマクロブロック符号記憶手段からマクロブロックの可変長符号データを読み取って、順次復号化する。出力用多値ブロックラインデータ記憶手段は、マクロブロック復号化手段によって復号化された多値ブロックラインデータを記憶する。画像処理手段は、出力用多値ブロックラインデータ記憶手段に記憶されたサブブロック単位の画像データを受け取り、画像処理を行う。画像出力手段は、画像処理手段により生成された画像処理後の画像データを、画像の主走査方向に順次プリンタエンジンへ転送する。
【００４７】
この構成により、多値のマクロブロック単位の符号を一時、第１のマクロブロック符号記憶手段に記憶し、その後、編集手段によってスタンプ画像などとの合成あるいはマクロブロック単位での回転処理を施して第２のマクロブロック符号記憶手段にページ単位に格納することにより、回転などの編集処理によるメモリの増加を押さえることができるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理装置を提供することができる。
【００４８】
また、請求項１３にかかる発明は、入力される画像データを可変長符号化し、編集し、復号化した後に画像処理を施し、画像処理後の画像データを出力する画像処理方法であって、入力される前記画像データに対して編集処理内容の指定を受け付ける編集指定工程と、入力される前記画像データを、マクロブロックを構成する多値のサブブロック単位のラインデータとして記憶する多値ブロックラインデータ記憶工程と、前記多値ブロックラインデータ記憶工程において記憶された前記多値ブロックラインデータを読み出して前記マクロブロック単位に可変長符号化するマクロブロック可変長符号化工程と、前記マクロブロック可変長符号化工程における可変長符号化の際に、前記マクロブロックが画像において並ぶ同一の水平ラインの前記マクロブロックの先頭アドレスを記憶するマクロブロック先頭アドレス記憶工程と、前記マクロブロック可変長符号化工程において生成された可変長符号データを前記マクロブロック単位で順次記憶するマクロブロック符号記憶工程と、前記編集指定工程によって指定された編集処理内容に従って、前記マクロブロック符号記憶工程において記憶された可変長符号データを読み込み、復号化して編集する編集工程と、前記マクロブロック先頭符号アドレス記憶工程において記憶された前記マクロブロックの先頭アドレスを読み取り、前記マクロブロック符号記憶工程において記憶された前記マクロブロックの符号データを読み取り、順次復号化するマクロブロック復号化工程と、前記マクロブロック復号化工程において復号化されたデータを記憶する出力用多値ブロックラインデータ記憶工程と、前記出力用多値ブロックラインデータ記憶工程において記憶されたサブブロック単位の画像データを受け取り、画像処理を行う画像処理工程と、前記画像処理工程によって生成された画像処理後の画像データを画像の主走査方向に順次プリンタエンジンへ転送する画像出力工程と、を含むことを特徴とする。
【００４９】
この請求項１３にかかる発明によれば、編集指定工程は、入力される画像データに対して編集処理内容の指定を受け付ける。多値ブロックラインデータ記憶工程は、入力される画像データを、マクロブロックを構成する多値のサブブロック単位のラインデータとして記憶する。マクロブロック可変長符号化工程は、多値ブロックラインデータ記憶工程において記憶された多値ブロックラインデータを読み出してマクロブロック単位に可変長符号化する。マクロブロック先頭アドレス記憶工程は、マクロブロック可変長符号化工程における可変長符号化の際に、マクロブロックが画像において並ぶ同一の水平ラインのマクロブロックの先頭アドレスを記憶する。マクロブロック符号記憶工程は、マクロブロック可変長符号化工程において生成された可変長符号データをマクロブロック単位で順次記憶する。編集工程は、編集指定工程によって指定された編集処理内容に従って、マクロブロック符号記憶工程において記憶された可変長符号データを読み込み、復号化して編集する。マクロブロック復号化工程は、マクロブロック先頭符号アドレス記憶工程において記憶されたマクロブロックの先頭アドレスを読み取り、マクロブロック符号記憶工程において記憶されたマクロブロックの符号データを読み取り、順次復号化する。出力用多値ブロックラインデータ記憶工程は、マクロブロック復号化工程において復号化されたデータを記憶する。画像処理工程は、出力用多値ブロックラインデータ記憶工程において記憶されたサブブロック単位の画像データを受け取り、画像処理を行う。画像出力工程は、画像処理工程によって生成された画像処理後の画像データを画像の主走査方向に順次プリンタエンジンへ転送する。この構成によって、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することが可能な画像処理方法を提供することができる。
【００５０】
また、請求項１４にかかる発明は、プログラムであって、請求項１３に記載の画像処理方法をコンピュータで実行することを特徴とする。
【００５１】
この請求項１４にかかる発明によれば、請求項１３に記載の画像処理方法をコンピュータで実行することができる。
【発明の効果】
【００５２】
本発明（請求項１）にかかる画像処理装置は、入力画像データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００５３】
また、本発明（請求項２）にかかる画像処理装置は、マクロブロック復号化手段が復号化する時、同一の水平ライン上のマクロブロックごとの符号の先頭アドレスを記憶するマクロブロック先頭アドレス記憶手段と、同一の水平ライン上のマクロブロックごとの中間符号データを記憶するマクロブロック復号中間データ記憶手段を備え、同一の水平ライン上のマクロブロック単位の符号を並列に復号化することにより、少なくともサブブロック単位に画像処理部へ転送するので、マクロブロックの垂直方向の高さのバンドメモリを必要とせずに画像処理が可能となり、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００５４】
また、本発明（請求項３）にかかる画像処理装置は、簡易な方式でマクロブロックの符号長を計算することができ、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００５５】
また、本発明（請求項４）にかかる画像処理装置は、簡易な方式によってマクロブロック符号データのアドレスを計算できるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００５６】
また、本発明（請求項５）にかかる画像処理装置は、符号長で受信した画像データを簡易な方式によって展開して編集処理を施すことができるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００５７】
また、本発明（請求項６）にかかる画像処理装置は、符号長で受信した画像データを簡易な方式によって展開して合成処理を施すことができるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００５８】
また、本発明（請求項７）にかかる画像処理装置は、符号長で受信した画像データを簡易な方式によって展開して回転処理を施すことができるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００５９】
また、本発明（請求項８）にかかる画像処理装置は、マクロブロックごとの水平ラインの終端の検出が簡易化されるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００６０】
また、本発明（請求項９）にかかる画像処理装置は、水平ラインの終端においてリスタートマーカーによって、マクロブロックごとの水平ラインの終端の検出が簡易化されるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００６１】
また、本発明（請求項１０）にかかる画像処理装置は、マクロブロックごとの水平ラインの終端の検出が簡易化されて復号化されるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００６２】
また、本発明（請求項１１）にかかる画像処理装置は、水平ラインの終端においてリスタートマーカーによって、マクロブロックごとの水平ラインの終端の検出が簡易化されて復号化されるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００６３】
また、本発明（請求項１２）にかかる画像処理装置は、多値のマクロブロック単位の符号を一時、第１のマクロブロック符号記憶手段に記憶し、その後、編集手段によってスタンプ画像などとの合成あるいはマクロブロック単位での回転処理を施して第２のマクロブロック符号記憶手段にページ単位に格納することにより、回転などの編集処理によるメモリの増加を押さえることができるので、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００６４】
また、本発明（請求項１３）にかかる画像処理方法は、入力データを可変長符号化して編集処理を施すとともに、メモリの増加を抑え、高画質な画像を高速処理することができるという効果を奏する。
【００６５】
また、本発明（請求項１４）にかかるプログラムは、請求項１３に記載の画像処理方法をコンピュータで実行することができるという効果を奏する。
【発明を実施するための最良の形態】
【００６６】
以下に添付図面を参照して、この発明にかかる画像処理装置、画像処理方法、およびその方法をコンピュータで実行するプログラムの最良な実施の形態を詳細に説明する。
【００６７】
（１．実施の形態１）
（１．１．実施の形態１による画像処理装置の概略構成）
図１は、本発明の実施の形態１による画像処理部の機能的ブロック図である。実施の形態１による画像処理装置は、スキャナ９、操作パネル３０、８ラインメモリ１１、符号化部１２、入出力用符号メモリ領域４１、編集部１３，ページ復号化部１４，画像処理部１５、およびプリンタエンジン１７を備える。符号化部１２は、マクロブロック先頭アドレス記憶部１２３、およびマクロブロック復号中間データ記憶部１２３４を備える。編集部１３は、マクロブロック符号アドレス認識部１３０３２を備える。ページ復号化部１４は、マクロブロック先頭アドレス記憶部１４５、マクロブロック符号アドレス認識部１４４、およびマクロブロック復号化シフト値記憶部１４３１７２を含む。
【００６８】
ここで、入出力用符号メモリ領域４１は、本発明におけるマクロブロック符号記憶手段を構成する。操作パネル３０は、編集指定手段を構成する。８ラインメモリ１１は多値ブロックラインデータ記憶手段を構成する。符号化部１２は、マクロブロック可変長符号化手段を構成する。入出力用符号メモリ領域４１はマクロブロック符号記憶手段を構成する。編集部１３は編集手段を構成する。ページ復号化部１４はマクロブロック復号化手段を構成する。プリンタエンジン１７は、画像処理手段を構成する。
【００６９】
また、マクロブロック先頭アドレス記憶部１２３は、マクロブロック先頭アドレス記憶手段を構成する。マクロブロック復号中間データ記憶部１２３４は、マクロブロック符号中間データ記憶手段（請求項１）を構成する。マクロブロック符号アドレス認識部１３０３２は、マクロブロック符号アドレス認識手段を構成する。
【００７０】
また、マクロブロック先頭アドレス記憶部１４５およびマクロブロック符号アドレス認識部１４４は、マクロブロック符号アドレス認識手段（請求項２）を構成する。また、マクロブロック先頭アドレス記憶部１４５は、マクロブロック先頭アドレス記憶手段を構成する。マクロブロック復号化シフト値記憶部１４３１７２は、マクロブロック復号中間データ記憶手段を構成する。図１に示した上記各部については、以下に詳細に説明する。
【００７１】
図２は、実施の形態１による画像処理装置のハードウェア構成図である。画像処理装置は、ＣＰＵ１、ＣＰＵＩ／Ｆ２、メモリコントローラ３、メモリ４、ローカルバスＩ／Ｆ５、ＲＯＭ６、パネルコントローラ７、操作パネル８、スキャナ９、平滑フィルタ処理部１０、８ラインメモリ１１、符号化部１２、編集部１３、ページ復号化部１４、画像処理部１５、エンジンコントローラ１６、プリンタエンジン１７、ＨＤＤ制御部１８、ＨＤＤ（ハードデイスク）部１９を備える。
【００７２】
ＣＰＵ１は、コピー機器を全体の制御を行う。ＣＰＵＩ／Ｆ２は、メモリコントローラ３に接続され、ＣＰＵ１とメモリコントローラ３の間のインタフェースを処理する。
【００７３】
メモリコントローラ３は、メモリ４をコントロールし、ＣＰＵ１、ローカルバスＩ／Ｆ５、編集処理部１３、ページ復号化部１４、画像処理部１５、符号化部１２、およびバスＩ／Ｆ１１と、メモリ４との転送をコントロールする。
【００７４】
メモリ４は、スキャナ９からの画像や、ＣＰＵ１のプログラムや各種データを格納する。ローカルバスＩ／Ｆ５は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）６、およびパネルコントローラ７などと、ＣＰＵ１、およびメモリ４などとのインタフェースを処理する。ＲＯＭ６は、文字などのフォント情報や、ＣＰＵ１のプログラムなどを格納する。
【００７５】
パネルコントローラ７は、操作パネル８をコントロールする。操作パネル８は、ユーザーからの操作を受け付ける。スキャナ９は、ＣＣＤにより画像を読み込む。
【００７６】
平滑フィルタ処理部１０は、スキャナ９から読み込んだ画像データに対して、シェ−デイング補正、ＭＴＦγ補正などの画像処理を施す。
【００７７】
８ラインメモリ１１は、平滑フィルタ処理部１０により画像処理を施されたデータを、符号化部１２が符号化処理するのに必要な１つのサブブロックの副操作方向のサイズのラインの画像データを格納する。
【００７８】
また、パイプライン処理を施す為にトグルのメモリ構成であり、スキャナ９からの画像データの入力と、符号化部１２への出力を同時に実行可能である。
【００７９】
符号化部１２は、８ラインメモリ１１の画像処理を施されたデータを符号化し、メモリ４へ転送する。
【００８０】
編集部１３は、メモリ４に貯えられたスキャナ画像を符号化した符号データに、別の文字画像などを合成処理を施し、９０度単位の回転処理を施し、メモリ４に再度転送する。
【００８１】
ページ復号化部１４は、編集部１３により符号化された画像データを受信し、復号化し、サブブロック単位に画像処理部１５へ転送する。
【００８２】
画像処理部１５は、ページ復号化部によって復号化された画像データをサブブロック単位に色変換処理や階調処理を施し、２値データになった画像を、エンジンコントローラ１６へ転送する。
【００８３】
エンジンコントローラ１６は、画像処理部１５により生成されたデータを受信し、プリンタエンジン１７をコントロールする。
【００８４】
ＨＤＤ制御部１８は、ＨＤＤ１９を制御し、メモリ４のデータをＨＤＤ１９への転送と、ＨＤＤ１９のデータをメモリ４へ転送する。ＨＤＤ（ハードデイスク）部１９は、スキャナ９などの画像データや、符号化された画像データを格納する。
【００８５】
図３は、画像処理装置による画像形成の全体的な流れを説明するフローチャートである。画像処理装置は、先ずスキャナ９から多値のＲＧＢの画像データを読み込む（ステップＳ１０１）。平滑フィルタ処理部１０はスキャナ９から読み込んだ画像データをシェ−デイング補正、ＭＴＦγ補正などの画像処理を施す（ステップＳ１０２）。
【００８６】
符号化部１２は、平滑フィルタ処理部１０にて画像処理を施されたＲＧＢ画像データを符号化する（ステップＳ１０３）。符号化されたＲＧＢ符号データは、メモリ４に格納される（ステップＳ１０４）。
【００８７】
復号化部１４は、メモリ４に貯えられたＲＧＢ符号データを復号化する（ステップＳ１０５）。画像処理部１５は、色補正処理を施し、ＲＧＢ画像データからＣＭＹＫ画像データへ変換する（ステップＳ１０６）。画像処理部１５は、変換された画像データに対して階調処理を施し、ＣＭＹＫ画像データを２値のＣＭＹＫデータに変換する（ステップＳ１０８）。エンジンコントローラ１６は、２値ＣＭＹＫデータを印刷する。
【００８８】
（１．２．メモリの構成）
図４は、実施の形態１による画像形成処理の全体的な流れとメモリの関係を説明する図である。図２および３で説明した以外を補足的に説明する。８ラインメモリ１１は、スキャナ９によって読み込まれ平滑化フィルタ１０によって画像処理を施されたデータを一時、格納する。
【００８９】
メモリ４は、入出力用符号メモリ領域４１、ページ符号メモリ領域４２、ページマクロブロック先頭アドレス格納領域４３、およびメインメモリ４７を含む。
【００９０】
符号化部１２（ページ符号化部）は８ラインメモリ１１からの画像データをマクロブロックの主操作方向のサイズにより順次、符号化を切り換え、メモリ４の入出力用符号メモリ領域４１へ主操作方向へ分割された複数のマクロブロック符号を書き込む。
【００９１】
メモリ４は、符号化部１２により生成された主操作方向に連なる複数のマクロブロックの符号を、入出力用符号メモリ領域４１において格納する。
【００９２】
符号化部１２により生成されたページ単位の複数の主操作方向に連なるマクロブロックの符号は、ページ符号メモリ領域４２で格納し、該マクロブロックの先頭アドレスをページマクロブロック先頭アドレス格納領域４３で格納する。ページ符号化部１２により合成処理を施されたマクロブロックごとの符号はページ単位で、ページ符号メモリ領域４２で格納され、該先頭アドレスはページマクロブロック先頭アドレス格納領域４３で格納される。
【００９３】
符号４１１は入出力用符号メモリフォーマット例、符号４１２はマクロブロックの一例、符号４１４はページ符号メモリフォーマット例、符号４２０はページマクロブロック先頭アドレスフォーマット例を模式的に示した。
【００９４】
編集部１３は、復号化部１３６、編集処理部１３７、合成メモリ１３８、およびページ符号化部１３９、を備える。
【００９５】
ページ符号化部１３９は、入出力用符号メモリ領域４１からマクロブロックごとの符号を順次読み込み復号化し、編集処理部１３７へ転送する。編集処理部１３７は、復号化部１３６から受信した復号化された画像データを、合成メモリ１３６へ展開し、かつ合成する文字画像などをメインメモリ４７から読み込んで合成処理を施し、合成処理を施した後、回転方向に読み込んで、ページ符号化部１３９へ転送する。
【００９６】
ここでページ符号化部１３９は、本発明における第２のマクロブロック可変長符号化手段を構成する。
【００９７】
合成メモリ１３８は、復号化されたマクロブロックの画像を格納する。
【００９８】
ページ符号化部１３９は、編集処理部１３７からの編集処理を施されたマクロブロック単位の画像を符号化し、ページ符号メモリ領域４２へ書き込む。かつ、書き込まれる符号化画像データの先頭アドレスをページマクロブロック先頭アドレス格納領域４３に書き込む。
【００９９】
この時、各マクロブロックの符号の符号長を計測することにより、マクロブロックごとの先頭アドレスを求め、メモリ４のページマクロブロック先頭アドレス格納領域４３へ書き込む。
【０１００】
ページ復号化部１４は、ページマクロブロック先頭アドレス格納領域４３に格納されたマクロブロック先頭アドレスをアクセスし、ページ符号メモリ領域４２に格納されたマクロブロックの符号を読み込んで、復号化して、サブブロック単位に画像処理部１５へ出力する画像データを生成する。
【０１０１】
画像処理部１５は、ページ復号化部１４から出力する画像データ受信し、画像処理を施し、ラインメモリ２０を経由して、プリンタエンジン１７へ転送する。
【０１０２】
図５は、メインメモリ４のファーマットの一例を示す模式図である。入出力用符号メモリ領域４１は、スキャナ９からの画像データをマクロブロック単位に符号化された符号データを格納する領域であり、ＨＤＤ２０へ格納する際に符号データを一時格納するメモリ領域でもある。
【０１０３】
ページ符号メモリ領域４２は、入出力用符号メモリ領域４１のマクロブロック単位の符号データに対して回転処理や、合成処理を施した後の複数ページのマクロブロック単位の符号データを格納する領域である。
【０１０４】
ページマクロブロック先頭アドレス格納領域４３は、ページ符号メモリ領域４２の複数ページの符号化されたマクロブロックの符号の先頭アドレスを格納する領域である。
【０１０５】
プログラム領域４４は、各種のＣＰＵ１のプログラムを格納する領域である。
【０１０６】
図６は、入出用符号メモリのフォーマットの一例を示す模式図である。入出用符号メモリ４１１は、ｍ＊ｍ画素の複数のマクロブロック４１２で構成される。マクロブロック４１２は、ｎ＊ｎの画素からなる複数のサブブロック４１３から構成される。
【０１０７】
図７は、ページ符号メモリ領域のマクロブロックの一例を示す模式図である。ページ符号メモリ領域のマクロブロック４１４は、ｎ＊ｎの画素からなる複数のサブブロック４１３から構成されており、水平方向の終端にリスタートマーカー４５２が挿入されている。
【０１０８】
（１．３．各処理の流れとメモリの関係）
図８は、スキャナ入力、入力データ符号化、編集処理、およびページ符号化処理の流れを説明する図である。スキャナ９から読み込まれたデータは、平滑フィルタ処理部へ転送される（ａ）。平滑フィルタ処理部１０によって画像処理が施され（ｂ）、８ラインメモリ１１へ書き込まれる。８ラインメモリ１１の画像データは読み込まれて符号化される（ｃ）。符号化された符号データは、メモリ４へ書き込まれる（ｄ）。メモリコントローラ３は符号データをメモリ４から読み込み編集部１３へ転送する（ｅ）。編集部１３は、符号データを復号化し画像を編集後、再度符号化して、符号データをメモリ４へ格納する（ｆ）。
【０１０９】
図９は、復号化処理および印刷処理の流れを説明する図である。メモリコントローラ３は、符号データをメモリ４から読み込みページ復号化部１４へ転送する（ｇ）（ｈ）。ページ復号化部１４は、符号データに対して復号化処理を施し、画像処理部１５へ転送する（ｉ）。画像処理部１５は、ページ復号化部１４から復号化された画像データを受信し、画像処理を施す（ｊ）。エンジンコントローラ１６は、画像処理を施した後のデータをプリンタエンジン１７へ転送する（ｋ）。
【０１１０】
図１０は、符号化処理およびＨＤＤへの格納の流れを説明する図である。スキャナ９から読み込まれたデータが処理されてメモリ４へ書き込まれるまでの（ａ）〜（ｄ）は、図８で説明したのと同様であるので説明を省略する。ＨＤＤ制御部１８は、メモリ４から、符号データを読み込む（ｅ）。ＨＤＤ制御部１８は、受信した符号データをＨＤＤへ書き込む（ｆ）。
【０１１１】
図１１は、ＨＤＤからの符号データの読み出し、編集処理、およびページ符号化処理の流れを説明する図である。ＨＤＤ制御部１８は、ＨＤＤ１９から符号データを読み込む（ｇ）。ＨＤＤ制御部１８は、読み込まれた符号データをメモリ４へ書き込む（ｈ）。メモリコントローラ３は、書き込まれた符号データをメモリ４から読み込み、編集部１３へ転送する（ｉ）。編集部１３は、符号データを復号化し、画像を編集後に再度符号化して、再度符号化された符号データをメモリ４へ格納する（ｊ）。
【０１１２】
図１２は、スキャナ９入力、および符号化処理の流れを説明する図である。スキャナ９から読み込まれたデータは、平滑フィルタ処理部へ転送される（ａ）。平滑フィルタ処理部１０によって画像処理を施され、８ラインメモリ１１へ書き込まれる（ｂ）。符号化部１２は、８ラインメモリ１１の画像データを読み込み、符号化し、符号化された符号を、メモリ４の入出力用符号メモリ領域４１へ書き込む（ｄ）。
【０１１３】
図１３は、編集処理およびページ符号化処理の流れを説明する図である。編集部１３における復号化部１３６は、メモリ４の入出力用符号メモリ領域４１から符号データを読み込み復号化する（ｅ）。編集部１３の復号化部１３６は、復号化された画像データを編集処理部１３７へ転送する（ｆ）。編集部１３の編集処理部１３７は、受信した画像を合成メモリ１３８へ書き込む（ｇ）。編集部１３の編集処理部１３７は、合成メモリ１３８に書き込まれた画像データを、回転方向に読み込んで（ｈ）、読み込まれた画像データをページ符号化部１３９へ転送する（ｉ）。編集部１３のページ符号化部１３９は、画像データをマクロブロック単位に符号化し、マクロブロックの先頭アドレスをメインメモリ４のページマクロブロック先頭アドレス格納領域４３へ順次書き込む（ｊ）。編集部１３のページ符号化部１３７は、画像データをマクロブロック単位に符号化し、メインメモリ４のページ符号メモリ領域４２へ順次書き込む。
【０１１４】
図１４は、ページ復号化処理および印刷出力の流れを説明する図である。ページ復号化部１４は、メインメモリ４のページマクロブロック先頭アドレス格納領域４３からマクロブロック先頭アドレスを読み込む（ｌ）。ページ復号化部１４は、読み取られたマクロブロックの先頭アドレスに基づいて、マクロブロック単位の符号データを、メインメモリ４のページ符号メモリ領域４２から読み込む（ｍ）。ページ復号化部１４は、読み取られたマクロブロックの符号を復号化し、画像処理部１５へ転送する（ｏ）。画像処理部１５は、ページ復号化部１４から画像データを読み込み、画像処理を施し、画像処理を施された画像データはラインメモリ２０に送信される（ｐ）。エンジンコントローラ１６（図２）は、画像処理を施した後のデータをプリンタエンジン１７へ転送する（ｑ）。
【０１１５】
図１５は、符号化処理、ＨＤＤへの格納、編集処理、およびページ符号化処理の流れを説明する図である。スキャナ９による読み込み（ａ）〜メモリ４の入出力用符号メモリ領域４１への書き込み（ｄ）は、図１２において説明したと同様であるので説明を省略する。ＨＤＤ制御部１８はメモリ４から符号を読み込み（ｅ）、ＨＤＤ制御部１８は受信した符号をＨＤＤへ書き込む（ｆ）。
【０１１６】
ＨＤＤ制御部１８は、逆にＨＤＤ１９からマクロブロック単位の符号データを読み込み（ｇ）、ＨＤＤ制御部１８は読み込まれたマクロブロック単位の符号データをメインメモリ４の入出力符号メモリ領域４１へ書き込む（ｈ）。編集部１３の復号化部１３６は、メモリ４の入出力用符号メモリ領域４１から符号データを読み込み復号化する工程（ｉ）から印刷出力までは、図１３および図１４において説明したと同様であるので説明を省略する。
【０１１７】
（１．４．符号化部）
図１６は、実施の形態１による画像処理装置の符号化部の機能的ブロック図である。画像処理装置の符号化部１２は、符号化処理部１２２、マクロブロック先頭アドレス記憶部１２３、メモリアドレス生成部１２４、メモリコントローラＩ／Ｆ１２５、およびコントローラ１２６を備える。
【０１１８】
ここで、マクロブロック先頭アドレス記憶部１２３は、本発明のマクロブロック先頭アドレス記憶手段を構成する。
【０１１９】
８ラインメモリ１１は、８＊８画素単位で符号化するＪＰＥＧの場合の１ブロックラインの画像処理を施した後の画像を格納するメモリである。
【０１２０】
符号化処理部１２２は、８ラインメモリ１１から水平方向に８＊８画素を順次読み込み、ＪＰＥＧなどの符号化方式により符号化し、符号データをメモリコントローラＩ／Ｆ１２５へ転送する。この時、符号化処理部１２２は図１９に示したように、水平方向に複数のマクロブロック単位に符号化する為に、水平方向にマクロブロックの境界を判断し、符号化を中断し、かつ現在のメモリ４へ書き込んだマクロブロックの符号の先頭アドレスと、符号化の途中の符号化データ（ＪＰＥＧの場合はハフマン符号化途中の符号データとその符号の先頭アドレスを管理するシフト値など）を一時記憶し、順次マクロブロックの符号化を行い、複数のマクロブロックの符号を作成していく。そして次のブロックラインの８ラインのデータを処理する際に、同じマクロブロックの途中の符号化データとマクロブロックの符号の先頭アドレスを読み込み、そのマクロブロックの符号化の続きを処理することにより、８ラインメモリ１１のような１ブロックラインのラインメモリのみで、ｎ＊ｎの画素のマクロブロック単位の符号化を行うことを可能とする。
【０１２１】
マクロブロック先頭アドレス記憶部１２３は、符号化処理部１２２から、現在処理しているマクロブロックの番号とマクロブロック切り換わり信号とを受信し、メモリアドレス生成部１２４からの符号メモリアドレスを受信し、符号化処理部１２２が処理しているマクロブロックが切り換わる時に、切り換わる以前のマクロブロックの終端の符号のメモリアドレスを８ラインメモリ１１に水平方向に連なる複数のマクロブロックごと記憶し、次のブロックライン時に各々のマクロブロックを処理する時に、そのマクロブロックの終端の符号のメモリアドレスをメモリアドレス生成部１２４へ送ることによって、各マクロブロックの符号化の継続を行うことを可能とする。
【０１２２】
メモリアドレス生成部１２４は、マクロブロック先頭アドレス記憶部１２３から現在処理中のマクロブロックの符号の先頭アドレスを受信し、記憶し、符号化処理部１２２から符号データイネーブル信号を受信し、符号データを書き込みを認識し、次の符号の書き込みアドレスへカウントＵＰし、水平ラインに連なる複数の符号のメモリアドレスを生成することを可能とする。
【０１２３】
メモリコントローラＩ／Ｆ１２５は、符号化処理部１２２からの符号データを受信し、メモリアドレス生成部１２４から符号データのアドレスを受信し、メモリコントローラ３へ書き込む符号データとそのアドレスを転送する。コントローラ１２６は、符号化部１２の全体を制御する。
【０１２４】
図１７−１および１７−２は、符号化処理手順を説明するフローチャートである。図１８−１は、８ラインメモリフォーマットの一例を示す模式図である。図１８−２は、マクロブロックにおけるサブブロックの処理の方向を説明する図である。図１９は、画像データの符号化フォーマットの一例を説明する図である。
【０１２５】
マクロブロック先頭アドレス記憶部１２３へ、水平方向に連なる複数のマクロブロックをメモリ４の入出力用符号メモリ領域４１へ記憶させる先頭アドレスを設定する（ステップＳ２０１）。ここで、複数の符号を並列に作成する為に、各マクロブロックの符号のサイズはまずは大き目に確保しておく。
【０１２６】
垂直方向のマクロブロック内のサブブロックのカウンタ”Ｊ”を初期設定する（ステップＳ２０２）。８ラインメモリ１１に１ブロックラインの平滑フィルタ処理を施した後の画像データを格納し、トグルの８ラインメモリ１１を切り換える（ステップＳ２０３）。
【０１２７】
水平方向のマクロブロックのカウンタ”Ｉ”を初期設定する（ステップＳ２０４）。マクロブロック先頭アドレス記憶部１２３から、Ｉ番目のマクロブロックの符号を格納する先頭アドレスを受け取る（ステップＳ２０５）。マクロブロック符号中間データ記憶部１２３４（図２０後述）から、Ｉ番目のマクロブロックの符号化の途中のデータを符号フォーマット生成部１２３３（図２０後述）へ設定する（ステップＳ２０６）。
【０１２８】
８ラインメモリ１１から、水平方向にＩ番目のマクロブロックのＪブロックラインの画像データを読み込む（ステップＳ２０７）。
【０１２９】
Ｉ番目のマクロブロックのＪブロックライン目のサブブロックごとに準じ、０〜Ｍまで図１８−１に示されたように符号化して行く（ステップＳ２０８）。
【０１３０】
Ｉ番目のマクロブロックの符号を、メインメモリ４の入出力用符号メモリ領域４１のＩ番目のマクロブロック先頭アドレスが示すアドレスへマクロブロック先頭アドレス記憶部１２３へ順次格納する（ステップＳ２０９）。
【０１３１】
メモリアドレス生成部１２４は、符号化処理部１２２から符号長を受信し、かつマクロブロック先頭アドレス記憶部１２３からマクロブロックの先頭アドレスを受信し、マクロブロックの先頭アドレスを求める（ステップＳ２１０）。
【０１３２】
符号フォーマット生成部１２３３は、マクロブロック符号中間データ記憶部１２３４へ、Ｉ番目のマクロブロックの符号化途中のデータを転送し、記憶させる（ステップＳ２１１）。
【０１３３】
マクロブロック先頭アドレス記憶部１２３は、メモリアドレス生成部１２４からのＩ番目のマクロブロック先頭アドレスを受信し記憶する（ステップＳ２１２）。
【０１３４】
水平方向のマクロブロックのカウンタ”Ｉ”をカウントＵＰする（ステップＳ２１３）。
【０１３５】
水平方向のマクロブロックを全て処理したか否かを判断し（ステップＳ２１４）、未だであると判断した場合は（ステップＳ２１４のＮｏ）、Ｂ即ちステップＳ２０５へ戻る。全てを処理したと判断した場合（ステップＳ２１４のＹｅｓ）、垂直方向のマクロブロック内のサブブロックのカウンタ”Ｊ”をカウントＵＰする（ステップＳ２１５）。
【０１３６】
垂直方向のマクロブロック内のサブブロックを全て処理したか否かを判断する（ステップＳ２１６）。未だであると判断した場合（ステップＳ２１６のＮｏ）、Ｃ即ち、ステップＳ２０３へ戻る。全て処理したと判断した場合（ステップＳ２１６のＹｅｓ）、１ページの符号化を終了したか否かを判断する（ステップＳ２１７）。未だであると判断した場合（ステップＳ２１７のＮｏ）、Ｄ即ち（ステップＳ）２０１へ戻り、終了したと判断した場合、そのまま終わる（ステップＳ２１７のＹｅｓ）。
【０１３７】
（１．４．１．符号化処理部）
図２０は、実施の形態１による符号化部における符号化処理部のブロック図である。符号化処理部１２２は、８＊８バッファ１２２１、８ラインメモリアドレス生成部１２２２、ＲＧＢ−＞ＹＵＶ変換部１２２３、ＹＤＣＴ処理部１２２４、Ｙ量子化処理部１２２５、Ｙエントロピー符号化部１２２６、ＵＤＣＴ処理部１２２７、Ｕ量子化処理部１２２８、Ｕエントロピー符号化部１２２９、ＶＤＣＴ処理部１２４０、Ｖ量子化処理部１２４１、Ｖエントロピー符号化部１２４２、符号フォーマット生成部１２３３、およびマクロブロック符号中間データ記憶部１２３４を備える。
【０１３８】
ここで、マクロブロック符号中間データ記憶部１２３４は、本発明におけるマクロブロック符号中間データ記憶手段を構成する。
【０１３９】
８＊８バッファ１２２１は、サブブロックの８＊８画像を格納する。８ラインメモリアドレス生成部１２２２は、８ラインメモリ１１からの８＊８のサブブロックの画像の先頭アドレスを生成する（図２１に詳細なブロック図を示す）。
【０１４０】
ＲＧＢ−＞ＹＵＶ変換部１２２３はＪＰＥＧの規格にもとづき、８＊８画素のＲＧＢをＹＵＶへ変換し、Ｙ成分をＹＤＣＴ処理部１２２４へ、Ｕ成分をＵＤＣＴ処理部１２２７へ、Ｖ成分をＶＤＣＴ処理部１２４６へ転送する。
【０１４１】
ＹＤＣＴ処理部１２２４は、Ｙ成分をＤＣＴ（離散コサイン変換）を行い、量子化処理部１２２５へ転送する。Ｙ量子化処理部１２２５は、ＹＤＣＴ処理部１２２４からのＹ成分のＤＣＴ処理を施した後のデータを受信し量子化し、Ｙエントロピー符号化部１２２６へ転送する。Ｙエントロピー符号化部１２２６は、量子化処理部１２２５からのＹ成分の量子化後のデータを受信し、ハフマン符号化方式で符号化し、符号フォーマット生成部１２３３へ転送する。以下、図中ＵおよびＶについても上記のＹについての処理と同様の処理を施すものである（図２３に、詳細なブロック図を示す）。
【０１４２】
ＵＤＣＴ処理部１２２７は、Ｕ成分をＤＣＴ（離散コサイン変換）を行い、量子化処理部１２２８へ転送する。Ｕ量子化処理部１２２８は、ＵＤＣＴ処理部１２２７からのＵ成分のＤＣＴ処理を施した後のデータを受信し量子化し、Ｕエントロピー符号化部１２２９へ転送する。Ｕエントロピー符号化部１２２９は、量子化処理部１２２８からのＵ成分の量子化後のデータを受信し、ハフマン符号化方式で符号化し、符号フォーマット生成部１２３３へ転送する。
【０１４３】
ＶＤＣＴ処理部１２４０は、Ｖ成分をＤＣＴ（離散コサイン変換）を行い、量子化処理部１２４１へ転送する。Ｖ量子化処理部１２４１は、ＶＤＣＴ処理部１２４０からのＶ成分のＤＣＴ処理を施した後のデータを受信し量子化し、Ｖエントロピー符号化部１２４２へ転送する。Ｖエントロピー符号化部１２４２は、量子化処理部１２４０からのＶ成分の量子化後のデータを受信し、ハフマン符号化方式で符号化し、符号フォーマット生成部１２３３へ転送する。
【０１４４】
符号フォーマット生成部１２３３はエントロピー符号化部１２２６、１２２９、１２４２からの符号データを受信し符号を形成する（図２８に詳細なブロック図を示す）。
【０１４５】
マクロブロック符号中間データ記憶部１２３４は、符号フォーマット生成部１２３３から符号化途中のデータとマクロブロック番号を受信し、指定されたマクロブロック領域へ符号化途中のデータを格納する（図２９に詳細なブロック図を示す）。
【０１４６】
（１．４．２．８ラインメモリアドレス生成部）
図２１は、８ラインメモリアドレス生成部の詳細なブロック図である。８ラインメモリアドレス生成部１２２２の加算器１２２２１は、水平方向の処理したサブブロックの数を求める。
【０１４７】
レジスタ１２２２２は、加算器１２２２１により求めた水平方向に処理したサブブロックの数を格納する。また、１ブロックラインのデータを全て処理した後、初期値へ戻る。
【０１４８】
乗算器１２２２３は、レジスタ１２２２２で取得したレジスタの値に１ブロックのワード数を乗算し、８ラインメモリ１１のアドレスを求める。
【０１４９】
比較部１２２２４は、サブブロックの数とマクロブロック内のサブブロックの数を比較し、次のマクロブロックへの切り換わり信号を生成する。
【０１５０】
加算器１２２２５は、処理した水平方向のマクロブロック数を求める。レジスタ１２２２６は、加算器１２２２５により取得した水平方向に処理したマクロブロックの数を格納する。また、１ブロックラインのデータを全て処理した後、初期値へ戻る。
【０１５１】
比較部１２２２７は、マクロブロックの数と８ラインメモリ１１に格納しているマクロブロック数と比較し、８ラインメモリ１１の切り換わり信号を生成する。
【０１５２】
コントローラ１２２２８は、８ラインメモリアドレス生成部をコントロールする。
【０１５３】
図２２は、ＭＣＵの一例を示す模式図である。まずＹの符号を作成し、次にＵの符号化、次にＶの符号化を行う。
【０１５４】
（１．４．３．エントロピー符号化部）
図２３は、符号化処理部におけるエントロピー符号化部の詳細なブロック図である。図２４−１は、ＡＣ符号化手順を説明する図である。図２４−２は、ＤＣ符号化手順を説明する図である。図２５は、ＤＣ／ＡＣ値切り出し処理を説明する図である。図２６は、ＤＣ値符号化部を説明する図である。図２７は、ＡＣ値符号化部を説明する図である。図２３〜２７を参照しながら、符号化処理部１２２におけるエントロピー符号化部１２２６について説明する。
【０１５５】
８＊８ＤＣＴ係数格納部１２２６１であり、ＤＣＴ処理を施した後の８＊８のＤＣＴ係数を格納している。
【０１５６】
ＤＣ／ＡＣ値切り出し部１２２６２は、図２４−１および２４−２に示したように、８＊８ＤＣＴ係数格納部１２２６１から、ＤＣ値とＡＣ値を図２５のようにＤＣ値を１つ、ＡＣ値を６３個切り出し、ＤＣ値を、ＤＣ値符号化部１２２６３へ、ＡＣ値をＡＣ値符号化部１２２６４へ転送する。
【０１５７】
ＤＣ値符号化部１２２６３は、ＤＣ／ＡＣ値切り出し部１２２６２から受信したＤＣ値を、図２６のようにＤＣ値のハフマンテーブルによりＤＣ符号とその符号長を求める。
【０１５８】
ＡＣ値符号化部１２２６４は、ＤＣ／ＡＣ値切り出し部１２２６２から受信したＡＣ値を図２７に示すように、ＡＣ値のハフマンテーブル２８０１〜２８０４によりＡＣ符号とその符号長を求める。
【０１５９】
符号フォーマット処理部１２２６５はＤＣ、ＡＣ値符号化部１２２６３、１２２６４からのＤＣ、ＡＣ符号と、その符号長を１つの符号と符号長にまとめる。
【０１６０】
（１．４．４．符号フォーマット生成部）
図２８は、符号化部の符号化処理部における符号フォーマット生成部の詳細なブロック図である。符号フォーマット生成部１２３３のＭＵＸ１２３３１は、図２０のエントロピー符号化部１２２６、１２２９、１２４２からのＹ、Ｕ、Ｖの符号を選択する。この例では図２２に示したＭＣＵの順序と同様に、まずＹの符号を作成し、次にＵの符号化、次にＶの符号化を行う。
【０１６１】
シフター１２３３２は、生成された符号を順次１つのワード長のデータに接続して行う為に接続した符号のワード内の先頭のアドレス（加算器１２３３７により生成される）により、シフトしたデータを生成する。
【０１６２】
レジスタ１２３３３は、シフター１２３３２によりシフトされた後の符号データを一時格納する。
【０１６３】
ＭＵＸ１２３３４は、図２０のエントロピー符号化部１２２６、１２２９、１２４２からのＹ、Ｕ、Ｖの符号を選択する。
【０１６４】
ＭＵＸ１２３３５は、通常時は加算機１２３３７の１つのワード長のデータに接続して行く為に接続した符号のワード内の先頭のアドレスを順次求める為に、加算器１２３３７の処理結果を、レジスタ１２３３６へ転送し、図１７−１ステップＳ２０６で示されたように、図２０のマクロブロック符号中間データ記憶部１２３４から、Ｉ番目のマクロブロックの符号の中間データとして、格納したシフト値を設定する場合、マクロブロック符号中間データ記憶部１２３４からシフト値をレジスタ１２３３６へ転送する。
【０１６５】
レジスタ１２３３６は、１つのワード長のデータに接続して行く為に接続した符号のワード内の先頭のアドレスを順次求める為にシフター１２３３２がシフトする値を格納し、図１２−２のステップＳ２１１に示されたように、図２０のマクロブロック符号中間データ記憶部１２３４へ、Ｉ番目のマクロブロックの符号の中間データとして、格納したシフト値を設定する場合、マクロブロック符号中間データ記憶部１２３４へシフト値を転送する。
【０１６６】
加算器１２３３７は、ＭＵＸ１２３３４で選択された符号長と累積された１ワード内のシフト値を加算し、次の符号の先頭のシフト値を求め、ＭＵＸ１２３３５へ転送する。
【０１６７】
ＯＲ部１２３３８は、シフトされた符号データ１２３３３と累積された１ワード内の中間符号データをＯＲ処理を施し、サブブロックごとの符号データを１ワード単位に接続し、ＭＵＸ１２３３９へ転送する。
【０１６８】
ＭＵＸ１２３３９は、通常時は１つのワード長のデータ１２３３８に接続して行く為に接続した符号のワードを求める為に、ＯＲ部１２３３８の処理結果をレジスタ１２３４０へ転送し、図１７−１のステップＳ２０６に示されたように、図２０マクロブロック符号中間データ記憶部１２３４から、Ｉ番目のマクロブロックの符号の中間データとして、格納した中間符号データを設定する場合、マクロブロック符号中間データ記憶部１２３４から中間符号データをレジスタ１２３４０へ転送する。
【０１６９】
レジスタ１２３４０は、１つのワード長のデータに接続して行く為に接続した符号のワードを求める為にＯＲ部１２３３８がＯＲした値を格納し、図１７−２のステップＳ２１１に示されたように、図２０のマクロブロック符号中間データ記憶部１２３４へ、Ｉ番目のマクロブロックの符号の中間データとして、格納した中間符号データを設定する場合、マクロブロック符号中間データ記憶部１２３４へ中間符号データを転送する。
【０１７０】
符号データを格納するレジスタ１２３４１は、サブブロックごとの符号を順次接続し、１つのワードの符号へ成長した時、その１ワードの符号データを格納する。
【０１７１】
コントローラ１２３４２は、この符号フォーマット生成部１２３３の制御を行い、符号データ１２３４１が生成された時に符号データイネーブルを生成し、図１６のメモリアドレス生成部１２４へ符号データが１ワード生成されたことを知らせる。
【０１７２】
実施の形態１では、符号化時は中間符号データ格納部を有し、図２８の符号フォーマット生成部１２３３のように可変長符号を固定長ワードにまとめる処理の固定長ワードに達していない符号と、その符号の１ワード内の先頭アドレスを管理するシフト値をマクロブロックごと中間符号データ格納部に一時格納し、マクロブロックごと継続して符号化する場合に、一時待避させた固定長ワードに達していない符号とその符号の１ワード内の先頭アドレスを管理するシフト値を再度、図２８の符号フォーマット生成部１２３３へ値を戻すことにより、可変長符号での符号化の切替えを実現している。
【０１７３】
図２９は、符号化部の符号化処理部におけるマクロブロック符号中間記憶部の詳細な機能的ブロック図である。マクロブロック符号中間記憶部１２３４のアドレス変換部１２３４１は、８ラインメモリアドレス生成部１２２２からの現在処理中のマクロブロックの番号を受けとりメモリ４の、そのマクロブロック番号のアドレスへ変換する。
【０１７４】
ライト信号生成部１２３４２は、８ラインメモリアドレス生成部１２２２からマクロブロック切り換わり信号を受けとり、メモリ４の書き込み信号を生成する。
【０１７５】
メモリ４は、各水平方向に連なるマクロブロックごとの符号フォーマット生成部１２３３から符号化途中のデータと符号化途中のシフトデータを格納する。
【０１７６】
図３０は、符号化部のマクロブロック先頭アドレス記憶部の詳細なブロック図である。符号化部１２のマクロブロック先頭アドレス記憶部１２３のアドレス変換部１２３１は、符号化処理部１２２からの現在処理中のマクロブロックの番号を受けとり、メモリ４の、そのマクロブロック番号のアドレスへ変換する。
【０１７７】
ライト信号生成部１２３２は、符号化処理部１２２からマクロブロック切り換わり信号を受けとり、メモリ４の書き込み信号を生成する。
【０１７８】
メモリ４は、各水平方向に連なるマクロブロックごとのメモリアドレス生成部１２４からの入出力用符号メモリ領域４１の各マクロブロックのマクロブロック先頭アドレスを格納する。
【０１７９】
（１．５．編集部）
図３１は、実施の形態１による画像処理装置の編集部の機能的ブロック図である。図３２は、編集部における合成メモリのフォーマットの一例を示す模式図である。
【０１８０】
編集部１３のメモリコントローラＩ／Ｆ１３０１は、メインメモリ４の入出力用符号メモリ領域４１からマクロブロックの符号を読み込み、復号化部１３０３のバッファ１３０２へ転送し、また、ＪＰＥＧ符号化部のバッファ１３０５の符号データを順次のメインメモリ４のページ符号メモリ領域４２へ符号データを転送し、マクロブロック先頭アドレス計算部１３１２からのマクロブロックの先頭アドレスを、ページマクロブロック先頭アドレス格納領域４３へ転送する。
【０１８１】
バッファ１３０２は、復号化部１３０３へ符号データを転送するためのバッファである。
【０１８２】
復号化部１３０３は、メインメモリ４の入出力用符号メモリ領域４１から符号を読み込み復号化し、合成メモリ１３８のメモリＩ／Ｆへ転送する。この例ではＪＰＥＧで構成されている（図３９に、編集部における復号化部１３０３の詳細なブロック図を示す）。
【０１８３】
８＊８回転処理部１３０４は、図３７、３８に示したように、合成メモリ１３８の画像データを指定された９０度単位の回転角度に応じて８＊８画素単位（サブブロック単位）で回転処理を施す。
【０１８４】
バッファ１３０５は、ページ符号化部１３０６からの符号データをメモリコントローラＩ／Ｆ１３０１へ転送するためのバッファである。
【０１８５】
ページ符号化部１３０６は、合成メモリ１３８の符号ページメモリ領域から符号を読み込み復号化し、合成メモリ１３８の合成メモリＩ／Ｆ１３０９へ転送する。この例では、ページ符号化部１３０６はＪＰＥＧで構成されている（図４３に詳細なブロック図を示す）。
【０１８６】
バッファ１３０７は、画像合成部１３０８へ合成を行う文字などの画像データを転送するためのバッファである。
【０１８７】
画像合成部１３０８は、合成メモリ１３８に展開されたマクロブロックの画像に、バッファ１３０７に格納された文字などの画像データを合成処理を施し、再度、合成メモリ１３８へ転送する。
【０１８８】
合成メモリＩ／Ｆ１３０９は、合成メモリ１３８へアクセスするためのインタフェースを行う。
【０１８９】
合成メモリ１３８は、変請求項本発明数層値１３における復号化部１３０３により展開されたマクロブロックの画像データを、一時格納する。図３３に、合成メモリ１３８のフォーマットの一例を示した。
【０１９０】
符号長カウント部１３１１は、ページ符号化部１３０６で符号化された符号のマクロブロックごとの合計符号長をカウントし、マクロブロック先頭アドレス計算部１３１２へ転送する。
【０１９１】
マクロブロック先頭アドレス計算部１３１２は、マクロブロックごとの合計符号長を符号長カウント部１３１１から受信し、各マクロブロック符号の先頭アドレスを計算して、メモリコントローラＩ／Ｆ１３０１へ転送する。
【０１９２】
メモリアドレス生成部１３１３は、マクロブロック先頭アドレス計算部１３１２から各マクロブロックの先頭アドレスを受信し、ページ符号化部１３０６の符号データをメモリコントローラＩ／Ｆ１３０１を介して転送するメモリ４におけるアドレスを生成する。
【０１９３】
メモリアドレス生成部１３１３は、合成メモリ１３８のアドレスを生成する。合成メモリ１３８中の画像合成後のマクロブロックを再度符号化するとき、その指定された９０度単位の回転角度により、マクロブロックをサブブロック単位で読み出す順序を変えることにより、９０度単位の回転処理を実現している（図３６参照）。
【０１９４】
コントローラ１３１６は、編集処理部１３の全体を制御する。
【０１９５】
図３３−１および３３−２は、実施の形態１による画像処理装置における編集処理手順を説明するフローチャートである。図３４は、マクロブロックからのデータの読み出し順序を説明する図である。図３５は、ページレベルの回転処理を説明する図である。図３６は、マクロブロックレベルの回転処理を説明する図である。図３７および３８は、サブブロックレベルの回転処理を説明する図である。図３３−１〜３８を参照しながら、編集処理手順を説明する。
【０１９６】
マクロ部録の先頭アドレスを０に設定する（ステップＳ３０１）。図３６に示されるように回転角度に応じたマクロブロックの符号を１つ、マインメモリから読み込む。この時対応するマクロブロックのメインメモリのマクロブロック先頭アドレス領域から先頭アドレスを読み込み、このページの符号の先頭アドレスを加え対応するマクロブロックの符号の先頭アドレスを求める（ステップＳ３０２）。
【０１９７】
符号長カウンタを０に設定する（ステップＳ３０３）。マクロブロックから図３４に示されるように、サブブロックの符号を１つ復号化する（ステップＳ３０４）。マクロブロック内の全てのサブブロックが処理されたか否かを判定する（ステップＳ３０５）。未だであれば（ステップＳ３０５のＮｏ）、ステップＳ３０４に戻る。
【０１９８】
全て終了していれば（ステップＳ３０５のＹｅｓ）、画像合成部により文字画像などをマクロブロックの画像に入れ込み、合成メモリの値を更新する（ステップＳ３０６）。
【０１９９】
図３７に示されるように、画像の回転処理に基づく回転角度に応じて、合成メモリ１３８からサブブロック画像を切り出して、８＊８回転処理部１３０４に送信する（ステップＳ３０７）。８＊８回転処理部１３０４はサブブロックレベルの回転角度に応じて、各画素を回転処理する（ステップＳ３０８）。
【０２００】
ページ符号化部１３０６は、８＊８回転処理部１３０４のサブブロックの画素を符号化し、符号長カウンタとする（ステップＳ３０９）。編集処理後のマクロブロックの符号をメインメモリのマクロブロックの先頭アドレス＋符号の先頭アドレスの示す符号ページ領域へ格納する（ステップＳ３１０）。マクロブロックの先頭アドレスの値をメインメモリのマクロブロックアドレス格納領域へ格納する（ステップＳ３１１）。
【０２０１】
マクロブロックの先頭アドレスをカウンタ＋マクロブロックの先頭アドレスに置き換える（ステップＳ３１２）。ページ内の全てのマクロブロックが処理されたか否かを判定する（ステップＳ３１３）。処理されていないと判定された場合（ステップＳ３１３のＮｏ）、ステップＳ３０２に戻る。処理したと判定された場合（ステップＳ３１３のＹｅｓ）、そのまま終了する。
【０２０２】
（１．５．１．編集部における復号化部）
図３９は、編集部における復号化部の機能的ブロック図である。編集部１３における復号化部１３０３の復号化処理部１３０３１は、メインメモリ４の入出力用符号メモリ領域４１から符号を読み込み、復号化し、合成メモリ１３８へ転送する。（図４１に、復号化処理部１３０３１の詳細な機能的ブロック図を示す）。
【０２０３】
読み込みメモリアドレス生成部１３０３２は、メインメモリ４の入出力用メモリ領域から読み込むメモリアドレスを生成し、復号化処理部１３０３１から、次の符号ワードを要求する符号ワード要求信号と、１つのマクロブロックの復号化が終了したことを示すマクロブロック終了信号を受信し、マクロブロック先頭アドレス記憶部１３０３３からマクロブロックごとのメインメモリ４の入出力用メモリ領域の先頭アドレスを受け取ることにより、読み込むメモリアドレスを生成する。
【０２０４】
ここで、読み込みメモリアドレス生成部１３０３２およびマクロブロック先頭アドレス記憶部１３０３３は、本発明におけるマクロブロック符号アドレス認識手段（請求項１）を構成する。
【０２０５】
マクロブロック先頭アドレス記憶部１３０３３は、メインメモリ４の入出力用メモリ領域のマクロブロックごとの先頭アドレスを記憶する。
【０２０６】
図４０は、編集部における復号化処理部による処理手順を説明するフローチャートである。図４１は、マクロブロックごとに符号化されたデータ、およびサブブロックから構成されるマクロブロックの読み出し順番を示す模式図である。
【０２０７】
水平方向に連なる複数のマクロブロックをメモリ４の先頭アドレスを０に設定する（ステップＳ４０１）。次に、垂直方向のマクロブロック内のサブブロックのカウンタ”Ｊ”を０に初期設定する（ステップＳ４０２）。マクロブロック先頭アドレス記憶部１３０３３から副走査方向にＪ番目のマクロブロックの列の主走査方向にＩ番目のマクロブロックの先頭アドレスを読み込む（ステップＳ４０３）。図３１のバッファ１３０２から符号を読み込む（ステップＳ４０４）。
【０２０８】
Ｉ番目のマクロブロックのＪブロックライン目の０からＭまでのサブブロックごと順次復号化していく（ステップＳ４０５）。ＩをＩ＋１に設定する（ステップＳ４０６）。Ｉがβより大きいか否かを判定し（ステップＳ４０７）、大きくない場合は、ステップＳ４０３に戻る。大きいと判定した場合（ステップＳ４０７のＹｅｓ）、入出力用符号メモリの符号を全て復号したか否かを判定する（ステップＳ４０８）。未だであると判定した場合（ステップＳ４０８のＮｏ）、ＪをＪ＋１に置き換えて（ステップＳ４０９）、ステップＳ４０２に戻る。終了したと判定した場合（ステップＳ４０８のＹｅｓ）、そのまま処理を終了する。
【０２０９】
図４２は、編集部の復号化部における復号化処理部の機能的ブロック図である。編集部１３の復号化部１３０３の復号化処理部１３０３１のエントロピー復号化部１３０４１は、メインメモリ４の符号データを順次読み込み、Ｙ成分のエントロピー復号化処理を施し、Ｙ逆量子化処理部１３０４２へ量子化後のＹ成分の８＊８画素のデータを転送し、Ｕ成分のエントロピー復号化処理を施し、Ｕ逆量子化処理部１３０４４へ量子化後のＵ成分の８＊８画素のデータを転送し、Ｖ成分のエントロピー復号化処理を施し、Ｖ逆量子化処理部１３０４６へ量子化後のＶ成分の８＊８画素のデータを転送する。
【０２１０】
Ｙ逆量子化処理部１３０４２は、Ｙエントロピー復号化部１３０４１から量子化後のＹ成分の８＊８画素データを受信し、逆量子化し、Ｙ成分の８＊８画素のＤＣＴ係数を求め、ＹＩＤＣＴ処理部１３０４３へ転送する。
【０２１１】
ＹＩＤＣＴ処理部１３０４３は、逆量子化処理部からＹ成分の８＊８画素のＤＣＴ係数を受信し、ＩＤＣＴ（逆離散コサイン変換）を行い、現在処理中のラインのＹ成分の水平の８画素データを求め、ＹＵＶ−＞ＲＧＢ変換部１３０４８へ転送する。
【０２１２】
Ｕ逆量子化処理部１３０４４は、Ｕエントロピー復号化部１３０４１から量子化後のＵ成分の８＊８画素データを受信し、逆量子化し、Ｕ成分の８＊８画素のＤＣＴ係数を求め、ＵＩＤＣＴ処理部１３０４５へ転送する。
【０２１３】
ＵＩＤＣＴ処理部１３０４５は、逆量子化処理部１３０４４からＵ成分の８＊８画素のＤＣＴ係数を受信し、ＩＤＣＴ（逆離散コサイン変換）を行い、現在処理中のラインのＵ成分の水平の８画素データを求め、ＹＵＶ−＞ＲＧＢ変換部１３０４８へ転送する。
【０２１４】
Ｖ逆量子化処理部１３０４６は、Ｖエントロピー復号化部１３０４１から量子化後のＶ成分の８＊８画素データを受信し、逆量子化し、Ｖ成分の８＊８画素のＤＣＴ係数を求め、ＶＩＤＣＴ処理部１３０４７へ転送する。
【０２１５】
ＶＩＤＣＴ処理部１３０４７は、逆量子化処理部１３０４６からＶ成分の８＊８画素のＤＣＴ係数を受信し、ＩＤＣＴ（逆離散コサイン変換）を行い、現在処理中のラインのＶ成分の水平の８画素データを求め、ＹＵＶ−＞ＲＧＢ変換部１３０４８へ転送する。
【０２１６】
ＹＵＶ−＞ＲＧＢ変換処理部１３０４８は、ＩＤＣＴ処理部１３０４３、１３０４５、１３０４７からのＹ、Ｕ、Ｖの画素データをＲＧＢへ変換する。
【０２１７】
図４３は、編集部におけるページ符号化部のブロック図である。
【０２１８】
編集部１３におけるページ符号化部１３０６の８＊８バッファ１３０６１は、サブブロックの８＊８の画像を格納するバッファである。
【０２１９】
水平サブブロックカウント部１３０６２は、処理した水平方向のサブブロック数をカウントし、水平方向のサブブロックの終端の信号としての水平サブブロック終端信号を、リスタートマーカー生成部１３０７３へ転送する。
【０２２０】
ＲＧＢ−＞ＹＵＶ変換部１３０６３は、ＪＰＥＧの規格にもとづき、８＊８画素のＲＧＢをＹＵＶへ変換し、Ｙ成分をＹＤＣＴ処理部へ、Ｕ成分をＵＤＣＴ処理部へ、Ｖ成分をＶＤＣＴ処理部へ転送する。
【０２２１】
ＹＤＣＴ処理部１３０６４は、Ｙ成分をＤＣＴ（離散コサイン変換）を行い、量子化処理部１３０６５へ転送する。
【０２２２】
Ｙ量子化処理部１３０６５は、ＹＤＣＴ処理部１３０６４からのＹ成分のＤＣＴ処理を施した後のデータを受信し量子化し、Ｙエントロピー符号化部１３０６６へ転送する。
【０２２３】
Ｙエントロピー符号化部１３０６６は、量子化処理部からのＹ成分の量子化後のデータを受信し、ハフマン符号化方式で符号化し、符号フォーマット生成部１３０７４へ転送する。
【０２２４】
ＵＤＣＴ処理部１３０６７は、Ｕ成分をＤＣＴ（離散コサイン変換）を行い、量子化処理部へ転送する。
【０２２５】
Ｕ量子化処理部１３０６８は、ＵＤＣＴ処理部１３０６７からのＵ成分のＤＣＴ処理を施した後のデータを受信し量子化し、Ｕエントロピー符号化部１３０６９へ転送する。
【０２２６】
Ｕエントロピー符号化部１３０６９は、量子化処理部１３０６８からのＵ成分の量子化後のデータを受信し、ハフマン符号化方式で符号化し、符号フォーマット生成部１３０７４へ転送する。
【０２２７】
ＶＤＣＴ処理部１３０７０は、Ｖ成分をＤＣＴ（離散コサイン変換）を行い、量子化処理部１３０７１へ転送する。
【０２２８】
Ｖ量子化処理部１３０７１は、ＶＤＣＴ処理部からのＶ成分のＤＣＴ処理を施した後のデータを受信し量子化し、Ｖエントロピー符号化部へ転送する。
【０２２９】
Ｖエントロピー符号化部１３０７２は、量子化処理部からのＶ成分の量子化後のデータを受信し、ハフマン符号化方式で符号化し、符号フォーマット生成部１３０７４へ転送する。
【０２３０】
リスタートマーカー生成部１３０７３は、水平サブブロックカウント部１３０６２からの水平サブブロック終端信号を受信しリスタートマーカーを生成し、符号フォーマット生成部１３０７４へ転送する。
【０２３１】
符号フォーマット生成部１３０７４は、エントロピー符号化部１３０６６、１３０６９、１３０７２からの符号データと、リスタートマーカー生成部１３０７３からのリスタートマーカー符号とを受信し、符号を形成する。
【０２３２】
（１．５．１．編集部におけるページ符号化部）
図４４は、ページ符号化部による処理手順を説明するフローチャートである。図４５はマクロブロックにおけるサブブロックの処理順序を説明する図である。
【０２３３】
編集部１３におけるページ符号化部１３０６は、８＊８回転処理部１３０４から８＊８回転処理後の画像を読み込む（ステップＳ５０１）。ページ符号化部１３０６は、８＊８回転処理後の画像を符号化する（ステップＳ５０２）。１ブロックライン分処理されたか否かを判定する（ステップＳ５０３）。未だである場合は（ステップＳ５０３のＮｏ）、ステップＳ５０２に戻る。処理されたと判定された場合（ステップＳ５０３のＹｅｓ）、リスタートマーカーを挿入する（ステップＳ５０４）。ｍ＊ｍブロック（マクロブロック）の画像を処理したか否かを判定する（ステップＳ５０５）。未だであると判定された場合（ステップＳ５０５のＮｏ）、ステップＳ５０２に戻る。処理されたと判定された場合（ステップＳ５０５のＹｅｓ）、そのまま処理を終了する。
【０２３４】
（１．６．ページ復号化部）
図４６は、実施の形態１による画像処理装置の図２ページに示したページ復号化部の詳細な機能的ブロック図である。
【０２３５】
画像処理装置のページ復号化部１４のメモリコントローラＩ／Ｆ１４１は、読み込みメモリアドレス生成部１４４からのメモリ４のページ符号メモリ領域のマクロブロックごとの符号を読み込み、バッファ１４２へ転送し、メモリ４のページマクロブロック先頭アドレス格納領域４３からマクロブロックごとの先頭アドレスを読み込み、マクロブロック先頭アドレス記憶部１４５へ転送する為のメモリコントローラ３とのＩ／Ｆの処理を施す。
【０２３６】
ここで、読み込みメモリアドレス生成部１４４およびマクロブロック先頭アドレス記憶部１４５は、本発明（請求項２）におけるマクロブロック符号アドレス認識手段を構成する。また、マクロブロック先頭アドレス記憶部１４５は、本発明（請求項２）におけるマクロブロック先頭アドレス記憶手段を構成する。
【０２３７】
バッファ１４２は、復号化処理部１４３へ転送する為の符号データを一時格納する。
【０２３８】
復号化処理部１４３は、メインメモリ４のページ符号メモリ領域４２から符号を読み込み復号化し、サブブロック単位に画像処理部１５へ転送する（図４８に画像処理部１５の詳細なブロック図を示す）。
【０２３９】
読み込みメモリアドレス生成部１４４は、メインメモリ４のページ符号メモリ領域４２から読み込むメモリアドレスを生成する部であり、復号化処理部１４３から、次の符号ワードを要求する符号ワード要求信号と、１マクロブロックの水平方向の復号化が終了したことを示すマクロブロックライン終了信号を受信し、マクロブロック先頭アドレス記憶部１４５からマクロブロックごとのメインメモリ４のページ符号メモリ領域４２のマクロブロックの先頭アドレスを受け取ることにより、読み込むメモリアドレスを生成する。
【０２４０】
マクロブロック先頭アドレス記憶部１４５は、メインメモリ４のページマクロブロック先頭アドレス格納領域４３からマクロブロックごとの先頭アドレスを受信し記憶し、復号化処理部１４３から処理中のマクロブロック番号と、マクロブロックライン終端信号を受け取ることにより、読込みメモリアドレス生成部１４４からのそのマクロブロックの符号の途中の符号のメモリアドレスを受信し、記憶し、再度そのマクロブロックを復号化する時、そのマクロブロックの復号化途中の符号のメモリアドレスを読込みメモリアドレス生成部１４４へ転送する。
【０２４１】
コントローラ１４６は、ページ復号化部１４を制御する。
【０２４２】
図４７−１および４７−２は、ページ復号化部におけるページ復号化処理手順を説明するフローチャートである。図４８−１は、８ラインメモリフォーマットの一例を示す模式図である。図４８−２は、マクロブロックを構成するサブブロックの復号化順序を説明する図である。
【０２４３】
マクロブロック先頭アドレス記憶部１４５へ水平方向に連なる複数のマクロブロックのメモリ４のマクロブロック先頭アドレス格納領域４３へ記憶された先頭アドレスを読込み設定する（ステップＳ６０１）。垂直方向のマクロブロック内のサブブロックのカウンタ”Ｊ”を初期設定する（ステップＳ６０２）。水平方向のマクロブロックのカウンタ”Ｉ”を初期設定する（ステップＳ６０３）。
【０２４４】
マクロブロック先頭アドレス記憶部１４５から、Ｉ番目のマクロブロックの符号を格納する先頭アドレスを受け取る（ステップＳ６０４）。図５０のシフト値生成部１４３１７の図５１のマクロブロック復号化シフト値記憶部１４３１７２から、Ｉ番目のマクロブロックの符号化の途中のデータを図５１のレジスタ１４３１７３へ設定する（ステップＳ６０５）。
【０２４５】
ここで、マクロブロック復号化シフト値記憶部１４３１７２は、本発明（請求項２）におけるマクロブロック復号中間データ記憶手段を構成する。
【０２４６】
またここで、マクロブロック復号化シフト値記憶部１４３１７２は、本発明（請求項１２）における出力用多値ブロックラインデータ記憶手段を構成する。
【０２４７】
図４６のバッファ−１４２から、水平方向にＩ番目のマクロブロックのＪブロックラインの符号データを図４８−１に示されたように読み込む（ステップＳ６０６）。Ｉ番目のマクロブロックのＪブロックライン目のサブブロックごとに順次復号化して行く（ステップＳ６０７）。
【０２４８】
リスタートマーカーは検出されたか否かを判定する（ステップＳ６０８）。検出されたと判定されなかった場合（ステップＳ６０８のＮｏ）、ステップＳ６０７に戻る。検出されたと判定された場合（ステップＳ６０８のＹｅｓ）、図５３のシフト値生成部のマクロブロック復号化シフト値記憶部１４３１７２へ、Ｉ番目のマクロブロックの復号化途中のシフト値を設定する（ステップＳ６０９）。
【０２４９】
図４６のマクロブロック先頭アドレス記憶部１４３は、図４６の読み込みメモリアドレス生成部１４４からのＩ番目のマクロブロック先頭アドレスを受信し記憶する（ステップＳ６１０）。
【０２５０】
水平方向のマクロブロックのカウンタ”Ｉ”をカウントＵＰする（ステップＳ６１１）。水平方向のマクロブロックを全て処理したか否かを判断する（ステップＳ６１２）。未だ処理を終了していないと判定された場合（ステップＳ６１２のＮｏ）、ステップＳ６０４に戻る。終了したと判定された場合（ステップＳ６１２のＹｅｓ）、垂直方向のマクロブロック内のサブブロックのカウンタ”Ｊ”をカウントＵＰする（ステップＳ６１３）。
【０２５１】
垂直方向のマクロブロック内のサブブロックを全て処理したか否かを判断する（ステップＳ６１４）。未だ処理が終了していないと判定した場合（ステップＳ６１５のＮｏ）、ステップＳ６０３に戻る。処理が終了したと判定された場合（ステップＳ６１４のＹｅｓ）、１ページの復号化を終了したか否かを判定する（ステップＳ６１５）。１ページの複合化が終了していないと判定された場合（ステップＳ６１５のＮｏ）、ステップＳ６０１に戻る。終了したと判定された場合、そのまま処理を終了する。
【０２５２】
図４９は、ページ復号化部における復号化処理部の詳細なブロック図である。ページ復号化部１４の復号化処理部１４３のエントロピー復号化部１４３１は、メインメモリ４の符号データを順次読み込み、Ｙ成分のエントロピー復号化処理を施し、Ｙ逆量子化処理部１４３２へ量子化後のＹ成分の８＊８画素のデータを転送し、Ｕ成分のエントロピー復号化処理を施し、Ｕ逆量子化処理部１４３４へ量子化後のＵ成分の８＊８画素のデータを転送し、Ｖ成分のエントロピー復号化処理を施し、Ｖ逆量子化処理部１４３６へ量子化後のＶ成分の８＊８画素のデータを転送する。また、リスタートマーカーを検出し、マクロブロックラインの終端を検出し、マクロブロック終端信号を生成する。
【０２５３】
Ｙ逆量子化処理部１４３２は、Ｙエントロピー復号化部から量子化後のＹ成分の８＊８画素データを受信し、逆量子化し、Ｙ成分の８＊８画素のＤＣＴ係数を求め、ＹＩＤＣＴ処理部１４３３へ転送する。
【０２５４】
ＹＩＤＣＴ処理部１４３３は、逆量子化処理部からＹ成分の８＊８画素のＤＣＴ係数を受信し、ＩＤＣＴ（逆離散コサイン変換）を行い、現在処理中のラインのＹ成分の水平の８画素データを求め、ＹＵＶ−＞ＲＧＢ変換部１４３８へ転送する。
【０２５５】
Ｕ逆量子化処理部１４３４は、エントロピー復号化部から量子化後のＵ成分の８＊８画素データを受信し、逆量子化し、Ｕ成分の８＊８画素のＤＣＴ係数を求め、ＵＩＤＣＴ処理部１４３５へ転送する。
【０２５６】
ＵＩＤＣＴ処理部１４３５は、逆量子化処理部１４３４からＵ成分の８＊８画素のＤＣＴ係数を受信し、ＩＤＣＴ（逆離散コサイン変換）を行い、現在処理中のラインのＵ成分の水平の８画素データを求め、ＹＵＶ−＞ＲＧＢ変換部１４３８へ転送する。
【０２５７】
Ｖ逆量子化処理部１４３６は、エントロピー復号化部から量子化後のＶ成分の８＊８画素データを受信し、逆量子化し、Ｖ成分の８＊８画素のＤＣＴ係数を求め、ＶＩＤＣＴ処理部１４３７へ転送する。
【０２５８】
ＶＩＤＣＴ処理部１４３７は、逆量子化処理部からＶ成分の８＊８画素のＤＣＴ係数を受信し、ＩＤＣＴ（逆離散コサイン変換）を行い、現在処理中のラインのＶ成分の水平の８画素データを求め、ＹＵＶ−＞ＲＧＢ変換部１４３８へ転送する。
【０２５９】
ＹＵＶ−＞ＲＧＢ変換処理部１４３８は、ＩＤＣＴ処理部１４３３、１４３５、１４３７からのＹ、Ｕ、Ｖの画素データをＲＧＢへ変換する。
【０２６０】
マクロブロックカウント部１４３９は、エントロピー復号化部１４３１からマクロブロックラインの終端信号を受信しカウントし、処理中のマクロブロック番号を生成する。また、水平方向のマクロブロック番号までカウントすると初期値へ戻る。
【０２６１】
図５０は、復号化処理部におけるエントロピー復号化部の詳細なブロック図である。ページ復号化部４の復号化処理部１４３のエントロピー復号化部１４３１の読み込み符号レジスタ１４３１１は、図４６のバッファ１４２の符号データを一時格納する。
【０２６２】
シフター１４３１２は、シフト値生成部１４３１７で求めたシフト値により、可変長符号をシフトし、可変長符号の先頭をＤＣ、ＡＣ値復号化部１４３１４と１４３１５、およびリスタート符号判定部１４３１３へ転送する。
【０２６３】
リスタートマーカー符号を判定するリスタート判定部１４３１３は、シフター１４３１２からの符号を、リスタートマーカーであるかを判定し、判定したマクロブロックライン終端信号を図４６の読み込みメモリアドレス生成部１４４と図４６のマクロブロック先頭アドレス記憶部１４５へ転送する。また、その時の符号長を消費符号長としてＭＵＸ１４３１６へ転送する。
【０２６４】
ＤＣ値復号化部１４３１４は、シフター１４３１２からの符号がＤＣ値符号であれば、ＤＣデータを復号化し、８＊８ＤＣＴデータ生成部１４３１８へ転送し、その時の符号長を消費符号長としてＭＵＸ１４３１６へ転送する。
【０２６５】
ＡＣ値復号化部１４３１５は、シフター１４３１２からの符号がＡＣ値符号であれば、ＡＣデータを復号化し、８＊８ＤＣＴデータ生成部１４３１８へ転送し、その時の符号長を消費符号長としてＭＵＸ１４３１６へ転送する。
【０２６６】
ＭＵＸ１４３１６は、ＤＣ、ＡＣ値復号化部１４３１４、１４３１５と、リスタート符号判定部１４３１３から、消費した符号長を受信し、シフト値生成部１４３１７へ転送する。
【０２６７】
シフト値生成部１４３１７は、ＭＵＸ１４３１６からの消費符号長から次の符号の先頭アドレスを求め、シフター１４３１２を制御して、常に符号の先頭をＤＣ、ＡＣ値復号化部と、リスタート符号判定部へ供給するようにする。
【０２６８】
８＊８ＤＣＴデータ生成部１４３１８は、ＤＣ、ＡＣ値復号化部１４３１４、１４３１５からのＤＣ、ＡＣ値から、８＊８のＤＣＴデータを生成し、図４９の逆量子化部１４３２、１４３４、１４３６へ転送する。
【０２６９】
図５１は、エントロピー復号化部におけるシフト値生成部の詳細なブロック図である。即ち、ページ復号化部１４の復号化処理部１４３のエントリピー復号化部１４３１のシフト値生成部１４３１７の詳細なブロック図である。
【０２７０】
シフト値生成部１４３１７のＭＵＸ１４３１７１は、通常は累積した１符号ワード内の次の符号の先頭アドレスを意味する図５０のシフター１４３１２のシフト値を求める為に、加算器１４３１７４の値を、レジスタ１４３１７３へ転送しているが、図４７−１のステップＳ６０５の時は、マクロブロック復号化シフト値記憶部１４３１７２から、今から処理するマクロブロックのシフト値を読み込み、レジスタ１４３１７３へ転送し、図４７−１のステップＳ６０９の時には、加算器１４３１７４で求めたシフト値を、マクロブロック復号化シフト値記憶部１４３１７２へ転送し、現在処理中のマクロブロックのシフト値を記憶させる。
【０２７１】
マクロブロック復号化シフト値記憶部１４３１７２は、図４７−１のステップＳ６０５の時は、マクロブロック復号化シフト値記憶部１４３１７２から、今から処理するマクロブロックのシフト値を読み込み３、レジスタ１４３１７３へ転送し、図４７−１のステップＳ６０９の時には、加算器１４３１７４で求めたシフト値を、マクロブロック復号化シフト値記憶部１４３１７２へ転送し、現在処理中のマクロブロックのシフト値を記憶させる。
【０２７２】
レジスタ１４３１７３は、累積した１符号ワード内の次の符号の先頭アドレスである図５０のシフター１４３１２のシフト値を格納する。
【０２７３】
加算器１４３１７４は、累積した１符号ワード内の次の符号の先頭アドレスである図５０のシフター１４３１２のシフト値を求める。
【０２７４】
比較器１４３１７５は、符号のワードのＢＩＴ長と加算器１４３１７４で求めたシフト値を比較し次の符号ワードを要求するか否かを判断する。
【０２７５】
減算器１４３１７６は、比較器１４３１７５の結果から、１ワードを超えていた場合、次の符号ワードを読み込む為に加算器１４３１７４のシフト値から１ワードのＢＩＴ長を減算し、ＭＵＸ１４３１７１へ転送している。
【０２７６】
レジスタ１４３１７７は、比較器１４３１７５の判定結果を一時記憶し、符号ワード要求信号を生成し、図４６の読み込みメモリアドレス生成部１４４へ転送する。
【０２７７】
ここで復号化時には、中間復号データ格納部を有し、図５１のシフト値生成部１４３１７のマクロブロック復号化シフト値記憶部１４３１７２のように、固定長ワードにまとめられた符号の復号化中のその符号の１ワード内の先頭アドレスを管理するシフト値をマクロブロック復号化シフト値記憶部１４３１７２に一時格納し、各マクロブロックごと継続して復号化する場合に一時待避させ、その符号の１ワード内の先頭アドレスを管理するシフト値を再度、図５１のシフト値生成部１４３１７に値を戻すことにより、可変長符号での復号化の切替えを実現している。
【０２７８】
図５２は、ページ復号化部における図４６に示したマクロブロック先頭アドレス記憶部の詳細なブロック図である。マクロブロック先頭アドレス記憶部１４５のアドレス変換部１４５１は、図４６の復号化処理部１４３からの現在処理中のマクロブロックの番号を受けとり、メモリ１４５３内の、そのマクロブロック番号のアドレスへ変換する。
【０２７９】
ライト信号生成部１４５２は、図４６の復号化処理部１４３からマクロブロックライン終端信号を受けとり、メモリ１４５３の書き込み信号を生成する。
【０２８０】
メモリ１４５３は、各水平方向に連なるマクロブロックごとの図４６の読み込みメモリアドレス生成部１４４からのページ符号メモリ領域４２の各マクロブロックのマクロブロック先頭アドレスを格納する。
【０２８１】
図５３は、図５１に示されたシフト値生成部におけるマクロブロック復号化シフト値記憶部の詳細なブロック図である。マクロブロック復号化シフト値記憶部１４３１７２のアドレス変換部１４３１７２１は、図４６の復号化処理部１４３からの現在処理中のマクロブロックの番号を受けとりメモリ１４３１７２３の、そのマクロブロック番号のアドレスへ変換する。
【０２８２】
ライト信号生成部１４３１７２２は、図４６の復号化処理部１４３からマクロブロックライン終端信号を受けとりメモリ１４３１７２３の書き込み信号を生成する。
【０２８３】
メモリ１４３１７２３は、各水平方向に連なるマクロブロックごとの図５１のＭＵＸ１４３１７１から復号化途中の復号化途中のシフトデータを格納する。
【０２８４】
（１．７．画像処理部）
図５４は、実施の形態１による画像処理装置の画像処理部の機能的ブロック図である。画像処理部１５のバッファ１５１は、ページ復号化部１４からの画像データを一時格納する。
【０２８５】
色補正処理部１５２は、バッファ１５１に格納された多値ＲＧＢデータに対して色補正処理を施し、多値ＣＭＹＫデータへ変換する。
【０２８６】
階調処理部１５３は、色補正処理部１５２から受信した階調処理後のデータを、２値、４値、１６値データなどへ変換する。
【０２８７】
ＰＩＸＥＬ  ＴＯ  ＰＬＡＮＥ変換部１５４であり、階調処理部１５３で階調処理を施された２値、４値、１６値データを、指定された版のデータのみＰＸＥＬからＰＬＡＮＥへ変換し、ラインメモリＩ／Ｆ１５５へ転送する。
【０２８８】
ラインメモリＩ／Ｆ１５５は、ＰＩＸＥＬ  ＴＯ  ＰＬＡＮＥ変換部１５４によって変換された画像データを一時格納し、ラインメモリ２０（図４）へ転送する。
【０２８９】
ラインメモリアドレス生成部１５６は、ラインメモリ２０のアドレスを生成する。
【０２９０】
コントローラ１５７は、画像処理部１５をコントロールする。
【０２９１】
図５５は、画像処理部による画像処理手順を説明するフローチャートである。バッファ１５１は、８ラインメモリ１１から画像データを受け取る（ステップＳ７０１）。色補正処理部１５２は色補正処理を施しＲＧＢからＣＭＹＫへ変換する（ステップＳ７０２）。階調処理部１５３は多値のＣＭＹＫ画像に対して階調処理を施して処理後の画像へ変換する（ステップＳ７０３）。階調処理後のＣＭＹＫ画像データを、指定されたプレーンのみ固定長にまとめ、ラインメモリ２０へ書き込む（ステップＳ７０４）。全ての画像が処理されたか否かを判定する（ステップＳ７０５）。未だの場合（ステップＳ７０５のＮｏ）、ステップＳ７０１に戻る。終了した場合（ステップＳ７０５のＹｅｓ）、そのまま処理を終える。
【０２９２】
（２．変形例１）
（２．１．変形例１による画像処理装置の概略構成）
図５６−１は、変形例１による画像処理装置のハード構成図である。図５６−２は、ページ符号メモリ領域におけるマクロブロック符号フォーマットの変形例１を示す模式図である。ここでは変形例１として、図７に示したページ符号メモリ４のマクロブロック符号ファーマット４１４の水平方向の終端におけるリスタートマーカー４５２を有さない例である。図５６中に示されているように、ｎ＊ｎ個のサブブロック５６２から成るマクロブロック５６１においては、水平方向の終端においてリスタートマーカーを備えていないことによって、編集部１３００、ページ復号化部１４００が実施の形態１と異なる。
【０２９３】
（２．２．編集部）
図５７は、変形例１による編集部におけるページ符号化部の詳細なブロック図である。ここで、図５７に示された変形例１による編集部１３におけるページ符号化部１３０６０は、図５６に示したリスタートマーカーを有さないフォーマットを使用する場合におけるページ符号化部である。
【０２９４】
ページ符号化部１３０６０の８＊８バッファ５７１は、サブブロックの８＊８の画像を格納するバッファである。
【０２９５】
ＲＧＢ−＞ＹＵＶ変換部５７２は、ＪＰＥＧの規格にもとづき、８＊８画素のＲＧＢをＹＵＶへ変換し、Ｙ成分をＹＤＣＴ処理部５７３へ、Ｕ成分をＵＤＣＴ処理部５７６へ、Ｖ成分をＶＤＣＴ処理部５７９へ転送する。
【０２９６】
ＹＤＣＴ処理部５７３は、Ｙ成分をＤＣＴ（離散コサイン変換）を行い、量子化処理部５７４へ転送する。
【０２９７】
Ｙ量子化処理部５７４は、ＹＤＣＴ処理部５７３からのＹ成分のＤＣＴ処理を施した後のデータを受信し量子化し、Ｙエントロピー符号化部５７５へ転送する。
【０２９８】
Ｙエントロピー符号化部５７５は、量子化処理部からのＹ成分の量子化後のデータを受信し、ハフマン符号化方式で符号化し、符号フォーマット生成部５８２へ転送する。
【０２９９】
ＵＤＣＴ処理部５７６は、Ｕ成分をＤＣＴ（離散コサイン変換）を行い、量子化処理部５７７へ転送する。
【０３００】
Ｕ量子化処理部５７７は、ＵＤＣＴ処理部５７６からのＵ成分のＤＣＴ処理を施した後のデータを受信し量子化し、Ｕエントロピー符号化部５７８へ転送する。
【０３０１】
Ｕエントロピー符号化部５７８は、量子化処理部からのＵ成分の量子化後のデータを受信し、ハフマン符号化方式で符号化し、符号フォーマット生成部５８２へ転送する。
【０３０２】
ＶＤＣＴ処理部５７９は、Ｖ成分をＤＣＴ（離散コサイン変換）を行い、量子化処理部５８０へ転送する。
【０３０３】
Ｖ量子化処理部５８０は、ＶＤＣＴ処理部５７９からのＶ成分のＤＣＴ処理を施した後のデータを受信し量子化し、Ｖエントロピー符号化部５８１へ転送する。
【０３０４】
Ｖエントロピー符号化部５８２であり、量子化処理部５８０からのＶ成分の量子化後のデータを受信し、ハフマン符号化方式で符号化し、符号フォーマット生成部５８２へ転送する。
【０３０５】
符号フォーマット生成部５８２は、エントロピー符号化部５７５、５７８、５８１からの符号データを受信し符号を形成する。
【０３０６】
図５８−１は、変形例１によるページ符号化部の処理手順を説明するフローチャートである。図５８−２は、変形例１によるマクロブロックにおいてサブブロックを読み込み処理を施す順序を説明する図である。
【０３０７】
８＊８回転処理部１３０４から、８＊８の編集処理後の画像を読み込む（ステップＳ８０１）。８＊８画素の編集処理後の画像を符号化部にて符号化する（ステップＳ８０２）。１ブロックライン分処理されたか否かを判定する（ステップＳ８０３）。１ブロックライン分は図５８−２の水平方向の矢印で示されている。
【０３０８】
未だであると判定された場合（ステップＳ８０３のＮｏ）、ステップＳ８０２に戻る。１ブロックライン分処理されたと判定された場合（ステップＳ８０３のＹｅｓ）、ｍ＊ｍブロック（マクロブロック）の画像を処理したか否かを判定する（ステップＳ８０４）。まだ処理されていないと判定された場合（ステップＳ８０４のＮｏ）、ステップＳ８０２に戻る。処理がすんだと判定された場合（ステップＳ８０４のＹｅｓ）、そのまま処理を終了する。
【０３０９】
（２．３．ページ復号化部）
図５９は、変形例１による画像処理装置におけるページ復号化部の詳細なブロック図である。ページ復号化部１４００のメモリコントローラＩ／Ｆ１４１は、読み込みメモリアドレス生成部１４４からのメモリ４のページ符号メモリ領域４２のマクロブロックごとの符号を読み込みバッファ１４２へ転送し、メモリ４のページマクロブロック先頭アドレス格納領域４３からマクロブロックごとの先頭アドレスを読み込みマクロブロック先頭アドレス記憶部１４５へ転送する為のメモリコントローラ３とのインタフェースの処理を施す。
【０３１０】
バッファ１４２は、復号化処理部１４３へ転送する為の符号を一時格納する。
【０３１１】
復号化処理部１４３は、メインメモリ４のページ符号メモリ領域４２から符号を読み込み復号化し、サブブロック単位に画像処理部１５へ転送する（図６２に詳細なブロック図を示す）。
【０３１２】
読み込みメモリアドレス生成部１４４は、メインメモリ４のページ符号メモリ領域４２から読み込むメモリアドレスを生成する部であり、復号化処理部１４３から、次の符号ワードを要求する符号ワード要求信号と、１マクロブロックの水平方向の復号化が終了したことを示すマクロブロックライン終了信号を受信しマクロブロック先頭アドレス記憶部１４５からマクロブロックごとのメインメモリ４のページ符号メモリ領域４２のマクロブロックの先頭アドレスを受け取ることにより、読み込むメモリアドレスを生成する。
【０３１３】
マクロブロック先頭アドレス記憶部１４５は、メインメモリ４のページマクロブロック先頭アドレス格納領域４３からマクロブロックごとの先頭アドレスを受信し記憶し、復号化処理部１４３から処理中のマクロブロック番号と、マクロブロックライン終端信号を受け取ることにより、読込みメモリアドレス生成部１４４からのそのマクロブロックの符号の途中の符号のメモリアドレスを受信し、記憶し、再度そのマクロブロックを復号化する時、そのマクロブロックの復号化途中の符号のメモリアドレスを読込みメモリアドレス生成部１４４へ転送する。
【０３１４】
コントローラ１４６は、ページ復号化部１４００を制御する。
【０３１５】
図６０−１および６０−２は、変形例１による画像処理装置におけるページ復号化部の処理手順を説明するフローチャートである。図６１−１は、変形例１による８ラインメモリフォーマットの一例を示す模式図である。図６１−２は、変形例１によるマクロブロックを構成するサブブロックの復号化順序を説明する図である。
【０３１６】
図６０−１におけるステップＳ９０１〜９０７までは、図４７−１におけるステップＳ６０１〜６０７までと同様であるので、説明を省略する。
【０３１７】
Ｉ番目のマクロブロックの水平方向のサブブロックをカウントしていく（ステップＳ９０８）。そして、水平方向に全てのサブブロックを復号化したか否かを判定する（ステップＳ９０９）。検出されたと判定されなかった場合（ステップＳ９０９のＮｏ）、ステップＳ９０７に戻る。検出されたと判定された場合（ステップＳ９０９のＹｅｓ）、ステップＳ９１０へ移行する。
【０３１８】
ステップＳ９１０〜ステップＳ９１６までは、図４７−２におけるステップＳ６０９〜ステップＳ６１５までと同様であるので、説明を省略する。
【０３１９】
図６２は、変形例１による編集処理部における復号化処理部の詳細なブロック図である。
【０３２０】
ページ復号化部１４００の復号化処理部１４３のエントロピー復号化部１４３１は、メインメモリ４の符号データを順次読み込み、Ｙ成分のエントロピー復号化処理を施し、Ｙ逆量子化処理部１４３２へ量子化後のＹ成分の８＊８画素のデータを転送し、Ｕ成分のエントロピー復号化処理を施し、Ｕ逆量子化処理部１４３４へ量子化後のＵ成分の８＊８画素のデータを転送し、Ｖ成分のエントロピー復号化処理を施し、Ｖ逆量子化処理部１４３６へ量子化後のＶ成分の８＊８画素のデータを転送する。
【０３２１】
Ｙ逆量子化処理部１４３２は、Ｙエントロピー復号化部から量子化後のＹ成分の８＊８画素データを受信し、逆量子化し、Ｙ成分の８＊８画素のＤＣＴ係数を求め、ＹＩＤＣＴ処理部１４３３へ転送する。
【０３２２】
ＹＩＤＣＴ処理部１４３３は、逆量子化処理部からＹ成分の８＊８画素のＤＣＴ係数を受信し、ＩＤＣＴ（逆離散コサイン変換）を行い、現在処理中のラインのＹ成分の水平の８画素データを求め、ＹＵＶ−＞ＲＧＢ変換部１４３８へ転送する。
【０３２３】
Ｕ逆量子化処理部１４３４は、エントロピー復号化部から量子化後のＵ成分の８＊８画素データを受信し、逆量子化し、Ｕ成分の８＊８画素のＤＣＴ係数を求め、ＵＩＤＣＴ処理部１４３５へ転送する。
【０３２４】
ＵＩＤＣＴ処理部１４３５は、逆量子化処理部１４３４からＵ成分の８＊８画素のＤＣＴ係数を受信し、ＩＤＣＴ（逆離散コサイン変換）を行い、現在処理中のラインのＵ成分の水平の８画素データを求め、ＹＵＶ−＞ＲＧＢ変換部１４３８へ転送する。
【０３２５】
Ｖ逆量子化処理部１４３６は、エントロピー復号化部から量子化後のＶ成分の８＊８画素データを受信し、逆量子化し、Ｖ成分の８＊８画素のＤＣＴ係数を求め、ＶＩＤＣＴ処理部１４３７へ転送する。
【０３２６】
ＶＩＤＣＴ処理部１４３７は、逆量子化処理部からＶ成分の８＊８画素のＤＣＴ係数を受信し、ＩＤＣＴ（逆離散コサイン変換）を行い、現在処理中のラインのＶ成分の水平の８画素データを求め、ＹＵＶ−＞ＲＧＢ変換部１４３８へ転送する。
【０３２７】
ＹＵＶ−＞ＲＧＢ変換処理部１４３８は、ＩＤＣＴ処理部１４３３、１４３５、１４３７からのＹ、Ｕ、Ｖの画素データをＲＧＢへ変換する。
【０３２８】
マクロブロックカウント部１４３９は、エントロピー復号化部１４３１からマクロブロックラインの終端信号を受信しカウントし、処理中のマクロブロック番号を生成する。また、水平方向のマクロブロック番号までカウントすると初期値へ戻る。
【０３２９】
マクロブロックライン終端判定部１４４０は、マクロブロックの水平方向のサブブロック数をカウントすることにより、マクロブロックラインの終端を検出し、マクロブロック終端信号を生成する。１つのマクロブロックのマクロブロックラインの終端を検出するとカウンタを初期値へ戻し、次のマクロブロックラインの終端を検出する。
【０３３０】
図６３は、変形例１による復号化処理部におけるエントロピー復号化部の詳細なブロック図である。ページ復号化部１４４４の復号化処理部１４３００のエントロピー復号化部１４３１００の読み込み符号レジスタ１４３１１は、図４９のバッファ１４２の符号データを一時格納する。
【０３３１】
シフター６３０１は、シフト値生成部１４３１７で求めたシフト値により、可変長符号をシフトし、可変長符号の先頭をＤＣ、ＡＣ値復号化部１４３１４と１４３１５、およびリスタート符号判定部１４３１３へ転送する。
【０３３２】
ＤＣ値復号化部１４３１４は、シフター１４３１２からの符号がＤＣ値符号であれば、ＤＣデータを復号化し、８＊８ＤＣＴデータ生成部１４３１８へ転送し、その時の符号長を消費符号長としてＭＵＸ１４３１６へ転送する。
【０３３３】
ＡＣ値復号化部１４３１５は、シフター１４３１２からの符号がＡＣ値符号であれば、ＡＣデータを復号化し、８＊８ＤＣＴデータ生成部１４３１８へ転送し、その時の符号長を消費符号長としてＭＵＸ１４３１６へ転送する。
【０３３４】
ＭＵＸ６３０２は、ＤＣ、ＡＣ値復号化部１４３１４、１４３１５から、消費した符号長を受信し、シフト値生成部６３０１へ転送する。
【０３３５】
シフト値生成部１４３１７は、ＭＵＸ６３０２からの消費符号長から次の符号の先頭アドレスを求め、シフター１４３１２を制御して、常に符号の先頭をＤＣ、ＡＣ値復号化部へ供給するようにする。
【０３３６】
８＊８ＤＣＴデータ生成部１４３１８は、ＤＣ、ＡＣ値復号化部１４３１４、１４３１５からのＤＣ、ＡＣ値から、８＊８のＤＣＴデータを生成し、図６２の逆量子化部１４３２、１４３４、１４３６へ転送する。
【０３３７】
以上はＪＰＥＧを中心に説明してきたが、他の可変長符号化方式も同様に考えることができる。
【０３３８】
（３．実施の形態による画像処理装置を備えた複写機の例）
図６４は、本発明の実施の形態による画像処理装置を備えた複写機の内部機構を説明する図である。
【０３３９】
複写機１２００の有する自動原稿送り部（以下ＡＤＦと略す）１００１にある原稿台１００２に、原稿束が原稿の画像面を上にして置かれる。そして、操作部上のスタートキーが押下されると、一番下の原稿から給送ローラ１００３および給送ベルト１００４によってコンタクトガラス１００６上の所定の位置に給送される。読み取りユニット１０５０によってコンタクトガラス１００６上の原稿の画像データを読み取り後、読み取りが終了した原稿は、給送ベルト１００４および排送ローラ１００５によって排出される。さらに、原稿セット検知１００７にて原稿台１００２に次の原稿が有ることを検知した場合、前原稿と同様にコンタクトガラス１００６上に給送される。給送ローラ１００３、給送ベルト１００４および排送ローラ１００５はモータによって駆動される。
【０３４０】
第１トレイ１００８あるいは第２トレイ１００９に積載された記録媒体である転写紙は、各々第１給紙部１０１１あるいは第２給紙部１０１２によって給紙され、縦搬送ユニット１０１４によって感光体１０１５に当接する位置まで搬送される。読み取りユニット１０５０にて読み込まれた画像データは、書き込みユニット１０５７からのレーザによって感光体１０１５に書き込まれ、現像ユニット１０２７を通過することによってトナー像が形成される。そして、転写紙は感光体１０１５の回転と等速で搬送ベルト１０１６によって搬送されながら、感光体１０１５上のトナー像が転写される。その後、定着ユニット１０１７にて画像を定着させ、排紙ユニット１０１８によって後処理部のフィニシャ１１００に排出される。
【０３４１】
後処理部のフィニシャ１１００は、本体の排紙ローラ１０１９によって搬送された転写紙を、通常排紙ローラ１１０２方向と、ステープル処理部方向に導くことができる。切り替え板１１０１を上に切り替えることにより、搬送ローラ１１０３を経由して通常排紙トレイ１１０４側に排紙することができる。また、切り替え板１１０１を下方向に切り替えることで、搬送ローラ１１０５、１１０７を経由して、ステープル台１１０８に搬送することができる。
【０３４２】
ステープル台１１０８に積載された転写紙は、一枚排紙されるごとに紙揃え用のジョガー１１０９によって、紙端面が揃えられ、一部のコピー完了と共にステープラ１１０６によって綴じられる。ステープラ１１０６で綴じられた転写紙群は自重によって、ステープル完了排紙トレイ１１１０に収納される。
【０３４３】
一方、通常の排紙トレイ１１０８は前後に移動可能な排紙トレイである。前後に移動可能な排紙トレイ部１１０８は、原稿ごと、あるいは、画像メモリ４によってソーティングされたコピー部ごとに、前後に移動し、簡易的に排出されてくるコピー紙を仕分けるものである。
【０３４４】
転写紙の両面に画像を作像する場合は、各給紙トレイ１００８、１００９から給紙され作像された転写紙を排紙トレイ側に導かないで、経路切り替えのための分岐爪１１１２を上側にセットすることで、一旦両面給紙ユニット１１１１にストックする。その後、両面給紙ユニット１１１１にストックされた転写紙は再び感光体１０１５に作像されたトナー画像を転写するために、両面給紙ユニット１１１１から再給紙され、経路切り替えのための分岐爪１１１２を下側にセットし、排紙トレイ１１０４に導く。この様に転写紙の両面に画像を作成する場合に両面給紙ユニット１１１１は使用される。
【０３４５】
感光体１０１５、搬送ベルト１０１６、定着ユニット１０１７、排紙ユニット１０１８および現像ユニット１０２７は、メインモータによって駆動され、各給紙部１０１１、１０１２はメインモータの駆動を各々給紙クラッチによって伝達駆動される。縦搬送ユニット１０１４はメインモータの駆動を中間クラッチによって伝達駆動される。読み取りユニット（スキャナ）１０５０は、原稿を載置するコンタクトガラス１００６と光学走査系で構成されており、光学走査系は、露光ランプ１０５１、第１ミラー１０５２、レンズ１０５３、ＣＣＤイメージセンサ１０５４等々で構成されている。
【０３４６】
露光ランプ１０５１および第１ミラー１０５２は、図示しない第１キャリッジ上に固定され、第２ミラー１０５５および第３ミラー１０５６は、図示しない第２キャリッジ上に固定されている。原稿像を読み取る時には、光路長が変わらないように、第１キャリッジと第２キャリッジとが２対１の相対速度で機械的に走査される。この光学走査系は、図示しないスキャナ駆動モータにて駆動される。原稿画像は、ＣＣＤイメージセンサ１０５４によって読み取られ、電気信号（アナログ画像信号）に変換され、そしてデジタルデータ（画像データ）に変換される。画像データには更に数種の画像処理が施される。
【０３４７】
レンズ１０５３およびＣＣＤイメージセンサ１０５４を図１において左右方向に移動させることにより、画像倍率が変わる。即ち、指定された倍率に対応してレンズ１０５３およびＣＣＤイメージセンサ１０５４の左右方向に位置が設定される。書き込みユニット１０５７は、レーザ出力ユニット１０５８、結像レンズ１０５９およびミラー１０６０で構成され、レーザ出力ユニット１０５８の内部には、レーザ光源であるレーザダイオードおよびモータによって高速で定速回転する回転多面鏡（ポリゴンミラー）が備わっている。レーザ出力ユニット５８より照射されるレーザ光は、定速回転するポリゴンミラーで偏光され、結像レンズ１０５９を通り、ミラー１０６０で折り返され、感光体面上に集光結像する。
【０３４８】
偏光されたレーザ光は、感光体が回転する方向と直行する方向（主走査方向）に露光走査され、後述する画像処理装置のセレクタ１０６４より出力された画像信号のライン単位の記録を行う。感光体の回転速度と記録密度に対応した所定の周期で主走査を繰り返すことによって、感光体面上に画像（静電潜像）が形成される。上述のように、書き込みユニット１０５７から出力されるレーザ光が、画像作像系の感光体１０１５に照射される。図示しないが感光体１０１５の近傍の、レーザビームを照射される位置に、主走査同期信号を発生するビームセンサが配置されている。この主走査同期信号をもとに主走査方向の画像記録開始タイミングの制御、および、後述する画像信号の入出力を行うための制御信号の生成を行う。
【０３４９】
（４．ハードウェア構成および記録媒体）
上述した画像処理装置は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現できる。コンピュータは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）によって装置全体が制御されている。ＣＰＵには、バスを介してＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ハードディスクドライブ（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、グラフィック処理装置、入力インタフェースが接続されている。ＲＯＭ、およびＲＡＭには、ＣＰＵに実行させるＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）のプログラムやアプリケーションプログラムの少なくとも一部が格納される。またＲＡＭには、ＣＰＵによる処理に必要な各種データが格納される。ＨＤＤには、ＯＳ、各種ドライバプログラム、アプリケーションプログラム、検出されたデータなどが格納される。
【０３５０】
グラフィック処理装置には、操作パネルが接続される。入力インタフェースには、操作パネルのキーボードが接続される。以上のような公知技術であるハードウェア構成によって、本実施の形態の処理機能を実現することができる。本実施の形態をコンピュータ上で実現するには、ドライバプログラムを実装する。
【０３５１】
尚、本実施形態の画像処理装置で実行されるデータ同期プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フロッピー（Ｒ）ディスク、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【０３５２】
また、本実施形態の画像処理プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供および配布するように構成しても良い。
【０３５３】
（５．効果）
本発明は、上記に詳細に説明したように、符号化部に同一の水平ライン上のマクロブロックごとの符号の先頭アドレスを記憶するマクロブロック先頭アドレス記憶部と、同一の水平ライン上のマクロブロックごとの中間符号データを記憶するマクロブロック中間符号記憶部を設け、スキャナからの画像を平滑フィルタ処理を施して、１ブロックラインのラインメモリへ格納し、その後、同一の水平ライン上のマクロブロックごと並列に符号化し、メインメモリへ格納することによって、マクロブロックの垂直方向の高さのバンドメモリを必要せず、かつ、マクロブロック単位の符号データに対して編集部によって、画像合成処理と回転処理を施し、再度、符号化しメモリへ格納し、その後、復号化装置により復号化する際には、同一の水平ライン上のマクロブロックごとの符号の先頭アドレスを記憶するマクロブロック先頭アドレス記憶部と、同一の水平ライン上のマクロブロックごとのマクロブロック中間符号記憶部を設け、同一の水平ライン上のマクロブロック単位の符号を並列に復号化することにより、マクロブロックの垂直方向の高さのバンドメモリを必要せずに画像形成を実現することができる。また、高速編集処理を可能にし、必要なメモリ量を低減することを可能にする。
【０３５４】
また、本発明は多値の画像をマクロブロック単位に複数のマクロブロックラインを符号化した符号を一時、入出力用符号メモリ領域へ一時的に格納しその後、ＨＤＤ装置へ書き込む為に、ＨＤＤへの転送用のメモリが１バンドの符号領域ですむ為にＨＤＤ装置へのメモリ転送によるメモリ増加を少なくすることができる。
【０３５５】
また、復号化時においても、復号化部に同一の水平ライン上のマクロブロックごとの符号の先頭アドレスを記憶するマクロブロック先頭アドレス記憶部と、同一の水平ライン上のマクロブロックごとの中間復号データを記憶するマクロブロック復号シフト値記憶部を設け、同一の水平ライン上のマクロブロックごと並列に復号化し、少なくともサブブロック単位に画像処理装置へ転送する為にマクロブロックの垂直方向の高さのバンドメモリを必要としないので、簡易な構成により必要なメモリ量を低減することができる。
【０３５６】
また、本発明は多値の画像をマクロブロック単位に複数のマクロブロックラインを符号化した符号を、入出力用符号メモリ領域へ一時的に格納しその後、編集装置にてスタンプ画像などとの合成とマクロブロック単位での回転処理を施し、ページ符号メモリ領域にページ単位に格納することにより、画像の回転操作によるメモリの増加を少なくすることができる。
【０３５７】
また、本発明は多値の画像をマクロブロック単位に複数のマクロブロックラインを符号化した符号を一時、入出力用符号メモリ領域へ一時的に格納しその後、ＨＤＤ装置へ書き込む構成とした場合、ＨＤＤへの転送用のメモリが１バンドの符号領域ですむ為、ＨＤＤ装置へのメモリ転送によるメモリ増加を少なくすることができる。
【産業上の利用可能性】
【０３５８】
以上のように、本発明にかかる画像処理装置、画像処理方法、およびその方法をコンピュータで実行するプログラムは、複写機に有用であり、特にデジタル複写機に適している。
【図面の簡単な説明】
【０３５９】
【図１】本発明の実施の形態１による画像処理部の機能的ブロック図である。
【図２】実施の形態１による画像処理装置のハードウェア構成図である。
【図３】画像処理装置による画像形成の全体的な流れを説明するフローチャートである。
【図４】実施の形態１による画像形成処理の全体的な流れとメモリの関係を説明する図である。
【図５】メインメモリのファーマットの一例を示す模式図である。
【図６】入出用符号メモリのフォーマットの一例を示す模式図である。
【図７】ページ符号メモリ領域のマクロブロックの一例を示す模式図である。
【図８】スキャナ入力、入力データ符号化、編集処理、およびページ符号化処理の流れを説明する図である。
【図９】復号化処理および印刷処理の流れを説明する図である。
【図１０】符号化処理およびＨＤＤへの格納の流れを説明する図である。
【図１１】ＨＤＤからの符号データの読み出し、編集処理、およびページ符号化処理の流れを説明する図である。
【図１２】スキャナ入力、および符号化処理の流れを説明する図である。
【図１３】編集処理およびページ符号化処理の流れを説明する図である。
【図１４】ページ復号化処理および印刷出力の流れを説明する図である。
【図１５】符号化処理、ＨＤＤへの格納、編集処理、およびページ符号化処理の流れを説明する図である。
【図１６】実施の形態１による画像処理装置の符号化部の機能的ブロック図である。
【図１７−１】符号化処理手順を説明するフローチャートである。
【図１７−２】符号化処理手順を説明するフローチャートである。
【図１８−１】８ラインメモリフォーマットの一例を示す模式図である。
【図１８−２】マクロブロックにおけるサブブロックの処理の方向を説明する図である。
【図１９】画像データの符号化フォーマットの一例を説明する図である。
【図２０】実施の形態１による符号化部における符号化処理部のブロック図である。
【図２１】８ラインメモリアドレス生成部の詳細なブロック図である。
【図２２】ＭＣＵの一例を示す模式図である。
【図２３】符号化処理部におけるエントロピー符号化部の詳細なブロック図である。
【図２４−１】ＡＣ符号化手順を説明する図である。
【図２４−２】ＤＣ符号化手順を説明する図である。
【図２５】ＤＣ／ＡＣ値切り出し処理を説明する図である。
【図２６】ＤＣ値符号化部を説明する図である。
【図２７】ＡＣ値符号化部を説明する図である。
【図２８】符号化部の符号化処理部における符号フォーマット生成部の詳細なブロック図である。
【図２９】符号化部の符号化処理部におけるマクロブロック符号中間記憶部の詳細な機能的ブロック図である。
【図３０】符号化部のマクロブロック先頭アドレス記憶部の詳細なブロック図である。
【図３１】実施の形態１による画像処理装置の編集部の機能的ブロック図である。
【図３２】編集部における合成メモリのフォーマットの一例を示す模式図である。
【図３３−１】実施の形態１による画像処理装置における編集処理手順を説明するフローチャートである。
【図３３−２】実施の形態１による画像処理装置における編集処理手順を説明するフローチャートである。
【図３４】マクロブロックからのデータの読み出し順序を説明する図である。
【図３５】ページレベルの回転処理を説明する図である。
【図３６】マクロブロックレベルの回転処理を説明する図である。
【図３７】サブブロックレベルの回転処理を説明する図である。
【図３８】サブブロックレベルの回転処理を説明する図である。
【図３９】編集部における復号化部の機能的ブロック図である。
【図４０】編集部における復号化処理部による処理手順を説明するフローチャートである。
【図４１】マクロブロックごとに符号化されたデータ、およびサブブロックから構成されるマクロブロックの読み出し順番を示す模式図である。
【図４２】編集部の復号化部における復号化処理部の機能的ブロック図である。
【図４３】編集部におけるページ符号化部のブロック図である。
【図４４】ページ符号化部による処理手順を説明するフローチャートである。
【図４５】マクロブロックにおけるサブブロックの処理順序を説明する図である。
【図４６】実施の形態１による画像処理装置の図２ページに示したページ復号化部の詳細な機能的ブロック図である。
【図４７−１】ページ復号化部におけるページ復号化処理手順を説明するフローチャートである。
【図４７−２】ページ復号化部におけるページ復号化処理手順を説明するフローチャートである。
【図４８−１】８ラインメモリフォーマットの一例を示す模式図である。
【図４８−２】マクロブロックを構成するサブブロックの復号化順序を説明する図である。
【図４９】ページ復号化部における復号化処理部の詳細なブロック図である。
【図５０】復号化処理部におけるエントロピー復号化部の詳細なブロック図である。
【図５１】エントロピー復号化部におけるシフト値生成部の詳細なブロック図である。
【図５２】ページ復号化部における図４６に示したマクロブロック先頭アドレス記憶部の詳細なブロック図である。
【図５３】図５１に示されたシフト値生成部におけるマクロブロック復号化シフト値記憶部の詳細なブロック図である。
【図５４】実施の形態１による画像処理装置の画像処理部の機能的ブロック図である。
【図５５】画像処理部による画像処理手順を説明するフローチャートである。
【図５６−１】変形例１による画像処理装置のハード構成図である。
【図５６−２】ページ符号メモリ領域におけるマクロブロック符号フォーマットの変形例１を示す模式図である。
【図５７】変形例１による編集部におけるページ符号化部の詳細なブロック図である。
【図５８−１】変形例１によるページ符号化部の処理手順を説明するフローチャートである。
【図５８−２】変形例１によるマクロブロックにおいてサブブロックを読み込み処理を施す順序を説明する図である。
【図５９】変形例１による画像処理装置におけるページ復号化部の詳細なブロック図である。
【図６０−１】変形例１による画像処理装置におけるページ復号化部の処理手順を説明するフローチャートである。
【図６０−２】変形例１による画像処理装置におけるページ復号化部の処理手順を説明するフローチャートである。
【図６１−１】変形例１による８ラインメモリフォーマットの一例を示す模式図である。
【図６１−２】変形例１によるマクロブロックを構成するサブブロックの復号化順序を説明する図である。
【図６２】変形例１による編集処理部における復号化処理部の詳細なブロック図である。
【図６３】変形例１による復号化処理部におけるエントロピー復号化部の詳細なブロック図である。
【図６４】本発明の実施の形態による画像処理装置を備えた複写機の内部機構を説明する図である。
【図６５】ＧＢＴＣ固定長圧縮のアルゴリズムを示した図である。
【図６６】ＧＢＴＣ固定長圧縮のアルゴリズムを示した図である。
【図６７】ＧＢＴＣ固定長圧縮のアルゴリズムを示した図である。
【符号の説明】
【０３６０】
１  ＣＰＵ（中央演算部）
２  ＣＰＵＩ／Ｆ
３  メモリコントローラ
４  メモリ
５  ローカルバスＩ／Ｆ
６  ＲＯＭ
７  パネルコントローラ
８  パネル
９  スキャナ
１０  平滑フィルタ処理部
１１  ８ラインメモリ
１２  符号化部
１２２  符号化処理部
１２３  マクロブロック先頭アドレス記憶部
１２４  メモリアドレス生成部
１２５  メモリコントローラＩ／Ｆ
１２６  コントローラ
１２２１  ８＊８バッファ
１２２２  ８ラインメモリアドレス生成部
１２２２１  加算器
１２２２２  レジスタ
１２２２３  乗算器
１２２２４  比較部
１２２２５  加算器
１２２２６  レジスタ
１２２３  ＲＧＢ−＞ＹＵＶ変換部
１２２４  ＹＤＣＴ処理部
１２２５  Ｙ量子化処理部
１２２６  Ｙエントロピー符号化部
１２２７  ＵＤＣＴ処理部
１２２８  Ｕ量子化処理部
１２２９  Ｕエントロピー符号化部
１２３３  符号フォーマット生成部
１２３４  マクロブロック符号中間データ記憶部
１２４０  ＶＤＣＴ処理部
１２４１  Ｖ量子化処理部
１２４２  Ｖエントロピー符号化部
１３、１３００  編集部
１３０３  復号化部
１３０３１  復号化処理部
１３０６、１３０６０  ページ符号化部
１３０２  バッファ
１３０３  復号化部
１３０３１  復号化処理部
１３０３２  読み込みメモリアドレス生成部（マクロブロック符号アドレス認識部）
１３０３３  マクロブロック先頭アドレス記憶部
１３０４  ８＊８回転処理部
１３０４１  エントロピー復号化部
１３０４２  Ｙ逆量子化処理部
１３０４４  Ｕ逆量子化処理部
１３０５  バッファ
１３０６  ページ符号化部
１３０６１  ８＊８バッファ
１３０７３  リスタートマーカー生成部
１３０８  画像合成部
１３０９  合成メモリＩ／Ｆ
１３１１  符号長カウント部
１３１３  メモリアドレス生成部
１４、１４００  ページ復号化部
１４３、１４３００  復号化処理部
１４３１、１４３１００  エントロピー復号化部
１４３１７  シフト値生成部
１４３１７２  マクロブロック復号化シフト値記憶部
１４３２  Ｙ逆量子化処理部
１４３４  Ｕ逆量子化処理部
１４３６  Ｖ逆量子化処理部
１４４  読み込みメモリアドレス生成部
１４５  マクロブロック先頭アドレス記憶部
１５  画像処理部
１６  エンジンコントローラ
１７  プリンタエンジン
１８  ＨＤＤ制御部
１９  ＨＤＤ
３０  操作パネル
１２００  複写機
【図１】
2005184265.tif 000006
【図２】
2005184265.tif 000007
【図３】
2005184265.tif 000008
【図４】
2005184265.tif 000009
【図５】
2005184265.tif 000010
【図６】
2005184265.tif 000011
【図７】
2005184265.tif 000012
【図８】
2005184265.tif 000013
【図９】
2005184265.tif 000014
【図１０】
2005184265.tif 000015
【図１１】
2005184265.tif 000016
【図１２】
2005184265.tif 000017
【図１３】
2005184265.tif 000018
【図１４】
2005184265.tif 000019
【図１５】
2005184265.tif 000020
【図１６】
2005184265.tif 000021
【図１７−１】
2005184265.tif 000022
【図１７−２】
2005184265.tif 000023
【図１８−１】
2005184265.tif 000024
【図１８−２】
2005184265.tif 000025
【図１９】
2005184265.tif 000026
【図２０】
2005184265.tif 000027
【図２１】
2005184265.tif 000028
【図２２】
2005184265.tif 000029
【図２３】
2005184265.tif 000030
【図２４−１】
2005184265.tif 000031
【図２４−２】
2005184265.tif 000032
【図２５】
2005184265.tif 000033
【図２６】
2005184265.tif 000034
【図２７】
2005184265.tif 000035
【図２８】
2005184265.tif 000036
【図２９】
2005184265.tif 000037
【図３０】
2005184265.tif 000038
【図３１】
2005184265.tif 000039
【図３２】
2005184265.tif 000040
【図３３−１】
2005184265.tif 000041
【図３３−２】
2005184265.tif 000042
【図３４】
2005184265.tif 000043
【図３５】
2005184265.tif 000044
【図３６】
2005184265.tif 000045
【図３７】
2005184265.tif 000046
【図３８】
2005184265.tif 000047
【図３９】
2005184265.tif 000048
【図４０】
2005184265.tif 000049
【図４１】
2005184265.tif 000050
【図４２】
2005184265.tif 000051
【図４３】
2005184265.tif 000052
【図４４】
2005184265.tif 000053
【図４５】
2005184265.tif 000054
【図４６】
2005184265.tif 000055
【図４７−１】
2005184265.tif 000056
【図４７−２】
2005184265.tif 000057
【図４８−１】
2005184265.tif 000058
【図４８−２】
2005184265.tif 000059
【図４９】
2005184265.tif 000060
【図５０】
2005184265.tif 000061
【図５１】
2005184265.tif 000062
【図５２】
2005184265.tif 000063
【図５３】
2005184265.tif 000064
【図５４】
2005184265.tif 000065
【図５５】
2005184265.tif 000066
【図５６−１】
2005184265.tif 000067
【図５６−２】
2005184265.tif 000068
【図５７】
2005184265.tif 000069
【図５８−１】
2005184265.tif 000070
【図５８−２】
2005184265.tif 000071
【図５９】
2005184265.tif 000072
【図６０−１】
2005184265.tif 000073
【図６０−２】
2005184265.tif 000074
【図６１−１】
2005184265.tif 000075
【図６１−２】
2005184265.tif 000076
【図６２】
2005184265.tif 000077
【図６３】
2005184265.tif 000078
【図６４】
2005184265.tif 000079
【図６５】
2005184265.tif 000080
【図６６】
2005184265.tif 000081
【図６７】
2005184265.tif 000082